XML Schema restriction 元素 -> XML Schema restriction-element

定义和用法 -> Definitie en gebruik

restriction 元素定义对 simpleType、simpleContent 或 complexContent 定义的约束。 -> De restriction-element definieert de beperkingen voor simpleType, simpleContent of complexe Inhoud.

元素信息 -> Elementinformatie

出现次数 -> Voorkomst 一次 -> Één keer
父元素 -> OuderElement complexContent -> komplexeInhoudCombinatie
内容 -> Inhoud group、all、choice、sequence、attribute、attributeGroup、anyAttribute -> groep、alles、keuze、volgorde、kenmerk、kenmerkGroep、allekenmerk

语法 -> Syntax

<restriction -> <restriction
id=ID -> id=ID

enkele eigenschappen
>
Content for simpleType: -> Inhoud voor eenvoudigType:
(annotation?,(simpleType?,(minExclusive|minInclusive| -> (annotatie?,(eenvoudigType?,(minExclusief|minInclusief| 
maxExclusive|maxInclusive|totalDigits|fractionDigits| -> maxExclusief|maxInclusief|totaalAantalCijfers|fractioneleCijfers|
length|minLength|maxLength|enumeration|whiteSpace|pattern)*)) -> lengte|minLengte|maxLengte|enumeratie|whitespace|patroon)*))
Content for simpleContent: -> Inhoud voor eenvoudige inhoud:
(annotation?,(simpleType?,(minExclusive |minInclusive| -> (annotatie?,(eenvoudigType?,(minExclusief|minInclusief| 
maxExclusive|maxInclusive|totalDigits|fractionDigits| -> maxExclusief|maxInclusief|totaalAantalCijfers|fractioneleCijfers|
(length|minLength|maxLength|enumeration|whiteSpace|pattern)*)?, -> (lengte|minLengte|maxLengte|enumeratie|whitespace|patroon)*)?, 
((attribute|attributeGroup)*,anyAttribute?)) -> ((attribute|attributeGroup)*,anyAttribute?))
Content for complexContent: -> Inhoud voor complexe inhoud:
(annotation?,(group|all|choice|sequence)?,) -> (annotatie?,(groep|alles|keuze|volgorde)?,)
((attribute|attributeGroup)*,anyAttribute?)) -> ((attribute|attributeGroup)*,anyAttribute?))
</restriction>

(? 符号声明在 restriction 元素中该元素可出现零次或一次。) -> (? Het symbool wordt verklaard in het restriction-element, en dit element kan nul of één keer voorkomen.)

属性 Beschrijving
id Optioneel. Specificeer het unieke ID van dit element.
basis Verplicht. Specificeer de naam van de ingebouwde datatypes, simpleType of complexType-elementen die in dit schema (of een schema aangegeven door de naamruimte) zijn gedefinieerd.
enkele eigenschappen Optioneel. Specificeer elke andere eigenschap met een non-schematische naamruimte.

Voorbeeld

Voorbeeld 1

Het volgende voorbeeld definieert een element genaamd "age" met beperkingen. De waarde van "age" mag niet kleiner zijn dan 0 of groter dan 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>

Voorbeeld 2

Dit voorbeeld definieert een element genaamd "initials". Het element "initials" is van het eenvoudige type met beperkingen. Toegestane waarden zijn drie hoofdletters of kleine letters van a tot 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>

Voorbeeld 3

Dit voorbeeld definieert een element genaamd "password". Het element "password" is van het eenvoudige type met beperkingen. De waarde moet minimaal 5 en maximaal 8 tekens zijn:

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

Voorbeeld 4

Dit voorbeeld toont een complexe type definitie met beperkingen. De complexe type "Chinese_customer" wordt afgeleid van de gewone complexe type "customer", waarbij de vastgestelde waarde van het "country"-element "China" is:

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