## Uses of Class
org.apache.cayenne.exp.Expression

- Packages that use Expression
  Package | Description
  --- | ---
  org.apache.cayenne.access.translator.select |
  org.apache.cayenne.dba.db2 | IBM DB2 DbAdapter.
  org.apache.cayenne.dba.derby | Apache Derby DbAdapter.
  org.apache.cayenne.dba.firebird |
  org.apache.cayenne.dba.frontbase | FrontBase DbAdapter.
  org.apache.cayenne.dba.openbase | OpenBase DbAdapter.
  org.apache.cayenne.dba.oracle | Oracle DbAdapter.
  org.apache.cayenne.dba.postgres | PostgreSQL DbAdapter.
  org.apache.cayenne.dba.sqlite |
  org.apache.cayenne.dba.sybase | Sybase DbAdapter.
  org.apache.cayenne.exp | Cayenne data expression classes.
  org.apache.cayenne.exp.parser | Contains expression parser and other expression internals.
  org.apache.cayenne.map | Contains O/R mapping classes that store relational database metadata information and map it to Java classes.
  org.apache.cayenne.query | Defines standard queries supported by Cayenne and extension mechanism to create custom queries.
  org.apache.cayenne.reflect |

- - ### Uses of Expression in org.apache.cayenne.access.translator.select

    Fields in org.apache.cayenne.access.translator.select declared as Expression
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected Expression` | DataObjectMatchTranslator.`expression` |
    `protected Expression` | QualifierTranslator.`qualifier` |
    `protected Expression` | QualifierTranslator.`waitingForEndNode` |

    Methods in org.apache.cayenne.access.translator.select that return Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected Expression` | QualifierTranslator.`extractQualifier()` |
    `Expression` | DataObjectMatchTranslator.`getExpression()` |

    Methods in org.apache.cayenne.access.translator.select with parameters of type Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | QueryAssemblerHelper.`appendDbPath​(Expression pathExp)` |
    `protected void` | OrderingTranslator.`appendFunction​(Expression exp)` |
    `protected void` | QualifierTranslator.`appendLiteral​(Object val, DbAttribute attr, Expression parentExpression)` |
    `protected void` | QueryAssemblerHelper.`appendLiteral​(Object val, DbAttribute attr, Expression parentExpression)` | Appends SQL code to the query buffer to handle `val` as a parameter to the PreparedStatement being built.
    `protected void` | QueryAssemblerHelper.`appendLiteralDirect​(Object val, DbAttribute attr, Expression parentExpression)` | Appends SQL code to the query buffer to handle `val` as a parameter to the PreparedStatement being built.
    `protected void` | QueryAssemblerHelper.`appendObjPath​(Expression pathExp)` | Processes parts of the OBJ_PATH expression.
    `protected void` | QualifierTranslator.`detectObjectMatch​(Expression exp)` | Called before processing an expression to initialize objectMatchTranslator if needed.
    `protected void` | QualifierTranslator.`doAppendPart​(Expression rootNode)` | Translates query qualifier to SQL WHERE clause.
    `void` | QualifierTranslator.`endNode​(Expression node, Expression parentNode)` |
    `void` | QualifierTranslator.`finishedChild​(Expression node, int childIndex, boolean hasMoreChildren)` |
    `String` | DefaultSelectTranslator.`getAliasForExpression​(Expression exp)` |
    `abstract String` | QueryAssembler.`getAliasForExpression​(Expression exp)` |
    `void` | QualifierTranslator.`objectNode​(Object leaf, Expression parentNode)` |
    `protected DbAttribute` | QueryAssemblerHelper.`paramsDbType​(Expression e)` | Returns database type of expression parameters or null if it can not be determined.
    `protected boolean` | QualifierTranslator.`parenthesisNeeded​(Expression node, Expression parentNode)` |
    `protected void` | QueryAssemblerHelper.`processColumnWithQuoteSqlIdentifiers​(DbAttribute dbAttr, Expression pathExp)` |
    `protected void` | TrimmingQualifierTranslator.`processColumnWithQuoteSqlIdentifiers​(DbAttribute dbAttr, Expression pathExp)` | Adds special handling of CHAR columns.
    `void` | DataObjectMatchTranslator.`setExpression​(Expression expression)` |
    `void` | QualifierTranslator.`setQualifier​(Expression qualifier)` | Explicitly set qualifier.
    `void` | QualifierTranslator.`startNode​(Expression node, Expression parentNode)` |

  - ### Uses of Expression in org.apache.cayenne.dba.db2

    Methods in org.apache.cayenne.dba.db2 with parameters of type Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | DB2QualifierTranslator.`appendLiteralDirect​(Object val, DbAttribute attr, Expression parentExpression)` |
    `protected void` | DB2QualifierTranslator.`processColumnWithQuoteSqlIdentifiers​(DbAttribute dbAttr, Expression pathExp)` |

  - ### Uses of Expression in org.apache.cayenne.dba.derby

    Methods in org.apache.cayenne.dba.derby with parameters of type Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | DerbyQualifierTranslator.`processColumnWithQuoteSqlIdentifiers​(DbAttribute dbAttr, Expression pathExp)` |

  - ### Uses of Expression in org.apache.cayenne.dba.firebird

    Methods in org.apache.cayenne.dba.firebird with parameters of type Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | FirebirdQualifierTranslator.`doAppendPart​(Expression rootNode)` |
    `protected boolean` | FirebirdQualifierTranslator.`parenthesisNeeded​(Expression node, Expression parentNode)` |

  - ### Uses of Expression in org.apache.cayenne.dba.frontbase

    Methods in org.apache.cayenne.dba.frontbase with parameters of type Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected boolean` | FrontBaseQualifierTranslator.`parenthesisNeeded​(Expression node, Expression parentNode)` |

  - ### Uses of Expression in org.apache.cayenne.dba.openbase

    Methods in org.apache.cayenne.dba.openbase with parameters of type Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | OpenBaseQualifierTranslator.`appendLiteralDirect​(Object val, DbAttribute attr, Expression parentExpression)` |
    `void` | OpenBaseQualifierTranslator.`endNode​(Expression node, Expression parentNode)` |
    `void` | OpenBaseQualifierTranslator.`finishedChild​(Expression node, int childIndex, boolean hasMoreChildren)` |
    `void` | OpenBaseQualifierTranslator.`startNode​(Expression node, Expression parentNode)` |

  - ### Uses of Expression in org.apache.cayenne.dba.oracle

    Methods in org.apache.cayenne.dba.oracle that return Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `Expression` | OracleQualifierTranslator.INTrimmer.`trimmedInExpression​(Expression exp, int maxInSize)` |

    Methods in org.apache.cayenne.dba.oracle with parameters of type Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | OracleQualifierTranslator.`doAppendPart​(Expression rootNode)` |
    `void` | OracleQualifierTranslator.`endNode​(Expression node, Expression parentNode)` |
    `protected boolean` | OracleQualifierTranslator.`parenthesisNeeded​(Expression node, Expression parentNode)` |
    `Expression` | OracleQualifierTranslator.INTrimmer.`trimmedInExpression​(Expression exp, int maxInSize)` |

  - ### Uses of Expression in org.apache.cayenne.dba.postgres

    Methods in org.apache.cayenne.dba.postgres with parameters of type Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | PostgresQualifierTranslator.`endNode​(Expression node, Expression parentNode)` |
    `void` | PostgresQualifierTranslator.`finishedChild​(Expression node, int childIndex, boolean hasMoreChildren)` |
    `protected boolean` | PostgresQualifierTranslator.`parenthesisNeeded​(Expression node, Expression parentNode)` |
    `void` | PostgresQualifierTranslator.`startNode​(Expression node, Expression parentNode)` |

  - ### Uses of Expression in org.apache.cayenne.dba.sqlite

    Methods in org.apache.cayenne.dba.sqlite with parameters of type Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | SQLiteQualifierTranslator.`endNode​(Expression node, Expression parentNode)` |
    `protected boolean` | SQLiteQualifierTranslator.`parenthesisNeeded​(Expression node, Expression parentNode)` |

  - ### Uses of Expression in org.apache.cayenne.dba.sybase

    Methods in org.apache.cayenne.dba.sybase with parameters of type Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected boolean` | SybaseQualifierTranslator.`parenthesisNeeded​(Expression node, Expression parentNode)` |

  - ### Uses of Expression in org.apache.cayenne.exp

    Methods in org.apache.cayenne.exp that return Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `static Expression` | FunctionExpressionFactory.`absExp​(String path)` |
    `static Expression` | FunctionExpressionFactory.`absExp​(Expression exp)` |
    `static Expression` | ExpressionFactory.`and​(Collection<Expression> expressions)` |
    `static Expression` | ExpressionFactory.`and​(Expression... expressions)` |
    `Expression` | Expression.`andExp​(Expression exp)` | Chains this expression with another expression using "and".
    `Expression` | Expression.`andExp​(Expression exp, Expression... expressions)` | Chains this expression with other expressions using "and".
    `static Expression` | FunctionExpressionFactory.`avgExp​(Expression exp)` |
    `Expression` | Property.`between​(E lower, E upper)` |
    `static Expression` | ExpressionFactory.`betweenDbExp​(String pathSpec, Object value1, Object value2)` | A convenience shortcut for building BETWEEN expressions.
    `static Expression` | ExpressionFactory.`betweenExp​(String pathSpec, Object value1, Object value2)` | A convenience shortcut for building BETWEEN expressions.
    `static Expression` | FunctionExpressionFactory.`concatExp​(String... paths)` | Factory method for expression to call CONCAT(string1, string2, ...) function
    `static Expression` | FunctionExpressionFactory.`concatExp​(Expression... expressions)` | Factory method for expression to call CONCAT(string1, string2, ...) function
    `Expression` | Property.`contains​(String substring)` | Creates an expression for a database "LIKE" query with the value converted to a pattern matching anywhere in the String.
    `static Expression` | ExpressionFactory.`containsExp​(String pathSpec, String value)` |
    `Expression` | Property.`containsIgnoreCase​(String value)` | Same as `Property.contains(String)`, only using case-insensitive comparison.
    `static Expression` | ExpressionFactory.`containsIgnoreCaseExp​(String pathSpec, String value)` | Same as `ExpressionFactory.containsExp(String, String)` only using case-insensitive comparison.
    `static Expression` | FunctionExpressionFactory.`countDistinctExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`countExp()` |
    `static Expression` | FunctionExpressionFactory.`countExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`currentDate()` |
    `static Expression` | FunctionExpressionFactory.`currentTime()` |
    `static Expression` | FunctionExpressionFactory.`currentTimestamp()` |
    `static Expression` | FunctionExpressionFactory.`dayOfMonthExp​(String path)` |
    `static Expression` | FunctionExpressionFactory.`dayOfMonthExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`dayOfWeekExp​(String path)` |
    `static Expression` | FunctionExpressionFactory.`dayOfWeekExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`dayOfYearExp​(String path)` |
    `static Expression` | FunctionExpressionFactory.`dayOfYearExp​(Expression exp)` |
    `static Expression` | ExpressionFactory.`dbPathExp​(String pathSpec)` |
    `Expression` | Expression.`deepCopy()` | Clones this expression.
    `Expression` | Property.`endsWith​(String value)` | Creates an expression for a database "LIKE" query with the value converted to a pattern matching the tail of a String.
    `static Expression` | ExpressionFactory.`endsWithExp​(String pathSpec, String value)` |
    `Expression` | Property.`endsWithIgnoreCase​(String value)` | Same as `Property.endsWith(String)`, only using case-insensitive comparison.
    `static Expression` | ExpressionFactory.`endsWithIgnoreCaseExp​(String pathSpec, String value)` | Same as `ExpressionFactory.endsWithExp(String, String)` only using case-insensitive comparison.
    `Expression` | Property.`eq​(E value)` |
    `Expression` | Property.`eq​(Property<?> value)` |
    `static Expression` | ExpressionFactory.`exp​(String expressionString, Object... parameters)` | Parses string, converting it to Expression and optionally binding positional parameters.
    `static Expression` | ExpressionFactory.`expFalse()` | A convenience shortcut for boolean false expression.
    `static Expression` | ExpressionFactory.`expressionOfType​(int type)` | Creates a new expression for the type requested.
    `static Expression` | ExpressionFactory.`expTrue()` | A convenience shortcut for boolean true expression.
    `static Expression` | ExpressionFactory.`fullObjectExp()` |
    `static Expression` | ExpressionFactory.`fullObjectExp​(Expression exp)` |
    `Expression` | Property.`getExpression()` | This method returns fresh copy of the expression for each call.
    `static Expression` | ExpressionFactory.`greaterDbExp​(String pathSpec, Object value)` | A convenience method to create an DB_PATH "greater than" expression.
    `static Expression` | ExpressionFactory.`greaterExp​(String pathSpec, Object value)` | A convenience method to create an OBJ_PATH "greater than" expression.
    `static Expression` | ExpressionFactory.`greaterOrEqualDbExp​(String pathSpec, Object value)` | A convenience method to create an DB_PATH "greater than or equal to" expression.
    `static Expression` | ExpressionFactory.`greaterOrEqualExp​(String pathSpec, Object value)` | A convenience method to create an OBJ_PATH "greater than or equal to" expression.
    `Expression` | Property.`gt​(E value)` |
    `Expression` | Property.`gt​(Property<?> value)` |
    `Expression` | Property.`gte​(E value)` |
    `Expression` | Property.`gte​(Property<?> value)` |
    `static Expression` | FunctionExpressionFactory.`hourExp​(String path)` |
    `static Expression` | FunctionExpressionFactory.`hourExp​(Expression exp)` |
    `Expression` | Property.`in​(E firstValue, E... moreValues)` |
    `Expression` | Property.`in​(Collection<E> values)` |
    `static Expression` | ExpressionFactory.`inDbExp​(String pathSpec, Object... values)` | A convenience shortcut for building IN DB expression.
    `static Expression` | ExpressionFactory.`inDbExp​(String pathSpec, Collection<?> values)` | A convenience shortcut for building IN DB expression.
    `static Expression` | ExpressionFactory.`inExp​(String pathSpec, Object... values)` | A convenience shortcut for building IN expression.
    `static Expression` | ExpressionFactory.`inExp​(String pathSpec, Collection<?> values)` | A convenience shortcut for building IN expression.
    `Expression` | Property.`isFalse()` |
    `Expression` | Property.`isNotNull()` |
    `Expression` | Property.`isNull()` |
    `Expression` | Property.`isTrue()` |
    `Expression` | Expression.`joinExp​(int type, Expression exp)` | Creates a new expression that joins this object with another expression, using specified join type.
    `Expression` | Expression.`joinExp​(int type, Expression exp, Expression... expressions)` | Creates a new expression that joins this object with other expressions, using specified join type.
    `static Expression` | ExpressionFactory.`joinExp​(int type, Collection<Expression> expressions)` | Joins all expressions, making a single expression.
    `static Expression` | ExpressionFactory.`joinExp​(int type, Expression... expressions)` | Joins all expressions, making a single expression.
    `static Expression` | FunctionExpressionFactory.`lengthExp​(String path)` |
    `static Expression` | FunctionExpressionFactory.`lengthExp​(Expression exp)` |
    `static Expression` | ExpressionFactory.`lessDbExp​(String pathSpec, Object value)` | A convenience method to create an DB_PATH "less than" expression.
    `static Expression` | ExpressionFactory.`lessExp​(String pathSpec, Object value)` | A convenience method to create an OBJ_PATH "less than" expression.
    `static Expression` | ExpressionFactory.`lessOrEqualDbExp​(String pathSpec, Object value)` | A convenience method to create an DB_PATH "less than or equal to" expression.
    `static Expression` | ExpressionFactory.`lessOrEqualExp​(String pathSpec, Object value)` | A convenience method to create an OBJ_PATH "less than or equal to" expression.
    `Expression` | Property.`like​(String pattern)` |
    `Expression` | Property.`like​(String pattern, char escapeChar)` |
    `static Expression` | ExpressionFactory.`likeDbExp​(String pathSpec, Object value)` | A convenience shortcut for building LIKE DB_PATH expression.
    `static Expression` | ExpressionFactory.`likeDbExp​(String pathSpec, Object value, char escapeChar)` | A convenience shortcut for building LIKE DB_PATH expression.
    `static Expression` | ExpressionFactory.`likeExp​(String pathSpec, Object value)` | A convenience shortcut for building LIKE expression.
    `static Expression` | ExpressionFactory.`likeExp​(String pathSpec, Object value, char escapeChar)` | A convenience shortcut for building LIKE expression.
    `Expression` | Property.`likeIgnoreCase​(String pattern)` |
    `static Expression` | ExpressionFactory.`likeIgnoreCaseDbExp​(String pathSpec, Object value)` | A convenience shortcut for building LIKE_IGNORE_CASE expression.
    `static Expression` | ExpressionFactory.`likeIgnoreCaseDbExp​(String pathSpec, Object value, char escapeChar)` | A convenience shortcut for building LIKE_IGNORE_CASE expression.
    `static Expression` | ExpressionFactory.`likeIgnoreCaseExp​(String pathSpec, Object value)` | A convenience shortcut for building LIKE_IGNORE_CASE expression.
    `static Expression` | ExpressionFactory.`likeIgnoreCaseExp​(String pathSpec, Object value, char escapeChar)` | A convenience shortcut for building LIKE_IGNORE_CASE expression.
    `static Expression` | FunctionExpressionFactory.`locateExp​(String substring, String path)` | Call LOCATE(substring, string) function that return position of substring in string or 0 if it is not found.
    `static Expression` | FunctionExpressionFactory.`locateExp​(String substring, Expression exp)` | Call LOCATE(substring, string) function that return position of substring in string or 0 if it is not found.
    `static Expression` | FunctionExpressionFactory.`locateExp​(Expression substring, Expression exp)` | Call LOCATE(substring, string) function that return position of substring in string or 0 if it is not found.
    `static Expression` | FunctionExpressionFactory.`lowerExp​(String path)` |
    `static Expression` | FunctionExpressionFactory.`lowerExp​(Expression exp)` |
    `Expression` | Property.`lt​(E value)` |
    `Expression` | Property.`lt​(Property<?> value)` |
    `Expression` | Property.`lte​(E value)` |
    `Expression` | Property.`lte​(Property<?> value)` |
    `static Expression` | ExpressionFactory.`matchAllDbExp​(Map<String,​?> map, int pairType)` | Creates an expression that matches all key-values pairs in `map`.
    `static Expression` | ExpressionFactory.`matchAllExp​(String path, Object... values)` |
    `static Expression` | ExpressionFactory.`matchAllExp​(String path, Collection<?> values)` | Creates an expression to match a collection of values against a single path expression.
    `static Expression` | ExpressionFactory.`matchAllExp​(Map<String,​?> map, int pairType)` | Creates an expression that matches all key-values pairs in `map`.
    `static Expression` | ExpressionFactory.`matchAnyDbExp​(Map<String,​?> map, int pairType)` | Creates an expression that matches any of the key-values pairs in `map`.
    `static Expression` | ExpressionFactory.`matchAnyExp​(List<? extends Persistent> objects)` | Creates an expression that matches any of the objects contained in the list `objects`
    `static Expression` | ExpressionFactory.`matchAnyExp​(Map<String,​?> map, int pairType)` | Creates an expression that matches any of the key-values pairs in the `map`.
    `static Expression` | ExpressionFactory.`matchAnyExp​(Persistent... objects)` | Creates an expression that matches any of the objects contained in the `objects` array
    `static Expression` | ExpressionFactory.`matchDbExp​(String pathSpec, Object value)` | A convenience method to create an DB_PATH "equal to" expression.
    `static Expression` | ExpressionFactory.`matchExp​(String pathSpec, Object value)` | A convenience method to create an OBJ_PATH "equal to" expression.
    `static Expression` | ExpressionFactory.`matchExp​(Persistent object)` | Creates an expression that matches the primary key of object in `ObjectId`'s `IdSnapshot` for the argument `object`.
    `static Expression` | FunctionExpressionFactory.`maxExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`minExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`minuteExp​(String path)` |
    `static Expression` | FunctionExpressionFactory.`minuteExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`modExp​(String path, Number number)` |
    `static Expression` | FunctionExpressionFactory.`modExp​(Expression exp, Number number)` |
    `static Expression` | FunctionExpressionFactory.`modExp​(Expression exp, Expression number)` |
    `static Expression` | FunctionExpressionFactory.`monthExp​(String path)` |
    `static Expression` | FunctionExpressionFactory.`monthExp​(Expression exp)` |
    `Expression` | Property.`ne​(E value)` |
    `Expression` | Property.`ne​(Property<?> value)` |
    `Expression` | Property.`nin​(E firstValue, E... moreValues)` |
    `Expression` | Property.`nin​(Collection<E> values)` |
    `Expression` | Property.`nlike​(String value)` |
    `Expression` | Property.`nlikeIgnoreCase​(String value)` |
    `static Expression` | ExpressionFactory.`noMatchDbExp​(String pathSpec, Object value)` | A convenience method to create an DB_PATH "not equal to" expression.
    `static Expression` | ExpressionFactory.`noMatchExp​(String pathSpec, Object value)` | A convenience method to create an OBJ_PATH "not equal to" expression.
    `static Expression` | ExpressionFactory.`notBetweenDbExp​(String pathSpec, Object value1, Object value2)` | A convenience shortcut for building NOT_BETWEEN expressions.
    `static Expression` | ExpressionFactory.`notBetweenExp​(String pathSpec, Object value1, Object value2)` | A convenience shortcut for building NOT_BETWEEN expressions.
    `abstract Expression` | Expression.`notExp()` | Returns a logical NOT of current expression.
    `static Expression` | ExpressionFactory.`notInDbExp​(String pathSpec, Object... values)` | A convenience shortcut for building NOT_IN expression.
    `static Expression` | ExpressionFactory.`notInDbExp​(String pathSpec, Collection<?> values)` | A convenience shortcut for building NOT_IN expression.
    `static Expression` | ExpressionFactory.`notInExp​(String pathSpec, Object... values)` | A convenience shortcut for building NOT_IN expression.
    `static Expression` | ExpressionFactory.`notInExp​(String pathSpec, Collection<?> values)` | A convenience shortcut for building NOT_IN expression.
    `static Expression` | ExpressionFactory.`notLikeDbExp​(String pathSpec, Object value)` | A convenience shortcut for building NOT_LIKE expression.
    `static Expression` | ExpressionFactory.`notLikeDbExp​(String pathSpec, Object value, char escapeChar)` | A convenience shortcut for building NOT_LIKE expression.
    `static Expression` | ExpressionFactory.`notLikeExp​(String pathSpec, Object value)` | A convenience shortcut for building NOT_LIKE expression.
    `static Expression` | ExpressionFactory.`notLikeExp​(String pathSpec, Object value, char escapeChar)` | A convenience shortcut for building NOT_LIKE expression.
    `static Expression` | ExpressionFactory.`notLikeIgnoreCaseDbExp​(String pathSpec, Object value)` | A convenience shortcut for building NOT_LIKE_IGNORE_CASE expression.
    `static Expression` | ExpressionFactory.`notLikeIgnoreCaseDbExp​(String pathSpec, Object value, char escapeChar)` | A convenience shortcut for building NOT_LIKE_IGNORE_CASE expression.
    `static Expression` | ExpressionFactory.`notLikeIgnoreCaseExp​(String pathSpec, Object value)` | A convenience shortcut for building NOT_LIKE_IGNORE_CASE expression.
    `static Expression` | ExpressionFactory.`notLikeIgnoreCaseExp​(String pathSpec, Object value, char escapeChar)` | A convenience shortcut for building NOT_LIKE_IGNORE_CASE expression.
    `static Expression` | ExpressionFactory.`or​(Collection<Expression> expressions)` |
    `static Expression` | ExpressionFactory.`or​(Expression... expressions)` |
    `Expression` | Expression.`orExp​(Expression exp)` | Chains this expression with another expression using "or".
    `Expression` | Expression.`orExp​(Expression exp, Expression... expressions)` | Chains this expression with other expressions using "or".
    `Expression` | Expression.`params​(Map<String,​?> parameters)` | Creates and returns a new Expression instance based on this expression, but with named parameters substituted with provided values.
    `Expression` | Expression.`params​(Map<String,​?> parameters, boolean pruneMissing)` | Creates and returns a new Expression instance based on this expression, but with named parameters substituted with provided values.If any subexpressions containing parameters not matching the "name" argument are found, the behavior depends on "pruneMissing" argument.
    `Expression` | Expression.`paramsArray​(Object... parameters)` | Creates and returns a new Expression instance based on this expression, but with parameters substituted with provided values.
    `Expression` | Property.`path()` | Converts this property to a path expression.
    `static Expression` | ExpressionFactory.`pathExp​(String pathSpec)` |
    `static Expression` | FunctionExpressionFactory.`secondExp​(String path)` |
    `static Expression` | FunctionExpressionFactory.`secondExp​(Expression exp)` |
    `abstract Expression` | Expression.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `static Expression` | FunctionExpressionFactory.`sqrtExp​(String path)` |
    `static Expression` | FunctionExpressionFactory.`sqrtExp​(Expression exp)` |
    `Expression` | Property.`startsWith​(String value)` | Creates an expression for a database "LIKE" query with the value converted to a pattern matching the beginning of a String.
    `static Expression` | ExpressionFactory.`startsWithExp​(String pathSpec, String value)` |
    `Expression` | Property.`startsWithIgnoreCase​(String value)` | Same as `Property.startsWith(String)`, only using case-insensitive comparison.
    `static Expression` | ExpressionFactory.`startsWithIgnoreCaseExp​(String pathSpec, String value)` | Same as `ExpressionFactory.startsWithExp(String, String)` only using case-insensitive comparison.
    `static Expression` | FunctionExpressionFactory.`substringExp​(String path, int offset, int length)` | Call SUBSTRING(string, offset, length) function
    `static Expression` | FunctionExpressionFactory.`substringExp​(Expression exp, int offset, int length)` | Call SUBSTRING(string, offset, length) function
    `static Expression` | FunctionExpressionFactory.`substringExp​(Expression exp, Expression offset, Expression length)` | Call SUBSTRING(string, offset, length) function
    `static Expression` | FunctionExpressionFactory.`sumExp​(Expression exp)` |
    `Expression` | Expression.`transform​(Function<Object,​Object> transformer)` | Creates a transformed copy of this expression, applying transformation provided by Transformer to all its nodes.
    `static Expression` | FunctionExpressionFactory.`trimExp​(String path)` |
    `static Expression` | FunctionExpressionFactory.`trimExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`upperExp​(String path)` |
    `static Expression` | FunctionExpressionFactory.`upperExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`weekExp​(String path)` |
    `static Expression` | FunctionExpressionFactory.`weekExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`yearExp​(String path)` |
    `static Expression` | FunctionExpressionFactory.`yearExp​(Expression exp)` |

    Methods in org.apache.cayenne.exp with parameters of type Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `static Expression` | FunctionExpressionFactory.`absExp​(Expression exp)` |
    `static Expression` | ExpressionFactory.`and​(Expression... expressions)` |
    `Expression` | Expression.`andExp​(Expression exp)` | Chains this expression with another expression using "and".
    `Expression` | Expression.`andExp​(Expression exp, Expression... expressions)` | Chains this expression with other expressions using "and".
    `static Expression` | FunctionExpressionFactory.`avgExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`concatExp​(Expression... expressions)` | Factory method for expression to call CONCAT(string1, string2, ...) function
    `static Expression` | FunctionExpressionFactory.`countDistinctExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`countExp​(Expression exp)` |
    `static <T> Property<T>` | Property.`create​(String name, Expression expression, Class<? super T> type)` | Creates property with name, expression and type
    `static <T> Property<T>` | Property.`create​(Expression expression, Class<? super T> type)` | Creates property with expression and type
    `static Expression` | FunctionExpressionFactory.`dayOfMonthExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`dayOfWeekExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`dayOfYearExp​(Expression exp)` |
    `void` | TraversalHandler.`endNode​(Expression node, Expression parentNode)` | Called during the traversal after an expression node children processing is finished.
    `void` | TraversalHelper.`endNode​(Expression node, Expression parentNode)` |
    `void` | TraversalHandler.`finishedChild​(Expression node, int childIndex, boolean hasMoreChildren)` | Called during traversal after a child of expression has been visited.
    `void` | TraversalHelper.`finishedChild​(Expression node, int childIndex, boolean hasMoreChildren)` |
    `static Expression` | ExpressionFactory.`fullObjectExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`hourExp​(Expression exp)` |
    `Expression` | Expression.`joinExp​(int type, Expression exp)` | Creates a new expression that joins this object with another expression, using specified join type.
    `Expression` | Expression.`joinExp​(int type, Expression exp, Expression... expressions)` | Creates a new expression that joins this object with other expressions, using specified join type.
    `static Expression` | ExpressionFactory.`joinExp​(int type, Expression... expressions)` | Joins all expressions, making a single expression.
    `static Expression` | FunctionExpressionFactory.`lengthExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`locateExp​(String substring, Expression exp)` | Call LOCATE(substring, string) function that return position of substring in string or 0 if it is not found.
    `static Expression` | FunctionExpressionFactory.`locateExp​(Expression substring, Expression exp)` | Call LOCATE(substring, string) function that return position of substring in string or 0 if it is not found.
    `static Expression` | FunctionExpressionFactory.`lowerExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`maxExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`minExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`minuteExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`modExp​(Expression exp, Number number)` |
    `static Expression` | FunctionExpressionFactory.`modExp​(Expression exp, Expression number)` |
    `static Expression` | FunctionExpressionFactory.`monthExp​(Expression exp)` |
    `void` | TraversalHandler.`objectNode​(Object leaf, Expression parentNode)` | Called during the traversal when a leaf non-expression node is encountered.
    `void` | TraversalHelper.`objectNode​(Object leaf, Expression parentNode)` |
    `static Expression` | ExpressionFactory.`or​(Expression... expressions)` |
    `Expression` | Expression.`orExp​(Expression exp)` | Chains this expression with another expression using "or".
    `Expression` | Expression.`orExp​(Expression exp, Expression... expressions)` | Chains this expression with other expressions using "or".
    `static Expression` | FunctionExpressionFactory.`secondExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`sqrtExp​(Expression exp)` |
    `void` | TraversalHandler.`startNode​(Expression node, Expression parentNode)` | Called during the traversal before an expression node children processing is started.
    `void` | TraversalHelper.`startNode​(Expression node, Expression parentNode)` |
    `static Expression` | FunctionExpressionFactory.`substringExp​(Expression exp, int offset, int length)` | Call SUBSTRING(string, offset, length) function
    `static Expression` | FunctionExpressionFactory.`substringExp​(Expression exp, Expression offset, Expression length)` | Call SUBSTRING(string, offset, length) function
    `static Expression` | FunctionExpressionFactory.`sumExp​(Expression exp)` |
    `protected void` | Expression.`traverse​(Expression parentExp, TraversalHandler visitor)` | Traverses itself and child expressions, notifying visitor via callback methods as it goes.
    `static Expression` | FunctionExpressionFactory.`trimExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`upperExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`weekExp​(Expression exp)` |
    `static Expression` | FunctionExpressionFactory.`yearExp​(Expression exp)` |

    Method parameters in org.apache.cayenne.exp with type arguments of type Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `static Expression` | ExpressionFactory.`and​(Collection<Expression> expressions)` |
    `static Expression` | ExpressionFactory.`joinExp​(int type, Collection<Expression> expressions)` | Joins all expressions, making a single expression.
    `static Expression` | ExpressionFactory.`or​(Collection<Expression> expressions)` |

    Constructors in org.apache.cayenne.exp with parameters of type Expression
    Constructor | Description
    --- | ---
    `Property​(String name, Expression expression, Class<? super E> type)` | Constructs a new property with the given name and expression

  - ### Uses of Expression in org.apache.cayenne.exp.parser

    Subclasses of Expression in org.apache.cayenne.exp.parser
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AggregateConditionNode` | Superclass of aggregated conditional nodes such as NOT, AND, OR.
    `class` | `ASTAbs` |
    `class` | `ASTAdd` | "Add" Expression.
    `class` | `ASTAggregateFunctionCall` | Base class for all aggregation functions expressions It's more like marker interface for now.
    `class` | `ASTAnd` | "And" expression.
    `class` | `ASTAsterisk` | Asterisk operator for COUNT(*) expression.
    `class` | `ASTAvg` |
    `class` | `ASTBetween` | "Between" expression.
    `class` | `ASTBitwiseAnd` | Bitwise conjunction (AND or '&') expression
    `class` | `ASTBitwiseLeftShift` | Bitwise left shift '<<' operation.
    `class` | `ASTBitwiseNot` | Bitwise negation (NOT i.e.
    `class` | `ASTBitwiseOr` | Bitwise disjunction (OR or '|') expression.
    `class` | `ASTBitwiseRightShift` | Bitwise right shift '>>' operation.
    `class` | `ASTBitwiseXor` | Bitwise exclusive disjunction (XOR or '^') operation.
    `class` | `ASTConcat` |
    `class` | `ASTCount` |
    `class` | `ASTCurrentDate` |
    `class` | `ASTCurrentTime` |
    `class` | `ASTCurrentTimestamp` |
    `class` | `ASTDbPath` | Path expression traversing DB relationships and attributes.
    `class` | `ASTDistinct` |
    `class` | `ASTDivide` | "Divide" expression.
    `class` | `ASTEnum` | Scalar node that represents constant enumeration value.
    `class` | `ASTEqual` | "Equal To" expression.
    `class` | `ASTExtract` |
    `class` | `ASTFalse` | Boolean false expression element Notice that there is one ASTTrue and one ASTFalse instead of a ASTBoolean with a Boolean value.
    `class` | `ASTFullObject` |
    `class` | `ASTFunctionCall` |
    `class` | `ASTGreater` | "Greater Than" expression.
    `class` | `ASTGreaterOrEqual` | "Greater Than Or Equal To" expression.
    `class` | `ASTIn` | "In" expression.
    `class` | `ASTLength` |
    `class` | `ASTLess` | "Less Then" expression.
    `class` | `ASTLessOrEqual` | "Less than or equal to" expression.
    `class` | `ASTLike` | "Like" expression.
    `class` | `ASTLikeIgnoreCase` | "Case insensitive like" expression.
    `class` | `ASTList` | A leaf expression representing an immutable collection of values.
    `class` | `ASTLocate` |
    `class` | `ASTLower` |
    `class` | `ASTMax` |
    `class` | `ASTMin` |
    `class` | `ASTMod` |
    `class` | `ASTMultiply` | "Multiply" expression.
    `class` | `ASTNamedParameter` | A named expression parameter.
    `class` | `ASTNegate` | "Negate" expression.
    `class` | `ASTNot` | "Not" expression.
    `class` | `ASTNotBetween` | "Not Between" expression.
    `class` | `ASTNotEqual` | "Not equal to" expression.
    `class` | `ASTNotIn` | "Not In" expression.
    `class` | `ASTNotLike` | "Not Like" expression.
    `class` | `ASTNotLikeIgnoreCase` | "Not like, ignore case" expression.
    `class` | `ASTObjPath` |
    `class` | `ASTOr` | "Or" expression.
    `class` | `ASTPath` | Generic path expression.
    `class` | `ASTScalar` | A scalar value wrapper expression.
    `class` | `ASTSqrt` |
    `class` | `ASTSubstring` |
    `class` | `ASTSubtract` | "Subtract" expression.
    `class` | `ASTSum` |
    `class` | `ASTTrim` |
    `class` | `ASTTrue` | Boolean true expression element Notice that there is one ASTTrue and one ASTFalse instead of a ASTBoolean with a Boolean value.
    `class` | `ASTUpper` |
    `class` | `ConditionNode` | Superclass of conditional expressions.
    `class` | `EvaluatedBitwiseNode` |
    `class` | `EvaluatedMathNode` |
    `class` | `EvaluatedNode` |
    `class` | `PatternMatchNode` | Superclass of pattern matching nodes.
    `class` | `SimpleNode` | Superclass of AST* expressions that implements Node interface defined by JavaCC framework.

    Methods in org.apache.cayenne.exp.parser that return Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `Expression` | ExpressionParser.`expression()` |
    `Expression` | SimpleNode.`notExp()` |
    `Expression` | ASTAbs.`shallowCopy()` |
    `Expression` | ASTAdd.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTAnd.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTAsterisk.`shallowCopy()` |
    `Expression` | ASTAvg.`shallowCopy()` |
    `Expression` | ASTBetween.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTBitwiseAnd.`shallowCopy()` |
    `Expression` | ASTBitwiseLeftShift.`shallowCopy()` |
    `Expression` | ASTBitwiseNot.`shallowCopy()` |
    `Expression` | ASTBitwiseOr.`shallowCopy()` |
    `Expression` | ASTBitwiseRightShift.`shallowCopy()` |
    `Expression` | ASTBitwiseXor.`shallowCopy()` |
    `Expression` | ASTConcat.`shallowCopy()` |
    `Expression` | ASTCount.`shallowCopy()` |
    `Expression` | ASTCurrentDate.`shallowCopy()` |
    `Expression` | ASTCurrentTime.`shallowCopy()` |
    `Expression` | ASTCurrentTimestamp.`shallowCopy()` |
    `Expression` | ASTDbPath.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTDistinct.`shallowCopy()` |
    `Expression` | ASTDivide.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTEnum.`shallowCopy()` |
    `Expression` | ASTEqual.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTExtract.`shallowCopy()` |
    `Expression` | ASTFalse.`shallowCopy()` |
    `Expression` | ASTFullObject.`shallowCopy()` |
    `Expression` | ASTGreater.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTGreaterOrEqual.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTIn.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTLength.`shallowCopy()` |
    `Expression` | ASTLess.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTLessOrEqual.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTLike.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTLikeIgnoreCase.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTList.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTLocate.`shallowCopy()` |
    `Expression` | ASTLower.`shallowCopy()` |
    `Expression` | ASTMax.`shallowCopy()` |
    `Expression` | ASTMin.`shallowCopy()` |
    `Expression` | ASTMod.`shallowCopy()` |
    `Expression` | ASTMultiply.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTNamedParameter.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTNegate.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTNot.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTNotBetween.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTNotEqual.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTNotIn.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTNotLike.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTNotLikeIgnoreCase.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTObjPath.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTOr.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTScalar.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTSqrt.`shallowCopy()` |
    `Expression` | ASTSubstring.`shallowCopy()` |
    `Expression` | ASTSubtract.`shallowCopy()` | Creates a copy of this expression node, without copying children.
    `Expression` | ASTSum.`shallowCopy()` |
    `Expression` | ASTTrim.`shallowCopy()` |
    `Expression` | ASTTrue.`shallowCopy()` |
    `Expression` | ASTUpper.`shallowCopy()` |

    Constructors in org.apache.cayenne.exp.parser with parameters of type Expression
    Constructor | Description
    --- | ---
    `ASTAbs​(Expression expression)` |
    `ASTAvg​(Expression expression)` |
    `ASTConcat​(Expression... expressions)` |
    `ASTCount​(Expression expression)` |
    `ASTDistinct​(Expression expression)` |
    `ASTExtract​(Expression expression)` |
    `ASTFullObject​(Expression expression)` |
    `ASTLength​(Expression expression)` |
    `ASTLocate​(Expression substring, Expression path)` |
    `ASTLocate​(Expression substring, Expression path, Expression offset)` |
    `ASTLower​(Expression expression)` |
    `ASTMax​(Expression expression)` |
    `ASTMin​(Expression expression)` |
    `ASTMod​(Expression expression, Expression divisor)` |
    `ASTSqrt​(Expression expression)` |
    `ASTSubstring​(Expression path, Expression length, Expression offset)` |
    `ASTSum​(Expression expression)` |
    `ASTTrim​(Expression path)` |
    `ASTUpper​(Expression expression)` |

  - ### Uses of Expression in org.apache.cayenne.map

    Fields in org.apache.cayenne.map declared as Expression
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected Expression` | EntityInheritanceTree.`normalizedQualifier` |
    `protected Expression` | DbEntity.`qualifier` | Qualifier, that will be applied to all select queries and joins with this DbEntity
    `protected Expression` | ObjEntity.`qualifier` |
    `protected Expression` | QueryDescriptorLoader.`qualifier` |
    `protected Expression` | SelectQueryDescriptor.`qualifier` |

    Methods in org.apache.cayenne.map that return Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `Expression` | EntityInheritanceTree.`getDbQualifier()` | Returns entity qualifier expressed as DB path qualifier or null if entity has no qualifier.
    `Expression` | ObjEntity.`getDeclaredQualifier()` | Returns a qualifier that imposes a restriction on what objects belong to this entity.
    `Expression` | DbEntity.`getQualifier()` |
    `Expression` | SelectQueryDescriptor.`getQualifier()` | Returns qualifier of this query.
    `Expression` | EntityInheritanceTree.`qualifierForEntityAndSubclasses()` | Returns a qualifier Expression that matches root entity of this tree and all its subentities.
    `Expression` | ObjEntity.`translateToDbPath​(Expression expression)` | Transforms an Expression to an analogous expression in terms of the underlying DbEntity.
    `Expression` | DbEntity.`translateToRelatedEntity​(Expression expression, String relationshipPath)` | Transforms Expression rooted in this entity to an analogous expression rooted in related entity.
    `abstract Expression` | Entity.`translateToRelatedEntity​(Expression expression, String relationshipPath)` | Translates Expression rooted in this entity to an analogous expression rooted in related entity.
    `Expression` | ObjEntity.`translateToRelatedEntity​(Expression expression, String relationshipPath)` | Transforms an Expression rooted in this entity to an analogous expression rooted in related entity.

    Methods in org.apache.cayenne.map with parameters of type Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `PathComponent<DbAttribute,​DbRelationship>` | DbEntity.`lastPathComponent​(Expression path, Map aliasMap)` |
    `<T extends Attribute,​U extends Relationship> PathComponent<T,​U>` | Entity.`lastPathComponent​(Expression path, Map aliasMap)` | Convenience method returning the last component in the path iterator.
    `PathComponent<ObjAttribute,​ObjRelationship>` | ObjEntity.`lastPathComponent​(Expression path, Map aliasMap)` |
    `Iterable<PathComponent<DbAttribute,​DbRelationship>>` | DbEntity.`resolvePath​(Expression pathExp, Map aliasMap)` | Returns an Iterable instance over expression path components based on this entity.
    `abstract <T extends Attribute,​U extends Relationship> Iterable<PathComponent<T,​U>>` | Entity.`resolvePath​(Expression pathExp, Map aliasMap)` | Returns an Iterable over the path components with elements represented as `PathComponent` instances, encapsulating a relationship, an attribute or a subpath alias.
    `Iterable<PathComponent<ObjAttribute,​ObjRelationship>>` | ObjEntity.`resolvePath​(Expression pathExp, Map aliasMap)` | Returns an Iterable instance over expression path components based on this entity.
    `Iterator<CayenneMapEntry>` | DbEntity.`resolvePathComponents​(Expression pathExp)` |
    `abstract Iterator<CayenneMapEntry>` | Entity.`resolvePathComponents​(Expression pathExp)` | Processes expression `pathExp` and returns an Iterator of path components that contains a sequence of Attributes and Relationships.
    `Iterator<CayenneMapEntry>` | ObjEntity.`resolvePathComponents​(Expression pathExp)` |
    `void` | ObjEntity.`setDeclaredQualifier​(Expression qualifier)` | Sets a qualifier that imposes a limit on what objects belong to this entity.
    `void` | DbEntity.`setQualifier​(Expression qualifier)` | Sets qualifier for this entity
    `void` | SelectQueryDescriptor.`setQualifier​(Expression qualifier)` | Sets qualifier for this query.
    `Expression` | ObjEntity.`translateToDbPath​(Expression expression)` | Transforms an Expression to an analogous expression in terms of the underlying DbEntity.
    `Expression` | DbEntity.`translateToRelatedEntity​(Expression expression, String relationshipPath)` | Transforms Expression rooted in this entity to an analogous expression rooted in related entity.
    `abstract Expression` | Entity.`translateToRelatedEntity​(Expression expression, String relationshipPath)` | Translates Expression rooted in this entity to an analogous expression rooted in related entity.
    `Expression` | ObjEntity.`translateToRelatedEntity​(Expression expression, String relationshipPath)` | Transforms an Expression rooted in this entity to an analogous expression rooted in related entity.

  - ### Uses of Expression in org.apache.cayenne.query

    Fields in org.apache.cayenne.query declared as Expression
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected Expression` | SelectQuery.`havingQualifier` |
    `protected Expression` | SelectQuery.`qualifier` |
    `protected Expression` | Ordering.`sortSpec` |
    `protected Expression` | FluentSelect.`where` |

    Methods in org.apache.cayenne.query that return Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `Expression` | ColumnSelect.`getHaving()` | Returns a HAVING clause Expression of this query.
    `Expression` | SelectQuery.`getHavingQualifier()` | Returns query HAVING qualifier.
    `Expression` | SelectQuery.`getQualifier()` | Returns query qualifier.
    `Expression` | Ordering.`getSortSpec()` | Returns the expression defining a ordering Java Bean property.
    `Expression` | FluentSelect.`getWhere()` | Returns a WHERE clause Expression of this query.

    Methods in org.apache.cayenne.query with parameters of type Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `ColumnSelect<T>` | ColumnSelect.`and​(Expression... expressions)` | AND's provided expressions to the existing WHERE clause expression.
    `ObjectSelect<T>` | ObjectSelect.`and​(Expression... expressions)` | AND's provided expressions to the existing WHERE clause expression.
    `void` | SelectQuery.`andHavingQualifier​(Expression e)` | Adds specified HAVING qualifier to the existing HAVING qualifier joining it using "AND".
    `void` | SelectQuery.`andQualifier​(Expression e)` | Adds specified qualifier to the existing qualifier joining it using "AND".
    `static ObjectSelect<DataRow>` | ObjectSelect.`dataRowQuery​(Class<?> entityType, Expression expression)` | Creates a ObjectSelect that fetches data for an `ObjEntity` determined from a provided class and uses provided expression for its qualifier.
    `static SelectQuery<DataRow>` | SelectQuery.`dataRowQuery​(Class<?> rootClass, Expression qualifier)` | Creates a SelectQuery that selects DataRows that correspond to a given persistent class that match supplied qualifier.
    `static SelectQuery<DataRow>` | SelectQuery.`dataRowQuery​(Class<?> rootClass, Expression qualifier, List<Ordering> orderings)` |
    `static ObjectSelect<DataRow>` | ObjectSelect.`dbQuery​(String dbEntityName, Expression expression)` | Creates a ObjectSelect that fetches DataRows for a `DbEntity` determined from provided "dbEntityName" and uses provided expression for its qualifier.
    `ColumnSelect<T>` | ColumnSelect.`having​(Expression expression)` | Appends a having qualifier expression of this query.
    `ColumnSelect<T>` | ColumnSelect.`or​(Expression... expressions)` | OR's provided expressions to the existing WHERE clause expression.
    `ObjectSelect<T>` | ObjectSelect.`or​(Expression... expressions)` | OR's provided expressions to the existing WHERE clause expression.
    `void` | SelectQuery.`orHavingQualifier​(Expression e)` | Adds specified HAVING qualifier to the existing HAVING qualifier joining it using "OR".
    `void` | SelectQuery.`orQualifier​(Expression e)` | Adds specified qualifier to the existing qualifier joining it using "OR".
    `static <T> ObjectSelect<T>` | ObjectSelect.`query​(Class<T> entityType, Expression expression)` | Creates a ObjectSelect that selects objects of a given persistent class and uses provided expression for its qualifier.
    `static <T> ObjectSelect<T>` | ObjectSelect.`query​(Class<T> entityType, Expression expression, List<Ordering> orderings)` | Creates a ObjectSelect that selects objects of a given persistent class and uses provided expression for its qualifier.
    `static <T> SelectQuery<T>` | SelectQuery.`query​(Class<T> rootClass, Expression qualifier)` | Creates a SelectQuery that selects objects of a given persistent class that match supplied qualifier.
    `static <T> SelectQuery<T>` | SelectQuery.`query​(Class<T> rootClass, Expression qualifier, List<? extends Ordering> orderings)` | Creates a SelectQuery that selects objects of a given persistent class that match supplied qualifier.
    `void` | SelectQuery.`setHavingQualifier​(Expression qualifier)` | Sets new query HAVING qualifier.
    `void` | SelectQuery.`setQualifier​(Expression qualifier)` | Sets new query qualifier.
    `void` | Ordering.`setSortSpec​(Expression sortSpec)` | Sets the expression defining a ordering Java Bean property.
    `ColumnSelect<T>` | ColumnSelect.`where​(Expression expression)` | Appends a qualifier expression of this query.
    `ObjectSelect<T>` | ObjectSelect.`where​(Expression expression)` | Appends a qualifier expression of this query.

    Method parameters in org.apache.cayenne.query with type arguments of type Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `ColumnSelect<T>` | ColumnSelect.`and​(Collection<Expression> expressions)` | AND's provided expressions to the existing WHERE or HAVING clause expression.
    `ObjectSelect<T>` | ObjectSelect.`and​(Collection<Expression> expressions)` | AND's provided expressions to the existing WHERE clause expression.
    `ColumnSelect<T>` | ColumnSelect.`or​(Collection<Expression> expressions)` | OR's provided expressions to the existing WHERE or HAVING clause expression.
    `ObjectSelect<T>` | ObjectSelect.`or​(Collection<Expression> expressions)` | OR's provided expressions to the existing WHERE clause expression.

    Constructors in org.apache.cayenne.query with parameters of type Expression
    Constructor | Description
    --- | ---
    `Ordering​(Expression sortSpec)` |
    `Ordering​(Expression sortSpec, SortOrder sortOrder)` |
    `SelectQuery​(Class<T> rootClass, Expression qualifier)` | Creates a SelectQuery that selects objects of a given persistent class that match supplied qualifier.
    `SelectQuery​(Class<T> rootClass, Expression qualifier, List<? extends Ordering> orderings)` | Creates a SelectQuery that selects objects of a given persistent class that match supplied qualifier.
    `SelectQuery​(String objEntityName, Expression qualifier)` | Creates SelectQuery with `objEntityName` and `qualifier` parameters.
    `SelectQuery​(String objEntityName, Expression qualifier, List<? extends Ordering> orderings)` | Creates a SelectQuery that selects objects of a given persistent class that match supplied qualifier.
    `SelectQuery​(DbEntity root, Expression qualifier)` | Creates a SelectQuery for the specified DbEntity with the given qualifier.
    `SelectQuery​(DbEntity root, Expression qualifier, List<? extends Ordering> orderings)` | Creates a SelectQuery for the specified DbEntity with the given qualifier and orderings.
    `SelectQuery​(ObjEntity root, Expression qualifier)` | Creates a SelectQuery for the specified ObjEntity with the given qualifier.
    `SelectQuery​(ObjEntity root, Expression qualifier, List<? extends Ordering> orderings)` | Creates a SelectQuery for the specified ObjEntity with the given qualifier and orderings.

  - ### Uses of Expression in org.apache.cayenne.reflect

    Fields in org.apache.cayenne.reflect declared as Expression
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected Expression` | PersistentDescriptor.`entityQualifier` |

    Methods in org.apache.cayenne.reflect that return Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `Expression` | ClassDescriptor.`getEntityQualifier()` | Returns entity qualifier as a Cayenne expression that includes qualifiers for this entity and all subentities.
    `Expression` | LazyClassDescriptorDecorator.`getEntityQualifier()` |
    `Expression` | PersistentDescriptor.`getEntityQualifier()` |

    Methods in org.apache.cayenne.reflect with parameters of type Expression
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | PersistentDescriptor.`setEntityQualifier​(Expression entityQualifier)` |