我想用xsd表示以下数据:
我有四个原则。它们中的每一个都有1到4个子原则,每个子原则都有一个指南、一个检查器和一个注释属性,比如这个树结构:
1. Principle ONE
a. subprinciple A
1. guideline
2. checker
3. comment
b. subprinciple B
....
2. Principle TWO
3. Principle THREE
4. Principle FOUR在XML中,表示形式如下:
<principle>
<principle_name>principle_name0</principle_name>
<guidelines_properties>
<guideline>guideline0</guideline>
<checker>false</checker>
<comments>comments0</comments>
</guidelines_properties>
<guidelines_properties>
<guideline>guideline1</guideline>
<checker>false</checker>
<comments>comments1</comments>
</guidelines_properties>
</principle>
<principle>
<principle_name>principle_name1</principle_name>
<guidelines_properties>
<guideline>guideline2</guideline>
<checker>false</checker>
<comments>comments2</comments>
</guidelines_properties>
<guidelines_properties>
<guideline>guideline3</guideline>
<checker>false</checker>
<comments>comments3</comments>
</guidelines_properties>
</principle>在XSD中,我用这样的方式定义了它:
<xs:element name="principles">
<xs:complexType>
<xs:sequence>
<xs:element ref="principle" minOccurs="4" maxOccurs="4"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="principle">
<xs:complexType>
<xs:sequence>
<xs:element ref="principle_name"/>
<xs:element ref="guidelines_properties" minOccurs="1" maxOccurs="4"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="guidelines_properties">
<xs:complexType>
<xs:sequence>
<xs:element ref="guideline"/>
<xs:element ref="checker"/>
<xs:element ref="comments"/>
</xs:sequence>
</xs:complexType>
</xs:element>在这里我想我没有问题。我想做的是确定这些原则和准则的价值。有人对此有什么想法吗?
发布于 2013-12-30 14:58:39
您可以使用一个方面来枚举这些值。如果精确枚举一个值,则只允许一个值。
<xs:element name="car">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Audi"/> <!-- only "Audi" allowed -->
<!-- <xs:enumeration value="Golf"/> -->
<!-- <xs:enumeration value="BMW"/> -->
</xs:restriction>
</xs:simpleType>
</xs:element>https://stackoverflow.com/questions/20841956
复制相似问题