Le vendredi 04 février 2005 à 11:47 +0100, Verachten Bruno a écrit :
> Bonjour,
>
> > Structure du document.
> > <Protocole>
> > <Contenus>
> > <Contenu>
> > <CodeTest>blabla</CodeTest>
> > <TypeResultat>1blabla</TypeResultat>
> > <Resultat>1badaboum</Resultat>
> > <TypeResultat>2blabla</TypeResultat>
> > <Resultat>2badaboum</Resultat>
> > <TypeResultat>3blabla</TypeResultat>
> > <Resultat>3badaboum</Resultat>
> > </Contenu>
> > </Contenus>
> > </Protocole>
>
> <xsl:for-each select="Protocole/Contenus/Contenu/TypeResultat">
> <xsl:element name="Item">
> <!--Comment récupérer le frère-suivant (Resultat) de
> TypeResultat -->
> <xsl:value-of select="following-sibling::Resultat"/>
> <!-- ainsi que les éléments qui sont dans "Contenu" tel que CodeTest ? -->
> <xsl:copy-of select="preceding-sibling::CodeTest"/>
> </xsl:element>
> </xsl:for-each>
>
> Non testé, c'est juste une idée en passant.
>
Probleme : ce template triate TOUS les freres suivants (Resultat) pour
un TypeResultat
Solution :
<xsl:value-of
select="following-sibling::Resultat[generate-id(preceding-sibling::TypeResultat[last()])=generate-id(current())]"/>
(les elements résultat sur l'axe des suivants, dont le dernier element
TypeResult précédent à un id égal au TypeResult traité)
> Bruno Verachten
>
> --
> 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)
>
>
--
Stéphane Bonhomme -- Exselt Services
Formations, Conseil et Réalisations en Ingénierie Documentaire,
Technologies Web et Logiciels Libres
s.bonhomme@wanadoo.fr - http://www.exselt.com
04 76 17 09 40 / 06 88 57 27 08
--
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)
Received on Fri Feb 4 12:26:38 2005