saxon:highest
Finds the items having the highest value for some expression
highest($input as item(*)) ➔ item()*
Arguments | |||
| $input | item(*) | The input sequence |
Result | item()* |
highest($input as item(*), $key as function(*)) ➔ item()*
Arguments | |||
| $input | item(*) | The input sequence |
| $key | function(*) | Function to compute the sort key |
Result | item()* |
Details
Namespace: http://saxon.sf.net/
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.
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.
Notes on the Saxon implementation
Fully implemented. Changed in Saxon 9.5 to take a function rather than an expression as the second argument.