XSLT is the abbreviation for Extensible Stylesheet Language Transformations. It is one of two parts of the XSL specification and is a language for transforming XML documents (actually the transformation part, T stands for transformation).
XSLT is a XML transformation language, which transforms documents in XML format. To transform in this context means to take all data or part of it (Query of a selection with XPath) and create another XML document or a document in a format which can directly be used for displaying or printing (e.g. an HTML, RTF or TeX document). In particular the transformations involve:
- adding constant text like HTML document type and header information
- moving text
- sorting text
An XML document is a tree on which the transformations are applied. The language is declarative, i.e. a program consist of a collection of several rules which transformations should be performed. The rules are applied recursively.
The XSLT processor checks which rules can be applied and executes the associated transformations based on a sequence of priorities.
You can use XSLT in combination with CSS to produce HTML documents.
An XSLT program is an XML document as the following template shows
<?xml version="1.0" ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
...
</xsl:stylesheet>
- Implementations
- Xalan-Java (http://xml.apache.org/xalan-j/)
- Xalan-C++ (http://xml.apache.org/xalan-c/)
- Sablotron (http://www.gingerall.com/charlie/ga/xml/p_sab.xml)
- SAXON (http://saxon.sourceforge.net/) by Michael Kay
- XT (http://www.blnz.com/xt/index.html) by James Clark
- Microsoft XSLT engine (http://msdn.microsoft.com/library/en-us/xmlsdk/htm/xsl_intro_7yw5.asp)