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.