|
Subject: Re: [xsl] filtering by ancestor From: Jeni Tennison <jeni@xxxxxxxxxxxxxxxx> Date: Wed, 12 Jun 2002 22:21:42 +0100 |
Hi Konrad,
> I'm writing a breadth-first parser but I want to restrict the parse to
> /resultset/result[1]
> So at any given node I need the subset of following::* that has
> /resultset/result[1] as an ancestor.
You could use:
following::*[ancestor::result[generate-id() =
generate-id(/resultset/result[1])]]
which says "find the elements following this node that have as an
ancestor a result element whose unique ID is the same as the unique ID
of /resultset/result[1]".
Since /resultset/result[1] is static, it would be best to store that
(or its generated ID) in a variable rather than calculating it for
each ancestor result of each following element from the current node:
<xsl:variable name="result"
select="generate-id(/resultset/result[1])" />
and then:
following::*[ancestor::result[generate-id() = $result]]
Cheers,
Jeni
---
Jeni Tennison
http://www.jenitennison.com/
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| [xsl] filtering by ancestor, KRokicki | Thread | Re: [xsl] filtering by ancestor, Joerg Heinicke |
| RE: [xsl] Format number problem, Ivan Pedruzzi | Date | Re: [xsl] filtering by ancestor, Joerg Heinicke |
| Month |