Previous | Next | Indexes
Zvon > Tutorials > XSLT 2.0 Tutorial > Implicit behaviour (5/10) >

Implicit templates and modes

Implicit templates for explicitly specified modes behave similarly to default mode, i.e. they call xsl:apply-templates with the mode of calling explicit template.

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  match="/aaa">
                  <xxx>
                        <xsl:apply-templates  mode="X"/>
                  </xxx>
                  <yyy>
                        <xsl:apply-templates  mode="Y"/>
                  </yyy>
            </xsl:template>

            <xsl:template  match="ddd"
                        mode="X">
                  <xsl:text>-- X --</xsl:text>
            </xsl:template>

            <xsl:template  match="ddd"
                        mode="Y">
                  <xsl:text>::: YYY :::</xsl:text>
            </xsl:template>

      </xsl:stylesheet>
XML

      <aaa>
            <bbb>
                  <ccc>
                        <ddd/>
                  </ccc>
            </bbb>
      </aaa>
Output

      <xxx> -- X -- </xxx>
      <yyy> ::: YYY ::: </yyy>


Previous chapter: Context
Next chapter: Arithmetics
Previous page: Implicit match of root element
Next page: Implicit template for attributes