我有一棵树作为一个xml文档存储在marklogic数据库中,如下所示:
<tree>
<node>
<id></id>
<title></title>
<children>
<node>...</node>
</children>
<node>
</tree>
我正在使用marklogic的Java API执行部分更新以更改特定节点。在更新过程中应忽略children属性,因为仅应更改节点的值,而不应更改结构。
首先,我使用replaceFragment通过xpath替换节点。但是传递给replaceFragment方法的xml不包含children属性。结果是,通过更新删除了children属性。
什么是更新节点但忽略一个属性(在本例中为children属性)的有效方法(java或xquery)?由于性能原因,我不想为更新加载节点的子级。