【问题标题】:How to delete Document Link Properties如何删除文档链接属性
【发布时间】:2017-11-24 23:58:14
【问题描述】:

我的文档中有一些链接属性,即使在删除该链接文档后也没有被删除。我尝试使用xdmp:document-remove-properties 删除,但“链接”属性没有被删除。我使用的命令是:

xdmp:document-remove-properties("/mydata/8632fcfa-3055-4d80-be88-fec3cfabefda.xml",
  fn:QName("http://marklogic.com/cpf/links","link")[28]) 

如何移除这些链接属性?

【问题讨论】:

  • 没有名为 xdmp:document-remove-properties 的函数。也许您的意思是 dls:document-remove-properties.. 请提供代码和属性片段的完整示例。它将为人们提供更多构建工作示例的机会。
  • 另外,您正在为链接构造一个 QName,但有一个谓词选择第 28 个项目(其中只有一个),导致调用删除任何属性。

标签: marklogic


【解决方案1】:

自从我上次详细查看 CPF 属性以来已经有一段时间了,但我希望您的链接可以包含在一个额外的元素中。该包装器将成为文档属性,并且 28 链接其子元素。

函数xdmp:document-remove-properties 确实存在,但只允许您删除整个文档属性(或多个)。它不允许您删除一个特定属性中的一个特定元素。

您可以删除它,但您需要使用 xdmp:node-delete 代替。大致如下:

xdmp:node-delete(
  xdmp:document-get-property(
    fn:QName("http://marklogic.com/cpf/links","links")
  )/link[28]
)

我还没有测试,但这应该很接近..

HTH!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-11-27
    • 2011-04-30
    • 2010-11-08
    • 2021-02-21
    • 2016-01-08
    • 2023-02-12
    • 2019-05-27
    相关资源
    最近更新 更多