<xsl:apply-templates> | |
Instructs the XSLT processor to apply the appropriate templates to a node-set. | |
Category | |
Instruction |
|
Required Attributes | |
None. |
|
Optional Attributes | |
|
|
Content | |
The <xsl:apply-templates> element can contain any number of <xsl:sort> and <xsl:with-param> elements. In most cases, <xsl:apply-templates> is empty. |
|
Appears in | |
<xsl:apply-templates> appears inside a template. |
|
Defined in | |
XSLT section 5.4, Applying Template Rules. |
|
Example | |
In our case study (see Chapter 9), we needed to create several different outputs from the same data. We addressed this need with the mode attribute of the <xsl:apply-templates> element. Here's the main template (match="/"): <xsl:template match="/"> <xsl:apply-templates select="tutorial" mode="build-main-index"/> <redirect:write select="concat($curDir, $fileSep, 'index.html')"> <xsl:apply-templates select="tutorial" mode="build-main-index"/> </redirect:write> <xsl:apply-templates select="tutorial" mode="build-section-indexes"/> <xsl:apply-templates select="tutorial" mode="build-individual-panels"/> <xsl:apply-templates select="tutorial" mode="generate-graphics"/> <xsl:apply-templates select="tutorial" mode="generate-pdf-file"> <xsl:with-param name="page-size" select="'ltr'"/> </xsl:apply-templates> <xsl:apply-templates select="tutorial" mode="generate-pdf-file"> <xsl:with-param name="page-size" select="'a4'"/> </xsl:apply-templates> <xsl:apply-templates select="tutorial" mode="generate-zip-file"/> </xsl:template> Notice that this example selects the <tutorial> element eight times, but applies templates with a different mode (or different parameters for the same mode) each time. |