xml - 如何在 Marklogic 中为 Element 声明命名空间?

标签 xml namespaces xquery element marklogic

我想为一个元素声明命名空间。我正在尝试如下-

declare namespace abc="http://marklogic.com/somenamespace";
let $link := "anylink"
let $Content := <content>content</content>
let $result := element abc:data  { 
element headers{},
element root {
  element {"element"}{
            attribute link {$link},
            $Content
          }
     }
}
return $result

我得到的输出 -
<abc:data xmlns:abc="http://marklogic.com/somenamespace">
<headers>
------
---------
--------
</abc:data>

我不想在我的数据节点中出现“abc:”。我想要它喜欢-
<data xmlns="http://marklogic.com/somenamespace">

有什么建议 ?

最佳答案

这应该工作

declare default element namespace "http://marklogic.com/somenamespace";
let $link := "anylink"
let $Content := <content>content</content>
let $result := element data  { 
element headers{},
element root {
element {"element"}{
        attribute link {$link},
        $Content
      }
 }
}
return $result

关于xml - 如何在 Marklogic 中为 Element 声明命名空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50943406/

相关文章:

ios - 如何使用 swift 创建文字 XML 字符串

java - Java 中的 JAXB 解码问题

PHP命名空间函数冲突

xpath - XQuery 在 baseX 中返回错误

xslt - 如何使用 xQuery

android - GridView 中网格的填充

javascript - 使用 AJAX 上传 XML 文件

c# - 如何访问同一命名空间中的静态类但另一个程序集?

c# - 将 Xml 元素添加到文档时出现命名空间问题

xquery - 在什么时候加载变量?