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__ */ 202