jeden dotaz může sahat do libovolného množství dokumentů XML
spojení dat se provede ručně, pomocí podmínky
s využitím predikátu a proměnné funguje podobně jako OUTER JOIN
(: Spojení dvou XML dokumentů pomocí predikátu :) for $p in doc('katalog.xml')//polozka let $v := doc('vyrobci.xml')//vyrobce[nazev = $p/vyrobce] return <polozka> { $p/nazev, $p/vyrobce, $v/web } </polozka>
s využitím where
funguje jako INNER
JOIN
(: Spojení dvou XML dokumentů pomocí where :) for $p in doc('katalog.xml')//polozka for $v in doc('vyrobci.xml')//vyrobce where $v/nazev = $p/vyrobce return <polozka> { $p/nazev, $p/vyrobce, $v/web } </polozka>