Annotation of embedaddon/libxml2/include/libxml/catalog.h, revision 1.1.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>