maxOccurs如何与同一元素的多语言(xml:lang)版本相关?

时间:2011-06-20 14:59:26

标签: xml xsd

maxOccurs 会限制语言版本的数量吗?

我的意思是 - 确实

<xs:element ref="attachments" minOccurs="0" **maxOccurs="1"**/>

(在XML模式中),禁止:

<attachments>
   <audio>
      <sound url="http://bla.com/eng.mp3" xml:lang="eng"/>
      <sound url="http://bla.com/ger.mp3" xml:lang="ger"/>
   </audio>
[...]

顺便说一下,还有“视频”和“文档”部分(除了“音频”),所以我不确定这个模式(一个真实的例子,没有弥补!)实际上应该如何工作?

每种类型只有一个附件?但是多种语言版本可以吗?

2 个答案:

答案 0 :(得分:2)

就XSD而言,没有任何神奇的数量xml:lang;同样的规则适用于该属性被称为foobar。

请注意,您向我们显示的maxOccurs约束其父元素中“附件”元素的数量。它与“附件”元素内部或“音频”元素中出现的内容无关。

答案 1 :(得分:1)

这意味着文档中的特定点最多只有一个<attachments>元素(由于minOccurs="0"可能会更少)。它不限制元素的内容;那将在里面完成那个元素(或其类型)的定义。