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: Old SAX version 1 handler, deprecated
36 * Description: DEPRECATED set of SAX version 1 interfaces used to
37 * build the DOM tree.
38 */
39
40 #ifndef __XML_SAX_H__
41 #define __XML_SAX_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 LIBXML_LEGACY_ENABLED
50
51 #ifdef __cplusplus
52 extern "C" {
53 #endif
54 XMLPUBFUN const xmlChar * XMLCALL
55 getPublicId (void *ctx);
56 XMLPUBFUN const xmlChar * XMLCALL
57 getSystemId (void *ctx);
58 XMLPUBFUN void XMLCALL
59 setDocumentLocator (void *ctx,
60 xmlSAXLocatorPtr loc);
61
62 XMLPUBFUN int XMLCALL
63 getLineNumber (void *ctx);
64 XMLPUBFUN int XMLCALL
65 getColumnNumber (void *ctx);
66
67 XMLPUBFUN int XMLCALL
68 isStandalone (void *ctx);
69 XMLPUBFUN int XMLCALL
70 hasInternalSubset (void *ctx);
71 XMLPUBFUN int XMLCALL
72 hasExternalSubset (void *ctx);
73
74 XMLPUBFUN void XMLCALL
75 internalSubset (void *ctx,
76 const xmlChar *name,
77 const xmlChar *ExternalID,
78 const xmlChar *SystemID);
79 XMLPUBFUN void XMLCALL
80 externalSubset (void *ctx,
81 const xmlChar *name,
82 const xmlChar *ExternalID,
83 const xmlChar *SystemID);
84 XMLPUBFUN xmlEntityPtr XMLCALL
85 getEntity (void *ctx,
86 const xmlChar *name);
87 XMLPUBFUN xmlEntityPtr XMLCALL
88 getParameterEntity (void *ctx,
89 const xmlChar *name);
90 XMLPUBFUN xmlParserInputPtr XMLCALL
91 resolveEntity (void *ctx,
92 const xmlChar *publicId,
93 const xmlChar *systemId);
94
95 XMLPUBFUN void XMLCALL
96 entityDecl (void *ctx,
97 const xmlChar *name,
98 int type,
99 const xmlChar *publicId,
100 const xmlChar *systemId,
101 xmlChar *content);
102 XMLPUBFUN void XMLCALL
103 attributeDecl (void *ctx,
104 const xmlChar *elem,
105 const xmlChar *fullname,
106 int type,
107 int def,
108 const xmlChar *defaultValue,
109 xmlEnumerationPtr tree);
110 XMLPUBFUN void XMLCALL
111 elementDecl (void *ctx,
112 const xmlChar *name,
113 int type,
114 xmlElementContentPtr content);
115 XMLPUBFUN void XMLCALL
116 notationDecl (void *ctx,
117 const xmlChar *name,
118 const xmlChar *publicId,
119 const xmlChar *systemId);
120 XMLPUBFUN void XMLCALL
121 unparsedEntityDecl (void *ctx,
122 const xmlChar *name,
123 const xmlChar *publicId,
124 const xmlChar *systemId,
125 const xmlChar *notationName);
126
127 XMLPUBFUN void XMLCALL
128 startDocument (void *ctx);
129 XMLPUBFUN void XMLCALL
130 endDocument (void *ctx);
131 XMLPUBFUN void XMLCALL
132 attribute (void *ctx,
133 const xmlChar *fullname,
134 const xmlChar *value);
135 XMLPUBFUN void XMLCALL
136 startElement (void *ctx,
137 const xmlChar *fullname,
138 const xmlChar **atts);
139 XMLPUBFUN void XMLCALL
140 endElement (void *ctx,
141 const xmlChar *name);
142 XMLPUBFUN void XMLCALL
143 reference (void *ctx,
144 const xmlChar *name);
145 XMLPUBFUN void XMLCALL
146 characters (void *ctx,
147 const xmlChar *ch,
148 int len);
149 XMLPUBFUN void XMLCALL
150 ignorableWhitespace (void *ctx,
151 const xmlChar *ch,
152 int len);
153 XMLPUBFUN void XMLCALL
154 processingInstruction (void *ctx,
155 const xmlChar *target,
156 const xmlChar *data);
157 XMLPUBFUN void XMLCALL
158 globalNamespace (void *ctx,
159 const xmlChar *href,
160 const xmlChar *prefix);
161 XMLPUBFUN void XMLCALL
162 setNamespace (void *ctx,
163 const xmlChar *name);
164 XMLPUBFUN xmlNsPtr XMLCALL
165 getNamespace (void *ctx);
166 XMLPUBFUN int XMLCALL
167 checkNamespace (void *ctx,
168 xmlChar *nameSpace);
169 XMLPUBFUN void XMLCALL
170 namespaceDecl (void *ctx,
171 const xmlChar *href,
172 const xmlChar *prefix);
173 XMLPUBFUN void XMLCALL
174 comment (void *ctx,
175 const xmlChar *value);
176 XMLPUBFUN void XMLCALL
177 cdataBlock (void *ctx,
178 const xmlChar *value,
179 int len);
180
181 #ifdef LIBXML_SAX1_ENABLED
182 XMLPUBFUN void XMLCALL
183 initxmlDefaultSAXHandler (xmlSAXHandlerV1 *hdlr,
184 int warning);
185 #ifdef LIBXML_HTML_ENABLED
186 XMLPUBFUN void XMLCALL
187 inithtmlDefaultSAXHandler (xmlSAXHandlerV1 *hdlr);
188 #endif
189 #ifdef LIBXML_DOCB_ENABLED
190 XMLPUBFUN void XMLCALL
191 initdocbDefaultSAXHandler (xmlSAXHandlerV1 *hdlr);
192 #endif
193 #endif /* LIBXML_SAX1_ENABLED */
194
195 #ifdef __cplusplus
196 }
197 #endif
198
199 #endif /* LIBXML_LEGACY_ENABLED */
200
201 #endif /* __XML_SAX_H__ */