Main Page   Class Hierarchy   Compound List   File List   Compound Members  

XMLEntityDecl Class Reference

List of all members.

Public Methods

void setId (const unsigned int newId)
Constructors
 XMLEntityDecl ()
 XMLEntityDecl (const XMLCh *const entName)
 XMLEntityDecl (const XMLCh *const entName, const XMLCh *const value)
 XMLEntityDecl (const XMLCh *const entName, const XMLCh value)
Destructor
virtual ~XMLEntityDecl ()
The pure virtual methods in this interface.
virtual bool getDeclaredInIntSubset () const=0
virtual bool getIsParameter () const=0
virtual bool getIsSpecialChar () const=0
Getter methods
unsigned int getId () const
const XMLCh * getName () const
const XMLCh * getNotationName () const
const XMLCh * getPublicId () const
const XMLCh * getSystemId () const
const XMLCh * getValue () const
unsigned int getValueLen () const
bool isExternal () const
bool isUnparsed () const
Setter methods
void setName (const XMLCh *const entName)
void setNotationName (const XMLCh *const newName)
void setPublicId (const XMLCh *const newId)
void setSystemId (const XMLCh *const newId)
void setValue (const XMLCh *const newValue)
Setter methods
const XMLCh * getKey () const

Detailed Description

This class defines that core information that defines an XML entity, no matter what validator is used. Each validator will create a derivative of this class which adds any extra information it requires.

This class supports keyed collection semantics via the getKey() method which extracts the key field, the entity name in this case. The name will have whatever form is deemed appropriate for the type of validator in use.

When setting the fields of this class, you must make sure that you do not set conflicting values. For instance, an internal entity cannot have a notation name. And an external entity cannot have a value string. These rules are defined by the XML specification. In most cases, these objects are created by validator objects as they parse a DTD or Schema or whatever, at which time they confirm the correctness of the data before creating the entity decl object.


Constructor & Destructor Documentation

XMLEntityDecl::XMLEntityDecl  
 

Deafult Constructor

XMLEntityDecl::XMLEntityDecl const XMLCh *const    entName
 

Constructor with a const entity name

Parameters:
entName The new name to give to this entity.

XMLEntityDecl::XMLEntityDecl const XMLCh *const    entName,
const XMLCh *const    value
 

Constructor with a const entity name and value

Parameters:
entName The new name to give to this entity.
value The new value to give to this entity name.

XMLEntityDecl::XMLEntityDecl const XMLCh *const    entName,
const XMLCh    value
 

Constructor with a const entity name and single XMLCh value

Parameters:
entName The new name to give to this entity.
value The new value to give to this entity name.

XMLEntityDecl::~XMLEntityDecl   [virtual]
 

Default destructor


Member Function Documentation

virtual bool XMLEntityDecl::getDeclaredInIntSubset   const [pure virtual]
 

Get the 'declared in internal subset' flag

Gets the state of the flag which indicates whether the entity was declared in the internal or external subset. Some structural description languages might not have an internal subset concept, in which case this will always return false.

unsigned int XMLEntityDecl::getId   const [inline]
 

Gets the pool id of this entity. Validators maintain all decls in pools, from which they can be quickly extracted via id.

virtual bool XMLEntityDecl::getIsParameter   const [pure virtual]
 

Get the 'is parameter entity' flag

Gets the state of the flag which indicates whether this entity is a parameter entity. If not, then its a general entity.

virtual bool XMLEntityDecl::getIsSpecialChar   const [pure virtual]
 

Get the 'is special char entity' flag

Gets the state of the flag that indicates whether this entity is one of the special, intrinsically supported character entities.

const XMLCh * XMLEntityDecl::getKey   const [inline]
 

This method allows objects of this class to be used within a standard keyed collection used commonly within the parser system. The collection calls this method to get the key (usually to hash it) by which the object is to be stored.

const XMLCh * XMLEntityDecl::getName   const [inline]
 

Returns a const pointer to the name of this entity decl. This name will be in whatever format is appropriate for the type of validator in use.

const XMLCh * XMLEntityDecl::getNotationName   const [inline]
 

Gets the notation name, if any, declared for this entity. If this entity is not a notation type entity, it will be a null pointer.

const XMLCh * XMLEntityDecl::getPublicId   const [inline]
 

Gets the public id declared for this entity. Public ids are optional so it can be a null pointer.

const XMLCh * XMLEntityDecl::getSystemId   const [inline]
 

Gets the system id declared for this entity. The system id is required so this method should never return a null pointers.

const XMLCh * XMLEntityDecl::getValue   const [inline]
 

This method returns the value of an internal entity. If this is not an internal entity (i.e. its external), then this will be a null pointer.

unsigned int XMLEntityDecl::getValueLen   const [inline]
 

This method returns the number of characters in the value returned by getValue(). If this entity is external, this will be zero since an external entity has no internal value.

bool XMLEntityDecl::isExternal   const [inline]
 

Indicates that this entity is an external entity. If not, then it is assumed to be an internal entity, suprise.

bool XMLEntityDecl::isUnparsed   const [inline]
 

Indicates whether this entity is unparsed. This is meaningless for internal entities. Some external entities are unparsed in that they refer to something other than XML source.

void XMLEntityDecl::setName const XMLCh *const    entName
 

This method will set the entity name. The format of this name is defined by the particular validator in use, since it will be the one who creates entity definitions as it parses the DTD, Schema, ect...

Parameters:
entName The new name to give to this entity.

void XMLEntityDecl::setNotationName const XMLCh *const    newName [inline]
 

This method will set the notation name for this entity. By setting this, you are indicating that this is an unparsed external entity.

Parameters:
newName The new notation name to give to this entity.

void XMLEntityDecl::setPublicId const XMLCh *const    newId [inline]
 

This method will set a new public id on this entity. The public id has no particular form and is purely for client consumption.

Parameters:
newId The new public id to give to this entity.

void XMLEntityDecl::setSystemId const XMLCh *const    newId [inline]
 

This method will set a new sysetm id on this entity. This will then control where the source for this entity lives. If it is an internal entity, then the system id is only for bookkeeping purposes, and to allow any external entities referenced from within the entity to be correctly resolved.

Parameters:
newId The new system id to give to the entity.

void XMLEntityDecl::setValue const XMLCh *const    newValue [inline]
 

This method will set a new value for this entity. This is only valid if the entity is to be an internal entity. By setting this field, you are indicating that the entity is internal.

Parameters:
newValue The new value to give to this entity.


The documentation for this class was generated from the following files:
Generated on Tue Nov 19 09:36:47 2002 by doxygen1.3-rc1