XSD:在扩展名的情况下带有##其他命名空间的通配符的引用名称空间

时间:2012-01-12 11:11:45

标签: xsd

我有一个带有目标命名空间“ns1”的XSD架构,它定义了以下类型:

<xs:complexType name="type1">
  <xs:sequence>
    <any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
  </xs:sequence>
</xs:complexType>

现在,另一个目标命名空间为“ns2”的XSD架构使用此类型:

<xs:complexType name="type2">
  <xs:complexContent>
    <xs:extension base="ns1:type1"/>
  </xs:complexContent>
</xs:complexType>

##other被定义为“来自名称空间的任何格式良好的XML,而不是所定义类型的目标名称空间(不允许使用非限定元素)”(see)。

“type2”中的<any>通配符(继承自“type1”)是否使用“ns2”或“ns1”作为排除名称空间?

1 个答案:

答案 0 :(得分:2)

## other将始终位于模式ns1定义的上下文中,即ns1是排除的名称空间。