Subject: Re: [xsl] does xslt support max(), min() and avg() functions ?? From: "Steve Muench" <Steve.Muench@xxxxxxxxxx> Date: Wed, 14 Feb 2001 10:25:26 -0800 |
| > i want to get the maximum, minimum and average values of xml elements....i | > want to use XSLTs for this purpose...does XSLT support mathematical functions | > ornot ?? | > how can i implement mathematical functions using XSLTs ?? | From: "Michael Hoffmann" <m-hoffmann@xxxxxx> | | could you PLEASE buy a book and read it ?? | or just search for XML articles online.. nearly all of your questions (of your | older posts too) will be answered there That sounds kind of harsh... :-) Let's try to help out if we can. XSLT supports count() and sum() aggegate functions. By using a trick to assign a variable to a computed value, you can use XSLT to calculate min, max, and avg like this: Let's say your source document is: <list> <item>15</item> <item>10</item> <item>20</item> </list> Then it's easy to assign a value to the sum() of the items by doing: <xsl:variable name="the_sum" value="sum(/list/item)"/> or the count of the items: <xsl:variable name="the_count" value="count(/list/item)"/> for the average, you can do something like this: <xsl:variable name="the_avg" select="sum(/list/item) div count(/list/item)"/> for the max, you can do: <!-- | assign variable based on picked the first item in | the numerically-sorted-descending list of items. +> <xsl:variable name="the_max"> <xsl:for-each select="/list/item"> <xsl:sort data-type="number" order="descending"/> <xsl:if test="position()=1"><xsl:value-of select="."/></xsl:if> </xsl:for-each> </xsl:variable> for the min, you just reverse the sort order: <!-- | assign variable based on picked the first item in | the numerically-sorted-descending list of items. +> <xsl:variable name="the_min"> <xsl:for-each select="/list/item"> <xsl:sort data-type="number" order="ascending"/> <xsl:if test="position()=1"><xsl:value-of select="."/></xsl:if> </xsl:for-each> </xsl:variable> ______________________________________________________________ Steve Muench, Lead XML Evangelist & Consulting Product Manager BC4J & XSQL Servlet Development Teams, Oracle Rep to XSL WG Author "Building Oracle XML Applications", O'Reilly http://www.oreilly.com/catalog/orxmlapp/ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] does xslt support max(), , Michael Hoffmann | Thread | Re: [xsl] does xslt support max(), , Jeni Tennison |
Re: [xsl] choose an "artificial" ro, by way of B. Tommie | Date | RE: [xsl] ANNOUNCE: ASCII XML Tree , Evan Lenz |
Month |