Бөлісу құралы:


Типы XML-узлов

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

Тип узла модели DOM Object Описание
Document XmlDocument Контейнер для всех узлов в дереве. Он также называется корнем документа, что не всегда совпадает с корневым элементом.
DocumentFragment XmlDocumentFragment Временный контейнер, содержащий один или несколько узлов, не имеющих древовидной структуры.
DocumentType; XmlDocumentType Представляет узел <!DOCTYPE…>.
EntityReference XmlEntityReference Представляет текст нераскрытой ссылки на сущность.
Элемент XmlElement Представляет узел элемента.
Attr XmlAttribute Атрибут элемента.
ProcessingInstruction; XmlProcessingInstruction Узел инструкций по обработке.
Добавление примечаний XmlComment Узел комментария.
Text XmlText Текст, принадлежащий элементу или атрибуту.
CDATASection. XmlCDataSection Представляет CDATA.
Объект XmlEntity Представляет декларации <!ENTITY…> в XML-документе, полученные из встроенного DTD или из внешних DTD и сущностей параметров.
Notation XmlNotation Представляет нотацию, объявленную в DTD.

Атрибут (attr) упомянут в числе узлов модели W3C DOM на уровне 1 в разделе "1.2. Фундаментальные интерфейсы", но не считается дочерним ни для какого узла элемента.

В следующей таблице представлены дополнительные типы узлов, которые не определены консорциумом W3C, но доступны для использования в модели объектов Microsoft .NET Framework в виде перечислений XmlNodeType. Таким образом, для этих типов узлов отсутствует соответствующий столбец типа узла в модели DOM.

Тип узла Описание
XmlDeclaration Представляет узел декларации <?xml version="1.0"…>.
XmlSignificantWhitespace Представляет значимые пробелы, то есть пробелы в смешанном содержимом.
XmlWhitespace Представляет пробелы в содержимом элемента.
EndElement Возвращается, когда модуль XmlReader достигает конца элемента.

Пример XML: </item>

Для получения дополнительной информации см. XmlNodeType.
EndEntity Возвращается, когда модуль XmlReader достигает конца замещения сущности в результате вызова метода ResolveEntity. Для получения дополнительной информации см. XmlNodeType.

Пример кода, считывающего XML и использующего конструкцию case с типами узлов для вывода сведений об узле и его содержимом, см. в статье NodeType.

Дополнительные сведения об иерархии объектов для типов узлов с указанием имен эквивалентных объектов см. в статье Иерархия объектной модели (DOM) XML-документа. Дополнительные сведения об объектах, создаваемых в дереве узлов, см. в статье Сопоставление объектной иерархии с XML-данными.

См. также