XSD ਕੇਵਲ ਟੈਕਸਟ ਕੰਪਲੈਕਸ ਐਲੀਮੈਂਟ

ਸਿਰਫ ਟੈਕਸਟ ਵਾਲਾ ਕੰਪਲੈਕਸ ਐਲੀਮੈਂਟ ਵਿੱਚ ਟੈਕਸਟ ਅਤੇ ਅਟਰੀਬਿਊਟ ਹੋ ਸਕਦੇ ਹਨ。

ਸਿਰਫ ਟੈਕਸਟ ਵਾਲਾ ਕੰਪਲੈਕਸ ਐਲੀਮੈਂਟ

ਇਹ ਟਾਈਪ ਸਿਰਫ ਸਰਲ ਸਮਾਨ ਵਿੱਚ ਹੈ (ਟੈਕਸਟ ਅਤੇ ਅਟਰੀਬਿਊਟ), ਇਸ ਲਈ ਅਸੀਂ ਇਸ ਸਮਾਨ ਵਿੱਚ simpleContent ਐਲੀਮੈਂਟ ਜੋੜਨਾ ਚਾਹੁੰਦੇ ਹਾਂ। ਜਦੋਂ ਅਸੀਂ simpleContent ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਾਂ ਤਾਂ ਅਸੀਂ ਇਸ ਵਿੱਚ ਵਧਾਉਣ ਜਾਂ ਸੀਮਿਤ ਕਰਨ ਦੀ ਵਿਸ਼ੇਸ਼ਤਾ ਨਿਰਧਾਰਿਤ ਕਰਨੀ ਚਾਹੁੰਦੇ ਹਾਂ, ਜਿਵੇਂ ਇਹ ਹੈ:

<xs:element name="ਕੋਈ ਨਾਮ">
  <xs:complexType>
    <xs:simpleContent>
      <xs:extension base="basetype">
        ....
        ....
      </xs:extension>     
    </xs:simpleContent>
  </xs:complexType>
</xs:element>

ਜਾਂ:

<xs:element name="ਕੋਈ ਨਾਮ">
  <xs:complexType>
    <xs:simpleContent>
      <xs:restriction base="basetype">
        ....
        ....
      </xs:restriction>     
    </xs:simpleContent>
  </xs:complexType>
</xs:element>

ਸੁਝਾਅ:extension ਜਾਂ restriction ਐਲੀਮੈਂਟ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਐਲੀਮੈਂਟ ਦੇ ਮੂਲ ਸਰਲ ਟਾਈਪ ਨੂੰ ਵਧਾਉਣ ਜਾਂ ਸੀਮਿਤ ਕਰਨ ਲਈ ਵਰਤੋਂ ਕਰੋ。

ਇੱਥੇ ਇੱਕ XML ਐਲੀਮੈਂਟ ਦਾ ਉਦਾਹਰਣ ਹੈ, 'shoesize', ਜਿਸ ਵਿੱਚ ਸਿਰਫ ਟੈਕਸਟ ਹੈ:

<shoesize country="france">35</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' ਐਲੀਮੈਂਟ ਦੇ type ਅਟਰੀਬਿਊਟ ਨੂੰ ਇਸ ਨਾਮ ਨੂੰ ਹਵਾਲਾ ਦੇਣ ਲਈ ਵਰਤ ਸਕਦੇ ਹਾਂ (ਇਸ ਤਰ੍ਹਾਂ, ਕਈ ਐਲੀਮੈਂਟ ਇਸੇ ਕੰਪਲੈਕਸ ਟਾਈਪ ਨੂੰ ਹਵਾਲਾ ਦੇ ਸਕਦੇ ਹਨ):

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