public class Query extends Object
The XQuery syntax supported conforms to the W3C XQuery 1.0 drafts.
Modifier and Type | Field and Description |
---|---|
protected boolean |
backup |
protected Configuration |
config |
protected boolean |
explain |
protected String |
explainOutputFileName |
protected DecimalValue |
languageVersion |
protected String |
moduleURIResolverClass |
protected String |
outputFileName |
protected Properties |
outputProperties |
protected boolean |
projection |
protected boolean |
pullMode |
protected String |
queryFileName |
protected int |
repeat |
protected boolean |
showTime |
protected String |
sourceFileName |
protected boolean |
updating |
protected String |
uriResolverClass |
protected boolean |
useURLs |
protected boolean |
wrap |
protected boolean |
writeback |
Constructor and Description |
---|
Query() |
Modifier and Type | Method and Description |
---|---|
protected void |
applyLocalOptions(CommandLineOptions options,
Configuration config)
Customisation hook: apply options defined locally in a subclass
|
protected void |
badUsage(String message)
Report incorrect usage of the command line, with a list of the options and arguments that are available
|
protected XQueryExpression |
compileQuery(StaticQueryContext staticEnv,
String queryFileName,
boolean useURLs)
Compile the query
|
protected void |
doQuery(String[] args,
String command)
Support method for main program.
|
protected void |
explain(XQueryExpression exp)
Explain the results of query compilation
|
protected Configuration |
getConfiguration()
Get the configuration in use
|
static void |
main(String[] args)
Main program, can be used directly from the command line.
|
protected void |
parseOptions(CommandLineOptions options,
String command,
DynamicQueryContext dynamicEnv)
Parse the options supplied on the command line
|
protected void |
processSource(Source sourceInput,
XQueryExpression exp,
DynamicQueryContext dynamicEnv)
Process the supplied source file
|
protected Source |
processSourceFile(String sourceFileName,
boolean useURLs) |
protected void |
quit(String message,
int code)
Exit with a message
|
protected void |
runQuery(XQueryExpression exp,
DynamicQueryContext dynamicEnv,
OutputStream destination,
Properties outputProps)
Run the query
|
void |
setPermittedOptions(CommandLineOptions options)
Set the options that are recognized on the command line.
|
protected Configuration config
protected Properties outputProperties
protected boolean showTime
protected int repeat
protected String sourceFileName
protected String queryFileName
protected boolean useURLs
protected String outputFileName
protected String moduleURIResolverClass
protected String uriResolverClass
protected boolean explain
protected boolean wrap
protected boolean pullMode
protected boolean projection
protected DecimalValue languageVersion
protected boolean updating
protected boolean writeback
protected boolean backup
protected String explainOutputFileName
protected Configuration getConfiguration()
public static void main(String[] args) throws Exception
The format is:
java net.sf.saxon.Query [options] query-file >output-file
followed by any number of parameters in the form {keyword=value}... which can be referenced from within the query.
This program executes the query in query-file.
args
- List of arguments supplied on operating system command lineException
- Indicates that a compile-time or
run-time error occurredpublic void setPermittedOptions(CommandLineOptions options)
options
- the CommandLineOptions in which the recognized options are to be registered.protected void doQuery(String[] args, String command)
args
- the command-line argumentscommand
- name of the class, to be used in error messagesprotected void parseOptions(CommandLineOptions options, String command, DynamicQueryContext dynamicEnv) throws TransformerException
options
- the command line argumentscommand
- the name of the command that was used (for diagnostics only)dynamicEnv
- the XQuery dynamic contextTransformerException
- if failures occur. Note, the method may also invoke System.exit().protected void applyLocalOptions(CommandLineOptions options, Configuration config)
options
- the CommandLineOptionsconfig
- the Saxon Configurationprotected Source processSourceFile(String sourceFileName, boolean useURLs) throws TransformerException
TransformerException
protected XQueryExpression compileQuery(StaticQueryContext staticEnv, String queryFileName, boolean useURLs) throws XPathException, IOException
staticEnv
- the static query contextqueryFileName
- the filename holding the query (or "-" for the standard input)useURLs
- true if the filename is in the form of a URIXPathException
- if query compilation failsIOException
- if the query cannot be readprotected void explain(XQueryExpression exp) throws FileNotFoundException, XPathException
exp
- the compiled expressionFileNotFoundException
- if the destination for the explanation doesn't existXPathException
- if other failures occurprotected void processSource(Source sourceInput, XQueryExpression exp, DynamicQueryContext dynamicEnv) throws XPathException
sourceInput
- the supplied sourceexp
- the compiled XQuery expressiondynamicEnv
- the dynamic query contextXPathException
- if processing failsprotected void runQuery(XQueryExpression exp, DynamicQueryContext dynamicEnv, OutputStream destination, Properties outputProps) throws XPathException, IOException
exp
- the compiled query expressiondynamicEnv
- the dynamic query contextdestination
- the destination for serialized resultsoutputProps
- serialization properties defining the output formatXPathException
- if the query failsIOException
- if input or output failsprotected void quit(String message, int code)
message
- The message to be outputcode
- The result code to be returned to the operating
system shellprotected void badUsage(String message)
message
- The error messageCopyright (c) 2004-2013 Saxonica Limited. All rights reserved.