XP

An XML Parser in Java

XP is an XML parser written in Java. It is fully conforming: it detects all non well-formed documents. It is currently not a validating XML processor. However it can parse all external entities: external DTD subsets, external parameter entities and external general entities.

XP can be downloaded from ftp://ftp.jclark.com/pub/xml/xp.zip. This is an alpha-test version.

It has the following design goals:

A few caveats:

XP consists of the following Java packages:

com.jclark.xml.tok
a low-level API which is designed to support the construction of a wide variety of different kinds of XML parser; the main class is com.jclark.xml.tok.Encoding which represents a possible encoding of a parsed XML entity and provides operations on byte arrays that represent all or part of an entity in that encoding
com.jclark.xml.parse
a parser with a callback style API; this is layered on top of com.jclark.xml.tok
com.jclark.xml.sax
a SAX driver implemented on top of com.jclark.xml.parse
com.jclark.xml.output
support for XML output; this builds on top of the JDK 1.1 Writer class
com.jclark.xml.apps
some simple example applications; Time which reports the time taken to parse XML documents; Normalize which outputs a normalized form of XML

See the XP API documentation (generated by javadoc) for details.

James Clark