XSLT <xsl:apply-templates>
Element
The <xsl:apply-templates>
element applies a template to the current element or its child nodes.
<xsl:apply-templates>
Element
The <xsl:apply-templates>
element applies a template to the current element or its child nodes.
If we add a select
attribute to the <xsl:apply-templates>
element, it will only process child elements that match the attribute value. We can use the select
attribute to specify the order in which child nodes are processed.
Consider the following XSL stylesheet:
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>
<xsl:apply-templates/>
</body>
</html>
</xsl:template>
<xsl:template match="cd">
<p>
<xsl:apply-templates select="title"/>
<xsl:apply-templates select="artist"/>
</p>
</xsl:template>
<xsl:template match="title">
Title: <span style="color:#ff0000">
<xsl:value-of select="."/></span>
<br />
</xsl:template>
<xsl:template match="artist">
Artist: <span style="color:#00ff00">
<xsl:value-of select="."/></span>
<br />
</xsl:template>
</xsl:stylesheet>