XML is like violence - if it doesn’t solve your problems, you are not using enough of it.
The Extensible Markup Language (XML) is a general-purpose markup language. It is used both to encode documents and serialize data. 
A schema is a formal specification of a vocabulary that defines the names of elements and attributes, their content, and the structural relationship between them.
Simple API for XML (SAX)
SAX is a lexical, event-driven interface in which a document is read serially and its contents are reported as callbacks to various methods on a handler object of the user's design.
Document Object Model (DOM)
DOM (Document Object Model) is an interface-oriented Application Programming Interface that allows for navigation of the entire document as if it were a tree of "Node" objects representing the document's contents.