Previous | Next | Indexes
Zvon > Tutorials > XSLT 2.0 Tutorial > Named-Templates (2/4) >

Context of named templates

The context of the named template is the same as the context of the template from which it has been called.

XSLT

      <xsl:stylesheet
                  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                  version="2.0">
            <xsl:output  method="xml"
                        indent="yes"
                        omit-xml-declaration="yes"/>

            <xsl:template  name="x">
                  <xxx>
                        <xsl:value-of  select="name()"/>
                        <xsl:text>: </xsl:text>
                        <xsl:value-of  select="@id"/>
                  </xxx>
            </xsl:template>

            <xsl:template  match="/">
                  <xsl:apply-templates  select="*"/>
            </xsl:template>

            <xsl:template  match="bbb">
                  <xsl:call-template  name="x"/>
            </xsl:template>

            <xsl:template  match="ccc">
                  <xsl:call-template  name="x"/>
            </xsl:template>

      </xsl:stylesheet>
XML

      <aaa>
            <bbb  id="id1"/>
            <ccc  id="id2"/>
      </aaa>
Output

      <xxx>bbb: id1</xxx>
      <xxx>ccc: id2</xxx>


Previous chapter: Axes
Next chapter: Variables and Parameters
Previous page: Declaration of named templates
Next page: Naming match templates