xs:restriction (einfacher Typ)

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

Ableitung eines einfachen Datentyps durch Einschränkung.

<xs:restriction
    base = xs:QName
    id = xs:ID
    {beliebige Attribute mit einem Nicht-Schema-Namensraum}
    >
    Content: ((xs:annotation?), (xs:simpleType?, (xs:minExclusive | xs:minInclusive | xs:maxExclusive | xs:maxInclusive | xs:totalDigits | xs:fractionDigits | xs:length | xs:minLength | xs:maxLength | xs:enumeration | xs:whitespace | xs:pattern)*))
</xs:restriction>

Kann auftreten innerhalb von: xs:simpleType (lokale Definition), xs:simpleType (globale Definition)

Beschreibung

Einen einfachen Datentyp durch Einschränkung abzuleiten heißt, einen neuen Datentyp zu definieren, indem einem Basis-Datentyp Einschränkungen (Facetten genannt) hinzugefügt werden, um seinen lexikalischen und seinen Werteraum einzuschränken.

Der Basis-Datentyp kann durch Verweis (mit Hilfe des Attributs base) oder inline (mit einem xs:simpleType-Element, das einen lokalen Datentyp definiert) festgelegt werden.

Jede der Facetten wird als Kindelement nach der optionalen eingebetteten xs:simpleType-Definition definiert.

Jede Facette hat ihre eigene Bedeutung und operiert je nachdem auf dem lexikalischen Raum, dem Werteraum oder der Whitespace-Transformation, die zwischen dem lexikalischen und dem Werteraum durchgeführt wird. Abhängig vom Basis-Datentyp, kann eine Facette zudem unterschiedliches Verhalten zeigen.

Ableitungen durch Einschränkungen können auf jede Art von Datentyp (atomar, Aufzählung oder Vereinigung) angewendet werden und ändern die Art des Datentyps nicht (atomare, Aufzählungs- und Vereinigungs-Datentypen bleiben nach einer Ableitung durch Einschränkung atomar, Aufzählung oder Vereinigung).

Einschränkungen

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.

Das Attribut base und die eingebettete xs:simpleType-Definition dürfen nicht gleichzeitig verwendet werden (der Basistyp wird entweder durch Verweis oder durch Einbettung definiert).

Beispiel

<xs:simpleType name="myInteger">
    <xs:restriction base="xs:integer">
        <xs:minInclusive value="-2"/>
        <xs:maxExclusive value="5"/>
    </xs:restriction>
</xs:simpleType>

Attribute

base
Qualifizierter Name des Basis-Datentyps bei Definition durch Verweis.

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