XSLT is the W3C's "transformation" language. It gives us a way to write a nonprocedural description of how to convert one kind of XML document into another (or into HTML or text) by selecting data (using XPath), copying data, rearranging data, and combining it with data from other sources.
For official (formal) details, see http://www.w3.org/Style/XSL/