Bonjour à tous !

Je cherche depuis un petit moment à résoudre un problème. Je fait donc appel à vous. L'objectif est de transformer un fichier XML vers un fichier HTML gràce à XSL. Je bute sur un point particulier, j'essaye de construire une sorte d'arborescence. Voila à quoi ressemble mon fichier xml.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
<item nom="aaa" attribut2="kkkk"/>
<item nom="bbb">
   <item nom="ccc" attribut2="zzzz"  />
   <item nom="ddd" attribut2="yyyy"  />
</item
<item nom="eee">
   <item nom="fff">
      <item nom="ggg" attribut2="wwww"  />
   </item>
</item>
Le nombre d'enfants et sous enfants n'est pas fixe. L'attribut attribut2 n'est disponible que si l'élément ne possède pas d'enfant. Et voila ce que je cherche à faire en HTML:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
- aaa kkkk
- bbb
    - ccc zzzz
    - ddd yyyy
- eee
   -fff
      -ggg wwww
avec le décalage qui sera fait en fonction du niveau. Le code suivant me donnais seulement les items de premier niveau :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
<xsl:template match="item">
   - <xsl:value-of select="@nom" />
   <xsl:value-of select="@attribut2" />
</xsl:template>
J'ai essayé d'y ajouter un <xsl:for-each select="child::*"> mais que le niveau suivant apparaissait et l'ordre des éléments était inversé (le "père" resortait après ses enfants).
J'espère avoir été assez clair. Merci pour votre aide !