blob: 20093ceb68536dda0f6b7e47c154fa821a0046f8 [file] [log] [blame]
Owen Taylor3473f882001-02-23 17:55:21 +00001/*
Daniel Veillardbe586972003-11-18 20:56:51 +00002 * Summary: Old SAX version 1 handler, deprecated
3 * Description: DEPRECATED set of SAX version 1 interfaces used to
4 * build the DOM tree.
Owen Taylor3473f882001-02-23 17:55:21 +00005 *
Daniel Veillardbe586972003-11-18 20:56:51 +00006 * Copy: See Copyright for the status of this software.
Owen Taylor3473f882001-02-23 17:55:21 +00007 *
Daniel Veillardbe586972003-11-18 20:56:51 +00008 * Author: Daniel Veillard
Owen Taylor3473f882001-02-23 17:55:21 +00009 */
10
11
12#ifndef __XML_SAX_H__
13#define __XML_SAX_H__
14
15#include <stdio.h>
16#include <stdlib.h>
Igor Zlatkovic76874e42003-08-25 09:05:12 +000017#include <libxml/xmlversion.h>
Owen Taylor3473f882001-02-23 17:55:21 +000018#include <libxml/parser.h>
19#include <libxml/xlink.h>
20
William M. Brack21e4ef22005-01-02 09:53:13 +000021#ifdef LIBXML_LEGACY_ENABLED
Daniel Veillarda2351322004-06-27 12:08:10 +000022
Owen Taylor3473f882001-02-23 17:55:21 +000023#ifdef __cplusplus
24extern "C" {
25#endif
Igor Zlatkovic76874e42003-08-25 09:05:12 +000026XMLPUBFUN const xmlChar * XMLCALL
27 getPublicId (void *ctx);
Daniel Veillardf8e3db02012-09-11 13:26:36 +080028XMLPUBFUN const xmlChar * XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +000029 getSystemId (void *ctx);
Daniel Veillardf8e3db02012-09-11 13:26:36 +080030XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +000031 setDocumentLocator (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +000032 xmlSAXLocatorPtr loc);
Daniel Veillardf8e3db02012-09-11 13:26:36 +080033
34XMLPUBFUN int XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +000035 getLineNumber (void *ctx);
Daniel Veillardf8e3db02012-09-11 13:26:36 +080036XMLPUBFUN int XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +000037 getColumnNumber (void *ctx);
Owen Taylor3473f882001-02-23 17:55:21 +000038
Daniel Veillardf8e3db02012-09-11 13:26:36 +080039XMLPUBFUN int XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +000040 isStandalone (void *ctx);
Daniel Veillardf8e3db02012-09-11 13:26:36 +080041XMLPUBFUN int XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +000042 hasInternalSubset (void *ctx);
Daniel Veillardf8e3db02012-09-11 13:26:36 +080043XMLPUBFUN int XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +000044 hasExternalSubset (void *ctx);
Owen Taylor3473f882001-02-23 17:55:21 +000045
Daniel Veillardf8e3db02012-09-11 13:26:36 +080046XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +000047 internalSubset (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +000048 const xmlChar *name,
49 const xmlChar *ExternalID,
50 const xmlChar *SystemID);
Daniel Veillardf8e3db02012-09-11 13:26:36 +080051XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +000052 externalSubset (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +000053 const xmlChar *name,
54 const xmlChar *ExternalID,
55 const xmlChar *SystemID);
Daniel Veillardf8e3db02012-09-11 13:26:36 +080056XMLPUBFUN xmlEntityPtr XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +000057 getEntity (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +000058 const xmlChar *name);
Daniel Veillardf8e3db02012-09-11 13:26:36 +080059XMLPUBFUN xmlEntityPtr XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +000060 getParameterEntity (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +000061 const xmlChar *name);
Daniel Veillardf8e3db02012-09-11 13:26:36 +080062XMLPUBFUN xmlParserInputPtr XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +000063 resolveEntity (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +000064 const xmlChar *publicId,
65 const xmlChar *systemId);
66
Daniel Veillardf8e3db02012-09-11 13:26:36 +080067XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +000068 entityDecl (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +000069 const xmlChar *name,
70 int type,
71 const xmlChar *publicId,
72 const xmlChar *systemId,
73 xmlChar *content);
Daniel Veillardf8e3db02012-09-11 13:26:36 +080074XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +000075 attributeDecl (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +000076 const xmlChar *elem,
Daniel Veillard5e2dace2001-07-18 19:30:27 +000077 const xmlChar *fullname,
Owen Taylor3473f882001-02-23 17:55:21 +000078 int type,
79 int def,
80 const xmlChar *defaultValue,
81 xmlEnumerationPtr tree);
Daniel Veillardf8e3db02012-09-11 13:26:36 +080082XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +000083 elementDecl (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +000084 const xmlChar *name,
85 int type,
86 xmlElementContentPtr content);
Daniel Veillardf8e3db02012-09-11 13:26:36 +080087XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +000088 notationDecl (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +000089 const xmlChar *name,
90 const xmlChar *publicId,
91 const xmlChar *systemId);
Daniel Veillardf8e3db02012-09-11 13:26:36 +080092XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +000093 unparsedEntityDecl (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +000094 const xmlChar *name,
95 const xmlChar *publicId,
96 const xmlChar *systemId,
97 const xmlChar *notationName);
98
Daniel Veillardf8e3db02012-09-11 13:26:36 +080099XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +0000100 startDocument (void *ctx);
Daniel Veillardf8e3db02012-09-11 13:26:36 +0800101XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +0000102 endDocument (void *ctx);
Daniel Veillardf8e3db02012-09-11 13:26:36 +0800103XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +0000104 attribute (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +0000105 const xmlChar *fullname,
106 const xmlChar *value);
Daniel Veillardf8e3db02012-09-11 13:26:36 +0800107XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +0000108 startElement (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +0000109 const xmlChar *fullname,
110 const xmlChar **atts);
Daniel Veillardf8e3db02012-09-11 13:26:36 +0800111XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +0000112 endElement (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +0000113 const xmlChar *name);
Daniel Veillardf8e3db02012-09-11 13:26:36 +0800114XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +0000115 reference (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +0000116 const xmlChar *name);
Daniel Veillardf8e3db02012-09-11 13:26:36 +0800117XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +0000118 characters (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +0000119 const xmlChar *ch,
120 int len);
Daniel Veillardf8e3db02012-09-11 13:26:36 +0800121XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +0000122 ignorableWhitespace (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +0000123 const xmlChar *ch,
124 int len);
Daniel Veillardf8e3db02012-09-11 13:26:36 +0800125XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +0000126 processingInstruction (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +0000127 const xmlChar *target,
128 const xmlChar *data);
Daniel Veillardf8e3db02012-09-11 13:26:36 +0800129XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +0000130 globalNamespace (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +0000131 const xmlChar *href,
132 const xmlChar *prefix);
Daniel Veillardf8e3db02012-09-11 13:26:36 +0800133XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +0000134 setNamespace (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +0000135 const xmlChar *name);
Daniel Veillardf8e3db02012-09-11 13:26:36 +0800136XMLPUBFUN xmlNsPtr XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +0000137 getNamespace (void *ctx);
Daniel Veillardf8e3db02012-09-11 13:26:36 +0800138XMLPUBFUN int XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +0000139 checkNamespace (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +0000140 xmlChar *nameSpace);
Daniel Veillardf8e3db02012-09-11 13:26:36 +0800141XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +0000142 namespaceDecl (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +0000143 const xmlChar *href,
144 const xmlChar *prefix);
Daniel Veillardf8e3db02012-09-11 13:26:36 +0800145XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +0000146 comment (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +0000147 const xmlChar *value);
Daniel Veillardf8e3db02012-09-11 13:26:36 +0800148XMLPUBFUN void XMLCALL
Igor Zlatkovic93f984a2003-08-25 10:34:41 +0000149 cdataBlock (void *ctx,
Owen Taylor3473f882001-02-23 17:55:21 +0000150 const xmlChar *value,
151 int len);
152
William M. Brack21e4ef22005-01-02 09:53:13 +0000153#ifdef LIBXML_SAX1_ENABLED
Daniel Veillardf8e3db02012-09-11 13:26:36 +0800154XMLPUBFUN void XMLCALL
Daniel Veillard092643b2003-09-25 14:29:29 +0000155 initxmlDefaultSAXHandler (xmlSAXHandlerV1 *hdlr,
Daniel Veillardd0463562001-10-13 09:15:48 +0000156 int warning);
157#ifdef LIBXML_HTML_ENABLED
Daniel Veillardf8e3db02012-09-11 13:26:36 +0800158XMLPUBFUN void XMLCALL
Daniel Veillard092643b2003-09-25 14:29:29 +0000159 inithtmlDefaultSAXHandler (xmlSAXHandlerV1 *hdlr);
Daniel Veillardd0463562001-10-13 09:15:48 +0000160#endif
161#ifdef LIBXML_DOCB_ENABLED
Daniel Veillardf8e3db02012-09-11 13:26:36 +0800162XMLPUBFUN void XMLCALL
Daniel Veillard092643b2003-09-25 14:29:29 +0000163 initdocbDefaultSAXHandler (xmlSAXHandlerV1 *hdlr);
Daniel Veillardd0463562001-10-13 09:15:48 +0000164#endif
William M. Brack21e4ef22005-01-02 09:53:13 +0000165#endif /* LIBXML_SAX1_ENABLED */
166
Owen Taylor3473f882001-02-23 17:55:21 +0000167#ifdef __cplusplus
168}
169#endif
Daniel Veillarda2351322004-06-27 12:08:10 +0000170
William M. Brack21e4ef22005-01-02 09:53:13 +0000171#endif /* LIBXML_LEGACY_ENABLED */
Daniel Veillarda2351322004-06-27 12:08:10 +0000172
Owen Taylor3473f882001-02-23 17:55:21 +0000173#endif /* __XML_SAX_H__ */