如何在XSD规范中设置层次结构?
我是xsd规范领域的新手,需要stackoverflow社区的帮助。我想做的是定义一个类别层次结构 例如:如何在XSD规范中设置层次结构?,xsd,Xsd,我是xsd规范领域的新手,需要stackoverflow社区的帮助。我想做的是定义一个类别层次结构 例如: A类 1.1. B类 1.1.1 C类 如何在xsd规范中定义这一点? 也许有一些最佳实践解决方案 克里斯 我已经试着这样指定它。但我不确定这是否切实可行 <xs:element name="category"> <xs:complexType> <xs:sequence> <xs:element name="maincat
1.1. B类
1.1.1 C类
<xs:element name="category">
<xs:complexType>
<xs:sequence>
<xs:element name="maincategory">
<xs:complexType>
<xs:sequence>
<xs:element name="subcategory">
<xs:complexType>
<xs:sequence>
<xs:element ref="subcategory"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="maincategory" type="xs:string"/>
<xs:element name="subcategory" type="xs:string"/>
克里斯你有两件事叫做“子类别”。我已将元素重命名为“元素”
这就是我要做的:
<xs:complexType name="category_t">
<xs:sequence>
<xs:element name="maincategory" type="main_category_t" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="main_category_t">
<xs:sequence>
<xs:element type="subcategory_t" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="subcategory_t">
<xs:sequence>
<xs:element name="element" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:element name="category" type="category_t" />
我认为您可能不需要使用ref
属性。这有一个非常具体的用例,类型
属性看起来更接近您想要的内容。您有两个名称为“子类别”的东西。我已将元素重命名为“元素”
这就是我要做的:
<xs:complexType name="category_t">
<xs:sequence>
<xs:element name="maincategory" type="main_category_t" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="main_category_t">
<xs:sequence>
<xs:element type="subcategory_t" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="subcategory_t">
<xs:sequence>
<xs:element name="element" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:element name="category" type="category_t" />
我认为您可能不需要使用
ref
属性。这有一个非常具体的用例,type
属性看起来更接近您想要的内容。我已经在上面的问题中添加了我尝试过的内容,它是否按原样工作?你想帮忙修理它,还是想让它更干净?我想让它更干净。它是有效的,但我对这个解决方案不满意。我已经在上面的问题中添加了我已经尝试过的东西,它是有效的吗?你想帮忙修理它,还是想让它更干净?我想让它更干净。这是可行的,但我对这个解决方案不满意。你好,罗伯特!对不起,我迟了答复。但这就是我一直在寻找的。谢谢你的帮助。你好,罗伯特!对不起,我迟了答复。但这就是我一直在寻找的。谢谢你的帮助。