Subject: Re: are multiple predicates same as boolean and
From: "Andrew Welch" <andrew.j.welch@xxxxxxxxx>
Date: Fri, 21 Nov 2008 14:25:28 +0000
|
>> apart from this use case you cited, are all other forms equivalent
>> (which do not involve positional predicates)?
>
> No.
>
>> like,
>> X[@a='hi'][@b='hi..']
>
> If X[@a='hi'] matches a node, then that node will become the context
> node when evaluating [@b='hi..']
>
>> would be same as
>> X[@a='hi' and @b='hi..']
>
> X is the context node here, so the predicate will be considering @b='hi..'
>
> X[P][Q] is equivalent to X[P and Q] if and only if Q does not depend on
> the context node at all.
Only / will change the context node, so I would've thought one
predicate after the other is pretty much equivalent apart from cases
that rely on size of the selection (which is the only thing that
changes after each predicate)
--
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/
|