Coming straight to the point, XML stands for eXtensible Markup Language. As the name suggests, it is a language that can be molded according to the need of the hour. Personally, I don’t
think calling it a language is justified, but I fanatically follow the ordinance of the techie Gurus, and if they say it is a language, then it is a language.
As is the case with the famous HTML, XML too is a markup language, but its main power, unlike HTML, lies in the ability to describe data without harassing the over-worked server. Since most of the work is done on the client’s machine (the person who is running the browser), there is less strain on the server.
XML uses DTDs (Document Type Definitions) to properly define and organize data. But the presence of DTDs is not mandatory, and their absence does not hinder the performance of the web page.
The most interesting thing I have found in XML is, the tags are not pre-defined – you can create your own tags and use them as and when required. 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 style-sheets.
XML allows users to:
- Bring multiple files together to form compound documents
- Identify where illustrations are to be incorporated into text files, and the format used to encode each illustration
- Provide processing control information to supporting programs, such as document validators and browsers
- Add editorial comments to a file.
It is important to note, however, that XML is not:
- A predefined set of tags, of the type defined for HTML that can be used to markup documents
- A standardized template for producing particular types of documents.
XML was not designed to be a standardized way of coding text; in fact, it is impossible to devise a single coding scheme that would suit all languages and all applications. Instead, XML is a formal language that can be used to pass information about the component parts of a document to another computer system.
XML is flexible enough to be able to describe any logical text structure, whether it be a form, memo, letter, report, book, encyclopedia, dictionary or database.
The primary goal of XML is to enable SGML-coded data to be served, received, and processed on the Web in a way that is as easy as that. Currently made possible by use of the fixed SGML tag set provided by HTML. (Okay, SGML means Standard Generalized Markup Language).
SGML was designed in the 1980s as a tool to enable technical documentation and other forms of publishable data to be interchanged between authors, publishers and those responsible for the production of printed copies of data sets.
By providing a formal definition of the component parts of a publishable information set, SGML made it possible to verify the correct transmission and receipt of interchanged data sets. It was soon found that these techniques are applicable in areas other than those directly related to publications.
For example, SGML is often used as a neutral data format when moving data between databases as part of multinational projects.
XML has been designed for ease of implementation and for interoperability with both SGML and HTML. Unlike early versions of SGML and HTML, XML has been based from the very start on the ISO 10646 Universal Multi-Octet Coded Character Set (UCS, which includes the codes that make up the Unicode character set) so that it can be used in all major trading nations.