This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: Sum() function
I think you must just have ill-formed XML. Your
stylesheet looks ok.
Given:
<report>
<tranxs>
<tranx cccf="N" amt="1"/>
<tranx cccf="Y" amt="2"/>
<tranx cccf="N" amt="3"/>
<tranx cccf="Y" amt="4"/>
</tranxs>
</report>
and:
<foo xsl:version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:for-each select="report">
<xsl:value-of select="sum(tranxs/tranx[@cccf = 'N']/@amt)"/>
</xsl:for-each>
</foo>
I get:
<foo>4</foo>
which is the sum of 1 and 3.
_________________________________________________________
Steve Muench, Consulting Product Manager & XML Evangelist
Business Components for Java Development Team
----- Original Message -----
From: "Callum Elliott" <c.j.elliott-96@student.lboro.ac.uk>
To: <XSL-List@mulberrytech.com>
Sent: Tuesday, February 22, 2000 7:49 PM
Subject: Sum() function
| Hi there,
|
| I'm trying to sum report totals, but I only want to sum certain attributes.
| For example
|
| My.xml
|
| <report>
| <tranxs>
| <tranx cccf="N" amt="200">
| </tranx>
| </report>
|
| My.xsl
|
| <xsl:for-each select="report">
| ...
| <xsl:value-of select="sum(tranxs/tranx[@cccf = 'N']/@amt)"/>
|
| I know the above line is wrong, but I don't know how to fix it. I want it
| to sum depending on the cccf attribute value.
|
| Thanks in advance,
|
| Callum Elliott
|
|
| XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list