使用属性验证模式

时间:2012-08-06 10:44:45

标签: c# xml validation xsd schema

我有以下xml:

<Root>
    <SomethingA/>
    <SomethingB/>
    <SomethingC/>
    <SomeOtherThing action="Foo">
        <Bar/>
        <Bar/>
    </SomeOtherThing>
    <SomeOtherThing action="Poo">
        <BarFoo/>
        <BarNoo/>
    </SomeOtherThing>
</Root>

我想创建一个模式,它将验证如果元素是SomeOtherThing,那么如果操作是Foo,则子元素只能是Bar;如果动作是Poo,则子元素可以是BarFoo(和/或)BarNoo。

关于如何实现的任何想法(仅使用xsd)?

此外,解决方案需要使用C#。

1 个答案:

答案 0 :(得分:0)

这种条件验证无法在XSD 1.0中完成。可以使用名为“条件类型赋值”的功能在XSD 1.1中完成。