问题
Schema for the element which occurs multiple (e.g. 2 times) times in XML,always fails giving the error "Schemas validity error : Element 'name': This element is not expected". "name" is an intermediate elements of XML file i.e. we have other elements in XML and "name" comes in mid of XML file. XML file have proper header as " "
Sample "name" element in XML file :
<name>
<First>1</First>
<last>1</last>
</name>
<name>
<First>1</First>
<last>1</last>
</name>
Sample Schema tried as below, but nothing works. However after commenting the second instance of "name" in XML, schema is validated successfully. PLEASE HELP.
<xs:element name="name" >
<xs:complexType mixed="true">
<xs:sequence>
<xs:element ref="First"/>
<xs:element ref="last"/>
<xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="name" >
<xs:complexType mixed="true">
<xs:sequence minOccurs="1" maxOccurs="3">
<xs:element ref="First"/>
<xs:element ref="last"/>
<xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="name" >
<xs:complexType mixed="true">
<xs:all>
<xs:element ref="First"/>
<xs:element ref="last"/>
<xs:all>
</xs:complexType>
</xs:element>
<xs:element name="name" minOccurs="1" maxOccurs="3" >
<xs:complexType mixed="true">
<xs:sequence >
<xs:element ref="First"/>
<xs:element ref="last"/>
<xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="name">
<xs:complexType mixed="true">
<xs:choice maxOccurs="3" >
<xs:element ref="First"/>
<xs:element ref="last"/>
<xs:choice>
</xs:complexType>
</xs:element>
回答1:
The problem is likely to be in the declaration of the type of the parent of the name element, which you haven't shown us.
来源:https://stackoverflow.com/questions/13542063/schema-validation-with-maxoccurs-element-fails