XML was introduced as a metalanguage for data description that can be transformed into specific markup languages based on vocabulary and schema. An XML transformation expresses the semantics of a document using another equivalent syntax, similar to a type cast. XSLT is the rule-based language used to transform XML documents into other text formats through XSLT programs, using XPath queries to select parts of the XML document. The XSLT process combines an XML source file and style sheet to produce a third output document in XML, HTML, or other text format.