Dotazování a tvorba datových výstupů

dotazovací jazyk pro XML a XDM data

Xquery je funkcionálny dotazovací jazyk W3C určený na zpracování XML a hodnot v Xquery and Xpath Data Model. Používá Xpath výrazy, FLWOR konštrukce, funkce, moduly, typy a konštruktory na filtrování, spájání, transformaci a vytvárání nových dokumentů. Xquery 3.1 pracuje i s mapami, polami a JSON kompatibilnými štruktúrami. V AI systémech může pripravovat korpusy, metadata nebo validační reporty. Výkon závisí na indexů a optimalizátora databáze. Dynamicky vložený uživatelský text může způsobit Xquery injection.

Poslední odborná revize
7. srpna 2026
Odborný garant
Miroslav Schmiedt
ID
AI-GEO-X-22

Odborná definice

Odborná definice

Xquery je funkcionálny dotazovací jazyk W3C určený na zpracování XML a hodnot v Xquery and Xpath Data Model. Používá Xpath výrazy, FLWOR konštrukce, funkce, moduly, typy a konštruktory na filtrování, spájání, transformaci a vytvárání nových dokumentů. Xquery 3.1 pracuje i s mapami, polami a JSON kompatibilnými štruktúrami. V AI systémech může pripravovat korpusy, metadata nebo validační reporty. Výkon závisí na indexů a optimalizátora databáze. Dynamicky vložený uživatelský text může způsobit Xquery injection.

Srozumitelné vysvětlení

Srozumitelné vysvětlení

Xpath dokáže najít uzly, Xquery z nich ví zostavit celý nový výsledek. Může projít tisíce dokumentů, spojit údaje podle identifikátora, zoradit jejich a vytvořit XML balík pro tréninkovou pipeline. FLWOR výraz pripomína databázový dotaz, ale pracuje s hierarchickými sekvenciami. Při velkém korpuse je rozdíl mezi správným indexem a úplným prehladáním zásadný. Dotazy vytvořené z používatelského vstupu se nemají lepiť jako text, protože mohou změnit logiku výběru. Audit má zaznamenat text dotazu, verzi dat, uživatele a počet vrátených položek.

Časté otázky

Časté otázky

Co znamená FLWOR?

Skratka označuje klauzuly for, let, where, order by a return. Umožňují iterovat, viazat hodnoty, filtrovat, zoradit a vytvořit výsledek.

Musí Xquery vracet XML?

Ne. Výsledkem může být sekvence uzlů, atómových hodnot, máp nebo polí. Serializér následně rozhodne o textové reprezentaci.

Jak se optimalizuje dotaz nad velkým korpusem?

Používají se štrukturálne a hodnotové indexy, selektívne predikáty, stabilní namespaces a kontrola plánu provedení v konkrétní XML databázi.

Co je Xquery injection?

Útočník vloží syntax do dynamicky skladaného dotazu a změní filtr nebo přístup k datům. Prevencí jsou externí proměnné, validace a minimálně oprávnění.

Kdy použít Xquery místo Python parsera?

Pokud jsou data uložené v XML databázi, potrebujete deklaratívne dotazy, indexy a serverové transformace. Python je vhodnější na širšiu aplikačnou logiku.

Související pojmy

Související pojmy

Zdroje a redakční stopa

Zdroje a redakční stopa

  • W3C, XQuery 3.1, An XML Query Language
  • W3C, XPath and XQuery Functions and Operators 3.1

Definícia je autorská odborná syntéza. Pri právnych a regulačných rozhodnutiach má prednosť aktuálne oficiálne znenie predpisu a posúdenie konkrétneho prípadu.