  
    
    
    
    
    
    
    
  
  
    
      
        
          
libxml2-c14n.html            
Prev          
        
        
          
general.html            
Up          
        
        
          
index.html            
Home          
        
        
          
libxml2-chvalid.html            
Next          
        
        
libxml2 Reference Manual      
    
    
      
catalog    
    
catalog - interfaces to the Catalog handling system
    
the catalog module implements the support for XML Catalogs and SGML catalogs 
    
Author(s): Daniel Veillard 
    
      
Synopsis
      
#define #XML_CATALOG_PIXML_CATALOG_PI ;
#define 
#XML_CATALOGS_NAMESPACEXML_CATALOGS_NAMESPACE ;
typedef enum 
#xmlCatalogAllowxmlCatalogAllow ;
typedef enum 
#xmlCatalogPreferxmlCatalogPrefer ;
typedef struct _xmlCatalog 
#xmlCatalogxmlCatalog ;
typedef 
libxml2-catalog.html#xmlCatalogxmlCatalog  * #xmlCatalogPtrxmlCatalogPtr ;
void	
#xmlFreeCatalogxmlFreeCatalog 			( libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr  catal);
void	
#xmlLoadCatalogsxmlLoadCatalogs 			(const char * pathss);
libxml2-xmlstring.html#xmlCharxmlChar  *	#xmlCatalogLocalResolvexmlCatalogLocalResolve 	(void * catalogs, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * pubID, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * sysID);
int	
#xmlACatalogAddxmlACatalogAdd 			( libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr  catal, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * type, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * orig, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * replace);
libxml2-xmlstring.html#xmlCharxmlChar  *	#xmlACatalogResolvePublicxmlACatalogResolvePublic 	( libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr  catal, 						 const libxml2-xmlstring.html#xmlCharxmlChar  * pubID);
libxml2-catalog.html#xmlCatalogAllowxmlCatalogAllow 	#xmlCatalogGetDefaultsxmlCatalogGetDefaults 	(void);
int	
#xmlACatalogRemovexmlACatalogRemove 		( libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr  catal, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * value);
libxml2-catalog.html#xmlCatalogPreferxmlCatalogPrefer 	#xmlCatalogSetDefaultPreferxmlCatalogSetDefaultPrefer 	( libxml2-catalog.html#xmlCatalogPreferxmlCatalogPrefer  prefer);
libxml2-xmlstring.html#xmlCharxmlChar  *	#xmlACatalogResolveURIxmlACatalogResolveURI 	( libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr  catal, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * URI);
int	
#xmlCatalogAddxmlCatalogAdd 			(const libxml2-xmlstring.html#xmlCharxmlChar  * type, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * orig, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * replace);
libxml2-xmlstring.html#xmlCharxmlChar  *	#xmlCatalogResolvePublicxmlCatalogResolvePublic 	(const libxml2-xmlstring.html#xmlCharxmlChar  * pubID);
const 
libxml2-xmlstring.html#xmlCharxmlChar  *	#xmlCatalogGetSystemxmlCatalogGetSystem 	(const libxml2-xmlstring.html#xmlCharxmlChar  * sysID);
void	
#xmlInitializeCatalogxmlInitializeCatalog 		(void);
int	
#xmlLoadCatalogxmlLoadCatalog 			(const char * filename);
int	
#xmlCatalogRemovexmlCatalogRemove 		(const libxml2-xmlstring.html#xmlCharxmlChar  * value);
int	
#xmlCatalogIsEmptyxmlCatalogIsEmpty 		( libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr  catal);
void	
#xmlACatalogDumpxmlACatalogDump 			( libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr  catal, 					 FILE * out);
void	
#xmlCatalogFreeLocalxmlCatalogFreeLocal 		(void * catalogs);
libxml2-xmlstring.html#xmlCharxmlChar  *	#xmlACatalogResolvexmlACatalogResolve 	( libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr  catal, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * pubID, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * sysID);
libxml2-xmlstring.html#xmlCharxmlChar  *	#xmlCatalogResolveSystemxmlCatalogResolveSystem 	(const libxml2-xmlstring.html#xmlCharxmlChar  * sysID);
libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr 	#xmlLoadSGMLSuperCatalogxmlLoadSGMLSuperCatalog 	(const char * filename);
int	
#xmlCatalogConvertxmlCatalogConvert 		(void);
const 
libxml2-xmlstring.html#xmlCharxmlChar  *	#xmlCatalogGetPublicxmlCatalogGetPublic 	(const libxml2-xmlstring.html#xmlCharxmlChar  * pubID);
libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr 	#xmlLoadACatalogxmlLoadACatalog 		(const char * filename);
libxml2-xmlstring.html#xmlCharxmlChar  *	#xmlACatalogResolveSystemxmlACatalogResolveSystem 	( libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr  catal, 						 const libxml2-xmlstring.html#xmlCharxmlChar  * sysID);
libxml2-xmlstring.html#xmlCharxmlChar  *	#xmlCatalogLocalResolveURIxmlCatalogLocalResolveURI 	(void * catalogs, 						 const libxml2-xmlstring.html#xmlCharxmlChar  * URI);
int	
#xmlConvertSGMLCatalogxmlConvertSGMLCatalog 		( libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr  catal);
void *	
#xmlCatalogAddLocalxmlCatalogAddLocal 		(void * catalogs, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * URL);
libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr 	#xmlNewCatalogxmlNewCatalog 		(int sgml);
libxml2-tree.html#xmlDocPtrxmlDocPtr 	#xmlParseCatalogFilexmlParseCatalogFile 	(const char * filename);
int	
#xmlCatalogSetDebugxmlCatalogSetDebug 		(int level);
libxml2-xmlstring.html#xmlCharxmlChar  *	#xmlCatalogResolvexmlCatalogResolve 	(const libxml2-xmlstring.html#xmlCharxmlChar  * pubID, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * sysID);
void	
#xmlCatalogSetDefaultsxmlCatalogSetDefaults 		( libxml2-catalog.html#xmlCatalogAllowxmlCatalogAllow  allow);
void	
#xmlCatalogDumpxmlCatalogDump 			(FILE * out);
void	
#xmlCatalogCleanupxmlCatalogCleanup 		(void);
libxml2-xmlstring.html#xmlCharxmlChar  *	#xmlCatalogResolveURIxmlCatalogResolveURI 	(const libxml2-xmlstring.html#xmlCharxmlChar  * URI);
    
    
      
