00001 /* 00002 * xinclude.c : API to handle XInclude processing 00003 * 00004 * World Wide Web Consortium Working Draft 26 October 2000 00005 * http://www.w3.org/TR/2000/WD-xinclude-20001026 00006 * 00007 * See Copyright for the status of this software. 00008 * 00009 * daniel@veillard.com 00010 */ 00011 00012 #ifndef __XML_XINCLUDE_H__ 00013 #define __XML_XINCLUDE_H__ 00014 00015 #include <libxml/xmlversion.h> 00016 #include <libxml/tree.h> 00017 00018 #ifdef __cplusplus 00019 extern "C" { 00020 #endif 00021 00022 #define XINCLUDE_NS (const xmlChar *) "http://www.w3.org/2001/XInclude" 00023 #define XINCLUDE_NODE (const xmlChar *) "include" 00024 #define XINCLUDE_FALLBACK (const xmlChar *) "fallback" 00025 #define XINCLUDE_HREF (const xmlChar *) "href" 00026 #define XINCLUDE_PARSE (const xmlChar *) "parse" 00027 #define XINCLUDE_PARSE_XML (const xmlChar *) "xml" 00028 #define XINCLUDE_PARSE_TEXT (const xmlChar *) "text" 00029 #define XINCLUDE_PARSE_ENCODING (const xmlChar *) "encoding" 00030 00031 typedef struct _xmlXIncludeCtxt xmlXIncludeCtxt; 00032 typedef xmlXIncludeCtxt *xmlXIncludeCtxtPtr; 00033 00034 /* 00035 * standalone processing 00036 */ 00037 XMLPUBFUN int XMLCALL 00038 xmlXIncludeProcess (xmlDocPtr doc); 00039 XMLPUBFUN int XMLCALL 00040 xmlXIncludeProcessTree (xmlNodePtr tree); 00041 /* 00042 * contextual processing 00043 */ 00044 XMLPUBFUN xmlXIncludeCtxtPtr XMLCALL 00045 xmlXIncludeNewContext (xmlDocPtr doc); 00046 XMLPUBFUN void XMLCALL 00047 xmlXIncludeFreeContext (xmlXIncludeCtxtPtr ctxt); 00048 XMLPUBFUN int XMLCALL 00049 xmlXIncludeProcessNode (xmlXIncludeCtxtPtr ctxt, 00050 xmlNodePtr tree); 00051 #ifdef __cplusplus 00052 } 00053 #endif 00054 #endif /* __XML_XINCLUDE_H__ */ 00055