Zanořování dotazů

  • XQuery je funkcionální jazyk a proto je možné jednotlivé výrazy navzájem kombinovat a zanořovat

  • (: Vypsání všech kategorií a výrobků, které do ní patří :)
    
    for $k in distinct-values(doc('katalog.xml')//polozka/kategorie)
    return 
      <kategorie>
        <nazev>{ $k }</nazev>
        {
          for $p in doc('katalog.xml')//polozka[kategorie = $k]
          return
            <vyrobek>{ string($p/nazev) }</vyrobek>
        }
      </kategorie>