XPath 3 - XPath 3
XPath 3 je nejnovější verze Jazyk XML cesty, a dotazovací jazyk pro výběr uzlů v XML dokumenty. Nahrazuje to XPath 1.0 a XPath 2.0.
XPath 3.0 se stal Doporučení W3C dne 8. dubna 2014, zatímco XPath 3.1 se stal Doporučení W3C dne 21. března 2017.
Nové funkce v XPath 3.0
Ve srovnání s XPath 2.0 XPath 3.0 přidává následující nové funkce:
- Inline funkční výrazy
- Anonymní funkce lze vytvořit v výraz kontext. Například výraz
funkce ($ a jako xs: double, $ b jako xs: double) jako xs: double {$ a * $ b}
vytvoří funkci, která vrátí součin jejích dvou argumentů. Výrazcollection () / (let $ a: =. návratová funkce () {$ a})
vytvoří posloupnost funkcí, z nichž každá vrací jiný uzel ze sbírky. - Dynamické volání funkcí
- Hodnoty funkcí lze volat, aniž by na ně odkazoval název. Například,
$ f [2] („Ahoj“)
načte druhou položku ze sekvence$ f
, a vyvolá jej jako funkci, předá řetězec"Ahoj"
jako argument. - Typy Unie
- Typy Unie, jak je definováno v Schéma XML, lze použít v převody typu a funkce podpisy typu.
- Literály oboru názvů
- Obory názvů XML lze odkazovat pomocí složených URI literály. Například kvalifikovaný název
matematika: pi
lze rozšířit naOtázka {http://www.w3.org/2005/xpath-functions/math} pi
, vložení identifikátoru URI oboru názvů do předpony. - Operátor zřetězení řetězců
- Nové
||
operátor lze použít pro zřetězení řetězce:$ a || $ b
je ekvivalentní kfn: concat ($ a, $ b)
. - Operátor mapování
- Nové
!
operátor provádí jednoduché mapování:E1! E2
hodnotíE2
pro každou položku v pořadíE1
a zřetězí výsledné položky. To je srovnatelné s operátorem cesty/
, ale!
provozovatel neprovádí duplicitní odstranění ani dokumentování výsledků.
Nové funkce v XPath 3.1
XPath 3.1 přidává hlavně podporu pro pole a mapa (asociativní pole ) typy dat. Tyto typy a jejich přidružené funkce mají usnadnit práci JSON data.
Další novinkou je operátor šipky =>
pro řetězení funkcí. Například výraz XPath 2.0
obsahuje (velká písmena (předřetězec před ($ in, '')), 'X')
nyní lze psát
$ in => substring-before ('') => upper-case () => contains ('X')
Reference
- „XML Path Language (XPath) 3.0“. World Wide Web Consortium. 8. dubna 2014.
- „Jazyk XML cesty (XPath) 3.1“. World Wide Web Consortium. 21. března 2017.
![]() | Tento počítačový článek je pahýl. Wikipedii můžete pomoci pomocí rozšiřovat to. |