- Qt 6.8
- Qt 5 Core Compatibility APIs
- C++ Classes
- QXmlDeclHandler
- Qt 6.8.3 Reference Documentation

# QXmlDeclHandler Class

The QXmlDeclHandler class provides an interface to report declaration content of XML data. More...

Header: | `#include <QXmlDeclHandler>`
CMake: | `find_package(Qt6 REQUIRED COMPONENTS Core5Compat)` `target_link_libraries(mytarget PRIVATE Qt6::Core5Compat)`
qmake: | `QT += core5compat`
Inherited By: | QXmlDefaultHandler

- List of all members, including inherited members

Note: All functions in this class are reentrant.

## Public Functions

virtual | ~QXmlDeclHandler()
virtual bool | attributeDecl(const QString &eName, const QString &aName, const QString &type, const QString &valueDefault, const QString &value) = 0
virtual QString | errorString() const = 0
virtual bool | externalEntityDecl(const QString &name, const QString &publicId, const QString &systemId) = 0
virtual bool | internalEntityDecl(const QString &name, const QString &value) = 0

## Detailed Description

You can set the declaration handler with QXmlReader::setDeclHandler().

This interface is based on the SAX2 extension DeclHandler.

The interface provides attributeDecl(), internalEntityDecl() and externalEntityDecl() functions.

See also QXmlDTDHandler, QXmlContentHandler, QXmlEntityResolver, QXmlErrorHandler, and QXmlLexicalHandler.

## Member Function Documentation

### `[virtual noexcept]` QXmlDeclHandler::~QXmlDeclHandler()

Destroys the declaration handler.

### `[pure virtual]` bool QXmlDeclHandler::attributeDecl(const QString &eName, const QString &aName, const QString &type, const QString &valueDefault, const QString &value)

The reader calls this function to report an attribute type declaration. Only the effective (first) declaration for an attribute is reported.

The reader passes the name of the associated element in eName and the name of the attribute in aName. It passes a string that represents the attribute type in type and a string that represents the attribute default in valueDefault. This string is one of "#IMPLIED", "#REQUIRED", "#FIXED" or an empty string (if none of the others applies). The reader passes the attribute's default value in value. If no default value is specified in the XML file, value is an empty string.

If this function returns `false` the reader stops parsing and reports an error. The reader uses the function errorString() to get the error message.

### `[pure virtual]` QString QXmlDeclHandler::errorString() const

The reader calls this function to get an error string if any of the handler functions returns `false`.

### `[pure virtual]` bool QXmlDeclHandler::externalEntityDecl(const QString &name, const QString &publicId, const QString &systemId)

The reader calls this function to report a parsed external entity declaration. Only the effective (first) declaration for each entity is reported.

The reader passes the name of the entity in name, the public identifier in publicId and the system identifier in systemId. If there is no public identifier specified, it passes an empty string in publicId.

If this function returns `false` the reader stops parsing and reports an error. The reader uses the function errorString() to get the error message.

### `[pure virtual]` bool QXmlDeclHandler::internalEntityDecl(const QString &name, const QString &value)

The reader calls this function to report an internal entity declaration. Only the effective (first) declaration is reported.

The reader passes the name of the entity in name and the value of the entity in value.

If this function returns `false` the reader stops parsing and reports an error. The reader uses the function errorString() to get the error message.