étant donné que mon XSD ne fonctionne pas avec Visual Studio 2010, je l'ai utilisé pour en générer un. La différence entre le mien et le Généré est la hiérarchie? J'utilise dtype pour appeler les types complexes. Pourquoi ça ne marche pas?XML Schema xsd interdisant le type
Version Visual Studio:
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified"
elementFormDefault="qualified"
targetNamespace="top.xsd"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="top">
<xs:complexType>
<xs:sequence>
<xs:element name="child1">
<xs:complexType>
<xs:attribute name="attribute1" type="xs:string" />
</xs:complexType>
</xs:element>
<xs:element name="child2">
<xs:complexType>
<xs:attribute name="attribute2" type="xs:string" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Je trouve personellement ma version soignée, mais arrive avec une erreur de ce type ne peut pas être utilisé comme référence à ce point:
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified"
elementFormDefault="qualified"
targetNamespace="top.xsd"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="top">
<xs:complexType>
<xs:sequence>
<xs:element name="chield1" type="chield1" />
<xs:element name="chield2" type="chield2" />
</xs:sequence>
</xs:element>
<xs:complexType name="chield1">
<xs:attribute name="attribute1" type="xs:string" />
</xs:complexType>
<xs:complexType name="chield2">
<xs:attribute name="attribute2" type="xs:string" />
</xs:complexType>
</xs:schema>