Bonjoir.
Problème:
J'ai donc un problème avec la fonction document().
Scénario:
Je suis en train de faire un programme qui liste dans un fichier XMLles fichiers d'un répertoire. Pour chaque fichier, un fichier contenant des informations sur celui-ci est créé dans un répertoire "about" (Ex: Pour le fichier "machin truc.iso", un fichier "./about/machin truc.iso.xml" est créé). À l'aide d'une feuille de style XSTL je souhaite afficher une page HTML contenant le contenu des deux fichiers XML.
Le fichier contenant la liste ressemble à ce qui suit:
Le fichier "./about/audio dump.wav.xml" la liste ressemble à ce qui suit:
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"?> <database> <file name="7072ef2f23b99b6f531b1b222c960c9cee61862b"> <comment><![CDATA[./about/audio dump.wav.xml]]></comment> </file> </database>
La feuille XSLT ressemble à ce qui suit:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 <?xml version="1.0" encoding="ISO-8859-1"?> <about> <comment><![CDATA[ Reply by 'creuvard' et la ? ]]></comment> </about>
Mon problème est que lorsque le fichier (En l'ocurence "audio dump.wav") contient un espace, il refuse de me m'afficher son contenu.
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 <?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" version="1.0" encoding="ISO-8859-1" cdata-section-elements="comment title path"/> <xsl:template match="/database" > <database> <xsl:apply-templates select="file/comment" /> </database> </xsl:template> <xsl:template match="comment" > <xsl:copy-of select="document('./about/audio dump.wav.xml')"/> <xsl:copy-of select="node()"/> </xsl:template> </xsl:stylesheet>
Ce que j'ai lue pour tenter de résoudre mon problème:
- J'ai fait un recherche sur le forum " XSL/XSLT/XPATH" avec comme mot clef "document()".
- J'ai lu le document suivant -> http://xmlfr.org/w3c/TR/xslt/#function-document
- J'ai également essayé la fonction "document('./about/audio dump.wav.xml')", sans plus d'effet.
Est-ce que j'ai ratté un truc ou mal lue la doc ?
J'espére avoir pondue un post agréable à lire qui vous donne envie de me donner la réponse.
Merci.
Partager