MatchRecord Parameters and Valid Execution Modes

The valid execution mode for MatchRecord is SYNCHR

The parameters of MatchRecord are as follows:

MatchRecord Parameters
Name Semantics Type Valid Values Multi-plicity
Direction: In
InDocument
(Optional) Contains the source records to be matched. The record version is derived from the InDocument (if specified) or else the record version from the event is used. Document Any valid MLXML document. 0..1
MatchingThreshold
(Optional) String representing matching score value. This value is treated as the minimum matching score.

Records with a match score less than the specified score will not be returned. If unspecified, the default value is “0.8”.

Used as a literal value in case of deterministic index based search engines such as Netrics.

String Any positive float value between 0 and 1.

0.8 (Default)

0..1
MatchRecord
AttributeList
(Optional) List of record attributes to be used as matching criteria. ArrayList Any valid ArrayList of repository attribute names. 0..1
RecordAttribute
Name
(Optional) A record attribute name to be matched.

You can also specify weight of an attribute along with its name to provide more weightage for matching records. For example, UOM attribute with weight as 0.8: <Parameter direction="in" name="RecordAttributeName" eval="constant" type="string">uom^0.8</Parameter>

You can specify either the MatchRecordAttributeList or the RecordAttributeName parameter. If a non-empty MatchRecordAttributeList parameter is specified, the RecordAttributeName parameter is ignored and the list is used.

String Any valid repository attribute name. 1
SourceProductKey
(Optional) The key of the record to be matched.

This parameter accepts only one record key as input.

String Any valid record key.

The value should be able to parse as an integer. Typically, use an XPATH expression to get this value from the InDocument.

1
SourceRecord
KeyList 
(Optional) A list of source product key IDs ArrayList   0..1
IndexEntity
AttributesList

(Optional)

List of the record attributes mapped to the index table attributes.

For more information on using index entity attributes, refer to the Cross-Repository Matching Against Index Data section of the TIBCO MDMCustomization Guide.

ArrayList Any valid ArrayList of mapped attribute names. 0..1
PostProcessorClass

(Optional)

Allows customized post-processing of the results returned by the matching engine.

The matching engine returns both UNCONFIRMED and CONFIRMED matching records. If you want to receive only CONFIRMED state matching records, you can specify com.tibco.dq.ConfirmedStatusFilterPostProcessorImpl post-processor class, which works as a status filter.

String
com.tibco.dq. ConfirmedStatusFilterPostProcessorImpl
0..1
IndividualMatchScoreForEntity

(Optional)

Specifies the matching threshold on the individual join index entity.

For example, in CustomerToBank and CustomerToAddress cross-repository matching, you can specify individual matching threshold for each join index entity, that is, CustomerToBank (0.7) and CustomerToAddress (0.6).

String Cross-repository join index entity name along with matching threshold.

For example,

CustomerToBank^0.7 and CustomerToAddress^0.6.

1
ConsiderNonMatchingRecords

(Optional)

Adjusts the scoring of non-matching records. In cross-repository matching, although the matching records are not found for a child record, the child records are considered for the matching score. The matching score depends on the PenaltyForNonMatchingRecords parameter.

For example, the following records are added in the cross-repository hierarchy:

  • CustomerToAddress:
    • John_01 > California
    • John_02 > California_02
  • CustomerToBank:
    • John _01 > ICICI

      In this case, the second record (John_02 > California_02) in the CustomerToAddress entity shows 100% (1) matching even though its respective bank record is not available. However, if you specify true, the matching score changes to 0.5 instead of 1.

      Use this parameter in combination with the PenaltyForNonMatchingRecords parameter.

String True

False (Default)

1
PenaltyForNonMatchingRecords

(Optional)

Specifies the penalty score for the non-matching entity or records.

In cross-repository matching, although the matching records are not found for a child record, the child records are considered for the matching score. Specifying the penalty score adjusts the matching score of child records and displays the results.

For example, the following records are added in the cross-repository hierarchy:

  • CustomerToAddress:
    • John_01 > California
    • John_02 > California_02
  • CustomerToBank:
    • John _01 > ICICI

      In this case, the second record (John_02 > California_02) in the CustomerToAddress entity shows 100% (1) matching even though its respective bank record is not available. However, if you specify the penalty score for non-availability of the second bank record as 0.4, the matching score for the second bank record is calculated as 1(matching record)-0.4 (penalty score)=0.6.

      The combined matching score of both the records is calculated as follows:

      Addition of the two matching scores(1+0.6=1.6)divided by a number of records (2)=0.8

String Cross-repository join entity name that includes non-matching records along with penalty matching score.

For example,

CustomerToBank^0.4

1
UseCustomQueryForNetrics

(Optional)

If specified as True, the custom Netrics query specified in the CustomNetricsQueryBuilderImpl parameter is used to get results from the Netrics indexes. String True

False (Default)

1
CustomNetricsQueryBuilderImpl

(Optional)

Use the custom implementation class to query the Netrics table. It should implement com.tibco.mdm.repository.
search.INetricsQueryBuilder interface. String The Java class name that you want to load. 1
IndexEntityNameTo
Search

(Optional)

Allows to search the custom index entity. While searching the index entities, the specified index entity name is used for searching records instead of an auto detection. String Index entity name that is specified in the IndexerConfig.xml file. For example, Customer_IndexEntity. 1
Direction: Out
MatchCount Number of matching records found.

If this parameter is 0, it indicates that no matching records were found for a given MatchingThreshold and a given RecordAttributeName.

Long 0 (default) 1
MatchingRecordKey
 This is applicable in case of Single Record Introduction.

When a single matching record is found, the record key of the matching record is returned.

String Any valid record key. 0..1
MatchingRecord
RelevanceScore Relevance score of the matching record key. Applicable only in case of a single source record being matched and a single matching record found. ArrayList   0..1
MatchRecord
ProcessLogID MatchRecordProcessLogID is treated as StepID. It is equivalent to StepID in case of synchronous execution. Use the MatchRecordProcessLogID to link the MatchRecord execution output to the next activity.     0..1
MultipleMatch
SourceRecordList List of source records with more than one matching record.

Applicable only in case of Bulk Import.

ArrayList   0..1
MultipleMatch
TargetRecordList List of target records corresponding to each source record in the MultipleMatchSourceRecordList list.

Applicable only in case of Bulk Import.

ArrayList   0..1
MultipleMatch
TargetRelevanceList List of relevance scores for target records corresponding to each source record in the MultipleMatchSourceRecordList list.

Each entry in this list will be a list of target record relevance scores. For every entry in the MultipleMatchTargetRecordList object, there will be a corresponding entry in the MultipleMatchTargetRelevanceList list.

Applicable only in case of Bulk Import.

ArrayList   0..1
NoMatchSource
RecordList List of source records with no matching records.

Applicable only in case of Bulk Import.

ArrayList   0..1
SingleMatch
SourceRecordList List of source records with a single matching record. ArrayList   0..1
SingleMatch
TargetRecordList List of target records corresponding to each source record in the SingleMatchSourceRecordList list ArrayList   0..1
SingleMatchTarget
RelevanceList List of relevance scores corresponding to each target record in the SingleMatchTargetRecordList list

Applicable only in case of Bulk Import.

ArrayList   0..1
CrossRepositoryMatch

(Optional)

Indicates that the matching process has identified matching records that belong to a different repository than the input record's repository. In such case, Merge operation cannot be performed and the CrossRepositoryMatch output can be used by workflow designers to take appropriate actions.

If IndexEntityAttributesList parameter is used in the MatchRecord activity, the activity output contains this optional output parameter.

Boolean True (Default)

False.

0..1