XSD ਕੰਪਲੈਕਸ ਟਾਈਪ - ਸਿਰਫ ਟੈਕਸਟ

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

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

ਇਹ ਟਾਈਪ ਸਿਰਫ ਸਰਲ ਸਮਾਂਤਰ ਸਮੇਤ ਹੈ (ਟੈਕਸਟ ਅਤੇ ਅਟਰੀਬਿਊਟ), ਇਸ ਲਈ ਅਸੀਂ ਇਸ ਸਮਾਂਤਰ ਵਿੱਚ simpleContent ਐਲੀਮੈਂਟ ਜੋੜਨਾ ਚਾਹੁੰਦੇ ਹਾਂ। ਜਦੋਂ ਅਸੀਂ 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>