Subject: Re: [xsl] Find a set of nodes and depending on element values From: Jakub.Valenta@xxxxxxxx Date: Mon, 4 Mar 2002 18:28:23 +0200 |
Hi, hope this helps <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl ="http://www.w3.org/1999/XSL/Transform"> <xsl:key name = "example" match ="/loadtest/rounds/action" use = "./loadsize" /> <xsl:template match="/"> <!-- this selects the <action nodes according to loadsize parameter <xsl:copy-of select="key('example','1')"/> --> <result> <xsl:value-of select="sum(key('example','1')/time) div count(key ('example','1'))" /> </result> </xsl:template> </xsl:stylesheet> gives you: <?xml version="1.0" encoding="utf-8"?> <result>17.666666666666668</result> br, Jakub "Erik Stunkat" <Erik.Stunkat@xxxxxxx>@lists.mulberrytech.com on 03/04/2002 05:53:17 PM Please respond to xsl-list@xxxxxxxxxxxxxxxxxxxxxx Sent by: owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx To: XSL-List@xxxxxxxxxxxxxxxxxxxxxx cc: Subject: [xsl] Find a set of nodes and depending on element values Hi! I have a simple xml file: <?xml version="1.0" encoding="iso-8859-1"?> <loadtest><settings task="Export" host="http://animal:8080" format ="BMECat" size="1000" ></settings><rounds> <action><user>user0-0</user><command>completed</command><loadsize>1</loadsize><time>18</time><output></output></action> <action><user>user0-1</user><command>completed</command><loadsize>1</loadsize><time>17</time><output></output></action> <action><user>user0-2</user><command>completed</command><loadsize>1</loadsize><time>18</time><output></output></action> <action><user>user0-3</user><command>completed</command><loadsize>5</loadsize><time>18</time><output></output></action> <action><user>user0-4</user><command>completed</command><loadsize>5</loadsize><time>18</time><output></output></action> </rounds></loadtest> Now I want to find all <action> elements with the element <loadsize>1</loadsize> and then process the average time (<time>xxx</time>) for each set of action elements with the same time. <xsl:value-of select="sum(/time[loadsize='1']) div count(time[loadsize ='1'])"/> does not work... My problem is to find the correct nodeset - for-each gives me the strings , not the elements. thanks in advance! erik stunkat XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Find a set of nodes and d, Michael Kay | Thread | Re: [xsl] Find a set of nodes and d, Erik Stunkat |
RE: [xsl] collection of differences, Bryan Rasmussen | Date | Re: [xsl] Counting nodes processed, cutlass |
Month |