Subject: Re: [xsl] calculating pow of numbers and a final sum From: "Andreas Mecky" <andreasmecky@xxxxxxxx> Date: Wed, 22 Jan 2003 12:04:53 +0100 |
I have to thank for your input. The next problem I have is to choose which solution I take ;-) All of them are working. Thanx ----- Original Message ----- From: "Francis Norton" <francis@xxxxxxxxxxx> To: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx> Sent: Wednesday, January 22, 2003 11:34 AM Subject: Re: [xsl] calculating pow of numbers and a final sum > Hi Andreas, > > I think that this is one of those occasions wher you do need to use > recursion - I can't (at this time of morning) see any way of doing it > with a simple XPath maths expression, or even XPath numeric expressions > inside a loop. > > Try something like this - > > <xsl:stylesheet version="1.0" > xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> > <xsl:output method="text"/> > <!-- case conversion variables --> > <xsl:variable name="abc">abcdefghijklmnopqrstuvwxyz</xsl:variable> > <xsl:variable name="ABC">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable> > <!-- kick off recursive transform --> > <xsl:template match="logging"> > <xsl:apply-templates select="target[1]"/> > </xsl:template> > <!-- simple tail-end recursive transform --> > <xsl:template match="target"> > <xsl:param name="base" select="1" /> > public static final int <xsl:value-of select="translate(@name, > $abc, $ABC)" /> = <xsl:value-of select="$base" />; > <xsl:apply-templates select="following-sibling::target[1]"> > <xsl:with-param name="base" select="$base * 2" /> > </xsl:apply-templates> > </xsl:template> > </xsl:stylesheet> > > Using recursion to step through a sequence of elements, one by one, is > in fact a helpful in many cased where you need to perform arbitrary > cumulative operations which can't be done using numeric operators, > sum(), position() or xsl:number, for instance in reports. > > Francis. > > -- > "Never mind manoeuvre, go straight at 'em." - Admiral Horatio Nelson > > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list __________________________________________________________________ Gesendet von Yahoo! Mail - http://mail.yahoo.de Bis zu 100 MB Speicher bei http://premiummail.yahoo.de XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] calculating pow of number, Francis Norton | Thread | RE: [xsl] calculating pow of number, Edward . Middleton |
RE: [xsl] xsl pipeline?, Cams Ismael | Date | Re: [xsl] calculating pow of number, Dimitre Novatchev |
Month |