Работа с деревом DOM
DOM Level 2 — это рекомендация W3C для интерфейсов XML, которая отображает составляющие документа XML в структуру дерева. Спецификация DOM Level 2 доступна по адресу http://www.w3.org/DOM/.
Введение в DOM
DOM предоставляет интерфейс для доступа к содержимому и структуре файла XML и изменения их. Он создаёт иерархическое представление документа (вид дерева). Таким образом, в отличие от интерфейса SAX2, после парсинга модель объекта документа находится в памяти, что упрощает манипуляции.
Все узлы DOM в дереве документа являются подклассами QDomNode. Сам документ представлен объектом QDomDocument.
Ниже приведены доступные классы узлов и их потенциальные дочерние классы:
-
QDomDocument: Возможные дочерние элементы:
- QDomElement (максимум один)
- QDomProcessingInstruction
- QDomComment
- QDomDocumentType
- QDomDocumentFragment: Возможные дочерние элементы:
- QDomDocumentType: Нет дочерних элементов
- QDomEntityReference: Возможные дочерние элементы:
- QDomElement: Возможные дочерние элементы:
- QDomAttr: Возможные дочерние элементы:
- QDomProcessingInstruction: Нет дочерних элементов
- QDomComment: Нет дочерних элементов
- QDomText: Нет дочерних элементов
- QDomCDATASection: Нет дочерних элементов
- QDomEntity: Возможные дочерние элементы:
- QDomNotation: Нет дочерних элементов
С помощью QDomNodeList и QDomNamedNodeMap предоставляются два класса коллекций: QDomNodeList — это список узлов, а QDomNamedNodeMap используется для обработки неупорядоченных наборов узлов (часто используется для атрибутов).
Класс QDomImplementation позволяет пользователю запросить функции реализации DOM.
Для начала работы ознакомьтесь с документацией QDomDocument. Вы также можете ознакомиться с примером закладок DOM, который иллюстрирует, как читать и записывать файл закладок XML (XBEL) с помощью DOM.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/xml-dom-tml.html