00001
00015 #ifndef __XML_CATALOG_H__
00016 #define __XML_CATALOG_H__
00017
00018 #include <stdio.h>
00019
00020 #include <libxml/xmlversion.h>
00021
00022 #ifdef LIBXML_CATALOG_ENABLED
00023
00024 #ifdef __cplusplus
00025 extern "C" {
00026 #endif
00027
00033 #define XML_CATALOGS_NAMESPACE \
00034 (const xmlChar *) "urn:oasis:names:tc:entity:xmlns:xml:catalog"
00035
00040 #define XML_CATALOG_PI \
00041 (const xmlChar *) "oasis-xml-catalog"
00042
00043
00044
00045
00046 typedef enum {
00047 XML_CATA_PREFER_NONE = 0,
00048 XML_CATA_PREFER_PUBLIC = 1,
00049 XML_CATA_PREFER_SYSTEM
00050 } xmlCatalogPrefer;
00051
00052 typedef enum {
00053 XML_CATA_ALLOW_NONE = 0,
00054 XML_CATA_ALLOW_GLOBAL = 1,
00055 XML_CATA_ALLOW_DOCUMENT = 2,
00056 XML_CATA_ALLOW_ALL = 3
00057 } xmlCatalogAllow;
00058
00059 typedef struct _xmlCatalog xmlCatalog;
00060 typedef xmlCatalog *xmlCatalogPtr;
00061
00062
00063
00064
00065 XMLPUBFUN xmlCatalogPtr XMLCALL
00066 xmlNewCatalog (int sgml);
00067 XMLPUBFUN xmlCatalogPtr XMLCALL
00068 xmlLoadACatalog (const char *filename);
00069 XMLPUBFUN xmlCatalogPtr XMLCALL
00070 xmlLoadSGMLSuperCatalog (const char *filename);
00071 XMLPUBFUN int XMLCALL
00072 xmlConvertSGMLCatalog (xmlCatalogPtr catal);
00073 XMLPUBFUN int XMLCALL
00074 xmlACatalogAdd (xmlCatalogPtr catal,
00075 const xmlChar *type,
00076 const xmlChar *orig,
00077 const xmlChar *replace);
00078 XMLPUBFUN int XMLCALL
00079 xmlACatalogRemove (xmlCatalogPtr catal,
00080 const xmlChar *value);
00081 XMLPUBFUN xmlChar * XMLCALL
00082 xmlACatalogResolve (xmlCatalogPtr catal,
00083 const xmlChar *pubID,
00084 const xmlChar *sysID);
00085 XMLPUBFUN xmlChar * XMLCALL
00086 xmlACatalogResolveSystem(xmlCatalogPtr catal,
00087 const xmlChar *sysID);
00088 XMLPUBFUN xmlChar * XMLCALL
00089 xmlACatalogResolvePublic(xmlCatalogPtr catal,
00090 const xmlChar *pubID);
00091 XMLPUBFUN xmlChar * XMLCALL
00092 xmlACatalogResolveURI (xmlCatalogPtr catal,
00093 const xmlChar *URI);
00094 #ifdef LIBXML_OUTPUT_ENABLED
00095 XMLPUBFUN void XMLCALL
00096 xmlACatalogDump (xmlCatalogPtr catal,
00097 FILE *out);
00098 #endif
00099 XMLPUBFUN void XMLCALL
00100 xmlFreeCatalog (xmlCatalogPtr catal);
00101 XMLPUBFUN int XMLCALL
00102 xmlCatalogIsEmpty (xmlCatalogPtr catal);
00103
00104
00105
00106
00107 XMLPUBFUN void XMLCALL
00108 xmlInitializeCatalog (void);
00109 XMLPUBFUN int XMLCALL
00110 xmlLoadCatalog (const char *filename);
00111 XMLPUBFUN void XMLCALL
00112 xmlLoadCatalogs (const char *paths);
00113 XMLPUBFUN void XMLCALL
00114 xmlCatalogCleanup (void);
00115 #ifdef LIBXML_OUTPUT_ENABLED
00116 XMLPUBFUN void XMLCALL
00117 xmlCatalogDump (FILE *out);
00118 #endif
00119 XMLPUBFUN xmlChar * XMLCALL
00120 xmlCatalogResolve (const xmlChar *pubID,
00121 const xmlChar *sysID);
00122 XMLPUBFUN xmlChar * XMLCALL
00123 xmlCatalogResolveSystem (const xmlChar *sysID);
00124 XMLPUBFUN xmlChar * XMLCALL
00125 xmlCatalogResolvePublic (const xmlChar *pubID);
00126 XMLPUBFUN xmlChar * XMLCALL
00127 xmlCatalogResolveURI (const xmlChar *URI);
00128 XMLPUBFUN int XMLCALL
00129 xmlCatalogAdd (const xmlChar *type,
00130 const xmlChar *orig,
00131 const xmlChar *replace);
00132 XMLPUBFUN int XMLCALL
00133 xmlCatalogRemove (const xmlChar *value);
00134 XMLPUBFUN xmlDocPtr XMLCALL
00135 xmlParseCatalogFile (const char *filename);
00136 XMLPUBFUN int XMLCALL
00137 xmlCatalogConvert (void);
00138
00139
00140
00141
00142
00143 XMLPUBFUN void XMLCALL
00144 xmlCatalogFreeLocal (void *catalogs);
00145 XMLPUBFUN void * XMLCALL
00146 xmlCatalogAddLocal (void *catalogs,
00147 const xmlChar *URL);
00148 XMLPUBFUN xmlChar * XMLCALL
00149 xmlCatalogLocalResolve (void *catalogs,
00150 const xmlChar *pubID,
00151 const xmlChar *sysID);
00152 XMLPUBFUN xmlChar * XMLCALL
00153 xmlCatalogLocalResolveURI(void *catalogs,
00154 const xmlChar *URI);
00155
00156
00157
00158 XMLPUBFUN int XMLCALL
00159 xmlCatalogSetDebug (int level);
00160 XMLPUBFUN xmlCatalogPrefer XMLCALL
00161 xmlCatalogSetDefaultPrefer(xmlCatalogPrefer prefer);
00162 XMLPUBFUN void XMLCALL
00163 xmlCatalogSetDefaults (xmlCatalogAllow allow);
00164 XMLPUBFUN xmlCatalogAllow XMLCALL
00165 xmlCatalogGetDefaults (void);
00166
00167
00168
00169 XMLPUBFUN const xmlChar * XMLCALL
00170 xmlCatalogGetSystem (const xmlChar *sysID);
00171 XMLPUBFUN const xmlChar * XMLCALL
00172 xmlCatalogGetPublic (const xmlChar *pubID);
00173
00174 #ifdef __cplusplus
00175 }
00176 #endif
00177 #endif
00178 #endif
00179