Patakaran ng XQuery

Ang XQuery ay may pagkakabisa sa kapit-bayan, ang mga elemento, attribute at variable ng XQuery ay dapat maging legal na pangalan sa XML.

Ang pangunahing patakaran ng gramatika ng XQuery:

Ilang pangunahing patakaran ng gramatika:

  • Ang XQuery ay may pagkakabisa sa kapit-bayan.
  • Ang mga elemento, attribute at variable ng XQuery ay dapat maging legal na pangalan sa XML.
  • Ang mga string value ng XQuery ay puwedeng gamitin ang isang patlang o dalawang patlang.
  • Ang mga variable ng XQuery ay inilalarawan ng "$" at sinundan ng isang pangalan, halimbawa, $bookstore
  • Ang mga komento ng XQuery ay hinahati ng (: at :), halimbawa, (: XQuery komento :)

XQuery conditional expression

"If-Then-Else" ay puwedeng gamitin sa XQuery.

Tingnan ang sumusunod na halimbawa:

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>

Isipin na ang "If-Then-Else" ay may kailangang pangungusap: ang patlang sa likod ng if ay kinakailangan. Ang else ay kinakailangan din, ngunit maaari ring isulat na "else ()".

Ang resulta ng itaas na halimbawa:

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

Pagkakapareho ng XQuery

May dalawang paraan sa XQuery upang magparehersya ng halaga.

  1. Pangkalahatang pagkakapareho: =, !=, <, <=, >, >=
  2. Pagkakapareho ng halaga: eq, ne, lt, le, gt, ge

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

请看下面的 XQuery 表达式:

$bookstore//book/@q > 10

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

$bookstore//book/@q gt 10

如果仅返回一个 q,且它的值大于 10,那么表达式返回 true。如果不止一个 q 被返回,则会发生错误。