Home » XML » XML XQuery : FLWOR + HTML – Code dan Contohnya

XML XQuery : FLWOR + HTML – Code dan Contohnya

by Hanifah Nurbaeti
by Hanifah Nurbaeti

Dokumen Contoh XML

Kita akan menggunakan dokumen “books.xml” pada contoh di bawah ini.

Lihat file “books.xml” di bawah ini.

Contoh :

<?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" cover="paperback">
  <title lang="en">Learning XML</title>
  <author>Erik T. Ray</author>
  <year>2003</year>
  <price>39.95</price>
</book>

</bookstore>

Output :

Hasil Dalam Daftar HTML

Lihatlah ekspresi XQuery FLWOR berikut:

for $x in doc("books.xml")/bookstore/book/title
order by $x
return $x

Ekspresi di atas akan memilih semua elemen title di bawah elemen book yang berada di bawah elemen bookstore dan mengembalikan elemen title dalam urutan abjad.

Sekarang kita akan membuat daftar semua judul book di bookstore ke dalam list HTML. Kita akan tambahkan tag <ul> dan <li> ke ekspresi FLWOR:

<ul>
{
for $x in doc("books.xml")/bookstore/book/title
order by $x
return <li>{$x}</li>
}
</ul>

Hasil di atas akan menjadi:

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

Sekarang kita akan menghilangkan elemen title dan hanya menampilkan data di dalam elemen title:

<ul>
{
for $x in doc("books.xml")/bookstore/book/title
order by $x
return <li>{data($x)}</li>
}
</ul>

Hasilnya akan menjadi (daftar HTML):

<ul>
<li>Everyday Italian</li>
<li>Harry Potter</li>
<li>Learning XML</li>
<li>XQuery Kick Start</li>
</ul>

You may also like