Previous | Next | Indexes
Zvon > Tutorials > XSLT 2.0 Tutorial > Multiple stylesheets (6/6) >

xsl:apply-imports with parameters

Element xsl:apply-imports can use xsl:with-param with the same meaning as in xsl:apply-templates.

XSLT

      <xsl:stylesheet
                  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                  version="2.0">
            <xsl:import  href="st6-a.xslt"/>

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

            <xsl:template  match="bbb">
                  <main-bbb>
                        <xsl:apply-imports>
                              <xsl:with-param  name="x"
                                          select="@b*5"/>
                        </xsl:apply-imports>
                  </main-bbb>
            </xsl:template>

      </xsl:stylesheet>

st6-a.xslt

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

            <xsl:template  match="bbb">
                  <xsl:param  name="x"/>
                  <imported-bbb>
                        <xsl:value-of  select="$x"/>
                  </imported-bbb>
            </xsl:template>

      </xsl:stylesheet>
XML

      <aaa>
            <bbb  b="8"/>
      </aaa>
Output

      <xxx>
            <main-bbb>
                  <imported-bbb>40</imported-bbb>
            </main-bbb>
      </xxx>


Previous chapter: Multiple source documents
Next chapter: Multiple Outputs
Previous page: Explicit usage of templates from imported stylesheet
Next page: - - -