DTD Tanıtımı

Doküman türü tanımı (DTD) geçerli bir XML belgesinin yapı taşlarını tanımlayabilir. Bu, belgenin yapısını tanımlamak için bir dizi geçerli element kullanır.

DTD XML belgesinde satır satır beyan edilebilir veya bir dış alıntı olarak yapılabilir.

İç DOCTYPE beyanı

Eğer DTD XML kaynak dosyanızda içeriliyorsa, aşağıdaki dilbilgisi ile bir DOCTYPE beyanı içinde sarılmalıdır:

<!DOCTYPE kök elementi [element beyanları]>

DTD ile donatılmış XML dosyası örneği (IE5 ve daha yüksek sürümlerde açın ve "Kaynak Kodunu Göruntüle" seçin):

<?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>Hatırlatma</heading>
  <body>Toplantıyı unutmayın!</body>
</note>

Bu XML dosyasını tarayıcınızda açın ve "Kaynak Kodunu Göruntüle" komutunu seçin.

Yukarıdaki DTD açıklaması aşağıdaki gibidir:

!DOCTYPE note [ (İkinci satır) tanımı bu belgeyi note türündeki belge.

!ELEMENT note (Üçüncü satır) tanımı note Element dört element içerir: "to, from, heading, body"

!ELEMENT to (Dördüncü satır) tanımı to Element "#PCDATA" türünde

!ELEMENT from (Beşinci satır) tanımı from Element "#PCDATA" türünde

!ELEMENT heading (Altıncı satır) tanımı heading Element "#PCDATA" türünde

!ELEMENT body (Yedinci satır) tanımı body Element "#PCDATA" türünde

Dış dosya beyanı

Eğer DTD XML kaynak dosyasının dışında yer alıyorsa, aşağıdaki dilbilgisi ile bir DOCTYPE tanımı içinde sarılmalıdır:

<!DOCTYPE kök element SYSTEM "dosya adı">

Bu XML belgesi, yukarıdaki XML belgesi ile aynıdır, ancak bir dış DTD'ye sahiptir: (IE5'te Açve "Kaynak Kodunu Gör" komutunu seçin.)

<?xml version="1.0"?>
<!DOCTYPE note SYSTEM "note.dtd">
<note>
<to>George</to>
<from>John</from>
<heading>Hatırlatma</heading>
<body>Toplantıyı unutmayın!</body>
</note>

Bu, DTD içeren "note.dtd" dosyasıdır:

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

DTD neden kullanılır?

DTD ile her XML dosyası, kendi biçimini tanımlayan bir açıklama taşıyabilir.

DTD ile bağımsız gruplar, bir standart DTD kullanarak veri alışverişinde bulunabilir.

Ayrıca, uygulamanızın dışarıdan alınan verileri doğrulamak için bir standart DTD kullanabilir.

Ayrıca, DTD kullanarak kendi verilerinizi doğrulayabilirsiniz.