Latest web development tutorials

XML-Schema definiert / Facets

Limited (Beschränkung) verwendet akzeptabel XML-Element zu definieren oder Attributwerte. So definieren Sie XML-Elemente werden Facette genannt.


Grenzwerte

Das folgende Beispiel definiert ein Element mit einer definierten und dem Namen "Alter". Der Wert des Alters kann nicht niedriger sein als 0 oder größer als 120:

<xs:element name="age">
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="120"/>
</xs:restriction>
</xs:simpleType>
</xs:element>


Definieren einer Reihe von Werten

Für den Inhalt des XML-Elements auf einen Satz von akzeptablen Werten begrenzt ist, würden wir die Aufzählung Bedingung (Aufzählung Einschränkung) verwenden.

Das folgende Beispiel ein Element mit einem qualifizierten Namen "Auto" definiert ist. Nur akzeptable Werte sind: Audi, Golf, BMW:

<xs:element name="car">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Audi"/>
<xs:enumeration value="Golf"/>
<xs:enumeration value="BMW"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

Das obige Beispiel kann auch geschrieben werden als:

<xs:element name="car" type="carType"/>

<xs:simpleType name="carType">
<xs:restriction base="xs:string">
<xs:enumeration value="Audi"/>
<xs:enumeration value="Golf"/>
<xs:enumeration value="BMW"/>
</xs:restriction>
</xs:simpleType>

Hinweis: In diesem Fall geben Sie "Cartype" können durch andere Elemente verwendet werden , da sie nicht Teil des "Auto" Element ist.


Eine Reihe von begrenztem Wert

Um den Inhalt eines XML-Elements begrenzen, wird als eine Reihe von Zahlen oder Buchstaben definiert, die verwendet werden können, wollen wir die Modenbegrenzung (pattern constraint) zu verwenden.

Das folgende Beispiel definiert ein Element mit einem definierten Namen "Brief" von. Die einzig akzeptable Werte Kleinbuchstaben a - z ein:

<xs:element name="letter">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[a-z]"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

Das nächste Beispiel definiert ein Element mit einem definierten Namen "Initialen" von. Zulässige Werte sind Großbuchstaben A - Z, in der drei von ihnen:

<xs:element name="initials">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[A-Z][A-Z][A-Z]"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

Das nächste Beispiel definiert auch ein Element mit einem definierten Namen "Initialen" von. Zulässige Werte sind Groß- oder Kleinbuchstaben a - z drei von ihnen:

<xs:element name="initials">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[a-zA-Z][a-zA-Z][a-zA-Z]"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

Das nächste Beispiel definiert ein Element mit einer begrenzten Auswahl die Buchstaben x, y oder z in ein als "akzeptabel Wert ist:

<xs:element name="choice">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[xyz]"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

Das nächste Beispiel definiert ein Element mit einem qualifizierten Namen "prodid" von. Die zulässigen Werte sind eine Folge von fünf Ziffern, und jede Zahl im Bereich von 0-9:

<xs:element name="prodid">
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9][0-9][0-9][0-9][0-9]"/>
</xs:restriction>
</xs:simpleType>
</xs:element>


Eine Reihe von Werten für andere definierte

Das folgende Beispiel definiert ein Element mit einem definierten Namen "Brief" von. Zulässige Werte sind a - z null oder mehr Buchstaben:

<xs:element name="letter">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="([a-z])*"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

Das folgende Beispiel definiert ein Element mit einem definierten Namen "Brief" von. Die zulässigen Werte sind ein oder mehrere Paare von Buchstaben besteht jedes Paar von einem Kleinbuchstaben von einem Großbuchstaben gefolgt. Zum Beispiel: "STOPP" wird dieses Modell bestätigen, aber die "Stop", "STOP" oder "Stopp" nicht überprüft werden kann:

<xs:element name="letter">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="([a-z][A-Z])+"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

Das folgende Beispiel definiert ein Element mit einer definierten genannten "Gender" ist. Die zulässigen Werte sind männlich oder weiblich:

<xs:element name="gender">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="male|female"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

