Predicate Query

The predicate is evaluated on the record and the result used as the score assigned by this score generator. Generally, the Boolean tests are used, in which case if it's true the score is 1.0, if it's false the score is 0.0. It is possible to have the predicate return a double value, which is used directly as the score. If this is done the score must be in the range 0.0 to 1.0 inclusive.

A predicate query is a simple comparison for use when other queries are both slower and more cumbersome (like a gender comparison). It can also be used when inexact matching is not required and speed and precision are preferred. A predicate is specified as either an LPAR_LST_PREDICATE or an LPAR_STR_PREDICATE or LPAR_BLK_PREDICATE described in Predicate Expressions or as a list LPAR_LST_PREDICATE_QRY which contains the following parameters.

LPAR_LST_PREDICATE specifies the predicate test. Either this parameter or LPAR_STR_PREDICATE or LPAR_BLK_PREDICATE must appear exactly once.
LPAR_DBL_INVALID_DATA_SCORE (optional) is the score returned if a record field used in the query expression has invalid data or if the predicate evaluation fails. This supersedes on a query by query basis the value set in the search parameters.
LPAR_DBL_EMPTY_DATA_SCORE (optional) is the score to return for a record if a record field used in the predicate expression is empty. This supersedes on a query by query basis the value set in the search parameters.
LPAR_STR_QLETGROUP (optional) assigns a group name to this querylet. Group names are used by the GIP prefilter to improve the selection of child records in joined searches. See the “Matching Compound Records and Querylet Grouping” section in the TIBCO Patterns Concepts Guide for more information on querylet grouping and when to use it.