Below is a short sample of mefa.xml based on a master index application processing person data. This sample covers the basic elements of mefa.xml, but a production environment would contain several more fields to standardize as well as several additional match string fields.
<StandardizationConfig module-name="Standardization" parser-class= "com.sun.mdm.index.configurator.impl.standardization.StandardizationConfiguration"> <standardize-system-object> <system-object-name>Person</system-object-name> <structures-to-normalize> <group standardization-type="PersonName" domain-selector= ”com.sun.mdm.index.matching.impl.SingleDomainSelectorUS"> <unnormalized-source-fields> <source-mapping> <unnormalized-source-field-name> Person.Alias[*].FirstName </unnormalized-source-field-name> <standardized-object-field-id>FirstName </standardized-object-field-id> </source-mapping> <source-mapping> <unnormalized-source-field-name> Person.Alias[*].LastName </unnormalized-source-field-name> <standardized-object-field-id>LastName </standardized-object-field-id> </source-mapping> </unnormalized-source-fields> <normalization-targets> <target-mapping> <standardized-object-field-id>FirstName </standardized-object-field-id> <standardized-target-field-name> Person.Alias[*].StdFirstName </standardized-target-field-name> </target-mapping> <target-mapping> <standardized-object-field-id>LastName </standardized-object-field-id> <standardized-target-field-name> Person.Alias[*].StdLastName </standardized-target-field-name> </target-mapping> </normalization-targets> </group> <group standardization-type="PersonName" domain-selector= "com.sun.mdm.index.matching.impl.SingleDomainSelectorUS”> <unnormalized-source-fields> <source-mapping> <unnormalized-source-field-name>Person.FirstName </unnormalized-source-field-name> <standardized-object-field-id>FirstName </standardized-object-field-id> </source-mapping> <source-mapping> <unnormalized-source-field-name>Person.LastName </unnormalized-source-field-name> <standardized-object-field-id>LastName </standardized-object-field-id> </source-mapping> </unnormalized-source-fields> <normalization-targets> <target-mapping> <standardized-object-field-id>FirstName </standardized-object-field-id> <standardized-target-field-name>Person.StdFirstName </standardized-target-field-name> </target-mapping> <target-mapping> <standardized-object-field-id>LastName </standardized-object-field-id> <standardized-target-field-name>Person.StdLastName </standardized-target-field-name> </target-mapping> </normalization-targets> </group> </structures-to-normalize> <free-form-texts-to-standardize> <group standardization-type="Address" domain-selector= "com.sun.mdm.index.matching.impl.MultiDomainSelector"> <locale-field-name>Person.Country</locale-field-name> <locale-maps> <locale-codes> <value>Default</value> <locale>US</locale> </locale-codes> </locale-maps> <unstandardized-source-fields> <unstandardized-source-field-name> Person.Address[*].AddressLine1 </unstandardized-source-field-name> <unstandardized-source-field-name> Person.Address[*].AddressLine2 </unstandardized-source-field-name> </unstandardized-source-fields> <standardization-targets> <target-mapping> <standardized-object-field-id>HouseNumber </standardized-object-field-id> <standardized-target-field-name> Person.Address[*].HouseNumber </standardized-target-field-name> </target-mapping> <target-mapping> <standardized-object-field-id>MatchStreetName </standardized-object-field-id> <standardized-target-field-name> Person.Address[*].StreetName </standardized-target-field-name> </target-mapping> <target-mapping> <standardized-object-field-id> StreetNamePrefDirection </standardized-object-field-id> <standardized-target-field-name> Person.Address[*].StreetDir </standardized-target-field-name> </target-mapping> <target-mapping> <standardized-object-field-id>StreetNameSufType </standardized-object-field-id> <standardized-target-field-name> Person.Address[*].StreetType </standardized-target-field-name> </target-mapping> </standardization-targets> </group> </free-form-texts-to-standardize> <phoneticize-fields> <phoneticize-field> <unphoneticized-source-field-name>Person.FirstName_Std </unphoneticized-source-field-name> <phoneticized-target-field-name>Person.FirstName_Phon </phoneticized-target-field-name> <encoding-type>Soundex</encoding-type> </phoneticize-field> <phoneticize-field> <unphoneticized-source-field-name>Person.LastName_Std </unphoneticized-source-field-name> <phoneticized-target-field-name>Person.LastName_Phon </phoneticized-target-field-name> <encoding-type>NYSIIS</encoding-type> </phoneticize-field> <phoneticize-field> <unphoneticized-source-field-name> Person.Address[*].StreetName </unphoneticized-source-field-name> <phoneticized-target-field-name> Person.Address[*].StreetNamePhoneticCode </phoneticized-target-field-name> <encoding-type>NYSIIS</encoding-type> </phoneticize-field> </phoneticize-fields> </standardize-system-object> </StandardizationConfig> <MatchingConfig module-name="Matching" parser-class= "com.sun.mdm.index.configurator.impl.matching.MatchingConfiguration"> <match-system-object> <object-name>Person</object-name> <match-columns> <match-column> <column-name>Enterprise.SystemSBR.Person.StdFirstName </column-name> <match-type>FirstName</match-type> </match-column> <match-column> <column-name>Enterprise.SystemSBR.Person.StdLastName </column-name> <match-type>LastName</match-type> </match-column> <match-column> <column-name>Enterprise.SystemSBR.Person.DOB</column-name> <match-type>DOB</match-type> </match-column> </match-columns> </match-system-object> </MatchingConfig> <MEFAConfig module-name="MEFA" parser-class= "com.sun.mdm.index.configurator.impl.MEFAConfiguration"> <block-picker> <class-name>com.sun.mdm.index.matching.impl.PickAllBlocksAtOnce </class-name> </block-picker> <pass-controller> <class-name>com.sun.mdm.index.matching.impl.PassAllBlocks </class-name> </pass-controller> <class-name> com.sun.mdm.index.matching.adapter.SbmeStandardizerAdapter </class-name> </standardizer-api> <standardizer-config> <class-name> com.sun.mdm.index.matching.adapter.SbmeStandardizerAdapterConfig </class-name> </standardizer-config> <matcher-api> <class-name>com.sun.mdm.index.matching.adapter.SbmeMatcherAdapter </class-name> </matcher-api> <matcher-config> <class-name> com.sun.mdm.index.matching.adapter.SbmeMatcherAdapterConfig </class-name> </matcher-config> </MEFAConfig> <PhoneticEncodersConfig module-name="PhoneticEncoders" parser-class= "com.sun.mdm.index.configurator.impl.PhoneticEncodersConfig"> <encoder> <encoding-type>NYSIIS</encoding-type> <encoder-implementation-class> com.sun.mdm.index.phonetic.impl.Nysiis </encoder-implementation-class> </encoder> <encoder> <encoding-type>Soundex</encoding-type> <encoder-implementation-class> com.sun.mdm.index.phonetic.impl.Soundex </encoder-implementation-class> </encoder> </PhoneticEncodersConfig> |