XML Schema complexType ইলেকট্রন

নির্দেশ ও ব্যবহার

complexType ইলেকট্রন জটিল ধরন নির্দিষ্ট করে। জটিল ধরনের ইলেকট্রন একটি XML ইলেকট্রন যা অন্য ইলেকট্রন এবং/অথবা বৈশিষ্ট্য ধারণ করে。

ইলেকট্রন তথ্য

উপস্থিতির সংখ্যা আকারের মধ্যে অসীমিত; ইলেকট্রনের মধ্যে একবার।
পিতৃ ইলেকট্রন element、redefine、schema
বিষয় annotation、simpleContent、complexContent、group、all、choice、sequence、attribute、attributeGroup、anyAttribute

ভাষা

<complexType
id=ID 
name=NCName 
abstract=true|false 
mixed=true|false
block=(#all|list of (extension|restriction))
final=(#all|list of (extension|restriction))
কোনও বৈশিষ্ট্য
>
(annotation?,(simpleContent|complexContent|((group|all| 
choice|sequence)?,((attribute|attributeGroup)*,anyAttribute?))))
</complexType>

(? সংকেতটি complexType ইমেলে প্রকাশ করা হয়, ইমেলটির উপস্থিতি শূন্য বা একবার হতে পারে, * সংকেতটি ইমেলটির উপস্থিতি শূন্য বা বারবার হতে পারে।)

অবিকল্পিক

id

সাংকেতিক।এই ইমেলটির একক ID নির্দেশ দিয়েছে।

name

সাংকেতিক।এই ইমেলটির নাম নির্দেশ দিয়েছে।

abstract

সাংকেতিক।এই complexType ইমেলটিতে কি জটিল টাইপকে ব্যবহার করা যাওয়ার ব্যাপারে নির্দেশ দিয়েছে।যদি এই মানটি true হয়, তবে ইমেলটির সরাসরি এই complexType ইমেলটি ব্যবহার করা যাবে না, বরং এই complexType ইমেলটি থেকে উত্তরণকৃত complexType ইমেলটি ব্যবহার করতে হবে।ডিফল্ট মানটি false।

mixed

সাংকেতিক।এই complexType ইমেলটির সাব-ইমেলগুলোর মধ্যে অক্ষর তথ্য ব্যবহার করা যাওয়ার ব্যাপারে নির্দেশ দিয়েছে।ডিফল্ট মানটি false।

  • যদি simpleContent ইমেলটি সাব-ইমেল, তবে mixed বৈশিষ্ট্যটি ব্যবহার করা যাবে না。
  • যদি complexContent ইমেলটি সাব-ইমেল, তবে এই mixed বৈশিষ্ট্যটি complexContent ইমেলটির mixed বৈশিষ্ট্যকে লিখিত করা যেতে পারে。

block

সাংকেতিক।এই complexType ইমেলকে নির্দিষ্ট উত্তরণকৃত টাইপকে ব্যবহার করা থেকে রক্ষা করুন।এই মানটি #all বা একটি তালিকা যা extension বা restriction এর উপকল্প হতে পারে হতে পারে:

  • extension - এই complexType ইমেলকে উত্তরণকৃত সম্প্রসারিত জটিল টাইপকে ব্যবহার করা থেকে রক্ষা করুন。
  • restriction - এই complexType ইমেলকে উত্তরণকৃত সীমাবদ্ধ জটিল টাইপকে ব্যবহার করা থেকে রক্ষা করুন。
  • #all - এই complexType ইমেলকে উত্তরণকৃত সবকটি জটিল টাইপকে ব্যবহার করা থেকে রক্ষা করুন。

final

সাংকেতিক।এই complexType ইমেলের থেকে নির্দিষ্ট টাইপকে উত্তরণ করা থেকে রক্ষা করুন।এই মানটি #all বা একটি তালিকা যা extension বা restriction এর উপকল্প হতে পারে হতে পারে。

  • extension - সম্প্রসারণ দ্বারা উত্তরসূরী প্রতিরোধ করে।
  • restriction - পৃথকীকরণ দ্বারা উত্তরসূরী প্রতিরোধ করে।
  • #all - সকল উত্তরসূরী (সম্প্রসারণ এবং পৃথকীকরণ) প্রতিরোধ করে।

কোনও বৈশিষ্ট্য

বাধ্যতাহীন।নন-স্কেমা নামকরণ মঞ্চকে যে কোনও অন্য বৈশিষ্ট্যকে নির্দিষ্ট করুন。

একটি উদাহরণ

উদাহরণ 1

এই উদাহরণে "note" নামের একটি জটিল ধরনের উপাদান রয়েছে:

<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

এই উদাহরণে একটি জটিল ধরন "fullpersoninfo" রয়েছে যা তিনটি অতিরিক্ত উপাদান (address, city এবং country) ব্যবহার করে উত্তরসূরী ধরনকে সম্প্রসারিত করে, যা আরেকটি জটিল ধরন "personinfo" থেকে উদ্ভূত:

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

在上面的例子中,上面的 "employee" 元素必须按顺序包含下列元素:"firstname", "lastname", "address", "city" 以及 "country"。