Boite à Outils 3 : XQuery
La requête NOM-ADJ
for $ele in collection("Etiquettes")//element
where $ele[contains(.//data[1],"NOM")] and $ele[following-sibling::*[1][contains(.//data[1],"ADJ")]]
let $nom:=$ele/data[@type="string"]/text()
let $adj:=$ele/following-sibling::*[1]/data[@type="string"]/text()
return (<patron><NOM>{$nom}</NOM><ADJ>{$adj}</ADJ></patron>)
Le résultat
La requête NOM-PREP-NOM
for $ele in collection("Etiquettes")//element
where $ele[contains(.//data[1],"PRP")]
and $ele[following-sibling::*[1][contains(.//data[1],"NOM")]]
and $ele[preceding-sibling::*[1][contains(.//data[1],"NOM")]]
let $prp:=$ele/data[@type="string"]/text()
let $nom2:=$ele/following-sibling::*[1]/data[@type="string"]/text()
let $nom1:=$ele/preceding-sibling::*[1]/data[@type="string"]/text()
return (<patron><NOM>{$nom1}</NOM><PRP>{$prp}</PRP><NOM>{$nom2}</NOM></patron>)
Le résultat