XQuery menambah elemen dan atribut
dokumen contoh XML
Kami akan terus menggunakan dokumen "books.xml" ini dalam contoh berikut (fail XML yang sama digunakan dalam bab di atas).
Lihat fail "books.xml" dalam penyemak imbas anda.
Tambah elemen dan atribut pada hasil
Seperti yang dilihat dalam bahagian sebelumnya, kita boleh merujuk elemen dan atribut daripada fail input dalam hasil:
pesanan dengan $x
kembali $x
Ungkapan XQuery di atas Formula akan merujuk elemen tajuk dan atribut lang dalam hasil carian, seperti ini:
<title lang=" en ">Harry Potter</title>
<title lang="en">Pembelajaran XML</title>
<title lang="en">XQuery Kick Start</title>
Ungkapan XQuery di atas mengembalikan elemen tajuk dengan cara yang sama seperti yang diterangkan dalam dokumen input.
Kini kami mahu menambah elemen dan atribut kami sendiri pada hasilnya!
Tambah elemen HTML dan teks
Sekarang, kami akan menambah elemen HTML pada hasil carian. Kami akan meletakkan keputusan dalam senarai HTML:
<body>
<h1>Kedai Buku</h1>
<ul>
{
untuk $x dalam doc("books.xml")/kedai buku/buku
pesanan mengikut $x/title
kembali <li>{data($ x/title)}. Kategori: {data($x/@category)}</li>
}
</ul>
</body>
< ;/html>
Ungkapan XQuery di atas akan menjana hasil berikut:
<body>
< ;h1>Kedai buku</h1>
<ul>
<li>Kategori Setiap Hari: MEMASAK</li>
<li>Harry Potter>C. li>
<li>Kategori XML: WEB</li>
<li>
</html>
Menambah atribut pada elemen HTML
Seterusnya, kita perlu menggunakan atribut kategori sebagai atribut kelas dalam senarai HTML:
< badan>
<h1>Kedai buku</h1>
<ul>
{
untuk $x dalam doc("books.xml")/kedai buku/buku
pesanan mengikut $x/title
kembali <li class="{data($x/@category)}">{data($x/title)}</li>
}
</ul>
</body>
</html>
Ungkapan XQuery di atas menghasilkan keputusan berikut:
<body>
<h1>Kedai Buku</h1>
<ul>
<li class="MEMASAK"> ; Bahasa Itali setiap hari</li>
<li class="CHILDREN">Harry Potter</li>
<li class="WEB">Pembelajaran XML</li>
< class="WEB">XQuery Kick Start</li>
</ul>
</body> >