RelaxNG Schema验证有两种选择和交错

时间:2016-09-09 19:44:53

标签: xml validation xml-validation relaxng

嗨,我有这样的RelaxNG架构。

<element xmlns="http://relaxng.org/ns/structure/1.0" name="museum">
<interleave>
    <choice> 
        <element name="group1"><empty/></element> 
        <group>
            <interleave> 
                <element name="group1.member1"><empty/></element>
                <element name="group1.member2"><empty/></element> 
            </interleave> 
        </group> 
    </choice> 
    <choice> 
        <element name="group2"><empty/></element> 
        <group> 
            <interleave> 
                <element name="group2.member1"><empty/></element>
                <element name="group2.member2"><empty/></element> 
            </interleave> 
        </group> 
    </choice> 
</interleave>
</element>

我正在尝试验证以下架构,我收到错误。

  

期待一个元素group2.member2,什么都没有

我相信这是交错错误。我想以任何顺序交错group1.member1,group1.member2,group2.member1和group2.member2。请不要在Compact RelaxNG中提供答案。出于某种原因,我不能使用紧凑的。任何帮助表示赞赏。

<museum>
    <group1.member1/>
    <group2.member1/>
    <group1.member2/>
    <group2.member2/> 
</museum> 

0 个答案:

没有答案