Minggu, 19 Desember 2010

XML Namespaces

XML Namespaces menyediakan metode untuk menghindari konflik nama elemen.
XML ini membawa informasi tabel HTML: <table>
  <tr>
    <td>Apples</td>
    <td>Bananas</td>
  </tr>
</table>

XML ini membawa informasi tentang tabel (sepotong mebel):

<table>
  <name>African Coffee Table</name>
  <width>80</width>
  <length>120</length>
</table>
Jika fragmen XML yang ditambahkan bersama-sama, akan ada konflik . Keduanya mengandung unsur <table>, namun unsur dan makna memiliki kandungan yang berbeda


Mengatasi Konflik Nama Menggunakan Awalan
<h:table>
  <h:tr>
    <h:td>Apples</h:td>
    <h:td>Bananas</h:td>
  </h:tr>
</h:table>

<f:table>
  <f:name>African Coffee Table</f:name>
  <f:width>80</f:width>
  <f:length>120</f:length>
</f:table> 

prefiks dalam XML disebut namespace untuk prefiks harus didefinisikan.
Namespace didefinisikan oleh atribut xmlns pada tag awal sebuah elemen.
Deklarasi namespace memiliki sintaks berikut. xmlns: prefix = " URI ".
<root>
<h:table xmlns:h="http://www.w3.org/TR/html4/">
  <h:tr>
    <h:td>Apples</h:td>
    <h:td>Bananas</h:td>
  </h:tr>
</h:table>

<f:table xmlns:f="http://www.w3schools.com/furniture">
  <f:name>African Coffee Table</f:name>
  <f:width>80</f:width>
  <f:length>120</f:length>
</f:table>
</root>

Namespaces dapat dideklarasikan dalam elemen-elemen di mana mereka digunakan atau dalam elemen XML root:
<root
xmlns:h="http://www.w3.org/TR/html4/"
xmlns:f="http://www.w3schools.com/furniture"
>

<h:table>
<h:tr>
<h:td>Apples</h:td>
<h:td>Bananas</h:td>
</h:tr>
</h:table>

<f:table>
<f:name>African Coffee Table</f:name>
<f:width>80</f:width>
<f:length>120</f:length>
</f:table>

</root>

Tidak ada komentar:

Posting Komentar