除了封闭表达式中的注释外,我是否还需要一个空序列()



试图使用氧气编辑器来评论元素氧气内部的节点,然后将其包裹在(:<foo>foo 1</foo>:)中,但是我发现该节点没有被评论,但是与(:的文本节点相当前缀,并用:)的文本节点后缀。

然后我查找了语法,发现您需要使用封闭的表达式{(:<foo>foo 1</foo>:)}而不是访问评论语法。

但是,虽然Basex和Saxon 9.8愉快地接受{(:<foo>foo 1</foo>:)},但Altova抱怨并需要一个空的空序列{(:<foo>foo 1</foo>:)()}

https://www.w3.org/tr/xquery-31/#doc-xquery31-cenlosedexpr在XQUERY 3.1中建议使用卷曲支架内部的表达式是可选的,并且默认为()

这也意味着在Xquery 3.1中,简单地使用卷曲括号内的注释,而没有空序列?

因此,总而言之,撒克逊人和基本允许我使用<root>{(:<foo>foo 1</foo>:)}</root>,而Altova抱怨语法不正确,迫使我使用<root>{(:<foo>foo 1</foo>:)()}</root>

在Xquery 3.1?

中仍然需要

听起来像是他们的评论者中的一个错误,这在Xquery编辑中很常见。在元素中 - 并假设您使用的是直接元素构造函数,而不是计算的元素构造函数 - 使用XML注释:

<hello>world
  <!-- Don't print me -->
</hello>

计算的元素构造函数仍然使用Xquery注释:

element hello {
  'world' (: Don't print me :)
}

相关内容

  • 没有找到相关文章

最新更新