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
  22 extern "C" {
  23 #endif
  24 XMLPUBFUN const xmlChar * XMLCALL
  25         xmlSAX2GetPublicId      (void *ctx);
  26 XMLPUBFUN const xmlChar * XMLCALL
  27         xmlSAX2GetSystemId      (void *ctx);
  28 XMLPUBFUN void XMLCALL
  29         xmlSAX2SetDocumentLocator   (void *ctx,
  30                          xmlSAXLocatorPtr loc);
  31 
  32 XMLPUBFUN int XMLCALL
  33         xmlSAX2GetLineNumber        (void *ctx);
  34 XMLPUBFUN int XMLCALL
  35         xmlSAX2GetColumnNumber      (void *ctx);
  36 
  37 XMLPUBFUN int XMLCALL
  38         xmlSAX2IsStandalone     (void *ctx);
  39 XMLPUBFUN int XMLCALL
  40         xmlSAX2HasInternalSubset    (void *ctx);
  41 XMLPUBFUN int XMLCALL
  42         xmlSAX2HasExternalSubset    (void *ctx);
  43 
  44 XMLPUBFUN void XMLCALL
  45         xmlSAX2InternalSubset       (void *ctx,
  46                          const xmlChar *name,
  47                          const xmlChar *ExternalID,
  48                          const xmlChar *SystemID);
  49 XMLPUBFUN void XMLCALL
  50         xmlSAX2ExternalSubset       (void *ctx,
  51                          const xmlChar *name,
  52                          const xmlChar *ExternalID,
  53                          const xmlChar *SystemID);
  54 XMLPUBFUN xmlEntityPtr XMLCALL
  55         xmlSAX2GetEntity        (void *ctx,
  56                          const xmlChar *name);
  57 XMLPUBFUN xmlEntityPtr XMLCALL
  58         xmlSAX2GetParameterEntity   (void *ctx,
  59                          const xmlChar *name);
  60 XMLPUBFUN xmlParserInputPtr XMLCALL
  61         xmlSAX2ResolveEntity        (void *ctx,
  62                          const xmlChar *publicId,
  63                          const xmlChar *systemId);
  64 
  65 XMLPUBFUN void XMLCALL
  66         xmlSAX2EntityDecl       (void *ctx,
  67                          const xmlChar *name,
  68                          int type,
  69                          const xmlChar *publicId,
  70                          const xmlChar *systemId,
  71                          xmlChar *content);
  72 XMLPUBFUN 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);
  80 XMLPUBFUN void XMLCALL
  81         xmlSAX2ElementDecl      (void *ctx,
  82                          const xmlChar *name,
  83                          int type,
  84                          xmlElementContentPtr content);
  85 XMLPUBFUN void XMLCALL
  86         xmlSAX2NotationDecl     (void *ctx,
  87                          const xmlChar *name,
  88                          const xmlChar *publicId,
  89                          const xmlChar *systemId);
  90 XMLPUBFUN void XMLCALL
  91         xmlSAX2UnparsedEntityDecl   (void *ctx,
  92                          const xmlChar *name,
  93                          const xmlChar *publicId,
  94                          const xmlChar *systemId,
  95                          const xmlChar *notationName);
  96 
  97 XMLPUBFUN void XMLCALL
  98         xmlSAX2StartDocument        (void *ctx);
  99 XMLPUBFUN void XMLCALL
 100         xmlSAX2EndDocument      (void *ctx);
 101 #if defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED)
 102 XMLPUBFUN void XMLCALL
 103         xmlSAX2StartElement     (void *ctx,
 104                          const xmlChar *fullname,
 105                          const xmlChar **atts);
 106 XMLPUBFUN void XMLCALL
 107         xmlSAX2EndElement       (void *ctx,
 108                          const xmlChar *name);
 109 #endif /* LIBXML_SAX1_ENABLED or LIBXML_HTML_ENABLED */
 110 XMLPUBFUN 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);
 120 XMLPUBFUN void XMLCALL
 121         xmlSAX2EndElementNs     (void *ctx,
 122                          const xmlChar *localname,
 123                          const xmlChar *prefix,
 124                          const xmlChar *URI);
 125 XMLPUBFUN void XMLCALL
 126         xmlSAX2Reference        (void *ctx,
 127                          const xmlChar *name);
 128 XMLPUBFUN void XMLCALL
 129         xmlSAX2Characters       (void *ctx,
 130                          const xmlChar *ch,
 131                          int len);
 132 XMLPUBFUN void XMLCALL
 133         xmlSAX2IgnorableWhitespace  (void *ctx,
 134                          const xmlChar *ch,
 135                          int len);
 136 XMLPUBFUN void XMLCALL
 137         xmlSAX2ProcessingInstruction    (void *ctx,
 138                          const xmlChar *target,
 139                          const xmlChar *data);
 140 XMLPUBFUN void XMLCALL
 141         xmlSAX2Comment          (void *ctx,
 142                          const xmlChar *value);
 143 XMLPUBFUN void XMLCALL
 144         xmlSAX2CDataBlock       (void *ctx,
 145                          const xmlChar *value,
 146                          int len);
 147 
 148 #ifdef LIBXML_SAX1_ENABLED
 149 XMLPUBFUN int XMLCALL
 150         xmlSAXDefaultVersion        (int version);
 151 #endif /* LIBXML_SAX1_ENABLED */
 152 
 153 XMLPUBFUN int XMLCALL
 154         xmlSAXVersion           (xmlSAXHandler *hdlr,
 155                          int version);
 156 XMLPUBFUN void XMLCALL
 157         xmlSAX2InitDefaultSAXHandler    (xmlSAXHandler *hdlr,
 158                          int warning);
 159 #ifdef LIBXML_HTML_ENABLED
 160 XMLPUBFUN void XMLCALL
 161         xmlSAX2InitHtmlDefaultSAXHandler(xmlSAXHandler *hdlr);
 162 XMLPUBFUN void XMLCALL
 163         htmlDefaultSAXHandlerInit   (void);
 164 #endif
 165 #ifdef LIBXML_DOCB_ENABLED
 166 XMLPUBFUN void XMLCALL
 167         xmlSAX2InitDocbDefaultSAXHandler(xmlSAXHandler *hdlr);
 168 XMLPUBFUN void XMLCALL
 169         docbDefaultSAXHandlerInit   (void);
 170 #endif
 171 XMLPUBFUN void XMLCALL
 172         xmlDefaultSAXHandlerInit    (void);
 173 #ifdef __cplusplus
 174 }
 175 #endif
 176 #endif /* __XML_SAX2_H__ */