<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>xmlcatalog</title><meta name="generator" content="DocBook XSL Stylesheets V1.61.2"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en"><a name="id2431614"></a><div class="titlepage"><div></div><div></div></div><div class="refnamediv"><h2>Name</h2><p>xmlcatalog &#8212; Command line tool to parse and manipulate <span class="acronym">XML</span> or
      <span class="acronym">SGML</span> catalog files.</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><tt class="command">xmlcatalog</tt>  [[--shell] |  [--create] |  [--add <i class="replaceable"><tt>type</tt></i>
	  <i class="replaceable"><tt>orig</tt></i> <i class="replaceable"><tt>replace</tt></i>] |  [--del <i class="replaceable"><tt>values</tt></i>] |  [--noout] |  [--verbose]] [<tt class="option"><i class="replaceable"><tt>catalogfile</tt></i></tt>] [<tt class="option"><i class="replaceable"><tt>entities</tt></i></tt>]</p></div></div><div class="refsect1" lang="en"><a name="introduction"></a><h2>Introduction</h2><p>
      <span class="application">xmlcatalog</span> is a command line application
      allowing users to monitor and manipulate <span class="acronym">XML</span> and
      <span class="acronym">SGML</span> catalogs. It is included in
      <span class="application">libxml2</span>.
    </p><p>
      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 <span class="acronym">XML</span> and <span class="acronym">SGML</span> files.
    </p></div><div class="refsect1" lang="en"><a name="cloptions"></a><h2>Command Line Options</h2><div class="variablelist"><dl><dt><span class="term"><tt class="option">--shell</tt> <i class="replaceable"><tt>filename</tt></i></span></dt><dd>
	    Run a shell
	    allowing interactive queries on catalog file
	    <i class="replaceable"><tt>filename</tt></i>.
	  </dd><dt><span class="term"><tt class="option">--create</tt> <i class="replaceable"><tt>filename</tt></i></span></dt><dd>
	    Create a new
	    <span class="acronym">XML</span> catalog. Outputs to stdout, ignoring
	    <i class="replaceable"><tt>filename</tt></i> unless <tt class="option">--noout</tt> is
	    used, in which case it creates a new catalog file
	    <i class="replaceable"><tt>filename</tt></i>.
	  </dd><dt><span class="term"><tt class="option">--add</tt> <i class="replaceable"><tt>'type'</tt></i> <i class="replaceable"><tt>'orig'</tt></i> <i class="replaceable"><tt>'replace'</tt></i> <i class="replaceable"><tt>filename</tt></i></span></dt><dd><p>
	    Add an entry to catalog file
	    <tt class="filename">filename</tt>. <i class="replaceable"><tt>type</tt></i>
	    indicates the type of entry. Possible types are 'public', 'system', 'uri',
	    'rewriteSystem', 'rewriteURI', 'delegatePublic', 'delegateSystem',
	    'delegateURI' and 'nextCatalog'. <i class="replaceable"><tt>'orig'</tt></i> is the original
	    reference to be replaced, and <i class="replaceable"><tt>'replace'</tt></i>
	    is the <span class="acronym">URI</span> of the replacement entity to be
	    used. The <tt class="option">--add</tt> option will not overwrite
	    <i class="replaceable"><tt>filename</tt></i>, outputing to stdout, unless
	    <tt class="option">--noout</tt> is used. The <tt class="option">--add</tt> will
	    always take three parameters even if some of the
	    <span class="acronym">XML</span> catalog constructs will have only a single
	    argument.

	  </p><p>
	    If the <tt class="option">--add</tt> option is used following the
	    <tt class="option">--sgml</tt> option, only a single argument, a
	    <i class="replaceable"><tt>filename</tt></i>, is used. This is used to add
	    the name of a catalog file to an <span class="acronym">SGML</span>
	    supercatalog, a file that contains references to other included
	    <span class="acronym">SGML</span> catalog files.
	  </p></dd><dt><span class="term"><tt class="option">--del</tt> <i class="replaceable"><tt>'values'</tt></i> <i class="replaceable"><tt>filename</tt></i></span></dt><dd>
	    Remove entries from the catalog file
	    <i class="replaceable"><tt>filename</tt></i> matching
	    <i class="replaceable"><tt>'values'</tt></i>. The <tt class="option">--del</tt> option
	    will not overwrite <i class="replaceable"><tt>filename</tt></i>, outputing to
	    stdout, unless <tt class="option">--noout</tt> is used.
	  </dd><dt><span class="term"><tt class="option">--noout</tt></span></dt><dd>
	    Save output to the named file rather than
	    outputing to stdout.
	  </dd><dt><span class="term"><tt class="option">--sgml</tt></span></dt><dd>
	    Uses SGML Super catalogs for --add and --del options
	  </dd><dt><span class="term"><tt class="option">-v</tt> or <tt class="option">--verbose</tt></span></dt><dd>
	    output debugging
	    information.
	  </dd></dl></div></div><div class="refsect1" lang="en"><a name="shell"></a><h2>Shell Commands</h2><p>Invoking <span class="application">xmlcatalog</span> with the
      <tt class="option">--shell</tt> <i class="replaceable"><tt>filename</tt></i> option opens
    a command line shell allowing interactive access to the catalog file
      identified by <i class="replaceable"><tt>filename</tt></i>. Invoking the shell
    provides a command line prompt after which commands can be entered.
    </p><div class="variablelist"><dl><dt><span class="term"><tt class="option">public</tt> <i class="replaceable"><tt>'PublicID'</tt></i></span></dt><dd>
	    Execute a
	    public identifier lookup of the catalog entry for
	    <i class="replaceable"><tt>'PublicID'</tt></i>. The corresponding entry will be
	    output to the command line.
	  </dd><dt><span class="term"><tt class="option">system</tt> <i class="replaceable"><tt>'SystemID'</tt></i></span></dt><dd>
	    Execute a
	    public identifier lookup of the catalog entry for
	    <i class="replaceable"><tt>'SystemID'</tt></i>. The corresponding entry will be
	    output to the command line.
	  </dd><dt><span class="term"><tt class="option">add </tt> <i class="replaceable"><tt>'type'</tt></i> <i class="replaceable"><tt>'orig'</tt></i> <i class="replaceable"><tt>'replace'</tt></i></span></dt><dd>
	    Add an entry to the catalog
	    file. <i class="replaceable"><tt>type</tt></i> indicates the type of
	    entry. Possible types are 'public', 'system', 'uri', 'rewriteSystem', 'rewriteURI',
	    'delegatePublic', 'delegateSystem', 'delegateURI' and 'nextCatalog'. <i class="replaceable"><tt>'orig'</tt></i>
	    is the original reference to  be replaced, and
	    <i class="replaceable"><tt>'replace'</tt></i> is the <span class="acronym">URI</span> of the
	    replacement entity to be used.
	  </dd><dt><span class="term"><tt class="option">del</tt> <i class="replaceable"><tt>'values'</tt></i></span></dt><dd>
	    Remove the
	    catalog entry corresponding to <i class="replaceable"><tt>'values'</tt></i>.
	  </dd><dt><span class="term"><tt class="option">dump</tt></span></dt><dd>
	    Print the current catalog.
	  </dd><dt><span class="term"><tt class="option">debug</tt></span></dt><dd>
	    Print debugging statements showing the steps
	    <span class="application">xmlcatalog</span> is executing.
	  </dd><dt><span class="term"><tt class="option">quiet</tt></span></dt><dd>
	    Stop printing debugging statements.
	  </dd><dt><span class="term"><tt class="option">exit</tt></span></dt><dd>
	    Quit the shell.
	  </dd></dl></div></div><div class="refsect1" lang="en"><a name="return"></a><h2>Return values</h2><p><span class="application">xmlcatalog</span>'s return codes provide
    information that can be used when calling it from scripts.</p><p>0: normal</p><p>1: Failed to remove an entry from the catalog</p><p>2: Failed to save to the catalog, check file permissions</p><p>3: Failed to add an entry to the catalog</p><p>4: Failed to lookup and entry in the catalog</p></div><div class="refsect1" lang="en"><h2>Catalogs</h2><p>Catalog behavior can be changed by redirecting
     queries to the user's own set of catalogs. This can be done by setting the
     <tt class="varname">XML_CATALOG_FILES</tt> environment variable to a list of
     catalogs. An empty one should deactivate loading the default
      <tt class="filename">/etc/xml/catalog</tt> default catalog.</p></div><div class="refsect1" lang="en"><h2>References</h2><p><a href="http://www.xmlsoft.org/" target="_top">libxml web page</a></p><p><a href="http://www.xmlsoft.org/catalog.html" target="_top"><span class="application">libxml</span>
    catalog support web page:</a></p><p><a href="http://www.jclark.com/sp/catalog.htm" target="_top">James Clark's
    <span class="acronym">SGML</span> catalog page:</a></p><p><a href="http://www.oasis-open.org/committees/entity/spec.html" target="_top"><span class="acronym">OASIS</span>
    <span class="acronym">XML</span> catalog specification: </a></p></div></div></body></html>