Preskočiť na obsah

Vyhodnocovateľ XPath

Spustite výraz XPath 1.0 nad vloženým XML a vidíte všetky zhody, ich hodnoty a cesty.

Vstup
Výstup

Vyhodnocovateľ XPath

Vložte XML dokument, napíšte výraz XPath 1.0 a tento nástroj vám vypíše každý uzol, ktorý vyhovuje — bez potreby písať skript alebo otvárať debugger, aby ste skontrolovali, či selektor naozaj nájde to, čo očakávate. Bol vytvorený pre chvíľu, keď sa pozeráte na štýlopis XSLT, pravidlo scrapingu alebo cestu XQuery, ktorá nevracia to, čo ste plánovali, a potrebujete výraz otestovať izolovaně na skutočnom dokumente.

Možnosť typu výsledku riadi, ako sa číta hodnota výrazu: „Sada uzlov“ zoznamuje všetky vyhovujúce prvky, atribúty, textové uzly alebo komentáre; „Reťazec“, „Číslo“ a „Logická hodnota“ konvertujú celý výraz rovnakým spôsobom ako funkcie string(), number() a boolean() v samotnom XPath, čo je spôsob, ako skontrolovať porovnanie alebo výzvu count() izolovaně. Pri výsledkoch sady uzlov možnosť „Zobraziť zhody ako“ prepína medzi textovým obsahom jednotlivých zhôd a ich úplným serializovaným XML, a zhody môžete číslovať alebo každej predponaať vyriešenú cestu (ako /catalog/book[2]/title), ktorá ju našla.

Podporovaná syntaxia pokrýva podmnožinu, ktorú ľudia skutočne používajú: všetkých desať štandardných osí (child, descendant, descendant-or-self pre //, parent, ancestor, self, following-sibling, preceding-sibling a attribute pre @), zástupné znaky, pozičné a logické predikáty, operátor union a bežné funkcie — position(), last(), count(), name(), contains(), starts-with(), substring(), concat(), normalize-space() a aritmetické a porovnávacie operátory. Premenné, document(), key() a os namespace nie sú podporované. Dokumenty s menným priestorom vyžadujú, aby ste predponu viazali na jej URI v „Väzby menného priestoru“, jeden pár predpona=URI na riadok — alebo zapnite „Ignorovať mené priestory“, aby ste zhodovali len podľa lokálneho názvu, bez ohľadu na predponu.

Všetko sa spúšťa lokálne vo vašom prehliadači: XML, ktorý vložíte, a výraz, ktorý proti nemu napíšete, sa nikdy neodošle nikam, takže je bezpečné testovať ho s reálnymi odpoveďami API, exportmi konfigurácie alebo výťahmi produkčného denníka. Neplatný XML a neplatné výrazy sú nahlásené s tým, čo zlyhalo a prečo, nie s prázdnym výsledkom.

Časté otázky

Ktoré časti XPath 1.0 sú podporované?
Všetkých desať štandardných osí, testy mien a typov uzlov (vrátane zástupných znakov a text()/comment()/node()), pozičné a logické predikáty, operátor union (|), aritmetické a porovnávacie operátory a bežné funkcie ako position(), last(), count(), name(), string(), contains(), starts-with(), substring(), concat(), normalize-space() a sum(). Premenné ($x), document(), key() a os namespace nie sú podporované.
Prečo môj výraz nezhoduje nič v dokumente s menným priestorom?
Neprávna test mena odpovídá iba prvkom bez menného priestoru — to je rovnaké pravidlo, ktoré dodržiavajú reálni procesoráty XPath. Viažte predponu, ktorú váš výraz používa, na URI menného priestoru dokumentu v „Väzby menného priestoru“ (jeden pár predpona=URI na riadok), alebo zapnite „Ignorovať mené priestory“, aby ste zhodovali len podľa lokálneho názvu.
Aký je rozdiel medzi štyrmi typmi výsledkov?
„Sada uzlov“ vypíše samotné vyhovujúce uzly. „Reťazec“, „Číslo“ a „Logická hodnota“ namiesto toho konvertujú celý výraz rovnakým spôsobom ako funkcie string(), number() a boolean() v XPath — užitočné na priamu kontrolu výrazu count() alebo porovnania bez jeho zabalenia do predikátu.
Čo sa stane s neplatným XML alebo neplatným výrazom?
Nástroj hlási, ktorý z nich zlyhal a prečo — nekončená značka alebo nezhodni prvok pre XML, neočakávaný token alebo neviazan predpona menného priestoru pre výraz — namiesto vrátenia prázdneho alebo zavádzajúceho výsledku.
Je môj XML dokument niekde nahraný?
Nie. Analýza a vyhodnotenie sa spúšťajú úplne vo vašom prehliadači — dokument a výraz nikdy neopúšťajú vašim zariadením.