Home » XML » XML Xpath: Syntax – Penggunaan dan Contohnya

XML Xpath: Syntax – Penggunaan dan Contohnya

by Hanifah Nurbaeti
by Hanifah Nurbaeti

XPath menggunakan path exspresion untuk memilih node atau kumpulan node dalam dokumen XML. Node dipilih dengan mengikuti jalur atau langkah.

Contoh Dokumen XML

Kita akan gunakan dokumen XML berikut dalam contoh di bawah ini.

<?xml version="1.0" encoding="UTF-8"?>

<bookstore>

<book>
  <title lang="en">Harry Potter</title>
  <price>29.99</price>
</book>

<book>
  <title lang="en">Learning XML</title>
  <price>39.95</price>
</book>

</bookstore>

Memilih Node

XPath menggunakan path exspression untuk memilih node dalam dokumen XML. Node dipilih dengan mengikuti jalur atau langkah. Berikut ini ada beberapa path expression :

ExpressionDeskripsi
nodenameMemilih semua node dengan nama “nodename”
/Memilih dari root node
//Memilih node dalam dokumen dari node saat ini yang cocok dengan pilihan di mana pun mereka berada
.Memilih current node
..Memilih parent node dari current node
@Memilih atribut

Pada tabel di bawah ini ada beberapa path ekspresi dan hasil ekspresi:

Path ExpressionHasil
bookstoreMemilih semua node dengan nama “bookstore”
/bookstoreMemilih root elemen bookstore
Catatan: Jika jalur dimulai dengan garis miring (/), jalur ini selalu mewakili jalur absolut ke sebuah elemen!
bookstore/bookMemilih semua elemen book yang merupakan anak-anak bookstore
//bookMemilih semua elemen book di mana pun mereka berada dalam dokumen
bookstore//bookMemilih semua elemen book yang merupakan descendants dari elemen bookstore, di mana pun elemen tersebut berada di bawah elemen bookstore
//@langMemilih semua atribut yang diberi nama lang

Predikat

Predikat digunakan untuk mencari node tertentu atau node yang mengandung nilai tertentu.

Predikat selalu disematkan dalam tanda kurung siku.

Dalam tabel di bawah ini ada beberapa path expression dengan predikat dan hasil ekspresi:

Path ExpressionHasil
/bookstore/book[1]Memilih elemen book pertama yang merupakan children dari elemen bookstore.
Catatan: Di IE 5,6,7,8,9 node pertama adalah [0], tetapi menurut W3C,adalah [1]. Untuk mengatasi masalah ini di IE, setel SelectionLanguage ke XPath: Dalam JavaScript: xml.setProperty (“SelectionLanguage”, “XPath”);
/bookstore/book[last()]Memilih elemen book terakhir yang merupakan children dari elemen bookstore
/bookstore/book[last()-1]Memilih elemen book terakhir tapi satu yang merupakan children dari elemen bookstore
/bookstore/book[position()<3]Memilih dua elemen book pertama yang merupakan descendants(turunan) dari elemen bookstore
//title[@lang]Memilih semua elemen title yang memiliki atribut bernama lang
//title[@lang=’en’]Memilih semua elemen title yang memiliki atribut “lang” dengan nilai “en”
/bookstore/book[price>35.00]Memilih semua elemen book dari elemen bookstore yang memiliki elemen price dengan nilai lebih dari 35.00
/bookstore/book[price>35.00]/titleMemilih semua elemen title elemen book dari elemen bookstore yang memiliki elemen price dengan nilai lebih dari 35,00

Memilih Node Tidak Dikenal

Kartu bebas XPath dapat digunakan untuk memilih node XML yang tidak dikenal.

WildcardDeskripsi
*Cocok dengan node elemen apa pun
@*Cocok dengan semua node atribut
node()Cocok dengan semua jenis node

Pada tabel di bawah ini ada beberapa path exspression dan hasil ekspresi:

Path ExpressionHasil
/bookstore/*Memilih semua child elemen node dari elemen bookstore
//*Memilih semua elemen dalam dokumen
//title[@*]Memilih semua elemen titile yang memiliki setidaknya satu atribut apa pun

Memilih Beberapa Jalur(Paths)

Dengan menggunakan | operator dalam ekspresi XPath kita bisa memilih beberapa jalur.

Pada tabel di bawah ini ada beberapa path expression dan hasil ekspresi:

Path ExpressionHasil
//book/title | //book/priceMemilih semua title DAN elemen price dari semua elemen book
//title | //priceMemilih semua title DAN elemen price dalam dokumen
/bookstore/book/title | //priceMemilih semua elemen title elemen book dari elemen bookstore DAN semua elemen price dalam dokumen

You may also like