[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

RE: [xsl] XPath for number of preceding nodes sharing an ancestor


Subject: RE: [xsl] XPath for number of preceding nodes sharing an ancestor
From: "Michael Kay" <mhkay@xxxxxxxxxxxx>
Date: Wed, 16 May 2001 04:15:16 +0100

> > You really need a set intersection here; if you don't want to use an
> > extension function there's the $x[count(.|$y)=count($y)] trick.
>
> Will you please elaborate? I don't understand the 'trick'.
> What are the
> values of $x and $y?

If $x and $y are node-sets, then $x[count(.|$y)=count($y)] contains those
nodes that are in both $x and $y.

> Also, could I use:
>
>   count(preceding::input[generate-id(ancestor::inputform) =
>     generate-id(current()/ancestor::inputform)])

No, because generate-id() applied to a node-set returns the id of the first
node in the node-set, considered in document order.

Mike Kay


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



Current Thread