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
-xmlversion: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
-u option is used on the command line, or if
the source file name begins with
classpath:, 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.