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:
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>
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
8
 
<?xml version="1.0" encoding="ISO-8859-1"?>
<about>
  <comment><![CDATA[
    Reply by 'creuvard'
    et la ?
  ]]></comment>
</about>
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
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>
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.

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.