The <matchITAPISettings> node defines all the settings related to the mAPI. Perhaps the one of the more important nodes in this section is the first node - <nationality>. This node needs to be set to whatever the nationality of the data is that you are working on.
The structure of the XML within the <matchITAPISettings> node follows the COM hierarchy that is described in the mAPI section. Please refer to the mAPI Section for more detail on the settings and properties of the mAPI and what they mean.
<matchITAPISettings>
<nationality>USA</nationality>
<datPath>C:\mSQL\config\dataFiles\us</datPath>
<generate>
<name>
<joinMarriedPrefixes>true</joinMarriedPrefixes> <!--true|false-->
<generateContact>true</generateContact> <!--true|false-->
<contactFullname>false</contactFullname> <!--true|false-->
<defaultSalutation>Dear Customer</defaultSalutation>
<defaultGender>unknown</defaultGender> <!--unknown|male|female-->
<useEquivalentName>true</useEquivalentName> <!--true|false-->
<enhancedDoubleBarrelledLookup>false</enhancedDoubleBarrelledLookup> <!--true|false-->
<processBlankLastName>false</processBlankLastName> <!--true|false-->
<replaceAndWithAmpersand>true</replaceAndWithAmpersand> <!--true|false-->
<parseNameElements>true</parseNameElements> <!--true|false-->
<detectInverseNames>false</detectInverseNames> <!--true|false-->
<parseAsNormalizedName>false</parseAsNormalizedName> <!--true|false-->
<extract>
<middleNames>leave</middleNames> <!--leave|copy-->
</extract>
</name>
<address>
<extract>
<premise>copy</premise> <!--leave|copy|move-->
<thoroughfare>copy</thoroughfare> <!--leave|copy|move-->
<town>move</town> <!--leave|copy|move-->
<postTownsOnly>false</postTownsOnly>
<region>move</region> <!--leave|copy|move-->
<postcode>move</postcode> <!--leave|copy|move-->
<country>move</country> <!--leave|copy|move-->
</extract>
<abbreviateRegion>false</abbreviateRegion> <!--true|false-->
<upperCaseTown>false</upperCaseTown> <!--true|false-->
<verifyPostcode>true</verifyPostcode> <!--true|false-->
<defaultThoroughfareLine>1</defaultThoroughfareLine> <!--integer-->
<numOfLinesToScan>0</numOfLinesToScan> <!--integer-->
<premiseFirst>true</premiseFirst> <!--true|false-->
</address>
<organization>
<extract>
<jobTitle>leave</jobTitle> <!--leave|move-->
<name>leave</name> <!--leave|move-->
</extract>
<joinInitials>true</joinInitials> <!--true|false-->
<useEquivalentName>false</useEquivalentName> <!--true|false-->
<normalizationTruncation>0</normalizationTruncation> <!--integer-->
<ignoreParentheses>false</ignoreParentheses> <!--true|false-->
<ignoreTrailingPostTown>false</ignoreTrailingPostTown> <!--true|false-->
</organization>
<dropExcludedWords>true</dropExcludedWords> <!--true|false-->
<properCase>true</properCase> <!--true|false-->
<considerCasing>true</considerCasing> <!--true|false-->
<specialCaseMac>true</specialCaseMac> <!--true|false-->
<variableKeysMaxLength>8</variableKeysMaxLength> <!--integer-->
<quality>
<enabled>false</enabled> <!--true|false-->
<address>
<allowBlankPostcode>true</allowBlankPostcode> <!--true|false-->
</address>
<email>
<webmailFiltering>true</webmailFiltering> <!--true|false-->
</email>
</quality>
</generate>
<compare>
<phonetic>
<algorithm>soundIT</algorithm> <!--none|Soundex|soundIT|looseSoundIT|dynamicSoundIT-->
<algorithmForFirstNames>none</algorithmForFirstNames> <!--none: will use the above setting-->
<looseThresholdForDynamicSoundIT>2</looseThresholdForDynamicSoundIT>
</phonetic>
<name>
<preventMrsMatchingMiss>true</preventMrsMatchingMiss> <!--true|false-->
<fuzzyMatchNonNormalizedNames>true</fuzzyMatchNonNormalizedNames> <!--true|false-->
<organizationMatchingOnBlankNames>0</organizationMatchingOnBlankNames> <!--integer-->
<matchInitialToEquivalentName>equal</matchInitialToEquivalentName> <!--equal|approx|unequal-->
<crossMatchInitialToName>true</crossMatchInitialToName> <!--true|false-->
<fuzzyMatchInitials>full</fuzzyMatchInitials> <!--noMatch|initialsOnly|full-->
<matchInitialsToFirstNames>equal</matchInitialsToFirstNames> <!--equal|approx|contains-->
<fuzzyMatchFirstNames>fullFuzzyMatching</fuzzyMatchFirstNames> <!--fullFuzzyMatching|eitherUnrecognised|bothUnrecognised|noFuzzyMatching-->
</name>
<address>
<matchBoxNumberAndPostcode>false</matchBoxNumberAndPostcode> <!--true|false-->
<usePremiseRange>true</usePremiseRange> <!--true|false-->
<looseFuzzyPremiseMatch>false</looseFuzzyPremiseMatch> <!--true|false-->
<matchDeliveryPoints>false</matchDeliveryPoints> <!--true|false-->
<matchDeliveryPointsThreshold>1.0</matchDeliveryPointsThreshold> <!--double (0..1)-->
<defaultDeliveryPoints>99</defaultDeliveryPoints>
<ignorePremiseSuffix>false</ignorePremiseSuffix> <!--true|false-->
</address>
</compare>
<matchingRules>
<individualLevel>
<constraints>
<mustMatchGender>true</mustMatchGender> <!--true|false-->
<mustMatchSuffix>false</mustMatchSuffix> <!--true|false-->
<mustMatchLocation>true</mustMatchLocation> <!--true|false-->
<mustMatchPremise>false</mustMatchPremise> <!--true|false-->
<noOneEmptyPremise>false</noOneEmptyPremise> <!--true|false-->
<allowFuzzyPremiseMatch>false</allowFuzzyPremiseMatch> <!--true|false--> <!--always true if mustMatchPremise is disabled-->
<mustMatchDirectional>false</mustMatchDirectional> <!--true|false-->
<mustMatchNumericStreetName>false</mustMatchNumericStreetName> <!--true|false-->
<mustMatchJointNames>false</mustMatchJointNames> <!--true|false-->
<mustMatchBuilding>false</mustMatchBuilding> <!--true|false-->
<noOneEmptyBuilding>false</noOneEmptyBuilding> <!--true|false-->
</constraints>
<weights>
<name sure="60" likely="40" possible="25" oneEmpty="5" bothEmpty="24" />
<organization sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<address sure="40" likely="30" possible="20" oneEmpty="5" bothEmpty="5" />
<postcode sure="30" likely="20" possible="15" oneEmpty="5" bothEmpty="5" />
<telephone sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<email sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<dateOfBirth sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<customField1 sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" /><!-- can have up to 9 customField weights (i.e. customField1 - customField9) -->
</weights>
<nameMatchingMatrix>C:\mSQL\config\matchingMatrices\individualLevel\nameMatchingMatrix.xml</nameMatchingMatrix> <!--can specify an absolute or a relative (to config) pathname-->
<organizationMatchingMatrix>C:\mSQL\config\matchingMatrices\individualLevel\organizationMatchingMatrix.xml</organizationMatchingMatrix> <!--can specify an absolute or a relative (to config) pathname-->
</individualLevel>
<familyLevel>
<constraints>
<mustMatchGender>false</mustMatchGender> <!--true|false-->
<mustMatchSuffix>false</mustMatchSuffix> <!--true|false-->
<mustMatchLocation>true</mustMatchLocation> <!--true|false-->
<mustMatchPremise>false</mustMatchPremise> <!--true|false-->
<noOneEmptyPremise>false</noOneEmptyPremise> <!--true|false-->
<allowFuzzyPremiseMatch>false</allowFuzzyPremiseMatch> <!--true|false--> <!--always true if mustMatchPremise is disabled-->
<mustMatchDirectional>false</mustMatchDirectional> <!--true|false-->
<mustMatchNumericStreetName>false</mustMatchNumericStreetName> <!--true|false-->
<mustMatchJointNames>false</mustMatchJointNames> <!--true|false-->
<mustMatchBuilding>false</mustMatchBuilding> <!--true|false-->
<noOneEmptyBuilding>false</noOneEmptyBuilding> <!--true|false-->
</constraints>
<weights>
<name sure="60" likely="40" possible="25" oneEmpty="15" bothEmpty="25" />
<organization sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<address sure="40" likely="30" possible="20" oneEmpty="5" bothEmpty="5" />
<postcode sure="30" likely="20" possible="15" oneEmpty="5" bothEmpty="5" />
<telephone sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<email sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<dateOfBirth sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<customField1 sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" /><!-- can have up to 9 customField weights (i.e. customField1 - customField9) -->
</weights>
<nameMatchingMatrix>C:\mSQL\config\matchingMatrices\familyLevel\nameMatchingMatrix.xml</nameMatchingMatrix> <!--can specify an absolute or a relative (to config) pathname-->
<organizationMatchingMatrix>C:\mSQL\config\matchingMatrices\familyLevel\organizationMatchingMatrix.xml</organizationMatchingMatrix> <!--can specify an absolute or a relative (to config) pathname-->
</familyLevel>
<householdLevel>
<constraints>
<mustMatchGender>false</mustMatchGender> <!--true|false-->
<mustMatchSuffix>false</mustMatchSuffix> <!--true|false-->
<mustMatchLocation>true</mustMatchLocation> <!--true|false-->
<mustMatchPremise>true</mustMatchPremise> <!--true|false-->
<noOneEmptyPremise>false</noOneEmptyPremise> <!--true|false-->
<allowFuzzyPremiseMatch>false</allowFuzzyPremiseMatch> <!--true|false--> <!--always true if mustMatchPremise is disabled-->
<mustMatchDirectional>true</mustMatchDirectional> <!--true|false-->
<mustMatchNumericStreetName>true</mustMatchNumericStreetName> <!--true|false-->
<mustMatchJointNames>false</mustMatchJointNames> <!--true|false-->
<mustMatchBuilding>true</mustMatchBuilding> <!--true|false-->
<noOneEmptyBuilding>true</noOneEmptyBuilding> <!--true|false-->
</constraints>
<weights>
<name sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<organization sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<address sure="40" likely="30" possible="20" oneEmpty="5" bothEmpty="5" />
<postcode sure="30" likely="20" possible="15" oneEmpty="5" bothEmpty="5" />
<telephone sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<email sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<dateOfBirth sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<customField1 sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" /><!-- can have up to 9 customField weights (i.e. customField1 - customField9) -->
</weights>
<nameMatchingMatrix>C:\mSQL\config\matchingMatrices\householdLevel\nameMatchingMatrix.xml</nameMatchingMatrix> <!--can specify an absolute or a relative (to config) pathname-->
<organizationMatchingMatrix>C:\mSQL\config\matchingMatrices\householdLevel\organizationMatchingMatrix.xml</organizationMatchingMatrix> <!--can specify an absolute or a relative (to config) pathname-->
</householdLevel>
<businessLevel>
<constraints>
<mustMatchGender>false</mustMatchGender> <!--true|false-->
<mustMatchSuffix>false</mustMatchSuffix> <!--true|false-->
<mustMatchLocation>true</mustMatchLocation> <!--true|false-->
<mustMatchPremise>false</mustMatchPremise> <!--true|false-->
<noOneEmptyPremise>false</noOneEmptyPremise> <!--true|false-->
<allowFuzzyPremiseMatch>false</allowFuzzyPremiseMatch> <!--true|false--> <!--always true if mustMatchPremise is disabled-->
<mustMatchDirectional>false</mustMatchDirectional> <!--true|false-->
<mustMatchNumericStreetName>false</mustMatchNumericStreetName> <!--true|false-->
<mustMatchJointNames>false</mustMatchJointNames> <!--true|false-->
<mustMatchBuilding>false</mustMatchBuilding> <!--true|false-->
<noOneEmptyBuilding>false</noOneEmptyBuilding> <!--true|false-->
</constraints>
<weights>
<name sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<organization sure="60" likely="40" possible="25" oneEmpty="5" bothEmpty="24" />
<address sure="40" likely="30" possible="20" oneEmpty="5" bothEmpty="5" />
<postcode sure="30" likely="20" possible="15" oneEmpty="5" bothEmpty="5" />
<telephone sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<email sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<dateOfBirth sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<customField1 sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" /><!-- can have up to 9 customField weights (i.e. customField1 - customField9) -->
</weights>
<nameMatchingMatrix>C:\mSQL\config\matchingMatrices\businessLevel\nameMatchingMatrix.xml</nameMatchingMatrix> <!--can specify an absolute or a relative (to config) pathname-->
<organizationMatchingMatrix>C:\mSQL\config\matchingMatrices\businessLevel\organizationMatchingMatrix.xml</organizationMatchingMatrix> <!--can specify an absolute or a relative (to config) pathname-->
</businessLevel>
<customLevel>
<constraints>
<mustMatchGender>false</mustMatchGender> <!--true|false-->
<mustMatchSuffix>false</mustMatchSuffix> <!--true|false-->
<mustMatchLocation>false</mustMatchLocation> <!--true|false-->
<mustMatchPremise>false</mustMatchPremise> <!--true|false-->
<noOneEmptyPremise>false</noOneEmptyPremise> <!--true|false-->
<allowFuzzyPremiseMatch>false</allowFuzzyPremiseMatch> <!--true|false--> <!--always true if mustMatchPremise is disabled-->
<mustMatchDirectional>false</mustMatchDirectional> <!--true|false-->
<mustMatchNumericStreetName>false</mustMatchNumericStreetName> <!--true|false-->
<mustMatchJointNames>false</mustMatchJointNames> <!--true|false-->
<mustMatchBuilding>false</mustMatchBuilding> <!--true|false-->
<noOneEmptyBuilding>false</noOneEmptyBuilding> <!--true|false-->
</constraints>
<weights>
<name sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<organization sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<address sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<postcode sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<telephone sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<email sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<dateOfBirth sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" />
<customField1 sure="0" likely="0" possible="0" oneEmpty="0" bothEmpty="0" /><!-- can have up to 9 customField weights (i.e. customField1 - customField9) -->
</weights>
<nameMatchingMatrix>C:\mSQL\config\matchingMatrices\customLevel\nameMatchingMatrix.xml</nameMatchingMatrix> <!--can specify an absolute or a relative (to config) pathname-->
<organizationMatchingMatrix>C:\mSQL\config\matchingMatrices\customLevel\organizationMatchingMatrix.xml</organizationMatchingMatrix> <!--can specify an absolute or a relative (to config) pathname-->
</customLevel>
</matchingRules>
<masterPriorities>C:\mSQL\config\masterPriorities\default.xml</masterPriorities>
</matchITAPISettings>