XML tasarlanırken düşünülen birçok düşünce var. W3C’nin birleşip ortaya çıkardığı 10 temel XML’in tasarım amacı şunlar:
1- XML internet üzerinde çalışabilmelidir.
2- XML neredeyse tüm uygulamalar tarafından desteklenmelidir.
3- XML SGML ile uyumlu olmalıdır.
4- XML üreten programlar oldukça kolay olmalıdır.
5- XML’de opsiyonel özellikler minumum olmalı veya hiç olmamalıdır.
6- XML dökümanları okunabilir ve açık olmalıdır.
7- XML tasarımı tek bir firma bu işi ele almadan acilen hazırlanmalıdır.
8- XML tasarımı biçimlendirilmiş ve kısa olmalıdır.
9- XML dökümanlarının yaratılması çok kolay olmalıdır.
10- XML dökümanlarında anlam belirsizlikleri olmamalıdır. XML dökümanları verilen tag isimleri ile kendini tanımlayabilir olmalıdır.
Örneğin:
İyi
oluşturulmuş Döküman: Bir XML dökümanının iyi-oluşturulmuş olması için aşağıdaki temel kurallara uyması gereklidir: 1- HTML ve SGML gibi XML de büyüktür (>) ve küçüktür (<) karakterlerini ayrıraçlar olarak kullanır. 2- Bu karakterlerle tag dediğimiz yapılar oluşturulur ve bunlar açıldığı zaman kapatılmalıdır. Tek istisna boş elemandır(değeri olmayan eleman). Bu durumlarda açma ve kapama tag’i aynı olabilir. Örneğin:
Geçerli Döküman: Geçerli bir döküman kendi DTDsi veya şemasında(shema) tanımlanmış kurallara uyan dökümandır. Aslında daha ikisini de incelemedik ama kısa bir bilgi vereyim: DTDler ve şemalar o XML dökümanının her elemanının neler kapsayabileceğini ve o dökümanın organizasyonel yapısını belirler. SQL Server veya Oracle ile uğraşmış olanlar bilirler , buradaki şema yapısı da veritabanı şeması belirleme ile aynıdır. En büyük fark ise XML’de elemanların eleman içermesidir. Bu konuya ileride oldukça geniş yer vereceğim çünkü oldukça önemli.