2016-08-21 55 views
1

运行该代码XQuery的更新:插入表达的目标节点是不可更新

copy $foo := <foo /> 
modify (
    insert node <bar /> into $foo 
) 
return $foo 
在撒克逊-EE 9.6.0.7(形成氧18)

我得到错误的

目标节点插入表达是不可更新

BaseX返回<foo><bar/></foo>

谁是对的?是否有另一种方法来修改任何XML表达式,不只是由doc()(它与撒克逊工作)加载的那些?

回答

3

您需要设置选项-tree:linked以确保Saxon使用可更新树模型运行。默认的树模型是不可变的。

+0

感谢它现在的工作。 btw氧气提供了一个复选框“use linked tree model”:Preferences/XML/XSLT-FO-XQuery/XQuery/Saxon -He/PE/EE – Dill