mirror of
https://gitlab.gnome.org/GNOME/libxml2.git
synced 2024-12-28 07:21:26 +03:00
f10ae12cb8
* doc/xmllint.1 doc/xmllint.html doc/xmllint.xml: fixed a typo pointed by Jeroen Ruigrok * include/libxml/xmlreader.h include/libxml/xmlschemas.h: increased the APIs for xmlReader schemas validation support * xmllint.c xmlreader.c xmlschemas.c: xmlReader schemas validation implementation and testing as xmllint --stream --schema ... Daniel
176 lines
15 KiB
HTML
176 lines
15 KiB
HTML
<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="id2876302"></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] | [--noout] | [--nonet] | [--htmlout] | [--nowrap] | [--valid] | [--postvalid] | [--dtdvalid <i class="replaceable"><tt>URL</tt></i>] | [--dtdvalidfpi <i class="replaceable"><tt>FPI</tt></i>] | [--timing] | [--output <i class="replaceable"><tt>file</tt></i>] | [--repeat] | [--insert] | [--compress] | [--html] | [--xmlout] | [--push] | [--memory] | [--maxmem <i class="replaceable"><tt>nbbytes</tt></i>] | [--nowarning] | [--noblanks] | [--nocdata] | [--format] | [--encode <i class="replaceable"><tt>encoding</tt></i>] | [--dropdtd] | [--nsclean] | [--testIO] | [--catalogs] | [--nocatalogs] | [--auto] | [--xinclude] | [--noxincludenode] | [--loaddtd] | [--dtdattr] | [--stream] | [--walker] | [--pattern <i class="replaceable"><tt>patternvalue</tt></i>] | [--chkregister] | [--relaxng] | [--schema] | [--c14n]] [<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">--output</tt> <i class="replaceable"><tt>file</tt></i></span></dt><dd>Define a file path where xmllint will save the result of
|
|
parsing. Usually the programs build a tree and save it on stdout, with
|
|
this option the result XML instance will be saved onto a file.</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">--xmlout</tt></span></dt><dd>Used in conjunction with <tt class="option">--html</tt>. Usually
|
|
when HTML is parsed the document is saved with the HTML serializer, but with
|
|
this option the resulting document is saved with the XML serializer. This is
|
|
primarily used to generate XHTML from HTML input.</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">--maxmem</tt> <i class="replaceable"><tt>nnbytes</tt></i></span></dt><dd>Test the parser memory
|
|
support. <i class="replaceable"><tt>nnbytes</tt></i> is the maximum number of bytes the
|
|
library is allowed to allocate. This can also be used to make sure batch
|
|
processing of XML files will not exhaust the virtual memory of the server
|
|
running them.</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">--noxincludenode</tt></span></dt><dd>
|
|
Do XInclude processing but do not generate XInclude start and end
|
|
nodes.
|
|
</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">--walker</tt></span></dt><dd>Test the walker module, which is a reader interface but for a
|
|
document tree, instead of using the reader API on an unparsed document it
|
|
works on a existing in-memory tree. Used in debugging.</dd><dt><span class="term"><tt class="option">--chkregister</tt></span></dt><dd>Turn on node registration. Useful for developers testing
|
|
libxml2 node tracking code.</dd><dt><span class="term"><tt class="option">--pattern</tt> <i class="replaceable"><tt>patternvalue</tt></i></span></dt><dd>Used to exercise the pattern recognition engine, which can be
|
|
used with the reader interface to the parser. It allows to select some
|
|
nodes in the document based on an XPath (subset) expression. Used for
|
|
debugging.</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">--c14n</tt></span></dt><dd>Use the W3C XML Canonicalisation (C14N) to
|
|
serialize the result of parsing to stdout. It keeps comments in
|
|
the result.</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 class="refsect1" lang="en"><h2>Error Return Codes</h2><p>On the completion of execution, <span class="application">Xmllint</span>
|
|
returns the following error codes:</p><div class="variablelist"><dl><dt><span class="term">0</span></dt><dd>No error</dd><dt><span class="term">1</span></dt><dd>Unclassified</dd><dt><span class="term">2</span></dt><dd>Error in DTD</dd><dt><span class="term">3</span></dt><dd>Validation error</dd><dt><span class="term">4</span></dt><dd>Validation error</dd><dt><span class="term">5</span></dt><dd>Error in schema compilation</dd><dt><span class="term">6</span></dt><dd>Error writing output</dd><dt><span class="term">7</span></dt><dd>Error in pattern (generated when
|
|
[<span class="optional">--pattern</span>] option is used)</dd><dt><span class="term">8</span></dt><dd>Error in Reader registration (generated when
|
|
[<span class="optional">--chkregister</span>] option is used)</dd><dt><span class="term">9</span></dt><dd>Out of memory error</dd></dl></div></div></div></body></html>
|