Chapter 4. XML

4.1. What is XML?

XML seems to be the current buzzword, with everyone, including Microsoft, claiming that XML will cause a revolution in interoperability, and because of the buzz around it, many people dismiss it as being a useless technology. However, XML is really quite a simple technology in essence, and it can be very useful in a number of situations.

At it's most basic level, XML is a technology that lets you store structured data in a standardised, text-based format. It looks simliar to markup languages like HTML, and indeed it is a markup language, but that's where the similarity ends. XML has no pre-defined tags - it only defines the basic syntax of how tags, and their attributes and contents, can be defined. It's up to the application to make sense of what the tags actaully mean.

XML is something akin to a pen and paper - it defines a method of reading and writing information, and leaves it up to the people reading and writing the information to make sense of it. Because it's text based, it's easy to transmit over networks, and easy for all sorts of devices to parse and interpret, including humans. It has very wide language support, with almost all programming languages having some form of XML parser, and it also has a wide selection of useful processing and manipulation tools.