2010-11-08 5 views
0

Cela va probablement sembler une question stupide, mais j'ai été google pendant quinze minutes et n'arrive pas à trouver ce que je cherche. I pour déterminer si tous les nœuds dans un ensemble particulier retournent vrai pour un prédicat donné. Par exemple, si j'ai un ensemble de nœuds entiers, je pourrais vouloir savoir si tous sont supérieurs à 5. Cela semble assez simple, mais je n'arrive pas à trouver un mot-clé ou une fonction à utiliser.Xquery Toutes les fonctions

Merci.

Répondre

4

Elles sont appelées Expressions Quantifiées. De http://www.w3.org/TR/xpath20/#id-quantified-expressions

expressions quantifiées soutiennent la quantification existentielle et universelle. La valeur d'une expression quantifiée est toujours vraie ou false.

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

Cette expression XQuery:

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

Avec cette entrée:

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

Résultat:

false 

Remarque: XQuery 1.0 est un sur-ensemble de XPath 2.0

+0

C'est exactement ce dont j'avais besoin. Merci. – LandonSchropp

+0

@helixed: Vous êtes bienvenu. –

Questions connexes