Home » XML » DTD (Document Type Definition) XML

DTD (Document Type Definition) XML

by Hanifah Nurbaeti
by Hanifah Nurbaeti

Dokumen XML dengan sintaks yang benar disebut “Well Formed”.

Dokumen XML yang divalidasi terhadap DTD memiliki “Well Formed” dan “Valid”.

Apa itu DTD?

DTD adalah singkatan dari Document Type Definition.

DTD mendefinisikan struktur dan elemen hukum serta atribut dokumen XML.

Dokumen XML yang Valid

Dokumen XML yang “Valid” adalah “Well Formed”, serta sesuai dengan aturan DTD:

Contoh :

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE note SYSTEM "Note.dtd">
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Pengingat !!!</heading>
<body>Jangan lupa janji temu minggu ini!</body>
</note>

Deklarasi DOCTYPE di atas berisi referensi ke file DTD. Konten file DTD ditampilkan dan dijelaskan di bawah ini.

XML DTD

Tujuan DTD adalah untuk menentukan struktur dan elemen hukum serta atribut dokumen XML:

Note.dtd :

<!DOCTYPE note
[
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
]>

DTD di atas diinterpretasikan seperti ini:

  • ! Catatan DOCTYPE – Mendefinisikan bahwa elemen root dari dokumen adalah catatan
  • ! ELEMEN note – Mendefinisikan bahwa elemen note harus mengandung elemen: “to, from, heading, body”
  • ! ELEMEN ke – Mendefinisikan elemen ke menjadi berjenis “#PCDATA”
  • ! ELEMEN dari – Mendefinisikan elemen from menjadi berjenis “#PCDATA”
  • ! ELEMEN heading – Mendefinisikan elemen heading menjadi jenis “#PCDATA”
  • ! ELEMEN body – Mendefinisikan elemen body dengan tipe “#PCDATA”

Tip: #PCDATA berarti data karakter yang dapat diurai.

Menggunakan DTD untuk Deklarasi Entitas

Deklarasi DOCTYPE juga dapat digunakan untuk menentukan karakter atau string khusus, yang digunakan dalam dokumen:

Contoh :

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE note [
<!ENTITY nbsp " ">
<!ENTITY writer "Writer: Donald Duck.">
<!ENTITY copyright "Copyright: W3Schools.">
]>

<note>
<to>Tove</to>
<from>Jani</from>
<heading>Pengingat !</heading>
<body>Jangan lupa bertemu pekan ini!</body>
<footer>&writer;&nbsp;&copyright;</footer>
</note>x

Tip: Entitas memiliki tiga bagian: dimulai dengan ampersand (&), lalu muncul nama entitas, dan diakhiri dengan titik koma (;).

Kapan Menggunakan DTD?

Dengan DTD, sekelompok orang independen dapat setuju untuk menggunakan DTD standar untuk bertukar data.

Dengan DTD, kita bisa memverifikasi bahwa data yang kita terima dari dunia luar valid.

Kita juga dapat menggunakan DTD untuk memverifikasi data kita sendiri.

Kapan TIDAK Menggunakan DTD?

XML tidak membutuhkan DTD.

Saat Kita bereksperimen dengan XML, atau saat kita sedang bekerja dengan file XML kecil, membuat DTD mungkin membuang-buang waktu.

Jika ingin mengembangkan aplikasi, tunggu hingga spesifikasinya stabil sebelum menambahkan DTD. Jika tidak, perangkat lunak mungkin berhenti berfungsi karena kesalahan validasi.

You may also like