Trabajar con el árbol DOM
DOM Nivel 2 es una Recomendación del W3C para interfaces XML que asigna los componentes de un documento XML a una estructura de árbol. La especificación de DOM Nivel 2 se encuentra en http://www.w3.org/DOM/.
Introducción a DOM
DOM proporciona una interfaz para acceder y modificar el contenido y la estructura de un archivo XML. Ofrece una vista jerárquica del documento (una vista de árbol). De este modo, a diferencia de la API de flujo que ofrece QXmlStreamReader, un modelo de objeto del documento queda residente en memoria tras el análisis sintáctico, lo que facilita su manipulación.
Todos los nodos DOM del árbol del documento son subclases de QDomNode. El propio documento se representa como un objeto QDomDocument.
Estas son las clases de nodos disponibles y sus posibles clases hijas:
- QDomDocument: Los posibles hijos son
- QDomElement (como máximo uno)
- QDomProcessingInstruction
- QDomComment
- QDomDocumentType
- QDomDocumentFragment: Los posibles hijos son
- QDomDocumentType: Sin hijos
- QDomEntityReference: Los posibles hijos son
- QDomElement: Posibles hijos
- QDomAttr: Posibles hijos son
- QDomProcessingInstruction: Sin hijos
- QDomComment: Sin hijos
- QDomText: Sin hijos
- QDomCDATASection: Sin hijos
- QDomEntity: Los posibles hijos son
- QDomNotation: Sin hijos
Con QDomNodeList y QDomNamedNodeMap se proporcionan dos clases de colección: QDomNodeList es una lista de nodos, y QDomNamedNodeMap se utiliza para manejar conjuntos desordenados de nodos (a menudo utilizados para atributos).
La clase QDomImplementation permite al usuario consultar características de la implementación DOM.
Para empezar, consulta la documentación de QDomDocument. También puede echar un vistazo a la aplicación DOM Bookmarks, que ilustra cómo leer y escribir un archivo de marcadores XML (XBEL) utilizando DOM.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.