Partager via


Fonction position

Retourne la position, ou numéro d'index, du nœud, par rapport à tous les nœuds sélectionnés dans la liste de nœuds.

      number position()

Notes

La position du nœud est de base 1 ; le premier nœud retourne donc la position 1.

Exemple

L'exemple de code suivant illustre les effets de la fonction position().

Fichier XML (position.xml)

Fichier XSLT (position.xsl)

Sortie

Appliquée au fichier XML source, la feuille de style XSLT ci-dessus mappe tous les éléments <x> à de nouveaux éléments <x> dont le contenu comporte leur position dans l'ordre du document.

<x a="a11">1</x>
<x a="a21">2</x>
<x a="a31">3</x>
<x a="a12">4</x>
<x a="a22">5</x>
<x a="a13">6</x>
<x a="a14">7</x>

Pour illustrer la sensibilité de la fonction position() par rapport au contexte dans lequel elle est exécutée, remplaçons la règle de modèle suivante (du fichier XSLT ci-dessus) :

par la suivante :

Le résultat est le suivant :

<x a="a11">1</x>
<x a="a21">2</x>
<x a="a31">3</x>
<x a="a22">4</x>

D'autre part, si nous remplaçons la règle de modèle par la suivante :

<xsl:template match="/">
  <xsl:apply-templates select="//x[2]"/>
</xsl:template>

nous obtenons le résultat suivant :

<x a="a12">1</x>                 

Voir aussi

Référence

Référence des types de données XML