2005/5/9

     
 

class DeclHandler

artefaktur
Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   Namespace Members   Compound Members   Related Pages  

org::xml::sax::DeclHandler Class Reference

#include <DeclHandler.h>

List of all members.


Detailed Description

SAX2 extension handler for DTD declaration events.

This module, both source code and documentation, is in the Public Domain, and comes with NO WARRANTY. See http://www.saxproject.org for further information.

This is an optional extension handler for SAX2 to provide more complete information about DTD declarations in an XML document. XML readers are not required to recognize this handler, and it is not part of core-only SAX2 distributions.

Note that data-related DTD declarations (unparsed entities and notations) are already reported through the DTDHandler interface.

If you are using the declaration handler together with a lexical handler, all of the events will occur between the startDTD and the endDTD events.

To set the DeclHandler for an XML reader, use the setProperty method with the property name http://xml.org/sax/properties/declaration-handler and an object implementing this interface (or null) as the value. If the reader does not report declaration events, it will throw a SAXNotRecognizedException when you attempt to register the handler.

Since:
SAX 2.0 (extensions 1.0)


Public Member Functions

virtual void elementDecl (IN(RString) name, IN(RString) model)=0 throw ( RSAXException )
 Report an element type declaration.

virtual void attributeDecl (IN(RString) eName, IN(RString) aName, IN(RString) type, IN(RString) mode, IN(RString) value)=0 throw ( RSAXException )
 Report an attribute type declaration.

virtual void internalEntityDecl (IN(RString) name, IN(RString) value)=0 throw ( RSAXException )
 Report an internal entity declaration.

virtual void externalEntityDecl (IN(RString) name, IN(RString) publicId, IN(RString) systemId)=0 throw ( RSAXException )
 Report a parsed external entity declaration.


Member Function Documentation

virtual void org::xml::sax::DeclHandler::attributeDecl IN(RString eName,
IN(RString aName,
IN(RString type,
IN(RString mode,
IN(RString value
throw ( RSAXException ) [pure virtual]
 

Report an attribute type declaration.

Only the effective (first) declaration for an attribute will be reported. The type will be one of the strings CDATA, ID, IDREF, IDREFS, NMTOKEN, NMTOKENS, ENTITY, ENTITIES, a parenthesized token group with the separator | and all whitespace removed, or the word NOTATION followed by a space followed by a parenthesized token group with all whitespace removed.

The value will be the value as reported to applications, appropriately normalized and with entity and character references expanded.

Parameters:
eName The name of the associated element.
aName The name of the attribute.
type A string representing the attribute type.
mode A string representing the attribute defaulting mode (#IMPLIED, #REQUIRED, or #FIXED) or null if none of these applies.
value A string representing the attribute's default value, or null if there is none.
Exceptions:
SAXException The application may raise an exception.

virtual void org::xml::sax::DeclHandler::elementDecl IN(RString name,
IN(RString model
throw ( RSAXException ) [pure virtual]
 

Report an element type declaration.

The content model will consist of the string EMPTY, the string ANY, or a parenthesised group, optionally followed by an occurrence indicator. The model will be normalized so that all parameter entities are fully resolved and all whitespace is removed,and will include the enclosing parentheses. Other normalization (such as removing redundant parentheses or simplifying occurrence indicators) is at the discretion of the parser.

Parameters:
name The element type name.
model The content model as a normalized string.
Exceptions:
SAXException The application may raise an exception.

virtual void org::xml::sax::DeclHandler::externalEntityDecl IN(RString name,
IN(RString publicId,
IN(RString systemId
throw ( RSAXException ) [pure virtual]
 

Report a parsed external entity declaration.

Only the effective (first) declaration for each entity will be reported.

Parameters:
name The name of the entity. If it is a parameter entity, the name will begin with '%'.
publicId The declared public identifier of the entity, or null if none was declared.
systemId The declared system identifier of the entity.
Exceptions:
SAXException The application may raise an exception.
See also:
internalEntityDecl

org::xml::sax::DTDHandler::unparsedEntityDecl

virtual void org::xml::sax::DeclHandler::internalEntityDecl IN(RString name,
IN(RString value
throw ( RSAXException ) [pure virtual]
 

Report an internal entity declaration.

Only the effective (first) declaration for each entity will be reported. All parameter entities in the value will be expanded, but general entities will not.

Parameters:
name The name of the entity. If it is a parameter entity, the name will begin with '%'.
value The replacement text of the entity.
Exceptions:
SAXException The application may raise an exception.
See also:
externalEntityDecl

org::xml::sax::DTDHandler::unparsedEntityDecl