Processing of templates can be influenced by parameters which are send to the template. Element xsl:param is used inside template to receive a parameter from an xsl:apply-templates, where it is specified with xsl:with-param element. Number of parameters is not restricted.
|
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 match="/aaa"> <z-1> <xsl:apply-templates select="bbb"/> </z-1> <z-2> <xsl:apply-templates select="bbb"> <xsl:with-param name="parA" select="1"/> </xsl:apply-templates> </z-2> <z-3> <xsl:apply-templates select="bbb"> <xsl:with-param name="parA" select="2"/> <xsl:with-param name="parB" select="33"/> </xsl:apply-templates> </z-3> </xsl:template> <xsl:template match="bbb"> <xsl:param name="parA"/> <xsl:param name="parB"/> <xxx> <xsl:value-of select="$parA"/> </xxx> <yyy> <xsl:value-of select="$parB"/> </yyy> </xsl:template> </xsl:stylesheet> |
|
|
XML
<aaa> <bbb/> </aaa> |
Output
<z-1> <xxx/> <yyy/> </z-1> <z-2> <xxx>1</xxx> <yyy/> </z-2> <z-3> <xxx>2</xxx> <yyy>33</yyy> </z-3> |
| Previous chapter: | Named-Templates |
| Next chapter: | Stylesheet Functions |
| Previous page: | Circular definitions |
| Next page: | Default values of parameters |