MatchUp Object:Converting Versions
Converting to MatchUp Object v3 from MatchUp Object v2 or legacy v1
MatchUp Object v3 is the new version of our deduping API. From a programming interface perspective, changing from version 2 is easy, as backwards compatibility has been preserved. Legacy v1 users will find the variety of available library formats, calling conventions and method naming easier to use and more compatible with our other objects. This document will outline the major changes and help you migrate your code to v3.
Interface Changes:
Setting Your License
MatchUp now uses the new Melissa Data license format allowing you to integrate multiple products into a single license, making support, subscriptions, and correspondence with Melissa Data easy. The new license class also allows you to set your license to a system ENV variable – allowing you to update your products without having to recompile your project. The v1 license has been deprecated.
Calling the library
Your existing v2 projects and applications are backwards compatible, so updating to an Object library of a more recent build will allow you to access code changes and improved processing without making any changes. The naming convention of language specific wrappers has been updated to be compatible with other Melissa Data object wrappers. For new development, the Object is now available in multiple platforms, operating systems, library formats and specific interface languages, making implementation in many environments previously unavailable.
Data file changes
Existing data files have been rolled into a single data file - mdMatchUp.dat, removing the need for database maintenance when installing updates. Client specific database overrides can be maintained in mdMatchUp.cfg – editable override for the .dat file. Default installation will automatically find the machines Program Data Files directory removing previous UAC issues.
Added functionality:
Redesigned Matchcode Editor
The Matchcode Editor has been redesigned in a more linear fashion for ease of use. Repetitive edit controls have been removed and there are expanded descriptions for more intuitive understanding. Existing matchcodes can still be read/edited/used for backwards compatibility. The new Matchcode Editor allows us to provide a common interface with the MatchUp SSIS component.
New Matchcode Component types
- Date (days)
- Numeric (integer unit)
- Proximity (miles)
These new types allow you to specify, as a component property, a range for which a match will be possible if the records being compared fall within the set range. There are also new Enumerations, Mapping Targets and Matchcode Mappings for these new component types.
New Methods
New methods (and editor settings) have been introduced to fine tune matchcode component settings for more precise results…
- GetNearDbl() - retrieves Near setting (supercedes GetNear()).
- SetNearDbl() - sets Near setting (supercedes SetNear()).
- GetDescription() - retrieves a matchcodes user-specified description.
- SetDescription() - sets a matchcodes user-specified description.
- GetNGram() - retrieves a matchcodes n-gram setting.
- SetNGram() - sets a matchcodes n-gram setting.
- RenameMatchcode() - change a matchcode’s name.
- DeleteMatchcode() - delete a matchcode.
To give the user a single output property to retrieve output data
GetResults() – has been added to retrieve matching result codes. This delimited string of status codes deprecates the GetStatusCode and GetCombinations methods.
New Interface
mdMUMatchcodeList - allows the user to programmatically retrieve the number of available matchcodes and a list of matchcode names.
New Matching Algorithms
- N-Gram
- Jaro Distance
- Jaro-Winkler Distance
- Longest Common Substring
- Jaccard Index
- Dices Coefficient
- Overlap Coefficient
- Needleman-Wunsch
- Smith-Waterman-Gotoh
- MD Keyboard
- Double Metaphone
Intersect Deduping
Removal of certain matchcode restrictions that were required in existing version now allows users to use an Intersecting matching logic - meaning you can create matchcodes without a common first component, making it more flexible.