Element XSLT <xsl:number>
Definicja i użycie
<xsl:number> element jest używany do określenia liczby całkowitej pozycji bieżącego węzła w źródle. Jest również używany do wstawiania sformatowanych liczb do drzewa wynikowego.
Gramatyka
<xsl:number licz="wyrażenie" level="jedna|wiele|każdy" from="wyrażenie" value="wyrażenie" format="formatstring" lang="kod_językowy" letter-value="alphabetic|traditional" grouping-separator="znak" grouping-size="liczba"/>
atrybut
atrybut | wartość | opis |
---|---|---|
licz | wyrażenie | Dostępne. Wyrażenie XPath, które określa, które węzły mają być obliczane. |
poziom |
|
Dostępne. Kontroluje sposób przypisywania numerów. Wartość może być:
|
od | wyrażenie | Dostępne. Wyrażenie XPath, które określa, od czego zaczynać liczenie. |
wartość | wyrażenie | Dostępne. Określa liczbę dostarczoną przez użytkownika, która zastępuje generowany numer. |
format | formatstring | Opcjonalne. Definiuje format wyjścia liczby.Dostępne wartości. |
lang | languagecode | Opcjonalne. Określa używaną alfabetę językową do numeracji. |
letter-value |
|
Opcjonalne. Usuwa niejasności między sekwencjami liczb z użyciem liter. Wartość "alphabetic" wskazuje sekwencję liter; wartość "traditional" wskazuje inne sekwencje. Domyślna wartość to "alphabetic". |
grouping-separator | character | Opcjonalne. Określa, jakim znakiem oddzielać grupy lub liczby. Domyślnie to przecinek. |
grouping-size | number | Opcjonalne. Określa rozmiar grupy. Domyślnie to 3. |
Format znacznika
Format znacznika | Generowany ciąg |
---|---|
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... |
Komentarz:Netscape 6 nie obsługuje znaczników: 01, a, A, i, I.
Przykład
Przykład 1
<xsl:number value="250000" grouping-separator="."/>
Wynik:
250.000
Przykład 2
<xsl:number value="250000" grouping-size="2"/>
Wynik:
25,00,00
Przykład 3
<xsl:number value="12" grouping-size="1" grouping-separator="#" format="I"/>
Wynik:
X#I#I
Przykład 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>