Details
enum xmlEntityType
| typedef enum {
    XML_INTERNAL_GENERAL_ENTITY = 1,
    XML_EXTERNAL_GENERAL_PARSED_ENTITY = 2,
    XML_EXTERNAL_GENERAL_UNPARSED_ENTITY = 3,
    XML_INTERNAL_PARAMETER_ENTITY = 4,
    XML_EXTERNAL_PARAMETER_ENTITY = 5,
    XML_INTERNAL_PREDEFINED_ENTITY = 6
} xmlEntityType; | 
struct xmlEntity
| struct xmlEntity {
#ifndef XML_WITHOUT_CORBA
    void           *_private;	        /* for Corba, must be first ! */
#endif
    xmlElementType          type;       /* XML_ENTITY_DECL, must be second ! */
    const xmlChar          *name;	/* Attribute name */
    struct _xmlNode    *children;	/* NULL */
    struct _xmlNode        *last;	/* NULL */
    struct _xmlDtd       *parent;	/* -> DTD */
    struct _xmlNode        *next;	/* next sibling link  */
    struct _xmlNode        *prev;	/* previous sibling link  */
    struct _xmlDoc          *doc;       /* the containing document */
    xmlChar                *orig;	/* content without ref substitution */
    xmlChar             *content;	/* content or ndata if unparsed */
    int                   length;	/* the content length */
    xmlEntityType          etype;	/* The entity type */
    const xmlChar    *ExternalID;	/* External identifier for PUBLIC */
    const xmlChar      *SystemID;	/* URI for a SYSTEM or PUBLIC Entity */
#ifdef WITH_EXTRA_ENT_DETECT
    /* Referenced entities name stack */
    xmlChar           *ent;             /* Current parsed Node */
    int                entNr;           /* Depth of the parsing stack */
    int                entMax;          /* Max depth of the parsing stack */
    xmlChar *         *entTab;          /* array of nodes */
#endif
}; | 
xmlEntityPtr
| typedef xmlEntity *xmlEntityPtr; | 
XML_MIN_ENTITIES_TABLE
| #define XML_MIN_ENTITIES_TABLE	32 | 
struct xmlEntitiesTable
| struct xmlEntitiesTable {
    int nb_entities;		/* number of elements stored */
    int max_entities;		/* maximum number of elements */
    xmlEntityPtr *table;	/* the table of entities */
}; | 
xmlEntitiesTablePtr
| typedef xmlEntitiesTable *xmlEntitiesTablePtr; | 
xmlAddDocEntity ()
Register a new entity for this document.
xmlAddDtdEntity ()
Register a new entity for this document DTD external subset.
xmlGetPredefinedEntity ()
Check whether this name is an predefined entity.
xmlGetDocEntity ()
Do an entity lookup in the document entity hash table and
returns the corrsponding entity, otherwise a lookup is done
in the predefined entities too.
xmlGetDtdEntity ()
Do an entity lookup in the Dtd entity hash table and
returns the corresponding entity, if found.
xmlGetParameterEntity ()
Do an entity lookup in the internal and external subsets and
returns the corresponding parameter entity, if found.
xmlEncodeEntities ()
Do a global encoding of a string, replacing the predefined entities
and non ASCII values with their entities and CharRef counterparts.
TODO: remove xmlEncodeEntities, once we are not afraid of breaking binary
compatibility
People must migrate their code to xmlEncodeEntitiesReentrant !
This routine will issue a warning when encountered.
xmlEncodeEntitiesReentrant ()
Do a global encoding of a string, replacing the predefined entities
and non ASCII values with their entities and CharRef counterparts.
Contrary to xmlEncodeEntities, this routine is reentrant, and result
must be deallocated.
xmlEncodeSpecialChars ()
Do a global encoding of a string, replacing the predefined entities
this routine is reentrant, and result must be deallocated.
xmlCreateEntitiesTable ()
create and initialize an empty entities hash table.
xmlCopyEntitiesTable ()
Build a copy of an entity table.
xmlFreeEntitiesTable ()
Deallocate the memory used by an entities hash table.
xmlDumpEntitiesTable ()
This will dump the content of the entity table as an XML DTD definition
xmlDumpEntityDecl ()
This will dump the content of the entity table as an XML DTD definition
xmlCleanupPredefinedEntities ()
| void        xmlCleanupPredefinedEntities    (void); | 
Cleanup up the predefined entities table.
xmlEntityAddReference ()
Function to register reuse of an existing entity from a (new) one
Used to keep track of references and detect cycles (well formedness 
errors !).