What is XML?
XML is a simple text based language which was designed to store and transport data in plain text format. It stands for Extensible Markup Language. Following are some of the salient features of XML.
- XML is a markup language.
- XML is a tag based language like HTML.
- XML tags are not predefined like HTML.
- You can define your own tags which is why it is called extensible language.
- XML tags are designed to be self descriptive.
- XML is W3C Recommendation for data storage and transport.
Following are the advantages that XML provides:
- Technology agnostic – Being plain text, XML is technology independent. It can be used by any technology for data storage and transmission purpose.
- Human readable– XML uses simple text format. It is human readable and understandable.
- Extensible – in XML, custom tags can be created and used very easily.
- Allow Validation – Using XSD, DTD and XML structure can be validated easily.
Following are the disadvantages of XML usage:
- Redundant Syntax – Normally XML file contains lot of repeatitive terms.
- Verbose-Being a verbose language, XML file size increases the transmission and storage costs.
What is XML Parsing?
Parsing XML refers to going through XML document to access data or to modify data in one or other way.
What is XML Parser?
XML Parser provides way how to access or modify data present in an XML document. Java provides multiple options to parse XML document. Following are various types of parsers which are commonly used to parse XML documents.
- Dom Parser – Parses the document by loading the complete contents of the document and creating its complete hiearchical tree in memory.
- SAX Parser – Parses the document on event based triggers. Does not load the complete document into the memory.
- JDOM Parser – Parses the document in similar fashion to DOM parser but in more easier way.
- StAX Parser – Parses the document in similar fashion to SAX parser but in more efficient way.
- XPath Parser – Parses the XML based on expression and is used extensively in conjuction with XSLT.
- DOM4J Parser – A java library to parse XML, XPath and XSLT using Java Collections Framework , provides support for DOM, SAX and JAXP.
There are JAXB and XSLT APIs available to handle XML parsing in Object Oriented way.We’ll elboborate each parser in detail in next chapters.