XQuery
-
Přečtěte si XQuery tutoriál pro rychlé seznámení s možnostmi jazyka XQuery. S možnostmi jazyka a příklady použití vás seznámí i další dokument.
-
Stáhněte si ukázkové dokumenty a dotazy. V adresáři
use-cases
naleznete ukázkové dotazy. -
Libovolný dotaz si můžete vyzkoušet:
xquery dotaz.xq
Předpokládáme přitom, že dotaz je uložen v souboru
dotaz.xq
.Ještě pohodlnější možností je editovat a provádět dotazy přímo v editoru oXygen.
-
Zkuste vytvořit XQuery dotazy poskytující odpovědi na následující dotazy.
Tip Z dotazu se na ukázkové dokumenty můžete odvolat pomocí zápisu
doc("soubor.xml")
.-
Ze souboru
zamestnanci.xml
vypište seznam zaměstnanců a u každého seznam jeho podřízených.Příklad 1. Očekávaný výstup
<vysledek> <zamestnanec> <jmeno>Procházka Karel</jmeno> <podrizeni/> </zamestnanec> <zamestnanec> <jmeno>Novotná Alena</jmeno> <podrizeni> <jmeno>Klíma Josef</jmeno> </podrizeni> </zamestnanec> <zamestnanec> <jmeno>Klíma Josef</jmeno> <podrizeni/> </zamestnanec> <zamestnanec> <jmeno>Pinkas Josef</jmeno> <podrizeni/> </zamestnanec> <zamestnanec> <jmeno>Kládová Adéla</jmeno> <podrizeni> <jmeno>Procházka Karel</jmeno> <jmeno>Novotná Alena</jmeno> <jmeno>Pinkas Josef</jmeno> </podrizeni> </zamestnanec> </vysledek>
-
Ze souboru
zamestnanci.xml
vypište seznam zaměstnanců, kteří mají nějaké podřízené. U každého i seznam jeho podřízených.Příklad 2. Očekávaný výstup
<vysledek> <zamestnanec> <jmeno>Novotná Alena</jmeno> <podrizeni> <jmeno>Klíma Josef</jmeno> </podrizeni> </zamestnanec> <zamestnanec> <jmeno>Kládová Adéla</jmeno> <podrizeni> <jmeno>Procházka Karel</jmeno> <jmeno>Novotná Alena</jmeno> <jmeno>Pinkas Josef</jmeno> </podrizeni> </zamestnanec> </vysledek>
-
Ze souboru
zamestnanci.xml
vypište seznam zaměstnanců a u každého z nich kolik má podřízených.Příklad 3. Očekávaný výstup
<vysledek> <zamestnanec> <jmeno>Procházka Karel</jmeno> <pocet_podrizenych>0</pocet_podrizenych> </zamestnanec> <zamestnanec> <jmeno>Novotná Alena</jmeno> <pocet_podrizenych>1</pocet_podrizenych> </zamestnanec> <zamestnanec> <jmeno>Klíma Josef</jmeno> <pocet_podrizenych>0</pocet_podrizenych> </zamestnanec> <zamestnanec> <jmeno>Pinkas Josef</jmeno> <pocet_podrizenych>0</pocet_podrizenych> </zamestnanec> <zamestnanec> <jmeno>Kládová Adéla</jmeno> <pocet_podrizenych>3</pocet_podrizenych> </zamestnanec> </vysledek>
-
Ze souboru
db.xml
vypište všechny zkratky seřazené podle abecedy. Každou zkratku jen jednou. Zkratky jsou uloženy v elementuACRONYM
. -
Předchozí dotaz rozšiřte tak, aby vypsal počet výskytů každé zkratky v podobě HTML tabulky.
-