What is the Java API for XML Processing (JAXP)?
The Java API for XML Processing, or JAXP for short, enables applications to parse and transform XML documents using an API that is independent of a particular XML processor implementation. JAXP also provides a pluggability feature which enables applications to easily switch between particular XML processor implementations. To achieve the goal of XML processor independence, an application should limit itself to the JAXP API and avoid implementation-dependent APIs and behavior. This may or may not be easy depending on the application. See the question How can I write my JAXP application to be implementation-independent? below for more information. JAXP includes industry standard APIs such as the Document Object Model (DOM) and the Simple API for XML (SAX). See these slides (PDF) from ApacheCon 2001 for more information. The reason for the existence of JAXP is to facilitate the use of XML on the Java platform. For example, APIs such as DOM Level 2 do not provide a method to bootstrap a DO