http://www.perlmonks.org?node_id=828172


in reply to XML::Simple giving a non-specific error

Should I be using a different module?
I've been told: yes.

I recently recommended XML::Simple in another thread, only to have Your Mother strongly advise against it. I haven't had a chance to use XML::LibXML, XML::Twig and their ilk, so I can't comment on their quality. I have used both XML::Parser and XML::Simple, and can attest that I don't really like them - it's mostly the API I find clunky, although I can't complain about bugs or crashes.

What I can say is that the next time I embark on an XML project, I'll be taking Your Mother's advice and looking into the more modern alternatives on CPAN.

Some food for thought.

  • Comment on Re: XML::Simple giving a non-specific error

Replies are listed 'Best First'.
Re^2: XML::Simple giving a non-specific error [OT: Twig]
by toolic (Bishop) on Mar 12, 2010 at 02:43 UTC
    That is a good plan, crashtest. For general-purpose parsing, I recommend XML::Twig for the combination of the following reasons:
    • The API is superior to the others you have tried, offering method calls and xpaths.
    • The extended documentation is fairly easy to follow, well-organized and comprehensive.
    • The tutorial is easy to complete and extremely useful.
    • The author is a PerlMonk and offers prompt support here at the Monastery.
    I started out with XML::Parser and stuck with it for a while because I didn't even know others existed. A collegue made me aware of XML::Simple, but I have never used it because it is too limited for the XML I have.

    When I discovered the CPAN Recommended Modules website, I tried using XML::LibXML, but I quickly became flustered. Then, I tried XML::Twig, and I haven't needed anything else since.

    I marked this node as OT because it has nothing to do with solving the OP's specific problem regarding getting a parser to return more useful diagnostic messages.