ReactOS 0.4.15-dev-7924-g5949c20
entities.h
Go to the documentation of this file.
1/*
2 * Summary: interface for the XML entities handling
3 * Description: this module provides some of the entity API needed
4 * for the parser and applications.
5 *
6 * Copy: See Copyright for the status of this software.
7 *
8 * Author: Daniel Veillard
9 */
10
11#ifndef __XML_ENTITIES_H__
12#define __XML_ENTITIES_H__
13
14#include <libxml/xmlversion.h>
15#include <libxml/tree.h>
16
17#ifdef __cplusplus
18extern "C" {
19#endif
20
21/*
22 * The different valid entity types.
23 */
24typedef enum {
32
33/*
34 * An unit of storage for an entity, contains the string, the value
35 * and the linkind data needed for the linking in the hash table.
36 */
37
38struct _xmlEntity {
39 void *_private; /* application data */
40 xmlElementType type; /* XML_ENTITY_DECL, must be second ! */
41 const xmlChar *name; /* Entity name */
42 struct _xmlNode *children; /* First child link */
43 struct _xmlNode *last; /* Last child link */
44 struct _xmlDtd *parent; /* -> DTD */
45 struct _xmlNode *next; /* next sibling link */
46 struct _xmlNode *prev; /* previous sibling link */
47 struct _xmlDoc *doc; /* the containing document */
48
49 xmlChar *orig; /* content without ref substitution */
50 xmlChar *content; /* content or ndata if unparsed */
51 int length; /* the content length */
52 xmlEntityType etype; /* The entity type */
53 const xmlChar *ExternalID; /* External identifier for PUBLIC */
54 const xmlChar *SystemID; /* URI for a SYSTEM or PUBLIC Entity */
55
56 struct _xmlEntity *nexte; /* unused */
57 const xmlChar *URI; /* the full URI as computed */
58 int owner; /* does the entity own the childrens */
59 int checked; /* was the entity content checked */
60 /* this is also used to count entities
61 * references done from that entity
62 * and if it contains '<' */
63};
64
65/*
66 * All entities are stored in an hash table.
67 * There is 2 separate hash tables for global and parameter entities.
68 */
69
72
73/*
74 * External functions:
75 */
76
77#ifdef LIBXML_LEGACY_ENABLED
80 xmlInitializePredefinedEntities (void);
81#endif /* LIBXML_LEGACY_ENABLED */
82
85 const xmlChar *name,
86 int type,
87 const xmlChar *ExternalID,
88 const xmlChar *SystemID,
89 const xmlChar *content);
92 const xmlChar *name,
93 int type,
94 const xmlChar *ExternalID,
95 const xmlChar *SystemID,
96 const xmlChar *content);
99 const xmlChar *name,
100 int type,
101 const xmlChar *ExternalID,
102 const xmlChar *SystemID,
103 const xmlChar *content);
108 const xmlChar *name);
111 const xmlChar *name);
114 const xmlChar *name);
115#ifdef LIBXML_LEGACY_ENABLED
118 xmlEncodeEntities (xmlDocPtr doc,
119 const xmlChar *input);
120#endif /* LIBXML_LEGACY_ENABLED */
123 const xmlChar *input);
126 const xmlChar *input);
129#ifdef LIBXML_TREE_ENABLED
131 xmlCopyEntitiesTable (xmlEntitiesTablePtr table);
132#endif /* LIBXML_TREE_ENABLED */
135#ifdef LIBXML_OUTPUT_ENABLED
137 xmlDumpEntitiesTable (xmlBufferPtr buf,
140 xmlDumpEntityDecl (xmlBufferPtr buf,
141 xmlEntityPtr ent);
142#endif /* LIBXML_OUTPUT_ENABLED */
143#ifdef LIBXML_LEGACY_ENABLED
145 xmlCleanupPredefinedEntities(void);
146#endif /* LIBXML_LEGACY_ENABLED */
147
148
149#ifdef __cplusplus
150}
151#endif
152
153# endif /* __XML_ENTITIES_H__ */
content
Definition: atl_ax.c:994
XMLPUBFUN xmlEntitiesTablePtr XMLCALL xmlCreateEntitiesTable(void)
XMLPUBFUN xmlChar *XMLCALL xmlEncodeSpecialChars(const xmlDoc *doc, const xmlChar *input)
XMLPUBFUN xmlEntityPtr XMLCALL xmlGetDtdEntity(xmlDocPtr doc, const xmlChar *name)
XMLPUBFUN xmlEntityPtr XMLCALL xmlGetDocEntity(const xmlDoc *doc, const xmlChar *name)
XMLPUBFUN void XMLCALL xmlFreeEntitiesTable(xmlEntitiesTablePtr table)
xmlEntityType
Definition: entities.h:24
@ XML_EXTERNAL_GENERAL_PARSED_ENTITY
Definition: entities.h:26
@ XML_INTERNAL_PREDEFINED_ENTITY
Definition: entities.h:30
@ XML_EXTERNAL_GENERAL_UNPARSED_ENTITY
Definition: entities.h:27
@ XML_INTERNAL_GENERAL_ENTITY
Definition: entities.h:25
@ XML_INTERNAL_PARAMETER_ENTITY
Definition: entities.h:28
@ XML_EXTERNAL_PARAMETER_ENTITY
Definition: entities.h:29
XMLPUBFUN xmlEntityPtr XMLCALL xmlNewEntity(xmlDocPtr doc, const xmlChar *name, int type, const xmlChar *ExternalID, const xmlChar *SystemID, const xmlChar *content)
XMLPUBFUN xmlChar *XMLCALL xmlEncodeEntitiesReentrant(xmlDocPtr doc, const xmlChar *input)
XMLPUBFUN xmlEntityPtr XMLCALL xmlGetParameterEntity(xmlDocPtr doc, const xmlChar *name)
XMLPUBFUN xmlEntityPtr XMLCALL xmlAddDocEntity(xmlDocPtr doc, const xmlChar *name, int type, const xmlChar *ExternalID, const xmlChar *SystemID, const xmlChar *content)
XMLPUBFUN xmlEntityPtr XMLCALL xmlAddDtdEntity(xmlDocPtr doc, const xmlChar *name, int type, const xmlChar *ExternalID, const xmlChar *SystemID, const xmlChar *content)
xmlEntitiesTable * xmlEntitiesTablePtr
Definition: entities.h:71
XMLPUBFUN xmlEntityPtr XMLCALL xmlGetPredefinedEntity(const xmlChar *name)
#define XMLCALL
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
GLenum GLenum GLenum input
Definition: glext.h:9031
xmlElementType
Definition: tree.h:159
Definition: tree.h:551
Definition: tree.h:406
xmlChar * orig
Definition: entities.h:49
struct _xmlEntity * nexte
Definition: entities.h:56
const xmlChar * SystemID
Definition: entities.h:54
int length
Definition: entities.h:51
xmlChar * content
Definition: entities.h:50
struct _xmlNode * prev
Definition: entities.h:46
const xmlChar * URI
Definition: entities.h:57
xmlEntityType etype
Definition: entities.h:52
const xmlChar * name
Definition: entities.h:41
const xmlChar * ExternalID
Definition: entities.h:53
struct _xmlNode * last
Definition: entities.h:43
int checked
Definition: entities.h:59
void * _private
Definition: entities.h:39
struct _xmlNode * children
Definition: entities.h:42
struct _xmlDtd * parent
Definition: entities.h:44
xmlElementType type
Definition: entities.h:40
struct _xmlDoc * doc
Definition: entities.h:47
int owner
Definition: entities.h:58
struct _xmlNode * next
Definition: entities.h:45
Definition: tree.h:489
Definition: name.c:39
#define XMLPUBFUN
Definition: xmlexports.h:61
unsigned char xmlChar
Definition: xmlstring.h:28
#define XML_DEPRECATED
Definition: xmlversion.h:494