xsl-list
[Top] [All Lists]

Re: [xsl] XPath / XSLT 2.1 - Rounding algorithms

2008-11-13 22:13:37
Hi Ken,

Thanks for your reply.

Not sure where you read that ... the round() function goes to the nearest
whole number or does a ceiling() for the value "x.5":

 http://www.w3.org/TR/2007/REC-xpath-functions-20070123/#func-round

OK you're right, and I remember looking at that.
But that's integer rounding, not really what I'm looking for.


Specifically, round-half-up(decimal_num,num_digits), where 'up' means
towards
positive or negative infinity, is what I'm looking for.

round(3.065) returns 3. , whereas my need is for
a function to return 3.07 (say), something like this, say:

round-half-up(3.065,2) -> 3.07
round-half-up(-3.065,2) -> -3.07


Except for the number of digits you could do:

 if( x < 0 ) then -( round(abs(x)) ) else round(x)

... and use format-number() to handle the digits bit.

That's the kind of jumping through hoops I was hoping to avoid.


I hope the example below helps.

It does, I think it illustrates my point.

Cheers,
Peter

--~------------------------------------------------------------------
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>
--~--