0

有什么方法可以更新根元素名称,但子元素的值应该使用 Xpath java 相同?例如

    <root>
     <child1>value</child1>
     <child2>value2</child2>
    </root>

    <newRoot>
     <child1>value</child1>
     <child2>value2</child2>
    </newRoot>
4

1 回答 1

0

XPath 只能选择完整的子树,不能修改它们。如果你需要改变元素,要么

  • 使用 XPath 选择子元素和其他 API(如 DOM)来修改它们。例如,您可以选择使用的节点/root,然后应用一些函数来重命名它。
  • 使用 XQuery,它是 XPath 的超集,能够使用其 XQuery Update 扩展修改文档。有一堆使用 Java API 的 XQuery 实现,例如 Saxon、BaseX、Sedna,... 用于此的 XQuery 更新语句将是rename node /root as 'newRoot'.
于 2013-10-21T22:38:20.583 回答