xdmp:document-load为格式错误的html文档抛出XDMP-DOCDUPATTR,即使是repair = full

时间:2014-08-28 14:49:28

标签: xquery marklogic

我用这个表达式加载一个html文档:

xdmp:document-load("http://example.com/index.html",
  <options xmlns="xdmp:document-load" xmlns:http="xdmp:http">
    <uri>/documents/content.xml</uri>
    <repair>full</repair>
    <format>xml</format>
</options>

repair full选项适用于未关闭的代码。但其中一个标记有两个具有相同名称的属性,这会导致错误XDMP-DOCDUPATTR

有没有办法避免这个错误?

2 个答案:

答案 0 :(得分:4)

你可以尝试将文档作为文本然后应用整洁 - 在最后有一个例子:

http://docs.marklogic.com/xdmp:tidy

希望有帮助

答案 1 :(得分:1)

您还可以将HTML文档作为纯文本加载:<format>text</format>而不是<format>xml</format>。该文档将是单个文本节点。将保留所有HTML,但不会有XML结构,因此XPath不会有用。