XML::SAX::PurePerl(3)

okay bestie, you've landed on XML::SAX::PurePerl(3) from the User Contributed Perl Documentation ✨ she's a pure Perl XML parser with a SAX2 interface, and she's serving main character energy.

🌸 NAME 🌸

XML::SAX::PurePerl β€” Pure Perl XML Parser with SAX2 interface πŸ’–

✨ SYNOPSIS ✨

okay so here's the group-chat recipe 🧚:

use XML::Handler::Foo;
use XML::SAX::PurePerl;
my $handler = XML::Handler::Foo->new();
my $parser = XML::SAX::PurePerl->new(Handler => $handler);
$parser->parse_uri("myfile.xml");

πŸ’« DESCRIPTION πŸ’«

This module implements an XML parser in pure perl. It is written around the upcoming perl 5.8's unicode support and support for multiple document encodings (using the PerlIO layer) β€” however it has been ported to work with ASCII/UTF8 documents under lower perl versions. slay πŸ’…

The SAX2 API is described in detail at http://sourceforge.net/projects/perl-xml/, in the CVS archive, under libxml-perl/docs. Hopefully those documents will be in a better location soon 🀞.

Please refer to the SAX2 documentation for how to use this module β€” it is merely a front end to SAX2, and implements nothing that is not in that spec (or at least tries not to β€” please email me if you find errors in this implementation). periodt πŸ’–

😭 BUGS 😭

okay so the tea β˜•: XML::SAX::PurePerl is slow. Very slow. I suggest you use something else in fact πŸ™ˆ. However it is great as a fallback parser for XML::SAX, where the user might not be able to install an XS based parser or C library.

how many bugs? currently lots, probably 😭. At the moment the weakest area is parsing DOCTYPE declarations, though the code is in place to start doing this. Also parsing parameter entity references is causing me much confusion, since it's not exactly what I would call trivial, or well documented in the XML grammar. XML documents with internal subsets are likely to fail.

I am however trying to work towards full conformance using the Oasis test suite 🫢.

πŸ‘‘ AUTHOR πŸ‘‘

Matt Sergeant, matt@sergeant.org. Copyright 2001.

Please report all bugs to the Perl-XML mailing list at perl-xml@listserv.activestate.com.

πŸŽ€ LICENSE πŸŽ€

This is free software. You may use it or redistribute it under the same terms as Perl 5.7.2 itself.


that's the tea, bestie β˜•πŸ’– this page is from perl v5.42.0, dated 2024-03-04, and it's the XML::SAX::PurePerl(3) manual β€” mwah πŸ’‹

πŸ“¦ where this page comes from