complexType

XML Schema complexType elementi


❮ To‘liq XML Schema ma’lumotnomasi

Ta’rif va qo‘llanilishi

complexType elementi murakkab tipni aniqlaydi. Murakkab tipli element — boshqa elementlar va/yoki atributlarni o‘z ichiga olgan XML elementi.

Element haqida ma’lumot

  • Ota elementlar: element, redefine, schema

Sintaksis

<complexType id=ID name=NCName abstract=true|false mixed=true|false block=(#all|list of (extension|restriction)) final=(#all|list of (extension|restriction)) any attributes > (annotation?,(simpleContent|complexContent|((group|all| choice|sequence)?,((attribute|attributeGroup)*,anyAttribute?)))) </complexType>

(? belgisi element complexType elementi ichida nol yoki bir marta, * belgisi esa nol yoki undan ko‘p marta kelishi mumkinligini bildiradi)

Atribut Tavsif
id Ixtiyoriy. Element uchun noyob ID belgilaydi
name Ixtiyoriy. Element uchun nom belgilaydi
abstract Ixtiyoriy. Murakkab tipdan nusxa hujjatda (instance document) foydalanish mumkin yoki mumkin emasligini belgilaydi. True qiymati element bu murakkab tipdan bevosita foydalana olmasligini, balki undan hosil qilingan murakkab tipdan foydalanishi kerakligini bildiradi. Standart qiymat — false
mixed Ixtiyoriy. Ushbu complexType elementining bola elementlari orasida belgili ma’lumotlar (character data) kelishiga ruxsat berilishi yoki berilmasligini belgilaydi. Standart qiymat — false. Agar simpleContent elementi bola element bo‘lsa, mixed atributiga ruxsat berilmaydi!
block Ixtiyoriy. Ko‘rsatilgan hosil qilish turiga (derivation) ega murakkab tipning ushbu murakkab tip o‘rnida ishlatilishini taqiqlaydi. Bu qiymat #all yoki extension yoki restriction qiymatlarining qism to‘plami bo‘lgan ro‘yxatni o‘z ichiga olishi mumkin:
  • extension - kengaytirish (extension) orqali hosil qilingan murakkab tiplarni taqiqlaydi
  • restriction - cheklash (restriction) orqali hosil qilingan murakkab tiplarni taqiqlaydi
  • #all - barcha hosil qilingan murakkab tiplarni taqiqlaydi
final Ixtiyoriy. Ushbu murakkab tipli elementdan ko‘rsatilgan turdagi hosil qilishni (derivation) taqiqlaydi. #all yoki extension yoki restriction qiymatlarining qism to‘plami bo‘lgan ro‘yxatni o‘z ichiga olishi mumkin.
  • extension - kengaytirish orqali hosil qilishni taqiqlaydi
  • restriction - cheklash orqali hosil qilishni taqiqlaydi
  • #all - har qanday hosil qilishni taqiqlaydi
any attributes Ixtiyoriy. Sxemaga oid bo‘lmagan nomlar fazosidagi boshqa har qanday atributlarni belgilaydi

1-misol

Quyidagi misolda murakkab tipga ega "note" nomli element bor:

<xs:element name="note">   <xs:complexType>     <xs:sequence>   <xs:element name="to" type="xs:string"/>   <xs:element name="from" type="xs:string"/>   <xs:element name="heading" type="xs:string"/>   <xs:element name="body" type="xs:string"/>     </xs:sequence>   </xs:complexType> </xs:element>

2-misol

Quyidagi misolda meros olingan tipni uchta qo‘shimcha element (address, city va country) bilan kengaytirish orqali boshqa "personinfo" murakkab tipidan hosil qilingan "fullpersoninfo" murakkab tipi bor:

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

Yuqoridagi misolda "employee" elementi quyidagi elementlarni ketma-ket tartibda o‘z ichiga olishi kerak: "firstname", "lastname", "address", "city" va "country".



❮ To‘liq XML Schema ma’lumotnomasi

W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!