Re: [xsl] Add numbers

Subject: Re: [xsl] Add numbers
From: Wendell Piez <wapiez@xxxxxxxxxxxxxxxx>
Date: Tue, 09 Oct 2007 11:16:04 -0400
Harsh,

At 11:04 AM 10/9/2007, you wrote:
I have used the Meunichian method to group the nodes with same keys
together. But I don't know how to proceed from there. I tried using the
sum() function but it won't work for me on account that even if I run a
for-each loop over the set of nodes with the same key, it just prints
out the value of "val" for each a element.

Don't use a for-each; simply sum() the nodes you want to add together:


sum(key('items-by-key',@key)/@val)

using any of the items with the correct @key as the context.

I hope this helps,
Wendell

I have an XML:

<?xml version="1.0" encoding="UTF-8"?>
<first>
    <second>
        <a val="4" key="one">b</a>
        <a val="2" key="two">b</a>
    </second>
    <second>
        <a val="3" key="one">c</a>
    </second>
</first>

I need to group together the nodes which have the same key and then I
need to add the attribute "val" in all such cases.

So, The output I need is:

<op>
        <one>
                <val>7</val>
        </one>
        <two>
                <val>2</val>
        </two>
</op>


Thanks,
Harsh.


======================================================================
Wendell Piez                            mailto:wapiez@xxxxxxxxxxxxxxxx
Mulberry Technologies, Inc.                http://www.mulberrytech.com
17 West Jefferson Street                    Direct Phone: 301/315-9635
Suite 207                                          Phone: 301/315-9631
Rockville, MD  20850                                 Fax: 301/315-8285
----------------------------------------------------------------------
  Mulberry Technologies: A Consultancy Specializing in SGML and XML
======================================================================

Current Thread