Bonjour à tous, voici mon problème.

J'ai mon XML qui possède la structure suivant.

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
 
<files>
    <file>
        <news>
            <id></id>
            <titre></titre>
            ...
        </news>
    </file>
    <file>
        <news>
            <id></id>
            <titre></titre>
            ...
        </news>
    </file>
</files>
J'aimerai à partir de ce code faire que pour chaque balise <file> parser je crée un nouveau fichier possédant le nom de l'id de la news. Le problème c'est que j'arrive bien à créer les 2 fichiers avec le bon nom mais le contenu de chaque fichier possède toutes les news.

Voici mon XSLT.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
<xsl:template match="/">
  <xsl:for-each select = "files/file">
 
      <xsl:param name = "id" select = "news/id" />
 
      <xsl:document href="news/{$id}.xml">
         <xsl:copy-of select="document('news_produites.xml')/files/file/news" />
      </xsl:document>  
 
   </xsl:for-each>
</xsl:template>
Je pense que le problème viens de la requête XPath du for-each mais je vois pas comment spécialiser celle-ci pour insérer le bon contenu dans chaque fichier.

Merci de votre aide.