XML XPath


ULASHISH

XPath nima?

XPath — XSLT standartining asosiy tarkibiy qismi.

XPath’dan XML hujjatdagi elementlar va atributlar bo‘ylab harakatlanish uchun foydalanish mumkin.


XPath
  • XPath — XML hujjat qismlarini aniqlash uchun sintaksis
  • XPath XML hujjatlarda harakatlanish uchun yo‘l ifodalaridan (path expressions) foydalanadi
  • XPath standart funksiyalar kutubxonasini o‘z ichiga oladi
  • XPath — XSLT va XQuery’ning asosiy tarkibiy qismi
  • XPath — W3C tavsiyasi

XPath yo‘l ifodalari

XPath XML hujjatdagi tugunlarni (node) yoki tugunlar to‘plamini (node-set) tanlash uchun yo‘l ifodalaridan foydalanadi. Bu yo‘l ifodalari an’anaviy kompyuter fayl tizimi bilan ishlaganda ko‘radigan ifodalaringizga juda o‘xshaydi.

XPath ifodalaridan JavaScript, Java, XML Schema, PHP, Python, C va C++ hamda boshqa ko‘plab tillarda foydalanish mumkin.


XPath XSLT’da ishlatiladi

XPath — XSLT standartining asosiy tarkibiy qismi.

XPath bo‘yicha bilimga ega bo‘lsangiz, XSL imkoniyatlaridan to‘liq foydalana olasiz.



XPath misoli

Biz quyidagi XML hujjatdan foydalanamiz:

<?xml version="1.0" encoding="UTF-8"?> <bookstore> <book category="cooking">   <title lang="en">Everyday Italian</title>   <author>Giada De Laurentiis</author>   <year>2005</year>   <price>30.00</price> </book> <book category="children">   <title lang="en">Harry Potter</title>   <author>J K. Rowling</author>   <year>2005</year>   <price>29.99</price> </book> <book category="web">   <title lang="en">XQuery Kick Start</title>   <author>James McGovern</author>   <author>Per Bothner</author>   <author>Kurt Cagle</author>   <author>James Linn</author>   <author>Vaidyanathan Nagarajan</author>   <year>2003</year>   <price>49.99</price> </book> <book category="web">   <title lang="en">Learning XML</title>   <author>Erik T. Ray</author>   <year>2003</year>   <price>39.95</price> </book> </bookstore>

Quyidagi jadvalda ba’zi XPath ifodalari va ularning natijalarini keltirdik:

XPath ifodasi Natija
/bookstore/book[1] bookstore elementining bolasi bo‘lgan birinchi book elementini tanlaydi
/bookstore/book[last()] bookstore elementining bolasi bo‘lgan oxirgi book elementini tanlaydi
/bookstore/book[last()-1] bookstore elementining bolasi bo‘lgan oxiridan bitta oldingi book elementini tanlaydi
/bookstore/book[position()<3] bookstore elementining bolalari bo‘lgan dastlabki ikkita book elementini tanlaydi
//title[@lang] lang nomli atributga ega barcha title elementlarini tanlaydi
//title[@lang='en'] Qiymati "en" bo‘lgan "lang" atributiga ega barcha title elementlarini tanlaydi
/bookstore/book[price>35.00] bookstore elementining qiymati 35.00 dan katta bo‘lgan price elementiga ega barcha book elementlarini tanlaydi
/bookstore/book[price>35.00]/title bookstore elementining qiymati 35.00 dan katta bo‘lgan price elementiga ega book elementlaridagi barcha title elementlarini tanlaydi

XPath darsligi

XPath haqida bizning XPath darsligimizda ancha ko‘proq narsalarni o‘rganasiz.


W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!