Home » XML » XML XQuery : Contoh XQuery – Contoh dan Kode nya

XML XQuery : Contoh XQuery – Contoh dan Kode nya

by Hanifah Nurbaeti
by Hanifah Nurbaeti

Mari pelajari beberapa XQuery dasar dengan melihat contoh.

Dokumen Contoh XML

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

“books.xml”:

<?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>

Cara Memilih Node Dari “books.xml”

Fungsi

XQuery menggunakan fungsi untuk mengekstrak data dari dokumen XML.

Fungsi doc() digunakan untuk membuka file “books.xml”:

doc("books.xml")

Path Expression

XQuery menggunakan path expression untuk menavigasi elemen dalam dokumen XML.

Path expression berikut digunakan untuk memilih semua elemen judul dalam file “books.xml”:

doc("books.xml")/bookstore/book/title

(/ bookstore memilih elemen bookstore, / book memilih semua elemen book di bawah elemen bookstore dan / title memilih semua elemen title di bawah setiap elemen book)

XQuery di atas akan mengekstrak yang berikut ini:

<title lang="en">Everyday Italian</title>
<title lang="en">Harry Potter</title>
<title lang="en">XQuery Kick Start</title>
<title lang="en">Learning XML</title>

Predikat

XQuery menggunakan predikat untuk membatasi data yang diekstrak dari dokumen XML.

Predikat berikut digunakan untuk memilih semua elemen book di bawah elemen bookstore yang memiliki elemen price dengan value kurang dari 30:

doc("books.xml")/bookstore/book[price<30]

XQuery di atas akan mengekstrak yang berikut ini:

<book category="CHILDREN">
  <title lang="en">Harry Potter</title>
  <author>J K. Rowling</author>
  <year>2005</year>
  <price>29.99</price>
</book>

You may also like