First XML::SAX::PurePerl does not use XML::LibXML, so that's not the problem.
What's the character line 1373 column 4? It should be an ASCII '|'. Your data is probably encoded in ISO-8859-1 (or ISO-8859-15 if it includes the Euro symbol). By default XML documents are encoded in UTF-8.
Welcome to the wonderful world of encodings! :--(
You have several options, dependng on your system:
- define properly your data by using <?xml version="1.0" encoding="ISO-8859-1"?> at the beginning. The catch is that you will need perl 5.7.3 for XML::SAX::PurePerl to work with this encoding,
- use another parser, that can parse data in ISO-8859-1: XML::SAX can use XML::LibXML as a SAX parser,install it and tell XML::SAX to use it instead of XML::SAX::PurePerl,
- pre-process your data to convert it to UTF-8: use iconv --from-code=ISO-8859-1 --to-code=UTF-8 --output=xmltest_utf8.xml xmltest.xml and xmltest_utf8.xml will be OK,