mirror of
				https://github.com/cookiengineer/audacity
				synced 2025-10-31 14:13:50 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			252 lines
		
	
	
		
			7.7 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
			
		
		
	
	
			252 lines
		
	
	
		
			7.7 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
| .\" This manpage has been automatically generated by docbook2man 
 | |
| .\" from a DocBook document.  This tool can be found at:
 | |
| .\" <http://shell.ipoline.com/~elmert/comp/docbook2X/> 
 | |
| .\" Please send any bug reports, improvements, comments, patches, 
 | |
| .\" etc. to Steve Cheng <steve@ggi-project.org>.
 | |
| .TH "XMLWF" "1" "24 January 2003" "" ""
 | |
| .SH NAME
 | |
| xmlwf \- Determines if an XML document is well-formed
 | |
| .SH SYNOPSIS
 | |
| 
 | |
| \fBxmlwf\fR [ \fB-s\fR]  [ \fB-n\fR]  [ \fB-p\fR]  [ \fB-x\fR]  [ \fB-e \fIencoding\fB\fR]  [ \fB-w\fR]  [ \fB-d \fIoutput-dir\fB\fR]  [ \fB-c\fR]  [ \fB-m\fR]  [ \fB-r\fR]  [ \fB-t\fR]  [ \fB-v\fR]  [ \fBfile ...\fR] 
 | |
| 
 | |
| .SH "DESCRIPTION"
 | |
| .PP
 | |
| \fBxmlwf\fR uses the Expat library to
 | |
| determine if an XML document is well-formed.  It is
 | |
| non-validating.
 | |
| .PP
 | |
| If you do not specify any files on the command-line, and you
 | |
| have a recent version of \fBxmlwf\fR, the
 | |
| input file will be read from standard input.
 | |
| .SH "WELL-FORMED DOCUMENTS"
 | |
| .PP
 | |
| A well-formed document must adhere to the
 | |
| following rules:
 | |
| .TP 0.2i
 | |
