DTD - Обзор

Объявление типа XML-документа, широко известное как DTD, - это способ точного описания языка XML. DTD проверяют правильность структуры и словаря XML-документа на соответствие грамматическим правилам соответствующего языка XML.

XML-документ можно определить как -

  • Well-formed- Если XML-документ соответствует всем общим правилам XML, например, теги должны быть правильно вложены, открывающие и закрывающие теги должны быть сбалансированы, а пустые теги должны заканчиваться на '/>', то он называется правильно сформированным .

    ИЛИ

  • Valid- Документ XML считается действительным, если он не только правильно сформирован , но и соответствует доступному DTD, который указывает, какие теги он использует, какие атрибуты могут содержать эти теги и какие теги могут встречаться внутри других тегов, среди других свойств. .

На следующей диаграмме показано, что DTD используется для структурирования XML-документа.

Типы

DTD можно классифицировать на основе его декларации в XML-документе, например:

  • Внутренний DTD

  • Внешний DTD

Когда в файле объявляется DTD, он называется Internal DTD и если он объявлен в отдельном файле, он называется External DTD.

Мы узнаем больше об этом в главе Синтаксис DTD.

Характеристики

Ниже приведены некоторые важные моменты, которые описывает DTD:

  • элементы, которые могут появиться в XML-документе.

  • порядок, в котором они могут появляться.

  • необязательные и обязательные элементы.

  • атрибуты элемента и являются ли они обязательными или необязательными.

  • могут ли атрибуты иметь значения по умолчанию.

Преимущества использования DTD

  • Documentation- Вы можете определить свой собственный формат для файлов XML. Глядя на этот документ, пользователь / разработчик может понять структуру данных.

  • Validation - Это дает возможность проверять достоверность файлов XML, проверяя, отображаются ли элементы в правильном порядке, обязательные элементы и атрибуты на своих местах, элементы и атрибуты не были вставлены неправильным образом и т. Д.

Недостатки использования DTD

  • Он не поддерживает пространства имен. Пространство имен - это механизм, с помощью которого можно назначать группам имена элементов и атрибутов. Однако в DTD пространства имен должны быть определены внутри DTD, что нарушает цель использования пространств имен.

  • Он поддерживает только тип данных текстовой строки.

  • Он не объектно-ориентированный. Следовательно, концепция наследования не может применяться к DTD.

  • Ограниченные возможности выразить мощность элементов.