2010-11-08 123 views
0

這可能看起來像一個愚蠢的問題,但我一直在谷歌搜索十五分鐘,似乎無法找到我在找什麼。我確定一個特定集合中的所有節點是否對給定的謂詞返回真。例如,如果我有一組整數節點,我可能想知道它們是否都大於5.這似乎很簡單,但我似乎無法找到要使用的關鍵字或函數。Xquery所有功能

謝謝。

回答

4

這些被稱爲量化表達式。從http://www.w3.org/TR/xpath20/#id-quantified-expressions

量化表達式支持 存在和通用 量化。量化表達式的值始終爲真 或false。

QuantifiedExpr ::= ("some" | "every") "$" VarName "in" ExprSingle ("," "$" VarName "in" ExprSingle)* "satisfies" ExprSingle

該XQuery表達式:

every $num in /test/num/number() satisfies $num gt 5 

利用該輸入:

<test> 
    <num>3</num> 
    <num>4</num> 
    <num>5</num> 
</test> 

結果:

false 

注意:XQuery 1.0是XPath 2.0的超集

+0

這正是我所需要的。謝謝。 – LandonSchropp 2010-11-09 02:05:23

+0

@ helixed:你好。 – 2010-11-09 12:20:00