fn:round
round($arg as xs:numeric?) ➔ xs:numeric?
Rounds a numeric value to the nearest whole number, rounding x.5 towards positive infinity.
Arguments | |||
| $arg | xs:numeric? | The value to be rounded to the nearest whole number |
Result | xs:numeric? |
round($arg as xs:numeric?, $precision as xs:integer) ➔ xs:numeric?
Rounds a numeric value to the nearest multiple of ten to the power of minus
$precision
, rounding x.5 towards positive infinity.
Arguments | |||
| $arg | xs:numeric? | The value to be rounded to a given number of decimal places |
| $precision | xs:integer | The number of decimal places required |
Result | xs:numeric? |
Namespace
http://www.w3.org/2005/xpath-functions
Links to W3C specifications
XPath 3.1 Functions and Operators
Saxon availability
Available in all Saxon editions.
Notes on the Saxon implementation
The two-argument form of this function is specified in XPath 3.0, and has been available since Saxon 9.3.
Saxon 12.6 fixes a long-standing bug (6537), whereby negative "midway" xs:decimal
values were rounded away from zero rather than towards zero. For example
round(-0.125e0, 2)
returned -0.13
rather than -0.12
.
XPath 4.0 introduces a 3-argument form of this function in which the rounding mode can be specified explicitly. This is implemented in Saxon 12.6; for details see the XPath 4.0 specification.