[
Lists Home |
Date Index |
Thread Index
]
> The problem with XPath 1.0 appears to be that:
>
> /a[b = 5]
>
> Returns all matches while..
>
> /a[b + 1 = 6]
>
> .. returns only the first match.
>
> The fix in XPath 2.0 appears to be to return an error for the
> latter if there is more than one match.
>
> Why is it not possible to return all /a[b + 1 = 6] ?
For that to work, b+1 would have to return a set of numbers, one for each b.
What then would b+c return? We did consider (very early on) a suggestion
that it should return the set
for $b in b, $c in c return $b + $c
but we decided this would quickly produce unmanageable results; and in any
case it would be impossible to define it in a way that was backwards
compatible.
Michael Kay
|