XSLT <xsl:number> 元素

定义和用法

<xsl:number> 元素用于测定在源中当前节点的整数位置。它也用于将格式化的数字插入结果树。

语法

<xsl:number
count="expression"
level="single|multiple|any"
from="expression"
value="expression"
format="formatstring"
lang="languagecode"
letter-value="alphabetic|traditional"
grouping-separator="character"
grouping-size="number"/>

属性

属性 描述
count expression 可选。XPath 表达式,规定要计算的节点。
level
  • single
  • multiple
  • any

可选。控制如何分配序号。

值可以是:

  • single (默认)
  • multiple
  • any (Netscape 6 不支持)
from expression 可选。XPath 表达式,规定从何处开始计数。
value expression 可选。规定用户提供的数字,用于代替生成的序号。
format formatstring Optional. Definiert das Ausgabeformat der Zahl.Verwendbare Werte.
lang languagecode Optional. Legt die für die Nummerierung verwendete Alphabet des Sprachcodes fest.
letter-value
  • alphabetic
  • traditional
Optional. Entfernt die Ambiguität zwischen den Nummerierungsreihen, die mit Buchstaben verwendet werden. Der Wert "alphabetic" bestimmt die Buchstabenreihe; der Wert "traditional" bestimmt andere Reihen. Standardwert ist "alphabetic".
grouping-separator character Optional. Legt fest, mit welchem Zeichen die Gruppen oder Zahlen getrennt werden. Standard ist Komma.
grouping-size number Optional. Legt die Größe der Gruppierung fest. Standard ist 3.

Formatierungszeichen

Formatierungszeichen Erzeugte Sequenz
1 1 2 3 4 5 ... 10 11 12 ...
01 01 02 03 ... 19 10 11 ... 99 100 101...
a a b c . .
A A B C ...Z AA AB AC...
i i ii iii iv v vi vii viii ix x...
I I II III IV V VI VII VIII IX X...

Kommentar:Netscape 6 nicht unterstützte Markierungen: 01, a, A, i, I.

Beispiel

Beispiel 1

<xsl:number value="250000" grouping-separator="."/>

Ausgabe:

250.000

Beispiel 2

<xsl:number value="250000" grouping-size="2"/>

Ausgabe:

25,00,00

Beispiel 3

<xsl:number value="12" grouping-size="1" grouping-separator="#" format="I"/>

Ausgabe:

X#I#I

Beispiel 4

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
  <html>
  <body>
  <p>
  <xsl:for-each select="catalog/cd">
    <xsl:number value="position()" format="1" />
    <xsl:value-of select="title" /><br />
  </xsl:for-each>
  </p>
  </body>
  </html>
</xsl:template>
</xsl:stylesheet>