XQuery 語(yǔ)法

2018-02-24 10:33 更新

XQuery 語(yǔ)法

本節(jié)向你介紹在 XQuery 中使用的標(biāo)準(zhǔn)的語(yǔ)法規(guī)則。

XQuery 對(duì)大小寫(xiě)敏感,XQuery 的元素、屬性以及變量必須是合法的 XML 名稱(chēng)。


XQuery 的基礎(chǔ)語(yǔ)法規(guī)則:

一些基本的語(yǔ)法規(guī)則:

  • XQuery 對(duì)大小寫(xiě)敏感
  • XQuery 的元素、屬性以及變量必須是合法的 XML 名稱(chēng)。
  • XQuery 字符串值可使用單引號(hào)或雙引號(hào)。
  • XQuery 變量由 "$" 并跟隨一個(gè)名稱(chēng)來(lái)進(jìn)行定義,舉例,$bookstore
  • XQuery 注釋被 (: 和 :) 分割,例如,(: XQuery 注釋 :)

XQuery 條件表達(dá)式

"If-Then-Else" 可以在 XQuery 中使用。

請(qǐng)看下面的例子:

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>

請(qǐng)注意 "If-Then-Else" 的語(yǔ)法:if 表達(dá)式后的圓括號(hào)是必需的。else 也是必需的,不過(guò)只寫(xiě) "else ()" 也可以。

上面的例子的結(jié)果:

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


XQuery 比較

在 XQuery 中,有兩種方法來(lái)比較值。

  1. 通用比較:=, !=, <, <=, >, >=
  2. 值的比較:eq、ne、lt、le、gt、ge

這兩種比較方法的差異如下:

請(qǐng)看下面的 XQuery 表達(dá)式:

$bookstore//book/@q > 10

如果 q 屬性的值大于 10,上面的表達(dá)式的返回值為 true。

如下實(shí)例,如果僅返回一個(gè) q,且它的值大于 10,那么表達(dá)式返回 true。如果不止一個(gè) q 被返回,則會(huì)發(fā)生錯(cuò)誤:

$bookstore//book/@q gt 10

在下一節(jié)內(nèi)容中,我們將通過(guò)一個(gè)實(shí)例來(lái)學(xué)習(xí) XQuery 的基礎(chǔ)語(yǔ)法。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)