| <html> |
| <head> |
| <title>The Expat XML Parser</title> |
| <link rel="STYLESHEET" href="style.css" type="text/css" /> |
| </head> |
| <body marginwidth="0" marginheight="0"> |
| <table cellspacing="0" cellpadding="0" width="100%"> |
| <tr> |
| <td class="corner"><img src="expat.png" alt="(Expat logo)" /></td> |
| <td class="banner"><h2>The Expat XML Parser</h2></td> |
| </tr> |
| <tr> |
| <td class="navbar"></td> |
| <td class="content"> |
| |
| <p>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). |
| An <a href="http://www.xml.com/pub/1999/09/expat/index.html" |
| >introductory article</a> on using Expat is available on |
| <a href="http://www.xml.com/">xml.com</a>.</p> |
| |
| <ul> |
| <li> |
| <a href="http://sourceforge.net/projects/expat/" |
| >Expat project page (includes downloads)</a></li> |
| <li> |
| <a href="http://mail.libexpat.org/mailman/listinfo/" |
| >Mailing lists</a></li> |
| <li> |
| <a href="#wrappers" |
| >3rd-party wrappers (SAX, DOM, other language bindings)</a></li> |
| <li> |
| <a href="dev/cvs.html" |
| >CVS repository</a> |
| (<a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/expat/" |
| >browse online</a>)</li> |
| <li> |
| <a href="http://sourceforge.net/bugs/?group_id=10127" |
| >Bug reports</a></li> |
| <li> |
| <a href="dev/">Notes for Expat maintainers</a></li> |
| </ul> |
| |
| <p>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. We invite the |
| community to participate on the mailing lists to help shape the future |
| of Expat.</p> |
| |
| <h3 id="news">News</h3> |
| |
| <dl> |
| <dt><em>11 January 2006</em>, |
| Expat 2.0.0 released. |
| </dt> |
| <dd><p>Release 2.0.0 of the Expat XML parser is the end point of the |
| 1.95.X series of releases. The goal was to solidify and stabilize |
| the implementation of the given API, to add desirable features as |
| long as they fit with the API, and to keep the API backwards compatible |
| if extensions were required. Changes include: |
| <ul><li>Fixed headers for use from C++.</li> |
| <li>XML_GetCurrentLineNumber() and XML_GetCurrentColumnNumber() |
| now return unsigned integers.</li> |
| <li>Added XML_LARGE_SIZE switch to enable 64-bit integers for |
| byte indexes and line/column numbers.</li> |
| <li>Added support for AmigaOS.</li> |
| <li>Some mostly minor bug fixes. SF issues include: 1006708, |
| 1021776, 1023646, 1114960, 1156398, 1221160, 1271642.</li></ul> |
| </p> |
| </dd> |
| <dt><em>27 December 2005</em>, |
| Final Expat 2.0 pre-release snapshot made available. |
| </dt> |
| <dd> |
| <p>This <a href="http://www.libexpat.org/expat-2005-12-27.tar.gz" > |
| pre-release distribution</a> is based on the feedback we got from the |
| Dec. 23 snapshot and represents the final opportunity for |
| feedback before the actual release goes out.</p> |
| <p>We plan to release after the New Year.</p> |
| </dd> |
| <dt><em>23 December 2005</em>, |
| Expat 2.0 pre-release snapshot (another one) made available. |
| </dt> |
| <dd> |
| <p>As nothing happened here for a long time, we've posted another |
| <a href="http://www.libexpat.org/expat-2005-12-23.tar.gz" >pre-release |
| distribution snapshot</a> of the code currently in CVS on |
| libexpat.org. Please try this out and report any problems you |
| have. We'd like to get Expat 2.0 out soon.</p> |
| <p>A late addition was the new (optional) <code>XML_LARGE_SIZE</code> |
| feature to enable 64-bit integers on some API members. Please check |
| how it builds and works for you.</p> |
| </dd> |
| <dt><em>28 January 2005</em>, |
| Expat pre-release snapshot made available. |
| </dt> |
| <dd> |
| <p>We've posted a <a href= |
| "http://www.libexpat.org/expat-2005-01-28.tar.gz" >pre-release |
| distribution snapshot</a> of the code currently in CVS on |
| libexpat.org. Please try this out and report any problems you |
| have. We'd like to get a release out soon.</p> |
| <p>The coming release will either be 1.95.9 or 2.0, depending |
| primarily on the response to this snapshot. If we do decide to |
| make this 1.95.9, then we'll try to follow up with 2.0 in about a |
| month.</p> |
| </dd> |
| <dt><em>23 July 2004</em>, |
| Expat 1.95.8 released. |
| </dt> |
| <dd> |
| <p>The release schedule described in the previous news item didn't |
| work out. As a compensation, we've fixed a number of the |
| nuissance warnings generated on many platforms, and added a nice |
| new suspend/resume feature to the parser.</p> |
| <p><ul> |
| <li> Major new feature: suspend/resume. Handlers can now request |
| that a parse be suspended for later resumption or aborted |
| altogether. See "Temporarily Stopping Parsing" in the |
| documentation for more details. </li> |
| <li> Some mostly minor bug fixes, but compilation should no |
| longer generate warnings on most platforms. SF issues |
| include: 827319, 840173, 846309, 888329, 896188, 923913, |
| 928113, 961698, 985192.</li> |
| </ul></p> |
| </dd> |
| </dl> |
| |
| <p><a href="oldnews.html">Old news archive</a></p> |
| |
| <h3 id="wrappers">References & 3rd-party Wrappers</h3> |
| |
| <p>If you know of any additional articles or resources which should be |
| linked to from this page, please send email to <a |
| href="mailto:fdrake@acm.org">Fred Drake (fdrake@acm.org)</a>. |
| We're especially interested in links to tutorial information and open |
| source interfaces to Expat from languages other than C.</p> |
| |
| <ul> |
| <li> |
| <a href="http://www.jclark.com/xml/expat.html" |
| >James Clark's original Expat page</a>, for Expat 1.2 and |
| earlier</li> |
| <li> |
| <a href="http://www.xml.com/pub/1999/09/expat/index.html" |
| >Introductory article</a> on using Expat on |
| <a href="http://www.xml.com/">xml.com</a></li> |
| <li> |
| <a href="http://www.keplerproject.org/luaexpat/">LuaExpat</a> is a |
| wrapper around Expat for the <a href="http://www.lua.org/">Lua</a> |
| programming language. The <a href= |
| "http://www.keplerproject.org/luasoap/">LuaSOAP</a> library is a <a |
| href="http://xml.coverpages.org/soap.html">SOAP</a> implementation |
| built on top of <a href= "http://www.keplerproject.org/luaexpat/" |
| >LuaExpat</a>.</li> |
| <li> |
| Perl's <code>XML::Parser</code> module is a wrapper built around a |
| binding to Expat in the <code>XML::Parser::Expat</code> module.</li> |
| <li> |
| <a href="http://www.python.org/doc/current/lib/module-xml.parsers.expat.html" |
| >Documentation for the Python interface to Expat</a>, part of the |
| standard documentation for Python.</li> |
| <li> |
| <a href="http://saxdotnet.sourceforge.net/saxexpat.html" |
| >SAXExpat.NET</a>, a <a href="http://www.microsoft.com/net/">.NET</a> |
| wrapper for Expat, conforming to the |
| <a href="http://saxdotnet.sourceforge.net">SAX for .NET</a> specifications.</li> |
| <li> |
| The <a href="http://www.nongnu.org/scew/">Simple C Expat Wrapper</a> |
| is a wrapper around Expat that provides a light-weight object model |
| somewhat like a DOM.</li> |
| <!-- Alex Conchillo Flaque: aconchillo at acm.org --> |
| <li> |
| <em><a href="http://www.codeproject.com/soap/expatimpl.asp" |
| title="C++ Wrappers for the Expat XML Parser">C++ Wrappers |
| for the Expat XML Parser</a></em>, an article by Tim Smith |
| providing object-oriented wrappers for Expat. The wrappers use |
| some MFC-biased naming, but look interesting.</li> |
| <li> |
| <a href="http://www.jezuk.co.uk/cgi-bin/view/arabica" title="Arabica" |
| >Arabica</a> -- an XML Parser toolkit for C++ programmers, with |
| SAX2 implementations based on several parsers, including Expat.</li> |
| <li> |
| <a href="http://www.expatpp.com/" |
| >expatpp -- C++ interface to Expat</a></li> |
| <li> |
| <a href="http://sourceforge.net/projects/kdsxml" |
| >SAX2 Wrapper for using Expat in Delphi,</a> |
| based on |
| <a href="http://saxforpascal.sourceforge.net" |
| >"SAX for Pascal"</a> |
| interface specs</li> |
| <li> |
| The <a href="http://tclxml.sourceforge.net/" |
| >TclXML project</a> includes a <a href="http://tcl.activestate.com/" |
| >Tcl</a> binding for Expat</li> |
| <li> |
| <a href="http://www.tdom.org/" |
| >tDOM</a> is an alternate package providing XML support for <a |
| href="http://tcl.activestate.com/" >Tcl</a>, based in part on |
| Expat.</li> |
| <li> |
| <a href="http://www.phpbuilder.com/columns/justin20000428.php3" |
| >Article on using Expat from PHP</a> on |
| <a href="http://www.phpbuilder.com/"><?PHPBuilder?></a> |
| <br />(broken into lots of tiny pieces)</li> |
| <li> |
| <a href="http://expatobjc.sourceforge.net/" |
| >Objective-C interface to Expat</a></li> |
| <li> |
| <a href="http://www.xs4all.nl/~mmzeeman/ocaml/">OCaml Expat</a> is a |
| wrapper around Expat for the <a href="http://www.ocaml.org" |
| >Objective Caml</a> language.</li> |
| <li> |
| <a href="http://www.yoshidam.net/Ruby.html#xmlparser" |
| >Ruby interface to Expat</a></li> |
| <li> |
| <a href="http://www.latenightsw.com/freeware/XMLTools2/">XML Tools |
| 2</a> is an AppleScript scripting addition that allows AppleScript |
| applications to work with XML data; it is based on Expat.</li> |
| <li> |
| <a href="http://www.simkin.co.uk/">Simkin</a> is an open source |
| scripting language available under the GNU LGPL. It can be embedded |
| in XML and supports a DOM-like API backed by Expat.</li> |
| <li> |
| <a href="http://easysoap.sourceforge.net/">EasySoap</a> is a C++ |
| SOAP implementation which uses Expat.</li> |
| <li> |
| <a href= |
| "http://www.codepedia.com/wiki/display.aspx?WikiID=1&pagename=thunks" |
| >A discussion</a> of another way to manage stateful callbacks, using |
| Expat as a sample library.</li> |
| <li> |
| The <a href="http://sourceforge.net/projects/gobo-eiffel/">GOBO |
| project</a> is working on an Eiffel binding for Expat. Development |
| is active and the package is fully supported in GOBO 3.0 and 3.1, |
| though there isn't much status information about the Expat bindings |
| on the website. (Most activity is reportedly on the relevant |
| mailing lists.)</li> |
| <li> |
| <a href="http://www.mitchenall.com/expat4d">Expat4D</a> is a plug-in |
| for the <a href="http://www.4duk.com/">4th Dimension</a> application |
| framework.</li> |
| </ul> |
| |
| </td> |
| </tr> |
| <tr> |
| <td class="corner"> |
| <a href="http://sourceforge.net/"> |
| <img src="http://cvs.sourceforge.net/sourceforge_whitebg.gif" |
| width="136" height="79" border="0" alt="SourceForge |
| Logo" /> |
| </a> |
| </td> |
| </tr> |
| </table> |
| </body> |
| </html> |