Gern stehe ich zur fachlichen Unterstützung in XML-Technologien, C#.NET, VisualBasic.NET und Java zur Verfügung. Sprechen Sie mich einfach an: Mail oder ☎ 0151 . 750 360 61


Warum XML-Validierung? / xs:sequence, xs:all

xs:sequence, xs:all

xs:sequence, xs:all

xs:sequence und xs:all definieren beide einen xs:complexType mit mehreren Childnodes. Dabei erzwingt xs:sequence in der Umsetzung die Einhaltung der deklarierten Reihenfolge; bei xs:all ist die Reihenfolge der Elemente frei.

xs:sequence und xs:all haben große Ähnlichkeit miteinander. Betrachten Sie die beiden XML-Schema Dokumente: Sie unterscheiden sich lediglich in der Deklaration des .

pic/xs_all.png


<xs:schema 
    xmlns:xs="http://www.w3.org/2001/XMLSchema" 
    elementFormDefault="qualified"
    attributeFormDefault="unqualified">    
    <xs:element name="Root-Element">
        <xs:complexType>
            <xs:all>
                <xs:element name="A" type="xs:string"/>
                <xs:element name="B" type="xs:string"/>
                <xs:element name="C" type="xs:string"/>
            </xs:all>
        </xs:complexType>
    </xs:element>
</xs:schema>

pic/xs_sequence.png


<xs:schema 
    xmlns:xs="http://www.w3.org/2001/XMLSchema" 
    elementFormDefault="qualified"
    attributeFormDefault="unqualified">
    <xs:element name="Root-Element">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="A" type="xs:string"/>
                <xs:element name="B" type="xs:string"/>
                <xs:element name="C" type="xs:string"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>

Das folgende XML-Dokument wäre valide gegenüber dem xs:all-Schema, nicht aber gegenüber xs:sequence.


<Root-Element>    
    <B>Wolkenlos</B>
    <C>Hefeklos</C>
    <A>Wunschlos</A>
</Root-Element>

Bei xs:sequence wird die Einhaltung der Reihenfolge erzwungen.


<Root-Element>
    <A>Wunschlos</A>
    <B>Wolkenlos</B>
    <C>Hefeklos</C>    
</Root-Element>

Siehe auch und .

wg / 22. April 2019



Fragen? Anmerkungen? Tipps?

Bitte nehmen Sie Kontakt zu mir auf.






Vielen Dank für Ihr Interesse an meiner Arbeit.


V.i.S.d.P.: Wilfried Grupe * Klus 6 * 37643 Negenborn

☎ 0151. 750 360 61 * eMail: info10@wilfried-grupe.de

www.wilfried-grupe.de/XSD3_10.html