Manual teknikal...login
Manual teknikal XML
pengarang:php.cn  masa kemas kini:2022-04-14 15:57:53

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:

<img src="../style/images / computer.gif">
<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:

<file type="gif">komputer. gif</ file>


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:

<person sex="female">

Atau ini juga boleh ditulis :

<person sex='female'>

Jika nilai atribut itu sendiri mengandungi petikan berganda, anda boleh menggunakan petikan tunggal, seperti dalam contoh ini:

<gangster name='George "Shotgun" Ziegler'>

Atau anda boleh menggunakan entiti watak:

<gangster name="George "Shotgun" ; Ziegler">


Elemen XML lwn. atribut

Lihat contoh ini:

<seks orang= "perempuan">
, <nama pertama>Anna</nama pertama>
, <nama keluarga>Smith</nama keluarga>
</orang>

<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:

<note date="10/01/2008">
<ke>Tove</to>
<dari>Jani</dari>
<heading>Peringatan</heading>
<body>Jangan lupakan saya hujung minggu ini!</body>
</note>

Elemen tarikh digunakan dalam contoh kedua:

<nota>
<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) :

<nota>
<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):

<note day="10" month="01" year=" 2008"
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:

<mesej>
, <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.


Laman web PHP Cina