Re: [xsl] "sum" of "substring"

Subject: Re: [xsl] "sum" of "substring"
From: Mukul Gandhi <mukulgw3@xxxxxxxxx>
Date: Sun, 26 Oct 2003 08:19:18 -0800 (PST)
Hi Colin,
Sorry for coming in late to answer..

If I understood the problem correctly, *the following
XSL hopefully solves the problem* ..

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
<xsl:output method="text" version="1.0"
encoding="UTF-8" indent="yes"/>

<xsl:template match="/records">
   <xsl:variable name="xml-subset">
      <xsl:for-each select="record">
	<xsl:if test="substring(. , 1, 5) = 'TYPE1'">
	    <xsl:value-of select="substring(. , 24, 5)"/>
   Desired total -- <xsl:value-of
select="sum(xalan:nodeset($xml-subset)//a)" />


I am assuming, the following XML is already written --

<?xml version="1.0" encoding="UTF-8"?>

When the XSL posted by me, is applied to the XML, the
desird sum is produced. I am using, *the nodeset
extension function*, and have introduced a Result Tree
Fragment(RTF), with a XML element <a> , for the sake
of computation..

Hope my answer is useful..


--- Colin Simpson <Colin.Simpson@xxxxxxxxxxxxxxx>
> Hello
> My problem:
> I have a flat text file that has to be transformed
> into a predetermined XML
> file.
> Example:
> TYPE2FieldAnother987.65Final
> where the first 5 characters indicate which one of
> two record layouts it is.
> I first do some rudimentary wrapping of the records,
> creating an
> intermediary XML file that
> I can then use XSLT to process:
> <records>
> <record>TYPE2FieldAnother987.65Final</record>
> </records>
> I can populate nodes in the final output XML file by
> extracting data via
> "substring", such as 
> <xsl:value-of select="substring(.,28,15)">
> I need to total up certain numeric values within the
> record of a specific
> layouts.
> For example, I want to total up the values that
> occupy positions 24 thru 28
> from all records of "TYPE1".
> Is there any way of doing this?
> I thought I should use "sum" but I can't figure out
> the syntax needed.
> Kind regards
> Colin Simpson
> This email and any files transmitted with it are
> confidential and intended 
> solely for the use of the individual or entity to
> whom they are addressed. 
> If you have received this email in error please
> notify the system manager. 
>  XSL-List info and archive: 

Do you Yahoo!?
Exclusive Video Premiere - Britney Spears

 XSL-List info and archive:

Current Thread