Bonjour à tous,

J'ai un XML en entrée:

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
<LOTS>
  <LstIDLOT>
    <IDLOT NLOT="1" TLOT="P2" DLOT="2014-06-25">
      <LstETAB>
        <ETAB>
          <IDETAB ID="1234" />
          <ADRESSE NOM1="TOTO" ADR1="rue toto" CPOS="75000" VIL="PARIS" />
          <LstEMAIL>
            <EMAIL TYPE="DIR" EMA="toto@toto.com" />
            <EMAIL TYPE="PROF" EMA="teacher2@toto.com" />
            <EMAIL TYPE="PROF" EMA="teacher1@toto.com" />
		</LstEMAIL>
		</ETAB>
		<ETAB>
          <IDETAB ID="5678" />
          <ADRESSE NOM1="TITI" ADR1="rue titi" CPOS="75000" VIL="PARIS" />
          <LstEMAIL>
            <EMAIL TYPE="DIR" EMA="titi@titi.com" />
            <EMAIL TYPE="PROF" EMA="teacher15@titi.com" />
            <EMAIL TYPE="PROF" EMA="teacher9@titi.com" />
		</LstEMAIL>
		</ETAB>
	<LstETAB>
	</IDLOT>
</LOTS>
Je cherche à ré-écrire ce XML mais en ayant trié les emails. Et là je sêche :-(


J'ai bien tenté un truc de ce genre mais ce n'est pas bon:

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
<?xml version="1.0" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 
<xsl:output 
  method="xml"
  encoding="UTF-8"
  indent="no" />
 
	<xsl:template match="LOTS">
		<xsl:for-each select="LstIDLOT/IDLOT/LstETAB/ETAB/LstEMAIL/EMAIL">
			<xsl:sort select="@EMA" data-type="text" order="ascending" />
			<xsl:copy-of select="." />
		</xsl:for-each>
 
		<xsl:copy-of select="." />
 
	</xsl:template>
</xsl:stylesheet>

Est-ce que quelqu'un aurait une petite idée svp ?

D'avance merci.
Cordialement