Xalan-Java (named after a rare musical instrument) fully implements the W3C Recommendation 16 November 1999 XSL Transformations (XSLT) Version 1.0 and the
XML Path Language (XPath) Version 1.0. XSLT is the first part of the XSL stylesheet language for XML. It includes the XSL
Transformation vocabulary and XPath, a language for addressing parts of XML documents. For links to background materials,
discussion groups, frequently asked questions, and tutorials on XSLT, see Getting up
to speed with XSLT.
You use the XSLT language to compose XSL stylesheets. An XSL stylesheet contains instructions for
transforming XML documents from one document type into another document type (XML, HTML, or other). In structural
terms, an XSL stylesheet specifies the transformation of one tree of nodes (the XML input) into another tree of nodes
(the output or transformation result).
| The XSL stylesheet may generate and refer to cascading style sheets (CSS) as part of its output. |
In the following example, the foo.xsl stylesheet is used to transform foo.xml into foo.out:
foo.xml:
| | |
| <?xml version="1.0"?>
<doc>Hello</doc> | |
| | |
foo.xsl:
| | |
| <?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="doc">
<out><xsl:value-of select="."/></out>
</xsl:template>
</xsl:stylesheet> | |
| | |
foo.out:
By default, Xalan-Java uses a high-performance Document Table Model (DTM) to parse XML documents and XSL stylesheets. It can be set to use the Xerces-Java XML parser, and it can be adapted to work with other DOM-producing mechanisms and SAX document handlers. The input may appear in the form of a file, a character stream, a byte stream, a DOM, or a SAX input stream.
Xalan-Java performs the transformations specified in the XSL stylesheet and produces a document file, a character
stream, a byte stream, a DOM, or a series of SAX events, as you specify when you set up the transformation.