我使用的是Eclipse的XQDT和Zorba 0.9.5。我试图从FLWOR表达式中调用Zorba内部函数zorba:print(...),但它被忽略了。
具体地说,我正在做类似以下的事情
import module namespace zorba =
"http://www.zorba-xquery.com/zorba/internal-functions";
for $l in list
let $bar := <hello />
let $foo := zorba:print($bar)
return (<nothing/>)我不能单独使用print语句,因为在FLWOR表达式中不允许使用顺序语句。
你知道怎样才能让print调用正常工作吗?
发布于 2009-08-10 15:38:57
这里的问题如下:
使用flwor-expression调用zorba:print。在flwor中,您有惰性计算,因为您没有使用$foo,所以不会执行zorba:print。
所以为了执行zorba:print,你必须在你的flwor中使用$foo。
在下一个版本中,zorba将更好地支持新的XQuery Scripting Extension,然后将很容易强制执行副作用函数。
https://stackoverflow.com/questions/1161342
复制相似问题