Description
    
    
      
Details
      
        
Macro XML_CATALOGS_NAMESPACE
#define #XML_CATALOGS_NAMESPACEXML_CATALOGS_NAMESPACE ;
The namespace for the XML Catalogs elements.
        
        
Macro XML_CATALOG_PI
#define #XML_CATALOG_PIXML_CATALOG_PI ;
The specific XML Catalog Processing Instuction name.
        
        
Structure xmlCatalog
struct _xmlCatalog {
The content of this structure is not made public by the API.
} xmlCatalog;
        
        
Enum xmlCatalogAllow
enum #xmlCatalogAllowxmlCatalogAllow  {
    
XML_CATA_ALLOW_NONE  = 0
    
XML_CATA_ALLOW_GLOBAL  = 1
    
XML_CATA_ALLOW_DOCUMENT  = 2
    
XML_CATA_ALLOW_ALL  = 3
};
        
        
Enum xmlCatalogPrefer
enum #xmlCatalogPreferxmlCatalogPrefer  {
    
XML_CATA_PREFER_NONE  = 0
    
XML_CATA_PREFER_PUBLIC  = 1
    
XML_CATA_PREFER_SYSTEM  = 2
};
        
        
Typedef xmlCatalogPtr
libxml2-catalog.html#xmlCatalogxmlCatalog  * xmlCatalogPtr;
        
        
xmlACatalogAdd ()
int	xmlACatalogAdd			( libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr  catal, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * type, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * orig, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * replace)Add an entry in the catalog, it may overwrite existing but different entries.
catal: a Catalog type: the type of record to add to the catalog orig: the system, public or prefix to match replace: the replacement value for the match Returns: 0 if successful, -1 otherwise         
        
