Changeset View
Changeset View
Standalone View
Standalone View
swh/web/tests/resources/contents/code/extensions/test.xqy
- This file was added.
xquery version "3.1"; | |||||
(:~ | |||||
: @author Duncan Paterson | |||||
: @version 1.0:) | |||||
declare variable $local:num := math:log10(12345); | |||||
( | |||||
let $map := map { 'R': 'red', 'G': 'green', 'B': 'blue' } | |||||
return ( | |||||
$map?* (: 1. returns all values; same as: map:keys($map) ! $map(.) :), | |||||
$map?R (: 2. returns the value associated with the key 'R'; same as: $map('R') :), | |||||
$map?('G','B') (: 3. returns the values associated with the key 'G' and 'B' :) | |||||
), | |||||
declare function local:city($country as node()*) as element (country) { | |||||
for $country in doc('factbook')//country | |||||
where $country/@population > 100000000 | |||||
let $name := $country/name[1] | |||||
for $city in $country//city[population gt 1000000] | |||||
group by $name | |||||
return | |||||
element country { attribute type { $name }, | |||||
$city/name } | |||||
}; | |||||
return | |||||
('A', 'B', 'C') => count(), | |||||
<root>{local:city(.) + $local:num}</root> |