如何在XSD中定义常量
有没有办法定义一个常量值并在前面的XSD中使用该常量?我有一个公共值,用于各种xs:element标记的maxOccurs属性。像其他语言中的常量一样,如果支持MyConst的值发生变化,我希望在一个地方进行更改如何在XSD中定义常量,xsd,constants,Xsd,Constants,有没有办法定义一个常量值并在前面的XSD中使用该常量?我有一个公共值,用于各种xs:element标记的maxOccurs属性。像其他语言中的常量一样,如果支持MyConst的值发生变化,我希望在一个地方进行更改 <!-- Can I do this? --> <ConstantValue id="MyConst" value="10"/> ... <xs:element name="sandwich_meat" type="xs:string" minOccurs
<!-- Can I do this? -->
<ConstantValue id="MyConst" value="10"/>
...
<xs:element name="sandwich_meat" type="xs:string" minOccurs="0" maxOccurs="MyConst"/>
<xs:element name="sandwich_name" type="xs:string" minOccurs="0" maxOccurs="MyConst"/>
...
使用纯模式是不可能的,但XML可能会起到作用?不,不允许这样做。但是,您可以在XSD(place dosen matters)之上的某个位置使用固定值定义自己的类型,并将该类型用于元素。您可以尝试定义带有限制的simpleType:
<xs:simpleType name="AConstantHere">
<xs:restriction base="xs:string">
<xs:enumeration value="CONSTANT_VALUE_HERE"/>
</xs:restriction>
</xs:simpleType>
它只允许一个值