for $item in collection("sortieudpipe-slurp_3208.xml")//item where contains($item/a[8]/text(),'obj') let $formedependant:=$item/a[2]/text() let $positiondependant:=$item/a[1]/text() let $positiongouverneur:=$item/a[7]/text() let $formegouverneur:= if(number($positiongouverneur) >number($positiondependant)) then ($item/following-sibling::item[a[1]=$positiongouverneur]/a[2]/text()) else($item/preceding-sibling::item[a[1]=$positiongouverneur]/a[2]/text()) let $pattern:=string-join(($formegouverneur,$formedependant)," ") group by $grp:=$pattern order by count ($pattern) descending return string-join(($grp,count($pattern))," ")