File Activities|FindDuplicateRecords|Searching For Matching Records|Composite Matching Functions
A composite matching function is a special kind of matching function - one which encapsulate or comprises of
one or more other matching functions.
Composite matching functions allow you to be much more precise about how you might match two values in the
same column, in different records.
In particular, you can for example, assert that two different matching functions must both return true in order
that the composite matching function as a whole returns true. If either of the two encapsulated functions returns
false, then the composite function as a whole would return false.
Alternatively, you could assert that if either of two (or more) encapsulated matching functions were to return true,
then the composite matching function as a whole would return true.
Currently, the following composite matching functions exist :-
- AND_MATCH(m1, m2, ...) All encapsulated matching functions (m1, m2, etc) must return true for this composite function to return true.
- OR_MATCH(m1, m2, ...) Any of the encapsulated matching functions (m1, m2, etc) can return true for this composite function to return true.
- ANY_ONE_MATCH(m1, m2, ...) Any one encapsulated matching functions (m1, m2, etc) can return true for this composite function to return true.
- ANY_TWO_MATCH(m1, m2, ...) Any two of the encapsulated matching functions (m1, m2, etc) must return true for this composite function to return true.
- ANY_THREE_MATCH(m1, m2, ...) Any three of the encapsulated matching functions (m1, m2, etc) must return true for this composite function to return true.
- ANY_FOUR_MATCH(m1, m2, ...) Any four of the encapsulated matching functions (m1, m2, etc) must return true for this composite function to return true.
- ANY_FIVE_MATCH(m1, m2, ...) Any five of the encapsulated matching functions (m1, m2, etc) must return true for this composite function to return true.
There are a few things to bear in mind when using composite matching functions.
- Composite matching functions can only contain simple (non composite) matching functions. Alias match functions and simple conversion functions are not permitted.
- Composite matching functions cannot contain other composite matching functions.
- All () round brackets, must be [] square brackets for all encapsulated matching functions.
Eg. AND_MATCH(=(), =IC()) becomes AND_MATCH(=[], =IC[])
- The ANY_ONE_MATCH() composite function is functionally the same as the OR_MATCH() composite function.
- The encapsulated functions can themselves take arguments, within their square brackets. Eg. OR_MATCH(=[], DAMERAU_MATCH[2]) is legal.
- Composite matching functions appear in a different colour in the matching function lookup lists.