Short for Extensible Markup Language, a specification developed
by the W3C. XML is a pared-down version of SGML, designed especially
for Web documents. It allows designers to create their own customized
tags, enabling the definition, transmission, validation, and
interpretation of data between applications and between organizations.
"Whether you’re discussing e-commerce, knowledge management, or the Internet in general, you’ve likely seen or heard reference to eXtensible Markup Language (XML). XML is, without a doubt, one of the most heralded technologies to come across the wire in recent years." - Jeff Jones, http://www.swynk.com/friends/jones/articles/xml_101.asp
XML is a markup language for documents containing structured information. Structured information contains both content (words, pictures, etc.) and some indication of what role that content plays (for example, content in a section heading has a different meaning from content in a footnote, which means something different than content in a figure caption or content in a database table, etc.). Almost all documents have some structure. A markup language is a mechanism to identify structures in a document. The XML specification defines a standard way to add markup to documents.
What's a Document?
The number of applications currently being developed that are based on, or make use of, XML documents is truly amazing (particularly when you consider that XML is not yet a year old)! For our purposes, the word "document" refers not only to traditional documents, like this one, but also to the miriad of other XML "data formats". These include vector graphics, e-commerce transactions, mathematical equations, object meta-data, server APIs, and a thousand other kinds of structured information.
So XML is Just Like HTML?
No. In HTML, both the tag semantics and the tag set are fixed. And is always a first level heading and the tag
XML specifies neither semantics nor a tag set. In fact XML is really a meta-language for describing markup languages. In other words, XML provides a facility to define tags and the structural relationships between them. Since there's no predefined tag set, there can't be any preconceived semantics. All of the semantics of an XML document will either be defined by the applications that process them or by stylesheets.