eXtensible Markup Language (XML) is invented to share and store data independent of platforms and technologies. XML has emerged as the de-facto standard for configurations and data services of new generation applications due to its simplicity and portability.

An XML document contains element(s). An element may have simple text, other element(s), and attribute(s).

The following XML technologies are created to define, manage, and use of data stored in XML:
  • Document Type Definition (DTD) defines the legal building blocks, the elements and attributes of an XML document. DTD didn't address what values (i.e. data type) these elements and attributes can have.
  • XML Schema Definition (XSD) is also used to define the legal building blocks, the elements and attributes of an XML document, just like a DTD but XML Schemas has support for data types and namespaces.
  • XML Namespaces provides a method to avoid element name conflicts.
  • XML Query Language (XQuery) plays the same role as SQL plays for RDBMS.
  • XML Path Language (XPath) provides a method to directly select nodes or node-sets in an XML document. It is the foundation for XSLT.
  • XML Linking Language (XLink) defines a standard way of creating hyperlinks in XML documents.
  • XML Pointer Language (XPointer) allows the hyperlinks to point to more specfic sections of the XML document.
  • eXtensible Stylesheet Language Transformations (XSLT) facilitates xml document transformations into XHTML, other XML, text, and various other format document.