XSLT, which stands for Extensible Stylesheet Language Transformations, is a domain specific functional language for extracting data from and transforming XML documents. The language itself uses XML syntax. It is defined in three pieces:

Extensible Stylesheet Language (XSL) is the base language

XPath is the expression language used within many of the attributes to address portions of the document and manipulate values

Formatting Objects (FO) is an extension for providing page layout and presentation, which has a similar model to PDF