Subject: Re: [xsl] grouping within for-each statements From: Jeni Tennison <jeni@xxxxxxxxxxxxxxxx> Date: Fri, 23 Nov 2001 19:01:15 +0000 |
Hi Todd, > i don't get the right output (it doesn't treat entry/@id = 1 as > exclusive from entry/@id=2, it seems taht the following:: statement > is being too restrictive, how can i get the following:: statement to > only looking at information in the node(s) specified by the for-each > statement? You probably need to use the following-sibling:: axis (which looks at the siblings of the node you're looking at - the week elements that have the same parent entry in other words) instead of the following:: axis (which looks at *all* the following nodes in the document, no matter where they occur [aside from descendants, of course]). So try: week[not(@opp = following-sibling::week/@opp)] or: week/@opp[not(. = ../following-sibling::week/@opp)] Alternatively, you could use a key and the Muenchian grouping method to create your groups. That will probably be more efficient, especially if you have lots of week elements. Have a look at http://www.jenitennison.com/xslt/grouping/muenchian.html for a description. I hope that helps, 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] grouping within for-each stat, Todd Binder | Thread | [xsl] Selecting a subset of sibling, Liat Jacob |
Re: [xsl] Selecting a subset of sib, cutlass | Date | Re: [xsl] Selecting a subset of sib, Jeni Tennison |
Month |