我相信以下三者在语法上是正确的;但根据惯例允许哪些(特别是在企业中)?用于在xml-schema中注释appinfo的约定?
第一个低于在大多数例子中使用我见过的(例如JAXB),但它的冗长:
<xs:annotation>
<xs:appinfo>
<myinfo>don't panic</myinfo>
</xs:appinfo>
</xs:annotation>
下面这第二个是允许的,因为任何属性都允许在<appinfo>
(不在xml模式自己的名称空间中)。它更短,而且看起来很合理 - 但它是传统吗?
<xs:annotation>
<xs:appinfo myinfo="don't panic"/>
</xs:annotation>
下面这最后一个是我最喜欢的,因为它是如此之短,并没有混淆架构。我敢肯定,这是合法的,因为像<appinfo>
,被允许上<annotation>
(命名空间再次,提供非XML架构)的任何属性。但它编码的应用程序信息没有使用<appinfo>
,所以我担心它会被折磨。可不可能是?
<xs:annotation myinfo="don't panic"/>
非常感谢您的意见!