Bonjour,
J'ai deux fichiers .xml ayant la synthaxe suivante :
Je souhaite afficher une synthèse :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 fichier : a.xml <rapport date="01/01/2006"> <rubrique id="rubrique_1"> <element id="M" actuel="1" /> <element id="C" actuel="2" /> <element id="D" actuel="3" /> </rubrique> </rapport> fichier : b.xml <rapport date="01/01/2006"> <rubrique id="rubrique_1"> <element id="M" actuel="4" /> <element id="C" actuel="5" /> <element id="D" actuel="6" /> </rubrique> </rapport>
Pour ce faire, soit je fais dans le fichier "b.xml" reference à "a.xml"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 [Rubrique : rubrique_1] elements | 01/01/2006 | 01/02/2006 | Evolution | ------------------------------------------------ M | 1 | 2 | + 1 | ------------------------------------------------ C | 2 | 4 | + 2 | ------------------------------------------------ D | 3 | 6 | + 3 | ------------------------------------------------
Soit, je cree un fichier tiers avec reference sur "a.xml" et "b.xml"
ce qui est plus propre.
Maintenant le probléme :
Je dois parcourir l'arborescence d'un fichier (par exemple celui de "a.xml")
et pour chaque element de celui ci, je dois aller chercher le noeud equivalent dans "b.xml"
j'essaye d'utiliser les variables :
Lorsque je fais :
j'obtiens bien : 01/01/2006
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <xsl:variable name="a"> <xsl:value-of select="document('a.xml')/rapport/@date"/> </xsl:variable> <xsl:value-of select="$a" />
mais lorsque j'essaye :
j'obtiens le message d'erreur suivant : La référence à une variable ou un paramètre « a » doit correspondre à une liste de noeuds.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <xsl:variable name="a"> <xsl:value-of select="document('a.xml')/rapport"/> </xsl:variable> <xsl:value-of select="$a/@date" />
j'ai essaye d'utiliser
mais sans resultat.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <xsl:variable name="a"> <xsl:copy-of select="document('a.xml')/rapport" /> </xsl:variable>
Merci pour votre aide
Partager