XML Şeması restriction öğesi
Tanım ve kullanım
restriction öğesi, simpleType, simpleContent veya complexContent tanımları için kısıtlamaları tanımlar.
Öğe bilgisi
Çıkış sıklığı | Bir kez |
Ana öğe | complexContent |
İçerik | group、all、choice、sequence、attribute、attributeGroup、anyAttribute |
Dilbilgisi
<restriction id=ID base=QName herhangi bir özellik > simpleType için içerik: (annotation?,(simpleType?,(minExclusive|minInclusive| maxExclusive|maxInclusive|totalDigits|fractionDigits| length|minLength|maxLength|enumeration|whiteSpace|pattern)*)) simpleContent için içerik: (annotation?,(simpleType?,(minExclusive |minInclusive| maxExclusive|maxInclusive|totalDigits|fractionDigits| (length|minLength|maxLength|enumeration|whiteSpace|pattern)*)?, ((attribute|attributeGroup)*,anyAttribute?)) complexContent için içerik: (annotation?,(group|all|choice|sequence)?, ((attribute|attributeGroup)*,anyAttribute?)) </restriction>
(? sembolü, restriction öğesinde bu öğenin sıfır veya bir kez出现 olabilir.)
Özellik | Açıklama |
---|---|
id | İsteğe bağlı. Bu öğenin benzersiz ID'sini belirtir. |
temel | Gerekli. Bu şema (veya belirlenen adlandırma alanı tarafından gösterilen diğer şemalar) içinde tanımlanan yerleşik veri türleri, simpleType veya complexType öğelerinin adlarını belirtir. |
herhangi bir özellik | İsteğe bağlı. non-schema adlandırma alanına sahip herhangi bir diğer özelliği belirtir. |
Örnek
Örnek 1
Aşağıdaki örnek, adı "age" olan ve kısıtlamalı olan bir element tanımlamaktadır. Age değeri 0'dan küçük veya 100'den büyük olamaz:
<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>
Örnek 2
Bu örnek, adı "initials" olan bir element tanımlamaktadır. "initials" elementi, kısıtlamalı basit türdür. Kabul edilebilir değerler, a'dan z'ye büyük veya küçük harflerden oluşan üç harfli olmalıdır:
<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>
Örnek 3
Bu örnek, adı "password" olan bir element tanımlamaktadır. "password" elementi, kısıtlamalı basit türdür. Değer, en az 5 ve en fazla 8 karakter olmalıdır:
<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>
Örnek 4
Bu örnek, bir kısıtlama kullanılarak karmaşık tür tanımlamasını göstermektedir. Karmaşık tür "Chinese_customer", "customer" karmaşık türünden türemiş ve "country" bileşeninin sabit değeri "China" olan bir türdür:
<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>