|
Subject: RE: [xsl] XPath: selecting matching nodes in two node-sets From: "Michael Kay" <mhk@xxxxxxxxx> Date: Mon, 20 Oct 2003 17:58:09 +0100 |
I think what you are looking for is the set of items $i such that every
$k in //keyword/matches equals some $i/matches
In XPath 2.0 that's
//item[every $k in //keyword/matches satisfies
some $i in ./matches satisfies
$k eq $i]
or more simply
//item[every $k in //keyword/matches satisfies $x = ./matches]
There's no universal quantifier ("every") in XPath 1.0, but you can use
the equivalence:
every $a in A satisfies X
==>
not(some $a in A satisfies not(X))
So this becomes
//item[not(//keyword/matches != ./matches)]
Michael Kay
> -----Original Message-----
> From: owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> [mailto:owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx] On Behalf Of
> Richard Lewis
> Sent: 20 October 2003 11:33
> To: XSL-List@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] XPath: selecting matching nodes in two node-sets
>
>
> I have the following document:
>
> <results>
> <keywords>
> <matches>...</matches>
> ...
> </keywords>
> <item>
> ...various elements...
> <matches>...</matches>
> <matches>...</matches>
> ...
> </item>
> <item>....</item>
> ...
> </results>
>
> (where <matches> elements contain the keywords themselves, CDATA).
>
> and what I need is an XPath expression which selects all the
> <item>s which
> have the same set of <matches /> elements as in the <keywords> node.
> (Note: there may be repetition of <matches />s in <item>s but not in
> <keywords>)
>
> I've tried:
> "//item[matches = //keywords/matches]"
> but this selects <item>s where not all the
> '//keywords/matches' elements are
> present.
>
> Cheers,
> Richard
>
> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] XPath: selecting matching, Mukul Gandhi | Thread | Re: [xsl] XPath: selecting matching, Dimitre Novatchev |
| RE: [xsl] URGENT!! encoding header , Michael Kay | Date | RE: [xsl] Filtering files with data, SHEIKH Sajjad |
| Month |