DTD
Belge Yapısı Seçenekleri
Belli bir veriyi tanımlamak için belge oluşturulması gündeme gekldiğinde bir DTD kullanılıp kullanılmayacağına karar verilmelidir. Burada üç olasılık bulunmaktadır :
- DTD Kullanmamak : XML belgesi oluşturuluken belli bir DTD olmaksızın çalışma yapılabilir. Bege yazarları etiketleri gereksinim duydukça yaratırlar. Bu en fazla esnekliği sağlayan durumlardan biridir. Ancak bu durumda belgelerin başka ortamlarda da anlaşılabilir olma özelliği, arada ortak bir DTD olmaması nedeniyle zayıflamış olur.
- Kamuya Açık DTD kullanmak : XML belgelerini oluşturmanın yollarından biri de herkesçe bilinen bir DTD’ye dayanarak çalışmaktır. Böylece birbirinde hiç haberi olmayan uygulamalar ve kişiler veri alışverişinde bulunabilirler. Ancak bu yaklaşımda da gerektiğinde DTD'ye müdahale etme veya etiket düzenleme esnekliği yok olmuş olur.
- DTD Geliştirmek : XML belgeleri geliştirmeden önce oluşturulacak belgelrin yapısını belirleyerek bir DTD geliştirilebilir. Her kurum kendi ihtiyacına uygun belge türleri tanımlar ve onlara dayanarak belge üretir.
DTD Kütüphaneleri
Bir çok firma veya kurum, belli bir alanada bilgi alışverişini standart hale getirebilecek DTD'ler oluşturmuşlardır. Daha önce kullanılan PDF, VRML gibi bir çok format’ın XML versiyonunda da üretilebilmesini sağlamak için DTD'ler üretilebilmektedir. Bunlardan başka CFML , BML gibi belli bir düzeye kadar programlama ve yazmalama (scripting) özelliklerine sahip olanlar bulunmaktadır. CDF (Kanal Tanımlama Formatı - Channel Definition Format) ve MathML (Matematik İşleretleme Dili - Mathematics Markup Language) formatları hali hazırda yaygın olarak kullanılmaktadır.
XHTML
HTML, XML'in belli bir etiket setine ve DTD'ye sahip olan bir uygulaması olarak düşünülebilir. Daha önce kullanılan bütün HTML etiketleri ve özellikleri XHTML adıyla XML formatına göre tanımlanmış bulunmaktadır. Ancak şu anda geçerli HTML standardı ile XHTML arasında bazı küçük farklar bulunmaktadır.Yakın bir tarihte bütün HTML belgelerinin XHTML formatında üretilmeye başlanacağı tahmin edilmektedir. Böylelikle, belli bir DTD'ye sahip XML belgelerini yorumlayabilen ve işleyebilen her uygulama XHTML'yi de otamatik işleyebilecektir.
XHTML formatı, XML'in kurallarına uymak zorunda olduğından, HTML formatına göre küçük farklılıklar içermektedir. HTML standardına uymadığı halde daha önce hoş görülen özellikler XHTML'de kabul görmez. XML büyük-küçük duyarlı olduğundan bütün etiketler küçük harfle belirtilmelidir. Boş olmayan her eleman bir kapatıcı ertiket içermelidir. Bütün özellikler tırnak içinde verilir. Özelliklere değer verilmemesi (minimizasyon) XHTML'de kabul görmez. Boş elemanlar <etiket/> biçiminde kullanılmalıdır.