试图使用氧气编辑器来评论元素氧气内部的节点,然后将其包裹在(:<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 :)
}