Fonction position() | |
Renvoie un nombre égal à la position contextuelle du contexte actuel. | |
Entrées | |
Aucune. |
|
Sortie | |
Un nombre égal à la position du nœud actuel du contexte d'évaluation. |
|
Définie dans | |
XPath section 4.1, Fonctions Ensemble de nœuds. |
|
Exemples | |
L'exemple suivant utilise la fonction position() pour déterminer la couleur d'arrière-plan des lignes d'une table. Le cycle complet des couleurs d'arrière-plan passe par les options white, darkgray et lightgreen. Le document XML utilisé est le suivant : <?xml version="1.0"?> <list> <title>A few of my favorite albums</title> <listitem>A Love Supreme</listitem> <listitem>Beat Crazy</listitem> <listitem>Here Come the Warm Jets</listitem> <listitem>Kind of Blue</listitem> <listitem>London Calling</listitem> <listitem>Remain in Light</listitem> <listitem>The Joshua Tree</listitem> <listitem>The Indestructible Beat of Soweto</listitem> </list> La feuille de style suivante a permis de générer le document XML : <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="html"/> <xsl:template match="/"> <html> <head> <title> <xsl:value-of select="/list/title"/> </title> </head> <body> <h1> <xsl:value-of select="/list/title"/> </h1> <table border="1"> <xsl:for-each select="/list/listitem"> <xsl:variable name="background-color"> <xsl:choose> <xsl:when test="position() mod 3 = 1">white</xsl:when> <xsl:when test="position() mod 3 = 2">darkgray</xsl:when> <xsl:otherwise>lightgreen</xsl:otherwise> </xsl:choose> </xsl:variable> <tr bgcolor="{$background-color}"> <td> <b><xsl:value-of select="."/></b> </td> </tr> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet> Les résultats suivants ont été générés par la feuille de style : <html> <head> <META http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>A few of my favorite albums</title> </head> <body> <h1>A few of my favorite albums</h1> <table border="1"> <tr bgcolor="white"> <td><b>A Love Supreme</b></td> </tr> <tr bgcolor="darkgray"> <td><b>Beat Crazy</b></td> </tr> <tr bgcolor="lightgreen"> <td><b>Here Come the Warm Jets</b></td> </tr> <tr bgcolor="white"> <td><b>Kind of Blue</b></td> </tr> <tr bgcolor="darkgray"> <td><b>London Calling</b></td> </tr> <tr bgcolor="lightgreen"> <td><b>Remain in Light</b></td> </tr> <tr bgcolor="white"> <td><b>The Joshua Tree</b></td> </tr> <tr bgcolor="darkgray"> <td><b>The Indestructible Beat of Soweto</b></td> </tr> </table> </body> </html> Une fois affiché, le fichier HTML ressemble à la Figure C-8. Fichier HTML affichant des éléments ayant différentes couleurs d'arrière-plan |