This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

RE: sum() of nodeset


Thanks again for the answer!
One more problem, however. In my original mail I simplified
the question taking m=1 as a parameter:
-------------------xsl------------------------
<xsl:for-each select="//row[@m=1]">
    <tr>
       <td><xsl:value-of select="@m" /></td>
       <td><xsl:value-of select="@y" /></td>
       <td><xsl:value-of select="@v" /></td>
    </tr>
</xsl:for-each>
----------------------------------------------
How can I build this table for all different m's? Is there a way
to do a loop from 1 to 12 somehow? I cannot figure this out.
Again, your help is invaluable!

Shimon

> -----Original Message-----
> From: Pendakur, Ramesh [mailto:ramesh.pendakur@intel.com]
> Sent: Thursday, November 30, 2000 1:26 PM
> To: 'xsl-list@mulberrytech.com'
> Subject: RE: sum() of nodeset
> 
> 
> you can use <xsl:value-of select="sum(//row[@m=1]/@m)" 
> the sum() function is defined in XPath specification section 4.4
> 
> -ramesh
>   _____  
> 
> Ramesh Pendakur
> 
> Web Standards & Architecture Team (WSAT)
> Intel Architecture Labs.
> 503.264.0572 - desk
> 503.804.8564 - cell
> ramesh.pendakur@intel.com <mailto:ramesh.pendakur@intel.com> 
> 
> 
> -----Original Message-----
> From: Shimon Pozin [mailto:shimonp@servicesoft.com]
> Sent: Thursday, November 30, 2000 8:32 AM
> To: 'xsl-list@mulberrytech.com'
> Subject: sum() of nodeset
> 
> 
> Hello!
> 
> I have xml file like this:
> ----------xml-------------
> <xml>
> <row m=1 y=1999 v=3 />
> <row m=1 y=2000 v=43 />
> <row m=2 y=1999 v=6 />
> <row m=2 y=2000 v=56 />
> ...
> </xml>
> --------------------------
> and xsl like this (only relevant part is quoted to save space):
> -------------xsl----------
> <xsl:for-each select="//row[@m=1]">
>    <tr>
>       <td><xsl:value-of select="@m" /></td>
>       <td><xsl:value-of select="@y" /></td>
>       <td><xsl:value-of select="@v" /></td>
>    </tr>
> </xsl:for-each>
> --------------------------
> Now, I am trying to get sum of values for a particular m 
> (stands for month, 
> of course). I tried:
> <td><xsl:value-of select="@m[@m=1]" /></td>, but get 0 in this case
> If I try:
> <td><xsl:value-of select="//@m[@m=1]" /></td> I get sum of _all_ rows
> rather than sum of v's for a particular month. Is there a simple 
> solution to my problem without transforming the original file to 
> some intermediate format?
> 
> Thanks a lot for any ideas,
> 
> Shimon
> 
> 
>  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
> 
> 
>  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
> 


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]