/*1* Summary: implementation of XInclude2* Description: API to handle XInclude processing,3* implements the4* World Wide Web Consortium Last Call Working Draft 10 November 20035* http://www.w3.org/TR/2003/WD-xinclude-200311106*7* Copy: See Copyright for the status of this software.8*9* Author: Daniel Veillard10*/1112#ifndef __XML_XINCLUDE_H__13#define __XML_XINCLUDE_H__1415#include <libxml/xmlversion.h>16#include <libxml/tree.h>1718#ifdef LIBXML_XINCLUDE_ENABLED1920#ifdef __cplusplus21extern "C" {22#endif2324/**25* XINCLUDE_NS:26*27* Macro defining the Xinclude namespace: http://www.w3.org/2003/XInclude28*/29#define XINCLUDE_NS (const xmlChar *) "http://www.w3.org/2003/XInclude"30/**31* XINCLUDE_OLD_NS:32*33* Macro defining the draft Xinclude namespace: http://www.w3.org/2001/XInclude34*/35#define XINCLUDE_OLD_NS (const xmlChar *) "http://www.w3.org/2001/XInclude"36/**37* XINCLUDE_NODE:38*39* Macro defining "include"40*/41#define XINCLUDE_NODE (const xmlChar *) "include"42/**43* XINCLUDE_FALLBACK:44*45* Macro defining "fallback"46*/47#define XINCLUDE_FALLBACK (const xmlChar *) "fallback"48/**49* XINCLUDE_HREF:50*51* Macro defining "href"52*/53#define XINCLUDE_HREF (const xmlChar *) "href"54/**55* XINCLUDE_PARSE:56*57* Macro defining "parse"58*/59#define XINCLUDE_PARSE (const xmlChar *) "parse"60/**61* XINCLUDE_PARSE_XML:62*63* Macro defining "xml"64*/65#define XINCLUDE_PARSE_XML (const xmlChar *) "xml"66/**67* XINCLUDE_PARSE_TEXT:68*69* Macro defining "text"70*/71#define XINCLUDE_PARSE_TEXT (const xmlChar *) "text"72/**73* XINCLUDE_PARSE_ENCODING:74*75* Macro defining "encoding"76*/77#define XINCLUDE_PARSE_ENCODING (const xmlChar *) "encoding"78/**79* XINCLUDE_PARSE_XPOINTER:80*81* Macro defining "xpointer"82*/83#define XINCLUDE_PARSE_XPOINTER (const xmlChar *) "xpointer"8485typedef struct _xmlXIncludeCtxt xmlXIncludeCtxt;86typedef xmlXIncludeCtxt *xmlXIncludeCtxtPtr;8788/*89* standalone processing90*/91XMLPUBFUN int92xmlXIncludeProcess (xmlDocPtr doc);93XMLPUBFUN int94xmlXIncludeProcessFlags (xmlDocPtr doc,95int flags);96XMLPUBFUN int97xmlXIncludeProcessFlagsData(xmlDocPtr doc,98int flags,99void *data);100XMLPUBFUN int101xmlXIncludeProcessTreeFlagsData(xmlNodePtr tree,102int flags,103void *data);104XMLPUBFUN int105xmlXIncludeProcessTree (xmlNodePtr tree);106XMLPUBFUN int107xmlXIncludeProcessTreeFlags(xmlNodePtr tree,108int flags);109/*110* contextual processing111*/112XMLPUBFUN xmlXIncludeCtxtPtr113xmlXIncludeNewContext (xmlDocPtr doc);114XMLPUBFUN int115xmlXIncludeSetFlags (xmlXIncludeCtxtPtr ctxt,116int flags);117XMLPUBFUN void118xmlXIncludeFreeContext (xmlXIncludeCtxtPtr ctxt);119XMLPUBFUN int120xmlXIncludeProcessNode (xmlXIncludeCtxtPtr ctxt,121xmlNodePtr tree);122#ifdef __cplusplus123}124#endif125126#endif /* LIBXML_XINCLUDE_ENABLED */127128#endif /* __XML_XINCLUDE_H__ */129130131