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

عناصر النص فقط XSD


وثمة عنصر النص الوحيد معقدة يمكن أن تحتوي على نص والصفات.


عناصر معقدة نص فقط

هذا النوع يحتوي على محتوى بسيط فقط (text and attributes) ، لذلك نضيف عنصرا simpleContent حول المحتوى. عند استخدام محتوى بسيط، يجب عليك تعريف امتدادا أو تقييد داخل عنصر simpleContent، مثل هذا:

<xs:element name="somename">
  <xs:complexType>
    <xs:simpleContent>
      <xs:extension base="basetype">
        ....
        ....
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
</xs:element>

OR

<xs:element name="somename">
  <xs:complexType>
    <xs:simpleContent>
      <xs:restriction base="basetype">
        ....
        ....
      </xs:restriction>
    </xs:simpleContent>
  </xs:complexType>
</xs:element>

Tip: استخدم عنصر تمديد / تقييد لتوسيع أو للحد من قاعدة نوع بسيط للعنصر.

هنا مثال عنصر XML، "shoesize" ، الذي يحتوي على النص فقط:

<shoesize country="france">35</shoesize>

يعلن المثال التالي complexType، "shoesize" . يتم تعريف المحتوى كقيمة صحيحا، و "shoesize" يحتوي على عنصر أيضا سمة مسماة "country" :

<xs:element name="shoesize">
  <xs:complexType>
    <xs:simpleContent>
      <xs:extension base="xs:integer">
        <xs:attribute name="country" type="xs:string" />
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
</xs:element>

يمكننا أيضا إعطاء عنصر complexType اسما، والسماح لل "shoesize" عنصر تحتوي على سمة نوع يشير إلى اسم complexType (إذا كنت تستخدم هذا الأسلوب، يمكن أن عدة عناصر تشير إلى نفس نوع معقد):

<xs:element name="shoesize" type="shoetype"/>

<xs:complexType name="shoetype">
  <xs:simpleContent>
    <xs:extension base="xs:integer">
      <xs:attribute name="country" type="xs:string" />
    </xs:extension>
  </xs:simpleContent>
</xs:complexType>