# expat - XML Parser Toolkit

### Version 19990307

Copyright (c) 1998, 1999 James Clark. Expat is subject to the Mozilla Public License Version 1.0. You may as a special exception elect to use the GNU General Public License. Please contact me if you wish to negotiate an alternative license.

Expat is an XML 1.0 parser written in C. It aims to be fully conforming. It is currently not a validating XML processor. The current production version of expat can be downloaded from ftp://ftp.jclark.com/pub/xml/expat.zip.

The directory `xmltok` contains a low-level library for tokenizing XML. The interface is documented in `xmltok/xmltok.h`.

The directory `xmlparse` contains an XML parser library which is built on top of the `xmltok` library. The interface is documented in `xmlparse/xmlparse.h`. The directory `sample` contains a simple example program using this interface; `sample/build.bat` is a batch file to build the example using Visual C++.

The directory `xmlwf` contains the `xmlwf` application, which uses the `xmlparse` library. The arguments to `xmlwf` are one or more files which are each to be checked for well-formedness. An option `-d dir` can be specified; for each well-formed input file the corresponding canonical XML will be written to `dir/f`, where `f` is the filename (without any path) of the input file. A `-x` option will cause references to external general entities to be processed.

The `bin` directory contains Win32 executables. The `lib` directory contains Win32 import libraries.

Answers to some frequently asked questions about expat can be found in the expat FAQ.