| AbstractQuery | 
 The AbstractQuery interface defines functionality that is common
 to both top-level queries and subqueries. 
 | 
| CollectionJoin | 
 The CollectionJoin interface is the type of the result of
 joining to a collection over an association or element 
 collection that has been specified as a java.util.Collection. 
 | 
| CommonAbstractCriteria | 
 The CommonAbstractCriteria interface defines functionality 
 that is common to both top-level criteria queries and subqueries as 
 well as to update and delete criteria operations. 
 | 
| CompoundSelection | 
 The CompoundSelection interface defines a compound selection item
 (tuple, array, or result of constructor). 
 | 
| CriteriaBuilder.Case | 
 Interface used to build general case expressions. 
 | 
| CriteriaBuilder.Coalesce | 
 Interface used to build coalesce expressions. 
 | 
| CriteriaBuilder.In | 
 Interface used to build in predicates. 
 | 
| CriteriaBuilder.SimpleCase | 
 Interface used to build simple case expressions. 
 | 
| CriteriaBuilder.Trimspec | 
 Used to specify how strings are trimmed. 
 | 
| CriteriaDelete | 
 The CriteriaDelete interface defines functionality for performing
 bulk delete operations using the Criteria API 
 | 
| CriteriaQuery | 
 The CriteriaQuery interface defines functionality that is specific 
 to top-level queries. 
 | 
| CriteriaUpdate | 
 The CriteriaUpdate interface defines functionality for performing
 bulk update operations using the Criteria API. 
 | 
| Expression | 
 Type for query expressions. 
 | 
| Fetch | 
 Represents a join-fetched association or attribute. 
 | 
| FetchParent | 
 Represents an element of the from clause which may
 function as the parent of Fetches. 
 | 
| From | 
 Represents a bound type, usually an entity that appears in
 the from clause, but may also be an embeddable belonging to
 an entity in the from clause. 
 | 
| Join | 
 A join to an entity, embeddable, or basic type. 
 | 
| JoinType | 
 Defines the three types of joins. 
 | 
| ListJoin | 
 The ListJoin interface is the type of the result of
 joining to a collection over an association or element 
 collection that has been specified as a java.util.List. 
 | 
| MapJoin | 
 The MapJoin interface is the type of the result of
 joining to a collection over an association or element 
 collection that has been specified as a java.util.Map. 
 | 
| Order | 
 An object that defines an ordering over the query results. 
 | 
| ParameterExpression | 
 Type of criteria query parameter expressions. 
 | 
| Path | 
 Represents a simple or compound attribute path from a 
 bound type or collection, and is a "primitive" expression. 
 | 
| PluralJoin | 
 The PluralJoin interface defines functionality
 that is common to joins to all collection types. 
 | 
| Predicate | 
 The type of a simple or compound predicate: a conjunction or
 disjunction of restrictions. 
 | 
| Predicate.BooleanOperator | 
  | 
| Root | 
 A root type in the from clause. 
 | 
| Selection | 
 The Selection interface defines an item that is to be
 returned in a query result. 
 | 
| SetJoin | 
 The SetJoin interface is the type of the result of
 joining to a collection over an association or element 
 collection that has been specified as a java.util.Set. 
 | 
| Subquery | 
 The Subquery interface defines functionality that is 
 specific to subqueries. 
 |