FUNCTION bid_summary()
{
FOR $i IN DISTINCT document("bids.xml")//itemno
LET $b := document("bids.xml")//bid_tuple[itemno = $i]
RETURN
$i ,
count($b)
}
(
FOR $item IN document("items.xml")//item_tuple,
$bc IN bid_summary()/bid_count[itemno = $item/itemno]
WHERE $bc/nbids =
(
LET $n := bid_summary()//nbids
RETURN max($n)
)
RETURN
$item/itemno ,
$item/description ,
$bc/nbids/text()
)