And if we know where the XML parser is called (directly or indirectly), we can set in the koha file(s) the global variable
$XML::SAX::ParserPackage = "XML::LibXML::SAX"; in order to force the good XML parser without requiring to modify a global configuration file Primarily, Koha uses a SAX parser in MARC::File::XML, but also XML::Simple.
XML::LibXML::SAX is specifically required by MARC::File::XML. With another SAX parser, XML MARC records are not correctly decoded-encoded and accented characters, for example, are mixed. In this file: MARC/File/XML.pm line 21: my $factory = XML::SAX::ParserFactory->new(); a SAX parser is instantiated. So since MARC::File::XML need XML::LibXML::SAX, it should ask explicitly this parser and insert before line 21, as said by Vincent: $XML::SAX::ParserPackage = "XML::LibXML::SAX"; Can't someone contact MARC::File:XML package maintainer and ask him to update his code? -- Frédéric