#!/usr/bin/perl use XML::Parser; $xml = "Müller"; $ch = sub { my ($p, $w) = @_; print "$w\n"; }; # the next commented 2 lines mean the same # and translate the output to iso-8859-1 # $p = XML::Parser->new(); # $p = XML::Parser->new(ProtocolEncoding => 'UTF-8'); # this line do the right job, but why?? $p = XML::Parser->new(ProtocolEncoding => 'ISO-8859-1'); $p->setHandlers('Char' => $ch); $p->parse($xml);