Aturan Bahasa XQuery

XQuery sensitif terhadap huruf besar dan kecil, elemen, atribut, dan variabel XQuery harus menjadi nama XML yang sah.

Aturan sintaks dasar XQuery:

Beberapa aturan sintaks yang dasar:

  • XQuery sensitif terhadap huruf besar dan kecil
  • Elemen, atribut, dan variabel XQuery harus menjadi nama XML yang sah.
  • Nilai string XQuery dapat menggunakan kutip tunggal atau ganda.
  • Variabel XQuery ditandai dengan "$" diikuti dengan nama, contohnya, $bookstore
  • Komentar XQuery dipisahkan oleh (: dan :), misalnya, (: Komentar XQuery :)

Ekspresi kondisional XQuery

"If-Then-Else" dapat digunakan dalam XQuery.

Lihat contoh di bawah ini:

for $x in doc("books.xml")/bookstore/book
return	if ($x/@category="CHILDREN")
	then <child>{data($x/title)}</child>
	else <adult>{data($x/title)}</adult>

Harap dicatat bahwa "If-Then-Else" memerlukan tanda kurung setelah ekspresi if. else juga wajib, tetapi dapat ditulis "else ()" saja.

Hasil contoh di atas:

<adult>Everyday Italian</adult>
<child>Harry Potter</child>
<adult>Learning XML</adult>
<adult>XQuery Kick Start</adult>

Pembandingan XQuery

Dalam XQuery, ada dua metode untuk membandingkan nilai.

  1. Pembandingan umum: =, !=, <, <=, >, >=
  2. Pembandingan nilai: eq, ne, lt, le, gt, ge

Perbedaan antara kedua metode perbandingan ini adalah seperti berikut:

Lihat ekspresi XQuery di bawah ini:

$bookstore//book/@q > 10

Jika nilai atribut q lebih besar dari 10, nilai kembalian ekspresi di atas adalah true.

$bookstore//book/@q gt 10

Jika hanya mengembalikan satu q, dan nilai nya lebih besar dari 10, ekspresi mengembalikan nilai true. Jika lebih dari satu q yang dikembalikan, akan terjadi kesalahan.