XQIB XQuery - 尝试“让”变量时出错

时间:2012-06-09 19:53:14

标签: xquery

我的XQuery知识非常缺乏,但我正在尝试使用XQIB(浏览器中的XQuery),但即使只是设置变量错误

let $foo := "bar"

...生成错误

MXQuery output the following error during compilation:
Line 1, Column 18: err:XPST0003 Error while parsing FFLWOR Expr: 'return' expected!
let $foo := "bar"    ERROR                        
Unknown.anonymous(Unknown Source)

我查看了XQIB网站上的示例,似乎let语句始终存在于子例程中,例如警报或功能。这是否表明在XQuery中,代码必须始终存在于各种功能中,而不是独立的?

例如,他们的一个例子就是这个,当然有效:

b:alert(
    let $x := <a><b>2</b><c>4</c></a>
    return xs:string($x/b * $x/c)
)

但是,我的修改后的版本没有。

let $x := <a><b>2</b><c>4</c></a>
b:alert(
    return xs:string($x/b * $x/c)
)

后者怎么了?提前感谢您的帮助。

1 个答案:

答案 0 :(得分:3)

你的回归位置错误:

let $x := <a><b>2</b><c>4</c></a>
return
    b:alert(
        xs:string($x/b * $x/c)
    )

如果您使用某些(部分)flwor-expression,则只需returnlet启动一个,因此您需要return。由于您没有参数,因此您不需要(也不允许)在此处放置return