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

ਵਿਕਲਪਿਤ। ਨਿਰਧਾਰਿਤ ਕਰੋ ਕਿ ਇਸ ਵਾਧੂ ਪ੍ਰਕਾਰ ਦੀ ਸ਼੍ਰੇਣੀ ਨੂੰ ਵਰਤਣਾ ਚਾਹੀਦਾ ਹੈ ਜਾਂ ਨਹੀਂ। ਜੇਕਰ ਇਹ ਮੁੱਲ true ਹੈ ਤਾਂ ਐਲੀਮੈਂਟ ਸਿੱਧੇ ਇਸ ਵਾਧੂ ਪ੍ਰਕਾਰ ਦੀ ਸ਼੍ਰੇਣੀ ਦਾ ਵਰਤੋਂ ਨਹੀਂ ਕਰ ਸਕਦਾ ਹੈ ਬਲਕਿ ਉਹ ਵਾਧੂ ਪ੍ਰਕਾਰ ਦੀ ਸ਼੍ਰੇਣੀ ਦਾ ਵਾਧੂ ਪ੍ਰਕਾਰ ਦਾ ਵਰਤੋਂ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ। ਮੂਲ ਮੁੱਲ false ਹੈ。

mixed

ਵਿਕਲਪਿਤ। ਨਿਰਧਾਰਿਤ ਕਰੋ ਕਿ ਕਿਰਿਆਤਮਕ ਸ਼ਬਦਾਂ ਦਾ ਵਰਤੋਂ ਇਸ ਵਾਧੂ ਪ੍ਰਕਾਰ ਦੀ ਸ਼੍ਰੇਣੀ ਦੇ ਉੱਪ ਐਲੀਮੈਂਟਾਂ ਵਿੱਚ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਜਾਂ ਨਹੀਂ। ਮੂਲ ਮੁੱਲ false ਹੈ。

  • ਜੇਕਰ simpleContent ਐਲੀਮੈਂਟ ਚੱਲੇ ਹੋਇਆ ਹੈ ਤਾਂ mixed ਪ੍ਰਤੀਯੋਗਿਤਾ ਨਹੀਂ ਹੋ ਸਕਦੀ。
  • ਜੇਕਰ complexContent ਐਲੀਮੈਂਟ ਚੱਲੇ ਹੋਇਆ ਹੈ ਤਾਂ ਇਹ mixed ਪ੍ਰਤੀਯੋਗਿਤਾ complexContent ਐਲੀਮੈਂਟ ਦੇ mixed ਪ੍ਰਤੀਯੋਗਿਤਾ ਨੂੰ ਲਿਖ ਸਕਦੀ ਹੈ。

block

ਵਿਕਲਪਿਤ। ਰੋਕਣ ਕਿਉਂਕਿ ਨਿਰਧਾਰਿਤ ਵਾਧੂ ਪ੍ਰਕਾਰ ਦੀ ਸ਼੍ਰੇਣੀ ਨੂੰ ਇਸ ਪ੍ਰਕਾਰ ਦੀ ਸ਼੍ਰੇਣੀ ਦੀ ਥਾਂ ਵਿੱਚ ਵਰਤਿਆ ਜਾਵੇ। ਇਹ ਮੁੱਲ #all ਜਾਂ ਇੱਕ ਸੂਚੀ ਹੋ ਸਕਦਾ ਹੈ ਜੋ extension ਜਾਂ restriction ਦੀ ਉਪ ਸੂਚੀ ਹੈ:

  • extension - ਰੋਕਣ ਕਿਉਂਕਿ ਵਾਧੂ ਪ੍ਰਕਾਰ ਦੀ ਸ਼੍ਰੇਣੀ ਨੂੰ ਇਸ ਪ੍ਰਕਾਰ ਦੀ ਸ਼੍ਰੇਣੀ ਦੀ ਥਾਂ ਵਿੱਚ ਵਰਤਿਆ ਜਾਵੇ。
  • restriction - ਰੋਕਣ ਕਿਉਂਕਿ ਵਾਧੂ ਪ੍ਰਕਾਰ ਦੀ ਸ਼੍ਰੇਣੀ ਨੂੰ ਇਸ ਪ੍ਰਕਾਰ ਦੀ ਸ਼੍ਰੇਣੀ ਦੀ ਥਾਂ ਵਿੱਚ ਵਰਤਿਆ ਜਾਵੇ。
  • #all - ਸਾਰੇ ਪ੍ਰਾਪਤੀਆਂ ਦੇ complexType ਨੂੰ ਇਸ complexType ਦੀ ਥਾਂ ਲੈਣ ਤੋਂ ਰੋਕਣ ਲਈ।

final

ਵਿਕਲਪੀ। ਇਸ complexType ਇਲੈਕਟਰਨ ਤੋਂ ਪ੍ਰਾਪਤ ਕੀਤੇ ਗਏ ਟਾਈਪ ਨੂੰ ਰੋਕਣ ਲਈ ਨਿਰਧਾਰਿਤ ਕਰੋ। ਇਹ ਮੁੱਲ #all ਜਾਂ ਇੱਕ ਸੂਚੀ ਹੋ ਸਕਦਾ ਹੈ ਜੋ extension ਜਾਂ restriction ਦੇ ਉਪ-ਸਮੂਹ ਹੋ ਸਕਦੀ ਹੈ。

  • extension - ਵਧਾਉਣ ਦੇ ਮਾਧਿਅਮ ਨਾਲ ਪ੍ਰਾਪਤੀ ਨੂੰ ਰੋਕਣ ਲਈ。
  • restriction - ਸੀਮਿਤ ਕਰਨ ਦੇ ਮਾਧਿਅਮ ਨਾਲ ਪ੍ਰਾਪਤੀ ਨੂੰ ਰੋਕਣ ਲਈ。
  • #all - ਸਾਰੇ ਪ੍ਰਾਪਤੀਆਂ (ਵਧਾਉਣ ਅਤੇ ਸੀਮਿਤ ਕਰਨ) ਨੂੰ ਰੋਕਣ ਲਈ。

ਕੋਈ ਵਿਸ਼ੇਸ਼ਤਾ

ਵਿਕਲਪੀ। ਕਿਸੇ 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" ਜਟਿਲ ਟਾਈਪ ਤੋਂ ਪ੍ਰਾਪਤ ਹੁੰਦਾ ਹੈ:

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