•        4275

Expat is an XML parser library written in C. It is a stream-oriented parser in which an application registers handlers for things the parser might find in the XML document (like start tags). This project aims to maintain Expat for both current and future users while improving the API to allow more reliable and robust access from "scripting" languages such as Python and Perl. Expat is one of the fastest non-validating XML parsers.




Related Projects


This is a SAX for .NET parser implementation based on the popular Expat XML parser.

Expat XML Parser

This is James Clark's Expat XML parser library in C. It is a stream oriented parser that requires setting handlers to deal with the structure that the parser discovers in the document.


Arabica is an XML and HTML processing toolkit, providing SAX, DOM, XPath, and partial XSLT implementations, written in Standard C++.

node-expat - libexpat XML SAX parser binding for node.js

We don't emit an error event because libexpat doesn't use a callback either. Instead, check that parse() returns true. A descriptive string can be obtained via getError() to provide user feedback. Alternatively, use the Parser like a node Stream. write() will emit error events.

eXML - The Eiffel XML Parser Toolkit

eXML is a XML Parser Framework for Eiffel. It features a native Eiffel parser and expat (using a C-bridge). Please note that we are using the mailing list at http://www.egroups.com/group/exml (and not the one on SF)

Expat Objective-C Bindings

A small Objective-C library which provides a SAX-like object-oriented interface to the Expat XML parser library.


Libxml2 is the XML C parser and toolkit developed for the Gnome project (but usable outside of the Gnome platform), it is free software available under the MIT License.

Apache Xerces for Java XML Parser

Xerces-J is a validating XML parser written in Java.

node-xml2json - Converts XML to JSON using node-expat

Converts XML to JSON using node-expat

Professional XML Parser

ProXMLParser project aims at developing a Professional XML Parser using Microsoft .NET framework.

Nokogiri - HTML, XML, SAX, and Reader parser with XPath and CSS selector support

Nokogiri (?) is an HTML, XML, SAX, DOM parser. Among Nokogiri's many features is the ability to search documents via XPath or CSS3 selectors, XML/HTML builder, XSLT transformer. Nokogiri parses and searches XML/HTML using native libraries (either C or Java, depending on your Ruby), which means it's fast and standards-compliant.

TagSoup - HTML/XML parser for Haskell

TagSoup is a library for parsing HTML/XML. It supports the HTML 5 specification, and can be used to parse either well-formed XML, or unstructured and malformed HTML from the web. The library also provides useful functions to extract information from an HTML document, making it ideal for screen-scraping.

RSS Parser and XML Parser for PHP 5+

A full XML Parser for PHP with RSS Parser specific functionsl; think of it as an interface to the PHP DOM which allows easy access to your XML based documents. Auto encoding conversion to UTF-8 + Array to XML Conversion. V3 is now a commercial product

XML Benchmark

C/C++/Java XML parsers benchmarking toolset. Supported parsers: LibXML2, Xerces, Oracle XDK, Expat, RXP, QT, Sun Crismon. Benchmark Fields: Parsing (Native,SAX,DOM), DOM Manipulation, Schema Validation, XSL Transformation, XML Signature amp; Encryption.


MagpieRSS is a simple, functional PHP inteface for parsing RSS 1.0 (and earlier versions). Built on PHP's XML (expat) parser, and with an integrated cache for storing the parsed RSS objects, Magpie is designed by simple, and 'PHP-like' to use.


Piccolo is a small, extremely fast XML parser for Java. It implements the SAX 1, SAX 2.0.1, and JAXP 1.1 (SAX parsing only) interfaces as a non-validating parser and attempts to detect all XML well-formedness errors. Piccolo was developed by Yuval Oren.


libxml++ is a C++ wrapper for the libxml XML parser library.

TagSoup - SAX-compliant parser in Java

TagSoup, a SAX-compliant parser written in Java that, instead of parsing well-formed or valid XML, parses HTML as it is found in the wild: poor, nasty and brutish, though quite often far from short. TagSoup is designed for people who have to process this stuff using some semblance of a rational application design. TagSoup also includes a command-line processor that reads HTML files and can generate either clean HTML or well-formed XML that is a close approximation to XHTML.

htmlparser2 - forgiving html and xml parser

A forgiving HTML/XML/RSS parser. The parser can handle streams and provides a callback interface. A live demo of htmlparser2 is available here.