Open topic with navigation

TIBCO® Patterns 6.1.2

# Scoring a Set of Records (lkt_scorerecords)

This command is similar to the lkt_dbsearch command except that it applies the query to a given set of records instead of to an in-memory table of records.

    dvkerr_t lkt_scorerecords( lpar_t host, lpar_t rec_def,
                               lpar_t querypar, lpar_t srchpars,
                               lpar_t rec_list, lpar_t *stats,
                               lpar_t *matches, lpar_t *minfo );

This command runs a query against a set of records, returning the query results for each record in the given set. Unlike the lkt_dbsearch command it does not find and return the best matches. Instead it scores every record given returning the query match information for each record. The key differences between lkt_scorerecords and lkt_dbsearch are:

| • | Instead of passing the name of a table or set of tables to be searched the definition of the record layout and a set of records is passed in.

| • | Joined searches are not supported by the lkt_scorerecords command. As no tables are involved the concept of joined tables does not apply.

| • | All records passed in are always scored and returned. lkt_scorerecords is explicitly a request to calculate and return the query score for a set of records. It is NOT a request to find records. Therefore all records are always returned, even if the record has been assigned a "reject" score.

| • | Filtering predicates do not apply. There is no way to specify a filtering predicate.

| • | prefilters are never used, so all prefilter options are ignored.

| • | Cutoffs do not apply. So all cutoff options are ignored.

| • | A query that has no query data is not considered an error when used with the lkt_scorerecords command. The lkt_dbsearch command must have some query data to provide a basis for selecting a set records. The lkt_scorerecords command does not select records, so this restriction does not apply.

Generally, the lkt_scorerecords command ignores options that do not apply rather than reject them. This helps the exact same query and search parameters to be used with lkt_dbsearch and lkt_scorerecords.

## Input

## host (optional)

is used to identify the server.

For more information, see Communicating with TIBCO Patterns Servers

## rec_def (required)

is used to define the field names and field types of the records to be searched. This parameter accepts the same lpar structure as the dbpars parameter of the lkt_dbload command except the LPAR_STRARR_FIELDNAMES lpar is required in all cases. All values except LPAR_STRARR_FIELDNAMES, LPAR_STRARR_CHARMAPS and LPAR_INTARR_FIELDTYPES are ignored. As with the lkt_dbload command the character maps default to DVK_CMAP_STDNAME and the field types default to LKT_FLD_TYPE_SRCHTEXT.

## query (required)

This is the query to be applied. It is identical to the query parameter of the lkt_dbsearch command. Details on query construction are covered in Query Construction.

## srchpars (optional)

This is the same as the srchpars parameter to the lkt_dbsearch command. The following parameter values have no effect: LPAR_INT_STARTMATCH, LPAR_LST_CUTOFF (and all associated entries), LPAR_BOOL_DOMAXWORK, LPAR_BOOL_GIPSEARCH, LPAR_BOOL_SORTSEARCH, LPAR_BOOL_PSISEARCH, LPAR_BLKARR_SORTLOOKUPFIELDS, LPAR_BLKARR_PSILOOKUPFIELDS, LPAR_INT_FETCH_SIZE, LPAR_INT_PC_SIZE, LPAR_INT_PSI_DENSITY.

## rec_list (required)

This is a generic list of records to be scored. All records must have the same number of fields as defined by LPAR_STRARR_FIELDNAMES in the rec_def parameter.

## Output

## stats (required)

is identical to the stats output parameter of the lkt_dbsearch command. The filter times and filter sizes output lists only the last, filter stage 2, filter step as the other filter steps are not run for the lkt_scorerecords command.

## matches (required)

is identical to the matches output parameter of the lkt_dbsearch command.

## minfo (required)

is identical to the minfo output parameter of the lkt_dbsearch command, except that it is required for the lkt_scorerecords command. The entire purpose of this command is to return this scoring information, so it makes no sense to run the command without this output parameter.

Error codes and items returned by lkt_scorerecords

ARRAYLEN | array lpar with wrong number of values
CHARCONV | Record containing invalid UTF-8 character
DBPARAM | Record definition item that is not valid
EXPECTDBDESC |
EXPECTLIST | item that should have been a list lpar
EXPECTQUERY | item that should have been a search query
FEATURESET | item specifying an unsupported feature
INTERNAL | item being processed at the time of the error, or a detailed description of the error
LOOKUP | (none) error in scoring operation
MODEL_UNSUPPORTED | (none) issued when the Learn Model version is not supported
NOCHARMAP | specified character map doesn't exist
NOQUERY | (none) A query parameter was missing
NORLINKMODEL | Learn Model name - the model is not loaded, query parameter - no Learn Model name is specified
NOSYSINIT | (none) DevKit is not initialized
NOWGTFLD | query expression missing the LPAR_STR_WGTFLD_NAME
NSFIELD | field selection lpar with name of non-existant field
NUMFEATURESMISMATCH | Learn expression lpar with wrong number of entries for the specified model.
NUMFIELDS | Record containing incorrect number of fields
PARAMCONFLICT | lpar that contains a parameter conflicting with an earlier parameter.
PARAMMISSING | the list missing a required item
PARAMVAL | lpar that contains an illegal value
PREDSTRING | LPAR_STR_ERRORDETAILS describing predicate syntax error
QUERYEXPR | lpar that contains the invalid query specification
SRCHPARAM | item that should have been a search parameter
THESNOTFOUND | name of thesaurus not found
UNKFIELD | A field name lpar containing a field not listed in the rec_def LPAR_STRARR_FIELDNAMES list.

Did you find this helpful?

Yes No
Great!
Thanks for taking the time to give us some feedback.
Sorry about that

Why wasn't this helpful? (check all that apply)

Could not find what I was looking for
Instructions confusing or unclear
Instructions did not work

Want to tell us more?

Please select at least one option or provide details about the issue!!

Error occurred while submitting feedback.

Error2 occurred while submitting feedback.

TIBCO® Patterns

Copyright © 2010-2025. Cloud Software Group, Inc. All Rights Reserved.