Как конвертировать XML-файл, чтобы он был правильно сформирован

Иногда легче понять, как написать правильно сформированный XML, увидев пример. Информационный бюллетень Web Writer написан с использованием формы XML — мы называем это AML или About Markup Language (см. Рисунок). Хотя это рабочий документ, он не является правильно сформированным или действительным документом XML.

Хорошо Сформированный

Есть несколько конкретных правил для создания правильно оформленного XML-документа:

  • Декларация XML должна стоять первой в каждом документе.
  • Комментарии недопустимы в теге. Комментарии не могут содержать два дефиса подряд, кроме начала и конца комментария.
  • Тэги должны иметь конечный тэг или закрываться, например, внутри самого тэга
    .
  • Все атрибуты тегов должны быть заключены в кавычки, предпочтительно двойные кавычки, если только сам атрибут не содержит двойные кавычки.
  • Каждый документ XML должен содержать один элемент, который полностью содержит все остальные элементы.

Есть только две проблемы с документом, которые делают его плохо сформированным:

Первое, что нужно документу AML, — это объявление декларации XML.

Другая проблема заключается в том, что ни один элемент полностью не охватывает все остальные элементы. Чтобы это исправить, мы добавим внешний элемент контейнера:

Внесение этих двух простых изменений (и обеспечение того, чтобы все элементы содержали только CDATA) превратит не правильно сформированный документ в правильно сформированный документ.

Допустимый документ XML проверяется на соответствие определению типа документа (DTD) или схеме XML. Это набор правил, созданных разработчиком или организацией по стандартизации, которые определяют семантику XML-документа. Они говорят компьютеру, что делать с разметкой.

В случае с языком разметки, поскольку это не стандартный язык 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. Вы можете найти много таких парсеров онлайн.

Ссылка на основную публикацию