我正在查看 XMLSchema * .xsd 文件,并查看如下表单:
<xs:element name="shortName" type="vr:ShortName" minOccurs="0">
<xs:annotation>
<xs:documentation>
blah blah blah ...
</xs:documentation>
<xs:documentation>
blah blah blah ...
</xs:documentation>
<xs:documentation>
blah blah blah ...
</xs:documentation>
</xs:annotation>
</xs:element>
即 xs:annotation 元素中的 xs:documentation 元素。
我不知道我应该将这种形式赋予什么样的含义,或者与单个 xs:documentation 元素有什么不同。据推测,一个工具可能会将不同的文档元素呈现为单独的段落,但不是那种混淆的逻辑结构的混合表示逻辑吗?
答案 0 :(得分:3)
在同一xs:documentation
内有多个xs:annotation
元素是有效的。当存在多种语言的文档时,使用多个元素是有意义的:
<xs:element name="shortName" type="vr:ShortName" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="en">
This is the documentatin in English ...
</xs:documentation>
<xs:documentation xml:lang="it">
Questa e' la documentazione in italiano ...
</xs:documentation>
</xs:annotation>
</xs:element>
您还可以在工具中自动生成的XSD中看到多个xs:documentation
元素。其背后的典型原因是该工具捕获不同级别的用户信息,并且出于在生成模式组件及其注释时碰巧合并的不同原因。然后,至少对于工具实现者来说,使用不同的标记来维护内容分离是有意义的。
另一个原因可能是相同的XSD用于为不同的形状因子生成UI,因此当使用注释时,不同的属性相关文档有助于区分使用哪个。
xs:documentation
元素可以包含任意XML,而不仅仅是文本。这意味着通常在xs:documentation
节点内部使用一些标记来呈现文档的格式化 - 例如使用<p>...</p>
标记段落。
[根据Petru Gardea在评论中提供的信息更新/改进]