XML means Extensible Markup Language. It is a markup language (language which combines text and extra information about the text) almost similar to HTML i.e. Hyper Text Markup Language. However, XML is not a substitute for HTML. Both languages serve different purposes since XML is designed to transport and store data, with focus on what data is whereas HTML was designed to display data, with focus on how data appears. XML makes use of tags just like HTML but XML tags are not predefined; we need to define our own tags to describe the data. XML is designed to be self-descriptive. Moreover it permits a structured data format, which can be extended without breaking previous implementations.
XML facilitate the sharing of data across different information systems, mostly via the Internet as it is intended for data exchange and not for data storage. It is a simplified subset of the Standard Generalized Markup Language (SGML), and is designed to be reasonably human-legible. By adding semantic restraints, numerous application languages can be implemented in XML which include XHTML, RSS, MathML, GraphML, Scalable Vector Graphics (SVG), MusicXML, and many others. Besides, XML is sometimes used as the specification language for such application languages. There are thousands of languages based on XML. Major benefit of XML is that we can take data from a program like MSSQL (Microsoft SQL) or MySQL, convert it into XML, then share that XML with other programs, platforms, etc. All of these receiving platforms can then convert the XML into a structure, which the platform uses in general. XML offers several benefits. Few of them are listed below:
Simplifies Data Sharing: In the real world, computer systems and databases store data in incompatible formats whereas XML data is stored in plain text format. This provides a software- and hardware-independent way of storing data and makes it much easier to create data which different applications can share.
Simplifies Data Transport: By means of XML, data can be conveniently exchanged between incompatible systems. One of the most time-consuming challenges for developers is to exchange data between incompatible systems over the Internet. Exchanging data as XML reduces this intricacy to a great extent, since the data can be read by different incompatible applications.
Simplifies Platform Changes: Upgrading to new platforms (either hardware or software), is always very time consuming since large amount of data needs to be converted and incompatible data is frequently lost. However, XML data is stored in text format which makes it easier to expand or upgrade to new operating systems, new applications, or new browsers, without losing any data.
Makes our Data More Available: Since XML is independent of hardware, software and application, it can make our data more available and useful. Diverse applications can access our data, not only in HTML pages, but also from XML data sources. Via XML, our data can be available to all kinds of reading machines like Handheld computers, voice machines, news feeds, etc, and make it more available for blind people, or people with other disabilities.
Used to Create New Internet Languages: Many new Internet languages are created with XML. Some of the examples are given below:
- XHTML the latest version of HTML
- WSDL for describing available web services
- WAP and WML as markup languages for handheld devices
- RSS languages for news feeds
- RDF and OWL for describing resources and ontology
- SMIL for describing multimedia for the web
Following are the current platforms and applications that are making use of this technology.
- Cell Phones: XML data can be transferred to a few cell phones, which is then formatted by the specification of the cell phone software designer to display text, images and even play sounds!
- File Converters: Various applications are available to convert existing documents into the XML standard. For example, A PDF to XML converter.
- VoiceXML: This application converts XML documents into an audio format so that one can listen to an XML document. XML is considered to be the future for all data transmission and data manipulation over the Web.