Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-09-17 09:17:40

0001 /**
0002  * @file
0003  *
0004  * @brief Implementation of XInclude 1.0
0005  *
0006  * API to process XML Inclusions.
0007  *
0008  * @copyright See Copyright for the status of this software.
0009  *
0010  * @author Daniel Veillard
0011  */
0012 
0013 #ifndef __XML_XINCLUDE_H__
0014 #define __XML_XINCLUDE_H__
0015 
0016 #include <libxml/xmlversion.h>
0017 #include <libxml/xmlerror.h>
0018 #include <libxml/tree.h>
0019 #include <libxml/parser.h>
0020 
0021 #ifdef LIBXML_XINCLUDE_ENABLED
0022 
0023 #ifdef __cplusplus
0024 extern "C" {
0025 #endif
0026 
0027 /**
0028  * Macro defining the Xinclude namespace: http://www.w3.org/2003/XInclude
0029  */
0030 #define XINCLUDE_NS (const xmlChar *) "http://www.w3.org/2003/XInclude"
0031 /**
0032  * Macro defining the draft Xinclude namespace: http://www.w3.org/2001/XInclude
0033  */
0034 #define XINCLUDE_OLD_NS (const xmlChar *) "http://www.w3.org/2001/XInclude"
0035 /**
0036  * Macro defining "include"
0037  */
0038 #define XINCLUDE_NODE (const xmlChar *) "include"
0039 /**
0040  * Macro defining "fallback"
0041  */
0042 #define XINCLUDE_FALLBACK (const xmlChar *) "fallback"
0043 /**
0044  * Macro defining "href"
0045  */
0046 #define XINCLUDE_HREF (const xmlChar *) "href"
0047 /**
0048  * Macro defining "parse"
0049  */
0050 #define XINCLUDE_PARSE (const xmlChar *) "parse"
0051 /**
0052  * Macro defining "xml"
0053  */
0054 #define XINCLUDE_PARSE_XML (const xmlChar *) "xml"
0055 /**
0056  * Macro defining "text"
0057  */
0058 #define XINCLUDE_PARSE_TEXT (const xmlChar *) "text"
0059 /**
0060  * Macro defining "encoding"
0061  */
0062 #define XINCLUDE_PARSE_ENCODING (const xmlChar *) "encoding"
0063 /**
0064  * Macro defining "xpointer"
0065  */
0066 #define XINCLUDE_PARSE_XPOINTER (const xmlChar *) "xpointer"
0067 
0068 /** XInclude context */
0069 typedef struct _xmlXIncludeCtxt xmlXIncludeCtxt;
0070 typedef xmlXIncludeCtxt *xmlXIncludeCtxtPtr;
0071 
0072 /*
0073  * standalone processing
0074  */
0075 XMLPUBFUN int
0076         xmlXIncludeProcess  (xmlDoc *doc);
0077 XMLPUBFUN int
0078         xmlXIncludeProcessFlags (xmlDoc *doc,
0079                      int flags);
0080 XMLPUBFUN int
0081         xmlXIncludeProcessFlagsData(xmlDoc *doc,
0082                      int flags,
0083                      void *data);
0084 XMLPUBFUN int
0085                 xmlXIncludeProcessTreeFlagsData(xmlNode *tree,
0086                                          int flags,
0087                                          void *data);
0088 XMLPUBFUN int
0089         xmlXIncludeProcessTree  (xmlNode *tree);
0090 XMLPUBFUN int
0091         xmlXIncludeProcessTreeFlags(xmlNode *tree,
0092                      int flags);
0093 /*
0094  * contextual processing
0095  */
0096 XMLPUBFUN xmlXIncludeCtxt *
0097         xmlXIncludeNewContext   (xmlDoc *doc);
0098 XMLPUBFUN int
0099         xmlXIncludeSetFlags (xmlXIncludeCtxt *ctxt,
0100                      int flags);
0101 XMLPUBFUN void
0102         xmlXIncludeSetErrorHandler(xmlXIncludeCtxt *ctxt,
0103                      xmlStructuredErrorFunc handler,
0104                      void *data);
0105 XMLPUBFUN void
0106         xmlXIncludeSetResourceLoader(xmlXIncludeCtxt *ctxt,
0107                      xmlResourceLoader loader,
0108                      void *data);
0109 XMLPUBFUN int
0110         xmlXIncludeGetLastError (xmlXIncludeCtxt *ctxt);
0111 XMLPUBFUN void
0112         xmlXIncludeFreeContext  (xmlXIncludeCtxt *ctxt);
0113 XMLPUBFUN int
0114         xmlXIncludeProcessNode  (xmlXIncludeCtxt *ctxt,
0115                      xmlNode *tree);
0116 #ifdef __cplusplus
0117 }
0118 #endif
0119 
0120 #endif /* LIBXML_XINCLUDE_ENABLED */
0121 
0122 #endif /* __XML_XINCLUDE_H__ */