logo
Ermak

Структура xml-документа

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

Давайте сразу приведу простой пример XML-документа:

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE shop [   <!ENTITY n "Ноутбук">   <!ENTITY g "Игра"> ]> <shop id="1">   <notebooks>     <prod>&n; IBM Lenovo V570</prod>     <prod>&n; DELL Inspiron N5010</prod>   </notebooks>   <games>     <prod>&g; Готика 2</prod>     <prod>&g; Might & Magic 6</prod>   </games> </shop>

В самом начале идёт заголовок XML-документа. Заголовок в примере является универсальным, единственное, что кодировка иногда бывает разной. Я поставил наиболее распространённую - UTF-8.

Дальше идёт секция DOCTYPE, в которой описываются различные сущности. Мы описали две: "n" со значением "Ноутбук" и "g" со значением "Игра". Сущность - это, в некотором смысле, константа, которую мы можем использовать в теле XML-документа для сокращения записи и более лёгкой сопровождаемости в дальнейшем.

После секции DOCTYPE идёт тело XML-документа. Здесь всё аналогично синтаксису языка HTML, то есть имеются теги (они же элементы), они имеют атрибуты, а также внутренние теги. Но в отличии от HTML, здесь Вы сами придумываете названия элементов, также в XML очень строгий синтаксис, то есть не должно быть никаких незакрывающих тегов или пропущенных кавычек в значениях атрибутов у тегов.

Обратите внимание на то, как используются описанные нами в секции CDATA сущности. Если требуется вывести какой-нибудь спецсимвол, например, & или <, то необходимо использовать соответствующие зарезервированные сущности.

Что касается взаимосвязи между различными элементами. Есть 5 видов связей:

Вот и всё, что мне хотелось бы рассказать Вам о структуре XML-документа. И для закрепления рекомендую Вам сделать простенькую задачку: сделать внутри элемента prod ещё два элемента, один из которых будет содержать название продукта, а другой - его цену. Чтобы проверить правильность XML-документа, откройте его в браузере. Если никаких ошибок не возникло, значит, синтаксически всё написано правильно.