XPath avaldiste testimine XML- ja HTML-andmetel
XPath (XML Path Language) on standardne päringukeel, mida kasutatakse XML- ja HTML-dokumentidest konkreetsete osade, näiteks elementide, atribuutide või tekstisisu otsimiseks ja valimiseks. XPath testija võimaldab sisestatud andmete peal reaalajas kontrollida, kuidas teie kirjutatud XPath avaldised käituvad, kuvades täpselt kõik kattuvad sõlmed, nende tüübid, asukohad ja väärtused.
Tööriist toetab kahte režiimi: XML-režiim ja HTML-režiim. Õige režiimi valimine on oluline, kuna XML nõuab ranget süntaksit ja nimeruumide järgimist, samas kui HTML-režiim on vigade suhtes leebem ja võimaldab lihtsate päringute abil kiiresti veebidokumente analüüsida.
Sisendid ja tehnilised piirangud
Tõhusa ja kiire toimimise tagamiseks on tööriistale seatud kindlad mahupiirangud:
- XML / HTML sisend: Tekstiline sisu XML- või HTML-vormingus. Sisendi maksimaalne lubatud pikkus on 500 000 märki. Kui sisestatud dokument ületab selle piiri, kuvatakse veateade: "See dokument on siin testimiseks liiga suur. Proovige väiksemat näidist."
- XPath avaldis: Otsitav XPath avaldis, mille maksimaalne lubatud pikkus on 4000 märki. Kui avaldis on sellest pikem, kuvatakse teade: "See XPath avaldis on siin testimiseks liiga pikk."
- Sisendi tüüp: Kasutaja saab valida valikute "XML" või "HTML" vahel, mis määrab dokumendi parsimise ja reeglite tõlgendamise viisi.
Väljundid ja tulemuste kuvamine
Pärast avaldise hindamist kuvab tööriist üksikasjaliku ülevaate leitud vastavustest:
- Tulemused: Kuvatakse leitud kattuvate sõlmede koguarv. Kui vasteid ei leita, kuvatakse teade "Tulemusi ei leitud."
- Üksikasjad: Iga kattuva sõlme kohta näidatakse selle tüüpi, nime, täpset teed ja väärtuse eelvaadet.
- Kopeeri tulemus: Iga üksiku tulemuse juures on nupp, mis võimaldab selle konkreetse tulemuse väärtuse otse kopeerida.
- Märke: Kuvab sisestatud dokumendi tähemärkide koguarvu.
- Tulemusi: Näitab kuvatavate tulemuste arvu. Kui vasteid on rohkem kui 200, piirab tööriist väljundit, kuvades teate "Kuvatakse esimesed
{max}tulemust." ning näitab ainult esimesed 200 tulemust.
XML ja HTML režiimide erinevused ning nimeruumid
XML- ja HTML-režiimide vahel valimine mõjutab otseselt seda, kuidas päringuid töödeldakse:
- XML-režiim: Selles režiimis järgitakse rangelt XML-i nimeruumi (namespace) reegleid. Kui teie XML-dokumendis on deklareeritud nimeruumid, saate neid prefikseid kasutada ka oma XPath avaldises (näiteks
//x:item). Vaikimisi nimeruumide puhul järgib ka päring//itemdokumendis määratletud deklaratsiooni. - HTML-režiim: See režiim on vigade suhtes andestavam. See võimaldab kasutada lihtsaid ja lühikesi teid, näiteks
//a, et leida dokumendist tavalisi HTML-silte, ilma et peaks muretsema rangete XML-struktuuri reeglite pärast.
Tuleb arvestada, et see tööriist on mõeldud staatilise teksti testimiseks. See ei kujuta reaalajas veebilehtede dünaamilist struktuuri, brauseris renderdatud DOM-puud ega tee võrgupäringuid reaalsete veebilehtede laadimiseks.
Vigade käsitlemine ja jõudluspiirangud
Keerulised XPath avaldises tehtavad otsingud mahukates dokumentides võivad nõuda suurt arvutusressurssi. Lehe sujuvuse ja reageerimisvõime tagamiseks peatab tööriist XPath avaldise hindamise automaatselt pärast 2 sekundi möödumist.
Tööriist teavitab kasutajat probleemidest järgmiste teadetega:
- Kui dokumenti ei õnnestu vigase süntaksi tõttu laadida: "Seda dokumenti ei saanud parsida."
- Kui XPath avaldis sisaldab süntaksivigu: "See XPath avaldis ei ole korrektne."
- Kui avaldist ei ole muul põhjusel võimalik käivitada: "Seda XPathi ei saanud hinnata."
- Kui päringu käivitamine ületab 2 sekundi piiri: "Selle XPathi käitamine võttis liiga kaua aega. Täpsustage avaldist või kasutage väiksemat näidist."
Selleks, et vältida päringute aegumist, on soovitatav kirjutada võimalikult täpsed XPath teed (näiteks vältida liigset üldise otsingu //* või sügavate harude // kasutamist seal, kus saab määrata otsese teekonna) või testida avaldist väiksema andmemahu peal.
Privaatsus ja andmetöötlus
Kõik sisestatud andmed ja XPath päringud töödeldakse lokaalselt otse teie veebibrauseris. Teie sisestatud XML- või HTML-sisu ning XPath avaldisi ei laadita BroBroGo serverisse.
Korduma kippuvad küsimused
Kas ma saan testida XPathi nii HTML-i kui ka XML-i peal?
Jah. XML-režiim järgib XML-i nimeruumi reegleid. HTML-režiim on leebem ja võimaldab lihtsatel teedel nagu //a vastata tavalistele siltidele.
Kuidas XML-i nimeruumid (namespaces) töötavad?
Teie XML-is deklareeritud nimeruumi prefikseid saab kasutada ka XPathis, näiteks //x:item. Vaikimisi nimeruumide puhul järgib ka //item dokumendi deklaratsiooni.
Miks võib päring aeguda?
Väga suurte dokumentide või laiade avaldiste hindamine võib olla ressursimahukas. Tööriist peatab käituse 2 sekundi pärast, et leht jääks reageerivaks; täpsustage teed või proovige väiksemat näidist.
Kas minu sisestatud andmed on kaitstud?
Teie XML-i, HTML-i ja XPathi testitakse otse teie brauseris. Midagi ei laadita BroBroGo serverisse.