QDomDocumentFragment Class

The QDomDocumentFragment class is a tree of QDomNodes which is not usually a complete QDomDocument. More...

Header: #include <QDomDocumentFragment>
CMake: find_package(Qt6 REQUIRED COMPONENTS Xml)
target_link_libraries(mytarget PRIVATE Qt6::Xml)
qmake: QT += xml
Inherits: QDomNode

Note: All functions in this class are reentrant.

Public Functions

QDomDocumentFragment()
QDomDocumentFragment(const QDomDocumentFragment &x)
QDomNode::NodeType nodeType() const
QDomDocumentFragment &operator=(const QDomDocumentFragment &x)

Detailed Description

If you want to do complex tree operations it is useful to have a lightweight class to store nodes and their relations. QDomDocumentFragment stores a subtree of a document which does not necessarily represent a well-formed XML document.

QDomDocumentFragment is also useful if you want to group several nodes in a list and insert them all together as children of some node. In these cases QDomDocumentFragment can be used as a temporary container for this list of children.

The most important feature of QDomDocumentFragment is that it is treated in a special way by QDomNode::insertAfter(), QDomNode::insertBefore(), QDomNode::replaceChild() and QDomNode::appendChild(): instead of inserting the fragment itself, all the fragment's children are inserted.

Member Function Documentation

QDomDocumentFragment::QDomDocumentFragment()

Constructs an empty document fragment.

QDomDocumentFragment::QDomDocumentFragment(const QDomDocumentFragment &x)

Constructs a copy of x.

The data of the copy is shared (shallow copy): modifying one node will also change the other. If you want to make a deep copy, use cloneNode().

QDomNode::NodeType QDomDocumentFragment::nodeType() const

Returns DocumentFragment.

See also isDocumentFragment() and QDomNode::toDocumentFragment().

QDomDocumentFragment &QDomDocumentFragment::operator=(const QDomDocumentFragment &x)

Assigns x to this DOM document fragment.

The data of the copy is shared (shallow copy): modifying one node will also change the other. If you want to make a deep copy, use cloneNode().