more updates for libxml2 2.5.10
[TestXSLT.git] / libxml2 / doc / xmllint.xml
1 <?xml version="1.0"?>
2 <?xml-stylesheet type="text/xsl"
3    href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl"?>
4 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
5     "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
6 ]>
7 <refentry>
8   <refentryinfo>
9     <title>xmllint Manual</title>
10     <copyright>
11       <year>2001</year>
12     </copyright>
13     <author>
14       <firstname>John</firstname>
15       <surname>Fleck</surname>
16     </author>
17     <address><email>jfleck@inkstain.net</email></address>
18     <author>
19       <firstname>Ziying</firstname>
20       <surname>Sherwin</surname>
21     </author>
22     <address><email>sherwin@nlm.nih.gov</email></address>
23     <author>
24       <firstname>Heiko</firstname>
25       <surname>Rupp</surname>
26     </author>
27     <address><email>hwr@pilhuhn.de</email></address>
28     
29     <releaseinfo>This is release 0.2 of the xmllint Manual.</releaseinfo>
30   </refentryinfo>
31
32   <refmeta>
33     <refentrytitle>xmllint</refentrytitle>
34     <manvolnum>1</manvolnum>
35   </refmeta>
36
37   <refnamediv>
38     <refname>xmllint</refname>
39     <refpurpose>command line <acronym>XML</acronym> tool</refpurpose>
40   </refnamediv>
41
42   <refsynopsisdiv>
43     <cmdsynopsis>
44       <command>xmllint</command>
45       <group>
46         <arg>--version</arg>
47         <arg>--debug</arg>
48         <arg>--shell</arg>
49         <arg>--debugent</arg>
50         <arg>--copy</arg>
51         <arg>--recover</arg>
52         <arg>--noent</arg>
53         <arg>--noout</arg>
54         <arg>--htmlout</arg>
55         <arg>--nowrap</arg>
56         <arg>--valid</arg>
57         <arg>--postvalid</arg>
58         <arg>--dtdvalid <replaceable>URL</replaceable></arg>
59         <arg>--timing</arg>
60         <arg>--repeat</arg>
61         <arg>--insert</arg>
62         <arg>--compress</arg>
63         <arg>--sgml</arg>
64         <arg>--html</arg>
65         <arg>--push</arg>
66         <arg>--memory</arg>
67         <arg>--nowarning</arg>
68         <arg>--noblanks</arg>
69         <arg>--format</arg>
70         <arg>--testIO</arg>
71         <arg>--encode <replaceable>encoding</replaceable></arg>
72         <arg>--catalogs</arg>
73         <arg>--nocatalogs</arg>
74         <arg>--auto</arg>
75         <arg>--xinclude</arg>
76         <arg>--loaddtd</arg>
77         <arg>--dtdattr</arg>
78         <arg>--dropdtd</arg>
79         <arg>--stream</arg>
80         <arg>--chkregister</arg>
81         <arg>--relaxng</arg>
82         <arg>--schema</arg>
83         <arg>--nonet</arg>
84       </group>
85       <arg><option><replaceable>xmlfile</replaceable></option></arg>
86   </cmdsynopsis>
87   </refsynopsisdiv>
88
89   <refsect1 id="introduction">
90     <title>Introduction</title>
91     <para>
92       The xmllint program parses one or more XML files, specified on the
93       command line as <replaceable>xmlfile</replaceable>. It prints various
94       types of output, depending upon the options selected. It is useful for
95       detecting errors both in <acronym>XML</acronym> code and in the
96       <acronym>XML</acronym> parser itself.
97     </para>
98
99     <para>
100       It is included in <application>libxml2</application>.
101     </para>
102   </refsect1>
103   <refsect1 id="options">
104     <title>Options</title>
105     <variablelist>
106       <varlistentry>
107         <term><option>--version</option></term>
108         <listitem>
109           <simpara>
110             Display the version of
111             <application>libxml2</application> used.
112           </simpara>
113         </listitem>
114       </varlistentry>
115
116       <varlistentry>
117         <term><option>--debug</option></term>
118         <listitem>
119           <simpara>
120             Parse a file and output an annotated tree of the
121             in-memory version of the document.
122           </simpara>
123         </listitem>
124       </varlistentry>
125
126       <varlistentry>
127         <term><option>--shell</option></term>
128         <listitem>
129           <simpara>
130             Run a navigating shell. Details on available commands in shell mode
131             are below.
132           </simpara>
133         </listitem>
134       </varlistentry>
135
136       <varlistentry>
137         <term><option>--debugent</option></term>
138         <listitem>
139           <simpara>
140             Debug the entities defined in the document.
141           </simpara>
142         </listitem>
143       </varlistentry>
144
145       <varlistentry>
146         <term><option>--copy</option> </term>
147         <listitem>
148           <simpara>
149             Test the internal copy implementation.
150           </simpara>
151         </listitem>
152       </varlistentry>
153     
154       
155       <varlistentry>
156         <term><option>--recover</option></term>
157         <listitem>
158           <simpara>
159             Output any parsable portions of an invalid
160             document.
161           </simpara>
162         </listitem>
163       </varlistentry>
164
165       <varlistentry>
166         <term><option>--noent</option></term>
167         <listitem>
168           <simpara>
169             Substitute entity values for entity
170             references. By default, <application>xmllint</application> leaves entity
171             references in place.
172           </simpara>
173         </listitem>
174       </varlistentry>
175    
176       <varlistentry>
177         <term><option>--noout</option></term>
178         <listitem>
179           <simpara>
180             Suppress output. By default,
181             <application>xmllint</application> outputs the result tree.
182           </simpara>
183         </listitem>
184       </varlistentry>
185
186     <varlistentry>
187         <term><option>--htmlout</option></term>
188         <listitem>
189           <simpara>
190             Output results as an <acronym>HTML</acronym>
191             file. This causes <application>xmllint</application> to output
192             the necessary <acronym>HTML</acronym> tags surrounding the result tree
193             output so the results can be displayed in a browser. 
194           </simpara>
195         </listitem>
196       </varlistentry>
197
198     <varlistentry>
199         <term><option>--nowrap </option></term>
200         <listitem>
201           <simpara>
202             Do not output HTML doc wrapper.
203           </simpara>
204         </listitem>
205       </varlistentry>
206
207 <varlistentry>
208         <term><option>--valid </option></term>
209         <listitem>
210           <simpara>
211             Determine if the document is a valid instance
212             of the included Document Type Definition (<acronym>DTD</acronym>). A
213             <acronym>DTD</acronym> to be validated against also can be specified at
214             the command line using the <option>--dtdvalid</option> option. By default,
215             <application>xmllint</application> also checks to determine if the
216             document is well-formed.
217           </simpara>
218         </listitem>
219       </varlistentry>
220    
221  <varlistentry>
222         <term><option>--postvalid</option></term>
223         <listitem>
224           <simpara>
225             Validate after parsing is completed.
226           </simpara>
227         </listitem>
228       </varlistentry>
229    
230     <varlistentry>
231         <term> <option>--dtdvalid</option> <replaceable>URL</replaceable></term>
232         <listitem>
233           <simpara>
234             Use the
235       <acronym>DTD</acronym> specified by <replaceable>URL</replaceable> for
236       validation.
237           </simpara>
238         </listitem>
239       </varlistentry>
240    
241      <varlistentry>
242         <term><option>--timing</option></term>
243         <listitem>
244           <simpara>
245             Output information about the time it takes
246             <application>xmllint</application> to perform the various steps.
247           </simpara>
248         </listitem>
249       </varlistentry>
250
251    <varlistentry>
252         <term><option>--repeat</option></term>
253         <listitem>
254           <simpara>
255             Repeat 100 times, for timing or profiling.
256           </simpara>
257         </listitem>
258       </varlistentry>
259    
260     <varlistentry>
261         <term><option>--insert</option></term>
262         <listitem>
263           <simpara>
264             Test for valid insertions.
265           </simpara>
266         </listitem>
267       </varlistentry>
268
269       <varlistentry>
270         <term><option>--compress</option></term>
271         <listitem>
272           <simpara>
273             Turn on gzip compression of output.
274           </simpara>
275         </listitem>
276       </varlistentry>
277    
278       <varlistentry>
279         <term><option>--sgml</option></term>
280         <listitem>
281           <simpara>Use the DocBook <acronym>SGML</acronym> parser. This allows
282             documents written in <acronym>SGML</acronym> DocBook to be converted
283             into an in-memory tree and treated as if they were written in
284             <acronym>XML</acronym>.</simpara>
285         </listitem>
286       </varlistentry>
287
288     <varlistentry>
289         <term><option>--html</option></term>
290         <listitem>
291           <simpara>
292             Use the <acronym>HTML</acronym> parser.
293           </simpara>
294         </listitem>
295       </varlistentry>
296    
297     <varlistentry>
298         <term><option>--push</option></term>
299         <listitem>
300           <simpara>
301             Use the push mode of the parser.
302           </simpara>
303         </listitem>
304       </varlistentry>
305    
306
307     <varlistentry>
308         <term><option>--memory</option></term>
309         <listitem>
310           <simpara>
311            Parse from memory.
312           </simpara>
313         </listitem>
314       </varlistentry>
315
316     <varlistentry>
317         <term><option>--nowarning</option></term>
318         <listitem>
319           <simpara>
320            Do not emit warnings from the parser and/or validator.
321           </simpara>
322         </listitem>
323       </varlistentry>
324
325     <varlistentry>
326         <term><option>--noblanks</option></term>
327         <listitem>
328           <simpara>
329            Drop ignorable blank spaces.
330           </simpara>
331         </listitem>
332       </varlistentry>
333
334     <varlistentry>
335         <term><option>--format</option></term>
336         <listitem>
337           <simpara>
338            Reformat and reindent the output. The $XMLLINT_INDENT
339            environment variable controls the indentation (default 
340            value is two spaces &quot;  &quot;).
341           </simpara>
342         </listitem>
343       </varlistentry>
344
345     <varlistentry>
346         <term><option>--testIO</option></term>
347         <listitem>
348           <simpara>
349            Test user input/output support.
350           </simpara>
351         </listitem>
352       </varlistentry>
353
354     <varlistentry>
355       <term><option>--encode</option> <replaceable>encoding</replaceable></term>
356         <listitem>
357           <simpara>
358            Output in the given encoding.
359           </simpara>
360         </listitem>
361       </varlistentry>
362     
363     <varlistentry>
364         <term><option>--catalogs</option></term>
365         <listitem>
366           <simpara>
367            Use the catalogs from $SGML_CATALOG_FILES. Otherwise /etc/xml/catalog
368            is used by default.
369           </simpara>
370         </listitem>
371       </varlistentry>
372
373     <varlistentry>
374         <term><option>--nocatalogs</option></term>
375         <listitem>
376           <simpara>
377            Do not use any catalogs.
378           </simpara>
379         </listitem>
380       </varlistentry>
381     
382     <varlistentry>
383         <term><option>--auto</option></term>
384         <listitem>
385           <simpara>
386            Generate a small document for testing purposes.
387           </simpara>
388         </listitem>
389       </varlistentry>
390
391     <varlistentry>
392         <term><option>--xinclude</option></term>
393         <listitem>
394           <simpara>
395            Do XInclude processing.
396           </simpara>
397         </listitem>
398       </varlistentry>
399     <varlistentry>
400         <term><option>--loaddtd</option></term>
401         <listitem>
402           <simpara>
403            Fetch external DTD.
404           </simpara>
405         </listitem>
406       </varlistentry>
407     
408     <varlistentry>
409         <term><option>--dtdattr</option></term>
410         <listitem>
411           <simpara>
412            Fetch external DTD and populate the tree with inherited attributes.
413           </simpara>
414         </listitem>
415       </varlistentry>
416       <varlistentry>
417         <term><option>--dropdtd</option></term>
418         <listitem>
419           <simpara>
420             Remove <acronym>DTD</acronym> from output.
421           </simpara>
422         </listitem>
423       </varlistentry>
424       <varlistentry>
425         <term><option>--stream</option></term>
426         <listitem>
427           <simpara>Use streaming API - useful when  used  in combination with
428               --relaxng or --valid options for validation of files that are
429             too large to be held in memory.</simpara> 
430         </listitem>
431       </varlistentry>
432       <varlistentry>
433         <term><option>--chkregister</option></term>
434         <listitem>
435           <simpara>Turn on node registration. Useful for developeres testing
436           libxml2 node tracking code.</simpara>
437         </listitem>
438       </varlistentry>
439       <varlistentry>
440         <term><option>--relaxng</option> <replaceable>schema</replaceable></term>
441         <listitem>
442           <simpara>Use RelaxNG file named <replaceable>schema</replaceable> for
443           validation.</simpara>
444         </listitem>
445       </varlistentry>
446       <varlistentry>
447         <term><option>--schema</option> <replaceable>schema</replaceable></term>
448         <listitem>
449           <simpara>Use a W3C XML Schema file named <replaceable>schema</replaceable> for validation.</simpara>
450         </listitem>
451       </varlistentry>
452       <varlistentry>
453         <term>
454       <option>--nonet</option></term>
455         <listitem>
456           <simpara>Do not use the Internet to fetch DTD's or entities.</simpara>
457         </listitem>
458       </varlistentry>
459     </variablelist>
460   </refsect1>
461
462   <refsect1 id="shell">
463     <title>Shell</title>
464     <para>
465       <application>xmllint</application> offers an interactive shell mode
466       invoked with the <option>--shell</option> command. Available commands in
467       shell mode include:
468     </para>
469     <variablelist>
470       <varlistentry>
471         <term><option>base</option></term>
472         <listitem>
473           <simpara>
474             display XML base of the node
475           </simpara>
476         </listitem>
477       </varlistentry>
478       <varlistentry>
479         <term><option>bye</option></term>
480         <listitem>
481           <simpara>
482             leave shell
483           </simpara>
484         </listitem>
485       </varlistentry>
486       <varlistentry>
487         <term><option>cat <replaceable>node</replaceable></option></term>
488         <listitem>
489           <simpara>
490             Display node if given or current node.
491           </simpara>
492         </listitem>
493       </varlistentry>
494       <varlistentry>
495         <term><option>cd <replaceable>path</replaceable></option></term>
496         <listitem>
497           <simpara>
498             Change the current node to <replaceable>path</replaceable> (if given
499             and unique) or root if no argument given.
500           </simpara>
501         </listitem>
502       </varlistentry>
503       <varlistentry>
504         <term><option>dir <replaceable>path</replaceable></option></term>
505         <listitem>
506           <simpara>
507             Dumps information about the node (namespace, attributes, content).
508           </simpara>
509         </listitem>
510       </varlistentry>
511       <varlistentry>
512         <term><option>du <replaceable>path</replaceable></option></term>
513         <listitem>
514           <simpara>
515             Show the structure of the subtree under path or the current node.
516           </simpara>
517         </listitem>
518       </varlistentry>
519       <varlistentry>
520         <term><option>exit</option></term>
521         <listitem>
522           <simpara>
523             Leave the shell.
524           </simpara>
525         </listitem>
526       </varlistentry>
527       <varlistentry>
528         <term><option>help</option></term>
529         <listitem>
530           <simpara>
531             Show this help.
532           </simpara>
533         </listitem>
534       </varlistentry>
535       <varlistentry>
536         <term><option>free</option></term>
537         <listitem>
538           <simpara>
539             Display memory usage.
540           </simpara>
541         </listitem>
542       </varlistentry>
543       <varlistentry>
544         <term><option>load <replaceable>name</replaceable></option></term>
545         <listitem>
546           <simpara>
547             Load a new document with the given name.
548           </simpara>
549         </listitem>
550       </varlistentry>
551       <varlistentry>
552         <term><option>ls <replaceable>path</replaceable></option></term>
553         <listitem>
554           <simpara>
555             List contents of <replaceable>path</replaceable> (if given) or the
556             current directory.
557           </simpara>
558         </listitem>
559       </varlistentry>
560       <varlistentry>
561         <term><option>pwd</option></term>
562         <listitem>
563           <simpara>
564             Display the path to the current node.
565           </simpara>
566         </listitem>
567       </varlistentry>
568       <varlistentry>
569         <term><option>quit</option></term>
570         <listitem>
571           <simpara>
572             Leave the shell.
573           </simpara>
574         </listitem>
575       </varlistentry>
576       <varlistentry>
577         <term><option>save <replaceable>name</replaceable></option></term>
578         <listitem>
579           <simpara>
580             Saves the current document to <replaceable>name</replaceable> if
581             given or to the original name.
582           </simpara>
583         </listitem>
584       </varlistentry>
585       <varlistentry>
586         <term><option>validate</option></term>
587         <listitem>
588           <simpara>
589             Check the document for error.
590           </simpara>
591         </listitem>
592       </varlistentry>
593       <varlistentry>
594         <term><option>write <replaceable>name</replaceable></option></term>
595         <listitem>
596           <simpara>
597             Write the current node to the given filename.
598           </simpara>
599         </listitem>
600       </varlistentry>
601      
602     </variablelist>
603   </refsect1>
604   <refsect1>
605     <title>Debugging Catalogs</title>
606     <para>Setting the environment variable <varname>XML_DEBUG_CATALOG</varname>
607     using the command <command>&quot;export XML_DEBUG_CATALOG=&quot;</command>
608     outputs debugging information related to catalog operations.</para>
609   </refsect1>
610 </refentry>