Qt Reference Documentation

# QXmlLexicalHandler Class Reference

The QXmlLexicalHandler class provides an interface to report the lexical content of XML data. More...

     #include <QXmlLexicalHandler>

Inherited by: QXmlDefaultHandler.

Note: All functions in this class are reentrant.

- List of all members, including inherited members

## Public Functions

virtual | ~QXmlLexicalHandler ()
virtual bool | comment ( const QString & ch ) = 0
virtual bool | endCDATA () = 0
virtual bool | endDTD () = 0
virtual bool | endEntity ( const QString & name ) = 0
virtual QString | errorString () const = 0
virtual bool | startCDATA () = 0
virtual bool | startDTD ( const QString & name, const QString & publicId, const QString & systemId ) = 0
virtual bool | startEntity ( const QString & name ) = 0

## Detailed Description

The QXmlLexicalHandler class provides an interface to report the lexical content of XML data.

The events in the lexical handler apply to the entire document, not just to the document element, and all lexical handler events appear between the content handler's startDocument and endDocument events.

You can set the lexical handler with QXmlReader::setLexicalHandler().

This interface's design is based on the SAX2 extension LexicalHandler.

The interface provides the startDTD(), endDTD(), startEntity(), endEntity(), startCDATA(), endCDATA() and comment() functions.

See also QXmlDTDHandler, QXmlDeclHandler, QXmlContentHandler, QXmlEntityResolver, QXmlErrorHandler, and Introduction to SAX2.

## Member Function Documentation

### QXmlLexicalHandler::~QXmlLexicalHandler ()`[virtual]`

Destroys the lexical handler.

### bool QXmlLexicalHandler::comment ( const QString & ch )`[pure virtual]`

The reader calls this function to report an XML comment anywhere in the document. It reports the text of the comment in ch.

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

### bool QXmlLexicalHandler::endCDATA ()`[pure virtual]`

The reader calls this function to report the end of a CDATA section.

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

See also startCDATA() and QXmlContentHandler::characters().

### bool QXmlLexicalHandler::endDTD ()`[pure virtual]`

The reader calls this function to report the end of a DTD declaration, if any.

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

See also startDTD().

### bool QXmlLexicalHandler::endEntity ( const QString & name )`[pure virtual]`

The reader calls this function to report the end of an entity called name.

For every startEntity() call, there is a corresponding endEntity() call. The calls to startEntity() and endEntity() are properly nested.

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

See also startEntity(), QXmlContentHandler::skippedEntity(), and QXmlSimpleReader::setFeature().

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

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

### bool QXmlLexicalHandler::startCDATA ()`[pure virtual]`

The reader calls this function to report the start of a CDATA section. The content of the CDATA section is reported through the QXmlContentHandler::characters() function. This function is intended only to report the boundary.

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

See also endCDATA().

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

The reader calls this function to report the start of a DTD declaration, if any. It reports the name of the document type in name, the public identifier in publicId and the system identifier in systemId.

If the public identifier is missing, publicId is set to an empty string. If the system identifier is missing, systemId is set to an empty string. Note that it is not valid XML to have a public identifier but no system identifier; in such cases a parse error will occur.

All declarations reported through QXmlDTDHandler or QXmlDeclHandler appear between the startDTD() and endDTD() calls.

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

See also endDTD().

### bool QXmlLexicalHandler::startEntity ( const QString & name )`[pure virtual]`

The reader calls this function to report the start of an entity called name.

Note that if the entity is unknown, the reader reports it through QXmlContentHandler::skippedEntity() and not through this function.

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

See also endEntity() and QXmlSimpleReader::setFeature().