2
允許元素的任意順序我有一個RelaxNG模式,它看起來非常像這樣:在RelaxNG模式
<grammar xmlns="http://relaxng.org/ns/structure/1.0">
<start>
<element name="xml">
<zeroOrMore>
<element name="multi">
<data type="string"/>
</element>
</zeroOrMore>
<optional>
<element name="optional">
<data type="string"/>
</element>
</optional>
</element>
</start>
</grammar>
我想允許0-N multi
標籤,但0-1 optional
。只要能正常工作的複合音色來之前可選的,但由於relative order matters in RNG,它失敗,如果他們來了之後:
有效期:
<xml>
<optional/>
</xml>
<xml>
<multi/>
<multi/>
<optional/>
</xml>
無效:
<xml>
<optional/>
<multi/>
<multi/>
</xml>
所以,我怎麼能允許任意順序但保留約束?我嘗試在<zeroOrMore><choice>
塊中包裝整個事物,並允許任意順序,但也允許任意數量的可選標記通過。
輝煌,謝謝! – jpatokal