Java XML

The Java programming language XML APIs from Sun Microsystems consist of the following separate programming APIs:

  • Java API for XML Processing, or JAXP.
  • Java API for XML Messaging, or JAXM.
  • Java API for XML-based RPC, or JAX-RPC.
  • Java API for XML Registries, or JAXR.
  • Java API for XML Web Services, or JAX-WS.
  • Java API for RESTful Web Services, or JAX-RS.
  • Java API for XQuery, or XQJ.
  • Java Architecture for XML Binding, or JAXB. – (this is its official Sun name, even though it is an API, see )
  • STreaming XML processing, or StAX (compatible with JDK 1.4 and above, included in JDK 1.6).

Only the Java API for XML Processing is a required API in Enterprise Java Beans Specification 1.3.

A number of different Open Source software packages implement these APIs:

  • Xerces – One of the original and most popular SAX and DOM parser.
  • Xalan – XSLT/XPath implementation, included in JDK 1.4 and above as the default transformer (XSLT 1.0).
  • Saxon, alternative highly specification compliant XSLT/XPath/XQuery processor (supports both XSLT 1.0 and 2.0)
  • Woodstox – An open source StAX and SAX (as of version 3.2) implementation.