Иногда легче понять, как написать правильно сформированный XML , увидев пример. Информационный бюллетень Web Writer написан с использованием формы XML — мы называем его AML или About Language Markup Language (см. Рисунок). Хотя это рабочий документ, он не является правильно оформленным или действительным документом XML.
Хорошо Сформированный
Есть несколько конкретных правил для создания правильно сформированного XML-документа:
- Декларация XML должна стоять первой в каждом документе.
- Комментарии недопустимы в теге. Комментарии не могут содержать два дефиса подряд, кроме начала и конца комментария.
- Тэги должны иметь конечный тэг или быть закрыты, например, внутри самого тэга-одиночки
. - Все атрибуты тегов должны быть заключены в кавычки, предпочтительно двойные кавычки, если только сам атрибут не содержит двойные кавычки.
- Каждый документ XML должен содержать один элемент, который полностью содержит все остальные элементы.
Есть только две проблемы с документом, которые делают его плохо сформированным:
Первое, что нужно документу AML, — это объявление декларации XML.
Другая проблема заключается в том, что ни один элемент полностью не охватывает все остальные элементы. Чтобы это исправить, мы добавим внешний элемент контейнера:
Внесение этих двух простых изменений (и обеспечение того, чтобы все элементы содержали только CDATA) превратит не правильно сформированный документ в правильно сформированный документ.
Действительный документ XML сверяется с определением типа документа (DTD) или XML — схема . Это набор правил, созданных разработчиком или организацией стандартов, которые определяют семантику XML-документа. Они сообщают компьютеру, что делать с разметкой.
В случае с языком разметки About , поскольку это не стандартный язык XML, такой как XHTML или SMIL, DTD будет создан разработчиком. Этот DTD, скорее всего, будет находиться на том же сервере, что и документ XML, и на него будет ссылаться в верхней части документа.
Перед тем, как приступить к разработке DTD или схемы для своих документов, вы должны понимать, что благодаря правильной форме XML-документ самоописывает себя и, следовательно, не требует DTD.
Например, в нашем правильно оформленном документе AML есть следующие теги:
Если вы знакомы с информационным бюллетенем Web Writer, вы можете узнать различные разделы информационного бюллетеня. Это позволяет очень легко создавать новые XML-документы, используя тот же стандартный формат. Мы всегда помещаем полное название заголовка в тег и первый раздел URL в теге.
DTDs
Если вам необходимо написать действительный XML-документ, либо для использования данных, либо для их обработки, вы должны включить его в свой документ с тегом. В этом теге вы определяете базовый тег XML в документе и местоположение DTD (обычно это веб-URI).
Например:
Одна хорошая вещь в декларациях DTD заключается в том, что вы можете объявить, что DTD является локальным по отношению к системе, в которой документ XML находится с «SYSTEM». Вы также можете указать на общедоступный DTD, такой как документ HTML 4.0:
Когда вы используете оба, вы указываете документу использовать определенный DTD (открытый идентификатор) и где его найти (системный идентификатор).
Наконец, вы можете включить внутренний DTD непосредственно в документ, внутри тега DOCTYPE. Например (это не полное DTD для документа AML):
XML-схема
Чтобы создать действительный документ XML, вы также можете использовать документ схемы XML для определения своего XML. Схема XML — это документ XML, который описывает документы XML. Узнайте, как написать схему.
Запись
Недостаточно просто указать на DTD или XML-схему. XML-код в документе должен соответствовать правилам в DTD или схеме. Использование проверяющего анализатора — это простой способ проверить, что ваш XML соответствует правилам DTD. Вы можете найти много таких парсеров онлайн.