xmlcatalog

XMLCATALOG(1)                  xmlcatalog Manual                 XMLCATALOG(1)

NAME
       xmlcatalog - Command line tool to parse and manipulate XML or SGML
       catalog files.

SYNOPSIS
       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 the section
           called "SHELL COMMANDS".

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

       -v, --verbose
           Output debugging information.

       Invoking xmlcatalog non-interactively without a designated action
       (imposed with options like --add) will result in a lookup of the
       catalog entry for ENTITIES in the catalog denoted with CATALOGFILE. The
       corresponding entries will be output to the command line. This mode of
       operation, together with --shell mode and non-modifying (i.e. without
       --noout) direct actions, allows for a special shortcut of the void
       CATALOGFILE specification (possibly expressed as "" in the shell
       environment) appointing the default system catalog. That simplifies the
       handling when its exact location is irrelevant but the respective
       built-in still needs to be consulted.

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 lookup 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 lookup 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 space-separated list of
           catalogs. Use percent-encoding to escape spaces or other
           characters. An empty variable 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

       o   libxml(3) web page https://gitlab.gnome.org/GNOME/libxml2

       o   libxml(3) catalog support web page at
           https://gitlab.gnome.org/GNOME/libxml2/-/wikis/Catalog-support

       o   James Clark's SGML catalog page
           http://www.jclark.com/sp/catalog.htm

       o   OASIS XML catalog specification
           http://www.oasis-open.org/committees/entity/spec.html

AUTHOR
       John Fleck <jfleck@inkstain.net>
           Author.

COPYRIGHT
       Copyright (C) 2001, 2004

libxml2                           02/19/2022                     XMLCATALOG(1)
Man Pages Copyright Respective Owners. Site Copyright (C) 1994 - 2024 Hurricane Electric. All Rights Reserved.