[XSL] Modif. d'arborescence d'un fichier XML
Bonjour le forum,
Je suis confronté à un souci (sans doute de débutant) sur le traitement xslt d'un fichier xml.
J'ai un fichier de départ 01.xml de la forme suivante :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| <root>
<item>
<id>01</id>
<nom>Toto</nom>
<age>20</age>
<note>05/20</note>
</item>
<item>
<id>02</id>
<nom>Lulu</nom>
<age>15</age>
<note>12/20</note>
</item>
...
</root> |
C'est à dire un fichier qui contient les données plus ou moins personnelles de plusieurs personnes (plusieurs fiches item).
Pour une publication à l'aide d'InDesign, je veux séparer les données personnelles (nom et âge) des données à analyser (note) qui apparaitront sur deux calques différents. J'ai donc crée un fichier xsl, qui me permet d'obtenir le fichier 02.xml suivant :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| <root>
<perso>
<item>
<nom>Toto</nom>
<age>20</age>
</item>
<item>
<nom>Lulu</nom>
<age>15</age>
</item>
</perso>
<stat>
<item>
<id>01</id>
<note>05/20</note>
</item>
<item>
<id>02</id>
<note>12/20</note>
</item>
</stat>
</root> |
Jusque là aucun pb, je sais faire, ça marche tout seul.
Ensuite je voudrais pouvoir faire la réciproque. C'est à dire, à l'aide d'une transformation XSLT, revenir sur un fichier XML avec la structure de départ.
Je ne sais pas comment faire. J'ai tenté avec des xsl:for-each, ou en jouant sur la position du noeud élément, mais rien ne marche.
Est-ce que quelqu'un aurait un tuyau ?
D'avance merci