我必须创建和XSD,我必须允许/禁止某些属性组合。
在Code Down中,应该允许第一个“东西”。
第二个“东西”应该被禁止,因为它不匹配我的模板(但它可能是任何东西,它不是特别booooforbidden)但我还必须允许多个可能的属性值。
第三件事是禁止的,因为标题是不允许的。
现在超级棘手的部分:在第4个“事物”中,标题被禁止,但它是一个例外。通常情况下,具有该标题的所有内容都将被禁止,但应该允许该标题。 有没有人知道如何做到这一点?我真是太棒了,谢谢你
<thing title="jack_theRipper">
<something value1="imallowed" value2="boooo"/>
</thing>
<thing title="jack_theRipper">
<something value1="imallowed" value2="booooforbidden"/>
</thing>
<thing title="jack_theRipperforbidden">
<something value1="imtext" value2="boooo"/>
</thing>
<thing title="jack_theRipperforbidden">
<something value1="imtextallowed" value2="boooo"/>
</thing>
黑名单不起作用,因为它可能是任何作为值插入的内容,我只需要允许一些组合
答案 0 :(得分:0)
单个XSD组件值
单个组件值的白名单(允许的值的规范)是在XSD中表达数据类型约束的常规方法。对于字符串,通常使用枚举。
单个值的黑名单(不允许值的规范)功能在XSD 1.0中受到限制,但可以通过XSD 1.1中的断言来完成。
XSD组件值的组合
组件值的白名单或黑名单需要XSD 1.1的断言。