XML Nedir? XML veri tanımlamayı sağlayan ve verilerin alışverişinde kullanılacak standart bir format olarak kullanılan bir dildir.Genişleyebilir,Birlikte çalışabilir,Veri tanımlayabilir.XML belgelerine kendi etiketlerinizi ekleyebilirsiniz. Uygulama, dil, işletim sistemi gibi kısıtlamalara bağlı değildir. Uygulamalar kendi veri yapılarını tanımlayabilir.
XML, yapısal verileri Web üzerinde kullanmak için geliştirilmiştir. Böylece Web üzerinde zengin olarak yapılandırılmış belgeler kullanılır. Diğer işaretleme dilleri HTML ve SGML bu amaca hizmet etmemektedir.Bir XML belgesi metin (text) dosya olarak oluşturulan ya da SQL Server gibi çeşitli programlar tarafından oluşturulan bir dosyadır. Temel yapı hiyerarşik etiketlere dayanır.
XML bir **** dildir. diğer bir değişle diğer işaretleme dillerini tanımlamak için kullanılan bir dildir XML ilşe herhangi bir uygulama için XML belgesinin içinde bulunacak verinin içeriği ve içerdiği veri tiplerini tanımlayacak uygulamaya özel bir işaretleme dili tanımlayabirilisiniz. **** veri veri hakkında ki bilgidir. XML etiketleri veri hakındaki **** bilgiyi tanımlamaktadır.
Basit bir örnekle pekiştirelim.Mesela bir adres listesi hazırlayalım.
<?xml version='1.0'?>
<!DOCTYPE addressbook SYSTEM 'AddressBook.dtd' [
<!ENTITY amp '&'>
<!ENTITY amp "'>
]>
<addressbook>
<!-- This is my good friend Huseyin -->
<contact>
<name>Ali YILDIRIM</name>
<address>6001 Sk No:24</address>
<city>Manisa/Alasehir</city>
<zip>45600</zip>
<phone>
<voice>121-121-1211</voice>
<fax>121-121-1211</fax>
</phone>
<email>[email protected]</email>
<web>http://www.programlama.com</web>
<company>YILDIRIM Services</company>
</contact>
<!-- This is my old collage roomate Ali. -->
<contact>
<name>Ali YILDIRIM</name>
<address>6001 Sk. No:23</address>
<city>Manisa/Alasehir</city>
<zip>45600</zip>
<phone>
<voice>121-121-1211</voice>
<fax>121-121-1211</fax>
</phone>
<email>[email protected]</email>
<web>http://www.programlama.com</web>
<company>YILDIRIM Services</company>
</contact>
</addressbook>
etiketler o uygulama icin geliştirilmiş olan özel işaretleme dili ile tanımlanır.
Bu işaretleme dilinin yapısı ise ML DTD ya da SML schema olarak adlandırılan belge tanımlama dosyalarında belirtilir Aşağıda vereceğimiz örneğimizde adres defteri örneği için tanımlanmış bir adres listesinde hangi etiketlerin bulunabileceği ve bu etiketlerin hangi etiketleri içerebileceği gibi bilgiler verilebilir. İlk satır <adressbook> etiketinin bir ya da daha fazla <contact> etiketi içereceği belirtilmektedir. ikinci satır ise bir contact etiketinin içinde geçecek elemanları belirtmektedir.
HTML DTD Örneği
<!ELEMENT adresdefteri (contact)+>
<!ELEMENT irtibat (ad,adres+,il,postakodu,telefon,email,web)>
<!ELEMENT ad (#PCDATA)>
<!ELEMENT adres (#PCDATA)>
<!ELEMENT il (#PCDATA)>
<!ELEMENT postakodu (#PCDATA)>
<!ELEMENT telefon (#PCDATA)>
<!ELEMENT fax (#PCDATA)>
<!ELEMENT email (#PCDATA)>
<!ELEMENT web (#PCDATA)>
XML, yapısal verileri Web üzerinde kullanmak için geliştirilmiştir. Böylece Web üzerinde zengin olarak yapılandırılmış belgeler kullanılır. Diğer işaretleme dilleri HTML ve SGML bu amaca hizmet etmemektedir.Bir XML belgesi metin (text) dosya olarak oluşturulan ya da SQL Server gibi çeşitli programlar tarafından oluşturulan bir dosyadır. Temel yapı hiyerarşik etiketlere dayanır.
XML bir **** dildir. diğer bir değişle diğer işaretleme dillerini tanımlamak için kullanılan bir dildir XML ilşe herhangi bir uygulama için XML belgesinin içinde bulunacak verinin içeriği ve içerdiği veri tiplerini tanımlayacak uygulamaya özel bir işaretleme dili tanımlayabirilisiniz. **** veri veri hakkında ki bilgidir. XML etiketleri veri hakındaki **** bilgiyi tanımlamaktadır.
Basit bir örnekle pekiştirelim.Mesela bir adres listesi hazırlayalım.
<?xml version='1.0'?>
<!DOCTYPE addressbook SYSTEM 'AddressBook.dtd' [
<!ENTITY amp '&'>
<!ENTITY amp "'>
]>
<addressbook>
<!-- This is my good friend Huseyin -->
<contact>
<name>Ali YILDIRIM</name>
<address>6001 Sk No:24</address>
<city>Manisa/Alasehir</city>
<zip>45600</zip>
<phone>
<voice>121-121-1211</voice>
<fax>121-121-1211</fax>
</phone>
<email>[email protected]</email>
<web>http://www.programlama.com</web>
<company>YILDIRIM Services</company>
</contact>
<!-- This is my old collage roomate Ali. -->
<contact>
<name>Ali YILDIRIM</name>
<address>6001 Sk. No:23</address>
<city>Manisa/Alasehir</city>
<zip>45600</zip>
<phone>
<voice>121-121-1211</voice>
<fax>121-121-1211</fax>
</phone>
<email>[email protected]</email>
<web>http://www.programlama.com</web>
<company>YILDIRIM Services</company>
</contact>
</addressbook>
etiketler o uygulama icin geliştirilmiş olan özel işaretleme dili ile tanımlanır.
Bu işaretleme dilinin yapısı ise ML DTD ya da SML schema olarak adlandırılan belge tanımlama dosyalarında belirtilir Aşağıda vereceğimiz örneğimizde adres defteri örneği için tanımlanmış bir adres listesinde hangi etiketlerin bulunabileceği ve bu etiketlerin hangi etiketleri içerebileceği gibi bilgiler verilebilir. İlk satır <adressbook> etiketinin bir ya da daha fazla <contact> etiketi içereceği belirtilmektedir. ikinci satır ise bir contact etiketinin içinde geçecek elemanları belirtmektedir.
HTML DTD Örneği
<!ELEMENT adresdefteri (contact)+>
<!ELEMENT irtibat (ad,adres+,il,postakodu,telefon,email,web)>
<!ELEMENT ad (#PCDATA)>
<!ELEMENT adres (#PCDATA)>
<!ELEMENT il (#PCDATA)>
<!ELEMENT postakodu (#PCDATA)>
<!ELEMENT telefon (#PCDATA)>
<!ELEMENT fax (#PCDATA)>
<!ELEMENT email (#PCDATA)>
<!ELEMENT web (#PCDATA)>