xmllint.1   [plain text]


.\"Generated by db2man.xsl. Don't modify this, modify the source.
.de Sh \" Subsection
.br
.if t .Sp
.ne 5
.PP
\fB\\$1\fR
.PP
..
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Ip \" List item
.br
.ie \\n(.$>=3 .ne \\$3
.el .ne 3
.IP "\\$1" \\$2
..
.TH "XMLLINT" 1 "" "" "xmllint Manual"
.SH NAME
xmllint \- command line XML tool
.SH "SYNOPSIS"
.ad l
.hy 0
.HP 8
\fBxmllint\fR [\fB\-\-version\fR | \fB\-\-debug\fR | \fB\-\-shell\fR | \fB\-\-debugent\fR | \fB\-\-copy\fR | \fB\-\-recover\fR | \fB\-\-noent\fR | \fB\-\-noout\fR | \fB\-\-nonet\fR | \fB\-\-path\ \fIpaths\fR\fR | \fB\-\-load\-trace\fR | \fB\-\-htmlout\fR | \fB\-\-nowrap\fR | \fB\-\-valid\fR | \fB\-\-postvalid\fR | \fB\-\-dtdvalid\ \fIURL\fR\fR | \fB\-\-dtdvalidfpi\ \fIFPI\fR\fR | \fB\-\-timing\fR | \fB\-\-output\ \fIfile\fR\fR | \fB\-\-repeat\fR | \fB\-\-insert\fR | \fB\-\-compress\fR | \fB\-\-html\fR | \fB\-\-xmlout\fR | \fB\-\-push\fR | \fB\-\-memory\fR | \fB\-\-maxmem\ \fInbbytes\fR\fR | \fB\-\-nowarning\fR | \fB\-\-noblanks\fR | \fB\-\-nocdata\fR | \fB\-\-format\fR | \fB\-\-encode\ \fIencoding\fR\fR | \fB\-\-dropdtd\fR | \fB\-\-nsclean\fR | \fB\-\-testIO\fR | \fB\-\-catalogs\fR | \fB\-\-nocatalogs\fR | \fB\-\-auto\fR | \fB\-\-xinclude\fR | \fB\-\-noxincludenode\fR | \fB\-\-loaddtd\fR | \fB\-\-dtdattr\fR | \fB\-\-stream\fR | \fB\-\-walker\fR | \fB\-\-pattern\ \fIpatternvalue\fR\fR | \fB\-\-chkregister\fR | \fB\-\-relaxng\fR | \fB\-\-schema\fR | \fB\-\-c14n\fR] [\fB\fIxmlfile\fR\fR]
.ad
.hy

.SH "INTRODUCTION"

.PP
The xmllint program parses one or more XML files, specified on the command line as \fIxmlfile\fR (or the standard input if the filename provided is \- )\&. It prints various types of output, depending upon the options selected\&. It is useful for detecting errors both in XML code and in the XML parser itself\&.

.PP
It is included in libxml2\&.

.SH "OPTIONS"

.TP
\fB\-\-version\fR
Display the version of libxml2 used\&.

.TP
\fB\-\-debug\fR
Parse a file and output an annotated tree of the in\-memory version of the document\&.

.TP
\fB\-\-shell\fR
Run a navigating shell\&. Details on available commands in shell mode are below\&.

.TP
\fB\-\-debugent\fR
Debug the entities defined in the document\&.

.TP
\fB\-\-copy\fR
Test the internal copy implementation\&.

.TP
\fB\-\-recover\fR
Output any parsable portions of an invalid document\&.

.TP
\fB\-\-noent\fR
Substitute entity values for entity references\&. By default, xmllint leaves entity references in place\&.

.TP
\fB\-\-nocdata\fR
Substitute CDATA section by equivalent text nodes\&.

.TP
\fB\-\-nsclean\fR
Remove redundant namespace declarations\&.

.TP
\fB\-\-noout\fR
Suppress output\&. By default, xmllint outputs the result tree\&.

.TP
\fB\-\-nonet\fR
Do not use the Internet to fetch DTD's or entities\&.

.TP
\fB\-\-nonet\fR
Do not use the Internet to fetch DTD's or entities\&.

.TP
\fB\-\-path\fR \fIpaths\fR
Use the list (separated by space or column) of filesystem path specified by \fIpaths\fR to load DTDs or entities \&.

.TP
\fB\-\-load\-trace\fR
Display to stderr all the documents loaded during the processing\&.

.TP
\fB\-\-htmlout\fR
Output results as an HTML file\&. This causes xmllint to output the necessary HTML tags surrounding the result tree output so the results can be displayed in a browser\&.

.TP
\fB\-\-nowrap \fR
Do not output HTML doc wrapper\&.

.TP
\fB\-\-valid \fR
Determine if the document is a valid instance of the included Document Type Definition (DTD)\&. A DTD to be validated against also can be specified at the command line using the \fB\-\-dtdvalid\fR option\&. By default, xmllint also checks to determine if the document is well\-formed\&.

.TP
\fB\-\-postvalid\fR
Validate after parsing is completed\&.

.TP
\fB\-\-dtdvalid\fR \fIURL\fR
Use the DTD specified by \fIURL\fR for validation\&.

.TP
\fB\-\-dtdvalidfpi\fR \fIFPI\fR
Use the DTD specified by the Public Identifier \fIFPI\fR for validation, note that this will require a Catalog exporting that Public Identifier to work\&.

.TP
\fB\-\-timing\fR
Output information about the time it takes xmllint to perform the various steps\&.

.TP
\fB\-\-output\fR \fIfile\fR
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\&.

.TP
\fB\-\-repeat\fR
Repeat 100 times, for timing or profiling\&.

.TP
\fB\-\-insert\fR
Test for valid insertions\&.

.TP
\fB\-\-compress\fR
Turn on gzip compression of output\&.

.TP
\fB\-\-html\fR
Use the HTML parser\&.

.TP
\fB\-\-xmlout\fR
Used in conjusntion with \fB\-\-html\fR\&. 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\&.

.TP
\fB\-\-push\fR
Use the push mode of the parser\&.

.TP
\fB\-\-memory\fR
Parse from memory\&.

.TP
\fB\-\-maxmem\fR \fInnbytes\fR
Test the parser memory support\&. \fInnbytes\fR 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\&.

.TP
\fB\-\-nowarning\fR
Do not emit warnings from the parser and/or validator\&.

.TP
\fB\-\-noblanks\fR
Drop ignorable blank spaces\&.

.TP
\fB\-\-format\fR
Reformat and reindent the output\&. The $XMLLINT_INDENT environment variable controls the indentation (default value is two spaces " ")\&.

.TP
\fB\-\-testIO\fR
Test user input/output support\&.

.TP
\fB\-\-encode\fR \fIencoding\fR
Output in the given encoding\&.

.TP
\fB\-\-catalogs\fR
Use the catalogs from $SGML_CATALOG_FILES\&. Otherwise /etc/xml/catalog is used by default\&.

.TP
\fB\-\-nocatalogs\fR
Do not use any catalogs\&.

.TP
\fB\-\-auto\fR
Generate a small document for testing purposes\&.

.TP
\fB\-\-xinclude\fR
Do XInclude processing\&.

.TP
\fB\-\-noxincludenode\fR
Do XInclude processing but do not generate XInclude start and end nodes\&.

.TP
\fB\-\-loaddtd\fR
Fetch external DTD\&.

.TP
\fB\-\-dtdattr\fR
Fetch external DTD and populate the tree with inherited attributes\&.

.TP
\fB\-\-dropdtd\fR
Remove DTD from output\&.

.TP
\fB\-\-stream\fR
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\&.

.TP
\fB\-\-walker\fR
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\&.

.TP
\fB\-\-chkregister\fR
Turn on node registration\&. Useful for developers testing libxml2 node tracking code\&.

.TP
\fB\-\-pattern\fR \fIpatternvalue\fR
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\&.

.TP
\fB\-\-relaxng\fR \fIschema\fR
Use RelaxNG file named \fIschema\fR for validation\&.

.TP
\fB\-\-schema\fR \fIschema\fR
Use a W3C XML Schema file named \fIschema\fR for validation\&.

.TP
\fB\-\-c14n\fR
Use the W3C XML Canonicalisation (C14N) to serialize the result of parsing to stdout\&. It keeps comments in the result\&.

.SH "SHELL"

.PP
 xmllint offers an interactive shell mode invoked with the \fB\-\-shell\fR command\&. Available commands in shell mode include:

.TP
\fBbase\fR
display XML base of the node

.TP
\fBbye\fR
leave shell

.TP
\fBcat \fInode\fR\fR
Display node if given or current node\&.

.TP
\fBcd \fIpath\fR\fR
Change the current node to \fIpath\fR (if given and unique) or root if no argument given\&.

.TP
\fBdir \fIpath\fR\fR
Dumps information about the node (namespace, attributes, content)\&.

.TP
\fBdu \fIpath\fR\fR
Show the structure of the subtree under path or the current node\&.

.TP
\fBexit\fR
Leave the shell\&.

.TP
\fBhelp\fR
Show this help\&.

.TP
\fBfree\fR
Display memory usage\&.

.TP
\fBload \fIname\fR\fR
Load a new document with the given name\&.

.TP
\fBls \fIpath\fR\fR
List contents of \fIpath\fR (if given) or the current directory\&.

.TP
\fBpwd\fR
Display the path to the current node\&.

.TP
\fBquit\fR
Leave the shell\&.

.TP
\fBsave \fIname\fR\fR
Saves the current document to \fIname\fR if given or to the original name\&.

.TP
\fBvalidate\fR
Check the document for error\&.

.TP
\fBwrite \fIname\fR\fR
Write the current node to the given filename\&.

.SH "CATALOGS"

.PP
Catalog behavior can be changed by redirecting queries to the user's own set of catalogs\&. This can be done by setting the \fIXML_CATALOG_FILES\fR environment variable to a list of catalogs\&. An empty one should deactivate loading the default \fI/etc/xml/catalog\fR default catalog\&.

.SH "DEBUGGING CATALOGS"

.PP
Setting the environment variable \fIXML_DEBUG_CATALOG\fR using the command \fB"export XML_DEBUG_CATALOG="\fR outputs debugging information related to catalog operations\&.

.SH "ERROR RETURN CODES"

.PP
On the completion of execution, Xmllint returns the following error codes:

.TP
0
No error

.TP
1
Unclassified

.TP
2
Error in DTD

.TP
3
Validation error

.TP
4
Validation error

.TP
5
Error in schema compilation

.TP
6
Error writing output

.TP
7
Error in pattern (generated when [\-\-pattern] option is used)

.TP
8
Error in Reader registration (generated when [\-\-chkregister] option is used)

.TP
9
Out of memory error

.SH AUTHORS
John Fleck, Ziying Sherwin, Heiko Rupp.