Ошибка проверки XML "cvc-complex-type.2.4.a: .." - PullRequest
0 голосов
/ 25 сентября 2018

У меня есть этот xml (справа внизу): тег <property> может содержать любое количество элементов <action>, <validation>, <lov> в ЛЮБОМ ЗАКАЗЕ и СМЕШАННЫХ ВВЕРХ

<!-- ... -->
<property>
    <action>foo</action>
    <validation>bar</validation>
    <lov>baz</lov>
</property>

<property>
    <action>foo1</action>
    <validation>bar</validation>
    <action>foo2</action> 
</property>

<property>
    <action>foo1</action>
    <action>foo2</action> 
    <action>foo3</action>     
</property>

сейчасЯ создаю xsd (в Eclipse) для проверки этого xml, и я пришел с этим (используя <xsd:all>):

<!-- ... -->
<complexType name="propertyType">
    <all minOccurs="0" maxOccurs="unbounded">
        <element name="validation" type="tns:validationType" minOccurs="0" maxOccurs="unbounded"></element>
        <element name="lov" type="tns:lovType" minOccurs="0" maxOccurs="unbounded"></element>
        <element name="action" type="tns:actionType" maxOccurs="unbounded" minOccurs="0"></element>

    </all>
</complexType>

НО проверка не проходит

<!-- ... -->
<property>
    <action>foo</action>
    <validation>bar</validation>
    <lov>baz</lov>
</property>

<property>
    <action>foo1</action>
    <validation>bar</validation>
    <action>foo2</action>         <!-- ERROR !? -->
</property>

<property>
    <action>foo1</action>
    <action>foo2</action>        <!-- ERROR !? -->
    <action>foo3</action>     
</property> 

сэта ошибка

cvc-complex-type.2.4.a: Обнаружено недопустимое содержимое, начиная с элемента 'action'.Ожидается один из {{* http://www.example.org/dm":validation, "http://www.example.org/dm":lov}'.

Что мне здесь не хватает?

...