Elemento <xsl:number> di XSLT

Definizione e uso

<xsl:number> elemento viene utilizzato per determinare la posizione intera del nodo corrente nella fonte. Viene anche utilizzato per inserire numeri formattati nell'albero dei risultati.

Grammatica

<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"/>

Proprietà

Proprietà Valore Descrizione
count expression Opzionale. Espressione XPath, che determina i nodi da contare.
level
  • single
  • multiple
  • any

Opzionale. Controlla come assegnare i numeri.

I valori possono essere:

  • single (predefinito)
  • multiple
  • any (Netscape 6 non supportato)
from expression Opzionale. Espressione XPath, che determina da dove iniziare a contare.
value expression Opzionale. Determina il numero fornito dall'utente, che sostituisce il numero generato.
format formatstring Opzionale. Definisce il formato di output del numero.Valori utilizzabili.
lang languagecode Opzionale. Determina l'alfabeto linguistico utilizzato per numerare.
letter-value
  • alphabetic
  • traditional
Opzionale. Elimina le ambiguità tra sequenze numeriche con lettere. Il valore "alphabetic" specifica la sequenza letteraria; il valore "traditional" specifica altre sequenze. Il valore predefinito è "alphabetic".
grouping-separator character Opzionale. Determina il carattere utilizzato per separare i gruppi o i numeri. Di default è la virgola.
grouping-size number Opzionale. Determina la dimensione del raggruppamento. Di default è 3.

Marchio di formato

Marchio di formato Generata sequenza
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...

Commento:Tag non supportati da Netscape 6: 01, a, A, i, I.

Esempio

Esempio 1

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

Output:

250.000

Esempio 2

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

Output:

25.000,00

Esempio 3

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

Output:

X#I#I

Esempio 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>