XQuery Add Elements and Attributes

ເອກະສານຄົນນຳ XML

ພວກເຮົາຈະສືບຕໍ່ໃຊ້ເອກະສານ "books.xml" ໃນຄັ້ງຕໍ່ໄປ (ແລະເອກະສານ XML ທີ່ໃຊ້ໃນຫນັງຄັ້ງກ່ອນໜ້ານີ້ໄດ້ຮັບການໃຊ້ຄືກັນ).

ກວດກາເອກະສານ "books.xml" ໃນບູສເຕີ້ຂອງທ່ານ

ສະເໜີບັນດາບັນດາວັດສະດຸແລະປະສານໃຫ້ຜົນ

ຄືກັບທີ່ພົບໃນການອອກອາກາດກ່ອນໜ້ານີ້,ພວກເຮົາສາມາດຫຼົງຄວາມສະມາພັນຂອງບັນດາບັນດາວັດສະດຸແລະປະສານຂອງບັນດາເອກະສານຂັບເຂົ້າໃນຜົນທີ່ຈະມາໄດ້:

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

XQuery expression ທີ່ພົບ title element ແລະ attribute lang ໃນ result ຈະຖືກອ້າງອີງເຊັ່ນນັ້ນ:

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

XQuery expression ທີ່ກູ້ຄືນ title element ແລະ ບັນດາ attribute ທີ່ພົບໃນ document ຈະຕາມຕົວຢ່າງດຽວກັນ:

ຕອນນີ້ພວກເຮົາຈະໃຊ້ເພີ່ມ element ແລະ attribute ສຳລັບຜົນລັບຂອງພວກເຮົາ!

ເພີ່ມ element ແລະ text

ຕອນນີ້,ພວກເຮົາຈະໃຊ້ເພີ່ມ element ແລະ attribute ສຳລັບຜົນລັບ:

<html>
<body>
<h1>Bookstore</h1>
<ul>
{
for $x in doc("books.xml")/bookstore/book
order by $x/title
return <li>{data($x/title)}. Category: {data($x/@category)}</li>
}
</ul>
</body>
</html>

XQuery expression ທີ່ກ່າວຂື້ນຈະສ້າງຜົນດັ່ງກ່າວນີ້:

<html>
<body>
<h1>Bookstore</h1>
<ul>
<li>Everyday Italian. Category: COOKING</li>
<li>Harry Potter. Category: CHILDREN</li>
<li>Learning XML. Category: WEB</li>
<li>XQuery Kick Start. Category: WEB</li>
</ul>
</body>
</html>

ເພີ່ມປະເພາະ attribute ໃຫ້ HTML element

ຫຼັງຈາກນັ້ນ,ພວກເຮົາຈະໃຊ້ປະກອບປະເພາະ category ໃຫ້ເປັນ class attribute ໃນລາຍການ HTML:

<html>
<body>
<h1>Bookstore</h1>
<ul>
{
for $x in doc("books.xml")/bookstore/book
order by $x/title
return <li class="{data($x/@category)}">{data($x/title)}</li>
}
</ul>
</body>
</html>

ຄຳສັ່ງ XQuery ທີ່ພົບມາຈະສ້າງຜົນດັ່ງກ່າວນີ້:

<html>
<body>
<h1>Bookstore</h1>
<ul>
<li class="COOKING">Everyday Italian</li>
<li class="CHILDREN">Harry Potter</li>
<li class="WEB">Learning XML</li>
<li class="WEB">XQuery Kick Start</li>
</ul>
</body>
</html>