我想为这块 xml 创建 XML Schema,我想限制“name”属性的值,以便在输出文档中,每个工作日只允许一个 day 实例:
<a>
<day name="monday" />
<day name="tuesday" />
<day name="wednesday" />
</a>
我试过用这个:
<xs:complexType name="a">
<xs:sequence>
<xs:element name="day" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:attribute name="name" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="monday" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="day" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:attribute name="name" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="tuesday" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
但 Eclipse 中的 XML Schema 验证器显示错误“模型组中出现多个名称为 'day'、具有不同类型的元素。”。
还有其他方法吗?