|
Subject: Re: Running totals From: Steve Tinney <stinney@xxxxxxxxxxxxx> Date: Tue, 28 Dec 1999 11:44:28 -0500 |
The likely way to do this, then, is to move whatever processing
you are doing into a tail-recursive function, and pass the running
total in each time as a parameter:
<xsl:template name="do-whatever">
<xsl:param name="running-total" select="0"/>
[do-whatever-processing]
<xsl:if test="[some-do-i-go-again-test]">
<xsl:call-template name="do-whatever">
<xsl:with-param name="running-total"
select="$running-total+@value"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
Steve
Jon Smirl wrote:
>
> Computing the sum of the preceding elements on each line for 2000 rows takes
> 2000 * (2000/2) = 2 million operations. If I can figure out a way to carry
> the total along I can do it in 2,000 operations.
>
> I can always write an extension function to do this but I was trying to do
> it with pure XSL.
>
> Jon Smirl
> jonsmirl@xxxxxxxxxxxx
>
> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
--
----------------------------------------------------------------------
Steve Tinney Babylonian Section
* University of Pennsylvania Museum
stinney@xxxxxxxxxxxxx Phila, PA. 215-898-4047
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: Running totals, Jon Smirl | Thread | xsl:include, Seema Ramanathan |
| Re: Running totals, Oren Ben-Kiki | Date | xsl:include, Seema Ramanathan |
| Month |