我有一个包含多个元素的 XML 模式,每个元素都有两个相同类型的子元素(oldValue 和 newValue)。例如,类型可以是字符串,但我有几个具有不同maxLength
限制的元素。定义它的最简单方法是什么?
<xsd:sequence>
<xsd:element name="foo">
<xs:sequence>
<xs:element name="oldValue" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="10"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="newValue">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="10"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xsd:element>
<xsd:element name="bar">
<xs:sequence>
<xs:element name="oldValue" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="30"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="newValue">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="30"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xsd:element>
</xsd:sequence>
我需要定义很多这些元素,每个元素都有不同的限制。有没有比为每个限制定义一个复杂类型更简单的方法?
编辑:我需要使用 XML Schema 1.0