- Expat (XML)
Infobox Software
name = Expat
caption =
developer = James Clark et al.
latest_release_version = 2.0.1
latest_release_date =June 5 ,2007
latest_preview_version =
latest_preview_date =
operating_system = Portable
platform =
genre =XML parser library
license =MIT License
website = [http://expat.sourceforge.net/ expat.sourceforge.net]Expat is a stream-oriented XML 1.0 parser library, written in C. Expat was one of the first
XML parser s available as "open source ", and has been incorporated into many open source projects. Such projects include theApache HTTP Server ,Mozilla ,Perl , Python andPHP .Timeline
Software developer James Clark released version 1.0 in 1998 while serving as technical lead on the
XML Working Group at theWorld Wide Web Consortium . Clark released two more versions, 1.1 and 1.2, before turning the project over to a group led byClark Cooper and Fred Drake in 2000. The new group released version 1.95.0 in September 2000 and continues to release new versions to incorporate bug fixes and enhancements. Expat is hosted as aSourceForge project. Versions are available for most major operating systems.Deployment
To use the Expat library, programs first register handler functions with Expat. When Expat parses an XML document, it calls the registered handlers as it finds relevant tokens in the input stream. These tokens and their associated handler calls are called "events". Typically, programs register handler functions for XML element start or stop events and character events. Expat provides facilities for more sophisticated event handling such as XML Namespace declarations, processing instructions and DTD events.
Expat's parsing events are similar to the events defined in the
Simple API for XML (SAX), but Expat is not a SAX-compliant parser. Projects incorporating the Expat library often build SAX and possibly DOM parsers on top of Expat. While Expat is mainly a stream-based (push) parser, it supports stopping and restarting parsing at arbitrary times, thus making the implementation of a "pull" parser relatively easy too.External links
* [http://expat.sourceforge.net/ Expat Project Home Page]
* [http://sourceforge.net/projects/expat/ Expat project page at SourceForge]
* [http://www.xml.com/pub/a/1999/09/expat/index.html "Using Expat", Clark Cooper, 1999]
Wikimedia Foundation. 2010.