XML Schema restriction-element

Definition og brug

restriction-elementet definerer begrænsninger for simpleType, simpleContent eller complexContent.

Elementinformation

forekomst en
Overordnede element complexContent
Indhold gruppe、alle、valg、sekvens、egenskab、egenskabsgruppe、enhverEgenskab

Grammatik

<restriction
id=ID
base=QName
enhver egenskab
>
Indhold for simpleType:
(kommentar?,(simpleType?,(minUdelukkende|minInkluderende| 
maxUdelukkende|maxInkluderende|totalAntalCifre|fraktionelleCifre|
længde|minLængde|maxLængde|enum|hvidRum|mønster)*))
Indhold for simpleContent:
(kommentar?,(simpleType?,(minUdelukkende |minInkluderende| 
maxUdelukkende|maxInkluderende|totalAntalCifre|fraktionelleCifre|
(længde|minLængde|maxLængde|enum|hvidRum|mønster)*)?, 
((egenskab|egenskabsgruppe)*,enhverEgenskab?)
Indhold for complexContent:
(kommentar?,(gruppe|alle|valg|sekvens)?,
((egenskab|egenskabsgruppe)*,enhverEgenskab?)
</restriction>

(?-Symboler er deklarerede i restriction-elementet, hvor dette element kan forekomme nul eller én gang.)

Egenskab Beskrivelse
id Valgfri. Angiver det unikke ID for dette element.
base Obligatorisk. Angiver navnet på de indbyggede datatyper, simpleType eller complexType-elementer, der er defineret i dette schema (eller et andet schema angivet ved den specifikke navnerum).
enhver egenskab Valgfri. Angiver hvilke andre egenskaber, der har en non-schema navnerum.

Eksempel

Eksempel 1

Følgende eksempel definerer et element kaldet "age" med begrænsninger. Værdien af "age" må ikke være mindre end 0 eller større end 100:

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

Eksempel 2

Dette eksempel definerer et element kaldet "initials". "initials" elementet er en simpel type med begrænsninger. Acceptable værdier er tre store eller små bogstaver fra a til z:

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

Eksempel 3

Dette eksempel definerer et element kaldet "password". "password" elementet er en simpel type med begrænsninger. Værdien skal være mindst 5 og højst 8 tegn lang:

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

Eksempel 4

Dette eksempel viser en kompleks type definition med begrænsninger. Den komplekse type "Chinese_customer" arver fra en almindelig "customer" kompleks type, og landselementets faste værdi er "China":

<xs:complexType name="customer">
  <xs:sequence>
    <xs:element name="firstname" type="xs:string"/>
    <xs:element name="lastname" type="xs:string"/>
    <xs:element name="country" type="xs:string"/>
  </xs:sequence>
</xs:complexType>
<xs:complexType name="Chinese_customer">
  <xs:complexContent>
    <xs:restriction base="customer">
      <xs:sequence>
        <xs:element name="firstname" type="xs:string"/>
        <xs:element name="lastname" type="xs:string"/>
        <xs:element name="country" type="xs:string" fixed="China"/>
      </xs:sequence>
    </xs:restriction>
  </xs:complexContent>
</xs:complexType>