Source Documents on the Command Line
When Saxon (either XSLT or XQuery) is invoked from the command line, the source document will normally
be an XML 1.0 document. Supplying an XML 1.1 document will also work, provided that (a) the selected parser
is an XML 1.1 parser, and (b) the command line option
-1.1 is set.
If a custom parser is specified using the -x option on the command line, then the source document can
be in any format accepted by this custom parser. The only constraint is that the parser must behave as a
SAX2 parser, delivering a stream of events that define a virtual XML document. For example, the
TagSoup parser from John Cowan can be used to feed an HTML
document as input to Saxon.
Non-standard input formats can also be handled by specifying a user-written URIResolver. If the
option is used on the command line, or if the source file name begins with
file://, then the source file name is resolved to a JAXP Source object using the URIResolver;
if a user-written URIResolver is nominated (using the
-r option) then this may translate the
file name into a Source object any way that it wishes.