This method allows objects of this class to be used within a standard keyed collection used commonly within the parser system.

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.

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.

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.

unsigned int XMLEntityDecl::getId

(

)

const

Gets the pool id of this entity.

Validators maintain all decls in pools, from which they can be quickly extracted via id.

const XMLCh * XMLEntityDecl::getName

(

)

const

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

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

Gets the public id declared for this entity.

Public ids are optional so it can be a null pointer.

const XMLCh * XMLEntityDecl::getSystemId

(

)

const

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::getBaseURI

(

)

const

Gets the base URI for this entity.

const XMLCh * XMLEntityDecl::getValue

(

)

const

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

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

Indicates that this entity is an external entity.

If not, then it is assumed to be an internal entity, suprise.

bool XMLEntityDecl::isUnparsed

(

)

const

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.

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

)

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

)

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

)

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::setBaseURI

(

const XMLCh *const

newId

)

This method will set a new baseURI on this entity.

This will then control the URI used to resolve the relative system Id.

Parameters:

newId

The new base URI to give to the entity.

void XMLEntityDecl::setValue

(

const XMLCh *const

newValue

)

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.

void XMLEntityDecl::setId

(

const unsigned int

newId

)

const XMLCh * XMLEntityDecl::getKey

(

)

const

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.

The documentation for this class was generated from the following file: