< xsd:all
> specifica che gli elementi figli possono apparire in qualsiasi ordine.
< xsd:sequence
> specifica che gli elementi figlio possono apparire solo nell'ordine indicato.
Esempio per Sequenza:
<xs:element name="compElement">
<xs:complexType>
<xs:sequence>
<xs:element name="ele1" type="xs:string"/>
<xs:element name="ele2" type="xs:string"/>
<xs:element name="ele3" type="xs:string"/>
<xs:element name="ele4" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
Se si crea un XML da questo XSD allora, sarà qualcosa di simile:
<compElement>
<ele1>First</ele1>
<ele2>Second</ele2>
<ele3>Third</ele3>
<ele4>Fourth</ele4>
</compElement>
esempio per tutti:
<xs:element name="compElement">
<xs:complexType>
<xs:all>
<xs:element name="ele1" type="xs:string"/>
<xs:element name="ele2" type="xs:string"/>
<xs:element name="ele3" type="xs:string"/>
<xs:element name="ele4" type="xs:string"/>
</xs:all>
</xs:complexType>
</xs:element>
Se si crea un file XML da questo xsd quindi sarà qualcosa del genere:
<compElement>
<ele2>Second</ele2>
<ele1>First</ele1>
<ele4>Fourth</ele4>
<ele3>Third</ele3>
</compElement>
More info il xsd: tutto More Info il xsd: sequence
Spero risposto alla tua quetion.
Fondamentalmente, la differenza tra questi due è ciò che hai già indicato nella tua domanda. Tuttavia, i vincoli associati all'uso di questi due compositori e le implicazioni di quelli nella creazione di XSD dipendono dalle specifiche a cui ti riferisci: XSD 1.0 o XSD 1.1? –
Sembra che la tua domanda riguardi il motivo per cui la sequenza e tutti gli errori di scrittura in modo diverso quando trova l'elemento mancante. Penso che si tratti di logica parser – Nasir
Esiste già una risposta a questa domanda? Vorrei anche sapere se devo sempre usare per ottenere l'oggetto esatto mancante. –
GertV