DOM: Узлы (программные объекты) обеспечения свойств и методов доступа к XML-документу

Main

Объектная модель XML-документа DOM (Document Object Model) состоит из группы программных объектов, представляющих различные компоненты XML-документа. Свойства и методы этих объектов позволяют использовать сценарии для отображения XML-документов с HTML-страницы.

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

Связывание XML-документа с HTML-страницей

]> <XML ID="dsoBook" SRC="Book.xml"></XML>Идентификатор ID, назначенный фрагменту данных XML, указывает на DSO документа. Можно использовать составляющую XMLDocument DSO для доступа к DOM: Document=dsoBook.XMLDocument; Член XMLDocument содержит корневой объект DOM - узел Документ (Document node), используемый для доступа к другим объектам DOM

Для доступа к нескольким XML-документам с одной HTML-страницы необходимо поместить фрагмент данных для каждого из XML-документов.

Можно включить несколько фрагментов данных для одного XML-документа (полезно для поддержки нескольких версий данных XML при модификации в памяти содержимого данных DOM)

Основные типы узлов XMLDOM для представления различных компонентов XML-документа

Тип узла: nodeTypeString (nodeType) Компонент, представляемый узлом Имя (nodeName) Значение (nodeValue)

Типу узла предшествует префикс XMLDOM, например, XMLDOMDocument, XMLDOMElement, XMLDOMText (имена программных интерфейсов для соответствующего типа узла)

Общие свойства и методы узлов представленв как XMLDOMDNode

Имя узла можно получить из свойства nodeName. Символом # начинаются имена непоименованных компонентов XML

Значение узла можно получить из свойства nodeValue.

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

<!DOCTYPE CONC [
<!ELEMENT CONC (STR)*>
<!ELEMENT STR  (EL,ST*)>
<!ATTLIST STR  Attr1 (fict | instr | doc) "fict">
<!ELEMENT ST   (ME,FU,ZB)>
<!ELEMENT EL   (#PCDATA)>
<!ELEMENT ME   (#PCDATA)>
<!ELEMENT FU   (#PCDATA)>
<!ATTLIST FU   Attr2 CDATA 'American'>
<!ELEMENT ZB   (#PCDATA)>]>
Родительский узел Дочерние узлы Комментарий
  Main

© 2001 Ryzhenkov V.V. Last updated 28.05.2002