• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* libxml2 - Library for parsing XML documents
2  * Copyright (C) 2006-2019 Free Software Foundation, Inc.
3  *
4  * This file is not part of the GNU gettext program, but is used with
5  * GNU gettext.
6  *
7  * The original copyright notice is as follows:
8  */
9 
10 /*
11  * Copyright (C) 1998-2012 Daniel Veillard.  All Rights Reserved.
12  *
13  * Permission is hereby granted, free of charge, to any person obtaining a copy
14  * of this software and associated documentation files (the "Software"), to deal
15  * in the Software without restriction, including without limitation the rights
16  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
17  * copies of the Software, and to permit persons to whom the Software is fur-
18  * nished to do so, subject to the following conditions:
19  *
20  * The above copyright notice and this permission notice shall be included in
21  * all copies or substantial portions of the Software.
22  *
23  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
24  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FIT-
25  * NESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
26  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
27  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
28  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
29  * THE SOFTWARE.
30  *
31  * Author: Daniel Veillard
32  */
33 
34 /*
35  * Summary: SAX2 parser interface used to build the DOM tree
36  * Description: those are the default SAX2 interfaces used by
37  *              the library when building DOM tree.
38  */
39 
40 #ifndef __XML_SAX2_H__
41 #define __XML_SAX2_H__
42 
43 #include <stdio.h>
44 #include <stdlib.h>
45 #include <libxml/xmlversion.h>
46 #include <libxml/parser.h>
47 #include <libxml/xlink.h>
48 
49 #ifdef __cplusplus
50 extern "C" {
51 #endif
52 XMLPUBFUN const xmlChar * XMLCALL
53 		xmlSAX2GetPublicId		(void *ctx);
54 XMLPUBFUN const xmlChar * XMLCALL
55 		xmlSAX2GetSystemId		(void *ctx);
56 XMLPUBFUN void XMLCALL
57 		xmlSAX2SetDocumentLocator	(void *ctx,
58 						 xmlSAXLocatorPtr loc);
59 
60 XMLPUBFUN int XMLCALL
61 		xmlSAX2GetLineNumber		(void *ctx);
62 XMLPUBFUN int XMLCALL
63 		xmlSAX2GetColumnNumber		(void *ctx);
64 
65 XMLPUBFUN int XMLCALL
66 		xmlSAX2IsStandalone		(void *ctx);
67 XMLPUBFUN int XMLCALL
68 		xmlSAX2HasInternalSubset	(void *ctx);
69 XMLPUBFUN int XMLCALL
70 		xmlSAX2HasExternalSubset	(void *ctx);
71 
72 XMLPUBFUN void XMLCALL
73 		xmlSAX2InternalSubset		(void *ctx,
74 						 const xmlChar *name,
75 						 const xmlChar *ExternalID,
76 						 const xmlChar *SystemID);
77 XMLPUBFUN void XMLCALL
78 		xmlSAX2ExternalSubset		(void *ctx,
79 						 const xmlChar *name,
80 						 const xmlChar *ExternalID,
81 						 const xmlChar *SystemID);
82 XMLPUBFUN xmlEntityPtr XMLCALL
83 		xmlSAX2GetEntity		(void *ctx,
84 						 const xmlChar *name);
85 XMLPUBFUN xmlEntityPtr XMLCALL
86 		xmlSAX2GetParameterEntity	(void *ctx,
87 						 const xmlChar *name);
88 XMLPUBFUN xmlParserInputPtr XMLCALL
89 		xmlSAX2ResolveEntity		(void *ctx,
90 						 const xmlChar *publicId,
91 						 const xmlChar *systemId);
92 
93 XMLPUBFUN void XMLCALL
94 		xmlSAX2EntityDecl		(void *ctx,
95 						 const xmlChar *name,
96 						 int type,
97 						 const xmlChar *publicId,
98 						 const xmlChar *systemId,
99 						 xmlChar *content);
100 XMLPUBFUN void XMLCALL
101 		xmlSAX2AttributeDecl		(void *ctx,
102 						 const xmlChar *elem,
103 						 const xmlChar *fullname,
104 						 int type,
105 						 int def,
106 						 const xmlChar *defaultValue,
107 						 xmlEnumerationPtr tree);
108 XMLPUBFUN void XMLCALL
109 		xmlSAX2ElementDecl		(void *ctx,
110 						 const xmlChar *name,
111 						 int type,
112 						 xmlElementContentPtr content);
113 XMLPUBFUN void XMLCALL
114 		xmlSAX2NotationDecl		(void *ctx,
115 						 const xmlChar *name,
116 						 const xmlChar *publicId,
117 						 const xmlChar *systemId);
118 XMLPUBFUN void XMLCALL
119 		xmlSAX2UnparsedEntityDecl	(void *ctx,
120 						 const xmlChar *name,
121 						 const xmlChar *publicId,
122 						 const xmlChar *systemId,
123 						 const xmlChar *notationName);
124 
125 XMLPUBFUN void XMLCALL
126 		xmlSAX2StartDocument		(void *ctx);
127 XMLPUBFUN void XMLCALL
128 		xmlSAX2EndDocument		(void *ctx);
129 #if defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || \
130     defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED) || \
131     defined(LIBXML_LEGACY_ENABLED)
132 XMLPUBFUN void XMLCALL
133 		xmlSAX2StartElement		(void *ctx,
134 						 const xmlChar *fullname,
135 						 const xmlChar **atts);
136 XMLPUBFUN void XMLCALL
137 		xmlSAX2EndElement		(void *ctx,
138 						 const xmlChar *name);
139 #endif /* LIBXML_SAX1_ENABLED or LIBXML_HTML_ENABLED or LIBXML_LEGACY_ENABLED */
140 XMLPUBFUN void XMLCALL
141 		xmlSAX2StartElementNs		(void *ctx,
142 						 const xmlChar *localname,
143 						 const xmlChar *prefix,
144 						 const xmlChar *URI,
145 						 int nb_namespaces,
146 						 const xmlChar **namespaces,
147 						 int nb_attributes,
148 						 int nb_defaulted,
149 						 const xmlChar **attributes);
150 XMLPUBFUN void XMLCALL
151 		xmlSAX2EndElementNs		(void *ctx,
152 						 const xmlChar *localname,
153 						 const xmlChar *prefix,
154 						 const xmlChar *URI);
155 XMLPUBFUN void XMLCALL
156 		xmlSAX2Reference		(void *ctx,
157 						 const xmlChar *name);
158 XMLPUBFUN void XMLCALL
159 		xmlSAX2Characters		(void *ctx,
160 						 const xmlChar *ch,
161 						 int len);
162 XMLPUBFUN void XMLCALL
163 		xmlSAX2IgnorableWhitespace	(void *ctx,
164 						 const xmlChar *ch,
165 						 int len);
166 XMLPUBFUN void XMLCALL
167 		xmlSAX2ProcessingInstruction	(void *ctx,
168 						 const xmlChar *target,
169 						 const xmlChar *data);
170 XMLPUBFUN void XMLCALL
171 		xmlSAX2Comment			(void *ctx,
172 						 const xmlChar *value);
173 XMLPUBFUN void XMLCALL
174 		xmlSAX2CDataBlock		(void *ctx,
175 						 const xmlChar *value,
176 						 int len);
177 
178 #ifdef LIBXML_SAX1_ENABLED
179 XMLPUBFUN int XMLCALL
180 		xmlSAXDefaultVersion		(int version);
181 #endif /* LIBXML_SAX1_ENABLED */
182 
183 XMLPUBFUN int XMLCALL
184 		xmlSAXVersion			(xmlSAXHandler *hdlr,
185 						 int version);
186 XMLPUBFUN void XMLCALL
187 		xmlSAX2InitDefaultSAXHandler    (xmlSAXHandler *hdlr,
188 						 int warning);
189 #ifdef LIBXML_HTML_ENABLED
190 XMLPUBFUN void XMLCALL
191 		xmlSAX2InitHtmlDefaultSAXHandler(xmlSAXHandler *hdlr);
192 XMLPUBFUN void XMLCALL
193 		htmlDefaultSAXHandlerInit	(void);
194 #endif
195 #ifdef LIBXML_DOCB_ENABLED
196 XMLPUBFUN void XMLCALL
197 		xmlSAX2InitDocbDefaultSAXHandler(xmlSAXHandler *hdlr);
198 XMLPUBFUN void XMLCALL
199 		docbDefaultSAXHandlerInit	(void);
200 #endif
201 XMLPUBFUN void XMLCALL
202 		xmlDefaultSAXHandlerInit	(void);
203 #ifdef __cplusplus
204 }
205 #endif
206 #endif /* __XML_SAX2_H__ */
207