[
Lists Home 
Date Index 
Thread Index
]
At 02:08 8/7/02, David Carlisle wrote:
>Yes of course. If you want value based set equality that's
> not($b[. != $a]) and not($a[. != $b])
Um... (thinks, scribbles in *scratch*, checks spec)
ITYM
not($b[not(. = $a)]) and not($a[not(. = $b)])
No?
$b[. = $a] returns all X in $b such that there is some Y in $a for which X = Y
$b[. != $a] returns all X in $b such that there is some Y in $a for which X
!= Y
$b[not(. = $a)] returns all X in $b such that there is no node Y in $a for
which X = Y
In other words, if the three nodes in $b have values "1", "2", and "3", as
do the three nodes in $a:
$b[. = $a] will return 3 nodes, because for each node X in $b, there is a
node Y in $a with the same value.
But $b[. != $a] will *also* return 3 nodes, because for each node X in $b,
there is a node Y in $a with a *different* value.
(I know David knows this, but I wanted to convince myself... see the note
in §3.4 of XPath 1.0 if curious for details. David's solution will work if
$a and $b each have only one node.)
~Chris

Christopher R. Maden, Principal Consultant, crism consulting
DTDs/schemas  conversion  ebooks  publishing  Web  B2B  training
<URL: http://crism.maden.org/consulting/ >
PGP Fingerprint: BBA6 4085 DED0 E176 D6D4 5DFC AC52 F825 AFEC 58DA
PGP signature
