Define number type variable : Variable « XSLT stylesheet « XML






Define number type variable


File: Data.xml
<story>

  <chapter>
    <title>Chapter 1</title>
    <para>para 1</para>
    <para>item 1</para>
  </chapter>

</story>


File: Transform.xslt

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

  <xsl:template match="chapter">
    <xsl:variable name="chapNum">
      <xsl:number />
    </xsl:variable>

    <xsl:document href="chap{$chapNum}.html">
      <html>
        <body>
          <xsl:apply-templates />
        </body>
      </html>
    </xsl:document>

  </xsl:template>


  <xsl:template match="chapter/title">
    <h1>
      <xsl:apply-templates />
    </h1>
  </xsl:template>


  <xsl:template match="para">
    <p>
      <xsl:apply-templates />
    </p>
  </xsl:template>


</xsl:stylesheet>

Output:

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

  <xsl:template match="chapter">
    <xsl:variable name="chapNum">
      <xsl:number/>
    </xsl:variable>

    <xsl:document href="chap{$chapNum}.html">
      <html>
        <body>
          <xsl:apply-templates/>
        </body>
      </html>
    </xsl:document>

  </xsl:template>


  <xsl:template match="chapter/title">
    <h1>
      <xsl:apply-templates/>
    </h1>
  </xsl:template>


  <xsl:template match="para">
    <p>
      <xsl:apply-templates/>
    </p>
  </xsl:template>


</xsl:stylesheet>

 








Related examples in the same category

1.Define variable and set value
2.Define variable
3.Output variable
4.Define a variable and then use it in for loop
5.Assign value from variable to attribute
6.Use for-each to loop through variable
7.Use constant value from variable
8.Fill variable with the returned value from a function
9.Variable scope
10.substring function with variable
11.Reference variable three times
12.Compare variable
13.Math calculation
14.value-of and math calculation
15.Variable with number type
16.number level="any" count="chapter|sect1|sect2|sect3" format="Ww - " ordinal="yes"
17.number level="any" count="chapter|sect1|sect2|sect3" format="w - " lang="de"
18.number level="any" count="chapter|sect1|sect2|sect3" format="w - " lang="pl"
19.Thai numbering