Правила синтаксису XML вкрай прості і логічні. Їх легко запам'ятати і легко використовувати.
Всі XML елементи повинні мати закриває тег
В HTML деякі елементи можуть не мати закриває тега:
У XML не можна опускати закриває тег. Абсолютно всі елементи повинні закриватися:
Можливо, ви помітили з попередніх прикладів, що XML декларація не має закриває тега. Це не помилка. Справа в тому, що декларація не відноситься до XML документу, тому у неї і немає закриває тега.
Теги XML регістру
Теги XML є чутливі до регістру. Так, тег
Хто відкриває і закриває теги повинні визначатися в одному регістрі:
Зауваження: "Хто відкриває і закриває теги" іноді ще називають "початковий і кінцевий теги". Використовуйте те визначення, яке вам більше симпатично. По суті це одне і те ж.
XML елементи повинні дотримуватися коректну вкладеність
В HTML іноді можна спостерігати таку картину:
і іноді це навіть працює належним чином.
У XML все елементи зобов'язані дотримуватися коректну вкладеність:
Поняття "коректна вкладеність" по відношенню до наведених прикладів просто означає, що так як елемент відкривається всередині елемента . то і закриватися він повинен всередині елемента .
У XML документа повинен бути кореневий елемент
XML документ повинен містити один елемент, який буде батьківським для всіх інших елементів. Він називається кореневим елементом.
XML пролог
Наступний рядок називається XML прологом:
XML пролог необов'язковий. Але якщо він є, то це повинна бути перша рядок XML документа.
У XML документі можуть бути присутнім міжнародні символи, на зразок російських букв, і щоб не виникало помилок необхідно вказати кодування, або зберегти XML файл у форматі UTF-8.
UTF-8 - кодування XML документів за замовчуванням.
Значення XML атрибутів повинні полягати в лапки
Так само, як і в HTML, у XML елементів можуть бути атрибути у вигляді пари ім'я / значення.
У XML значення атрибутів повинні полягати в лапки.
Подивіться на наступні два приклади XML документа. Перший з помилкою, другий написаний правильно:
Помилка в першому XML документі полягає в тому, що значення атрибута date елемента note не укладена в лапки.
Деякі символи в XML мають особливі значення.
Якщо ви помістіть, наприклад, символ "<" внутри XML элемента, то будет сгенерирована ошибка, так как парсер интерпретирует его, как начало нового элемента.
Так, до помилки призведе наступний рядок XML документа:
Щоб така помилка не виникала, потрібно замінити символ "<" на его сущность:
У XML існує 5 зумовлених сутностей: