xsd:any 不能包含任何属性声明,因为它本质上允许在命名空间“http://xxx.yyy.com”中定义的任何元素在序列中声明。如果您没有使用单独的 XSD 来验证该命名空间,那么您可以简单地使用以下代码代替 xsd:any:
<xsd:element name="operation">
<xsd:complexType>
<xsd:attribute name="count" type="nonNegativeInteger" use="required"/>
</xsd:complexType>
</xsd:element>
否则,您将需要在 XSD 顶部为“http://xxx.yyy.com”声明名称空间前缀,并引用该架构中的元素而不是 xsd:any。因此,如果“http://xxx.yyy.com”的架构包含以下声明:
<xsd:complexType name="operationType">
<xsd:attribute name="count" type="nonNegativeInteger" use="required"/>
</xsd:complexType>
然后你可以在你的 XSD 中引用这个类型:
<xsd:element name="requests">
<xsd:complexType>
<xsd:sequence>
<xsd:element type="optype:operationType"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>