Hello tout le monde !
Je suis bloqué dans mon développement pour la raison suivante :
J'aimerais procéder à un test avec If sous cette forme :
Le problème c'est que $test représente un node-set venant d'un autre fichier XML.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 <xsl:for-each select="//Parent"> <Parent> <xsl:variable name="$code" select="document('codes.xml')/Codes/."/> <!-- ici le point désigne tout les nodes code qui sont les enfants de Codes --> ... <xsl:if test="(Enfant[@Code]/.) = ($code)"> ... </xsl:if> ... </Parent> </xsl:for-each>
Donc le tri ne s'effectue pas et mes balises restent vide...
Je voudrais savoir comment on peut faire pour tester un node-set (1 par 1 tout les node à l'interieur).
Pour être plus clair :
L'expression à laquelle j'aimerais arriver, c'est :
Mais je ne veut pas le coder en dur, les codes sont stockés dans un fichier XML codes.xml et sont variable selon les utilisateurs.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2<xsl:if test="((Enfant[@Code]/.) = (Code1)) or ((Enfant[@Code]/.) = (Code2)) or ((Enfant[@Code]/.) = (Code3)) or ((Enfant[@Code]/.) = (Code4))">
J'espère avoir été assez explicite / concis.
Merci à tous les courageux (ou hargneux) codeurs qui auront le temps de me lire !
![]()
Partager