XML Doküman tipi Tanımlanması Kısım 1
xml January 27th, 2008->
| Bu yazımızdan önceki yazılarımızda XML’in yapısını ve nasıl görüntülenebileceğini basit bir şekilde anlatmaya çalışmıştım. Şimdi sıra XML belgelerimizi bir standart yapıya nasıl kavuşturacağımıza geldi.
XML belgemizi standart bir hale sokmalıyız? Daha önceki yazılarımızda XML ‘in ana çıkış amaçlarından birisinin veri depolama olduğunu görmüştük. Örneğin bir projede XML belgeleri oluşturulması isteniyor ve bu belgeler özel bir yazılım sayesinde işlenecek. Tüm kullanıcıların XML belgeleri önceden tanımlanmış ortak bir DTD (Document Type Defination) içerirse, bu belgelerin istenilen yapıya uygun olması, çalışanların gelişigüzel yeni etiketler eklememeleri, etiketlerle depolanan bilgiyi hatalı sıralamamaları, etiketlerine hatalı nitelikler eklememeleri sağlanır. Ayrıca işlem yapan programında bu belgeleri tanıması ve işlemesi garanti altına alınmış olunur. Bir DTD’nin genel biçimi aşağıdaki gibidir.
Buradaki name kısmı belgemizdeki kök elemanının adını belirtir. DTD kısmı ise belgede geçecek olan etiketlerin, etiket niteliklerinin ve diğer özelliklerinin tanımlarının bulunduğu kısımdır. Pekala şimdi basit bir örnek görelim;
Tâbi ki DTD bildirimlerimizi sadece belgemizin içinde yapmamaktayız. Ayrıca dışarıdan herhangi bir DTD ‘yi belgemizin içinde kullanmak amacıyla XML belgemize ekleyebilmekteyiz. Bir DTD belgesini XML belgemize eklememiz için gerekli olan söz dizilimi aşağıdaki gibidir.
Az önce incelediğimiz basit örneğimizdeki DTD tanımlamasını dış bir dosyadan alırsak aşağıdaki şekilde düzenlememiz gerekecektir. basit.xml :
ya da
XML belgemizde IMAGE elemanını aşağıdaki şekillerde kullanabiliriz. <IMAGE></IMAGE> veya <IMAGE />
Nitelik Bildirimleri: Elemanlarımızın alabilecekleri veya almaları gereken nitelikleri dtd içerisinde tanımlamanız gerekmektedir. Bu bildirim sayesinde: Elemanla ilişkili nitelik adları tanımlanır. Geçerli bir XML belgesinde bir elemanın başlangıç etiketinde yalnızca bu eleman için tanımladığımız nitelikleri kullanabiliriz. Bu niteliklerin veri türleri belirlenir. Her niteliğin gerekli olup olmadığı (REQUIRED), eğer gerekli değilse ve belirtilmediyse işlemcinin ne yapacağını belirtir. Bir nitelik bildiriminin söz dizimi aşağıdaki gibidir: <!ATTLIST Eleman_adi Nitelik_adi Nitelik_tipi default_deger> Burada Eleman_adi olarak nitelik belirteceğimiz elemanın adını, nitelik adı olarak verilecek niteliğin adını yazmaktayız. Ayrıca nitelik tipi ve eğer nitelik belirtilmezse default değer yerine verilen değer ile işlemcinin nasıl bir işlem yapacağını belirtmekteyiz. Örneğin;
Nitelik tipleri aşağıdaki değerleri alabilir.
Default Değer aşağıdaki değerleri alabilir.
Bu yazımızda XML belgemize nasıl DTD tanımları ekleyerek standart bir yapıya nasıl kavuşturacağımız hakkında bilgi vermeye çalıştık. Bundan sonraki yazılarımızda DTD hakkında yazılarımıza devam edeceğiz. Aziz Durmaz adlı yazara ait diğer makaleleri görmek için tıklayın >> |



























Son Yorumlamalar