作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
为 Libre Office 声明命名空间的语法是什么? ,以及需要声明什么具体的命名空间?
thufir@dur:~/fods/flwor$
thufir@dur:~/fods/flwor$ basex text.xq
Stopped at /home/thufir/fods/flwor/text.xq, 3/14:
[XPST0081] No namespace declared for 'text:p'.
thufir@dur:~/fods/flwor$
thufir@dur:~/fods/flwor$ cat text.xq
for $foo in db:open("foo")
return $foo//text:p
thufir@dur:~/fods/flwor$
当然,单独返回 $foo
可以很好地返回整个文档。
我还需要将命名空间存储在本地文件中吗?或者,只是 add类似的东西:
声明命名空间 type4="http:///de/tudarmstadt/ukp/dkpro/core/api/segmentation/type.ecore";
最佳答案
您在查询中使用的每个命名空间前缀也必须在查询中声明。根据您的情况,您可以添加一行
declare namespace text="urn:oasis:names:tc:opendocument:xmlns:text:1.0";
在顶部修复您的查询。
由于命名空间前缀(在您的例子中为 text
)只是对关联命名空间 URI 的引用,因此它不必与 XML 文档中的前缀匹配。以下查询 100% 等效:
declare namespace whatever="urn:oasis:names:tc:opendocument:xmlns:text:1.0";
for $foo in db:open("foo")
return $foo//whatever:p
关于xml - 用于声明命名空间的 XQuery 语法 : [XPST0081] No namespace declared for 'text:p' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60222478/
我是一名优秀的程序员,十分优秀!