عنصر expansion XML Schema

تعریف و استفاده

عنصر 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 ضروری، داخلی نوعیت، simpleType یا complexType عناصر کی نام کو طے کرتا ہے。
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>