XML Schema complexType এলিমেন্ট

নির্দিষ্টকরণ এবং ব্যবহার

complexType এলিমেন্টটি জটিল টাইপকে নির্দিষ্ট করে। জটিল টাইপের এলিমেন্টগুলি একটি XML এলিমেন্ট যা অন্য এলিমেন্ট এবং/অথবা অ্যাট্রিবিউটগুলি ধারণ করে。

元素信息

出现次数 在架构内为无限制;在元素内为一次。
父元素 element、redefine、schema
内容 annotation、simpleContent、complexContent、group、all、choice、sequence、attribute、attributeGroup、anyAttribute

语法

কোনও attributes
>
(annotation?,(simpleContent|complexContent|((group|all| 
choice|sequence)?,((attribute|attributeGroup)*,anyAttribute?))))

(? 符号声明在 complexType 元素中,元素可出现零次或一次,* 符号声明元素可出现零次或多次。)

অতিরিক্ত

আইডি

বাছাইযোগ্য। এই ইলেকট্রনের অতিরিক্ত আইডি নির্দিষ্ট করুন

নাম

বাছাইযোগ্য। ইলেকট্রনের নাম নির্দিষ্ট করুন

অবস্থাপক

বাছাইযোগ্য। ইনস্ট্যান্স ডকুমেন্টের মধ্যে এই জটিল ধরনটির ব্যবহার করা যায় কি না এই নির্দিষ্ট করুন। যদি এই মান true হলে, ইলেকট্রনটির পরিবর্তে এই জটিল ধরনটির পরিবর্তে প্রসারিত জটিল ধরনকে ব্যবহার করতে হবে। ডিফল্ট মান false

মিক্সেড

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

  • যদি simpleContent ইলেকট্রন হলে, mixed এটি অনুমদিত নয়
  • যদি complexContent ইলেকট্রন হলে, mixed এটি complexContent ইলেকট্রনের mixed এর মাধ্যমে পুনরায় লিখিত হতে পারে

ব্লক

বাছাইযোগ্য। নির্দিষ্ট প্রসারিত ধরনভুক্ত জটিল ধরনটির পরিবর্তে এই জটিল ধরনটির পরিবর্তে ব্যবহার করা না হওয়ার জন্য প্রতিবন্ধন করুন। এই মানটি #all বা একটি তালিকা হতে পারে যা extension বা restriction এর উপাদান

  • প্রসার - এই জটিল ধরনটির পরিবর্তে এই জটিল ধরনটির প্রসারিত ধরনকে ব্যবহার করা না হওয়ার জন্য প্রসার করুন。
  • প্রতিবন্ধন - এই জটিল ধরনটির পরিবর্তে এই জটিল ধরনটির প্রসারিত ধরনকে ব্যবহার করা না হওয়ার জন্য প্রতিবন্ধন করুন。
  • #all - প্রত্যেকটি উত্তরসূরীকরণকারী complexType ধরনকে নির্দিষ্ট complexType ধরনের পরিবর্তে ব্যবহার করা প্রতিরোধ করুন।

final

অপ্রয়োজনীয়।একটি complexType এলিমেন্ট থেকে নির্দিষ্ট ধরন উত্তরসূরীকরণ প্রতিরোধ করুন।এই মানের মানদণ্ড #all বা একটি তালিকা যা extension বা restriction এর সমন্বয়কে সমাবেশ করে।

  • extension - প্রসারের মাধ্যমে উত্তরসূরীকে প্রতিরোধ করুন。
  • restriction - প্রতিবন্ধনের মাধ্যমে উত্তরসূরীকে প্রতিরোধ করুন。
  • #all - প্রত্যেকটি উত্তরসূরীকে (প্রসার এবং প্রতিবন্ধন) প্রতিরোধ করুন。

কোনও attributes

অপ্রয়োজনীয়।নমুনা নির্দেশকে কোনও non-schema নামকরণের অসংখ্য অন্যান্য বৈশিষ্ট্য নির্দিষ্ট করে。

একটি উদাহরণ

উদাহরণ 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" প্রসারিত করে এবং আরেকটি জটিল ধরন "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"。