<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>xmllint</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>xmllint — command line <span class="acronym">XML</span> tool</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><tt class="command">xmllint</tt> [[--version] | [--debug] | [--shell] | [--debugent] | [--copy] | [--recover] | [--noent] | [--nocdata] | [--nsclean] | [--noout] | [--htmlout] | [--nowrap] | [--valid] | [--postvalid] | [--dtdvalid <i class="replaceable"><tt>URL</tt></i>] | [--dtdvalidfpi <i class="replaceable"><tt>FPI</tt></i>] | [--timing] | [--repeat] | [--insert] | [--compress] | [--html] | [--push] | [--memory] | [--nowarning] | [--noblanks] | [--format] | [--testIO] | [--encode <i class="replaceable"><tt>encoding</tt></i>] | [--catalogs] | [--nocatalogs] | [--auto] | [--xinclude] | [--loaddtd] | [--dtdattr] | [--dropdtd] | [--stream] | [--chkregister] | [--relaxng] | [--schema] | [--nonet]] [<tt class="option"><i class="replaceable"><tt>xmlfile</tt></i></tt>]</p></div></div><div class="refsect1" lang="en"><a name="introduction"></a><h2>Introduction</h2><p> The xmllint program parses one or more XML files, specified on the command line as <i class="replaceable"><tt>xmlfile</tt></i>. It prints various types of output, depending upon the options selected. It is useful for detecting errors both in <span class="acronym">XML</span> code and in the <span class="acronym">XML</span> parser itself. </p><p> It is included in <span class="application">libxml2</span>. </p></div><div class="refsect1" lang="en"><a name="options"></a><h2>Options</h2><div class="variablelist"><dl><dt><span class="term"><tt class="option">--version</tt></span></dt><dd> Display the version of <span class="application">libxml2</span> used. </dd><dt><span class="term"><tt class="option">--debug</tt></span></dt><dd> Parse a file and output an annotated tree of the in-memory version of the document. </dd><dt><span class="term"><tt class="option">--shell</tt></span></dt><dd> Run a navigating shell. Details on available commands in shell mode are below. </dd><dt><span class="term"><tt class="option">--debugent</tt></span></dt><dd> Debug the entities defined in the document. </dd><dt><span class="term"><tt class="option">--copy</tt> </span></dt><dd> Test the internal copy implementation. </dd><dt><span class="term"><tt class="option">--recover</tt></span></dt><dd> Output any parsable portions of an invalid document. </dd><dt><span class="term"><tt class="option">--noent</tt></span></dt><dd> Substitute entity values for entity references. By default, <span class="application">xmllint</span> leaves entity references in place. </dd><dt><span class="term"><tt class="option">--nocdata</tt></span></dt><dd> Substitute CDATA section by equivalent text nodes. </dd><dt><span class="term"><tt class="option">--nsclean</tt></span></dt><dd> Remove redundant namespace declarations. </dd><dt><span class="term"><tt class="option">--noout</tt></span></dt><dd> Suppress output. By default, <span class="application">xmllint</span> outputs the result tree. </dd><dt><span class="term"><tt class="option">--htmlout</tt></span></dt><dd> Output results as an <span class="acronym">HTML</span> file. This causes <span class="application">xmllint</span> to output the necessary <span class="acronym">HTML</span> tags surrounding the result tree output so the results can be displayed in a browser. </dd><dt><span class="term"><tt class="option">--nowrap </tt></span></dt><dd> Do not output HTML doc wrapper. </dd><dt><span class="term"><tt class="option">--valid </tt></span></dt><dd> Determine if the document is a valid instance of the included Document Type Definition (<span class="acronym">DTD</span>). A <span class="acronym">DTD</span> to be validated against also can be specified at the command line using the <tt class="option">--dtdvalid</tt> option. By default, <span class="application">xmllint</span> also checks to determine if the document is well-formed. </dd><dt><span class="term"><tt class="option">--postvalid</tt></span></dt><dd> Validate after parsing is completed. </dd><dt><span class="term"> <tt class="option">--dtdvalid</tt> <i class="replaceable"><tt>URL</tt></i></span></dt><dd> Use the <span class="acronym">DTD</span> specified by <i class="replaceable"><tt>URL</tt></i> for validation. </dd><dt><span class="term"> <tt class="option">--dtdvalidfpi</tt> <i class="replaceable"><tt>FPI</tt></i></span></dt><dd> Use the <span class="acronym">DTD</span> specified by the Public Identifier <i class="replaceable"><tt>FPI</tt></i> for validation, note that this will require a Catalog exporting that Public Identifier to work. </dd><dt><span class="term"><tt class="option">--timing</tt></span></dt><dd> Output information about the time it takes <span class="application">xmllint</span> to perform the various steps. </dd><dt><span class="term"><tt class="option">--repeat</tt></span></dt><dd> Repeat 100 times, for timing or profiling. </dd><dt><span class="term"><tt class="option">--insert</tt></span></dt><dd> Test for valid insertions. </dd><dt><span class="term"><tt class="option">--compress</tt></span></dt><dd> Turn on gzip compression of output. </dd><dt><span class="term"><tt class="option">--html</tt></span></dt><dd> Use the <span class="acronym">HTML</span> parser. </dd><dt><span class="term"><tt class="option">--push</tt></span></dt><dd> Use the push mode of the parser. </dd><dt><span class="term"><tt class="option">--memory</tt></span></dt><dd> Parse from memory. </dd><dt><span class="term"><tt class="option">--nowarning</tt></span></dt><dd> Do not emit warnings from the parser and/or validator. </dd><dt><span class="term"><tt class="option">--noblanks</tt></span></dt><dd> Drop ignorable blank spaces. </dd><dt><span class="term"><tt class="option">--format</tt></span></dt><dd> Reformat and reindent the output. The $XMLLINT_INDENT environment variable controls the indentation (default value is two spaces " "). </dd><dt><span class="term"><tt class="option">--testIO</tt></span></dt><dd> Test user input/output support. </dd><dt><span class="term"><tt class="option">--encode</tt> <i class="replaceable"><tt>encoding</tt></i></span></dt><dd> Output in the given encoding. </dd><dt><span class="term"><tt class="option">--catalogs</tt></span></dt><dd> Use the catalogs from $SGML_CATALOG_FILES. Otherwise /etc/xml/catalog is used by default. </dd><dt><span class="term"><tt class="option">--nocatalogs</tt></span></dt><dd> Do not use any catalogs. </dd><dt><span class="term"><tt class="option">--auto</tt></span></dt><dd> Generate a small document for testing purposes. </dd><dt><span class="term"><tt class="option">--xinclude</tt></span></dt><dd> Do XInclude processing. </dd><dt><span class="term"><tt class="option">--loaddtd</tt></span></dt><dd> Fetch external DTD. </dd><dt><span class="term"><tt class="option">--dtdattr</tt></span></dt><dd> Fetch external DTD and populate the tree with inherited attributes. </dd><dt><span class="term"><tt class="option">--dropdtd</tt></span></dt><dd> Remove <span class="acronym">DTD</span> from output. </dd><dt><span class="term"><tt class="option">--stream</tt></span></dt><dd>Use streaming API - useful when used in combination with --relaxng or --valid options for validation of files that are too large to be held in memory.</dd><dt><span class="term"><tt class="option">--chkregister</tt></span></dt><dd>Turn on node registration. Useful for developeres testing libxml2 node tracking code.</dd><dt><span class="term"><tt class="option">--relaxng</tt> <i class="replaceable"><tt>schema</tt></i></span></dt><dd>Use RelaxNG file named <i class="replaceable"><tt>schema</tt></i> for validation.</dd><dt><span class="term"><tt class="option">--schema</tt> <i class="replaceable"><tt>schema</tt></i></span></dt><dd>Use a W3C XML Schema file named <i class="replaceable"><tt>schema</tt></i> for validation.</dd><dt><span class="term"> <tt class="option">--nonet</tt></span></dt><dd>Do not use the Internet to fetch DTD's or entities.</dd></dl></div></div><div class="refsect1" lang="en"><a name="shell"></a><h2>Shell</h2><p> <span class="application">xmllint</span> offers an interactive shell mode invoked with the <tt class="option">--shell</tt> command. Available commands in shell mode include: </p><div class="variablelist"><dl><dt><span class="term"><tt class="option">base</tt></span></dt><dd> display XML base of the node </dd><dt><span class="term"><tt class="option">bye</tt></span></dt><dd> leave shell </dd><dt><span class="term"><tt class="option">cat <i class="replaceable"><tt>node</tt></i></tt></span></dt><dd> Display node if given or current node. </dd><dt><span class="term"><tt class="option">cd <i class="replaceable"><tt>path</tt></i></tt></span></dt><dd> Change the current node to <i class="replaceable"><tt>path</tt></i> (if given and unique) or root if no argument given. </dd><dt><span class="term"><tt class="option">dir <i class="replaceable"><tt>path</tt></i></tt></span></dt><dd> Dumps information about the node (namespace, attributes, content). </dd><dt><span class="term"><tt class="option">du <i class="replaceable"><tt>path</tt></i></tt></span></dt><dd> Show the structure of the subtree under path or the current node. </dd><dt><span class="term"><tt class="option">exit</tt></span></dt><dd> Leave the shell. </dd><dt><span class="term"><tt class="option">help</tt></span></dt><dd> Show this help. </dd><dt><span class="term"><tt class="option">free</tt></span></dt><dd> Display memory usage. </dd><dt><span class="term"><tt class="option">load <i class="replaceable"><tt>name</tt></i></tt></span></dt><dd> Load a new document with the given name. </dd><dt><span class="term"><tt class="option">ls <i class="replaceable"><tt>path</tt></i></tt></span></dt><dd> List contents of <i class="replaceable"><tt>path</tt></i> (if given) or the current directory. </dd><dt><span class="term"><tt class="option">pwd</tt></span></dt><dd> Display the path to the current node. </dd><dt><span class="term"><tt class="option">quit</tt></span></dt><dd> Leave the shell. </dd><dt><span class="term"><tt class="option">save <i class="replaceable"><tt>name</tt></i></tt></span></dt><dd> Saves the current document to <i class="replaceable"><tt>name</tt></i> if given or to the original name. </dd><dt><span class="term"><tt class="option">validate</tt></span></dt><dd> Check the document for error. </dd><dt><span class="term"><tt class="option">write <i class="replaceable"><tt>name</tt></i></tt></span></dt><dd> Write the current node to the given filename. </dd></dl></div></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>Debugging Catalogs</h2><p>Setting the environment variable <tt class="varname">XML_DEBUG_CATALOG</tt> using the command <b class="command">"export XML_DEBUG_CATALOG="</b> outputs debugging information related to catalog operations.</p></div></div></body></html>