[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Recursion of variable
Darn! Another glitch. David's code works perfectly, except when <cnt> = 1. In this case, the output should not be a range but a single digit. I honestly tried to fix it myself, but couldn't garner enough brain cells to figure it out: XML: <vector> <r1> <t>geometry</t> <r2> <t>parabola</t> <r3> <t>trapezium</t> <cnt>4</cnt> </r3> <r3> <t>rhombus</t> <cnt>4</cnt> </r3> </r2> <r2> <t>parallelogram</t> <cnt>1</cnt> </r2> </r1> <r1> <t>reflection</t> <cnt>1</cnt> </r1> </vector> Desired output: <vector> <r1> <t>geometry</t> <r2> <t>parabola</t> <r3> <t>trapezium</t> <o>1-5</o> (This is the value 1 + <cnt>, carry value "6" forward) </r3> <r3> <t>rhombus</t> <o>6-10</o> (This is the value 6 + <cnt>, carry value "11" forward) </r3> </r2> <r2> <t>parallelogram</t> <o>11</o> (This is the value 11 carried forward, but since <cnt> = 1, don't sum, carry value "12" forward) </r2> </r1> <r1> <t>reflection</t> <o>12</o> (This is the value 12 carried forward, same as above, don't sum) </r1> </vector> -- David Carlisle <davidc@xxxxxxxxx> wrote: <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="*"> <xsl:copy> <xsl:copy-of select="@*"/> <xsl:apply-templates/> </xsl:copy> </xsl:template> <xsl:template match="cnt"> <xsl:variable name="cs" select="preceding::cnt"/> <xsl:variable name="c" select="1+sum($cs)+count($cs)"/> <o><xsl:value-of select="$c"/>-<xsl:value-of select="$c + ."/></o> </xsl:template> </xsl:stylesheet> ________________________________________________________________________ This e-mail has been scanned for all viruses by Star. The service is powered by MessageLabs. For more information on a proactive anti-virus service working around the clock, around the globe, visit: http://www.star.net.uk ________________________________________________________________________
|
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
|