Name

<xsl:with-param>

Defines a parameter to be passed to a template. When the template is invoked, values can be passed in for the parameter.

Category

Subinstruction; <xsl:with-param> always appears inside the <xsl:apply-templates> or <xsl:call-template> element.

[2.0] In XSLT 2.0, it can also appear inside the new <xsl:apply-imports> and <xsl:next-match> elements.

Description

<xsl:with-param> defines a parameter to be passed to a template. When a template is invoked, values can be passed in for its parameters. The value of a parameter can be defined in one of three ways:

  • If the <xsl:with-param> element is empty and does not contain a select attribute, then no value is passed to the template.

  • If the <xsl:with-param> element is empty and has a select attribute, the value of the parameter is the value of the select attribute.

  • If the <xsl:with-param> element is not empty, the value of the parameter is the result of processing its contents.

If no value is passed to the template (<xsl:with-param name="x"/>), then the default value of the parameter, if any, is used instead. The default value of the parameter is defined on the <xsl:param> element inside the <xsl:template> itself; see the description of the <xsl:param> element for more details.

Required Attribute

name

Names this parameter.

Optional Attributes

select

An XPath expression that defines the value of this parameter. It is a fatal error if <xsl:with-param> has a select attribute and contains content.

[2.0 – Schema] as

Defines the datatype of this ...

Get XSLT, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.