README file for Perl extension XML::SAX::ExpatXS
================================================

This module is an XS only implementation of PerlSAX2 parser
using Expat. XML::SAX::Expat is currently implemented as a layer 
over XML::Parser.

This module has been created by Matt Sergeant reusing some
files from XML::Parser. The current maintainer is Petr Cimprich
<petr AT gingerall DOT cz>.

It's still not entirely complete. Thought it should work for most
people's uses, please consider the current version beta for 
evaluation purposes. Feedback of any kind would be appreciated.


Callbacks
---------

These PerlSAX callbacks are supported and tested so far:

 start_document()
 end_document()
 start_element()
 end_element()
 characters()
 processing_instruction()
 start_prefix_mapping()
 end_prefix_mapping()
 set_document_locator()
 fatal_error()
 comment()
 start_dtd()
 end_dtd()
 start_cdata()
 end_cdata()
 notation_decl()
 unparsed_entity_decl()
 external_entity_decl()
 internal_entity_decl()
 start_entity()
 end_entity ()
 resolve_entity()


These methods are never called by XML::SAX::ExpatXS:

 warning()
 error()
 ignorable_whitespace()


This one is deprecated but works:

 xml_decl()


Known Issues
------------

 - Document locator provides the start position of content events.
   SAX requires the end position.

 - Only Expat built-in encodings (UTF-8, UTF-16, ISO-8859-1, US-ASCII)
   supported so far.
