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

Re: [xsl] XSLT 2.0 & Grouping for-each-group


Subject: Re: [xsl] XSLT 2.0 & Grouping for-each-group
From: Mark Brand <mark.brand@xxxxxxxxxxxxxxxxxxxx>
Date: Thu, 07 Aug 2003 03:32:06 +1000

* Michael Kay

|<snip>
|
|I think that what you need here is a nested set of for-each-groups, one
|for each level of the output tree. In this case it is quite deeply
|nested .....
|
|</snip>



* Mark Brand


Hi

I have further questions on the fragments posted earlier. I did try implementing both options but had some questions ...

Q1. <snip>
<xsl:for-each-group select="current-group() except "." group-starting-with="*[@StyleName='DIVISION']">
</snip>


With this line of code, i found that it would execute (enter the for-each-group
loop) even if there wasn't a DIVISION item in the group. How do I stop the loop
being entered if the group-starting-with entry is not in the list. I have tried
an if statement after the loop has been entered but it is too late then for my
purposes.

Q2. <snip>
<Part Category="{@StyleName}">
<xsl:copy-of select="child::node()"/>
<xsl:for-each-group select="current-group() except ."
group-starting-with="*[@StyleName=f:child(@StyleName)]">
<xsl:apply-templates select="."/>
</snip>


With this piece of code from the second option where would you put the closing tags, where-ever i put them they would all output after everything else instead of in a nested fashion.


Thanks again Mark Brand











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



Current Thread