(: insert-start :) | |
declare variable $input-context1 external; | |
declare variable $input-context2 external; | |
(: insert-end :) | |
declare function local:bid_summary() | |
as element()* | |
{ | |
for $i in distinct-values($input-context2//itemno) | |
let $b := $input-context2//bid_tuple[itemno = $i] | |
return | |
<bid_count> | |
<itemno>{ $i }</itemno> | |
<nbids>{ count($b) }</nbids> | |
</bid_count> | |
}; | |
<result> | |
{ | |
let $bid_counts := local:bid_summary(), | |
$maxbids := max($bid_counts/nbids), | |
$maxitemnos := $bid_counts[nbids = $maxbids] | |
for $item in $input-context1//item_tuple, | |
$bc in $bid_counts | |
where $bc/nbids = $maxbids and $item/itemno = $bc/itemno | |
return | |
<popular_item> | |
{ $item/itemno } | |
{ $item/description } | |
<bid_count>{ $bc/nbids/text() }</bid_count> | |
</popular_item> | |
} | |
</result> |