Named templates are useful when the same code is executed in several places of the stylesheet. They are declared wit xsl:template element which uses attribute name instead of match.
The named templates are executed with instructions xsl:call-template, which name attributes correspond.
|
XSLT
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0"> <xsl:output method="xml" indent="yes" omit-xml-declaration="yes"/> <xsl:template name="x"> <xxx>XXX</xxx> </xsl:template> <xsl:template match="/"> <xsl:apply-templates select="*"/> </xsl:template> <xsl:template match="bbb"> <xsl:call-template name="x"/> </xsl:template> <xsl:template match="ccc"> <xsl:call-template name="x"/> </xsl:template> </xsl:stylesheet> |
|
|
XML
<aaa> <bbb/> <ccc/> </aaa> |
Output
<xxx>XXX</xxx> <xxx>XXX</xxx> |
| Previous chapter: | Axes |
| Next chapter: | Variables and Parameters |
| Previous page: | - - - |
| Next page: | Context of named templates |