I've posted the second beta release of
XOM 1.1, my free-as-in-speech (LGPL)
dual streaming/tree-based API for processing XML with Java.
Version 1.1 maintains backwards compatibility with XOM 1.0 while adding a number of important new features including XPath queries, document subset canonicalization, exclusive XML canonicalization,
external XSLT parameters, and xml:id
support.
The API is now considered to be reasonably stable, and probably won't change before 1.1 final.
Beta 2 is primarily a bug fix release.
NUmerous bugs have been fixed in XPath. In
addition a couple of other random issues have been fixed including
namespace handling in SAX conversion and attirbute parentage in
copied elements.
This release probably introduces a lot of bugs in serialization with
Unicode Normalization Form C (NFC), though as yet I haven't proved that. Addressing this will be a major focus for beta 3. If anyone has test cases that demonstrate incorrect handling of NFC, I'd appreciate it if you'd send those my way.
Beta 2 also make some optimizations that should slightly decrease
the memory footprint.
XOM requires Java 1.2 or later and is published under the LGPL.