أحدث البرامج التعليمية وتطوير الشبكة
 

XML مخطط تقييد عنصر


<XML استكمال مخطط المرجعي

تعريف واستخدام

يحدد عنصر تقييد قيود على تعريف simpleType، simpleContent، أو complexContent.

معلومات عنصر

  • Parent elements: simpleType، simpleContent، complexContent

بناء الجملة

<restriction
id=ID
base=QName
any attributes
>

Content for simpleType:
(annotation?,(simpleType?,(minExclusive|minInclusive|
maxExclusive|maxInclusive|totalDigits|fractionDigits|
length|minLength|maxLength|enumeration|whiteSpace|pattern)*))

Content for simpleContent:
(annotation?,(simpleType?,(minExclusive |minInclusive|
maxExclusive|maxInclusive|totalDigits|fractionDigits|
length|minLength|maxLength|enumeration|whiteSpace|pattern)*)?,
((attribute|attributeGroup)*,anyAttribute?))

Content for complexContent:
(annotation?,(group|all|choice|sequence)?,
((attribute|attributeGroup)*,anyAttribute?))

</restriction>

(و؟ علامة يعلن أن العنصر يمكن أن يحدث صفر أو واحد الوقت داخل عنصر تقييد)

السمة وصف
id اختياري. يحدد هوية فريدة من نوعها للعنصر
base

مطلوب. تحديد اسم نوع المدمج في البيانات، عنصر simpleType، أو عنصر complexType تعريف في هذا المخطط أو مخطط آخر

any attributes اختياري. تحدد أي سمات أخرى مع مساحة غير مخطط

مثال 1

ويحدد هذا المثال عنصر يسمى "age" مع التقييد. قيمة من العمر لا يمكن أن يكون أقل من 0 أو أكبر من 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>

مثال 2

ويحدد هذا المثال أيضا عنصر يسمى "initials" . في "initials" العنصر هو نوع بسيط مع التقييد. القيمة الوحيدة المقبولة هي ثلاثة من الصغيرة أو الكبيرة رسائل من الألف إلى الياء:

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

مثال 3

ويحدد هذا المثال عنصر يسمى "password" . و "password" العنصر هو نوع بسيط مع التقييد. يجب أن تكون قيمة الحد الأدنى خمسة أحرف والحد الأقصى ثمانية أحرف:

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

مثال 4

يوضح هذا المثال تعريف نوع معقد باستخدام قيود. نوع معقد "Norwegian_customer" مشتق من العملاء نوع معقد العام والثابتة عنصر القطرية ل "Norway" :

<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="Norwegian_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="Norway"/>
      </xs:sequence>
    </xs:restriction>
  </xs:complexContent>
</xs:complexType>

<XML استكمال مخطط المرجعي