Sintaks dasar XPath
XPath (XML Path Language) adalah bahasa yang digunakan untuk menavigasi melalui elemen dan atribut dalam dokumen XML. XPath memungkinkan Anda untuk mengekspresikan berbagai ekspresi yang dapat digunakan untuk memilih node atau sekumpulan node dalam dokumen.
1. Struktur Dasar XPath
XPath memiliki sintaks dasar yang dirancang untuk menavigasi struktur pohon dokumen XML. Berikut adalah beberapa konsep dasar dan sintaks yang digunakan dalam XPath:
1.1. Mengakses Node
/(Slash): Digunakan untuk memilih dari root node. Misalnya,/rootakan memilih noderoot.//(Double Slash): Digunakan untuk memilih node di mana pun dalam dokumen. Misalnya,//childakan memilih semua nodechilddi dalam dokumen XML.
1.2. Memilih Node Spesifik
node: Untuk memilih node dengan nama spesifik. Misalnya,/root/childakan memilih nodechilddi dalam noderoot.@attribute: Untuk memilih atribut dari node. Misalnya,/root/child/@nameakan memilih nilai atributnamedari semua nodechilddi bawahroot.
2. Penggunaan Predikat
Predikat adalah ekspresi yang digunakan untuk memfilter node yang dipilih. Predikat ditulis dalam kurung siku []. Contoh penggunaannya:
- Menetapkan indeks:
/root/child[1]akan memilih nodechildpertama dariroot. - Berdasarkan kondisi:
/root/child[@name='example']akan memilih nodechildyang memiliki atributnamedengan nilaiexample.
3. Fungsi XPath
XPath juga mendukung berbagai fungsi yang dapat digunakan di dalam ekspresi. Beberapa fungsi yang umum digunakan adalah:
count(): Menghitung jumlah node yang dipilih. Contoh:count(/root/child)menghitung jumlah nodechild.contains(): Memeriksa apakah suatu string mengandung substring tertentu. Contoh:/root/child[contains(@name, 'ex')]memilihchildyang atributname-nya mengandung 'ex'.starts-with(): Memeriksa apakah suatu string dimulai dengan substring tertentu. Contoh:/root/child[starts-with(@name, 'ex')].
4. Contoh XPath
Misalkan kita memiliki dokumen XML berikut:
<root>
<child name="example1">Content 1</child>
<child name="example2">Content 2</child>
<child name="test">Content 3</child>
</root>Berikut adalah beberapa contoh ekspresi XPath untuk memilih node dalam dokumen XML di atas:
- Semua anak di dalam root:
//child - Anak pertama:
/root/child[1] - Anak dengan atribut name 'example1':
/root/child[@name='example1'] - Anak dengan nama yang mengandung 'example':
/root/child[contains(@name, 'example')]
Kesimpulan
XPath adalah alat yang sangat kuat untuk menavigasi dan memilih node dalam dokumen XML. Dengan memahami sintaks dasar dan menggunakan predikat serta fungsi, Anda dapat mengekstrak informasi secara efektif dari struktur XML yang kompleks.