Converts all nodes in the argument node-set to numbers, and then returns the sum of all of those numbers.
$empty as xs:anyAtomicType
[1.0] A node-set. Any node in the
node-set that is not a number is converted to a number as if it
were passed to the
function, after which the numeric values of all of the nodes are
[2.0] A sequence of atomic values, plus
an optional value that is returned when the first argument to
sum() is the empty
[1.0] The sum of the numeric values of
all of the nodes in the argument node-set. If any node in the
argument node-set cannot be converted to a number, the
sum() function returns
[2.0] Given a sequence of numeric
sum() returns the
sum of those values. Given a sequence of durations,
sum() returns the sum of those
durations. As you’d expect from XSLT 2.0, there are some
complications to consider:
To calculate the sum of a sequence of durations, the durations must all be
xs:dayTimeDurations, or they must all be
xs:yearMonthDurations. You can’t mix the two types of durations; if you do, the XSLT processor raises an error.
If any of the items in the sequence are of type
xs:untypedAtomic, the XSLT processor attempts to cast it to
xs:double. If it can’t be converted to an
xs:double, the XSLT processor raises an error.
If you pass a nonempty sequence to
sum()and the sum is
0, the function ...