API FAQs#

General#

How To Set Your License Key?#

What development environment will the API work with?#

The APIs are available for the following platforms: Windows®, Linux®, AIX and can be used with any programming language such as C#, Java, Python, C/C++.

What type of support do you offer?#

Technical support is always free, as are the frequent updates, and many online resources found on our website.

Environment Variables#

MDADDR_SERVERMODE

Currently, MDADDR_SERVERMODE only has one value, “sticky”. Sticky is an option that can be set to change the way Address Object behaves when many instances are created and destroyed. This variable, turned off by default, will enable Address Object to retain some of the data files used for initialization in memory after the last instance of Address Object is de-allocated, but before the application ends.

This may be useful for applications that use multiple instances (For example: Web services that use individual threads for each client) and have times where the number of instances drop to 0 while the application is still running. Using this variable should increase the speed of initialization for those qualifying applications.

To set the sticky variable, follow these steps:

  • For Unix (Linux and Solaris), add these lines to .cshrc or .profile of the login account that is running Address Object:

    csh, tcsh:
    setenv MDADDR_SERVERMODE sticky
    
    bash, sh, ksh:
    MDADDR_SERVERMODE=sticky
    export MDADDR_SERVERMODE
    
  • For Windows, add the following entry to your system environment variables:

    Variable Name: MDADDR_SERVERMODE
    Value: sticky
    

Then restart the application using Address Object.

How do I use checksums to validate the integrity of my files?#

