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 може виявитися зайвою витратою часу.

Якщо ви розробляєте додатки, то варто почекати, поки специфікації не стануть стабільними, і тільки тоді додавати визначення. У зворотному випадку ваше додаток може перестати працювати через помилки валідації.