XQuery vs XPath
XQuery je funkčný programovací jazyk, ktorý sa používa na dotazovanie na skupinu údajov XML. Je schopný manipulovať a extrahovať údaje z dokumentov XML alebo z relačných databáz a dokumentov MS Office, ktoré podporujú zdroj údajov XML. Je to jazyk, ktorý pomáha pri vytváraní syntaxe pre nové dokumenty XML. XQuery je reprezentovaný vo forme stromového modelu so siedmimi uzlami, konkrétne inštrukciami na spracovanie, prvkami, uzlami dokumentov, atribútmi, mennými priestormi, textovými uzlami a komentármi. Všetky hodnoty sa označujú ako sekvencie. Aj jedna hodnota sa považuje za sekvenciu dĺžky. Sekvencia môže pozostávať buď z uzlov alebo atómových hodnôt, ako sú celé čísla, reťazce alebo booleovské hodnoty. Má nasledujúce funkcie, ktoré sa používajú na transformáciu údajov XML:
Nežiaduce účinky zadarmo.
Logická / fyzická nezávislosť údajov.
Silne napísané.
Vysoký stupeň.
deklaratívny.
XPath je jazyk XML cesty, ktorý sa používa na výber uzlov z dokumentu XML pomocou dotazov. Môže tiež vypočítať hodnoty, ako sú reťazce, čísla alebo booleovský typ z iného dokumentu XML. Výraz v prípade XML je známy ako XPath. Je reprezentovaná ako stromová štruktúra so schopnosťou XPathu navigovať ju výberom rôznych uzlov. Bol vytvorený na definovanie spoločného modelu syntaxe a správania pre XPointer a XSLT. XPath má nasledujúce vlastnosti:
XPath definuje syntax pre dokument XML.
Má schopnosť navigovať výrazy cesty v dokumentoch XML.
Má vlastnú knižnicu definujúcu štandardné funkcie.
Je to hlavná súčasť XSLT.
Ďalšie rozdiely medzi XPath a XQuery:
1. XPath sa považuje za regulárny výraz, zatiaľ čo XQuery je ako programovací jazyk C w.r.t. Dokumenty XML.
2. XPath je filter pre súbor údajov XML a je transformačnou súčasťou XSLT. XQuery sa používa na výber niekoľkých uzlov z dokumentu XML na účely spracovania pomocou rôznych dopytov.
3. XQuery používa XPath syntax na adresovanie rôznych častí XML dokumentu. Spojenia sa vykonávajú pomocou výrazu FLWOR. Tento výraz má päť klauzúl, konkrétne KDE, OBJEDNÁVKA, PRE, LET a VRÁTENIE.
Zhrnutie:
1. XPath je stále vo svojej rodiacej sa fáze vývoja a ako taký je stále súčasťou dopytovacieho jazyka.
2. XQuery podporuje XPath a rozšírené relačné modely.
3. XQuery je jazyk určený len na čítanie, ktorý nie je ľahké formulovať.
4. XQuery nie je štandard a je ťažké ho optimalizovať, čo vedie k zlej výkonnosti.