Home | History | Annotate | Download | only in libxmlrpg
      1       * Summary: interfaces to the Catalog handling system
      2       * Description: the catalog module implements the support for
      3       * XML Catalogs and SGML catalogs
      4       *
      5       * SGML Open Technical Resolution TR9401:1997.
      6       * http://www.jclark.com/sp/catalog.htm
      7       *
      8       * XML Catalogs Working Draft 06 August 2001
      9       * http://www.oasis-open.org/committees/entity/spec-2001-08-06.html
     10       *
     11       * Copy: See Copyright for the status of this software.
     12       *
     13       * Author: Patrick Monnerat <pm (a] datasphere.ch>, DATASPHERE S.A.
     14 
     15       /if not defined(XML_CATALOG_H__)
     16       /define XML_CATALOG_H__
     17 
     18       /include "libxmlrpg/xmlversion"
     19       /include "libxmlrpg/xmlstring"
     20       /include "libxmlrpg/tree"
     21 
     22       /if defined(LIBXML_CATALOG_ENABLED)
     23 
     24       * XML_CATALOGS_NAMESPACE:
     25       *
     26       * The namespace for the XML Catalogs elements.
     27 
     28      d XML_CATALOGS_NAMESPACE...
     29      d                 c                   'urn:oasis:names:+
     30      d                                      tc:entity:xmlns:xml:catalog'
     31 
     32       * XML_CATALOG_PI:
     33       *
     34       * The specific XML Catalog Processing Instuction name.
     35 
     36      d XML_CATALOG_PI  c                   'oasis-xml-catalog'
     37 
     38       * The API is voluntarily limited to general cataloging.
     39 
     40      d xmlCatalogPrefer...
     41      d                 s             10u 0 based(######typedef######)           enum type
     42      d XML_CATA_PREFER_NONE...
     43      d                 c                   0
     44      d XML_CATA_PREFER_PUBLIC...
     45      d                 c                   1
     46      d XML_CATA_PREFER_SYSTEM...
     47      d                 c                   2
     48 
     49      d xmlCatalogAllow...
     50      d                 s             10u 0 based(######typedef######)           enum type
     51      d XML_CATA_ALLOW_NONE...
     52      d                 c                   0
     53      d XML_CATA_ALLOW_GLOBAL...
     54      d                 c                   1
     55      d XML_CATA_ALLOW_DOCUMENT...
     56      d                 c                   2
     57      d XML_CATA_ALLOW_ALL...
     58      d                 c                   3
     59 
     60      d xmlCatalogPtr   s               *   based(######typedef######)
     61 
     62       * Operations on a given catalog.
     63 
     64      d xmlNewCatalog   pr                  extproc('xmlNewCatalog')
     65      d                                     like(xmlCatalogPtr)
     66      d  sgml                         10i 0 value
     67 
     68      d xmlLoadACatalog...
     69      d                 pr                  extproc('xmlLoadACatalog')
     70      d                                     like(xmlCatalogPtr)
     71      d  filename                       *   value options(*string)               const char *
     72 
     73      d xmlLoadSGMLSuperCatalog...
     74      d                 pr                  extproc('xmlLoadSGMLSuperCatalog')
     75      d                                     like(xmlCatalogPtr)
     76      d  filename                       *   value options(*string)               const char *
     77 
     78      d xmlConvertSGMLCatalog...
     79      d                 pr            10i 0 extproc('xmlConvertSGMLCatalog')
     80      d  catal                              value like(xmlCatalogPtr)
     81 
     82      d xmlACatalogAdd  pr            10i 0 extproc('xmlACatalogAdd')
     83      d  catal                              value like(xmlCatalogPtr)
     84      d  type                           *   value options(*string)               const xmlChar *
     85      d  orig                           *   value options(*string)               const xmlChar *
     86      d  replace                        *   value options(*string)               const xmlChar *
     87 
     88      d xmlACatalogRemove...
     89      d                 pr            10i 0 extproc('xmlACatalogRemove')
     90      d  catal                              value like(xmlCatalogPtr)
     91      d  value                          *   value options(*string)               const xmlChar *
     92 
     93      d xmlACatalogResolve...
     94      d                 pr              *   extproc('xmlACatalogResolve')        xmlChar *
     95      d  catal                              value like(xmlCatalogPtr)
     96      d  pubID                          *   value options(*string)               const xmlChar *
     97      d  sysID                          *   value options(*string)               const xmlChar *
     98 
     99      d xmlACatalogResolveSystem...
    100      d                 pr              *   extproc('xmlACatalogResolveSystem')  xmlChar *
    101      d  catal                              value like(xmlCatalogPtr)
    102      d  sysID                          *   value options(*string)               const xmlChar *
    103 
    104      d xmlACatalogResolvePublic...
    105      d                 pr              *   extproc('xmlACatalogResolvePublic')  xmlChar *
    106      d  catal                              value like(xmlCatalogPtr)
    107      d  pubID                          *   value options(*string)               const xmlChar *
    108 
    109      d xmlACatalogResolveURI...
    110      d                 pr              *   extproc('xmlACatalogResolveURI')     xmlChar *
    111      d  catal                              value like(xmlCatalogPtr)
    112      d  URI                            *   value options(*string)               const xmlChar *
    113 
    114       /if defined(LIBXML_OUTPUT_ENABLED)
    115      d xmlACatalogDump...
    116      d                 pr                  extproc('xmlACatalogDump')
    117      d  catal                              value like(xmlCatalogPtr)
    118      d  out                            *   value                                FILE *
    119       /endif                                                                    LIBXML_OUTPUT_ENABLD
    120 
    121      d xmlFreeCatalog  pr                  extproc('xmlFreeCatalog')
    122      d  catal                              value like(xmlCatalogPtr)
    123 
    124      d xmlCatalogIsEmpty...
    125      d                 pr            10i 0 extproc('xmlCatalogIsEmpty')
    126      d  catal                              value like(xmlCatalogPtr)
    127 
    128       * Global operations.
    129 
    130      d xmlInitializeCatalog...
    131      d                 pr                  extproc('xmlInitializeCatalog')
    132 
    133      d xmlLoadCatalog  pr            10i 0 extproc('xmlLoadCatalog')
    134      d  filename                       *   value options(*string)               const char *
    135 
    136      d xmlLoadCatalogs...
    137      d                 pr                  extproc('xmlLoadCatalogs')
    138      d  paths                          *   value options(*string)               const char *
    139 
    140      d xmlCatalogCleanup...
    141      d                 pr                  extproc('xmlCatalogCleanup')
    142 
    143       /if defined(LIBXML_OUTPUT_ENABLED)
    144      d xmlCatalogDump  pr                  extproc('xmlCatalogDump')
    145      d  out                            *   value                                FILE *
    146       /endif                                                                    LIBXML_OUTPUT_ENABLD
    147 
    148      d xmlCatalogResolve...
    149      d                 pr              *   extproc('xmlCatalogResolve')         xmlChar *
    150      d  pubID                          *   value options(*string)               const xmlChar *
    151      d  sysID                          *   value options(*string)               const xmlChar *
    152 
    153      d xmlCatalogResolveSystem...
    154      d                 pr              *   extproc('xmlCatalogResolveSystem')   xmlChar *
    155      d  sysID                          *   value options(*string)               const xmlChar *
    156 
    157      d xmlCatalogResolvePublic...
    158      d                 pr              *   extproc('xmlCatalogResolvePublic')   xmlChar *
    159      d  pubID                          *   value options(*string)               const xmlChar *
    160 
    161      d xmlCatalogResolveURI...
    162      d                 pr              *   extproc('xmlCatalogResolveURI')      xmlChar *
    163      d  URI                            *   value options(*string)               const xmlChar *
    164 
    165      d xmlCatalogAdd   pr            10i 0 extproc('xmlCatalogAdd')
    166      d  type                           *   value options(*string)               const xmlChar *
    167      d  orig                           *   value options(*string)               const xmlChar *
    168      d  replace                        *   value options(*string)               const xmlChar *
    169 
    170      d xmlCatalogRemove...
    171      d                 pr            10i 0 extproc('xmlCatalogRemove')
    172      d  value                          *   value options(*string)               const xmlChar *
    173 
    174      d xmlParseCatalogFile...
    175      d                 pr                  extproc('xmlParseCatalogFile')
    176      d                                     like(xmlDocPtr)
    177      d  filename                       *   value options(*string)               const char *
    178 
    179      d xmlCatalogConvert...
    180      d                 pr            10i 0 extproc('xmlCatalogConvert')
    181 
    182       * Strictly minimal interfaces for per-document catalogs used
    183       * by the parser.
    184 
    185      d xmlCatalogFreeLocal...
    186      d                 pr                  extproc('xmlCatalogFreeLocal')
    187      d  catalogs                       *   value                                void *
    188 
    189      d xmlCatalogAddLocal...
    190      d                 pr              *   extproc('xmlCatalogAddLocal')        void *
    191      d  catalogs                       *   value                                void *
    192      d  URL                            *   value options(*string)               const xmlChar *
    193 
    194      d xmlCatalogLocalResolve...
    195      d                 pr              *   extproc('xmlCatalogLocalResolve')    xmlChar *
    196      d  catalogs                       *   value                                void *
    197      d  pubID                          *   value options(*string)               const xmlChar *
    198      d  sysID                          *   value options(*string)               const xmlChar *
    199 
    200      d xmlCatalogLocalResolveURI...
    201      d                 pr              *   extproc('xmlCatalogLocalResolveURI') xmlChar *
    202      d  catalogs                       *   value                                void *
    203      d  URI                            *   value options(*string)               const xmlChar *
    204 
    205       * Preference settings.
    206 
    207      d xmlCatalogSetDebug...
    208      d                 pr            10i 0 extproc('xmlCatalogSetDebug')
    209      d  level                        10i 0 value
    210 
    211      d xmlCatalogSetDefaultPrefer...
    212      d                 pr                  extproc('xmlCatalogSetDefaultPrefer')
    213      d                                     like(xmlCatalogPrefer)
    214      d  prefer                             value like(xmlCatalogPrefer)
    215 
    216      d xmlCatalogSetDefaults...
    217      d                 pr                  extproc('xmlCatalogSetDefaults')
    218      d  allow                              value like(xmlCatalogAllow)
    219 
    220      d xmlCatalogGetDefaults...
    221      d                 pr                  extproc('xmlCatalogGetDefaults')
    222      d                                     like(xmlCatalogAllow)
    223 
    224       * DEPRECATED interfaces
    225 
    226      d xmlCatalogGetSystem...
    227      d                 pr              *   extproc('xmlCatalogGetSystem')       const xmlChar *
    228      d  sysID                          *   value options(*string)               const xmlChar *
    229 
    230      d xmlCatalogGetPublic...
    231      d                 pr              *   extproc('xmlCatalogGetPublic')       const xmlChar *
    232      d  pubID                          *   value options(*string)               const xmlChar *
    233 
    234       /endif                                                                    LIBXML_CATALOG_ENBLD
    235       /endif                                                                    XML_CATALOG_H__
    236