Is there way to call an XSL template with optional parameters?
For example:
<xsl:call-template name="test">
<xsl:with-param name="foo" select="'fooValue'" />
<xsl:with-param name="bar" select="'barValue'" />
</xsl:call-template>
And the resulting template definition:
<xsl:template name="foo">
<xsl:param name="foo" select="$foo" />
<xsl:param name="bar" select="$bar" />
<xsl:param name="baz" select="$baz" />
...possibly more params...
</xsl:template>
This code will gives me an error “Expression error: variable ‘baz’ not found.” Is it possible to leave out the “baz” declaration?
Thank you,
Henry
You’re using the
xsl:paramsyntax wrong.Do this instead:
Param takes the value of the parameter passed using the
xsl:with-paramthat matches the name of thexsl:paramstatement. If none is provided it takes the value of theselectattribute full XPath.More details can be found on W3School’s entry on param.