J'ai pu faire un fichier xsl qui transforme le code suivant
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
<ObjetRecupere>
  <Application>
    <Identifiant>m00lxfSR4nd0</Identifiant>
    <version>1.0</version>
    <Nom>Calcul de réserve</Nom>
  </Application>
  <Lien>
    <Nom>Message-Reçu</Nom>
    <ID_Source>m00lxfSR4nd0</ID_Source>
    <ID_Destination>i4bvVF)a(0b0</ID_Destination>
  </Lien>
</ObjetRecupere>
pour donner une version aussi complète en terme d'information, mais beaucoup moins lourde
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
<ObjetRecupere>
  <Application>
    <Identifiant>m00lxfSR4nd0</Identifiant>
    <version>1.0</version>
    <Nom>Calcul de réserve</Nom>
  </Application>
  <Lien type="Message-Reçu">i4bvVF)a(0b0</Lien>
</ObjetRecupere>
J'ai fait cela avec un unique template :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
<xsl:template match="Lien" priority="2">
  <Lien type="{Nom}">
    <xsl:value-of select="ID_Destination"/>
  </Lien>
</xsl:template>
Malheureusement, j'apprends qu'il faut finalement faire l'inverse, c'est à dire partir du 2eme fichier XML pour aboutir au 1er.

Sachant qu'il faut en fait triturer chacun des "ObjetRecupere", pour transformer chacun de ses Liens
Code : Sélectionner tout - Visualiser dans une fenêtre à part
<Lien type="TYPELIEN">ID_Objet_Lié</Lien>
en
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
<Lien>
    <Nom>TypeLien</Nom>
    <ID_Source>IDObjetDecrit</ID_Source>
    <ID_Destination>ID_Objet_Lié</ID_Destination>
  </Lien>
Autant, même en débutant, j'avais fini par tritouiller quelque chose pour supprimer des balises superflues. autant là, la conversion inverse me pose énormément de problème.

Une petite piste serait sans refus