From: Pierrick B. <pie...@cu...> - 2007-05-09 07:05:43
|
Gi, Sava Jurisic a écrit : > this is not per se eXist question, but I thought I ask regardless: Looks like a pure XQuery question :-) However, eXist has probably its responsability ; see below. > - After executing xquery, I have a result the looks like: > > <priv_ost>5.299999999999997</priv_ost> XQuery specs have reviewed what used to be called the "XPath 1.0 compatibility mode" in a cleaner way which is now implemented correctly in eXist's trunk (at least, I hope so). Roughly, all numbers - including typed ones ! - were cast to xs:double (mapped to Java double) whose precision model produces less intuitive results such as the one you get. > I would like somehow to round the result to 1 or 2 decimal places, such as > <priv_ost>5.3</priv_ost> > > I looked into xquery functions and couldn't find one that would help; There's unfortunately no standard function to do that. Quite a shame IMHO :-) > I guess I could do combo substring and concat, but is that the only way? Yes I'm afraid... unless you switch to current trunk and type your values as xs:decimal. Nothing prevents you to do so right now BTW. Cheers, -- Pierrick Brihaye, informaticien Service régional de l'Inventaire / DRAC Bretagne mailto:pie...@cu... / tél : +33 (0)2 99 29 67 78 Avez-vous lu http://usenet-fr.news.eu.org/fr-chartes/rfc1855.html ? |