2009-07-21 34 views
0

我使用Eclipse的XQDT和Zorba 0.9.5。我試圖從FLWOR表達式中調用Zorba內部函數zorba:print(...),但它被忽略。Zorba(XQuery) - 使用打印功能

具體地說,我做類似如下的

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/>) 

我不能把打印語句自身,因爲連續的語句在FLWOR exressions允許的。

任何想法如何我可以讓print電話工作?

回答

0

這裏的問題是:

您使用FLWOR表達式調用左巴:打印。在flwor你有懶惰的評價,因爲你不使用$ foo,zorba:print不會被執行。

所以爲了得到zorba:print執行,你必須在你的flwor中使用$ foo。

在下一個版本的zorba中會更好地支持新的XQuery Scripting Extension,然後它將很容易強制執行副作用函數。