SAX2.h revision 1b7783879f7122564e209c7124301e886079f393
1/*
2 * Summary: SAX2 parser interface used to build the DOM tree
3 * Description: those are the default SAX2 interfaces used by
4 *              the library when building DOM tree.
5 *
6 * Copy: See Copyright for the status of this software.
7 *
8 * Author: Daniel Veillard
9 */
10
11
12#ifndef __XML_SAX2_H__
13#define __XML_SAX2_H__
14
15#include <stdio.h>
16#include <stdlib.h>
17#include <libxml/xmlversion.h>
18#include <libxml/parser.h>
19#include <libxml/xlink.h>
20
21#ifdef __cplusplus
22extern "C" {
23#endif
24XMLPUBFUN const xmlChar * XMLCALL
25		xmlSAX2GetPublicId		(void *ctx);
26XMLPUBFUN const xmlChar * XMLCALL
27		xmlSAX2GetSystemId		(void *ctx);
28XMLPUBFUN void XMLCALL
29		xmlSAX2SetDocumentLocator	(void *ctx,
30						 xmlSAXLocatorPtr loc);
31
32XMLPUBFUN int XMLCALL
33		xmlSAX2GetLineNumber		(void *ctx);
34XMLPUBFUN int XMLCALL
35		xmlSAX2GetColumnNumber		(void *ctx);
36
37XMLPUBFUN int XMLCALL
38		xmlSAX2IsStandalone		(void *ctx);
39XMLPUBFUN int XMLCALL
40		xmlSAX2HasInternalSubset	(void *ctx);
41XMLPUBFUN int XMLCALL
42		xmlSAX2HasExternalSubset	(void *ctx);
43
44XMLPUBFUN void XMLCALL
45		xmlSAX2InternalSubset		(void *ctx,
46						 const xmlChar *name,
47						 const xmlChar *ExternalID,
48						 const xmlChar *SystemID);
49XMLPUBFUN void XMLCALL
50		xmlSAX2ExternalSubset		(void *ctx,
51						 const xmlChar *name,
52						 const xmlChar *ExternalID,
53						 const xmlChar *SystemID);
54XMLPUBFUN xmlEntityPtr XMLCALL
55		xmlSAX2GetEntity		(void *ctx,
56						 const xmlChar *name);
57XMLPUBFUN xmlEntityPtr XMLCALL
58		xmlSAX2GetParameterEntity	(void *ctx,
59						 const xmlChar *name);
60XMLPUBFUN xmlParserInputPtr XMLCALL
61		xmlSAX2ResolveEntity		(void *ctx,
62						 const xmlChar *publicId,
63						 const xmlChar *systemId);
64
65XMLPUBFUN void XMLCALL
66		xmlSAX2EntityDecl		(void *ctx,
67						 const xmlChar *name,
68						 int type,
69						 const xmlChar *publicId,
70						 const xmlChar *systemId,
71						 xmlChar *content);
72XMLPUBFUN void XMLCALL
73		xmlSAX2AttributeDecl		(void *ctx,
74						 const xmlChar *elem,
75						 const xmlChar *fullname,
76						 int type,
77						 int def,
78						 const xmlChar *defaultValue,
79						 xmlEnumerationPtr tree);
80XMLPUBFUN void XMLCALL
81		xmlSAX2ElementDecl		(void *ctx,
82						 const xmlChar *name,
83						 int type,
84						 xmlElementContentPtr content);
85XMLPUBFUN void XMLCALL
86		xmlSAX2NotationDecl		(void *ctx,
87						 const xmlChar *name,
88						 const xmlChar *publicId,
89						 const xmlChar *systemId);
90XMLPUBFUN void XMLCALL
91		xmlSAX2UnparsedEntityDecl	(void *ctx,
92						 const xmlChar *name,
93						 const xmlChar *publicId,
94						 const xmlChar *systemId,
95						 const xmlChar *notationName);
96
97XMLPUBFUN void XMLCALL
98		xmlSAX2StartDocument		(void *ctx);
99XMLPUBFUN void XMLCALL
100		xmlSAX2EndDocument		(void *ctx);
101#if defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED)
102XMLPUBFUN void XMLCALL
103		xmlSAX2StartElement		(void *ctx,
104						 const xmlChar *fullname,
105						 const xmlChar **atts);
106XMLPUBFUN void XMLCALL
107		xmlSAX2EndElement		(void *ctx,
108						 const xmlChar *name);
109#endif /* LIBXML_SAX1_ENABLED or LIBXML_HTML_ENABLED */
110XMLPUBFUN void XMLCALL
111		xmlSAX2StartElementNs		(void *ctx,
112						 const xmlChar *localname,
113						 const xmlChar *prefix,
114						 const xmlChar *URI,
115						 int nb_namespaces,
116						 const xmlChar **namespaces,
117						 int nb_attributes,
118						 int nb_defaulted,
119						 const xmlChar **attributes);
120XMLPUBFUN void XMLCALL
121		xmlSAX2EndElementNs		(void *ctx,
122						 const xmlChar *localname,
123						 const xmlChar *prefix,
124						 const xmlChar *URI);
125XMLPUBFUN void XMLCALL
126		xmlSAX2Reference		(void *ctx,
127						 const xmlChar *name);
128XMLPUBFUN void XMLCALL
129		xmlSAX2Characters		(void *ctx,
130						 const xmlChar *ch,
131						 int len);
132XMLPUBFUN void XMLCALL
133		xmlSAX2IgnorableWhitespace	(void *ctx,
134						 const xmlChar *ch,
135						 int len);
136XMLPUBFUN void XMLCALL
137		xmlSAX2ProcessingInstruction	(void *ctx,
138						 const xmlChar *target,
139						 const xmlChar *data);
140XMLPUBFUN void XMLCALL
141		xmlSAX2Comment			(void *ctx,
142						 const xmlChar *value);
143XMLPUBFUN void XMLCALL
144		xmlSAX2CDataBlock		(void *ctx,
145						 const xmlChar *value,
146						 int len);
147
148#ifdef LIBXML_SAX1_ENABLED
149XMLPUBFUN int XMLCALL
150		xmlSAXDefaultVersion		(int version);
151#endif /* LIBXML_SAX1_ENABLED */
152
153XMLPUBFUN int XMLCALL
154		xmlSAXVersion			(xmlSAXHandler *hdlr,
155						 int version);
156XMLPUBFUN void XMLCALL
157		xmlSAX2InitDefaultSAXHandler    (xmlSAXHandler *hdlr,
158						 int warning);
159#ifdef LIBXML_HTML_ENABLED
160XMLPUBFUN void XMLCALL
161		xmlSAX2InitHtmlDefaultSAXHandler(xmlSAXHandler *hdlr);
162XMLPUBFUN void XMLCALL
163		htmlDefaultSAXHandlerInit	(void);
164#endif
165#ifdef LIBXML_DOCB_ENABLED
166XMLPUBFUN void XMLCALL
167		xmlSAX2InitDocbDefaultSAXHandler(xmlSAXHandler *hdlr);
168XMLPUBFUN void XMLCALL
169		docbDefaultSAXHandlerInit	(void);
170#endif
171XMLPUBFUN void XMLCALL
172		xmlDefaultSAXHandlerInit	(void);
173#ifdef __cplusplus
174}
175#endif
176#endif /* __XML_SAX2_H__ */
177