Checksums are codes generated from files that can be used to check the integrity of a file. If two files have the same checksum, they can be assumed to be the same file. At Melissa, we use a md5 checksum utility (http://www.fourmilab.ch/md5/). If our tech support asks for your checksum, you can download the command line utility at the URL above. Then, after unzipping it, navigate to md5.exe from the command line, and type md5 “filename” for the checksum. We will then compare your checksum to ours to see if any corruption has occurred.

What is in my DQ Suite DVD?#

Here is a general overview of the structure and contents of the DQ Suite DVD:

  • Root

    • setup.exe [For Windows install]

    • setup.sh [For Linux/Solaris install]

    • changes.txt [Text file containing latest changes and updates]

    • qstart.pdf [PDF file containing descriptions of the Objects, Install guides, Implementation guides, and other important information]

  • Included Data Quality Objects Folders

    • The Included Data Quality Objects folders are separated into the different Objects included in your DQ Suite DVD: Address Object, Email Object, Name Object and Phone Object.

    • Each folder contains a PDF manual explaining the Objects’ methods, properties and initialization procedures.

  • Data Files Folder

    • Each Included Data Quality Objects directory contains a Data Files folder which contains necessary files to run the Object.

    • For Address Object, the Data Files directory contains necessary data files as well as folders to the different Add-ons (DPV, LACSLink, SuiteLink, AddressPlus, RBDI and mdCanada).

  • Operating System Folders

    • Each Included Data Quality Tool directory contains folders for different Operating Systems: Windows, Linux, AIX, and Solaris.

  • Sample Codes, Technologies (For Windows) and Libraries Folders

    • Located within each Operating System Directory are folders for interfaces, samples, technologies and libraries.

    • The interfaces and samples folders contain sample codes for different types of languages. Interface samples include wrappers for their respective languages.

    • Readme files are included for step by step instructions on how to run sample codes.

    • The Windows directory contains folders for COM and DLL technologies. The COM and DLL files are needed in order for the windows sample codes to run.

    • All other Operating Systems contain Library folders for specific compilers such as GCC. These libraries are needed in order for the sample codes to run.

  • Extras

    • This folder contains an Adobe Reader 9 installer for viewing PDF files, barcode fonts used for presorting, and other generic libraries used by Windows.

    • The extras folder also contains a dashboard that provides you a more detailed overview of the Data quality suite.

    • New scripts for automating the download and update procedure for Address, Name, Phone, Email, and Geocoder objects are now located in the extras directory.

How do I automate the DQ Suite setup?#

For Windows

The Windows Setup program for Data Quality Tools accepts optional command line parameters. These can be useful to system administrators and to other programs calling the Setup program wishing to automate the entire process without clicking on the dialogs.

Run the Setup on a test machine like so:

D:\\setup.exe /SAVEINF="c:\\setup.inf" - This can be any file name you wish.

This instructs Setup to save installation settings to the specified file.

Now for any number of other machines, setup can run off the created INF file to run an identical setup on each individual machine.

D:\\setup /LOADINF="c:\\Scripts\\setup.inf" /SILENT /SUPPRESSMSGBOXES

This instructs Setup to load the settings from the specified file after having checked the command line. This file can be prepared using the ‘/SAVEINF=’ command as explained above.

Acrobat Reader must already be installed on the client machine for a truly silent install.

Note

Please remember to use quotes if the filename contains any spaces.

For Unix

The unix installer can take flags to set all the options of a install in one line. To customize an install, run the installer once through interactive mode and customize it the way you like.

Then, copy the command line options that the install will provide you to replicate the install on other machines.

What do I need to do when installing the DQ Suite DVD?#

When you install the DQ Suite DVD, please pay attention to changes.txt on the root of the DVD. It will contain any changes that have been made to any of the objects which may require you to rewrite/recompile your application. Also, when using the wrappers in the Interfaces folder, please read the readmes for each wrapper you are using as they may contain changes to the build process you have to make.

What is a wrapper and how do I use it?#

A wrapper is an additional layer of code that acts as an interface from the standard AddressObject dll to the target programming language. Currently, wrappers are available for dotNET, Java, PHP, PERL, Python, Ruby and OWB.

In order to use the wrapper, both the underlining code and the wrapper itself must be installed. So, to first install the underlying code, run the install for AddressObject on the root of the DQ Suite DVD. Now, you must install the wrapper itself. Look in the Interfaces folder of the DVD and locate the language and platform of the wrapper you want. Then, follow the readme to install the wrapper.

Once installed, again refer to the readme for instructions to setup and run.

What is multi-threaded programming, with respect to MelissaDATA’s data quality tools?#

When working with MelissaDATA API components, you are multi-threading in these situations:

  • You have several threads, each creating an instance of an object.

  • You have several threads, all using a single (or a few) instances of an object.

Be aware that sometimes you are multi-threading without even realizing it. This is particularly true for web applications. For example, a web service will often handle multiple requests simultaneously. Each request will be handled on a separate thread, though the code you have written to handle a request is oblivious to this.

What should be my primary concerns?#

Primarily, the thread that creates an instance to an object ‘owns’ that instance and any other threads should not use that instance. If you choose to violate this rule and ‘share’ instances across threads, your program must ensure that a thread is completely done using the instance before another thread attempts to use it. Often, this is done through the use of critical sections, mutexes or semaphores. Bear in mind that it is very difficult to debug multi-threaded applications, and the precautions needed to share instances further complicate the issue. The more practical solution is to ensure that each thread owns its own instance. However, when working with large numbers of threads, this can be problematic, as operating system limitations (open threads, file handles, memory, etc) can be a limiting factor.

Why is threading an issue?#

At any given moment, an instance exists at a certain state. Two threads calling the same instance will usually cause the instance to change states in unexpected ways, leading to incorrect results and/or crashes.

For example, say thread 1 calls the Address Object (AO) with an address. The AO at this point is in ‘State A’. Then, before thread 1 can obtain the AO’s results, thread 2 calls the AO with a different address, putting it into ‘State B’. When thread 1 retrieves its results, it will retrieve the ‘State B’ results rather than the correct ‘State A’ results.

Can Melissa’s API components detect improper thread usage and handle the situation accordingly?#

No, they cannot. It is not a fault of the programming, but rather is inherent to the way microprocessors and operating systems are designed and used.

If I’m using a single-core/single-CPU machine, I don’t have to worry about threading issues, right?#

Wrong. The synchronization issue discussed in question 2 can happen even if the threading is not exactly simultaneous.

Not able to compile PHP interface in PHP Version 5.3.x, any solutions.#

Current SWIG source file mdAddrPHPWrapper.cpp on the disk file is not compatible with Php Version 5.3.x. SWIG wrapper were compiled using PHP 5.2.x. In PPH 5.2.x, SWIG wrappers use zend_error_noreturn() function which is no longer avialable in PHP 5.3.x. To create compatible mdAddrPHPWrapper.dll with Php 5.3.x, you need to make changes in mdAddrPHPWrapper.cpp manually.

Open mdAddrPHPWrapper.cpp in text pad and replace “zend_error_noreturn” with “zend_error “. After making changes in mdAddrPHPWrapper.cpp compile wrapper again using CreateDll.bat file.

xxxxObj.dll was loaded but the call to DllRegisterServer failed with the error code 0x80020009 or 0x80050007#

The error is caused when the user does not have the administrative rights to register an object. Log into windows as an administrator or command a command prompt as an administrator and try to register again. This security feature was introduced in Windows 7 and Windows Server 2008.

‘MelissaData.mdxxxxCSPINVOKE’ threw an exception#

The error is caused when the .NET wrapper cannot find one or more necessary components. Make sure all necessary components are in the correct directories. Melissa Data .NET wrappers are generated using an open source project called SWIG. The chain of dependent libraries are as follows:

.NET project —references–> mdxxxxNET.dll —uses–> mdxxxxCS.dll —uses–> mdxxxx.dll.

Example: For address check .NET wrapper, mdAddrNET.dll uses mdAddrCS.dll which uses mdAddr.dll.

Make sure all of these files are in the correct locations. The easiest way to ensure this is to place them all into the same directory, usually the same directory as your .NET project executable (bin/debug or bin/release).

64-bit System

Working with the .NET wrapper changes if a use is on a x64 system. On a 64bit machine, they can choose to execute in 32bit mode or 64bit mode, but whatever mode they choose, all components must have the same architecture.

  • Working in 32bit on a 64bit machine:

    All provided dll’s on the DQ Suite are in 32bit. So, grab the existing mdxxxxNET.dll, mdxxxxCS.dll and dll_32bit/mdxxxx.dll. You also have to change to build target of your .NET application because on a x64 machine, the default ‘Any CPU’ option will default to 64bit. Go to Properties->Build->Target Platform and select x86.

  • Working in 64bit on a 64bit machine

    To work in x64, you must recompile mdxxxxNET.dll and mdxxxxCS.dll into 64bit. Go into the source folder and run CreateDLLs.bat with a x64 Visual Studio command script. Please see the readme.txt and open CreateDLLs.bat in wordpad for more details. Then, grab dll_64bit/mdxxxx.dll. Go to Properties->Build->Target Platform and change to x64.

    If you are working with IIS express in Visual Studio, go to Tools > Options > Projects and Solutions > Web Projects > Use the 64 bit version of IIS Express for websites and projects checkbox.

mdxxxxJavaWrapper.dll: Can’t find dependent libraries#

The error is caused when the Java wrapper cannot find one or more necessary components. Make sure all necessary components are in the correct directories. Melissa Java wrappers are generated using an open source project called SWIG. The chain of dependent libraries are as follows:

Java project —references–> mdxxx.jar and mdxxxxJavaWrapper.dll —uses–> mdxxxx.dll.

Example: For address check java wrapper, mdAddr.jar and mdAddrJavaWrapper.dll uses mdAddr.dll.

Make sure all of these files are in the correct locations. The easiest way to ensure this is to place them all into the same directory, usually the same directory as your java project executable.

64-bit System

Working with the java wrapper changes if a use is on a x64 system. On a 64bit machine, they can choose to execute in 32bit mode or 64bit mode, but whatever mode they choose, all components must have the same architecture.

  • Working in 32bit on a 64bit machine:

    All provided dll’s on the DQ Suite are in 32bit. So, run the java wrapper as instructed in the readme. However, be sure you are using the 32bit version of java.

  • Working in 64bit on a 64bit machine

    To work in x64, you must recompile mdxxxxJavaWrapper.dll into 64bit. To do so, go into the Source folder, and run CreateDLL.bat with a x64 Visual Studio command prompt. See the readme.txt and open CreateDLL.bat in wordpad for more details. Then, use the 64bit mdxxxxJavaWrapper.dll and dll_64bit/mdxxxx.dll. Also, be sure to path CreateDLL.bat, CreateJarFile.bat, and RunSample.bat to use the 64bit version of java.

“Cannot open shared object file”#

Receiving “Cannot open shared object file: No such file or directory at” error message when trying to use a interface. Users typically get this error when the generated wrapper .so file cannot find the target .so library. To see this, do a ldd on the wrapper .so file and make sure all the dependency links are satisfied. If the target library dependency link is not satisfied, set your LD_LIBRARY_PATH environment variable to the directory containing the target library and try again. In AIX, the environment variable is called LIBPATH.

“skipping incompatible /th/melissadata/libmdxxxx.so when searching for -lmdxxxx”#

The error is caused when the melissa data unix library is not compatible with your system. There are several configurations that must match for your system to be able to run our libraries on our unix platforms. Please make sure that your glibc version matches or is compatible with the provided library and that you are using the correct width (32 or 64 bit).

Debugging: Run a ldd command on mdxxxx.so and libmdxxxxJavaWrapper.so. All dependencies should have a corresponding library mapped. If you are having trouble still, please send the output of these two ldd commands along with a ‘uname -a’ to tech support.

Unable to establish SSL connection when downloading DQ Suite via wget Tool#

If you encounter an SSL connection error when downloading the DQ Suite file using the wget tool, you can try adding the following options to your command to fix this issue:

  1. We’re moving away from TLS 1.1 to TLS 1.2 so you need to add the –secure-protocol option:

    --secure-protocol=TLSv1_2

  2. If you get a 302 redirect to a different domain, try adding the –mirror option.

    --mirror https://update.melissadata.com

Capabilities#

Address Standardization (Online/Batch)#

Service/DPV/GeoCoding Updates#

Service, DPV, and geocoding directory update? How are the updates delivered?

  • EWS - Weekly

  • CASS/DPV/LACSLink/SuiteLink/AddressPlus - Monthly

  • Canada - Monthly

  • GeoCoder - Quarterly

  • IpLocator - Quarterly

The Options for delivery are download and mailed DVDs

GeoCoding Data Source and Information Type#

What is your geocoding data source and what type(s) of information is available (i.e. state code, FIPS county code, census tract, block group, census block detail, etc.)?

TomTom and Navteq are the sources for GeoCoding data.

Data fields returned include:

  • County Name

  • FIPS Code

  • CBSAs

  • Census Block

  • Census Tract

  • Lat/Long.

Address Scrubbing Online/Batch#

Explain how your tool is capable of performing address scrubbing in online as well as batch mode?

The Address Object functions by populating input properties, calling a processing method VerifyAddress( ) and retrieving the results from output properties. This methodology works in both modes by looping through each new record retrieving the results, calling clear properties before populating the input for the next record.

Undeliverable Address Identification/Scrubbing#

Explain in detail how your tool identifies and scrubs undeliverable addresses such as vacant lots, condemned building, etc.

The Delivery Point Validation table and UAA table are part of the National Data files that allow Address Object to recognize these types of addresses and flag them as undeliverable. Vacant addresses are flagged with the appropriate Results Code.

Vanity Address Identification/Scrubbing#

Explain in detail how your tool identifies and scrubs vanity address/alias address.

A vanity or alias address is used in some cities and is a holdover from the past; Examples would be 114th Ave which is locally called River Road. Address Object will convert these addresses automatically by consulting the vanity table to a deliverable street address during processing.

Dual Address Lines#

Explain how your solution handles dual address lines. (i.e. P.O. box and street address).

Only one valid address is processed per call, Address1 or Address2. If Address1 is valid, Address Object will only return Address2 without processing. If Address2 contains a suite, it will be output in the Suite field upon processing.

Address Line Swapping#

Explain how your tool is able to handle swapping address lines. (i.e. rearranges address lines to conform to USPS guidelines).

Address Object will process Address1 if valid and return back the USPS information. However, if Address1 is not valid and Address2 is valid, Address Object will swap Address2 and Address1, and validate Address2.

ZIP Move and eLOT Features#

Explain how your solution supports the ZIP move and eLOT features.

eLOT database is invoked by Address Object and verified addresses are appended with an eLOT Lot Order/Number seamlessly if the option is set. The ZIP-Move database is part and parcel of the National Data files that are used by Address Object when verifying US addresses.

Assigning Latitude, Longitude, Census Track, FIPS Code#

Explain how your solution supports assigning latitude, longitude, census track and fips code to the address data.

The MD GeoCoder Object will append the lat/long, as well as Census Tract/Block group information to the address record (at the 11 digit ZIP Code level).

Level of GeoCoding Options#

Explain in detail the level of geocoding options available in your tool. For example, Zip/Centroid level, Address level, parcel/point level etc.

GeoCoding is available at no charge to the 5-digit level. Add-on pricing is available for 9-digit as well as Delivery Point 11-digit level.

Local Municipal Tax Support#

Explain in detail how your solution supports local municipal taxes that are compliant with new regulatory requirements (i.e. KY city/county taxes, MN Tri-city Fire Surcharge, WV Surcharge, Mine Subsidence, etc.).

This is not a capability of the product line.

2010 Census Tract Change Support and Existing Census Tract Maintenance#

Explain in detail how your solution supports 2010 census tract changes. What are your plans to maintain existing census track versus implementing new census tract data in 2010.

Because the GeoCoder Object is refreshed with updated data, it will automatically be up to date with 2010 Census Data The GeoCoder Object will thereby incorporate the 2010 Census Track data, but Melissa Data will not have the history of the misc. changes.

Suggestion List Support#

Explain how your solution supports suggestion lists. In other words, explain how your solution provides additional “pop up” addresses that are near matches to the original input address. Is the suggestion list available as part of your base solution?

The FindSuggestion method of Address Object can be used to find a suggestion for address records that do not verify. Simply request the FindSuggestion and FindSuggestionNext iteratively until you have a list of suggestions, starting with the best guess first. Also, Address Object’s StreetData interface can be used to find correct ranges.

For example, if you get an address with an incorrect range, you can use StreetData to pull out all the possible ranges for that street. If you get an incorrect suite, you can pull out all the possible suite values. With this tool, if you have the street name of an apartment complex, you can pull out all the suites that are present in that complex. This interface supports the use of wildcards so that “Park*” will return any street that begins with “Park” in that particular ZIP Code.

Natural Hazard and Fire Protection Classification Zones for Insurance Purposes#

Explain how your solution identifies and maps natural hazard and fire protection classification zones for insurance purposes.

This is not a direct capability of the product line. However, using the accurate lat/longs from GeoCoder Object, this information can be accurately mapped in certain GIS software.

Architecture#

Logical and Physical Architecture Design#

Describe the logical and physical architecture design of your solution and how the system supports Service Oriented Architecture (SOA), Web services, batch processing/scheduling, and n-tier architectures.

The Data Quality APIs are libraries and must be included in to the build process and specially utilized by programs and Web applications written in most languages. The Web Services utilize SOAP/XML/REST based client/server messaging.

Application Language Support#

What application language(s) and versions of the application architecture are required to support your proposed solution? (e.g. Java, .Net, VB, C++, etc.)

Melissa Data APIs have native support for Java, Perl, PHP, Ruby, Python, .NET, C and C++, and COM+ enabled languages on most platforms. COM+ technologies are only for Microsoft Windows®.

3rd Party Software Requirements#

What 3rd party software products (i.e. Websphere, Microsoft SQL Server, etc) are required to support your solution?

Other than a host OS, no third party middleware software products are required as the Data Quality object libraries and their respective data are self-contained and only accessible by the API.

Required Application Platforms#

What application platforms (e.g. Websphere, Oracle, .Net, etc) does the application require and support?

The Data Quality libraries do not require any third party application platforms. However, due to the availability of wrappers for most languages, they can be called by most widely available application platforms through an extension call.

Required/Supported DBMS Platforms#

What DBMS platforms (e.g. Oracle, DB2, UDB, and SQL) does the application require and support?

The libraries do not require any installed database as the data is in a proprietary optimized structure. However, due to the availability of wrappers, the libraries can be integrated by most widely available DBMS platforms as a stored procedure call.

Required/Supported Operating Systems#

What operating system(s) (e.g. Windows, UNIX, Linux, etc) does the application require and support?

Melissa APIs ship with native libraries for Linux, AIX, HPUX, Solaris, and Windows Operating Systems both 32/64 bit and with multiple compiler versions offered. Please see the Platform compatibility matrix for a full listing. Native 64-Bit width is the recommended architecture for using the libraries.

Configuration#

Configuration of Business Rules for Matching#

Describe how the system supports the configuration of business rules to support data quality matching processes.

The end user implements Matchcodes that are sets of business rules that tell MatchUp Object which data fields to consider when determining if two records are duplicates. MatchUp Object uses the matchcode to construct a “match key”, a simplified string of characters that represents the information within the record, enough to determine if the given record is unique or a duplicate. The MatchCode editor is a visual program provided to make the design of these rules very easy.

Required Development Tools#

What development and test tools are required and/or recommended to support your solution?

Melissa recommends test databases and a development IDE for a target programming language to test and implement our solutions.

Integration#

Integration API’s and Messaging Protocols#

Describe in detail the integration API’s and messaging protocols that are supported by your solution.

The Melissa APIs are libraries and do not support messaging protocols directly. The Web Service solutions support SOAP/XML/REST messaging protocols.

Functionality#

Describe what functionality of the system is exposed through Web services.

Melissa offers discrete web service endpoints that expose the full functionality of the Data Quality APIs within a web service format.

Matching/Householding/De-duping#

Matching Solutions#

Explain how your solution will match the data using a set of business rules against the database.

MatchUp Object’s Matchcode Editor allows you to apply 16 simultaneous match criteria (business rules) per run. Any one rule that satisfies your criteria for two records will return a match. A return status code telling which rules of these (up to 16) returned a match can be used to evaluate the quality of a matched pair.

Support for De-duping, Matching Rules, Householding#

Explain in detail how the following features are incorporated/supported within your matching tool:De-duping, Set matching rules, Householding

With up to 36 defined data types, as well as a catch-all general datatype, each with individual settings, gives you nearly unlimited flexibility in creating match rules. This can be as simple as Address Householding, to Address + Names + Companies, etc. You define the rule criteria, and MatchUp Object will return output data for each record telling you whether it matched any other record, how many records it matched, what those other records are, and assign each group a unique group number.

Matching Criteria for Householding#

Explain the different matching criteria that can be used to household customer records.

MatchUp provides basic Householding matchcodes – that use Zip Code and any address data you provide, but you are free to edit, copy, or alter these rules. MatchUp Object’s address splitter (used behind the scenes to build keys) allows you to match inexact records like ‘Twelve N Main Street’ to ‘12 Main St. Apt 67.’

Household IDs and Unique Customer Records#

Explain how your solution will assign household ids to each unique customer record.

MatchUp Object assigns a unique number to each group of matched records. This is your link to matched records that may be in different files and not easily seen as duplicates.

File & Name Standardization#

Input Consolidation#

Explain in detail how your tool consolidates several different input files with different file formats into single output file format.

The Melissa APIs are essentially blind to the data source – you control the file handling, allowing for the greatest flexibility to access (and process) data in any format or structure. Using native plugins for ETL tools such as SSIS or Pentaho Data Integration, the Data Quality Components allow cleansing of most file formats and outputting the format of choice.

Input Parsing#

Explain in detail how your tool parses input names into pre name, first name, middle name, last name and post name and sends the data to individual fields.

When a Full Name or Multiple Names are passed into Name Object it first determines the gender of the first-names from a lookup table and then parses the specific name components as individual output properties using proprietary logic. Name Object will parse names into all the individual components. Incoming data can be in varied formats and patterns (Mr John Smith; Smith, John; Mr J L Smith Sr: etc., as well as dual names (Mr and Mrs John Smith). There are more than 190,00 first and last names from the US Census in the Name Object.

Name Record Splitting#

Explain in detail how your tool splits combined names from one record into two separate records.

Name Object has a built-in list of words that connect names (“and,” “or,” “&,” etc.). It is the presence of these connectors that tell the object that a dual name may exist in the input full name string.

Name Record Splitting and Parsing#

If a file contains a name field with a “Mr. and Mrs. Tom Jones,” explain how your tool splits these into two separate records (e.g. One record for Mr. Tom Jones and a second record for Mrs. Tom Jones).

The respective parsed names would be split into these properties, one set per name.

Results for name ‘Mr. and Mrs. Tom Jones’:

Prefix: Mr.

Prefix2: Mrs.

First Name: Tom

First Name2: Tom

Middle Name:

Middle Name2:

Last Name: Jones

Last Name2: Jones

Suffix:

Suffix2:

Gender: M

Gender2: F

Search and Replace Functionality#

Explain in detail how your tool removes extraneous information from the input field data using search and replace functionality.

The Name Object will flag vulgarities that are detected in the name, and names that contain words found on the list of nuisance names (such as “Mickey Mouse”). There are no search and replace functionalities in Name Object.

Inconsistent Name Standardization#

Explain in detail how your tool standardizes inconsistent firm names in the input record.

The MatchUp Object can compare company acronyms and full companies and strip out inconsistencies in the firms before comparisons are done. Name Object will recognize Company names inside a Name field and standardize them.

Free Formatted Data Fields#

If a file contains a name and address in a “free formatted” data field, explain how your solution is able to identify and parse the name and address into separate data fields (e.g. Name and Address).

The RightFielder Object will parse and identify input text into the main components of an address, name, phone, and email. You can use RightFielder Object to parse customer input contact data as a block of text in any order and output it to specified properties. This allows extraction of distinct details from user input, such as Name, Address, City, State, Zip, Phone, Email, Department, etc. RightFielder Object can also be used to intelligently identify misfielded data.

Matching Standards and Alternative Spellings/Nicknames#

Explain how your tool is able to provide match standards for the first and middle names, allowing us to overcome two types of matching problems such as alternative spellings and nicknames.

The MatchUp Object uses fuzzy matching techniques and a nickname table to recognize phonemes such as “ph” and “sh”, nicknames (Liz, Beth, Betty, Elizabeth), and alternate spellings of names (Gene, Jean, Jeanne). MatchUp Object can also handle nearly-exact strings of characters, such as “Lewis” vs. “Ewis”, and “Palacino” vs. “Al Pacino” as well as initials such as “John Smith” to “J Smith”.

MatchUp Object allows you to use Nickname matching (Charles = Chuck) and ‘nearness’ algorithms (John=Jonh) when matching records. You can also determine whether to disregard middle names, so ‘John L Smith = John Smith’, or to include them, so you can catch ‘J. Lee Smith = John L Smith’.