http://www.qp.fr/quickplace/alpesdusud/main.nsf>
<membres>elodie</membres>
<membres>toto</membres>
</site>
...
</espace_perso>
Le flux que je dois avoir contient la liste de tous les membres (sans doublons) avec les sites auxquels ils ont souscrits, ce que j'obtiens bien lorsqu'il n'y a qu'une personne dans un site, mais lorsqu'il y en a plusieurs, j'obtiens une concatenation de tous les membres avec leurs sites associés (<user>elodiesimone</user><nom_site>france</nom_site>).
Pouvez vous me dire ce qu'il faut que je rajoute dans mon code pour éviter cela.
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:key name="group-membres" match="site" use="membres"/>
<xsl:template match="espace_perso">
<xsl:apply-templates select="site"/>
</xsl:template>
<xsl:template match="espace_perso">
<xsl:for-each select="site[generate-id() = generate-id(key('group-membres', membres))]">
<xsl:apply-templates select="key('group-membres', membres)"/>
</xsl:for-each>
</xsl:template>
<xsl:template match="site">
<xsl:if test="position() = 1">
<user>
<br/><xsl:apply-templates select="membres"/>
</user>
</xsl:if>
<nom_site>
<xsl:apply-templates select="nom_site"/>
</nom_site>
<url>
<xsl:apply-templates select="url"/>
</url>
</xsl:template>
</xsl:stylesheet>
Merci d'avance.
Cordialement / Regards,
Elodie
--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de
tout sujet technique lie a XML.
Pour resilier votre abonnement, envoyez un message contenant
la commande "unsubscribe" a xml-tech-request@xmlfr.org
(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
Archive générée par hypermail 2.1.3 le 28/06/2004 - 11:06 UTC
webmaster@xmlfr.org