2011-10-12 36 views

回答

0

一般來說,你不能這樣做,因爲你將有一個非確定性模型。

例如,你不能像的序列組:

<xs:sequence> 
    <!-- X is the element that may appear anywhere --> 
    <xs:element name="X" minOccurs="0"/> 
    <xs:element name="Y" minOccurs="0" maxOccurs="5"/> 
    <xs:element name="X" minOccurs="0"/> 
</xs:sequence> 

在上文中,元素X的發生可以驗證對X的第一或第二個聲明這違反了「唯一粒子屬性」 (UPA)要求。

這可能是沒有模式可以精確識別您想要的語言。或者,如果你能找到避免違反UPA的方法,也許你的特定語言可以適應。例如,如果上面的Y不是可選的(如果minOccurs已經等於maxOccurs),那麼UPA就不會被違反。

+0

雖然請注意,即使我的例子不允許X遍地,例如在Y的發生之間。 – Kevin

相關問題