Passes a parameter value to a template.


<xsl:with-param name = "parameter_name"  
  [select = "expression1]" 


The xsl:with-param instruction passes a parameter value to a template. If the template has no matching xsl:param declaration, the XSLT processor ignores the parameter. The value of parameter_name is a qualified name.

The name attribute is required, and it must be a string. The value of the name attribute is a qualified name.

The value that you pass to a template can be an object of any of the types that are returned by expressions. You can specify the value of the parameter in several ways:

The xsl:with-param element must be a child of xsl:apply-templates or xsl:call-template.

You can specify the xsl:with-param instruction in xsl:call-template and xsl:apply-template instructions.


Suppose you specify the following parameter for a template:

<xsl:template name="Appendix"> 
  <xsl:param name = "heading"> 1. </xsl-param> 

You can pass another value for this variable as follows:

<xsl:call-template name = "Appendix"> 
  <xsl:with-param name = "heading"> A. </xsl:with-param> 

Free Stylus Studio XML Training:
W3C Member