示例代码:
<xsd:element name="a">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:pattern value="|(([1-9]|[12][0-9]|3[01])/([0-9]|1[12])/[0-9]{1,4})"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="b">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:pattern value="|(([1-9]|[12][0-9]|3[01])/([0-9]|1[12])/[0-9]{1,4})"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
现在元素a和b的类型定义是相同的。有没有办法将这些类型“链接”在一起,这样我就不必重复输入?
答案 0 :(得分:1)
好的,我明白了。最简单的方法是创建一个命名类型:
<xsd:simpleType name="PatternType">
<xsd:restriction base="xsd:string">
<xsd:pattern value="|(([1-9]|[12][0-9]|3[01])/([0-9]|1[12])/[0-9]{1,4})" />
</xsd:restriction>
</xsd:simpleType>
<xsd:element name="a" type="tns:PatternType" />
<xsd:element name="b" type="tns:PatternType" />
其中tns
是架构目标命名空间的前缀