XSLT <xsl:template>
Element
An XSL style sheet consists of one or more sets of rules known as templates.
Each template contains rules that are applied when a specified node is matched.
<xsl:template>
Element
The <xsl:template>
element is used to construct templates.
The match attribute is used to associate XML elements with templates. The match attribute can also be used to define templates for the entire XML document. The value of the match attribute is an XPath expression (for example, match="/" defines the entire document).
Now, let's look at a simplified version of the XSL file from the previous chapter:
Example
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2>My CD Collection</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Title</th>
<th>Artist</th>
</tr>
<tr>
<td>.</td>
<td>.</td>
</tr>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
Example Explanation
Since an XSL style sheet is itself an XML document, it always starts with an XML declaration: <?xml version="1.0" encoding="ISO-8859-1"?>.
The next element, <xsl:stylesheet>, defines this document as an XSLT style sheet document (along with the version number and XSLT namespace attributes).
The <xsl:template> element defines a template. The match="/" attribute associates this template with the root of the XML source document.
The content inside the <xsl:template>
element defines the HTML code written to the output.
The last two lines define the end of the template and the end of the style sheet.
This example has a minor flaw because the data is not copied from the XML document to the output. In the next chapter, you will learn how to use the <xsl:value-of> element to select values from XML elements.