XSD 标识符模式
XSD identifier pattern
我正在尝试创建 1120XXXTP
形式的标识符,其中 XXX
是代码,TP
是类型:lc, lb, pr or ex
这是我目前所拥有的
<xs:simpleType name="complex" >
<xs:union>
<xs:simpleType>
<xs:restriction base="xs:string" >
<xs:pattern value="[1][1][2][0][0-9]{3}" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="lc" />
<xs:enumeration value="lb" />
<xs:enumeration value="pr" />
<xs:enumeration value="ex" />
</xs:restriction>
</xs:simpleType>
</xs:union>
这是 XML 标识符的示例
<Classes>
<CoursePartReference code="1120002lc">
我无法正确设置模式。
您可以将您的标识符与单个正则表达式模式匹配:
<xs:pattern value="1120\d{3}(lc|lb|pr|ex)" />
总而言之,那么这个XML,
<CoursePartReference code="1120002lc">
将对此有效 XSD,
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="CoursePartReference">
<xs:complexType>
<xs:attribute name="code">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="1120\d{3}(lc|lb|pr|ex)" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:schema>
我正在尝试创建 1120XXXTP
形式的标识符,其中 XXX
是代码,TP
是类型:lc, lb, pr or ex
这是我目前所拥有的
<xs:simpleType name="complex" >
<xs:union>
<xs:simpleType>
<xs:restriction base="xs:string" >
<xs:pattern value="[1][1][2][0][0-9]{3}" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="lc" />
<xs:enumeration value="lb" />
<xs:enumeration value="pr" />
<xs:enumeration value="ex" />
</xs:restriction>
</xs:simpleType>
</xs:union>
这是 XML 标识符的示例
<Classes>
<CoursePartReference code="1120002lc">
我无法正确设置模式。
您可以将您的标识符与单个正则表达式模式匹配:
<xs:pattern value="1120\d{3}(lc|lb|pr|ex)" />
总而言之,那么这个XML,
<CoursePartReference code="1120002lc">
将对此有效 XSD,
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="CoursePartReference">
<xs:complexType>
<xs:attribute name="code">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="1120\d{3}(lc|lb|pr|ex)" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:schema>