Bonsoir,
je tente de faire une feuille xslt pour le document xml suivant :
J'utilise la fonction document() pour traiter les données récupérées du fichier COMPLET.xml . Lorsque je l'utilise seule, je récupère bien ce que je veux, mais dès que j'y ajoute un autre modèle pour récupérer le nom d'un chercheur, les données censées être récupérer ne s'affiche plus dans le résultat.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 <?xml version="1.0" encoding="ISO-8859-1"?> <MoDyCo> <chercheur>cori</chercheur> <chercheur>minel</chercheur> <DOC href="./COMPLET.xml"> </DOC> </MoDyCo>
Pour plus de clareté,
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
19
20
21
22
23
24
25
26
27
28 <?xml version="1.0" encoding="utf-8" ?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" encoding="utf-8" /> <xsl:template select="/"> <xsl:apply-templates /> </xsl:template> <xsl:template match="MoDyCo"> <xsl:for-each select="./chercheur"> <xsl:copy-of select="."/> <xsl:call-template name="DOC"/> </xsl:for-each> </xsl:template> <xsl:template name="DOC"> <xsl:apply-templates select="document(@href)" /> </xsl:template> <xsl:template match="documents/typdoc/document"> <xsl:for-each select="./auteur"> <xsl:if test="contains(text(),'Cori')"> <xsl:copy-of select="../child::*" /> </xsl:if> </xsl:for-each> </xsl:template> </xsl:stylesheet>
J'ai le nez dedans depuis trop longtemps, je ne vois vraiment pas où peut bien se situer le problème...
Merci d'avance...
Ludivine
Partager