XSD:What';这两者有什么区别?
在第一个元素中,我将minOccurs和maxOccurs放在XSD:What';这两者有什么区别?,xsd,Xsd,在第一个元素中,我将minOccurs和maxOccurs放在序列中元素: <xs:element name="Prerequisites" minOccurs="0" maxOccurs="1"> <xs:complexType> <xs:sequence minOccurs="0" maxOccurs="unbounded"> <xs:element name="Prerequisite" type="Prerequisite
序列中
元素:
<xs:element name="Prerequisites" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="Prerequisite" type="PrerequisiteType"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Prerequisites" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="Prerequisite" type="PrerequisiteType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
在这种特殊情况下没有区别,即两种定义描述的语言相同
在第一个示例中,您定义的是整个序列出现的限制,在第二个示例中,仅限序列中的一个元素 最好不要在xs:sequence中使用minOccurs和maxOccurs。而且我认为可读性也更高。我也会避免在序列上使用minOccurs/maxOccurs,这可能会使处理复杂化。