[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: filtering by ancestor
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
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|