xmlcatalog Manual

libxml2
2001 2004
John Fleck

    				jfleck@inkstain.net

$Date$
xmlcatalog 1
xmlcatalog Command line tool to parse and manipulate XML or SGML catalog files.
`xmlcatalog` `--sgml` `--shell` `--create` `--del VALUE(S)` `--add TYPE ORIG REPLACE` `--add FILENAME` `--noout` `--no-super-update` `-v` `--verbose` CATALOGFILE ENTITIES

## DESCRIPTION

&xmlcatalog; is a command line application allowing users to monitor and manipulate XML and SGML catalogs. It is included in libxml 3 .

Its functions can be invoked from a single command from the command line, or it can perform multiple functions in interactive mode. It can operate on both XML and SGML files.

## OPTIONS

&xmlcatalog; accepts the following options (in alphabetical order):

`--add TYPE ORIG REPLACE`

  Add an entry to `CATALOGFILE`. TYPE indicates the type of entry. Possible types are:

  - public
  - system
  - uri
  - rewriteSystem
  - rewriteURI
  - delegatePublic
  - delegateSystem
  - delegateURI
  - nextCatalog
  . ORIG is the original reference to be replaced, and REPLACE is the URI of the replacement entity to be used. The `--add` option will not overwrite `CATALOGFILE`, outputting to `stdout`, unless `--noout` is used. The `--add` will always take three parameters even if some of the XML catalog constructs will have only a single argument.
`--add FILENAME`

  If the `--add` option is used following the `--sgml` option, only a single argument, a FILENAME, is used. This is used to add the name of a catalog file to an SGML supercatalog, a file that contains references to other included SGML catalog files.

`--create`

  Create a new XML catalog. Outputs to `stdout`, ignoring filename unless `--noout` is used, in which case it creates a new catalog file filename.

`--del VALUE(S)`

  Remove entries from CATALOGFILE matching VALUE(S). The `--del` option will not overwrite CATALOGFILE, outputting to `stdout`, unless `--noout` is used.

`--noout`

  Save output to the named file rather than outputting to `stdout`.

`--no-super-update`

  Do not update the SGML super catalog.

`--shell`

  Run a shell allowing interactive queries on catalog file CATALOGFILE. For the set of available commands see .

`--sgml`

  Uses SGML super catalogs for `--add` and `--del` options.

`-v`
`--verbose`

  Output debugging information.

## SHELL COMMANDS

Invoking &xmlcatalog; with the `--shell CATALOGFILE` option opens a command line shell allowing interactive access to the catalog file identified by CATALOGFILE. Invoking the shell provides a command line prompt after which the following commands (described in alphabetical order) can be entered.

`add TYPE ORIG REPLACE`

  Add an entry to the catalog file. TYPE indicates the type of entry. Possible types are:

  - public
  - system
  - uri
  - rewriteSystem
  - rewriteURI
  - delegatePublic
  - delegateSystem
  - delegateURI
  - nextCatalog
  . ORIG is the original reference to be replaced, and REPLACE is the URI of the replacement entity to be used. The `--add` option will not overwrite `CATALOGFILE`, outputting to `stdout`, unless `--noout` is used. The `--add` will always take three parameters even if some of the XML catalog constructs will have only a single argument.
`debug`

  Print debugging statements showing the steps &xmlcatalog; is executing.

`del VALUE(S)`

  Remove the catalog entry corresponding to VALUE(S).

`dump`

  Print the current catalog.

`exit`

  Quit the shell.

`public PUBLIC-ID`

  Execute a Formal Public Identifier look-up of the catalog entry for PUBLIC-ID. The corresponding entry will be output to the command line.

`quiet`

  Stop printing debugging statements.

`system SYSTEM-ID`

  Execute a Formal Public Identifier look-up of the catalog entry for SYSTEM-ID. The corresponding entry will be output to the command line.

## ENVIRONMENT

`XML_CATALOG_FILES`

  XML catalog behavior can be changed by redirecting queries to the user's own set of catalogs. This can be done by setting the `XML_CATALOG_FILES` environment variable to a list of catalogs. An empty one should deactivate loading the default `/etc/xml/catalog` catalog.

## DIAGNOSTICS

&xmlcatalog; return codes provide information that can be used when calling it from scripts.

0

  No error

1

  Failed to remove an entry from the catalog

2

  Failed to save to the catalog, check file permissions

3

  Failed to add an entry to the catalog

4

  Failed to look up an entry in the catalog

## SEE ALSO

libxml 3

More information can be found at

- libxml 3 web page

- libxml 3 catalog support web page at

- James Clark's SGML catalog page

- OASIS XML catalog specification