number level="any" count="section | element" format="1. " : number « XSLT stylesheet « XML Tutorial






File: Data.xml

<?xml version="1.0"?>

<outline>
 <section title="US coin denominations">
  <element>cent</element>
  <element>nickel</element>
  <element>dime</element>
  <element>quarter</element>
  <element>half dollar</element>
  <element>dollar</element>
 </section>
</outline>

File: Transform.xslt

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

  <xsl:template match="outline">
    <xsl:for-each select="section|//element">
      <xsl:number level="any" count="section | element" format="1. " />
      <xsl:value-of select="@title | text()" />
      <xsl:text>&#10;</xsl:text>
    </xsl:for-each>
  </xsl:template>

</xsl:stylesheet>

Output:

1. US coin denominations
2. cent
3. nickel
4. dime
5. quarter
6. half dollar
7. dollar








5.16.number
5.16.1.number level="any" count="section | element" format="1. "
5.16.2.number format: roman
5.16.3.number format=" 01. "
5.16.4.number value="1000000" grouping-size="3" grouping-separator=","
5.16.5.number format="A."
5.16.6.number format="I "
5.16.7.number format=" a. "
5.16.8.number value="position()" format="1. "
5.16.9.number format="1. "
5.16.10.number value="count(car)" format="01"
5.16.11.number count="manufacturer|car" level="multiple" format="1.1. "
5.16.12.count="manufacturer|car" level="any" format="1. "
5.16.13.xsl:number inserts formated numbers into output
5.16.14.The format is given with format attribute.
5.16.15.The attribute starts with format identificator followed by separator characters.
5.16.16.xsl:number value="position()" format="a# "
5.16.17.xsl:number value="position()" format="i: "
5.16.18.xsl:number value="position()" format="I... "
5.16.19.demonstrates the default behaviour of xsl:number element
5.16.20.Setting the attribute level into multiple