## Package org.exist.xquery

Classes that implement the XQuery/XPath execution model.

See:
Description

Interface Summary
CompiledXQuery
Constants: Declares various constants and flags used by the query engine: axis specifiers, operators.
Expression: Base interface implemented by all classes which are part of an XQuery/XPath expression.
ExpressionVisitor: Defines a visitor to be used for traversing and analyzing the expression tree.
ExternalModule: An external library module implemented in XQuery and loaded through the "import module" directive.
InternalModule: Defines an internal module implemented in Java.
Module: Defines an XQuery library module.
NodeSelector
NodeTest

Class Summary
AbstractExpression
AbstractInternalModule: Abstract base class for an `InternalModule`.
AnalyzeContextInfo: Holds context information and execution hints for XQuery expressions.
AncestorSelector
AnyNodeTest
AtomicToString
Atomize
AttributeConstructor: Node constructor for attribute nodes.
BasicExpressionVisitor: Basic implementation of the `ExpressionVisitor` interface.
BasicFunction: Abstract base class for simple functions.
BatchTransactionPragma
BinaryOp
BindingExpression: Abstract superclass for the variable binding expressions "for" and "let".
CachedResult: This class is used to hold an intermediate result that can be cached.
Cardinality: Defines occurrence indicators (*,?,+).
CastableExpression: Implements the "castable as" XQuery expression.
CastExpression: CastExpression represents cast expressions as well as all type constructors.
CDATAConstructor: Constructs an in-memory CDATA node.
ChildSelector
CombiningExpression: Abstract base class for the XQuery/XPath combining operators "union", "intersect" and "except".
CommentConstructor
ConditionalExpression: XQuery if ...
DeferredFunctionCall
Dependency: Defines bit flags to indicate, upon which parts of the execution context an expression depends (`Expression.getDependencies()`).
DescendantOrSelfSelector
DescendantSelector
DocumentConstructor: Implements a dynamic document constructor.
DynamicAttributeConstructor: Represents a dynamic attribute constructor.
DynamicCardinalityCheck: Runtime-check for the cardinality of a function parameter.
DynamicCommentConstructor: Implements a dynamic comment constructor.
DynamicNameCheck: Check element or attribute name to match sequence type.
DynamicPIConstructor: Dynamic constructor for processing instruction nodes.
DynamicTextConstructor: Implements a dynamic text constructor.
DynamicTypeCheck: Check a function parameter type at runtime.
ElementConstructor: Constructor for element nodes.
EnclosedExpr: Represents an enclosed expression `{expr}` inside element content.
Except
ExtensionExpression: Implements an XQuery extension expression.
ExternalModuleImpl: Default implementation of an `ExternalModule`.
FilteredExpression: FilteredExpression represents a primary expression with a predicate.
ForExpr: Represents an XQuery "for" expression.
Function: Abstract base class for all built-in and user-defined functions.
FunctionCall: Represents a call to a user-defined function `UserDefinedFunction`.
FunctionDef: A function definition, consisting of a signature and the implementing class.
FunctionFactory
FunctionId: Used to uniquely identify a function by its function name and arity.
FunctionSignature: Describes the signature of a built-in or user-defined function, i.e.
GeneralComparison: A general XQuery/XPath2 comparison expression.
InstanceOfExpression: Implements the XQuery "instance of" operator.
InternalFunctionCall: Wrapper for internal modules in order to perform access control checks on internal module function calls.
Intersection
JavaCall: A special function call to a Java method or constructor.
LetExpr: Implements an XQuery let-expression.
LiteralValue: A literal value, i.e.
LocalVariable: Represents a local variable as declared by for and let.
LocationStep: Processes all location path steps (like descendant::*, ancestor::XXX).
LogicalOp: Base class for the boolean operators "and" and "or".
ModuleContext: Subclass of `XQueryContext` for imported modules.
NamespaceConstructor: Implements a dynamic namespace constructor.
NameTest
NodeComparison: Implements node comparisons: is, isnot, <<, >>.
NodeConstructor: Abstract base class for all node constructors.
OpAnd: Boolean operator "and".
OpNumeric: numeric operation on two operands by +, -, *, div, mod etc..
OpOr: Boolean operator "or".
Option: Represents an XQuery option declared via "declare option".
OrderSpec: An XQuery order specifier as specified in an "order by" clause.
ParentSelector
PathExpr: PathExpr is just a sequence of XQuery/XPath expressions, which will be called step by step.
PIConstructor: Constructor for processing-instruction nodes.
Pragma
Predicate: Handles predicate expressions.
Profiler: XQuery profiling output.
QuantifiedExpression: Represents a quantified expression: "some ...
RangeExpression: An XQuery range expression, like "1 to 10".
RootNode: Reads a set of document root nodes from the context.
SelfSelector
SequenceConstructor: An XQuery sequence constructor ",".
SimpleStep: Represents a primary expression in a simple path step like foo//$x.
Step
TextConstructor: Direct constructor for text nodes.
TimerPragma
TreatAsExpression
TypeswitchExpression: Implements the XQuery typeswitch construct.
TypeTest: Tests if a node is of a given node type.
UnaryExpr: A unary minus or plus.
Union
UntypedValueCheck: Runtime-value check for untyped atomic values.
UserDefinedFunction
ValueComparison
Variable: An XQuery/XPath variable, consisting of a QName and a value.
VariableDeclaration: A global variable declaration (with: declare variable).
VariableReference: Represents a reference to an in-scope variable.
XPathUtil
XQuery
XQueryContext: The current XQuery execution context.
XQueryWatchDog

Exception Summary
StaticXQueryException
TerminatedException
TerminatedException.SizeLimitException
TerminatedException.TimeoutException
XPathException

## Package org.exist.xquery Description

Classes that implement the XQuery/XPath execution model. Every query is translated into a graph of expression objects which can be repeatedly executed.

The base class for all expression objects is `Expression`.

Copyright (C) Wolfgang Meier. All rights reserved.