Axiom separates API and implementation. The default implementation is called
LLOM (Linked List Object Model) and provided by the axiom-impl
artifact. There is also a second implementation called DOOM (DOM over OM) that
implements both the Axiom API and DOM. It is provided by the axiom-dom
artifact. You can use this implementation to integrate with DOM based code.
Note however that the DOM implementation provided by DOOM is not perfect. In
particular it doesn't implement DOM 3.
Starting with version 1.2.8, Axiom has
OMSource and
OMResult
classes which are implementations of JAXP's
Source and
Result
classes. You can use these to transform an Axiom tree into DOM (using
a standard implementation of DOM) and vice-versa. These two classes are based on
SAXSource and
SAXResult,
which means that you loose the deferred parsing capabilities of Axiom, but in many cases this will be
acceptable.