[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Nested for-each-group
Hi all, Given this xml: <tgroup> <col colname="C.HPC" width="17"/> <col colname="C.HPB" width="23"/> <col colname="C.HPA" width="29"/> <col colname="C.I0F" width="17"/> <col colname="C.I0E" width="14"/> <spanspec namest="C.HPC" nameend="C.I0F"/> <spanspec namest="C.HPC" nameend="C.I0E"/> </tgroup> I'm trying to sum the colwidths specified by the spanspecs. I used to use a recursive template, which I'm trying to replace using a nested for-each-group: <xsl:template match="spanspec"> <xsl:variable name="namest" select="@namest"/> <xsl:variable name="nameend" select="@nameend"/> <xsl:for-each-group select="preceding-sibling::col" group-starting-with="*[@colname = $namest]"> <xsl:for-each-group select="current-group()" group-ending-with="*[@colname = $nameend]"> <div><xsl:value-of select="sum(current-group()/@width)"/></div> </xsl:for-each-group> </xsl:for-each-group> </xsl:template> However, this produces: <div>86</div><div>14</div> <div>100</div> I don't understand why I'm getting the "<div>14</div>" output? I know it's part of the outer group, but it shouldn't be part of the inner group. Any ideas why its there? cheers andrew
|
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
|