XML Contoh Dokumen
Kami akan menggunakan "books.xml" dokumen contoh di bawah ini (same XML file as in the previous chapters) .
Melihat "books.xml" file dalam browser Anda .
Memilih dan Penyaringan Elements
Sebagaimana telah kita lihat dalam bab-bab sebelumnya, kita memilih dan menyaring elemen dengan baik ekspresi jalan atau dengan ekspresi FLWOR.
Lihatlah ekspresi FLWOR berikut:
for $x in doc("books.xml")/bookstore/book
where $x/price>30
order by $x/title
return $x/title
- untuk - (optional) mengikat variabel untuk setiap item dikembalikan oleh ekspresi
- biarkan - (optional)
- di mana - (optional) menetapkan kriteria
- order by - (optional) menentukan jenis-urutan hasilnya
- kembali - menetapkan apa untuk kembali dalam hasil
Untuk Clause
Untuk klausul mengikat variabel untuk setiap item dikembalikan oleh ekspresi. Untuk hasil klausul dalam iterasi. Ada dapat beberapa untuk klausa dalam ekspresi FLWOR yang sama.
Untuk loop jumlah tertentu kali dalam untuk klausul, Anda dapat menggunakan to keyword:
for $x in (1 to 5)
return <test>{$x}</test>
Hasil:
<test>1</test>
<test>2</test>
<test>3</test>
<test>4</test>
<test>5</test>
The at kata kunci dapat digunakan untuk menghitung iterasi:
for $x at $i in doc("books.xml")/bookstore/book/title
return <book>{$i}. {data($x)}</book>
Hasil:
<book>1. Everyday Italian</book>
<book>2. Harry Potter</book>
<book>3. XQuery Kick Start</book>
<book>4. Learning XML</book>
Hal ini juga memungkinkan dengan lebih dari satu dalam ekspresi dalam untuk klausa. Gunakan koma untuk memisahkan masing-masing dalam ekspresi:
for $x in (10,20), $y in (100,200)
return <test>x={$x} and y={$y}</test>
Hasil:
<test>x=10 and y=100</test>
<test>x=10 and y=200</test>
<test>x=20 and y=100</test>
<test>x=20 and y=200</test>
The membiarkan Clause
The membiarkan klausa memungkinkan tugas variabel dan menghindari mengulangi ekspresi yang sama berkali-kali. The membiarkan klausul tidak menghasilkan iterasi.
let $x := (1 to 5)
return <test>{$x}</test>
Hasil:
<test>1 2 3 4 5</test>
Di mana Clause
Mana klausa digunakan untuk menentukan satu atau lebih kriteria untuk hasilnya:
where $x/price>30 and $x/price<100
Urutan oleh Clause
Urutan oleh klausa digunakan untuk menentukan urutan dari hasilnya. Di sini kita ingin memesan hasil berdasarkan kategori dan judul:
for $x in doc("books.xml")/bookstore/book
order by $x/@category, $x/title
return $x/title
Hasil:
<title lang="en">Harry Potter</title>
<title lang="en">Everyday Italian</title>
<title lang="en">Learning XML</title>
<title lang="en">XQuery Kick Start</title>
Kembalinya Clause
Klausul kembali menentukan apa yang harus dikembalikan.
for $x in doc("books.xml")/bookstore/book
return $x/title
Hasil:
<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>