.TH XMLLINT 1 "12 April 2000" 
.SH NAME
xmllint \- parse XML files and print the result of parsing
.SH SYNOPSIS
.B xmllint
.RB [ \-\-compress ]
.RB [ \-\-copy ]
.RB [ \-\-debug ]
.RB [ \-\-debugent ]
.RB [ \-\-htmlout ]
.RB [ \-\-insert ]
.RB [ \-\-noblanks ]
.RB [ \-\-noent ]
.RB [ \-\-noout ]
.RB [ \-\-nowarning ]
.RB [ \-\-nowarp ]
.RB [ \-\-postvalid ]
.RB [ \-\-push ]
.RB [ \-\-recover ]
.RB [ \-\-repeat ]
.RB [ \-\-shell ]
.RB [ \-\-testIO ]
.RB [ \-\-valid ]
.IR xmlfile ...
.SH DESCRIPTION
The 
.IR xmllint 
program parses one or more XML files,
specified on the command line as 
.IR xmlfile ....
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.
.SH OPTIONS
.TP 12
.B \-\-compress
Do 
.IR gzip (1)
compression for the output.
.TP 
.B \-\-copy
Test the internal copy implementation.
.TP
.B \-\-debug
Dump a debug tree of the in-memory document.
.TP
.B \-\-debugent
Debug the entities defined in the document.
.TP
.B \-\-htmlout
Output results in
.I html
format.
.TP
.B \-\-insert
Test for valid insertion.
.TP
.B \-\-noblanks
Drop blanks from the output.
.TP
.B \-\-noent
Substitute entity references by their value.
.TP
.B \-\-noout
Do not output the result tree.
.TP
.B \-\-nowarning
Do not print warning messages from the parser or validator.
.TP
.B \-\-nowarp
Do not put 
.I html
document wrapper.
.TP
.B \-\-postvalid
Do a
.I posteriori
validation.
.TP
.B \-\-push
Use the push mode for the parser.
.TP
.B \-\-recover
Output what was parsable on broken XML documents.
.TP
.B \-\-repeat
Repeat the process 100 times, for the purpose of timing and profiling.
.TP
.B \-\-shell
Run a navigating shell.
.TP
.B \-\-testIO
Test user i/o support.
.TP
.B \-\-valid
Validate the document in addition to std well-formed.
.SH RESULT
xmllint will return 1 if the XML is not well formed, 2 if the
Dtd could not be loaded and 3 if the valiadtion fails. If no
error is detected it will return 0.
.SH FILES
.TP 2.2i
.B /depot/package/libxml_2.0.0/bin/xmllint
executable 
.SH "SEE ALSO"
.BR libxml (4)
.SH AUTHOR
Daniel Veillard (daniel@veillard.com)
Manual page by Ziying Sherwin,
Lister Hill National Center for Biomedical Communication,
U.S. National Library of Medicine (sherwin@nlm.nih.gov).
.\" end of manual page
