The XMLTooling library provides the ability to work with XML as regular Java beans. This is similar to the Java Architecture for XML Binding (JAXB), XMLBeans, and XStream libraries. It differs from these libraries in three main ways:

- Much finer control to developer for what happens during the marshalling and unmarshalling processes
- Much more extensible, allowing various implementations of all of it's XMLObjects
- Support for XML Digital Signatures and Encryption