Cross-Repository Matching

Scenario 1

Single Parent contains single child

<IndexEntity joinTable="true">
   <Name>CustomerAddressIndexEntity</Name>
   <EnterpriseName>ABC</EnterpriseName>
   <Repository>
    <RepositoryName>CUSTOMER</RepositoryName>
     <AttributeList>
      <Attribute>
        <AttributeName>FIRSTNAME</AttributeName>
      </Attribute>
      <Attribute>
        <AttributeName>LASTNAME</AttributeName>
      </Attribute>
     </AttributeList>
     <Relationship>
        <RelationshipName>RESIDENCEADDRESS</RelationshipName>
        <RelatedRepository>ADDRESS</RelatedRepository>
     </Relationship>
   </Repository>
   <Repository>
    <RepositoryName>ADDRESS</RepositoryName>
     <AttributeList>
      <Attribute>
        <AttributeName>CITY</AttributeName>
      </Attribute>
      <Attribute>
        <AttributeName>ZIP</AttributeName>
      </Attribute>
      </AttributeList>
   </Repository>
</IndexEntity>

Scenario 2

Single Parent contains multiple children (Cross-repository overlapping)

Specify indexing as follows:

Customer > ResidenceAddress> Address

Customer > CustomerToAcc > Account

Ensure that the Index entity name is unique. Example is as follows:

<IndexEntity joinTable="true">
   <Name>CustomerAddressIndexEntity</Name>
   <EnterpriseName>ABC</EnterpriseName>
   <Repository>
    <RepositoryName>CUSTOMER</RepositoryName>
     <AttributeList>
      <Attribute>
        <AttributeName>FIRSTNAME</AttributeName>
      </Attribute>
      <Attribute>
        <AttributeName>LASTNAME</AttributeName>
      </Attribute>
     </AttributeList>
     <Relationship>
        <RelationshipName>RESIDENCEADDRESS</RelationshipName>
        <RelatedRepository>ADDRESS</RelatedRepository>
     </Relationship>
   </Repository>
   <Repository>
    <RepositoryName>ADDRESS</RepositoryName>
     <AttributeList>
      <Attribute>
        <AttributeName>CITY</AttributeName>
      </Attribute>
      <Attribute>
        <AttributeName>ZIP</AttributeName>
      </Attribute>
      </AttributeList>
   </Repository>
</IndexEntity>
<IndexEntity joinTable="true">
   <Name>CustomerBankIndexEntity</Name>
   <EnterpriseName>ABC</EnterpriseName>
   <Repository>
    <RepositoryName>CUSTOMER</RepositoryName>
     <AttributeList>
      <Attribute>
        <AttributeName>FIRSTNAME</AttributeName>
      </Attribute>
      <Attribute>
        <AttributeName>LASTNAME</AttributeName>
      </Attribute>
     </AttributeList>
     <Relationship>
        <RelationshipName>CUSTOMERTOACC</RelationshipName>
        <RelatedRepository>ACCOUNT</RelatedRepository>
     </Relationship>
   </Repository>
   <Repository>
    <RepositoryName>ACCOUNT</RepositoryName>
     <AttributeList>
      <Attribute>
        <AttributeName>BANKNAME</AttributeName>
      </Attribute>
      </AttributeList>
   </Repository>
</IndexEntity>

Reference Repository Matching

<IndexEntity joinTable="false">
    <Name>CustomerStagingIndexEntity</Name>
    <EnterpriseName>ABC</EnterpriseName>
      <Repository>          
				<RepositoryName>CustomerStaging</RepositoryName>
     <AttributeList>
        <Attribute>
           <AttributeName>FirstName</AttributeName>
        </Attribute>
        <Attribute>
           <AttributeName>LastName</AttributeName>
        </Attribute>
      </AttributeList>
      </Repository>
</IndexEntity>
<IndexEntity joinTable="false">
    <Name>CustomerReferenceEntity</Name>
    <EnterpriseName>ABC</EnterpriseName>
      <Repository>
         <RepositoryName>CustomerReference</RepositoryName>
     <AttributeList>
        <Attribute>
           <AttributeName>FName</AttributeName>
        </Attribute>
        <Attribute>
           <AttributeName>LName</AttributeName>
        </Attribute>
      </AttributeList>
      </Repository>
</IndexEntity>