Cet élément <xsl:variable> permet de définir une variable qui pourra être utilisé dans le fichier XSL et qui peut changer de valeur. Considérons cet exemple XML :
et ce fichier XSL :
Pour chacun des noeuds compléments du fichier XML en entrée, on déclare une variable dont le nom est id. On assigne ensuite la valeur de l’attribut @id du noeud <complement> à cette variable. La variable prendra donc une nouvelle valeur à chaque fois qu’on explore un noeud < complement> différent. Cette variable peut ensuite être appelé avec $id. C’est ce qu’on fait avec cette ligne :
<xsl:apply-templates select="document(’compl-image.xml’)//image[id-image=$id]/affichage/img"/>
On sélectionne dans le document XML compl-image tous les noeuds images ayant comme noeud fils id-image avec une valeur égale à la valeur de la variable id. Nous sélections ensuite le noeud fils img du noeud fils affichage.
L’utilisation du paramètre document est détaillé dans l’article sur la lecture de plusieurs fichiers XML à partir d’un seul fichier XSL.






0 Réponses à “Element XSLT et XSL <xsl:variable>”
Laisser un commentaire