Xml dtd
XML документ з коректною синтаксичною структурою є "синтаксично вірним".
XML документ, який пройшов перевірку по DTD, є "синтаксично вірним" і "дійсним".
Валідниє XML документи
"Дійсний" XML документ - це "синтаксично вірний" XML документ, який також відповідає правилам DTD (визначень типів документів):
У наведеному прикладі, декларація DOCTYPE є посиланням на зовнішній файл визначень типів документа (DTD). Вміст цього файлу показано нижче.
Мета DTD полягає в тому, щоб визначити структуру XML документа. Це робиться шляхом визначення переліку допустимих елементів:
Наведене вище DTD інтерпретується наступним чином:
- !DOCTYPE note визначає, що кореневих елементом документа є note
- !ELEMENT note визначає, що елемент note містить чотири елементи: to, from, heading, body
- !ELEMENT to визначає, що елемент to повинен бути типу "#PCDATA"
- !ELEMENT from визначає, що елемент from повинен бути типу "#PCDATA"
- !ELEMENT heading визначає, що елемент heading повинен бути типу "#PCDATA"
- !ELEMENT body визначає, що елемент body повинен бути типу "#PCDATA"
#PCDATA означає розбираються текстові дані.
Використання DTD для визначення сутностей
Визначення типів документа (DTD) також можна використовувати для декларації спеціальних символів і символьних рядків, які використовуються в XML документі:
Сутність складається з трьох частин: амперсанда (), імені сутності і крапки з комою (;).
Навіщо потрібно використовувати DTD?
З DTD ваш XML файл може нести власний формат.
З DTD різні, не пов'язані один з одним групи людей можуть приходити до угоди про стандарти пересічних даних.
З DTD ви можете бути впевнені, що отримані з зовнішніх джерел дані будуть коректними.
Коли не варто використовувати DTD?
Взагалі-то для роботи XML не потрібно DTD.
Коли ви експериментуєте з XML або працюєте з невеликими XML файлами, то створення DTD може виявитися зайвою витратою часу.
Якщо ви розробляєте додатки, то варто почекати, поки специфікації не стануть стабільними, і тільки тоді додавати визначення. У зворотному випадку ваше додаток може перестати працювати через помилки валідації.