XML模式内容模型A for"除名称空间B"?

时间:2017-07-13 11:49:47

标签: xml xsd wildcard xsd-validation

有没有办法限制xsd:any,只排除特定的命名空间?

这样的事情:

complexType name="A">
<xs:sequence>
<xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax" namespace="##other"/>    
<!-- Somehow exclude all elements with names starting "B:" -->
</xs:sequence>
</xs:complexType>

符合此类型的XML将是例如。

<A>
<anything:whatever>
</anything:whatever>
</A>

但永远不会:

<A>
<anything:whatever>
</anything:whatever>
<B:ad>INVALID</B:ad>
</A>

有没有相同的方法来做到这一点?

我只对XSD V1.0验证感兴趣。

1 个答案:

答案 0 :(得分:0)

不,这不能在XSD 1.0中完成。

XSD 1.1添加了xs:any/@notNamespace属性以满足此要求。