The propagation routines are used with a regular comparison routine to prevent transitivity from occurring during the Relationship Linker or Reference Matcher process. Transitivity happens when two records match indirectly through a third record. For example, if record A matches B, and A matches C, B can match C, which generally would not be desirable.
When the propagation routine is invoked, if records A and B match and A has a blank (or zero) in one field and B has a value, the value is "propagated" in memory until record A has gone through all the records in the match window. Record A obtains a temporary copy of B’s value for future comparisons, which causes the A - to -C match to fail, thus prevents the B-to-C match (transitivity).
The following table lists the valid propagation routines:
Routine | Description |
---|---|
nonblank |
Prevents a match between blank and non-blank values. |
nonzero | Prevents a match between zero and non-zero values. |
jnblank |
Prevents a match between blank and non-blank values. Used with the following comparison routines and modifiers: ABSOLUTE (UC), CHARACTER, DATE (JP, UC), POSTCODE (UC), SPELLING (JP, UC, KR), SUBSTRING (UC) |
jnonzero | Prevents a match between zero and non-zero values. Used with the following comparison routines and modifiers: ABSOLUTE (UC), CHARACTER, DATE (JP, UC), POSTCODE (UC), SPELLING (JP, UC, KR), SUBSTRING (UC) |
Example
In the example below, when Record A is compared to Record B, the blank apartment matches to an apartment number (Apt 1), so Record A and Record B match. Then Record A is compared to Record C and they also match. Because A matches B and A matches C, B matches C by transitivity, which is not correct.
Record A | John Smith | 15 Main St | |
Record B | John Smith | 15 Main St | Apt 1 |
Record C | John Smith | 15 Main St | Apt 2 |
To prevent transitivity, you specify the nonblank propagation routine for the APTNO comparison routine in the Field List Editor.
When the Relationship Linker runs next time, Record A obtains a temporary copy of B’s apartment number for further comparisons. When Record A is compared to Record C, they do not match, thus Record B does not match Record C either.
Record A | John Smith | 15 Main St | Apt 1 (temporary copy from Record B) |
Record B | John Smith | 15 Main St | Apt 1 |
Record C | John Smith | 15 Main St | Apt 2 |