Annotation of embedaddon/libxml2/include/libxml/catalog.h, revision 1.1
1.1 ! misho 1: /**
! 2: * Summary: interfaces to the Catalog handling system
! 3: * Description: the catalog module implements the support for
! 4: * XML Catalogs and SGML catalogs
! 5: *
! 6: * SGML Open Technical Resolution TR9401:1997.
! 7: * http://www.jclark.com/sp/catalog.htm
! 8: *
! 9: * XML Catalogs Working Draft 06 August 2001
! 10: * http://www.oasis-open.org/committees/entity/spec-2001-08-06.html
! 11: *
! 12: * Copy: See Copyright for the status of this software.
! 13: *
! 14: * Author: Daniel Veillard
! 15: */
! 16:
! 17: #ifndef __XML_CATALOG_H__
! 18: #define __XML_CATALOG_H__
! 19:
! 20: #include <stdio.h>
! 21:
! 22: #include <libxml/xmlversion.h>
! 23: #include <libxml/xmlstring.h>
! 24: #include <libxml/tree.h>
! 25:
! 26: #ifdef LIBXML_CATALOG_ENABLED
! 27:
! 28: #ifdef __cplusplus
! 29: extern "C" {
! 30: #endif
! 31:
! 32: /**
! 33: * XML_CATALOGS_NAMESPACE:
! 34: *
! 35: * The namespace for the XML Catalogs elements.
! 36: */
! 37: #define XML_CATALOGS_NAMESPACE \
! 38: (const xmlChar *) "urn:oasis:names:tc:entity:xmlns:xml:catalog"
! 39: /**
! 40: * XML_CATALOG_PI:
! 41: *
! 42: * The specific XML Catalog Processing Instuction name.
! 43: */
! 44: #define XML_CATALOG_PI \
! 45: (const xmlChar *) "oasis-xml-catalog"
! 46:
! 47: /*
! 48: * The API is voluntarily limited to general cataloging.
! 49: */
! 50: typedef enum {
! 51: XML_CATA_PREFER_NONE = 0,
! 52: XML_CATA_PREFER_PUBLIC = 1,
! 53: XML_CATA_PREFER_SYSTEM
! 54: } xmlCatalogPrefer;
! 55:
! 56: typedef enum {
! 57: XML_CATA_ALLOW_NONE = 0,
! 58: XML_CATA_ALLOW_GLOBAL = 1,
! 59: XML_CATA_ALLOW_DOCUMENT = 2,
! 60: XML_CATA_ALLOW_ALL = 3
! 61: } xmlCatalogAllow;
! 62:
! 63: typedef struct _xmlCatalog xmlCatalog;
! 64: typedef xmlCatalog *xmlCatalogPtr;
! 65:
! 66: /*
! 67: * Operations on a given catalog.
! 68: */
! 69: XMLPUBFUN xmlCatalogPtr XMLCALL
! 70: xmlNewCatalog (int sgml);
! 71: XMLPUBFUN xmlCatalogPtr XMLCALL
! 72: xmlLoadACatalog (const char *filename);
! 73: XMLPUBFUN xmlCatalogPtr XMLCALL
! 74: xmlLoadSGMLSuperCatalog (const char *filename);
! 75: XMLPUBFUN int XMLCALL
! 76: xmlConvertSGMLCatalog (xmlCatalogPtr catal);
! 77: XMLPUBFUN int XMLCALL
! 78: xmlACatalogAdd (xmlCatalogPtr catal,
! 79: const xmlChar *type,
! 80: const xmlChar *orig,
! 81: const xmlChar *replace);
! 82: XMLPUBFUN int XMLCALL
! 83: xmlACatalogRemove (xmlCatalogPtr catal,
! 84: const xmlChar *value);
! 85: XMLPUBFUN xmlChar * XMLCALL
! 86: xmlACatalogResolve (xmlCatalogPtr catal,
! 87: const xmlChar *pubID,
! 88: const xmlChar *sysID);
! 89: XMLPUBFUN xmlChar * XMLCALL
! 90: xmlACatalogResolveSystem(xmlCatalogPtr catal,
! 91: const xmlChar *sysID);
! 92: XMLPUBFUN xmlChar * XMLCALL
! 93: xmlACatalogResolvePublic(xmlCatalogPtr catal,
! 94: const xmlChar *pubID);
! 95: XMLPUBFUN xmlChar * XMLCALL
! 96: xmlACatalogResolveURI (xmlCatalogPtr catal,
! 97: const xmlChar *URI);
! 98: #ifdef LIBXML_OUTPUT_ENABLED
! 99: XMLPUBFUN void XMLCALL
! 100: xmlACatalogDump (xmlCatalogPtr catal,
! 101: FILE *out);
! 102: #endif /* LIBXML_OUTPUT_ENABLED */
! 103: XMLPUBFUN void XMLCALL
! 104: xmlFreeCatalog (xmlCatalogPtr catal);
! 105: XMLPUBFUN int XMLCALL
! 106: xmlCatalogIsEmpty (xmlCatalogPtr catal);
! 107:
! 108: /*
! 109: * Global operations.
! 110: */
! 111: XMLPUBFUN void XMLCALL
! 112: xmlInitializeCatalog (void);
! 113: XMLPUBFUN int XMLCALL
! 114: xmlLoadCatalog (const char *filename);
! 115: XMLPUBFUN void XMLCALL
! 116: xmlLoadCatalogs (const char *paths);
! 117: XMLPUBFUN void XMLCALL
! 118: xmlCatalogCleanup (void);
! 119: #ifdef LIBXML_OUTPUT_ENABLED
! 120: XMLPUBFUN void XMLCALL
! 121: xmlCatalogDump (FILE *out);
! 122: #endif /* LIBXML_OUTPUT_ENABLED */
! 123: XMLPUBFUN xmlChar * XMLCALL
! 124: xmlCatalogResolve (const xmlChar *pubID,
! 125: const xmlChar *sysID);
! 126: XMLPUBFUN xmlChar * XMLCALL
! 127: xmlCatalogResolveSystem (const xmlChar *sysID);
! 128: XMLPUBFUN xmlChar * XMLCALL
! 129: xmlCatalogResolvePublic (const xmlChar *pubID);
! 130: XMLPUBFUN xmlChar * XMLCALL
! 131: xmlCatalogResolveURI (const xmlChar *URI);
! 132: XMLPUBFUN int XMLCALL
! 133: xmlCatalogAdd (const xmlChar *type,
! 134: const xmlChar *orig,
! 135: const xmlChar *replace);
! 136: XMLPUBFUN int XMLCALL
! 137: xmlCatalogRemove (const xmlChar *value);
! 138: XMLPUBFUN xmlDocPtr XMLCALL
! 139: xmlParseCatalogFile (const char *filename);
! 140: XMLPUBFUN int XMLCALL
! 141: xmlCatalogConvert (void);
! 142:
! 143: /*
! 144: * Strictly minimal interfaces for per-document catalogs used
! 145: * by the parser.
! 146: */
! 147: XMLPUBFUN void XMLCALL
! 148: xmlCatalogFreeLocal (void *catalogs);
! 149: XMLPUBFUN void * XMLCALL
! 150: xmlCatalogAddLocal (void *catalogs,
! 151: const xmlChar *URL);
! 152: XMLPUBFUN xmlChar * XMLCALL
! 153: xmlCatalogLocalResolve (void *catalogs,
! 154: const xmlChar *pubID,
! 155: const xmlChar *sysID);
! 156: XMLPUBFUN xmlChar * XMLCALL
! 157: xmlCatalogLocalResolveURI(void *catalogs,
! 158: const xmlChar *URI);
! 159: /*
! 160: * Preference settings.
! 161: */
! 162: XMLPUBFUN int XMLCALL
! 163: xmlCatalogSetDebug (int level);
! 164: XMLPUBFUN xmlCatalogPrefer XMLCALL
! 165: xmlCatalogSetDefaultPrefer(xmlCatalogPrefer prefer);
! 166: XMLPUBFUN void XMLCALL
! 167: xmlCatalogSetDefaults (xmlCatalogAllow allow);
! 168: XMLPUBFUN xmlCatalogAllow XMLCALL
! 169: xmlCatalogGetDefaults (void);
! 170:
! 171:
! 172: /* DEPRECATED interfaces */
! 173: XMLPUBFUN const xmlChar * XMLCALL
! 174: xmlCatalogGetSystem (const xmlChar *sysID);
! 175: XMLPUBFUN const xmlChar * XMLCALL
! 176: xmlCatalogGetPublic (const xmlChar *pubID);
! 177:
! 178: #ifdef __cplusplus
! 179: }
! 180: #endif
! 181: #endif /* LIBXML_CATALOG_ENABLED */
! 182: #endif /* __XML_CATALOG_H__ */
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>