xs:length

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

Facette zur Festlegung der Länge eines Werts.

<xs:length
    fixed = xs:boolean : "false"
    id = xs:ID
    value = xs:nonNegativeInteger
    {beliebige Attribute mit einem Nicht-Schema-Namensraum}
    >
    Content: (xs:annotation?)
</xs:length>

Kann auftreten innerhalb von: xs:restriction (einfacher Typ), xs:restriction (einfacher Inhalt)

Kann als Facette verwendet werden für: xs:anyURI, xs:base64Binary, xs:ENTITIES, xs:ENTITY, xs:hexBinary, xs:ID, xs:IDREF, xs:IDREFS, xs:language, xs:Name, xs:NCName, xs:NMTOKEN, xs:NMTOKENS, xs:normalizedString, xs:NOTATION, xs:QName, xs:string, xs:token

Beschreibung

xs:length ist eine Facette, die die Festlegung der Länge in einer Einheit, die vom Datentyp abhängt, ermöglicht. Für die meisten Datentypen ist die Einheit das Zeichen, wie es in der XML 1.0 Recommendation definiert ist (d.h. Unicode-Zeichen, wie von ISO/IEC 10646 definiert, die mit mehr als acht Bits dargestellt sein können). Die Ausnahmen sind die binären Datentypen (xs:hexBinary und xs:base64Binary), für die die Längen als Anzahl der Bytes (zu je acht Bits) der binären Daten ausgedrückt werden, sowie alle Listen-Datentypen, für die die Längen als Anzahl der Listeneinträge ausgedrückt werden.

xs:length beschränkt den Werteraum. In der Praxis bedeutet dies, daß die Facette nach Whitespace-Ersetzung und -Zusammenfassung überprüft wird, wie von der Facette xs:whitespace definiert.

Einschränkungen

Es handelt sich hier um eine logische Länge, die oft keinen unmittelbaren Bezug zu dem Speicherplatz hat, der für den Wert benötigt wird.

Der Wert dieser Facette kann bei weiteren Einschränkungen nicht modifiziert werden, der Wert des Attributs fixed ist daher bedeutungslos (das Verhalten ist immer so, als wäre die Facette fixiert).

Auch wenn dies in der Recommendation nicht angegeben ist, besteht eine Wechselwirkung zwischen xs:length und xs:minLength sowie xs:maxLength. Die Länge sollte nicht auf einen Wert gesetzt werden, der außerhalb des Bereichs von xs:minLength bis xs:maxLength seines Basistyps liegt.

Die Festlegung der Facette xs:length fixiert die Facetten xs:maxLength und xs:minLength nicht. Verwenden Sie zwei Einschränkungsschritte, um alle drei Facetten zu fixieren, denn es ist verboten, diese Facetten im selben Einschränkungsschritt anzuwenden.

Beispiel

<xs:simpleType name="standardNotations">
    <xs:restriction base="xs:NOTATION">
        <xs:length value="8"/>
    </xs:restriction>
</xs:simpleType>

Attribute

fixed
Wenn der Wert true ist, kann der Wert der Länge bei weiteren Einschränkungen nicht geändert werden (für diese Facette ohne Bedeutung, da ihr Wert bei weiteren Einschränkungen ohnehin nie verändert werden kann).

id
Element-ID laut W3C XML Schema.

value
Wert der Facette.

   

<< 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