xsl-list
[Top] [All Lists]

Re: xsl:function, arithmetic

2005-02-14 11:00:22
Hi Richard,
  I am not getting error! The following XSL is working
fine..

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0"
xmlns:my="http://whatever";
xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
  
<xsl:output method="text" />    
  
<xsl:template match="/">
  <xsl:value-of select="my:increase(3)" /> 
  <xsl:value-of select="my:increase(10.5)" />
</xsl:template>  
  
<xsl:function name="my:increase">
  <xsl:param name="i" />
  <xsl:value-of select="round(1.2 * $i)" />
</xsl:function>
  
</xsl:stylesheet>

For argument 3, I am getting output 4; and for
argument 10.5, I am getting output 13..

I am using Saxon 8.1.1 .

Regards,
Mukul

--- Richard Lewis <richardlewis(_at_)fastmail(_dot_)co(_dot_)uk> wrote:

Hello,

I'm having a few problems with an xsl:function.

Its supposed to take a numerical parameter and
return it multiplied by
1.2 and rounded:

<xsl:function name="my:increase">
    <xsl:param name="i" />
    <xsl:value-of select="round(1.2 * $i)" />
</xsl:function>

I've tried added an xsl:message to the function to
check the XPath
expression and it seems to be correct, but all the
expressions in my
stylesheet which use this function seem to return
non-numerical results.
I've also tried just returning the parameter
unaltered, in which case I
get no problems. And I've tried things like
'select="$i + $i div 5"' but
still get the problem.

I'm using XSLT2, Saxon 8.2B.

Any ideas?

Richard




                
__________________________________ 
Do you Yahoo!? 
Yahoo! Mail - 250MB free storage. Do more. Manage less. 
http://info.mail.yahoo.com/mail_250

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



<Prev in Thread] Current Thread [Next in Thread>