Type of programming language
An XML transformation language is a programming language designed specifically to transform an "input" XML document into an "output" document which satisfies some specific goal.
There are two special cases of transformation:
XML to XML.
As XML to XML transformation outputs an XML document, XML to XML transformation chains form XML pipelines.
XML to Data.
The XML (EXtensible Markup Language) to Data transformation contains some important cases. The most notable one is XML to HTML (HyperText Markup Language), as an HTML document "is not" an XML document.
SGML origins.
The earliest transformation languages predate the advent of XML as an SGML profile, and thus accept input in arbitrary SGML rather than specifically XML. These include the SGML-to-SGML link process definition (LPD) format defined as part of the SGML standard itself; in SGML (but not XML), the LPD file can be referenced from the document itself by a declaration, similarly to the declaration used for a DTD. Other such transformation languages, addressing some of the deficiencies of LPDs, include Document Style Semantics and Specification Language (DSSSL) and OmniMark. Newer transformation languages tend to target XML specifically, and thus only accept XML, not arbitrary SGML.
References.
 ;templatestyles src="Reflist/styles.css" / ;