L'élément <xsl:number>
compte des éléments de façon séquentielle. Il peut également être utilisé pour formater rapidement un nombre.
Syntaxe
<xsl:number count=EXPRESSION level="single" | "multiple" | "any" from=EXPRESSION value=EXPRESSION format=FORMAT-CHAÎNE lang=XML:CODE-LANG letter-value="alphabetic" | "traditional" grouping-separator=CARACTÈRE grouping-size=NOMBRE />
Attributs obligatoires
Aucun.
Attributs optionnels
count
- Définit les éléments devant être numérotés de façon séquentielle dans l'arbre source. Il utilise une expression XPath.
level
- Définit la manière dont les niveaux de l'arbre source doivent pris en compte lors de la génération des nombres séquentiels. Les trois valeurs possibles sont :
single
,multiple
etany
. La valeur par défaut estsingle
:
single
- Numérote de façon séquentielle les nœuds descendants d'un même parent, à la manière des éléments d'une liste. Le processeur va au premier nœud dans l'axe
ancestor-or-self
qui correspond à l'attributcount
, puis compte ce nœud ainsi que tous les nœuds précédents issus de son parent (il s'arrête lorsqu'il rencontre une référence à l'attributfrom
, si il en trouve une) qui correspond également à l'attributcount
. Si aucune correspondance n'est trouvée, la séquence produite sera une liste vide.
multiple
- Numérote les nœuds avec une séquence composite qui reflète la position hiérarchique du nœud, par exemple 1.2.2.5. (le format peut être défini avec l'attribut
format
, par exemple A.1.1). Le processeur vérifie tous lesancestors
du nœud courant ainsi que le nœud lui-même, il s'arrête lorsqu'il rencontre une correspondance avec l'attributfrom
, si il y en a une. Pour chaque nœud de la liste qui vérifie l'attributcount
, le processeur compte combien il possède de frères vérifiant également cet attribut, et ajoute un pour le nœud lui-même. Si aucune correspondance n'est trouvée, la séquence produite sera une liste vide.
any
(Non supporté à l'heure actuelle)- Numérote tous les nœuds vérifiant
count
de façon séquentielle, sans considération de niveau. Les axesancestor
,self
etpreceding
sont tous pris en compte. Le processeur débute au nœud courant et continue dans l'ordre inverse du document, s'arrêtant s'il rencontre une correspondance avec un attributfrom
. Si aucune correspondance avec l'attributcount
n'est trouvé,e la séquence produite sera une liste vide. Ce niveau n'est pas supporté à l'heure actuelle.
- from
- Définit l'endroit où la numérotation doit débuter. La séquence débute avec le premier descendant du nœud vérifiant l'attribut
from
.
- value
- Applique un format donné à un nombre. C'est un moyen rapide de formater un nombre fourni par l'utilisateur dans un des formats standards de
<xsl:number>
.
- format
- Définit le format du nombre généré :
- format="1"
- <tt>1 2 3 …</tt> (C'est le seul format supporté à ce jour)
- format="01"
- <tt>01 02 03 … 09 10 11 …</tt>
- format="a"
- <tt>a b c … y z aa ab …</tt>
- format="A"
- <tt>A B C … Y Z AA AB …</tt>
- format="i"
- <tt>i ii iii iv v …</tt>
- format="I"
- <tt>I II III IV V …</tt>
- lang (Non supporté à l'heure actuelle)
- Définit les alphabets pouvant être utilisés pour les formats de numérotation basés sur les lettres.
- letter-value
- Permet de lever l'ambiguïté sur les séquences numérotées qui utilisent des lettres. Certaines langues possèdent plus d'un système de numérotation utilisant les lettres. Si deux systèmes commencent avec le même glyphe, il peut y avoir une ambiguïté. Ce attribut peut avoir la valeur
alphabetic
outraditional
. La valeur par défaut estalphabetic
.
- grouping-separator
- Définit le caractère devant être utilisé pour les séparations des groupes (par exemple, le séparateur des milliers). Le caractère par défaut est la virgule (
,
).
- grouping-size
- Définit le nombre de chiffres formant un groupe. La valeur par défaut est
3
.
Type
Instruction, apparaît dans un modèle.
Définition
Support Gecko
Support partiel. Voir les commentaires ci-dessus.
Interwiki Languages Links