XQuery Syntax

XQuery is case-sensitive, XQuery Element, Attribute และ Variable must be valid XML Names.

Basic grammar rules of XQuery:

Some basic grammar rules:

  • XQuery มีความสำคัญต่อการประเมินในรูปຮູບ.
  • XQuery Element, Attribute และ Variable ต้องเป็น XML Name ที่ถูกต้อง.
  • XQuery String Value สามารถใช้ Quotation Marks หรือ Double Quotes.
  • XQuery Variable มีลักษณะ $ และตามด้วยชื่อ ตัวอย่าง $bookstore
  • XQuery Comment ຖ້າໂດຍ (: และ :) ซึ่งเช่น (: XQuery Comment :)

XQuery Conditional Expression

"If-Then-Else" ສາມາດນຳໃຊ້ໃນ XQuery.

ບັນທາງທີ່ຈະເບິ່ງ:

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>

ບໍ່ມີຄວາມຈິງ "If-Then-Else" ຈະຕ້ອງມີສັບສົນປະຕູທີ່ຕ້ອງການ. else ກໍ່ຕ້ອງມີສັບສົນ, ແຕ່ຍັງຈະສາມາດຂຽນ "else ()" ຄືດັ່ງກ່າວ.

ຜົນຂອງຕົວຢ່າງດັ່ງກ່າວ:

<adult>Everyday Italian</adult>
<child>Harry Potter</child>
<adult>Learning XML</adult>
<adult>XQuery Kick Start</adult>

XQuery Comparison

ໃນ XQuery ມີສອງວິທີທີ່ຈະປຽບທຽບຄູ່ມູນ.

  1. ການປຽບທຽບທົ່ວໄປ: =, !=, <, <=, >, >=
  2. ການປຽບທຽບຄູ່ມູນ: eq, ne, lt, le, gt, ge

这两种比较方法的差异如下:

请看下面的 XQuery 表达式:

$bookstore//book/@q > 10

如果 q 属性的值大于 10,上面的表达式的返回值为 true。

$bookstore//book/@q gt 10

ຖ້າກັບຄຳວ່າ q ແມ່ນພຽງຢ່າງໜຶ່ງ ແລະ ຄຳວ່າ q ມີຄຸນນະພາບຫລາຍກວ່າ 10, ຄຳປະກາດຈະກັບຄວາມຕ້ອງການ. ຖ້າມີຫລາຍຄຳວ່າ q ໄດ້ກັບຄືນ, ຈະເກີດຂໍ້ບັນຫາ.