Aturan sintaks XML sangat sederhana dan logis. Aturan yang mudah dipelajari, dan mudah digunakan.
XML Dokumen Harus Memiliki Root Element
Dokumen XML harus berisi satu elemen root yang merupakan parent dari semua elemen lainnya:
<root>
<child>
<subchild>.....</subchild>
</child>
</root>
Dalam contoh ini <note> adalah elemen root:
<?xml version="1.0" encoding="UTF-8 " ?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
XML Prolog
Garis ini disebut prolog XML:
<?xml version="1.0" encoding="UTF-8 " ?>
XML Prolog adalah opsional. Jika ada, itu harus datang pertama dalam dokumen.
Dokumen XML dapat berisi karakter internasional, seperti oa Norwegia atau ee Perancis.
Untuk menghindari kesalahan, Anda harus menentukan encoding yang digunakan, atau menyimpan file XML sebagai UTF-8.
UTF-8 adalah karakter encoding default untuk dokumen XML.
Karakter encoding dapat dipelajari di kami Character Set Tutorial .
UTF-8 juga encoding default untuk HTML5, CSS, JavaScript, PHP, dan SQL.
Semua Elemen XML Harus Memiliki Tag Penutup
Dalam HTML, beberapa elemen mungkin bekerja dengan baik, bahkan dengan tag penutup hilang:
<p>This is a paragraph.
<br>
Dalam XML, adalah ilegal untuk menghilangkan tag penutup. Semua elemen must memiliki tag penutup:
<p>This is a paragraph.</p>
<br />
XML Prolog tidak memiliki tag penutup.
Ini bukan kesalahan. Prolog bukan merupakan bagian dari dokumen XML.
XML Tag adalah Case Sensitive
tag XML adalah case sensitif. Tag <Letter> berbeda dengan tag <letter> .
Membuka dan menutup tag harus ditulis dengan kasus yang sama:
<Message>This is incorrect</message>
<message>This is correct</message>
"Pembukaan dan penutupan tag" sering disebut sebagai "Start and end tags" . Gunakan apa pun yang Anda sukai. Ini adalah hal yang persis sama.
Elemen XML Harus Benar Bersarang
Dalam HTML, Anda mungkin akan melihat elemen benar bersarang:
<b><i>This text is bold and italic</b></i>
Dalam XML, semua elemen must secara benar bersarang di dalam masing-masing:
<b><i>This text is bold and italic</i></b>
Dalam contoh di atas, "Properly nested" hanya berarti bahwa sejak <i> elemen dibuka di dalam <b> elemen, itu harus ditutup dalam <b> elemen.
Nilai XML Atribut Harus Dikutip
elemen XML dapat memiliki atribut dalam pasangan nama / nilai seperti di HTML.
Dalam XML, nilai atribut harus selalu dikutip.
SALAH:
<note date=12/11/2007>
<to>Tove</to>
<from>Jani</from>
</note>
BENAR:
<note date="12/11/2007">
<to>Tove</to>
<from>Jani</from>
</note>
Kesalahan dalam dokumen pertama adalah bahwa date atribut dalam elemen note tidak dikutip.
Referensi entitas
Beberapa karakter memiliki arti khusus dalam XML.
Jika Anda menempatkan karakter seperti "<" di dalam sebuah elemen XML, maka akan menghasilkan kesalahan karena parser menafsirkan itu sebagai awal dari elemen baru.
Ini akan menghasilkan kesalahan XML:
<message>salary < 1000</message>
Untuk menghindari kesalahan ini, menggantikan "<" karakter dengan entity reference :
<message>salary < 1000</message>
Ada 5 yang telah ditetapkan entitas referensi dalam XML:
< | < | less than |
> | > | greater than |
& | & | ampersand |
' | ' | apostrophe |
" | " | quotation mark |
Hanya <dan & secara ketat ilegal di XML, tapi itu adalah kebiasaan yang baik untuk mengganti> dengan & gt; demikian juga.
Komentar di XML
Sintaks untuk menulis komentar di XML adalah mirip dengan HTML.
<! - Ini adalah komentar ->
Dua strip di tengah komentar tidak diperbolehkan.
Tidak diizinkan:
<!-- This is a -- comment -->
Aneh, tapi diizinkan:
<!-- This is a - - comment -->
White-space yang diawetkan di XML
XML tidak memotong beberapa putih-ruang (HTML memotong beberapa putih-spasi untuk satu white-space tunggal):
XML: | Hello Tove |
HTML: | Hello Tove |
XML Toko New Line sebagai LF
Aplikasi Windows menyimpan baris baru sebagai: carriage return dan line feed (CR+LF) .
Unix dan Mac OSX menggunakan LF.
sistem lama Mac menggunakan CR.
XML menyimpan baris baru sebagai LF.
XML terbentuk dengan baik
Dokumen XML yang sesuai dengan aturan sintaks di atas dikatakan "Well Formed" dokumen XML.