XML Schema Object Model (XSOM) is a Java library that allows applications to easily parse XML Schema documents and inspect information in them. It is expected to be useful for applications that need to take XML Schema as an input.
The library is a straight-forward implement of "schema components" as defined in the XML Schema spec part 1. Refer to this specification of how this object model works. In particular, this diagram might be helpful.
Documents
- User's Guide
- Learn how to use XSOM
- Implementor's Guide
- Learn the limitations and internals of XSOM
- API Javadoc
- Javadoc of the interfaces. Also take a look at schema components diagram to understand the overall model.
Dependencies
XSOM comes in two versions. xsom.jar is built for JDK 5.0, but
offers generified version. xsom14.jar is the version that works
for earlier versions of JDK.
Both flavors of xsom.jar depends on relaxngDatatype.jar
and JAXP 1.1. Make sure you have at least xsom.jar and
relaxngDatatype.jar when you distribute your application that
uses XSOM.
License
XSOM is covered by a dual license under CDDL (which basically allows you free
use and redistribution with your application — but please do check the
license for details) and GPL v2 with classpath exception (see
the license.)
relaxngDatatype.jar is covered by
a BSD-like license.
XSOM internally uses an URI class, which is copyrighted by Thai Open Source
Center. Its license is here.
