Bonjour,
On ven, 2005-04-01 at 22:36 +0200, Bob wrote:
> Bonsoir,
>
> quelqu'un voit-il une façon plus clean et plus efficace pour écrire
> l'expression xpath suivante :
>
> /*[name()='titi' or name()='toto']/tutu[predicat à ralonge]
Je n'ai pas grand chose à rajouter, sauf pour faire remarquer que le
test "name()='titi'" est plus dangereux qu'il n'y parait...
La fonction "name()" retourne le nom "complet" (ou qualifié) de
l'élément et il contient donc à la fois le préfixe utilisé dans le
document et le nom local de l'élément dans son espace de noms.
Ce test est donc sensible au préfixes (ou dans l'exemple donné ici à
l'espace de noms par défaut) définis dans les documents alors que les
recommandations 1.0 et 1.1 sur les espaces de noms spécifient que ces
préfixes ne devraient pas être considérés comme significatifs.
C'est la raison pour laquelle on utilise généralement dans ce cas l'axe
XPtah self et il est conseillé d'écrire ce test :
/*[self::titi or self::toto]
Cordialement,
Eric van der Vlist
--
Freelance consulting and training.
http://dyomedea.com/english/
------------------------------------------------------------------------
Eric van der Vlist http://xmlfr.org http://dyomedea.com
(ISO) RELAX NG ISBN:0-596-00421-4 http://oreilly.com/catalog/relax
(W3C) XML Schema ISBN:0-596-00252-1 http://oreilly.com/catalog/xmlschema
------------------------------------------------------------------------
--
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 Sat Apr 2 09:38:06 2005