XOM is a new XML Object Model for processing XML with Java that strives for correctness and simplicity. It is unique in providing a simultaneous tree and streaming model of XML documents that enables it to process documents of arbitrary size regardless of available memory. It supports XSLT, XInclude, Namespaces, and Canonical XML. XOM is not complete unto itself. It depends on an underlying SAX parser to read documents and feed the data into a tree structure.
XOM is published under version 2.1 of the GNU Lesser General Public License.