Subject: Re: [xsl] power From: Goetz Bock <bock@xxxxxxxxxxx> Date: Tue, 22 May 2001 16:40:08 +0200 |
On Tue, May 22 '01 at 16:48, SoftLiban ITANI Mohamed wrote: > I need to do some calculations in my xsl, is there any power function?? > 2 power 3 = 8 No, but you can write a recursive template: <xsl:template name="power"> <xsl:param name="value">1<xsl:param> <xsl:param name="base">1<xsl:param> <xsl:param name="power">0<xsl:param> <xsl:choose> <xsl:when test="$power=0"> <xsl:value-of select="$value"/> </xsl:when> <xsl:otherwise> <xsl:call-template name="power"> <xsl:with-param name="value"> <xsl:value-of select="$value * $base"/> </xsl:with-param> <xsl:with-param name="base"> <xsl:value-of select="$base"/> </xsl:with-param> <xsl:with-param name="power"> <xsl:value-of select="$power - 1"/> </xsl:with-param> </xsl:call-template> </xsl:otherwise> </xsl:choose> <xsl:template> (NOTE: this was all done with out any xslt documentation and I did not check it, so look out for typos) you use it like this $result = $base power $power: <xsl:variable name="result"> <xsl:call-template name="power"> <xsl:with-param name="base"> <xsl:value-of select="$base"/> </xsl:with-param> <xsl:with-param name="power"> <xsl:value-of select="$power"/> </xsl:with-param> </xsl:call-template> </xsl:variable> Cu, Goetz.
Attachment:
pgp00006.pgp
Description: PGP signature
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] power, SoftLiban ITANI Moha | Thread | [xsl] XPath-Expression, Mengel Andre (FV/SLM |
Re: [xsl] setting attributes based , Thomas B. Passin | Date | RE: [xsl] number of digits, Michael Kay |
Month |