Das folgende Beispiel definiert ein Element mit einem qualifizierten Namen "Passwort" aus. Die zulässigen Werte sind eine Reihe von Zeichen aus acht Zeichen besteht, müssen diese Zeichen Groß- und Kleinbuchstaben werden, um eine - z oder wird digital 0--9:

<xs:element name="password">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[a-zA-Z0-9]{8}"/>
</xs:restriction>
</xs:simpleType>
</xs:element>


Blank Zeichen definiert

Um Leerzeichen (Leerzeichen) Ansatz angeben, müssen wir whitespace beschränkt zu verwenden.

Das folgende Beispiel definiert eine benannte "Adresse" Element mit einer definierten. Dieses whitespace Limited ist auf "konservieren", was bedeutet, dass der XML-Prozessor keine Leerzeichen nicht entfernt werden:

<xs:element name="address">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:whiteSpace value="preserve"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

In diesem Beispiel wird auch eine benannte "Adresse" Element mit einer definierten. Dieses whitespace Limited ist auf "Ersetzen", was bedeutet, dass der XML-Prozessor alle Leerzeichen entfernen wird (Zeilenumbrüche Zeilenumbrüche, Leerzeichen und Tabulatoren):

<xs:element name="address">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:whiteSpace value="replace"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

In diesem Beispiel wird auch eine benannte "Adresse" Element mit einer definierten. Dieses whitespace Limited ist auf "Zusammenbruch", was bedeutet, dass der XML-Prozessor alle Leerzeichen entfernen wird (Zeilenumbrüche Zeilenumbrüche, Leerzeichen und Tabulatoren durch Leerzeichen ersetzt werden, führende und nachfolgende Leerzeichen entfernt werden, und mehrere aufeinanderfolgende Leerzeichen zu einem einzigen Raum reduziert):

<xs:element name="address">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:whiteSpace value="collapse"/>
</xs:restriction>
</xs:simpleType>
</xs:element>


Definierter Länge

Um die Länge der Elementwerte begrenzen, müssen wir die Länge zu verwenden, maxLength und minLength begrenzt.

Elemente mit einer definierten und Namen "Passwort" in diesem Fall definiert. Der Wert muss genau acht Zeichen lang sein:

<xs:element name="password">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:length value="8"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

In diesem Beispiel wird auch ein Element mit einem qualifizierten Namen "Passwort" aus. Sein Wert ist ein Minimum von 5 Zeichen und maximal acht Zeichen:

<xs:element name="password">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="5"/>
<xs:maxLength value="8"/>
</xs:restriction>
</xs:simpleType>
</xs:element>


Definierte Datentypen

begrenzt Beschreibung
Aufzählung Definieren Sie eine Liste der zulässigen Werte
fractionDigits Es definiert die maximal zulässige Anzahl von Dezimalstellen. Er muss größer als 0 sein.
Länge Definieren Sie die genaue Anzahl der erlaubten Zeichen oder Listenelemente. Es muss größer als oder gleich 0 ist.
maxExclusive Definieren Sie den oberen Grenzwert. Erlaubte Wert muss kleiner sein als dieser Wert.
maxInclusive Definieren Sie den oberen Grenzwert. Erlaubt Wert muss kleiner oder gleich diesem Wert.
maxLength Legt die maximale Anzahl der zulässigen Zeichen oder Listenelemente. Es muss größer als oder gleich 0 ist.
minExclusive Der untere Grenzwert definiert. Der Wert muss größer als dieser Wert zugelassen werden.
minInclusive Der untere Grenzwert definiert. Erlaubt Wert muss größer oder gleich diesem Wert.
minLength Definiert die zulässige Mindestanzahl von Zeichen oder Listenelemente. Es muss größer als oder gleich 0 ist.
Muster Definieren Sie die genaue Reihenfolge der zulässigen Zeichen.
totaldigits Es definiert die erlaubten Präzision stelligen arabischen Ziffern. Er muss größer als 0 sein.
whitespace Die Definition von Leerzeichen (Zeilenumbrüche Zeilenumbrüche, Tabulatoren und Leerzeichen) behandelt werden.