Cross-Repository Matching and Overlapping

In the cross-repository matching process, specify attributes across related repositories as matching criteria.

Scenario 1

Single parent contains single child.

Consider that a Customer repository is related to the address repository by ResidenceAddress relationship. You want to detect near-duplicate or duplicate records for a customer John Doe, who has a residence address Palo Alto, 94304.

Cross-Repository Matching
  • MatchAttributesArray: List the record attributes of both the repositories to be used as matching criteria. For example, FirstName and LastName from the customer repository and City and ZIP from the address repository.

    You can also specify the weightage of an attribute. You can decide which attribute you want to provide more weightage for matching records. For example, the last name of a person is unique and not repeated frequently. Hence, specify weightage for the LASTNAME attribute. To specify weightage, use the caret sign (^). For example, LASTNAME^0.7 as in the following code block:

       <constraint>
            <name>Attribute</name>
            <description>match attribute List</description>
             <action>
                <assign>
                    <var>MatchAttributeArray</var>
                    <const type="string">Customer:FIRSTNAME</const>
                    <const type="string">Customer:LASTNAME^0.7</const>
                    <const type="string">Address:CITY</const>
                    <const type="string">Address:ZIP</const>
                </assign>
            </action>
       </constraint>

Scenario 2

Single parent contains multiple children (Cross-repository Overlapping).

Consider that the Customer repository is related to the address and account repositories by the ResidenceAddress and CustomerToAcc relationships.

Cross-Repository Overlapping

  • MatchAttributesArray: List the record attributes to be used as matching criteria across multiple related repositories. For example,
       <constraint>
            <name>Attribute</name>
            <description>match attribute List</description>
             <action>
                <assign>
                    <var>MatchAttributeArray</var>
                    <const type="string">Customer:FIRSTNAME</const>
                    <const type="string">Customer:LASTNAME</const>
                    <const type="string">Address:CITY</const>
                    <const type="string">Address:ZIP</const>
                    <const type="string">Account:BANKNAME</const>
                </assign>
            </action>
       </constraint>