The JavaTM API for XML Processing
(JAXP) includes the basic facilities for working with XML documents
through the following standardized set of Java Platform APIs.
The Document Object Model (DOM) is a set of interfaces defined by
the W3C DOM Working Group. It describes facilities for a programmatic
representation of a parsed XML (or HTML) document. The DOM Level 3
specification defines these interfaces using Interface Definition
Language (IDL) in a language independent fashion and also includes a
Java Language binding.
The JavaTM API for XML processing
specification includes by reference both the abstract semantics
described for the DOM Level 3 Core Recommendation interfaces and the
associated Java Language binding. It does not include the optional
extensions defined by the DOM working group.
The API package included by the JavaTM
API for XML processing specification is:
The Simple API for XML (SAX) is a public domain API developed
cooperatively by the members of the XML-DEV mailing list. It provides
an event-driven interface to the process of parsing an XML document.
An event driven interface provides a mechanism for "callback"
notifications to application’s code as the underlying parser recognizes
XML syntactic constructions in the document.
The JavaTM API for XML processing
specification includes by reference the SAX 2.0.2 API and the SAX2
extensions in its entirety.
The XSL Transformations (XSLT) describes a language for
transforming XML documents into other XML documents or other text
output. It was defined by the W3C XSL Working group.
The endorsed APIs provide broad and useful functionality. However,
the use of a SAX or a DOM parser typically requires knowledge of the
specific implementation of the parser. Providing the functionality of
the endorsed APIs in the Java Platform, while allowing choice of the
implementation of the parser, requires a Pluggability layer.
The JavaTM API for XML processing
specification defines a Pluggability mechanism to allow a compliant SAX
or DOM parser to be used through the abstract javax.xml.parsers
and javax.xml.transform
API. Also, compliant Transformers are pluggable via the javax.xml.transform
API.