Package org.modeshape.graph.query.model

The Abstract Query Model is a vocabulary that can be used to construct a language-neutral representation of a query.

See:
          Description


Interface Summary
Command Represents the abstract base class for all top-level language objects that are the root of a language object tree.
Constraint Represents the abstract base class for all constraints.
DynamicOperand A dynamic operand used in a Comparison constraint.
FullTextSearch.Term The general notion of a term that makes up a full-text search.
JoinCondition The condition used for a join between two sources.
LanguageObject A common interface for all query language objects.
QueryCommand Represents the abstract base class for all query commands.
Readable  
Source The source that represents a set of node tuples.
StaticOperand A static operand used in a Comparison constraint.
TypeSystem An interface that defines the value types used in tuples.
TypeSystem.TypeFactory<T> Factory interface for creating values from strings.
Visitable An interface called by a visitor when that visitor is visiting the node.
Visitor The basic interface for all query visitor implementations.
 

Class Summary
AllNodes A selector that represents a source that returns all nodes.
And A constraint that evaluates to true when both of the other constraints evaluate to true.
ArithmeticOperand A dynamic operand that represents a (binary) arithmetic operation upon one or more other operands, used in Comparison and Ordering components.
Between A constraint that evaluates to true when the value defined by the dynamic operand evaluates to be within the specified range.
BindVariableName A value bound to a variable name used in a Comparison constraint.
ChildNode A constraint requiring that the selected node is a child of the node reachable by the supplied absolute path
ChildNodeJoinCondition A join condition that evaluates to true only when the named child node is indeed a child of the named parent node.
Column  
Comparison A constraint that evaluates to true when the defined operation evaluates to true.
DescendantNode A constraint requiring that the selected node is a descendant of the node reachable by the supplied absolute path
DescendantNodeJoinCondition A join condition that evaluates to true only when the named node is a descendant of another named node.
EquiJoinCondition A join condition that tests whether a property on a node is equal to a property on another node.
FullTextSearch A constraint that evaluates to true only when a full-text search applied to the search scope results in positive findings.
FullTextSearch.CompoundTerm A list of FullTextSearch.Terms.
FullTextSearch.Conjunction A set of FullTextSearch.Terms that are ANDed together.
FullTextSearch.Disjunction A set of FullTextSearch.Terms that are ORed together.
FullTextSearch.NegationTerm A FullTextSearch.Term that represents a search term that requires another term to not appear.
FullTextSearch.SimpleTerm A FullTextSearch.Term that represents a single search term.
FullTextSearchScore A dynamic operand that evaluates to the full-text search score of a node given by a selector, used in a Comparison constraint and Orderings.
Join  
Length A dynamic operand that evaluates to the length of the supplied propety values, used in a Comparison constraint.
Limit  
Literal A literal value used in a Comparison constraint.
LowerCase A dynamic operand that evaluates to the lower-case representation of the supplied operand, used in a Comparison constraint.
NamedSelector  
NodeDepth A dynamic operand that evaluates to the depth of a node given by a selector, used in a Comparison constraint.
NodeLocalName A dynamic operand that evaluates to the local name of a node given by a selector, used in a Comparison constraint.
NodeName A dynamic operand that evaluates to the qualified name of a node given by a selector, used in a Comparison constraint.
NodePath A dynamic operand that evaluates to the path of a node given by a selector, used in a Comparison constraint.
Not A constraint that negates another constraint.
Or A constraint that evaluates to true when either of the other constraints evaluates to true.
Ordering A specification of the ordering for the results.
PropertyExistence A constraint that evaluates to true only when a named property exists on a node.
PropertyValue A dynamic operand that evaluates to the value(s) of a property on a selector, used in a Comparison constraint.
Query  
ReferenceValue A dynamic operand that evaluates to the value(s) of a single or any reference property on a selector, used in a Comparison constraint.
SameNode A constraint requiring that the selected node is reachable by the supplied absolute path
SameNodeJoinCondition A join condition that tests whether two nodes are the same nodes (that is, have the same identifier or have the same relative path from the nearest ancestor with an identifiers).
Selector  
SelectorName A representation of a qualified or expanded name.
SetCriteria A constraint that evaluates to true when the defined operation evaluates to true.
SetQuery This object acts as a Set operator on multiple queries, such as performing UNION, INTERSECT, and EXCEPT operations.
UpperCase A dynamic operand that evaluates to the upper-case representation of the supplied operand, used in a Comparison constraint.
Visitors A set of common visitors that can be reused or extended, and methods that provide easy construction and calling of visitors.
Visitors.AbstractVisitor A common base class for all visitors, which provides no-op implementations for all visit(...) methods.
Visitors.NavigationVisitor An abstract visitor implementation that performs navigation of the query object.
Visitors.ReadableVisitor  
Visitors.WalkAllVisitor A visitor implementation that walks the entire query object tree and delegates to another supplied visitor to do the actual work.
 

Enum Summary
ArithmeticOperator The arithmetic operators.
ArithmeticOperator.Arity  
JoinType  
Operator  
Order  
SetQuery.Operation  
 

Package org.modeshape.graph.query.model Description

The Abstract Query Model is a vocabulary that can be used to construct a language-neutral representation of a query. It consists of a family of Java classes each represent the important semantic elements needed to fully define a query. A QueryCommand is the interface that represents a top-level query, with the Query and SetQuery classes being the two implementations.

There are two ways to construct abstract query models. The first is to programmatically construct a query model using the QueryBuilder, which provides a fluent API that makes it easy to create a query with Java code. The second (and more common) approach is to use a QueryParser that parses a query represented in a specific language (like SQL or XPath) and then creates the query's equivalent abstract query model.

The abstract query model classes are immutable, making them very easily shared or reused if that is advantageous.



Copyright © 2008-2010 JBoss, a division of Red Hat. All Rights Reserved.