XML Editor
Sign up for a WebBoard account Sign Up Keyword Search Search More Options... Options
Chat Rooms Chat Help Help News News Log in to WebBoard Log in Not Logged in
Show tree view Topic
Topic Page 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Go to previous topicPrev TopicGo to next topicNext Topic
Postnext
Rahul VaidSubject: Sum of specific values in delimited list
Author: Rahul Vaid
Date: 23 Jan 2006 02:31 AM
Hi,
Iam having a delimited xml list as follows:

<positions rowCount="9">
<row values="DEALER |FX Spot|ABC-DEF|2006-01-10|-40000|29530|0.73825" />
<row values="DEALER |FX Spot|CAD-USD|2006-01-09|-38000|32088.12|1.18423890212328" />
<row values="DEALER |FX Spot|LMN_PWR|2006-01-10|1106000|-1256981.1|1.1365109403255" />
<row values="DEALER |FX Spot|GBP-JPY|2006-01-11|-50000|10247500|204.95" />
<row values="DEALER |FX Spot|LMN_PQR|2006-01-10|2060000|-3556593|1.72650145631068" />
</positions>

Now I can retrive a particular value in this list either using str:split or by using str:tokenize ie as follows:

<xsl:template match="row">
<tr>
<xsl:variable name="positionColumns" select="str:split(string(@values), '|')"/>
<td>
<xsl:value-of select = "format-number($positionColumns[position() = 6],'###,###.#######')"/>
</td>
</tr>
</xsl:template>

But now I want to also print the sum of this value ie I want to get the output of :
29530+32088.12-125698+10247500-3556593
(from the above xml)

The problem here is sum as far as my knowledge is concerned only takes nodes as parameter.Please help me out with the solution of this problem.
Thanx in advance.
Rahul.

Postnext
Tony LavinioSubject: Sum of specific values in delimited list
Author: Tony Lavinio
Date: 23 Jan 2006 02:54 PM
There are several ways to solve this. Probably the crudest is to
turn it into a problem of recursion instead of iteration, like the
attached.

There are more elegant methods that work better for larger input
sets. The divide-and-conquer approach, where you keep bisecting
the data, is relatively efficient.

There's a book called 'XSLT Cookbook' by Sal Mangano that has lots
of useful recipes for problems like this.

But, now, on to your answer.


UnknownRahul.xsl
Sums by recursion XSLT program

Posttop
Rahul VaidSubject: Sum of specific values in delimited list
Author: Rahul Vaid
Date: 23 Jan 2006 11:17 PM
Thanx a ton for the solution and the advice for the CookBook.
The solution that you gave worked out very well.
Regards,
Rahul.

 
Topic Page 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Go to previous topicPrev TopicGo to next topicNext Topic
Download A Free Trial of Stylus Studio 6 XML Professional Edition Today! Powered by Stylus Studio, the world's leading XML IDE for XML, XSLT, XQuery, XML Schema, DTD, XPath, WSDL, XHTML, SQL/XML, and XML Mapping!  
go

Log In Options

Site Map | Privacy Policy | Terms of Use | Trademarks
Stylus Scoop XML Newsletter:
W3C Member
Stylus Studio® and DataDirect XQuery ™are from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2016 All Rights Reserved.