Description
The functx:sort-as-numeric function sorts a sequence of numeric values or nodes. This is useful for untyped values, because the order by clause by default treats values as strings, and would therefore sort 100 before 99.
Arguments and Return TypeName | Type | Description |
$seq |
item()* |
the sequence to sort |
return value |
item()* |
XQuery Function DeclarationSee XSLT definition. | declare namespace functx = "http://www.functx.com";
declare function functx:sort-as-numeric
( $seq as item()* ) as item()* {
for $item in $seq
order by number($item)
return $item
} ; |
Exampleslet $in-xml := | <in-xml>
<f>1</f>
<f>35</f>
<e>4</e>
</in-xml> | return |
XQuery Example | Results |
---|
functx:sort-as-numeric(('1','100','99')) |
('1', '99', '100') |
functx:sort-as-numeric($in-xml/*) |
<f>1</f>
<e>4</e>
<f>35</f> |
See AlsoHistory |
Recommended Reading:
|