xmlACatalogDump ()
void	xmlACatalogDump			( libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr  catal, 					 FILE * out)Dump the given catalog to the given file.
catal: a Catalog out: the file.         
        
xmlACatalogRemove ()
int	xmlACatalogRemove		( libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr  catal, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * value)Remove an entry from the catalog
catal: a Catalog value: the value to remove Returns: the number of entries removed if successful, -1 otherwise         
        
xmlACatalogResolve ()
libxml2-xmlstring.html#xmlCharxmlChar  *	xmlACatalogResolve	( libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr  catal, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * pubID, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * sysID)Do a complete resolution lookup of an External Identifier
catal: a Catalog pubID: the public ID string sysID: the system ID string Returns: the URI of the resource or NULL if not found, it must be freed by the caller.         
        
xmlACatalogResolvePublic ()
libxml2-xmlstring.html#xmlCharxmlChar  *	xmlACatalogResolvePublic	( libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr  catal, 						 const libxml2-xmlstring.html#xmlCharxmlChar  * pubID)Try to lookup the catalog local libxml2-SAX.html#referencereference  associated to a public ID in that catalog
catal: a Catalog pubID: the public ID string Returns: the local resource if found or NULL otherwise, the value returned must be freed by the caller.         
        
xmlACatalogResolveSystem ()
libxml2-xmlstring.html#xmlCharxmlChar  *	xmlACatalogResolveSystem	( libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr  catal, 						 const libxml2-xmlstring.html#xmlCharxmlChar  * sysID)Try to lookup the catalog resource for a system ID
catal: a Catalog sysID: the system ID string Returns: the resource if found or NULL otherwise, the value returned must be freed by the caller.         
        
xmlACatalogResolveURI ()
libxml2-xmlstring.html#xmlCharxmlChar  *	xmlACatalogResolveURI	( libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr  catal, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * URI)Do a complete resolution lookup of an URI
catal: a Catalog URI: the URI Returns: the URI of the resource or NULL if not found, it must be freed by the caller.         
        
