Annotation of XML/entities.h, revision 1.3
1.1 httpng 1: /*
2: * entities.h : interface for the XML entities handking
3: */
4:
5: #ifndef __XML_ENTITIES_H__
6: #define __XML_ENTITIES_H__
7: #include "parser.h"
8:
9: /*
1.2 httpng 10: * An unit of storage for an entity, contains the string, the value
11: * and the linkind data needed for the linking in the hash table.
12: */
13:
14: typedef struct xmlEntity {
15: const CHAR *id; /* The entity name */
1.3 ! veillard 16: CHAR *value; /* The entity CHAR equivalent */
1.2 httpng 17: } xmlEntity, *xmlEntityPtr;
18:
19: /*
20: * ALl entities are stored in a table there is one table per DTD
21: * and one extra per document.
22: */
23:
24: #define XML_MIN_ENTITIES_TABLE 32
25:
26: typedef struct xmlEntitiesTable {
27: int nb_entities; /* number of elements stored */
28: int max_entities; /* maximum number of elements */
29: xmlEntityPtr table; /* the table of entities */
30: } xmlEntitiesTable, *xmlEntitiesTablePtr;
31:
32: /*
1.1 httpng 33: * External functions :
34: */
35:
1.3 ! veillard 36: extern void xmlAddDocEntity(xmlDocPtr doc, CHAR *value, const CHAR *id);
! 37: extern void xmlAddDtdEntity(xmlDtdPtr dtd, CHAR *value, const CHAR *id);
! 38: extern CHAR *xmlGetEntity(xmlDocPtr doc, const CHAR *id);
1.1 httpng 39: extern CHAR *xmlSubstituteEntities(xmlDocPtr doc, const CHAR *input);
1.2 httpng 40: extern CHAR *xmlEncodeEntities(xmlDocPtr doc, const CHAR *input);
1.3 ! veillard 41: extern CHAR *xmlDecodeEntities(xmlDocPtr doc, const CHAR *input, int len);
1.2 httpng 42: extern xmlEntitiesTablePtr xmlCreateEntitiesTable(void);
43: extern void xmlFreeEntitiesTable(xmlEntitiesTablePtr table);
1.1 httpng 44:
45: # endif /* __XML_ENTITIES_H__ */
Webmaster