XPath

A Wikipédiából, a szabad enciklopédiából
XPath
Paradigma lekérdező nyelv
Megjelent 1999
Fejlesztő W3C
Utolsó kiadás 2.0 (2007-01-23)
Megvalósítások C#, Java, JavaScript
Hatással volt rá XSLT, XPointer
Befolyásolt nyelvek XML Séma, XForms

Az XPath (XML Path Language) egy lekérdező nyelv csomópontok kiválasztásához valamilyen XML dokumentumból. Ezen kívül, az XPath használható még értékek kiszámításához (pl., sztringek, számok, vagy logikai értékek) valamilyen XML dokumentum tartalmából. Az XPatht a World Wide Web Consortium (W3C)[1] definiálta.

Története[szerkesztés | forrásszöveg szerkesztése]

Az XPath nyelv alapját az XML dokumentum fa reprezentációja adja, amely lehetővé teszi a fán belüli navigációt, valamint csomópontok kiválasztását különböző szempontok alapján.[2] A mindennapi használatban (bár nem a hivatalos specifikáció szerint) az XPath kifejezést gyakran egyszerűen csak XPath-ként emlegetik.

Az eredeti motiváció az volt, hogy közös szintaxist és viselkedési modellt teremtsenek az XPointer és az XSLT között. Az XPath lekérdező nyelv egyes részeit más W3C specifikációkban is felhasználták, úgymint XML Séma, XForms és az Internationalization Tag Set (ITS).

Az XPath számos XML feldolgozó könyvtár és eszköz által elfogadott, amelyek közül több a CSS-t is ajánlja, mely egy másik W3C szabvány, mint az XPath egy egyszerűbb alternatíváját.

Verziók[szerkesztés | forrásszöveg szerkesztése]

Az XPath-nak két változata van jelenleg használatban.

  • XPath 1.0 1999 november 16-án jelent meg, mint ajánlás és ekkor kezdték el széles körben implementálni és használni, akár saját magában (ún. API-n keresztül nyelvekből, úgymint Java, C#, Python vagy JavaScript), vagy beágyazva nyelvekbe, úgymint XSLT, XProc, XML Séma vagy XForms
  • XPath 2.0 a jelenlegi változata a nyelvnek; 2007 január 23-án jelent meg, mint ajánlás. Számos implementációja létezik, de nem használják olyan széles körben, mint az XPath 1.0-át. Az XPath 2.0 nyelvi specifikációja sokkal nagyobb, mint az XPath 1.0-é és változások történtek a nyelv néhány alapvető fogalmát illetően, mint például a típus rendszer.

A legjelentősebb változás az, hogy az XPath 2.0 sokkal gazdagabb típus rendszerrel rendelkezik.[3] Minden érték egy sorozat (egy szimpla atomi érték vagy csomópont egy hosszú sorozatnak tekinthető. Az XPath 1.0 csomópont készleteit csomópont sorozatok váltják, melyek bármilyen sorrendben lehetnek.

A gazdagabb típus készletek támogatására az XPath 2.0 jelentősen bővült funkciók és műveletek halmazát kínálja.

Az XPath 2.0 valójában az XQuery 1.0 egy része. Ugyanazt a lekérdezés adatmodellt használják (XDM), ami a for kifejezést kínálja, amely egy cut-down verziója a "FLWOR" XQuery kifejezésnek. Lehetséges a nyelv leírása azáltal, hogy felsoroljuk az XQuery hiányzó részeit, a fő példák: query prolog, elem és attribútum konstruktorok, a "FLWOR" szintaxis fennmaradó része, valamint a typeswitch kifejezés.

Jegyzetek[szerkesztés | forrásszöveg szerkesztése]

  1. XML és Szemantikus Web W3C Szabványok Idővonal, 2012. február 4
  2. Bergeron, Randy: XPath—Csomópontok lekérése XML Dokumentumból. SQL Server Magazine, 2000. október 31
  3. Az XPath 2.0 támogatja az atomi típusokat, XML séma által definiált beépített típusokat és sémából importálhatók felhasználó által definiált típusok is .

További információk[szerkesztés | forrásszöveg szerkesztése]

Fordítás[szerkesztés | forrásszöveg szerkesztése]

Ez a szócikk részben vagy egészben az XPath című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel.