Home » XML » XSD : Hanya Teks – Kode dan Contohnya

XSD : Hanya Teks – Kode dan Contohnya

by Hanifah Nurbaeti
by Hanifah Nurbaeti

Elemen “text-only” yang kompleks dapat berisi teks dan atribut.

Elemen Teks Saja yang Kompleks

Tipe ini hanya berisi konten sederhana (teks dan atribut), oleh karena itu kita akan menambahkan elemen simpleContent di sekitar konten. Saat menggunakan konten sederhana, kita harus menentukan ekstensi ATAU batasan dalam elemen simpleContent, seperti ini:

<xs:element name="somename">
  <xs:complexType>
    <xs:simpleContent>
      <xs:extension base="basetype">
        ....
        ....
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
</xs:element>

OR

<xs:element name="somename">
  <xs:complexType>
    <xs:simpleContent>
      <xs:restriction base="basetype">
        ....
        ....
      </xs:restriction>
    </xs:simpleContent>
  </xs:complexType>
</xs:element>

Tip: Gunakan elemen ekstensi / pembatasan untuk memperluas atau untuk membatasi jenis dasar sederhana untuk elemen tersebut.

Berikut adalah contoh elemen XML, “shoesize”, yang hanya berisi teks:

<shoesize country="france">35</shoesize>

Contoh berikut mendeklarasikan complexType, “shoesize”. Konten ditentukan sebagai nilai integer, dan elemen “shoesize” juga berisi atribut bernama “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>

Kita juga bisa memberi nama pada elemen complexType, dan membiarkan elemen “shoesize” memiliki atribut tipe yang merujuk ke nama complexType (jika kita menggunakan metode ini, beberapa elemen bisa merujuk ke tipe kompleks yang sama):

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

You may also like