XML Schema extension အအုပ်အုံး

ဒီပုံစံ နှင့် အသုံးပြု

extension အအုပ်အုံး ကို simpleType သို့မဟုတ် complexType အအုပ်အုံး အတွင်း အဆိုပါ အအုပ်အုံး ကို ဖွဲ့စည်းပါသည်。

အအုပ်အုံး အချက်

ပေါ်ပေါက်မှု တစ်ကြိမ်
အဖွဲ့အစည်း complexContent
အကြွင်း annotation、attribute、attributeGroup、anyAttribute、choice、all、sequence、group

အပိုင်းအချက်

<extension
id=ID 
base=QName
any attributes
>
(annotation?,((group|all|choice|sequence)?,
((attribute|attributeGroup)*,anyAttribute?)))
</extension>
အခြား သတင်း ဖော်ပြ
id လုံလောက်သည်။ အအုပ်အုံး အတွင်း ကို ကိုယ်တိုင် အမှတ် ကို ချမှတ်သည်。
base လိုအပ်သည်။ အဆိုပါ အအုပ်အုံး အရ အသုံးပြုသော အခြား သတင်း အအုပ်အုံး သို့မဟုတ် အဆိုပါ အအုပ်အုံး အရ အခြား အအုပ်အုံး ကို ချမှတ်သည်。
xml:lang လုံလောက်သည်။ အသုံးပြုသော အက္ခရာတွင် လူကြီးချင်း ကို ချမှတ်သည်。

(: ? သတင်း သတင်းကို extension အအုပ်အုံး အတွင်း ထို့အတွင်း အရာ ကို တစ်ကြိမ် သို့မဟုတ် တစ်ကြိမ် တက် ဖြစ်ပါသည်မည့် * သတင်း အရ အအုပ်အုံး ကို တစ်ကြိမ် သို့မဟုတ် ပိုမိုကြိမ် တက် ဖြစ်ပါသည် :)

အမှတ်ကျသော အကျွဲ

အမှတ် 1

အောက်ပါအကျွဲ သည် အခြား simpleType အား ထပ်ပေါင်းပြီး အသုံးပြုသည်:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:simpleType name="size">
  <xs:restriction base="xs:string">
    <xs:enumeration value="small" />
    <xs:enumeration value="medium" />
    <xs:enumeration value="large" />
  </xs:restriction>
</xs:simpleType>
<xs:complexType name="jeans">
  <xs:simpleContent>
    <xs:extension base="size">
      <xs:attribute name="sex">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="male" />
            <xs:enumeration value="female" />
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:extension>
  </xs:simpleContent>
</xs:complexType>
</xs:schema>

အမှတ် 2

အောက်ပါအကျွဲ သည် အခြား complexType အား ထပ်ပေါင်းပြီး အသုံးပြုသည်:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="employee" type="fullpersoninfo"/>
<xs:complexType name="personinfo">
  <xs:sequence>
    <xs:element name="firstname" type="xs:string"/>
    <xs:element name="lastname" type="xs:string"/>
  </xs:sequence>
</xs:complexType>
<xs:complexType name="fullpersoninfo">
  <xs:complexContent>
    <xs:extension base="personinfo">
      <xs:sequence>
        <xs:element name="address" type="xs:string"/>
        <xs:element name="city" type="xs:string"/>
        <xs:element name="country" type="xs:string"/>
      </xs:sequence>
    </xs:extension>
  </xs:complexContent>
</xs:complexType>
</xs:schema>