XOM™ is a new XML object model. It is an open source (LGPL), tree-based API for processing XML with Java that strives for correctness, simplicity, and performance, in that order.
Latest commit 98cedcd Dec 10, 2016 @elharo committed on GitHub Merge pull request #11 from elharo/docs
add some of the website to the repo
Failed to load latest commit information.
lib Repackaging Jaxen to avoid accidental conflicts Apr 8, 2009
src/nu/xom Initial work on blocking billion laughs attack May 18, 2014
src15/nu/xom Working around bugs in JDK 1.5 beta 2 that require a Xerces SecurityM… Aug 17, 2004
www Commit by Helm::Ccvs Jun 28, 2003
.gitignore remove dup exclude Dec 10, 2016
lgpl.txt Bundling LGPL with distro Jan 1, 2005
pom.xml add some of the website to the repo Dec 10, 2016
project.xml xmlParserAPIs --> xml-apis Oct 26, 2009


XOM is a library. By itself, it doesn't do much of anything. It exists
only to be used by other programs. It requires Java 1.2 or later. 

To install it you'll need to place the XOM JAR archive somewhere in your
CLASSPATH. This archive is the file named something like xom-1.2.10.jar. 
(The version number may have changed if I've forgotten
to update this document.) You can either put it in your jre/lib/ext
directory, add xom-1.2.10.jar to your CLASSPATH environment variable, or
use the -classpath option when invoking javac and java.

To check your download you can run one of the sample programs found in
the xom-samples.jar file. For instance, nu.xom.samples.PrettyPrinter
class formats an XML document by inserting and removing white space
around element boundaries. In Java 1.4 and later you can run it from the
command line like this:

$ java -classpath xom-samples.jar:xom-1.2.10.jar nu.xom.samples.PrettyPrinter filename.xml

Java 1.3 and earlier do not have a built-in XML parser so in these environments 
you'll also need to install XOM's supporting libraries. 
These include xalan.jar, xercesImpl.jar, and xml-apis.jar, 
and are found in the lib directory. The versions shipped with XOM 
are quite a bit faster and less buggy than the ones bundled with the JDK, 
so you may well want to use them even in Java 1.4 and later. For example,

$ java -classpath xom-samples.jar:xom-1.2.10.jar:lib/xml-apis.jar:lib/xercesImpl.jar:lib/xalan.jar nu.xom.samples.PrettyPrinter filename.xml

You could leave out xalan.jar if you don't use any of the classes in
nu.xom.xslt. junit.jar is only used for testing, and is
not needed for normal operation of XOM.

If you want to build XOM from source, you'll need to have Apache Ant
installed. See http://ant.apache.org/. Once Ant is installed, building
should be as simple as typing "ant compile" or "ant jar" in the xom
directory. Type "ant help" to see other possible options. Most of the
targets build in Ant 1.5 or later. However the betterdocs target
requires Ant 1.6.

XOM is Copyright 2004, 2005, 2009 Elliotte Rusty Harold
   This library is free software; you can redistribute it and/or modify
   it under the terms of version 2.1 of the GNU Lesser General Public 
   License as published by the Free Software Foundation.
   This library is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   GNU Lesser General Public License for more details.
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the 
   Free Software Foundation, Inc., 59 Temple Place, Suite 330, 
   Boston, MA 02111-1307  USA
You can contact Elliotte Rusty Harold by sending e-mail to
elharo@ibiblio.org. Please include the word "XOM" in the
subject line. For more information see http://www.xom.nu/ 
or ask a question on the xom-interest mailing list.