Вы здесь

Дерево 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).

На следующей строке описывается корневой элемент документа: <note>

Следующие 4 строки описывают дочерние элементы корневого элемента: <to>Tove</to>, <from>Jani</from>, <heading>Напоминание</heading>, <body>Не забудь обо мне в эти выходные!</body>.

И, наконец, последняя строка определяет конец корневого элемента: </note>.

Исходя из этого примера можно смело предположить, что в этом XML документе содержится заметка от Това к Джени. И все вполне понятно.

XML документы формируют древовидную структуру

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

Все элементы в XML документе формируют иерархическое дерево. Это дерево начинается с корневого элемента и разветвляется на более низкие уровни элементов.

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

<корневой>
   <потомок>
      <подпотомок>.....</подпотомок>
   </потомок>
</корневой>

Для описания взаимоотношений между элементами обычно используют термины "родитель", "потомок" и "брат"/"сестра". У "родительского" элемента есть "потомки" или "дочерние" элементы. "Потомки" на одном и том же уровне называются "братья" или "сестры".

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

Пример

Дерево XML

Приведенное изображение представляет одну книгу из следующего XML документа:

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

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

У каждого элемента <book> есть 4 потомка: <title>, <author>, <year>, <price>.