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