NAME
saxonb-xquery - command line XQuery processor
SYNOPSIS
saxonb-xquery [OPTION...] QUERYFILE [NAME=VALUE...]
DESCRIPTION
This manual page documents briefly the saxonb-xquery command. This page
was written for the Debian(TM) distribution because the original
program does not have a manual page. Still, it has HTML documentation
which is shipped in the libsaxonb-java-doc package.
saxonb-xquery is a command line wrapper around the Saxon-B XSLT and
XQuery processor. Using saxonb-xquery you can evaluate XQuery queries
directly from the command line. Internally, saxonb-xquery is a wrapper
around the Java class net.sf.saxon.Query implemented by Saxon-B.
saxonb-xquery should be invoked passing a (required) filename
containing the XQuery query to be evaluated; the special filename "-"
can be given to require reading the query from standard input.
Before the query filename a list of options can be given, see below.
Parameters
At the end of the command line, a list of parameters can be given.
Parameters are passed using the syntax NAME=VALUE, to specify
parameters´ names and values.
A parameter name prefixed with "+" (plus sign) will be interpreted as a
filesystem path parameter If the path points to a single file, that
file will be parsed as XML and its document node will be passed as the
parameter value. If the path points to a directory, all directly
contained files will be parsed as XML files, and the sequence of their
document nodes will be passed as the parameter value.
A parameter name prefixed with "!" (exclamation mark) will be interpted
as a output/serialization parameter. See the specifications of XQuery
and XSLT 2.0 for more information on output/serialization parameters.
To pass parameters belonging to the non-null namespace, the syntax
{uri}localname=value is provided.
Parameters will be visible as external variables during query
evaluation, provided they have been declared in the query prolog. See
the XQuery specification for more information on variables and their
declarations.
OPTIONS
A summary of supported options is included below. Options can be passed
in any order.
We first report the options which are shared by saxonb-xquery and
saxonb-xslt, then those specific to saxonb-xquery (or which have a
different semantics).
Some options are flagged as "Saxon-SA only", such options work only if
Saxon-SA is installed. Note that Saxon-SA is a commercial product, as
such it is not available in Debian.
Common options
-cr:classname
Specify a class to be used for processing collection URIs passed to
the collection() function. The class must implement
net.sf.saxon.CollectionURIResolver.
-dtd: {[on] | [off]}
Enable or disable DTD validation. Default: off.
-expand: {[on] | [off]}
When validation is enabled, expand default values in validated
documents. This option enables or disables such an expansion.
Default: on.
-explain [:filename]
Display an execution plan; the output is in XML format. If filename
is not given it will be displayed on standard output.
-ext: {[on] | [off]}
Enable or disable the ability to invoke external Java functions
from query files and stylesheets. Beware that enabling them is a
potential security risk when processing untrusted files. Default:
off.
-l: {[on] | [off]}
Keep (when on) or throw away (when off) line numbers in tress
corresponding to source documents. When kept, line numbers can be
accessed using the function saxon:line-number(). Default: off.
-outval: {[recover] | [fatal]}
When validation is required, set whether validation errors are
fatal (when "fatal" is passed) or if they only trigger warnings
(when "recover" is). Default: fatal.
-p: {[on] | [off]}
Enable or disable usage of the PTreeURIResolver. Saxon-SA only.
-r:classname
Specify a class to be used for resolving all URIs.
-repeat:N
Repeat the transformation N times. For benchmarking purposes.
-sa
Perform Schema-aware processing. Saxon-SA only.
-strip: {[all] | [none] | [ignorable]}
Specify whitespace stripping policy for source documents: strip all
of them ("all"), strip none of them ("none"), strip ignorable
whitespace only ("ignorable"). Default: none.
-t
Display version, timing, and other debugging information on
standard error.
-tree: {[tiny] | [linked]}
Select the implementation of the internal tree model: tiny tree
model ("tiny") or linked tree model ("linked"). See the Saxon
documentation for more information on the internal tree model.
Default: tiny.
-T [:classname]
Trace various aspect of the processing; an optional class name can
be given to specify a user-chosen tracer. The class must implement
net.sf.saxon.trace.TraceListener. The default is a system supplied
tracer. This option implies -l.
-TJ
Enable tracing of external Java method invocation. See -ext.
-u
Force interpretation of source document names as URI. By default
they are considered to be file names, unless they start with
"file:" or "http:".
-val: {[strict] | [lax]}
When validation is enabled, choose among "strict" or "lax"
validation. Saxon-SA only.
-x:classname
Specify a class to be used as SAX parser for input documents. The
class must implement either org.xml.sax.Parser or
org.xml.sax.XMLReader.
-xi
Apply XInclude processing to all input documents.
-xmlversion: {[1.0] | [1.1]}
Choose the XML version for processing input documents. "1.1" must
be specified to process XML 1.1 and Namespaces 1.1 constructs.
Default: 1.0.
-?
Display a help message and exit.
Options specific to saxonb-xquery
-mr:classname
Use the specifed class as a ModuleURIResolver to resolve query
module URIs. The class must implement
net.sf.saxon.query.ModuleURIResolver.
-o:filename
Send the query output to the specified filename. If not specified
the output will be sent to standard output. See also -wrap.
-pipe: {[push] | [pull]}
Internally, execute query in push or pull mode. Mainly for testing
purposes. Push mode is usually faster when intermediate tree are
constructed in memory. Default: push.
-projection: {[on] | [off]}
Enable or disable document projection, i.e. the ability to throw
away tree parts which will not be accessed by a query. Saxon-SA
only.
-s: {[file] | [URI]}
Read document input from the specified filename ("-" can be given
to read from standard input). The read document will be available
to the query as the context node. -u affects how filename is
interpreted.
-wrap: {[on] | [off]}
Enable or disable wrapping of query result in a XML structure which
makes explicit the kind of each output node or atomic value. For
example free-standing attributes will be wrapped in an explicit XML
element stating that they are attributes. When this is off, the
query output will be wrapped only using a document node; in such a
setting is possible that output parts, such as free-standing
attributes, can´t be serialized. Default: off.
SEE ALSO
saxonb-xslt (1), XQuery 1.0: An XML Query Language (W3C
Recommendation).
This program is fully documented by the HTML documentation of Saxon,
available in the libsaxon-java-doc Debian package.
AUTHOR
This manual page was written by Stefano Zacchiroli <zack@debian.org>
for the Debian(TM) system (but may be used by others). Permission is
granted to copy, distribute and/or modify this document under the terms
of the GNU General Public License, Version 3 or any later version
published by the Free Software Foundation.
On Debian systems, the complete text of the GNU General Public License
can be found in /usr/share/common-licenses/GPL.
COPYRIGHT
Copyright © 2008 Stefano Zacchiroli
February 2008