我有以下 XSD 示例
<xs:element name="days" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Monday"/>
<xs:enumeration value="Tuesday"/>
<xs:enumeration value="Wednesday"/>
<xs:enumeration value="Thursday"/>
<xs:enumeration value="Friday"/>
<xs:enumeration value="Saturday"/>
<xs:enumeration value="Sunday"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
Run Code Online (Sandbox Code Playgroud)
xml 提取应该能够包含列表中的多个值,但将它们输入的内容限制在上面的枚举中,例如,<days>星期六、星期三</days>。这可能吗?
如果您可以松开逗号(在 XSD 中不支持作为分隔符),并且满足于空格,那么这就是您的解决方案:
<?xml version="1.0" encoding="utf-8" ?>
<!-- XML Schema generated by QTAssistant/XSD Module (http://www.paschidev.com) -->
<xsd:schema elementFormDefault="qualified" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="days">
<xsd:simpleType>
<xsd:list>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Monday"/>
<xsd:enumeration value="Tuesday"/>
<xsd:enumeration value="Wednesday"/>
<xsd:enumeration value="Thursday"/>
<xsd:enumeration value="Friday"/>
<xsd:enumeration value="Saturday"/>
<xsd:enumeration value="Sunday"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:list>
</xsd:simpleType>
</xsd:element>
</xsd:schema>
Run Code Online (Sandbox Code Playgroud)
你基本上是在使用一个列表,因此这样的事情是完全有效的:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<!-- Sample XML generated by QTAssistant (http://www.paschidev.com) -->
<days xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Monday Tuesday Wednesday </days>
Run Code Online (Sandbox Code Playgroud)
在这里积极主动……例如,如果您可能想要确保值的唯一性,那么这不能在 XSD 中强制执行。
| 归档时间: |
|
| 查看次数: |
7879 次 |
| 最近记录: |