Extensible Markup Language (XML) is a markup language (not a programming language) that defines rules for encoding documents in a format that is both human-readable and machine-readable. It is a text data format that emphsizes simplicity, genrality, and usability across the Internet. XML is often used for storing and distributing data over the Internet.
XML was created by Tim Bray , Jean Paoli, C. M. Sperberg-McQueen, Eve Maler, François Yergeau, and John Cowan in 1996. XML is maintained by the W3C.
XML-based formats are used in many applications:
- Microsoft Office-productivity
- LibreOffice (OpenDocument)
There are hundreds of specific XML markup language, i.e. adaptations of XML. The following are other notable XML markup language:
- AdsML Markup Language - used for interchange of data between advertising systems
- Atom (standard) - the Atom Syndication Format is a language used for web feeds
- BeerXML - a free XML based data description standard for the exchange of brewing data
- DocBook - a markup language for technical documentation
- FIXML - Financial Information eXchange (FIX) protocol in XML format. FIX is a widely used messaging protocol used between financial traders worldwide
- GPX - a language designed for transferring GPS data between software applications
- HumanML - describes contextual (emotional, social, pragmatic) information about instances of human communication
- Java Speech Markup Language - a language for annotating text input to speech synthesizers
- LOGML - Log Markup Language - used for describing the log reports of web servers
- MathML - a language describing mathematical notation
- MusicXML - an XML-based music notation file format
- OpenDocument (ODF) - a document file format used for describing electronic documents
- Recipe Markup Language - formerly known as DESSERT (Document Encoding and Structuring Specification for Electronic Recipe Transfer), is an XML-based format for marking up recipes. The format was created in 2000 by the company FormatData.
XML goes hand-in-hand with numerous other languages.
XSLT (eXtensible Stylesheet Language Transformations) is the recommended style sheet language for XML. In other words, XSLT is to XML what CSS is to HTML. XSLT was created by the W3C in 1998.
It is a Turing-complete language making it theoretically capable of arbitrary computations. There are several versions of XSLT, e.g. XLST 1.0, XSLT 2.0. XSLT has features different from CSS. Among its features are
- Transforming XML documents into other XML documents, e.g. HTML, PDF, PostScript and PNG.
- String manipulation using regular expressions
- Add/remove elements and attributes to or from the output files
- Perform tests and make decisions about which elements to hide and display
XSLT uses XPath and XQuery to accomplish many of its tasks. XQuery is to XML what SQL is to databases, i.e. queries XML data. XPath is used to navigate through elements and attributes in an XML document.