XML Древовидная структура


XML-документы образуют древовидную структуру, которая начинается с "корня" и ветвится к "листьям".


XML-документ

XML-документы используют простой, самоописывающий синтаксис:

<?xml version="1.0" encoding="UTF-8"?> <note> <to>Tove</to> <from>Jani</from> <heading>Напоминание</heading> <body>Не забудь меня в эти выходные!</body> </note>

Первая строка — это объявление XML. Она определяет версию XML (1.0) и используемую кодировку (UTF-8: Unicode, пояснение).

Следующая строка описываеткорневой элементдокумента (как будто говоря: "Этот документ — заметка"):

<note>

Следующие 4 строки описывают 4дочерних элементакорня (to, from, heading и body):

<to>Tove</to> <from>Jani</from> <heading>Напоминание</heading> <body>Не забудь обо мне в эти выходные!</body>

Последняя строка определяет конец корневого элемента:

</note>

Из этого примера можно предположить, что XML-документ содержит заметку от Jani к Tove.

XML удивительно самоописателен, не так ли?


XML-документы образуют древовидную структуру

XML-документы должны содержатькорневой элемент. Этот элемент является родителем всех остальных элементов.

Элементы в XML-документе образуют дерево документа. Дерево начинается с корня и расширяется до самого нижнего уровня дерева.

Все элементы могут иметь дочерние элементы:

<root> <child> <subchild>.....</subchild> </child> </root>

Такие термины, как родительский, дочерний и сестринский элемент, используются для описания связей между элементами. Родительские элементы имеют дочерние элементы. Дочерние элементы на одном уровне называются братьями и сестрами (siblings).

Все элементы могут иметь текстовое содержимое и атрибуты (как в HTML).


Пример:

DOM node tree

На изображении выше показана книга в приведенном ниже XML:

Пример XML-документа

<bookstore> <book category="COOKING"> <title lang="en">Everyday Italian</title> <author>Giada De Laurentiis</author> <год>2005</год> <цена>30.00</цена> </книга> <книга category="CHILDREN"> <title lang="en">Harry Potter</title> <author>J K. Rowling</author> <year>2005</год> <цена>29.99</цена> </book> <book category="WEB"> <title lang="en">Learning XML</title> <author>Erik T. Ray</author> <год>2003</год> <цена>39.95</price> </book> </bookstore>

Корневой элемент в примере — <bookstore>. Все элементы <book> в документе содержатся внутри <bookstore>.

Элемент <book> имеет 4 дочерних элемента: <title>, <author>, <year>, <price>.


Другие расширения