Bonjour,
Voici le xml ke j'utilise:
J'aimerais regrouper dans un tableau pour chaque poste, les types de connaissances:Exemple:
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 <service_list> <service type="département"> <nomService>Direction</nomService> <sous_service>Souservice1</sous_service> <poste> <nomPoste>Poste1</nomPoste> <affectation /> <connaissance type="Savoir-Faire">SF1</connaissance> <connaissance type="Savoir-Faire">SF2</connaissance> <connaissance type="Savoir-Faire">SF3</connaissance> <connaissance type="Savoir-Etre">SE1</connaissance> <connaissance type="Savoir">S1</connaissance> </poste> <poste> <nomPoste>Poste2</nomPoste> <affectation /> <connaissance type="Savoir">S1</connaissance> <connaissance type="Savoir-Faire">SF3</connaissance> <connaissance type="Savoir-Faire">SF4</connaissance> <connaissance type="Savoir-Etre">SE1</connaissance> <connaissance type="Savoir">S2</connaissance> </poste> </service> </service_list>
Poste1 :
Savoir-Faire: SF1
SF2
SF3
...
Poste2:
Savoir : S1
S2
Savoir-Faire: SF3
SF4
...
J'ai donc ecrit ce xslt:
J'obtiens quleque chose de ce genre
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 <xsl:key name="group-by-type" match="connaissance" use="@type" /> ...... <xsl:for-each select="connaissance[generate-id() = generate-id(key('group-by-type', @type)[1])]"> <xsl:sort select="@type" /> <tr> <td><b><xsl:value-of select="@type" /></b></td> <td> <xsl:for-each select="key('group-by-type', @type)"> <li><xsl:value-of select="@type" /></li> </xsl:for-each> </td> </tr> </xsl:for-each>
Poste1 :
Savoir-Faire: SF1
SF2
SF3
SF3
SF4
Savoir : S1
S2
...
Poste2:
...
Quelqu'un pourrait-il m'aider?
Partager