Bonjour,

je débute tout juste en XSLT et j'aimerai faire quelque chose qui, je pense, est archi simple en XSLT... Si quelqu'un peut m'aider :

Mon XML source:
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
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<REG modele="Test" version="0.1">
  <GENERIC>
    <FIELDS sep=" "/>
    <COMMANDS prefixe="." suffixe="." sep=" "/>
    <MESSAGES prefixe="A" suffixe="Z"/>
  </GENERIC>
    <MODULE name="Information" desc="Infos">
      <PARAM>
        <NAME>Test1</NAME>
        <DIFFUSION>parametre</DIFFUSION>
        <CMD>01</CMD>
        <DEFAULT>1</DEFAULT>
        <TYPE>entier</TYPE>
        <ADVANCED>0</ADVANCED>
        <PRIORITY>0</PRIORITY>
        <INVERSE>0</INVERSE>
        <DESC>Test</DESC>
      </PARAM>
 
       <PARAM>
        <NAME>Test1</NAME>
        <DIFFUSION>normal</DIFFUSION>
        <CMD>01</CMD>
        <DEFAULT>1</DEFAULT>
        <TYPE>entier</TYPE>
        <ADVANCED>0</ADVANCED>
        <PRIORITY>0</PRIORITY>
        <INVERSE>0</INVERSE>
        <DESC>Test</DESC>
      </PARAM>
  </MODULE>
</REG>
Ce que je voudrai, c'est tout récupérer en sortie à l'exception des éléments qui ne contiennent pas
Code : Sélectionner tout - Visualiser dans une fenêtre à part
 <DIFFUSION>normal</DIFFUSION>
.

J'ai commencé avec ça :
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
<xsl:output method="xml" indent="yes"/>
 
  <!-- Recopie les noeuds -->
  <xsl:template match="*">
    <xsl:copy>
      <xsl:apply-templates select="*|@*|text()"/>
    </xsl:copy>
  </xsl:template>
  <!-- Recopie les noeuds -->
 
  <!-- Recopie les attributs -->
  <xsl:template match="@*">
    <xsl:attribute name="{name()}">
      <xsl:apply-templates select="*|@*|text()"/>
    </xsl:attribute>
  </xsl:template>
  <!-- Recopie les attributs -->
Ca ressort bien tout... mais comment ensuite empecher de sortir tous les <PARAM/> que je ne veux pas ?