XML DTD
- Önceki Sayfa XML Doğrulayıcı
- Sonraki Sayfa XML Şeması
Gramer doğru olan XML belgesi “formatlı” olarak adlandırılır.
DTD'ye göre doğrulanmış XML belgesi hem “formatlı” hem de “geçerli”dir.
DTD nedir?
DTD Doküman Türü Tanımı (Document Type Definition) kısaltmasıdır.
DTD XML belgesinin yapısını ve geçerli elementleri ve özellikleri tanımlar.
Geçerli XML belgesi
“Geçerli” olan XML belgesi hem “formatlı” hem de DTD kurallarına uygundur:
<?xml version="1.0" encoding="UTF-8"?> !DOCTYPE note SYSTEM "Note.dtd"> <note> <to>George</to> <from>John</from> <heading> Hatırlatma</heading> <body>Toplantıyı unutmayın!</body> </note>
Yukarıdaki DOCTYPE ifadesi DTD dosyasına olan atıfı içerir. Aşağıda DTD dosyasının içeriği gösterilir ve açıklanır.
XML DTD
DTD'nin amacı, XML belgesinin yapısını ve geçerli elementleri ve özellikleri tanımlamaktır:
Note.dtd:
!DOCTYPE note [ !ELEMENT note (to,from,heading,body) <!ELEMENT to (#PCDATA)> <!ELEMENT from (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMENT body (#PCDATA)> ]>
Yukarıdaki DTD açıklamaları şu şekilde yapılır:
!DOCTYPE note - belgenin kök elementini note olarak tanımlar !ELEMENT note - note elementinin aşağıdaki elementleri içermesi gerektiğini tanımlar: "to, from, heading, body" !ELEMENT to - to elementini "#PCDATA" türüne tanımlar !ELEMENT from - from elementini "#PCDATA" türüne tanımlar !ELEMENT heading - heading elementini "#PCDATA" türüne tanımlar !ELEMENT body - body elementini "#PCDATA" türüne tanımlar
İpucu:#PCDATA, parse edilebilir karakter verisini (parseable character data) temsil eder.
DTD ile entite bildirimi yapma
DOCTYPE bildirimi, belgede kullanılan özel karakterleri veya dizileri tanımlamak için de kullanılabilir:
Örnek
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE note [ <!ENTITY nbsp "ꀴot;"> <!ENTITY writer "Yazar: Bill Gates."> <!ENTITY copyright "Telif Hakkı: CodeW3C.com."> ]> <note> <to>George</to> <from>John</from> <heading> Hatırlatma</heading> <body>Toplantıyı unutmayın!</body> <footer>&writer; ©right;</footer> </note>
İpucu:Bir entite, işaret (#) ile başlar, ardından entite adı gelir ve son olarak noktalama işareti (;) ile sona erer.
DTD ne zaman kullanılır?
DTD ile bağımsız gruplar, veri takas standartlarını belirlemek için anlaşabilir.
DTD kullanarak, dışarıdan alınan verilerin geçerli olup olmadığını doğrulayabilirsiniz.
DTD kullanarak kendi verilerinizi doğrulayabilirsiniz.
DTD öğrenmek istiyorsanız, bizim DTD Eğitimi.
DTD ne zaman kullanılmaz?
XML için DTD zorunlu değildir.
XML test ediyorsanız veya çok küçük bir XML dosyası kullanıyorsanız, DTD oluşturmak zaman kaybı olabilir.
Uygulama geliştiriyorsanız, standartlar istikrarlı hale gelene kadar DTD eklemeyin. Aksi takdirde, yazılımınız doğrulama hataları nedeniyle çalışmayı durdurabilir.
- Önceki Sayfa XML Doğrulayıcı
- Sonraki Sayfa XML Şeması