[XSLT] séparation après tri dynamique
salut
je fais un tri dynamique assez complexe (mais qui fonctionne très bien) avec qqchose du style
Code:
1 2 3 4
| <xsl:apply-templates select="ligne">
<xsl:sort select="*[local-name()=$T_PRI]" data-type="{$temp1}" order="{$O_PRI}"/>
<xsl:sort select="*[local-name()=$T_SEC]" data-type="{$temp2}" order="{$O_SEC}"/>
</xsl:apply-templates> |
ce que j'aimerais c'est :
quand je trie sur une certaine clé primaire (quand T_PRI="val"), je fasse une séparation par groupe (l'équivalent d'un "group by T_PRI" de sql). Il y aura donc une ligne <hr> entre le "groupe1" et le "groupe2", puis une autre entre "groupe2" et "groupe3" et ainsi de suite
j'ai essayé
Citation:
<xsl:if test="not(following::ligne/val=current()/val)">
<tr>
<hr/>
</tr>
<xsl:if>
ce qui veut dire que je recherche si dans les noeuds restants à traiter (les noeuds qui suivent dans le fichier xml) il n'y en a pas d'autres qui est le même "val"
et en toute logique ca ne fonctionne QUE si mon xml était bien ordonné (en raison du following)... et à priori il n'est pas trié suivant la clé "val"
en effet il me mettra le <hr/> derriere la derniere ligne du fichier, mais qui ne correspond pas forcément à la dernière ligne dans mon tri
je tourne en rond sur ce prob depuis une grosse semaine, alors si vous pouviez m'aider !
merci d'avance !!!!