Re: xpath avec preceding incorrect

Stephane Bonhomme <[email protected]> Fri, 09 Feb 2007 11:15:00 +0100
Newsgroups gmane.text.xml.french.tech
Organization exselt services
Message-ID <1171016100.6531.41.camel@citrouille>
Le vendredi 09 février 2007 à 10:45 +0100, [email protected] a
écrit :
> 
> 
> 
> Bonjour,
> 
> J'ai le xpath suivant :
> count(following::Phrase[generate-id(following::NouvellePhrase[1]) =
> generate-id(current()/following::NouvellePhrase[1])])
> 
> Il me permet de compter le nombre de balises Phrase entre la balise
> NouvellePhrase sur laquelle je me situe et la prochaine balise
> NouvellePhrase.
> 
> Je voudrais faire la meme chose mais avec la balise NouvellePhrase
> precedente. C'est a dire compter le nombre de balises Phrase entre la
> balise NouvellePhrase sur laquelle je me situe et la balise NouvellePhrase
> precedente.
> 
> Quand je fais le xpath suivant, ca ne marche pas...
> count(preceding::Phrase[generate-id(preceding::NouvellePhrase[1]) =
> generate-id(current()/preceding::NouvellePhrase[1])])
> 
> Des idees ?
> 
C'est normal; vous comptez le nombre de phrases dont le premier
'nouvellephrase' (NP) précédent (dans l'ordre du document) est égal au
premier NP précédent le noeud courant), toutes les phrases précédent le
courant et ayant une NP dans ses précédents satisfont ce critère !

Il faut compter toutes les phrases dont le 1er NP suivant est le NP
courant ! ce qui donne simplement :

count(preceding::Phrase[generate-id(following::NouvellePhrase[1])=generate-id(current())])

> Merci :-)
> 
De rien
Stéphane.
> 
> --
> Devenez redacteur <XML>fr et contribuez au developpement du
> xml francophone (http://xmlfr.org/infos/redacteurs/) !
> 
> Liste de diffusion "[email protected]" (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 [email protected]
> (mailto:[email protected]?Subject=unsubscribe)
>