QXmlStreamAttributes Class

The QXmlStreamAttributes class represents a vector of QXmlStreamAttribute. More...

Header: #include <QXmlStreamAttributes>
CMake: find_package(Qt6 COMPONENTS Core REQUIRED)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core
Inherits: QList

Note: All functions in this class are reentrant.

Public Functions

QXmlStreamAttributes()
void append(const QString &namespaceUri, const QString &name, const QString &value)
void append(const QString &qualifiedName, const QString &value)
bool hasAttribute(const QString &qualifiedName) const
bool hasAttribute(QLatin1String qualifiedName) const
bool hasAttribute(const QString &namespaceUri, const QString &name) const
QStringView value(const QString &namespaceUri, const QString &name) const
QStringView value(const QString &namespaceUri, QLatin1String name) const
QStringView value(QLatin1String namespaceUri, QLatin1String name) const
QStringView value(const QString &qualifiedName) const
QStringView value(QLatin1String qualifiedName) const

Detailed Description

Attributes are returned by a QXmlStreamReader in attributes() when the reader reports a start element. The class can also be used with a QXmlStreamWriter as an argument to writeAttributes().

The convenience function value() loops over the vector and returns an attribute value for a given namespaceUri and an attribute's name.

New attributes can be added with append().

Member Function Documentation

QXmlStreamAttributes::QXmlStreamAttributes()

A constructor for QXmlStreamAttributes.

void QXmlStreamAttributes::append(const QString &namespaceUri, const QString &name, const QString &value)

Appends a new attribute with name in the namespace described with namespaceUri, and value value. The namespaceUri can be empty.

void QXmlStreamAttributes::append(const QString &qualifiedName, const QString &value)

This is an overloaded function.

Appends a new attribute with qualified name qualifiedName and value value.

bool QXmlStreamAttributes::hasAttribute(const QString &qualifiedName) const

Returns true if this QXmlStreamAttributes has an attribute whose qualified name is qualifiedName; otherwise returns false.

Note that this is not namespace aware. For instance, if this QXmlStreamAttributes contains an attribute whose lexical name is "xlink:href" this doesn't tell that an attribute named href in the XLink namespace is present, since the xlink prefix can be bound to any namespace. Use the overload that takes a namespace URI and a local name as parameter, for namespace aware code.

bool QXmlStreamAttributes::hasAttribute(QLatin1String qualifiedName) const

This is an overloaded function.

bool QXmlStreamAttributes::hasAttribute(const QString &namespaceUri, const QString &name) const

This is an overloaded function.

Returns true if this QXmlStreamAttributes has an attribute whose namespace URI and name correspond to namespaceUri and name; otherwise returns false.

QStringView QXmlStreamAttributes::value(const QString &namespaceUri, const QString &name) const

Returns the value of the attribute name in the namespace described with namespaceUri, or an empty string reference if the attribute is not defined. The namespaceUri can be empty.

QStringView QXmlStreamAttributes::value(const QString &namespaceUri, QLatin1String name) const

This is an overloaded function.

Returns the value of the attribute name in the namespace described with namespaceUri, or an empty string reference if the attribute is not defined. The namespaceUri can be empty.

QStringView QXmlStreamAttributes::value(QLatin1String namespaceUri, QLatin1String name) const

This is an overloaded function.

Returns the value of the attribute name in the namespace described with namespaceUri, or an empty string reference if the attribute is not defined. The namespaceUri can be empty.

QStringView QXmlStreamAttributes::value(const QString &qualifiedName) const

This is an overloaded function.

Returns the value of the attribute with qualified name qualifiedName , or an empty string reference if the attribute is not defined. A qualified name is the raw name of an attribute in the XML data. It consists of the namespace prefix, followed by colon, followed by the attribute's local name. Since the namespace prefix is not unique (the same prefix can point to different namespaces and different prefixes can point to the same namespace), you shouldn't use qualified names, but a resolved namespaceUri and the attribute's local name.

QStringView QXmlStreamAttributes::value(QLatin1String qualifiedName) const

This is an overloaded function.

Returns the value of the attribute with qualified name qualifiedName , or an empty string reference if the attribute is not defined. A qualified name is the raw name of an attribute in the XML data. It consists of the namespace prefix, followed by colon, followed by the attribute's local name. Since the namespace prefix is not unique (the same prefix can point to different namespaces and different prefixes can point to the same namespace), you shouldn't use qualified names, but a resolved namespaceUri and the attribute's local name.