PDA

Orijinalini görmek için tıklayınız : HTML- ve XML Arasındaki İlişki Nasıldır?



optimusprime
25.Kasım.2014, 15:31
HTML'de veri belli bir yapı içerisinde bulunur. Ancak bu yapı bilginin gerektiğinde erişilebilmesini değil, belli bir biçimde ekranda gösterilmesini sağlar. HTML içerisindeki veriye kolay kolay erişemezsiniz. Bir yazının başlığını bir kişi H1 etiketini kullanarak gösterir, başka bir kişi H2. Hatta font'u büyük vererek de başlık verilebilir. Bu durumda HTML belgesi içinde belli bir verinin tam olarak nerde olduğunu bulmak mümkün değildir. HTML, veri (data) ile biçim (style)'ın iç içe olduğu bir yapıdır. Oysa XML'de veri ayrı biçim ayrı tutulabilir. Aynı biçimle bir çok veri gösterilebilirken aynı veri bri çok biçimde gösterilebilir.


Basit bir XML örneği
Bir sınavı XML olarak belirmek için şöyle bir yapı kurmak yeterlidir.


<exam id="math-3">
<title>Matematik Dersi 2. Ara Sınavı </title>
<question number="1">
<text>İki kere iki iki kaç eder?</text>
<option id="a">22</option>
<option id="b">3</option>
<option id="c">4</option>
<option id="d">5</option>
</question>
<question number="2">
<text>Kendimi kendimden çıkarsam kaç kalır?</text>
<option id="a">1</option>
<option id="b">2</option>
<option id="c">0</option>
<option id="d">FD</option>
</question>
</exam>
Burada veri belki daha çok yer kaplar ama artık herhangi bir veriye ulaşmak çok basittir. Belki bir kişinin kendi yazığı bir programla bu belgeden veri alması daha zordur ama en azından araya bir şey eklenirse veya çıkartılırsa program yanlış bilgiye erişmez. Dahası, bir XML belgesinden herhangi bir bilgiyi almak için çeşitli olanaklar bulunaktadır. Programcı her zaman kendisi bir şey yapmak zorunda kalmaz. Örneğin XPath'le ilk sorunun 2. şıkkına erişim için


/exam/question[number="1"]/option[id="1"]]
yazmak yeterlidir. Aynı şekilde 2. sorunun metnine


/exam/question[number="1"]/text
şeklinde erişmek mümkündür. XPath olmadan da bir 'parser' programla XML belgesi programlar tarafından okunması için 'document' nesnesine okunabilir.


XML'in bütün espirisi bir veriyi metin olarak saklamak ve gerektiğinde kolayca erişmektir. Bu, göründüğünden çok daha güçlü özelliktir.