Introduction | |
EXSLT Extensions | |
Extension attributes (XSLT only) | |
Additional serialization parameters | |
ยป | Extension functions |
The Map Extension | |
Extension instructions | |
Introduction | |
EXSLT Extensions | |
Extension attributes (XSLT only) | |
Additional serialization parameters | |
ยป | Extension functions |
The Map Extension | |
Extension instructions | |
saxon:highest($input as item()*) => item()*
saxon:highest($input as item()*, $key as function()) => item()?
This function returns the item or items from the input sequence that have the highest
value for the function $key
.
If the second argument is omitted, it defaults to the function fn:data#1
, that is, it atomizes the item from the
input sequence.
In XQuery 3.0, the function may be obtained in a variety of ways. In other environments, it may be obtained by calling the saxon:function() extension function.
The $key
function is evaluated for each item in $input
in turn, with that item supplied
as the parameter to the function. Any NaN values are ignored. If the input sequence
is empty, the result
is an empty sequence. If several items have the highest value, the result sequence
contains them all.
Example: saxon:highest(sale, function($x){$x/@price * $x/@qty'}) will evaluate price
times
quantity for each child <sale>
element, and return the element or elements for which this has the highest
value.