Последние учебники веб-разработки
×

XML Руководство

XML ГЛАВНАЯ XML Введение XML Как использовать XML дерево XML Синтаксис XML элементы XML Атрибуты XML Пространства имен XML дисплей XML XSLT XML XPath XML XLink XML Оценщик XML DTD XML схема XML сервер XML Приложения XML Примеры XML викторина XML сертификат

XML DOM

DOM вступление DOM Вершины DOM XMLHttpRequest DOM Доступ к DOM Узел информация DOM Список узлов DOM Пересекая DOM навигационный DOM Получить значения DOM Change Вершины DOM Remove Вершины DOM Replace Вершины DOM Create Вершины DOM Add Вершины DOM Clone Вершины DOM Примеры

DOM Справка

DOM Типы узлов DOM Узел DOM NodeList DOM NamedNodeMap DOM Документ DOM Элемент DOM Атрибут DOM Текст DOM CDATA DOM Комментарий DOM XMLHttpRequest DOM синтаксический анализатор

XML DTD

DTD вступление DTD Строительные блоки DTD элементы DTD Атрибуты DTD Элементы против Attr DTD юридические лица DTD Примеры

XSD Schema

XSD вступление XSD Как XSD <schema> XSD элементы XSD Атрибуты XSD ограничения

XSD Сложный

XSD элементы XSD пустой XSD Элементы только XSD Только текст XSD смешанный XSD индикаторы XSD <any> XSD <anyAttribute> XSD подмена XSD пример

XSD Data

XSD строка XSD Дата XSD числовой XSD Разное XSD Справка

Web Сервисы

XML Сервисы XML WSDL XML SOAP XML RDF XML RSS

 

XML DOM Nodes


В DOM, все в документе XML является узлом.


DOM Nodes

Согласно DOM, все в документе XML является node .

DOM говорит:

  • Весь документ является узлом документа
  • Каждый XML-элемент является узлом элемента
  • Текст в элементах XML являются текстовыми узлами
  • Каждый атрибут является узлом атрибута
  • Комментарии являются узлы комментариев

DOM Пример

Посмотрите на файл имеет следующий XML ( books.xml ):

×

заголовок

<?xml version="1.0" encoding="UTF-8"?>
<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">XQuery Kick Start</title>
    <author>James McGovern</author>
    <author>Per Bothner</author>
    <author>Kurt Cagle</author>
    <author>James Linn</author>
    <author>Vaidyanathan Nagarajan</author>
    <year>2003</year>
    <price>49.99</price>
  </book>
  <book category="web" cover="paperback">
    <title lang="en">Learning XML</title>
    <author>Erik T. Ray</author>
    <year>2003</year>
    <price>39.95</price>
  </book>
</bookstore>

Корневой узел в приведенном выше XML называется <bookstore> . Все остальные узлы в документе содержатся внутри <bookstore> .

Корневой узел <bookstore> содержит четыре <book> узлы.

Первая <book> узел содержит четыре узла: <title>, <author>, <year> и <price> , который содержит один текстовый узел каждый, "Everyday Italian", "Giada De Laurentiis" , "2005" , и "30.00" .


Текст всегда хранится в текстовых узлов

Типичная ошибка при обработке DOM является ожидать узел элемента, чтобы содержать текст.

Тем не менее, текст узла элемента хранится в текстовом узле.

В этом примере: <year>2005</year> , элемент узла <year> , имеет текстовый узел со значением "2005" .

"2005" является not величина <year> элемента!


XML DOM Node Tree

XML DOM рассматривает документ XML в виде древовидной структуры. Структура дерева называется node-tree.

Все узлы могут быть доступны через дерево. Их содержание может быть изменен или удален, и новые элементы могут быть созданы.

Узел дерева показывает множество узлов и связей между ними. Дерево начинается с корневого узла и разветвляется к текстовым узлам на самом низком уровне дерева:

узел дерева DOM

Изображение выше представляет собой XML - файл Books.xml .


Узел родители, дети, братья и сестры

Узлы в дереве узлов имеют иерархические отношения друг к другу.

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

  • В дереве узлов, верхний узел называется корневым
  • Каждый узел, за исключением корня, имеет ровно один родительский узел
  • Узел может иметь любое количество детей
  • Лист представляет собой узел без детей
  • Братья и сестры являются узлами с тем же родителем

На следующем рисунке показана часть дерева узлов и отношения между узлами:

Узел дерева

Поскольку данные 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>
</bookstore>

В приведенном выше XML, то <title> элемент является первым дочерним элементом <book> элемента, а <price> элемент является последним потомком <book> элемента.

Кроме того, <book> элемент является родительским узлом <title>, <author>, <year> , and <price> elements. <title>, <author>, <year> , and <price> elements.