I don't have clarity on Jaxp Api and it's implementation. I mentioning my understanding, kindly confirm Is it correct otherwise suggest the right solution.
1. Dom spec is given by w3c and the implementation is provided by Java people(sun micro/ oracle) in and for that they have given their API i.e Jaxp. (from JDK 1.4 +)
2. SAX API is given by XML-Dev group (not sun micro.) and it's implementation is provided by Jaxp (JDK 1.4+).
3. In Jaxp there are basically 3 package related to xml
i) org.w3c.dom.* (Is this the implementation of DOM spec ?)
ii) org.xml.sax.* (Is this the implementation of SAX API).
iii) javax.xml.* (Then why we have this package ?)
4. Do we require any external jar files apart from jdk to work with XML and Jaxp?
I have tried to go through various article but could not get crystal clear concept. Main doubt is on who has given specification and who has implemented these various parser api's and does the implementation come up with jdk or we need to add any external jar file. Like for example Servlet Spec is given by sun and implemented by diff server provided.
In point of historical fact, Java developers worked very closely with the w3c committees on all DOM related specification so yes org.w3c.dom is exactly the DOM specification. As I recall, Java was the first language implementing this DOM and all others followed that lead.
Recognition of the deficiencies of DOM processing various projects sprang up and there was confusion for a while with various projects by various programmers. The JavaDocs for the org.xml.sax package direct you to www.saxproject.org which explains a bit more about this history.
Numerous (to say the least) other developers took off in various directions trying to fix what they saw as deficiencies. Fun times.
The W3C was busy busy busy trying to resolve all these different directions into the XML 1.0 and 1.1 specifications. Endless arguments and RFCs and committees of industry folk.
Look at the JavaDocs for javax.xml package and the related javax... packages to get more background.