Pendidikan DTD

Pengertian Jenis Dokumen (DTD) boleh menentukan modul penggubal dokumen XML yang sah. Ia menggunakan sekumpulan elemen sah untuk menentukan struktur dokumen.

DTD boleh diisytiharkan secara baris di dalam dokumen XML, atau sebagai rujukan luaran.

Pernyataan DOCTYPE dalaman

Jika DTD disertakan dalam fail XML sumber anda, ia seharusnya diwarisi dalam pernyataan DOCTYPE di bawah ini:

!DOCTYPE root-element [deklarasi-elemen]>

Contoh dokumen XML dengan DTD (sila buka di IE5 dan versi yang lebih tinggi, dan pilih Lihat Kod Sumber):

<?xml version="1.0"?>
!DOCTYPE note [
  !ELEMENT note (to,from,heading,body)
  !ELEMENT to      (#PCDATA)
  !ELEMENT from    (#PCDATA)
  !ELEMENT heading (#PCDATA)
  !ELEMENT body    (#PCDATA)
]>
<note>
  <to>George</to>
  <from>John</from>
  <heading>Peringatan</heading>
  <body>Ingatkan pertemuan!</body>
</note>

Buka fail XML ini di dalam pelayar anda dan pilih arahan "Lihat Kod Sumber".

Pengertian DTD di bawah ini adalah:

!DOCTYPE note (baris ke-2) definisi dokumen ini adalah note dokumen jenis.

!ELEMENT note (baris ke-3) definisi note Elemen mempunyai empat elemen: "to,from,heading,body"

!ELEMENT to (baris ke-4) definisi to Elemen adalah jenis "#PCDATA"

!ELEMENT from (baris ke-5) definisi from Elemen adalah jenis "#PCDATA"

!ELEMENT heading (baris ke-6) definisi heading Elemen adalah jenis "#PCDATA"

!ELEMENT body (baris ke-7) definisi body Elemen adalah jenis "#PCDATA"

Pengumuman dokumen luaran

Jika DTD berada di luar fail sumber XML, ia seharusnya disertakan dalam definisi DOCTYPE di bawah ini:

!DOCTYPE root-element SYSTEM "nama-file">

Dokumen XML ini sama seperti dokumen XML di atas, tetapi mempunyai DTD luaran: (Buka dalam IE5Pilih arahan "Lihat Kod Sumber".)

<?xml version="1.0"?>
!DOCTYPE note SYSTEM "note.dtd"
<note>
<to>George</to>
<from>John</from>
<heading>Peringatan</heading>
<body>Ingatkan pertemuan!</body>
</note>

Ini adalah fail "note.dtd" yang mengandungi DTD:

!ELEMENT note (to,from,heading,body)
!ELEMENT to (#PCDATA)
!ELEMENT from (#PCDATA)
!ELEMENT heading (#PCDATA)
!ELEMENT body (#PCDATA)

为什么使用 DTD?

通过 DTD,您的每一个 XML 文件均可携带一个有关其自身格式的描述。

通过 DTD,独立的团体可一致地使用某个标准的 DTD 来交换数据。

而您的应用程序也可使用某个标准的 DTD 来验证从外部接收到的数据。

您还可以使用 DTD 来验证您自己的数据。