Seperti halnya HTML, XML berdasarkan pada elemen terkecil yang disebut tag. Syarat pertama tag-tag tersebut harus berpasangan, dan tidak boleh overlapping.
Contoh: a b b a
Sedangkan contoh berikut bukanlah dokumen yang well-formed: a b a b
Syarat kedua adalah adanya elemen puncak dokumen root elemen. Contoh dokumen berikut tidak well-formed karena tidak adanya satu elemen puncak:
a a b b Tetapi contoh berikut adalah well-formed:
a a atau:
c a a b b c
2.4.2.3 DTD dan Validasi XML
Di dalam XML dimungkinkan juga penggunaan DTD Document Type Defenition untuk menjaga validitas dari dokumen XML yang dibuat. Mengingat data yang akan
kita konversikan berasal dari pangkalan data, penggunaan DTD di dalam dokumen XML juga akan sangat menguntungkan karena kita dapat menjaga konsistensi dan
integritas data, baik dari struktur maupun tipe data yang digunakan.
Tahapan berikutnya dari well-formed adalah valid. Dokumen XML yang valid adalah yang memenuhi aturan DTD. Dengan demikian dokumen XML yang valid
adalah dokumen XML yang sudah well-formed dan memenuhi aturan DTD. DTD adalah suatu aturan yang mendefinisikan bagaimana seharusnya struktur isi suatu
dokumen XML. Jika sebelumnya kita bebas menentukan isi dari dokumen XML, maka disini isi dokumen harus sesuai dengan struktur dari dokumen. Analog dengan
kalau kita mendefinisikan jumlah dan jenis field dari suatu tabel pada database, maka setiap record harus sesuai dengan struktur tabel tersebut. Beberapa cara menulis
aturan validasi:
Marius Indra N Ginting : Analisis Konversi Data Antar Sistem Pangkalan Data Microsoft Excel dan Sistem Pangkalan Data MySQL Pada Departemen Ilmu Komputer Universitas Sumatera Utara Menggunakan Extensible Markup Language XML, 2009.
USU Repository © 2009
a. Document Type Definition DTD b. XML-Data Reduced Language XDR biasa disebut format schema Microsoft.
c. XML Schema Definition XSD biasa disebut format schema W3C.
Berikut adalah kerangka sebuah XML yang memuat aturan DTD:
?xml version=”1.0” encoding=”UTF-8” standalone=”yes” ? DOCTYPE elemen_puncak [
ELEMENT elemen_puncak elemen_cabang ELEMENT elemen_cabang data1, data2
ELEMENT data1 PCDATA ELEMENT data2 PCDATA
] elemen_puncak
elemen_cabang data1 Isi data1 data1
data2 Isi data2 data2 elemen_cabang
elemen_puncak
Dari dokumen ini dapat dijelaskan sebagai berikut: a. standalone ”yes”, artinya definisi DTD berada secara internal dalam dokumen
XML. b. Elemen puncak DOCTYPE adalah elemen_puncak, suatu dokumen XML
hanya boleh memiliki tepat satu DOCTYPE. c. elemen_puncak memuat satu elemen elemen_cabang.
d. elemen_cabang memuat satu elemen data1 dan satu elemen data2. e. Elemen data1 berisi data.
f. Elemen data2 berisi data.
PCDATA Parsed Character Data adalah isi data hanya ada tipe teks saja di XML.
Marius Indra N Ginting : Analisis Konversi Data Antar Sistem Pangkalan Data Microsoft Excel dan Sistem Pangkalan Data MySQL Pada Departemen Ilmu Komputer Universitas Sumatera Utara Menggunakan Extensible Markup Language XML, 2009.
USU Repository © 2009
Dari dokumen XML diatas dapat dilihat bahwa dokumen tersebut sudah well- formed dan memenuhi aturan DTD yang dibuat. Jadi, dokumen tersebut dapat
dikatakan valid.
Dokumen XML diatas adalah dokumen XML yang menggunakan internal DTD, selain menggunakan internal DTD. DTD sebenarnya tidak harus muncul di
dalam dokumen valid yang ditentukan; sekalipun demikian, jika ia tidak muncul, maka harus ada pointer untuk hal tersebut, dengan kata lain kita dapat mereferensikan
suatu DTD ke file XML Simpson, 1999. DTD ini disebut dengan Eksternal DTD. Eksternal DTD artinya DTD diletakkan pada file terpisah dari dokumen XML. Ini
berguna bila DTD tersebut akan dipergunakan atau diacu oleh sejumlah dokumen XML.
2.4.3 Kegunaan XML