xs:restriction (komplexer Inhalt)

(Auszug aus "XML Schema" von Eric van der Vlist)

Ableitung eines komplexen Inhaltsmodells durch Einschränkung.

<xs:restriction
    base = xs:QName
    id = xs:ID
    {beliebige Attribute mit einem Nicht-Schema-Namensraum}
    >
    Content: (xs:annotation?, (xs:group | xs:all | xs:choice | xs:sequence)?,
    ((xs:attribute | xs:attributeGroup)*, xs:anyAttribute?))
</xs:restriction>

Kann auftreten innerhalb von: xs:complexContent

Beschreibung

Die Einschränkung eines komplexen Typs komplexen Inhalts ist ein Vorgang, der es erlaubt, sowohl den Attributen als auch den Kindelementen neue Bedingungen hinzuzufügen (dies verkleinert die Menge gültiger Instanzstrukturen). Sie kann als Absichtserklärung dazu verstanden werden, daß ein neues Inhaltsmodell eine Teilmenge eines Basis-Inhaltsmodells ist (die Absichtserklärung wird von Schema-Prozessoren überprüft). Das neue Inhaltsmodell wird unter xs:restriction vollständig beschrieben und muß eine Einschränkung dessen darstellen, was durch das Basis-Inhaltsmodell erlaubt worden war (d.h., jeder Inhalt, der dem eingeschränkten Typ zufolge gültig ist, muß auch dem Basistyp zufolge gültig sein). Die einzige Ausnahme bilden Attribute, deren Beschreibung unter xs:restriction übersprungen werden kann, falls sie sich nicht ändern.

Einschränkungen

Um die Überprüfung, die Schema-Prozessoren vornehmen, zu erleichtern, muß das neue abgeleitete Inhaltsmodell der Definition des Basistyps Partikel für Partikel folgen. In jedem Einzelfall muß es sich um explizite Ableitungen durch Einschränkung handeln.

Derselbe Elementname (xs:restriction) wird in drei unterschiedlichen Kontexten mit sehr unterschiedlichen Bedeutungen verwendet. Unterscheiden Sie sorgfältig zwischen einer Einschränkung im Kontext eines einfachen Datentyps, eines einfachen und eines komplexen Inhaltsmodells.

Beispiel

<xs:element name="author">
    <xs:complexType>
        <xs:complexContent>
            <xs:restriction base="person">
                <xs:sequence>
                    <xs:element ref="name"/>
                    <xs:element ref="born"/>
                    <xs:element ref="dead" minOccurs="0"/>
                </xs:sequence>
            </xs:restriction>
        </xs:complexContent>
    </xs:complexType>
</xs:element>

Attribute

base
Qualifizierter Name des Basistyps.

id
Element-ID laut W3C XML Schema.

   

<< zurück vor >>

 

 

 

Tipp der data2type-Redaktion:
Zum Thema XML Schema bieten wir auch folgende Schulungen zur Vertiefung und professionellen Fortbildung an:

Copyright © 2003 O'Reilly Verlag GmbH & Co. KG
Für Ihren privaten Gebrauch dürfen Sie die Online-Version ausdrucken.
Ansonsten unterliegt dieses Kapitel aus dem Buch "XML Schema" denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.

O’Reilly Verlag GmbH & Co. KG, Balthasarstraße 81, 50670 Köln, kommentar(at)oreilly.de