Sintaks XQuery
XQuery peka huruf besar-kecil dan elemen, atribut, dan variabel XQuery harus berupa nama XML yang valid.
Aturan Sintaks Dasar XQuery
Beberapa aturan sintaks dasar:
- XQuery peka huruf besar-kecil
- Elemen XQuery, atribut, dan variabel harus berupa nama XML yang valid
- Nilai string XQuery bisa dalam tanda kutip tunggal atau ganda
- Variabel XQuery didefinisikan dengan $ diikuti dengan nama, misalnya $bookstore
- Komentar XQuery dibatasi oleh (: dan :), misalnya (: XQuery Comment :)
Dokumen Contoh XML
Kami akan menggunakan dokumen "books.xml" dalam contoh di bawah ini (file XML yang sama seperti pada bab sebelumnya).
Lihat file "books.xml" di browser Anda .
Ekspresi Bersyarat XQuery
Ekspresi "Jika-Lalu-Lain" diizinkan di XQuery.
Lihatlah contoh berikut:
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>
Catatan tentang sintaks "if-then-else": tanda kurung di sekitar ekspresi if diperlukan. else diperlukan, tetapi bisa saja else ().
Hasil dari contoh di atas akan menjadi:
<adult>Everyday Italian</adult>
<child>Harry Potter</child>
<adult>XQuery Kick Start</adult>
<adult>Learning XML</adult>
Perbandingan XQuery
Di XQuery ada dua cara untuk membandingkan nilai.
1. Perbandingan umum: =, !=, <, <=, >, >=
2. Perbandingan nilai: eq, ne, lt, le, gt, ge
Perbedaan antara dua metode perbandingan ditunjukkan di bawah ini.
Ekspresi berikut mengembalikan nilai true jika ada atribut q yang memiliki nilai lebih besar dari 10:
$bookstore//book/@q > 10
Ekspresi berikut mengembalikan nilai true jika hanya ada satu atribut q yang dikembalikan oleh ekspresi, dan nilainya lebih besar dari 10. Jika lebih dari satu q dikembalikan, terjadi kesalahan:
$bookstore//book/@q gt 10