It is not possible to set a function parameter to a default value. See the following example for a correct way how to achieve this functionality.
|
XSLT
<xsl:stylesheet xmlns:my="myFunctions" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0" exclude-result-prefixes="my"> <xsl:output method="xml" indent="yes" omit-xml-declaration="yes"/> <xsl:function name="my:multiply"> <xsl:param name="a"/> <xsl:param name="b" select="1"/> <xsl:value-of select="$a * $b"/> </xsl:function> <xsl:template match="/aaa"> <xsl:value-of select="my:multiply(4)"/> </xsl:template> </xsl:stylesheet> |
|
|
XML
<aaa/> |
Output
Error:error - XTSE0760
Function parameters cannot have a default value error - XPST0003
XPath syntax error at char C on line L in {my:multiply(4)}: Cannot find a matching 1-argument function named {myFunctions}multiply() Failed to compile stylesheet. 2 errors detected.
|
| Previous chapter: | Variables and Parameters |
| Next chapter: | Comparisons |
| Previous page: | Reuse of function declaration in functions with optional number of parameters |
| Next page: | Functions with default arguments |