blob: 855eaf7663488ed6793d970473dcf7fb469e8040 [file] [log] [blame]
<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 &#8212; 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>