| \(bu
 | |
| The file begins with an XML declaration.  For instance,
 | |
| <?xml version="1.0" standalone="yes"?>.
 | |
| \fBNOTE:\fR
 | |
| \fBxmlwf\fR does not currently
 | |
| check for a valid XML declaration.
 | |
| .TP 0.2i
 | |
| \(bu
 | |
| Every start tag is either empty (<tag/>)
 | |
| or has a corresponding end tag.
 | |
| .TP 0.2i
 | |
| \(bu
 | |
| There is exactly one root element.  This element must contain
 | |
| all other elements in the document.  Only comments, white
 | |
| space, and processing instructions may come after the close
 | |
| of the root element.
 | |
| .TP 0.2i
 | |
| \(bu
 | |
| All elements nest properly.
 | |
| .TP 0.2i
 | |
| \(bu
 | |
| All attribute values are enclosed in quotes (either single
 | |
| or double).
 | |
| .PP
 | |
| If the document has a DTD, and it strictly complies with that
 | |
| DTD, then the document is also considered \fBvalid\fR.
 | |
| \fBxmlwf\fR is a non-validating parser --
 | |
| it does not check the DTD.  However, it does support
 | |
| external entities (see the \fB-x\fR option).
 | |
| .SH "OPTIONS"
 | |
| .PP
 | |
| When an option includes an argument, you may specify the argument either
 | |
| separately ("\fB-d\fR output") or concatenated with the
 | |
| option ("\fB-d\fRoutput").  \fBxmlwf\fR
 | |
| supports both.
 | |
| .TP
 | |
| \fB-c\fR
 | |
| If the input file is well-formed and \fBxmlwf\fR
 | |
| doesn't encounter any errors, the input file is simply copied to
 | |
| the output directory unchanged.
 | |
| This implies no namespaces (turns off \fB-n\fR) and
 | |
| requires \fB-d\fR to specify an output file.
 | |
| .TP
 | |
| \fB-d output-dir\fR
 | |
| Specifies a directory to contain transformed
 | |
| representations of the input files.
 | |
| By default, \fB-d\fR outputs a canonical representation
 | |
| (described below).
 | |
| You can select different output formats using \fB-c\fR
 | |
| and \fB-m\fR.
 | |
| 
 | |
| The output filenames will
 | |
| be exactly the same as the input filenames or "STDIN" if the input is
 | |
| coming from standard input.  Therefore, you must be careful that the
 | |
| output file does not go into the same directory as the input
 | |
| file.  Otherwise, \fBxmlwf\fR will delete the
 | |
| input file before it generates the output file (just like running
 | |
| cat < file > file in most shells).
 | |
| 
 | |
| Two structurally equivalent XML documents have a byte-for-byte
 | |
| identical canonical XML representation.
 | |
| Note that ignorable white space is considered significant and
 | |
| is treated equivalently to data.
 | |
| More on canonical XML can be found at
 | |
| http://www.jclark.com/xml/canonxml.html .
 | |
| .TP
 | |
| \fB-e encoding\fR
 | |
| Specifies the character encoding for the document, overriding
 | |
| any document encoding declaration.  \fBxmlwf\fR
 | |
| supports four built-in encodings:
 | |
| US-ASCII,
 | |
| UTF-8,
 | |
| UTF-16, and
 | |
| ISO-8859-1.
 | |
| Also see the \fB-w\fR option.
 | |
| .TP
 | |
| \fB-m\fR
 | |
| Outputs some strange sort of XML file that completely
 | |
| describes the input file, including character positions.
 | |
| Requires \fB-d\fR to specify an output file.
 | |
| .TP
 | |
| \fB-n\fR
 | |
| Turns on namespace processing.  (describe namespaces)
 | |
| \fB-c\fR disables namespaces.
 | |
| .TP
 | |
| \fB-p\fR
 | |
| Tells xmlwf to process external DTDs and parameter
 | |
| entities.
 | |
| 
 | |
| Normally \fBxmlwf\fR never parses parameter
 | |
| entities.  \fB-p\fR tells it to always parse them.
 | |
| \fB-p\fR implies \fB-x\fR.
 | |
| .TP
 | |
| \fB-r\fR
 | |
| Normally \fBxmlwf\fR memory-maps the XML file
 | |
| before parsing; this can result in faster parsing on many
 | |
| platforms.
 | |
| \fB-r\fR turns off memory-mapping and uses normal file
 | |
| IO calls instead.
 | |
| Of course, memory-mapping is automatically turned off
 | |
| when reading from standard input.
 | |
| 
 | |
| Use of memory-mapping can cause some platforms to report
 | |
| substantially higher memory usage for
 | |
| \fBxmlwf\fR, but this appears to be a matter of
 | |
| the operating system reporting memory in a strange way; there is
 | |
| not a leak in \fBxmlwf\fR.
 | |
| .TP
 | |
| \fB-s\fR
 | |
| Prints an error if the document is not standalone. 
 | |
| A document is standalone if it has no external subset and no
 | |
| references to parameter entities.
 | |
| .TP
 | |
| \fB-t\fR
 | |
| Turns on timings.  This tells Expat to parse the entire file,
 | |
| but not perform any processing.
 | |
| This gives a fairly accurate idea of the raw speed of Expat itself
 | |
| without client overhead.
 | |
| \fB-t\fR turns off most of the output options
 | |
| (\fB-d\fR, \fB-m\fR, \fB-c\fR,
 | |
| \&...).
 | |
| .TP
 | |
| \fB-v\fR
 | |
| Prints the version of the Expat library being used, including some
 | |
| information on the compile-time configuration of the library, and
 | |
| then exits.
 | |
| .TP
 | |
| \fB-w\fR
 | |
| Enables support for Windows code pages.
 | |
| Normally, \fBxmlwf\fR will throw an error if it
 | |
| runs across an encoding that it is not equipped to handle itself.  With
 | |
| \fB-w\fR, xmlwf will try to use a Windows code
 | |
| page.  See also \fB-e\fR.
 | |
| .TP
 | |
| \fB-x\fR
 | |
| Turns on parsing external entities.
 | |
| 
 | |
| Non-validating parsers are not required to resolve external
 | |
| entities, or even expand entities at all.
 | |
| Expat always expands internal entities (?),
 | |
| but external entity parsing must be enabled explicitly.
 | |
| 
 | |
| External entities are simply entities that obtain their
 | |
| data from outside the XML file currently being parsed.
 | |
| 
 | |
| This is an example of an internal entity:
 | |
| 
 | |
| .nf
 | |
| <!ENTITY vers '1.0.2'>
 | |
| .fi
 | |
| 
 | |
| And here are some examples of external entities:
 | |
| 
 | |
| .nf
 | |
| <!ENTITY header SYSTEM "header-&vers;.xml">  (parsed)
 | |
| <!ENTITY logo SYSTEM "logo.png" PNG>         (unparsed)
 | |
| .fi
 | |
| .TP
 | |
| \fB--\fR
 | |
| (Two hyphens.)
 | |
| Terminates the list of options.  This is only needed if a filename
 | |
| starts with a hyphen.  For example:
 | |
| 
 | |
| .nf
 | |
| xmlwf -- -myfile.xml
 | |
| .fi
 | |
| 
 | |
| will run \fBxmlwf\fR on the file
 | |
| \fI-myfile.xml\fR.
 | |
| .PP
 | |
| Older versions of \fBxmlwf\fR do not support
 | |
| reading from standard input.
 | |
| .SH "OUTPUT"
 | |
| .PP
 | |
| If an input file is not well-formed,
 | |
| \fBxmlwf\fR prints a single line describing
 | |
| the problem to standard output.  If a file is well formed,
 | |
| \fBxmlwf\fR outputs nothing.
 | |
| Note that the result code is \fBnot\fR set.
 | |
| .SH "BUGS"
 | |
| .PP
 | |
| According to the W3C standard, an XML file without a
 | |
| declaration at the beginning is not considered well-formed.
 | |
| However, \fBxmlwf\fR allows this to pass.
 | |
| .PP
 | |
| \fBxmlwf\fR returns a 0 - noerr result,
 | |
| even if the file is not well-formed.  There is no good way for
 | |
| a program to use \fBxmlwf\fR to quickly
 | |
| check a file -- it must parse \fBxmlwf\fR's
 | |
| standard output.
 | |
| .PP
 | |
| The errors should go to standard error, not standard output.
 | |
| .PP
 | |
| There should be a way to get \fB-d\fR to send its
 | |
| output to standard output rather than forcing the user to send
 | |
| it to a file.
 | |
| .PP
 | |
| I have no idea why anyone would want to use the
 | |
| \fB-d\fR, \fB-c\fR, and
 | |
| \fB-m\fR options.  If someone could explain it to
 | |
| me, I'd like to add this information to this manpage.
 | |
| .SH "ALTERNATIVES"
 | |
| .PP
 | |
| Here are some XML validators on the web:
 | |
| 
 | |
| .nf
 | |
| http://www.hcrc.ed.ac.uk/~richard/xml-check.html
 | |
| http://www.stg.brown.edu/service/xmlvalid/
 | |
| http://www.scripting.com/frontier5/xml/code/xmlValidator.html
 | |
| http://www.xml.com/pub/a/tools/ruwf/check.html
 | |
| .fi
 | |
| .SH "SEE ALSO"
 | |
| .PP
 | |
| 
 | |
| .nf
 | |
| The Expat home page:        http://www.libexpat.org/
 | |
| The W3 XML specification:   http://www.w3.org/TR/REC-xml
 | |
| .fi
 | |
| .SH "AUTHOR"
 | |
| .PP
 | |
| This manual page was written by Scott Bronson <bronson@rinspin.com> for
 | |
| the Debian GNU/Linux system (but may be used by others).  Permission is
 | |
| granted to copy, distribute and/or modify this document under
 | |
| the terms of the GNU Free Documentation
 | |
| License, Version 1.1.
 |