Atribut XML
Elemen XML mempunyai atribut, serupa dengan HTML.
Atribut memberikan maklumat tambahan tentang elemen.
Atribut XML
Dalam HTML, atribut memberikan maklumat tambahan tentang elemen:
<a href="demo.html">
Atribut biasanya memberikan maklumat yang bukan sebahagian daripada data. Dalam contoh berikut, jenis fail tiada kaitan dengan data, tetapi penting kepada perisian yang perlu mengendalikan elemen ini:
Atribut XML mesti dipetik
Nilai atribut mesti dikelilingi oleh petikan, tetapi petikan tunggal dan berganda boleh digunakan . Sebagai contoh, jantina seseorang, unsur orang boleh ditulis seperti ini:
Atau ini juga boleh ditulis :
Jika nilai atribut itu sendiri mengandungi petikan berganda, anda boleh menggunakan petikan tunggal, seperti dalam contoh ini:
Atau anda boleh menggunakan entiti watak:
Elemen XML lwn. atribut
Lihat contoh ini:
, <nama pertama>Anna</nama pertama>
, <nama keluarga>Smith</nama keluarga>
</orang>
, <seks>perempuan</seks>
, <nama pertama>Anna</nama pertama>
, <nama keluarga>Smith</nama keluarga>
</orang>
Pada mulanya, seks ialah sifat. Dalam contoh kedua, seks adalah elemen. Kedua-dua keadaan memberikan maklumat yang sama.
Tiada peraturan yang memberitahu kami bila hendak menggunakan atribut dan bila hendak menggunakan elemen. Pengalaman saya ialah dalam HTML, atribut mudah digunakan, tetapi dalam XML, anda harus cuba mengelak daripada menggunakan atribut. Jika maklumat terasa seperti data, gunakan elemen.
Cara kegemaran saya
Tiga dokumen XML berikut mengandungi maklumat yang sama:
Atribut tarikh digunakan dalam contoh pertama:
<ke>Tove</to>
<dari>Jani</dari>
<heading>Peringatan</heading>
<body>Jangan lupakan saya hujung minggu ini!</body>
</note>
Elemen tarikh digunakan dalam contoh kedua:
<tarikh>10/01/2008</tarikh>
<ke>Tove</to>
<dari>Jani</dari>
<heading>Peringatan</heading>
<body>Jangan lupakan saya hujung minggu ini!</body>
</note>
Elemen tarikh lanjutan digunakan dalam contoh ketiga (ini adalah Kegemaran saya) :
<tarikh>
, <hari>10</hari>
, <bulan>01</bulan>
, <tahun>2008</tahun>
</tarikh>
<ke>Tove</to>
<dari>Jani</dari>
<heading>Peringatan</heading>
<body>Jangan lupakan saya hujung minggu ini!</body>
</note>
Elakkan atribut XML?
Sesetengah masalah yang disebabkan oleh penggunaan atribut:
Atribut tidak boleh mengandungi berbilang nilai (elemen boleh)
Atribut Tidak Boleh mengandungi struktur pokok (elemen boleh)
Harta tidak mudah diperluaskan (untuk perubahan masa hadapan)
Hartanah sukar dibaca dan diselenggara. Sila cuba gunakan elemen untuk menerangkan data. Sebaliknya, hanya gunakan atribut untuk memberikan maklumat bebas data.
Jangan lakukan sesuatu yang bodoh seperti ini (ini bukan cara XML harus digunakan):
to="Tove" from="Jani" heading="Reminder"
body="Jangan lupakan saya hujung minggu ini!">
</note>
Atribut XML untuk metadata
Kadangkala rujukan ID diberikan kepada elemen. Indeks ID ini boleh digunakan untuk mengenal pasti elemen XML dengan cara yang sama seperti atribut id dalam HTML. Contoh ini menunjukkan perkara ini kepada kita:
, <nota id="501">
' <ke>Tove</to>
' <dari>Jani</dari>
' <heading>Peringatan</heading>
' <body>Jangan lupakan saya hujung minggu ini!</body>
, </nota>
, <nota id="502">
' <ke>Jani</ke>
' <from>Tove</from>
' <heading>Re: Peringatan</heading>
' <body>Saya tidak akan</body>
, </note>
</messages>
Atribut id di atas hanyalah pengecam, digunakan untuk mengenal pasti nota yang berbeza. Ia bukan sebahagian daripada data nota.
Idea yang kami cuba sampaikan kepada anda di sini ialah metadata (data tentang data) harus disimpan sebagai atribut dan data itu sendiri harus disimpan sebagai elemen.