XQuery 语法规则
-
定义和使用
XQuery 区分大小写,并且XQuery元素的属性和变量必须是有效的XML名称。一些基本的语法规则:- XQuery 区分大小写
- XQuery 元素,属性和变量必须是有效的XML名称
- XQuery 字符串值可以用单引号或双引号引起来
- XQuery 变量使用 $ 定义,后跟一个名称,例如 $bookstore
- XQuery 注释由(:和:)分隔,例如 (:XQuery评论:)
-
示例
在下面的示例中,我们将使用 “books.xml” 文档(与前几章相同的XML文件)。XQuery 中允许使用 "If-Then-Else" 表达式。看下面的例子: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" 语法的注释:需在if表达式两边加上括号。 其他是必需的,但也可以是其他()。上面示例的结果将是:<adult>Everyday Italian</adult> <child>Harry Potter</child> <adult>XQuery Kick Start</adult> <adult>Learning XML</adult>
-
XQuery 比较
在 XQuery 中,有两种比较值的方法。1.常规比较:=,!=,<,<=,>,>=2.值比较:eq,ne,lt,le,gt,ge两种比较方法之间的差异如下所示。如果任何 q 属性的值大于10,则以下表达式返回 true:$bookstore//book/@q > 10
如果该表达式仅返回一个 q 属性,并且其值大于10,则以下表达式返回true。如果返回多个q,则会发生错误:$bookstore//book/@q gt 10