Skip to content

XSLT <xsl:param>

How to declare and use local or global parameters in XSLT with <xsl:param>, including syntax, attributes, and practical examples for passing values between templates.

XSLT <xsl:param>

The <xsl:param> element is used to declare a local or global parameter.

Syntax

<xsl:param name="name" select="expression">
	<!-- Content:template -->
</xsl:param>

Attributes

Attribute Value Required/Optional Description
name name Required Specifies the name of the parameter
select expression Optional Specifies an XPath expression that specifies a default value for the parameter

Example

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
  <html>
  <body>
  <xsl:for-each select="bookstore/book">
    <xsl:call-template name="show_title">
      <xsl:with-param name="title" select="title"/>
    </xsl:call-template>
  </xsl:for-each>
  </body>
  </html>
</xsl:template>

<xsl:template name="show_title" >
  <xsl:param name="title" />
  <p>Title: <xsl:value-of select="$title" /></p>
</xsl:template>

</xsl:stylesheet>
Navigation