首页 > 解决方案 > marklogic 部分更新 - 忽略 xml 属性

问题描述

我在 marklogic 数据库中将一棵树存储为一个 xml 文档,如下所示:

<tree>
 <node>
  <id></id>
  <title></title>
  <children>
    <node>...</node>
  </children>
 <node>
</tree>

我正在使用 marklogic 的 java api 来执行部分更新以更改特定节点。在更新过程中应忽略 children 属性,因为仅应更改节点的值而不更改结构。

首先,我使用replaceFragment通过 xpath 替换节点。但是传递给replaceFragment 方法的xml 不包含children 属性。结果是,通过更新删除了 children 属性。

什么是更新节点的有效方法(java 或 xquery),但忽略一个属性,在这种情况下是 children 属性?由于性能原因,我不想加载节点的子节点进行更新。

标签: javaxquerymarklogic

解决方案


推荐阅读