xmlCatalogAdd ()
int	xmlCatalogAdd			(const libxml2-xmlstring.html#xmlCharxmlChar  * type, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * orig, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * replace)Add an entry in the catalog, it may overwrite existing but different entries. If called before any other catalog routine, allows to override the default shared catalog put in place by xmlInitializeCatalog();
type: the type of record to add to the catalog orig: the system, public or prefix to match replace: the replacement value for the match Returns: 0 if successful, -1 otherwise         
        
xmlCatalogAddLocal ()
void *	xmlCatalogAddLocal		(void * catalogs, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * URL)Add the new entry to the catalog list
catalogs: a document's list of catalogs URL: the URL to a new local catalog Returns: the updated list         
        
xmlCatalogCleanup ()
void	xmlCatalogCleanup		(void)Free up all the memory associated with catalogs
        
        
xmlCatalogConvert ()
int	xmlCatalogConvert		(void)Convert all the SGML catalog entries as XML ones
Returns: the number of entries converted if successful, -1 otherwise         
        
xmlCatalogDump ()
void	xmlCatalogDump			(FILE * out)Dump all the global catalog content to the given file.
out: the file.         
        
xmlCatalogFreeLocal ()
void	xmlCatalogFreeLocal		(void * catalogs)Free up the memory associated to the catalog list
catalogs: a document's list of catalogs         
        
xmlCatalogGetDefaults ()
libxml2-catalog.html#xmlCatalogAllowxmlCatalogAllow 	xmlCatalogGetDefaults	(void)Used to get the user preference w.r.t. to what catalogs should be accepted
Returns: the current libxml2-catalog.html#xmlCatalogAllowxmlCatalogAllow  value         
        
xmlCatalogGetPublic ()
const libxml2-xmlstring.html#xmlCharxmlChar  *	xmlCatalogGetPublic	(const libxml2-xmlstring.html#xmlCharxmlChar  * pubID)Try to lookup the catalog libxml2-SAX.html#referencereference  associated to a public ID DEPRECATED, use xmlCatalogResolvePublic()
pubID: the public ID string Returns: the resource if found or NULL otherwise.         
        
xmlCatalogGetSystem ()
const libxml2-xmlstring.html#xmlCharxmlChar  *	xmlCatalogGetSystem	(const libxml2-xmlstring.html#xmlCharxmlChar  * sysID)Try to lookup the catalog libxml2-SAX.html#referencereference  associated to a system ID DEPRECATED, use xmlCatalogResolveSystem()
sysID: the system ID string Returns: the resource if found or NULL otherwise.         
        
xmlCatalogIsEmpty ()
int	xmlCatalogIsEmpty		( libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr  catal)Check is a catalog is empty
catal: should this create an SGML catalog Returns: 1 if the catalog is empty, 0 if not, amd -1 in case of error.         
        
xmlCatalogLocalResolve ()
libxml2-xmlstring.html#xmlCharxmlChar  *	xmlCatalogLocalResolve	(void * catalogs, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * pubID, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * sysID)Do a complete resolution lookup of an External Identifier using a document's private catalog list
catalogs: a document's list of catalogs pubID: the public ID string sysID: the system ID string Returns: the URI of the resource or NULL if not found, it must be freed by the caller.         
        
xmlCatalogLocalResolveURI ()
libxml2-xmlstring.html#xmlCharxmlChar  *	xmlCatalogLocalResolveURI	(void * catalogs, 						 const libxml2-xmlstring.html#xmlCharxmlChar  * URI)Do a complete resolution lookup of an URI using a document's private catalog list
catalogs: a document's list of catalogs URI: the URI Returns: the URI of the resource or NULL if not found, it must be freed by the caller.         
        
xmlCatalogRemove ()
int	xmlCatalogRemove		(const libxml2-xmlstring.html#xmlCharxmlChar  * value)Remove an entry from the catalog
value: the value to remove Returns: the number of entries removed if successful, -1 otherwise         
        
xmlCatalogResolve ()
libxml2-xmlstring.html#xmlCharxmlChar  *	xmlCatalogResolve	(const libxml2-xmlstring.html#xmlCharxmlChar  * pubID, 					 const libxml2-xmlstring.html#xmlCharxmlChar  * sysID)Do a complete resolution lookup of an External Identifier
pubID: the public ID string sysID: the system ID string Returns: the URI of the resource or NULL if not found, it must be freed by the caller.         
        
xmlCatalogResolvePublic ()
libxml2-xmlstring.html#xmlCharxmlChar  *	xmlCatalogResolvePublic	(const libxml2-xmlstring.html#xmlCharxmlChar  * pubID)Try to lookup the catalog libxml2-SAX.html#referencereference  associated to a public ID
pubID: the public ID string Returns: the resource if found or NULL otherwise, the value returned must be freed by the caller.         
        
xmlCatalogResolveSystem ()
libxml2-xmlstring.html#xmlCharxmlChar  *	xmlCatalogResolveSystem	(const libxml2-xmlstring.html#xmlCharxmlChar  * sysID)Try to lookup the catalog resource for a system ID
sysID: the system ID string Returns: the resource if found or NULL otherwise, the value returned must be freed by the caller.         
        
xmlCatalogResolveURI ()
libxml2-xmlstring.html#xmlCharxmlChar  *	xmlCatalogResolveURI	(const libxml2-xmlstring.html#xmlCharxmlChar  * URI)Do a complete resolution lookup of an URI
URI: the URI Returns: the URI of the resource or NULL if not found, it must be freed by the caller.         
        
xmlCatalogSetDebug ()
int	xmlCatalogSetDebug		(int level)Used to set the debug level for catalog operation, 0 disable debugging, 1 enable it
level: the debug level of catalogs required Returns: the previous value of the catalog debugging level         
        
xmlCatalogSetDefaultPrefer ()
libxml2-catalog.html#xmlCatalogPreferxmlCatalogPrefer 	xmlCatalogSetDefaultPrefer	( libxml2-catalog.html#xmlCatalogPreferxmlCatalogPrefer  prefer)Allows to set the preference between public and system for deletion in XML Catalog resolution. C.f. section 4.1.1 of the spec Values accepted are libxml2-catalog.html#XML_CATA_PREFER_PUBLICXML_CATA_PREFER_PUBLIC  or libxml2-catalog.html#XML_CATA_PREFER_SYSTEMXML_CATA_PREFER_SYSTEM 
prefer: the default preference for delegation Returns: the previous value of the default preference for delegation         
        
xmlCatalogSetDefaults ()
void	xmlCatalogSetDefaults		( libxml2-catalog.html#xmlCatalogAllowxmlCatalogAllow  allow)Used to set the user preference w.r.t. to what catalogs should be accepted
allow: what catalogs should be accepted         
        
xmlConvertSGMLCatalog ()
int	xmlConvertSGMLCatalog		( libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr  catal)Convert all the SGML catalog entries as XML ones
catal: the catalog Returns: the number of entries converted if successful, -1 otherwise         
        
xmlFreeCatalog ()
void	xmlFreeCatalog			( libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr  catal)Free the memory allocated to a Catalog
catal: a Catalog         
        
xmlInitializeCatalog ()
void	xmlInitializeCatalog		(void)Do the catalog initialization. this function is not thread safe, catalog initialization should preferably be done once at startup
        
        
xmlLoadACatalog ()
libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr 	xmlLoadACatalog		(const char * filename)Load the catalog and build the associated data structures. This can be either an XML Catalog or an SGML Catalog It will recurse in SGML CATALOG entries. On the other hand XML Catalogs are not handled recursively.
filename: a file path Returns: the catalog parsed or NULL in case of error         
        
xmlLoadCatalog ()
int	xmlLoadCatalog			(const char * filename)Load the catalog and makes its definitions effective for the default external entity loader. It will recurse in SGML CATALOG entries. this function is not thread safe, catalog initialization should preferably be done once at startup
filename: a file path Returns: 0 in case of success -1 in case of error         
        
xmlLoadCatalogs ()
void	xmlLoadCatalogs			(const char * pathss)Load the catalogs and makes their definitions effective for the default external entity loader. this function is not thread safe, catalog initialization should preferably be done once at startup
pathss: a list of directories separated by a colon or a space.         
        
xmlLoadSGMLSuperCatalog ()
libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr 	xmlLoadSGMLSuperCatalog	(const char * filename)Load an SGML super catalog. It won't expand CATALOG or DELEGATE references. This is only needed for manipulating SGML Super Catalogs like adding and removing CATALOG or DELEGATE entries.
filename: a file path Returns: the catalog parsed or NULL in case of error         
        
xmlNewCatalog ()
libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr 	xmlNewCatalog		(int sgml)create a new Catalog.
sgml: should this create an SGML catalog Returns: the libxml2-catalog.html#xmlCatalogPtrxmlCatalogPtr  or NULL in case of error         
        
xmlParseCatalogFile ()
libxml2-tree.html#xmlDocPtrxmlDocPtr 	xmlParseCatalogFile	(const char * filename)parse an XML file and build a tree. It's like xmlParseFile() except it bypass all catalog lookups.
filename: the filename Returns: the resulting document tree or NULL in case of error         
      
    
  
