Home | All Classes | Main Classes | Annotated | Grouped Classes | Functions |

# QXmlLexicalHandler Class Reference
[XML module]

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

All the functions in this class are reentrant when Qt is built with thread support.

`#include <qxml.h>`

Inherited by QXmlDefaultHandler.

List of all member functions.

## Public Members

- virtual bool startDTD ( const QString & name, const QString & publicId, const QString & systemId ) = 0
- virtual bool endDTD () = 0
- virtual bool startEntity ( const QString & name ) = 0
- virtual bool endEntity ( const QString & name ) = 0
- virtual bool startCDATA () = 0
- virtual bool endCDATA () = 0
- virtual bool comment ( const QString & ch ) = 0
- virtual QString errorString () = 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 the SAX2 extension LexicalHandler.

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

See also the Introduction to SAX2.

See also QXmlDTDHandler, QXmlDeclHandler, QXmlContentHandler, QXmlEntityResolver, QXmlErrorHandler, and XML.

## Member Function Documentation

### 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 ()`[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 QString::null. If the system identifier is missing, systemId is set to QString::null. 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().

This file is part of the Qt toolkit. Copyright © 1995-2005 Trolltech. All Rights Reserved.