我正在我的公司创建一个新的数据交换服务。我们想扩展在我们的 core.xsd 定义文件中定义的现有对象。这是我需要做的一个例子:
<xs:complexType name="parentType">
<xs:sequence>
<xs:element name="departmentName" type="core:DEPARTMENT_NAME"
minOccurs="0" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="childType">
<xs:complexContent>
<xs:extension base="parentType">
<xs:sequence>
<xs:element name="departmentName"
type="core:DEPARTMENT_NAME"
minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
我认为这完全有道理。我想覆盖父元素并使其成为必需。但是,一个有效的 xml 文件就是这个。现在哪里有一个额外的部门名称!?
<childType>
<departmentName>HR</departmentName>
<departmentName>IT</departmentName>
</childType>
我该怎么做才能使 XML 文件变为:
<childType>
<departmentName>IT</departmentName>
</childType>
谢谢,克雷格