Components#

Business Coder#

Overview#

The Business Coder component searches for Business Demographics data based on the address and company name.

You can use the Business Coder component to:

  • Search for businesses using the phone number, stock ticker, and web address.

  • Discover business SIC codes, sales volumes, employee sizes, phone numbers, etc.

Tutorial#

The following steps will guide you in the basic usage of Business Coder Component for SSIS.

Advanced Configuration#

Advanced Configuration is located in the Business Coder Component under File > Advanced Configuration.

../../_images/SSIS_Advanced_Menu.png

Set up the Business Coder Advanced Configuration.

../../_images/SSIS_BC_Advanced_Cloud.png
Melissa Cloud#

For Melissa Cloud processing, you need the License Key issued to you by your sales representative. The other settings on this part of the Advanced Configuration screen should not be changed unless you are specifically directed to do so by Melissa Technical Support.

Caution

The following items should only be altered if directed by Melissa’s support staff.

Use Proxy

If your network uses a Proxy Server, check this box and enter the Proxy information below.

Proxy URL

If your network uses a Proxy Server, enter the Proxy URL information on this field in order for Business Coder to communicate with the Melissa Cloud. The format is “URL:port”.

User Name

The user name for your Proxy Server, if any.

Password

The password for your Proxy Server, if any.

Maximum Threads

Specify the number of simultaneous requests to be sent to the Melissa Cloud Services to run in parallel.

Maximum Transaction Size

Specify the maximum number of records to send per transaction.

Request Timeout

Specify the number of seconds for Business Coder to wait before timing out. Some requests may experience connection lag or timeouts due to network problems.

Number of Retries

Specify the number of times Business Coder should re-send a request to the Melissa Cloud due to any exceptions.

Abort on Critical Error

Will abort the process, in event of critical errors related to the component such as the Web service code WSE00; Unexpected Error-Please Retry.

After entering the License Key, click the Test Configuration button at the bottom of this screen to verify that the License Key was entered correctly.

Test Configuration (Business Coder)

Either the version number or build number will assist Melissa Technical Support in determining if you have the latest Business Coder software installed on your system.

../../_images/SSIS_BC_Advanced_Cloud_Test.png

Business Coder SSIS Component

Version

The version number of the component installed on your local system.

Build Number

The build number of the component installed on your local system.

Business Coder Web Service

Service Request

This will indicate if the Business Coder Component was able to successfully connect to the Business Coder Web Service and authorize your License Key. If the component was unable to connect to the service or your License Key is not authorized to use the Business Coder Web Service, this will be indicated in this box.

To add access to the Business Coder Web Service to your account, contact your Melissa sales representative at 1-800-MELISSA.

If this indicates that you could not connect to the Business Coder Web Service, check your Internet connectivity before contacting Melissa Technical Support.

Version

The current version number of the Business Coder Web Service.

Settings#

Business Coder Tabs#

  • Input
  • Pass-Through Columns
  • Output
  • Options
  • Output Filter

The Input tab configures the input fields for the Business Coder Component.

Existing field names can be selected using the drop-down boxes.

../../_images/SSIS_BC_Input.png

Company Name and Phone

Company Name

The name of the business.

Company Phone

The phone number of the business.

Melissa Address Key (MAK)

MD Address Key

A propietary unique key identifier for an address. This is derived from Address Checking.

Input Address Field

Address Line 1

The first address line of the business.

Address Line 2

The second address line (suite) of the business.

City

The city (locality).

State

The state (Administrative Area).

Postal Code

The postal code.

Country

The country.

Web Site and Stock Info

Web Address

The web address/domain for a company.

Stock Ticker

A unique abbreviation/symbol assigned by the stock exchange for listed companies.

This shows a list of the columns in your input table. Add a column to the Pass Through list to include the original contents in the output table.

../../_images/SSIS_BC_PassThroughColumns.png

Pass Through

Specify whether or not a field should be passed through to the output table(s) by checking the box to include the field.

Field Name

The field names from the original input table.

Current Usage

Where the field is currently being used as input.

This tab lets you specify which groups or columns you want to output.

../../_images/SSIS_BC_Output.png

Output Groups/Columns

Click Select All to enable all output columns or De-select All to disable all of the output columns. You can also individually choose which columns you want by navigating the fields and checking their respective check boxes.

Group/Column Details

Category Description

The selected group’s description.

Column Name

The selected column’s name.

Column Details

The selected column’s description.

Output Contacts

Returns NameFirst, NameLast, Gender, Title, and Email of one or more contacts. This will filter into a primary key of your choosing based on your input.

Limit Contacts To

Allows you to return up to as many contacts as you decide.

This tab lets you specify which groups or columns you want to output.

../../_images/SSIS_BC_Options.png

Business Dominant Option

When checked, this option returns the dominant business name and demographics for a particular site when the company information is missing or does not match.

When unchecked, this will not return the dominant business name when the company information is missing or does not match.

The Business Coder Component will output records in up to four streams. The Output Filter tab allows you to control which records go to which stream. Names and usage can be done in any manner. Filters are evaluated from the top down.

../../_images/SSIS_BC_OutputFilter.png

Result Codes

The output status of a record is returned via result codes returned by the underlying objects. The Component will combine them into a single, comma-delimited string and write them to the field mapped here. New field names can be created by typing the name into the Output Results Code box.

Output Filter

A custom filter may be created based on individual need, each pin filters the records in a cascading effect, where the results code is compared against the first expression (Pin 1) and then compared against Pin 2, and so on.

No Filter

All records are written to a single output stream.

Pre-built Filter

The Component can have pre-built filters for common applications:

Custom Filter

A custom rule example could be: “(FS01 OR FS02) AND NOT FE01.”

This means that the conditions for the rules are met if either result code “FS01” or “FS02” were returned and the result code “FE01” was not returned.

For more information, see Custom Output Filters below.

Attention

Custom rules are an advanced subject. You should be comfortable with Boolean operations before using custom rules in a production environment

Custom Output Filter

SSIS components will output records in up to four streams. Names and usage can be done in any manner. Filters are evaluated from the top down. A custom filter may be created based on individual need, each pin filters the records in a cascading effect, where the results code is compared against the first expression (Pin 1) and then compared against Pin 2, and so on.

Customer Filter

Select Customer Filter from the drop down and click the ... button next to the Customer Filter Expression text box to open an Output Filter Expression dialog box. These rules use Boolean operators (“OR,” “AND,” and “NOT”) and the result codes to construct filters. Records matching the filter will be directed to the valid table while the rest are directed to the invalid table.

../../_images/SSIS_IP_OutputFilter_ExpressionDialog.png

A custom rule example could be: “(AS01 OR AS02)”. This means that the conditions for the rules are met if either result code “AS01” or “AS02” were returned.

Validate Custom Rules

../../_images/SSIS_IP_OutputFilter_Validated.png

A custom expression may be tested by clicking on the Test Expression button. A pop-up dialog box will confirm whether or not the custom expression is acceptable.

Save as Custom Filter

../../_images/SSIS_IP_OutputFilter_SaveCustom.png ../../_images/SSIS_IP_OutputFilter_SaveRules.png

Right-click the Custom Expression, then left-click Save as Custom Filter from the pop-up. Enter a name for the filter in the window and click OK. It will now be available as a Pre-Built Filter for subsequent components.

Remove Selected Rule

To remove a Pre-Built Filter, select the filter from the Pre-Built drop-down list, right-click the filter, and select Delete Filter. Click Yes. After saving this component, it will no longer be available in new component configurations.

../../_images/SSIS_IP_OutputFilter_RemoveRule.png

Result Codes (Business Coder)#

Contact Verify#

Overview#

Contact Verify provides the ability to verify, correct, parse and standardize addresses, phone numbers, email addresses; parse full names and detect vulgarities; and append census and geographic information like latitude and longitude coordinates.

Address Verification

  • Validate and Correct US and Canadian addresses

  • Append missing suites with SuiteLink® and exclusive AddressPlus technology

  • Determine delivery type (business vs. residential)

  • Validate and Correct non-USPS addresses

Geocoding (Spatial Processing)

  • Assign Latitude and Longitude to the Rooftop

  • Census Tract and Block

  • CBSA Information

  • County Names and FIPS

  • Place Names and Place Code

Name Processing

  • Parse and genderize names and multiple names

  • Detect vulgarities and suspicious words in name fields

  • Detect and standardize companies in the name field

Phone Processing

  • Verify telephone numbers to 7 - 10 digit level

  • Determine Telco Switch location

  • Detect landlines vs. cellular or VOIP

  • Detect Residential, business, small office/home office phones

Email Processing

  • Validate and correct email domains

  • Detect mobile domains (restricted from email by FCC)

  • Detect bad mailbox names (spam, noreply…)

  • Correct common misspellings and syntax errors

Tutorial#

The following steps will guide you in the basic usage of Contact Verify Component for SSIS.

Advanced Configuration#

In the Contact Verify Component, navigate to File > Advanced Configuration.

../../_images/SSIS_CV_Advanced.png

License Key

Your License Key will activate the product for use.

Select Processing Mode

Community Edition

The Community Edition of Contact Verify allows you to explore the full capabilities of this component (with some limitations).

On-Premise

Processing will be performed on this machine using local data files. This method is the fastest and most secure option as no data leaves your premises. It is ideal for large batch processing where speed and/or security is a concern, but requires periodic updates to be performed on each machine.

Melissa Cloud

Processing will be performed on Melissa’s servers using Web service protocols over the internet. This method is slower but no maintenance is required. It is ideal for processing smaller files and for quickly running this component without installing the local data files.

Dedicated Cloud

Processing will be performed on a dedicated Contact Verification Server using Web service protocols. These servers may be hosted locally or remotely and will be dedicated to your organization for increased speed and security.

Select which Processing Mode you will use.

Processing Mode#
  • Community
  • On-Premise
  • Melissa Cloud
  • Dedicated Cloud
Data File Path:

This should point to the folder on the local system that contains the Contact Verify Component and its data files. The default path should work unless you install the component to a different folder.

After entering the Data Path, click the Test Configuration button immediately below the Data File Path to verify that the Data Path was entered correctly.

../../_images/SSIS_CV_Advanced_Community.png

Test Configuration (Contact Verify Community)

The Test Configuration screen for On-Premise Processing displays basic information about the object libraries being used by the Contact Verify.

../../_images/SSIS_CV_Advanced_Community_Test.png

All Objects

Component Version

Displays the current SSIS component version.

License Expiration

Displays the date when the Contact Verify Component License Key will expire.

Build Number

Displays the current development release build number of the Contact Verify Component for SSIS. This is usually a three or four-character string.

Name Initialization

Displays any error messages generated by initializing the Name Object.

Build Number

Displays the current development release build number of the Name Object. This is usually a three or four-character string.

Parse Initialization

Displays any error messages generated by initializing the Parser.

Build Number

Displays the current development release build number. This is usually a three or four-character string.

Phone Initialization

Displays any error messages generated by initializing the Phone Object.

Build Number

Displays the current development release build number of the Phone Object. This is usually a three or four-character string.

Email Initialization

Displays any error messages generated by initializing the Email Object.

Build Number

Displays the current development release build number of the Email Object. This is usually a three or four-character string.

Data File Path:

This should point to the folder on the local system that contains the Contact Verify Component and its data files. The default path should work unless you install the component to a different folder.

Enable Local Geologging:

When enabled, this will create a log file containing the Customer ID, Date/Time, GS01-GS06 result code counts, and a Checksum. You can choose a folder location for this file.

After entering the Data Path, click the Test Configuration button immediately below the Data File Path to verify that the Data Path was entered correctly.

../../_images/SSIS_CV_Advanced_OnPremise.png

Test Configuration (Contact Verify On-Premise)

The Test Configuration screen for On-Premise Processing displays basic information about the object libraries being used by the Contact Verify.

../../_images/SSIS_CV_Advanced_OnPremise_Test.png

All Objects

Component Version

Displays the current SSIS component version.

License Expiration

Displays the date when the Contact Verify Component License Key will expire.

Build Number

Displays the current development release build number of the Contact Verify Component for SSIS. This is usually a three or four-character string.

Name Object

Initialization

Displays any error messages generated by initializing the Name Object.

Build Number

Displays the current development release build number of the Name Object. This is usually a three or four-character string.

Database Date

Displays the date of the Name Object data files. This date confirms that the data files are the latest available.

Database Expiration

Displays the date when the Name Object data files will expire. This date confirms that the data files are the latest available.

Address Object

Initialization

Displays any error messages generated by initializing the Address Object.

Database Date

Displays the date of the Address Object US data files. This date confirms that the data files are the latest available.

Database Expiration

Displays the date when the Address Object US data files will expire. This date confirms that the data files are the latest available.

Canadian Database Date

Displays the date of the Address Object Canadian data files. This date confirms that the data files are the latest available.

Canadian Database Expiration

Displays the date when the Address Object Canadian data files will expire. This date confirms that the data files are the latest available.

RBDI Database Date

Displays the date of the Address Object RBDI data files. This date confirms that the data files are the latest available.

Build Number

Displays the current development release build number of the Address Object. This is usually a three or four-character string.

GeoCoder/GeoPoint Object (US & Canada)

Initialization

Displays any error messages generated by initializing the GeoCoder Object.

Build Number

Displays the current development release build number of the GeoCoder Object. This is usually a three or four-character string.

Database Date

Displays the date of the GeoCoder Object data files. This date confirms that the data files are the latest available.

Database Expiration

Displays the date when the GeoCoder Object data files will expire. This date confirms that the data files are the latest available.

Geo Code Last Usage

If your license key has logging enforced, you will be able to see this button.

This is a diagnostic tool, to aid in diagnosing issues with GeoCoder and Geologging.

Phone Object

Initialization

Displays any error messages generated by initializing the Phone Object.

Build Number

Displays the current development release build number of the Phone Object. This is usually a three or four-character string.

Database Date

Displays the date of the Phone Object data files. This date confirms that the data files are the latest available.

Email Object

Initialization

Displays any error messages generated by initializing the Email Object.

Build Number

Displays the current development release build number of the Email Object. This is usually a three or four-character string.

Database Date

Displays the date of the Email Object data files. This date confirms that the data files are the latest available.

Database Expiration

Displays the date when the Email Object data files will expire. This date confirms that the data files are the latest available.

For Melissa Cloud processing, you need the License Key issued to you by your sales representative. The other settings on this part of the Advanced Configuration screen should not be changed unless you are specifically directed to do so by Melissa Technical Support.

After entering the License Key, click the Show Details button at the bottom of this screen to verify that the License Key was entered correctly.

../../_images/SSIS_CV_Advanced_Cloud.png

Warning

The following items should only be altered if directed by Melissa’s support staff.

Use Proxy

If your network uses a Proxy Server, check this box and enter the Proxy information below.

Proxy URL

If your network uses a Proxy Server, enter the Proxy URL information on this field in order for Contact Verify to communicate with the Melissa Cloud. The format is “URL:port”.

User Name

The user name for your Proxy Server, if any.

Password

The password for your Proxy Server, if any.

Maximum Threads

Specify the number of simultaneous requests to be sent to the Melissa Cloud Services to run in parallel.

Request Timeout

Specify the number of seconds for Contact Verify to wait before timing out. Some requests may experience connection lag or timeouts due to network problems.

Number of Retries

Specify the number of times Contact Verify should re-send a request to the Melissa Cloud due to any exceptions.

Abort on Critical Error

Will abort the process, in event of critical errors related to the Component such as the Web service code WSE00; Unexpected Error-Please Retry.

Test Configuration (Contact Verify Cloud)

Either the version number or build number will assist Melissa Technical Support in determining if you have the latest Contact Verify software installed on your system.

../../_images/SSIS_CV_Advanced_Cloud_Test.png

Contact Verify Component

Either the version number or build number will assist Melissa Technical Support in determining if you have the latest CVC software installed on your system.

Version

The version number of the component installed on your local system.

Build Number

The build number of the component installed on your local system.

Name Parser Web Service

Service Response

This will indicate if the CVC was able to successfully connect to the Name Parser Web Service and authorize your License Key. If the CVC was unable to connect to the service or your License Key is not authorized to use the Name Parser Web Service, this will be indicated in this box. To add access to the Name Parser Web Service to your account, contact your Melissa sales representative at 1-800-MELISSA. If this indicates that you could not connect to the Name Parser Web Service, check your Internet connectivity before contacting Melissa Technical Support.

Version

The current version number of the Name Parser Web Service.

Address Verifier Web Service

Service Response

This will indicate if the CVC was able to successfully connect to the Address Verifier Web Service and authorize your License Key. If the CVC was unable to connect to the service or your License Key is not authorized to use the Address Verifier Web Service, this will be indicated in this box. To add access to the Address Verifier Web Service to your account, contact your Melissa sales representative at 1-800-MELISSA. If this indicates that you could not connect to the Address Verifier Web Service, check your Internet connectivity before contacting Melissa Technical Support.

Version

The current version number of the Address Verifier Web Service.

Delivery Indicator Web Service

Service Response

This will indicate if the CVC was able to successfully connect to the Delivery Indicator Web Service and authorize your License Key. If the CVC was unable to connect to the service or your License Key is not authorized to use the Delivery Indicator Web Service, this will be indicated in this box. To add access to the Delivery Indicator Web Service to your account, contact your Melissa sales representative at 1-800-MELISSA. If this indicates that you could not connect to the Delivery Indicator Web Service, check your Internet connectivity before contacting Melissa Technical Support.

Version

The current version number of the Delivery Indicator Web Service.

GeoCoder Web Service

Service Response

This will indicate if the CVC was able to successfully connect to the GeoCoder Web Service and authorize your License Key. If the CVC was unable to connect to the service or your License Key is not authorized to use the GeoCoder Web Service, this will be indicated in this box. To add access to the GeoCoder Web Service to your account, contact your Melissa sales representative at 1-800-MELISSA. If this indicates that you could not connect to the GeoCoder Web Service, check your Internet connectivity before contacting Melissa Technical Support.

Version

The current version number of the GeoCoder Web Service.

Phone Verifier Web Service

Service Response

This will indicate if the CVC was able to successfully connect to the Phone Verifier Web Service and authorize your License Key. If the CVC was unable to connect to the service or your License Key is not authorized to use the Phone Verifier Web Service, this will be indicated in this box. To add access to the Phone Verifier Web Service to your account, contact your Melissa sales representative at 1-800-MELISSA. If this indicates that you could not connect to the Phone Verifier Web Service, check your Internet connectivity before contacting Melissa Technical Support.

Version

The current version number of the Phone Verifier Web Service.

Email Verifier Web Service

Service Response

This will indicate if the CVC was able to successfully connect to the Email Verifier Web Service and authorize your License Key. If the CVC was unable to connect to the service or your License Key is not authorized to use the Email Verifier Web Service, this will be indicated in this box. To add access to the Email Verifier Web Service to your account, contact your Melissa sales representative at 1-800-MELISSA. If this indicates that you could not connect to the Email Verifier Web Service, check your Internet connectivity before contacting Melissa Technical Support.

Version

The current version number of the Email Verifier Web Service.

../../_images/SSIS_CV_Advanced_Dedicated.png

Server URL

This is the internet or intranet address of the server to be used by the Contact Verify for processing. Check with your network administrator if you need help with this setting.

Use Proxy

If your network uses a Proxy Server, check this box and enter the Proxy information below.

Proxy URL

If your network uses a Proxy Server, enter the Proxy URL information on this field in order for Contact Verify to communicate with the Melissa Cloud. The format is “URL:port”.

User Name

The user name for your Proxy Server, if any.

Password

The password for your Proxy Server, if any.

Enable Compression

Check this to enable GZip compression. This can have up to a 10% increase in speed.

Maximum Threads

Specify the number of simultaneous requests to be sent to the Melissa Appliance to run in parallel.

Maximum Transaction Size

Specify the number of records to be sent in a single request. A single request may contain between 1 – 100 records. It is recommended to set this value to 100 for optimal throughput.

Request Timeout

Specify the number of seconds for Contact Verify to wait before timing out. Some requests may experience connection lag or timeouts due to network problems.

Number of Retries

Specify the number of times Contact Verify should re-send a request to the Appliance due to any exceptions.

Abort on Critical Error

Enable this option to stop file processing when any exception is thrown. Disabling this option will disregard any exceptions and continue processing your file.

Failover to MD Servers

Check this box to use Cloud (Melissa Cloud) processing as a redundant backup for Local Appliance (Dedicated Cloud) processing. You must have a valid License Key and also configure the Web settings in addition to the Local Appliance settings.

Add Component#

To add Contact Verify Component to your project, drag the component onto the Data Flow screen. This will snap the Contact Verify Component into your workflow space.

../../_images/SSIS_CV_Tutorial_Component.png

Connect Input#

Select a data flow source to be your input data. Many formats can be used as Sources, including Excel files, flat files or Access Input data sources. Connect this data source to the Contact Verify Component by dragging the arrow from your data flow source to the Contact Verify Component.

../../_images/SSIS_CV_Tutorial_Source.png

Configure Component#

Double click the Contact Verify Component to bring up the interface. See Contact Verify Component Settings

Connect Output#

Add data destinations for downstream output. Connect the respective output filter pin to the output destination.

../../_images/SSIS_CV_Tutorial_Output.png

Save Settings#

Click File and select Save Selected Items to save the project

../../_images/SSIS_Tutorial_Save.png

Run Project#

Now, the project is ready to run.

Settings#

Contact Verify Tabs#

  • Name
  • Address
  • GeoCode
  • Phone/Email
  • Pass-Through Columns
  • Output Filter

The Name tab configures the fields that will be used for the name parsing functionality of the Contact Verification Component. Existing field names can be selected using the drop-down boxes. New field names can be created by typing the name into the box.

../../_images/SSIS_CV_Name.png

Input Name

The Name Parse tab requires data from a single field in order to populate its output fields.

Full Name

Select or enter the field name that will contain the name information to be parsed. This field can contain one or two full names, such as “Mr. John Q. Smith, Jr.” or “John Q. and Mary S. Smith.” If you do not set a field for Full Name, the Component will not parse name information.

Output Components

The output section consists of two sets of return fields. The first name detected will be returned by the first set of fields. If a second name is detected, it will be returned by the second set of fields.

Prefix

This field returns any part of the name that precedes the given name, such as “Mr.,” “Ms.,” or “Dr.,” for each full name detected.

First Name

This field returns the given name for each first name detected. Contact Verify can attempt to correct misspelled first names. To enable this feature, see the Name Parse Options screen.

Middle Name

This field returns the middle names or initials for each full name detected.

Last Name

This field returns the family name for each full name detected.

Suffix

This field returns any part of the name that follows the family name, such as degrees (“MD” or “PhD”) and generational indicators (“IV” or “Jr.”), for each full name detected.

Gender

This field returns a gender indicator for each full name detected. Gender is based on the first name. See the Name Parse Options screen for how to adjust how the Component assigns gender to a name.

Salutation

This field returns a salutation constructed from the first full name detected. To control how this salutation is formatted, see the Name Parse Options screen.

Standardized Company Name

This field returns a standardized company name.

Name Parse Options

To access Name Parse Options, click the Name Parse Options button on the Name tab

../../_images/SSIS_CV_Name_ParseOptions.png

Correct Misspellings in First Name

The Component uses a database of common given names to correct obvious misspellings. To enable this feature, check the box.

Name Order Hint

The Name Order Hint tells the Component in what order the name components will be found in the input full name, normal name order, last name first, or a mixture. The default is “Varying.” The options are:

Option

Description

DefinitelyFull

Name will always be treated as normal name order, regardless of formatting or punctuation.

VeryLikelyFull

Name will be treated as normal name order unless inverse order is clearly indicated by formatting or punctuation.

ProbablyFull

If necessary, statistical logic will be employed to determine name order, with a bias toward normal name order.

Varying

If necessary, statistical logic will be employed to determine name order, with no bias toward either name order.

ProbablyInverse

If necessary, statistical logic will be employed to determine name order, with a bias toward inverse name order.

VeryLikelyInverse

Name will be treated as inverse name order unless normal order is clearly indicated by formatting or punctuation.

DefinitelyInverse

Name will always be treated as inverse name order, regardless of formatting or punctuation.

MixedFirstName

Name field is expected to only contain prefixes, first, and middle names.

MixedLastName

Name field is expected to only contain last names and suffixes.

Gender Aggression

This option controls how the CVC assigns gender to a name, based on the first name. First names are rated on a 1 to 7 scale on the likelihood that they are a male or female name, with 7 being “always male” and 1 being “always female.” The Gender Aggression setting (Conservative, Neutral, or Aggressive) controls how the CVC treats names that fall between those two extreme

Gender Population

This option controls the gender assumed for the input data: predominantly female, predominantly male, or an even split. The effect of the Gender Aggression and Gender Population settings is shown on this chart.

Male

Female

Aggression

Always [7]

Often [6]

Normally [5]

Neutral [4]

Normally [3]

Often [2]

Always [1]

Conservative

Even

M

N

N

N

N

N

F

Male

M

M

N

N

N

N

F

Females

M

N

N

N

N

F

F

Neutral

Even

M

M

N

N

N

F

F

Male

M

M

M

N

N

F

F

Females

M

M

N

N

F

F

F

Aggressive

Even

M

M

M

N

F

F

F

Male

M

M

M

M

N

F

F

Females

M

M

N

F

F

F

F

Salutation Prefix

The Component will begin every salutation with the text entered in this box. The default setting is “Dear.”

Salutation Suffix

The Component will end every salutation with the text entered in this box. The default setting is a semicolon.

Salutation Slug

The Component will use this text for a salutation if the input data did not contain enough information to construct a salutation from the parsed data. The default setting is “Dear Customer;.”

Middle Name Logic

The Component will parse the Middle Name depending on the method selected. The default setting is Parse Logic.

Option

Description

Parse Logic

In the absence of a hyphen, recognizable last names in the middle of a full name are treated as part of a hyphenated last name.

Hyphenated Last

The middle word is assumed to be part of the last name.

Middle Name

The middle word is assumed to be a middle name.

Salutation Preference

Use this box to change the order of preference for salutation formats. The highest format will be used if possible, followed by the second, until all possibilities are exhausted. If you do not wish a format to be used, place it below the selection for “Blank.” To change the order of preference, select the items on the list and click the arrow buttons to move the selection up and down the list.

The Address Tab configures the fields that will be used for data enrichment and validation for addresses. It can correct, standardize, parse and provide additional information such as the plus4, delivery point, congressional district, etc. Use this to select the database fields that will contain the address data to be verified and standardized.

Contents

For address verification, you must map fields for street address, city, and state, or street address and ZIP Code™.

../../_images/SSIS_CV_Address.png

Input Address

Last Name

The last name is required for the AddressPlus feature. You have the option of using the contents from one of the Last Name output fields from the Name Parse tab or select an existing field in the input database.

Company Name

Select the field in the input database that contains the company name information. This field is also required for the component to append secondary addresses to non-residential address records via SuiteLink™. Some companies have an assigned unique ZIP Code™ for certain facilities, so the Company Name field will allow the Component to assign the correct ZIP + 4® in these cases.

Address

Select the field in the input database that contains the first line of street address information. It may also contain secondary address information such as suite and private mailbox numbers. This field must be mapped for address verification to occur.

Address2

Select the field in the input database that contains the second line of a street address information, if any. For more information on how the Component handles the Address and Address2 fields, see Address Handling.

City

Select the field in the input database that contains the city information.

State

Select the field in the input database that contains the state information.

Zip/Postal Code

Select the field in the input database that contains the postal code information.

Country Code

Select the field in the input database that contains the abbreviation for the country, United States or Canada, where the address is located.

Additional Input Columns

Click the Additional Input Columns… button to map additional input fields.

../../_images/SSIS_CV_Address_AdditionalInputColumns.png

Suite

Select the field in the input database that contains the secondary address information, if any.

Urbanization

Select the field in the input database that contains the urbanization information, if any. Urbanization is used to break ties between similar addresses in Puerto Rico. The urbanization name tells the address checking logic which “neighborhood” to look in if more than one likely address candidate is found. If just one address is found, the address checking logic can correct the address and return the urbanization name.

Plus 4

Select the field in the input database that contains the Plus 4 extension for US ZIP codes, if this information is stored separately. If no address, city or state fields are mapped, this field and ZIP/Postal Code must be mapped for the GeoCoder output fields to be populated with nine-digit ZIP + 4 accuracy.

Output Address

Use this column to map the field names that will receive the verified and standardized address information. You may select existing fields or create new fields by entering the field names in the boxes.

Address

Map the field that will receive the standardized street address that was used for verification. This may be the contents of the Address2 input field, if address swapping has occurred.

Address2

Map the field that will receive the standardized street address that was not used for verification, if two address lines were present.

City

Map the field that will receive the city name. The information returned may be different than the contents of the City input field, if the preferred city name has been substituted for a vanity city name or if the address was coded to a different zip code instead.

State

Map the field that will receive the two-character state abbreviation.

Zip/Postal Code

Map the field that will receive the five-digit U.S. ZIP Code or the six-character Canadian Postal Code.

Country Code

Map the field that will receive the abbreviation for the country, United States or Canada, where the address is located.

Address Key

The Address Key is an eleven-digit numeric string value that uniquely identifies each address. It is used by other parts of the CVC to speed up their data retrieval.

Additional Output Columns

../../_images/SSIS_CV_Address_AdditionalOutputColumns.png

Address Information

Suite

Map the column that will receive the formatted suite information. If the suite column is not mapped, the suite information will be appended to Address2. If Address2 is not mapped the suite information will be appended to Address1.

Private Mailbox

Map the column that will receive the private mailbox number. This column is populated if the primary address was identified as a Commercial Mail Receiving Agency (CMRA) and the secondary address information is present. This column would also be populated if the secondary address information contains the string “PMB,” thus identifying the address as a private mailbox.

Urbanization

Map the column that will receive the Urbanization name, if any.

Plus 4

Map the column that will receive the four-digit extension from the ZIP + 4®. If this column is not mapped the Plus4 will be appended to the ZIP column.

Delivery Point & Check Digit

The deliver point, when combined with the check digit, is a three-digit number that combined with the ZIP + 4, generates a unique number for each address in that ZIP + 4. This number is used to generate barcodes, so if you plan to use this address data for commercial mailing, it would be necessary to map an output column for this information.

Carrier Route

The Carrier Route is a four-character code that indicates which mail carrier delivers to the input address.

The first character of this Carrier Route is always alphabetic and the last three characters are numeric. For example, “R001” or “C027” would be typical carrier routes. The alphabetic letter indicates the type of delivery associated with this address.

Code

Description

B

PO Box

C

City Delivery

G

General Delivery

H

Highway Contract

R

Rural Route

ZIP Code Type

The type of ZIP Code can indicate a specialized address, such as military or PO Box complexes.

Code

Description

P

A ZIP Code used only for PO Boxes

U

Unique: A ZIP Code assigned to an organization or government institution such as the IRS

M

Military: A ZIP Code assigned to an APO/FPO

Empty

This is a standard ZIP Code

Address Type Code & Address Type String

These two columns return a one-character code indicating the type of address that was processed and a text description of the address type. For U.S. addresses, the Component will return one of the following codes.

Code

Description

F

Firm or Company address

G

General Delivery address

H

High Rise or Business complex

P

PO Box address

R

Rural Route address

S

Street or Residential address

For Canadian addresses, the Component will return one of the following codes.

Code

Description

1

Street

2

Street Served By Route and GD

3

Lock Box

4

Route Service

5

General Delivery

A

Building

B

LVR Street

C

Government Street

D

LVR Lock Box

E

Government Lock Box

L

LVR General Delivery

CMRA

If this column returns the string “Y,” the primary input address is a Commercial Mail Receiving Agency (CMRA), such as the UPS Store® or similar private mailbox business location.

eLot® Number

This number indicates where the current address falls in the delivery order within the ZIP + 4®. The eLot columns may be required if you are sending the data on to be presorted for mailing using USPS® Standard Mail® rates.

eLot Order

The eLot Order returns the letters “A” or “D” to indicate whether the Post Office™ delivers mail within the ZIP + 4® in ascending eLot Number order or descending. Therefore, if the eLot Number is 1 and the eLot Order is “D,” then the address is typically the last delivery of the day.

Delivery Indication

This column returns a one-character code indicating whether the submitted address is “R,” a residence; “B,” a business; or “U,” the status is unknown.

Geographic Information

City Abbreviation

If the name returned by the City column is longer than 13 letters, the City Abbreviation column will return the official abbreviation the Post OfficeTM has associated with that city or municipality name. For example, the City Abbreviation column will return the abbreviation “Rcho Sta Marg” for “Rancho Santa Margarita.” If the value returned by the City column is 13 letters or shorter, the City Abbreviation column will return the full city or municipality name.

County Name

This column returns the name of the county where the input address is located.

County FIPS

This column returns the six-digit Federal Information Processing Standard (FIPS) code for the county where the input address is located.

Congressional District

This column returns the standard postal abbreviation for the state, followed by a two-digit number that indicates the congressional district where the input address is located.

Time Zone

This column returns the name of the time zone where the verified input address is located.

Time Zone Code

This column returns a one- or two-digit number code for the time zone where the verified input address is located. The number also indicates the number of hours that the time zone is behind UTC/GMT. In other words, Eastern Standard Time has a time zone code of 5, indicating that the Eastern time zone is five hours behind UTC/GMT. This number does not indicate differences due to daylight savings time.

Parsed Address Columns

Address Range

This column returns the street number.

Pre-directional

This column returns any directional indicators that precede the street name. The directionals are returned as one- or two-character abbreviations. If the input data contained “Southwest,” it would be shortened to “SW.”

Street Name

This column returns only the street name, minus the suffixes or directionals. For “SW Main Street,” this would return “Main.”

Suffix

This column returns the standard abbreviations for the street types: “RD,” “ST,” “AVE,” “BLVD,” etc.

Post-directional

This column returns any directional indicators that follow the street name. The directionals are returned as one- or two-character abbreviations. If the input data contained “Southwest,” it would be shortened to “SW.”

Suite Name

This column returns the descriptive portion of the secondary address: “SUITE,” “APT,” “UNIT,” etc.

Suite Number

This column returns the numeric portion of the secondary address.

Private Mailbox Name

This column returns the descriptive portion of the private mailbox number. A private mailbox, or PMB, is a secondary address associated with a Commercial Mail Receiving Agency (CMRA). Because the CMRA may itself be located in a suite, such an address may have both a suite number and a PMB number. The name portion of the PMB will normally be either “#” or “PMB.”

Private Mailbox Number

This column returns the numeric portion of the private mailbox number.

Route Service

This column returns the route service number for a Canadian address. Route Service is typically used to designate an address in a rural area.

Lock Box

This column returns the lock box number for a Canadian address. Lock boxes are similar to PO Boxes and the terms are often used interchangeably.

Delivery Installation

This column returns the delivery installation information for a Canadian address. The delivery installation is the Canada Post facility that services the address.

Extra Information

This column returns any text from the street address column that does not fit into one of the above categories.

Address Verify Options

Click the Address Verify Options button on the Address tab to access this screen. These options control the level of verification and enable or disable certain features of the Contact Verify Component.

../../_images/SSIS_CV_Address_AddressVerifyOptions.png

Remember that DPV®, LACSLink®, and SuiteLink® processing are required in order to generate a CASSTM form 3553. If a CASSTM form is not required for some reason, disabling one or more of these features will reduce the memory requirements and speed up processing.

Address Verify Options

Country

Select U.S., Canada, or both. If you only need to verify Canadian or U.S. addresses, selecting the option for just that country prevents the data files for the other country from being loaded, reducing memory requirements and increasing the processing speed.

Perform DPV®

DPV processing verifies that a record contains a deliverable address, down to the secondary address (suite) level. Uncheck the box to disable DPV processing. This will speed up processing but the Component will only be able to validate that the address falls within a valid street range of addresses and assign the ZIP + 4 code accordingly. DPV processing is required to generate a CASS Form 3553.

Perform LACSLink® Lookups

Some rural route addresses are converted to city-style addresses to allow emergency services (ambulance, police, fire, and so on) to find these addresses faster. The LACSLink service matches the old address with the updated address and corrects it as part of the address verification process. Uncheck the box to disable LACSLink processing. This will speed up processing but the Component will not update addresses that have changed. LACSLink processing is required to generate a CASS Form 3553.

Perform SuiteLink® Lookups

SuiteLink is a service from the U.S. Postal Service® that links a high rise business address to a suite number and updates address records with missing suite information. Uncheck the box to disable SuiteLink processing. This will speed up processing but the Component will not update business addresses that are missing suite information. SuiteLink requires a Company input column. SuiteLink processing is required to generate a CASS Form 3553.

Perform AddressPlus Lookups

AddressPlus appends secondary address information, such as apartment numbers, to residential addresses and some business addresses not covered by the SuiteLink database. Uncheck the box to disable AddressPlus processing. AddressPlus requires a last name. This can either be a last name column from the input data, or one of the last name output columns mapped on the Name Parse tab.

Perform Delivery Indicator Lookups

Delivery Indicator indicates whether a given address is residential or business. Since some shipping rates are different for residential or business addresses, this information can potentially save a great deal of money.

Use Preferred City Names

For every city, there is an official name that is preferred by the U.S. Postal Service. There may be one or more unofficial or “vanity” names in use. Normally, the Component allows you to verify addresses using known vanity names. If this box is checked, the Component will substitute the preferred city name for any vanity name when it verifies an address.

Diacritic Mode

This setting controls how the Component will handle diacritic characters in French words for addresses located in Quebec. The default setting is for the Component to return data with diacritic characters if they were already present, otherwise not. The other settings are to always return data from Quebec addresses with diacritic characters, even if they were not present in the input data, or to always replace the diacritic characters if they were present in the input data.

US 3553 CASS Form

If the box is checked, the Component will generate a CASS Form 3553 after processing all records. In that case, the address information boxes must be filled out with the contact information for the company that owns the data being processed. A couple of the columns require further explanation.

Processor Name

This is the name of the company performing the processing, if different from the list owner. In simple terms, this is the name of the company that owns the copy of Component being used to process the current list.

List Name

This is a name or ID number that identifies the list being processed.

Save in File

Click the folder button and browse to the location where you want the Component to save the HTML file containing the CASS Form 3553.

Canadian SOA Form

If you want the Component to generate a Summary of Addresses (SOA) form, check the box and fill in the address columns.

Save in File

Click the folder button and browse to the location where you want the Component to save the HTML file containing the SOA Form.

Saving the Options Settings

Click the OK button to save the current settings and close the Address Verify Options screen.

Address Handling

A key concept for address verification is understanding how the Component handles address data. The Component can accept two lines of street address information via the Address and Address 2 input fields.

The value passed to the Address input field will typically contain the primary street address (Street number, street name, plus any directionals and street suffixes). It may or may not contain also a secondary address, such as a suite number, address number, unit number, or a private mailbox located at a commercial mail receiving agency (CMRA).

The value passed to the Address 2 input field will often contain the secondary address information, if it is not submitted via Address or Suite input fields. The Address 2 input field may also be used if there is another primary address, either a Post Office Box or a separate street address, that is part of the same record.

If secondary address information is submitted via the Address 2 input field, the Component will append this information to the value passed to the Address input field before processing the record.

Example 1:

If the following were submitted:
Address Line 1: 1234 Main Street
Address Line 2: Suite #101
This is the address that would actually be verified:
Address Line 1: 1234 Main Street Suite #101
Address Line 2: <empty>

If an additional primary address was sent to the Address 2 input field, such as a P.O. Box or a second street address, and the address sent to the Address input field cannot be verified, then the Component will attempt to verify the second address line.

Example 2:

If the following were submitted:
Address Line 1: 1234 Main Street
Address Line 2: P.O. Box 101
Assuming that the first address didn’t contain a verifiable address, this is when the Component would consider the contents of the second address line.
If the second address line contains a verifiable address, then the values submitted via the Address 2 field will be used.
In that case, the Component will swap the values submitted via the Address and Address 2 input fields and return the standardized contents of these fields in this order:
The Address output field returns “P.O.Box 101.”
The Address 2 output field returns “1234 Main St.”
If the contents of neither field can be successfully verified, the Component will flag the record as unverified and the values submitted to the Address and Address 2 input fields will be returned in their original order:
The Address output field returns “1234 Main Street.”
The Address 2 output field returns “P.O.Box 101”

Secondary Addresses

Secondary addresses include suite numbers, unit numbers and residential apartment numbers. It could also refer to a private mailbox (PMB) at a Commercial Mail Receiving Agency (CMRA). The secondary address can be passed at the end the first address line, as the address 2 input field or via the Suite input field. The National Postal database identifies certain primary addresses as high rises, business parks and apartment buildings. Therefore, the Component would be able to assign the correct secondary address designator to the following address:
1234 Main St #101
For example, if the primary address were an apartment complex, the Component would return “Apt 101” as the suite information. CMRAs like the UPS Store® and other mailbox stores are a special case. These are often located at shopping centers and the store itself will have a suite number. This means that addresses located at a CMRA will often have both a suite number and a PMB number, like this:
1234 Main Street
Suite C1 PMB#101

CMRAs are identified in the national address database as this kind of business.

Example
1234 Main Street #101
Assuming that 1234 Main Street is identified in the national database as a CMRA, the “#101” portion would be returned by the Private Mailbox columnrather than the GetSuite function. Be aware that the Component will always treat a second item of secondary address information as a PMB number.
Example
1234 Main Street
Suite C1 #101
Whether or not the primary address is identified in the database as a CMRA, the Component will identify the “#101” portion of the second line as a PMB number and return this number in the Private Mailbox field. Even if an address is identified as a CMRA, if a secondary address is explicitly identified as a suite or anything other than private mailbox, this information will be treated as a suite and not a PMB.
Example
1234 Main Street
Suite 101
Assuming that the primary address belongs to a CMRA, because the secondary address was supplied as “Suite 101,” this will be treated as a suite number and not a PMB number. If the number 101 was meant to refer to a PMB and there is not Suite 101 at this address, this would probably cause the address to fail verification.

City or Postal Code Information

In order to verify an address, the Component requires information on the city, the state or province, and a ZIP or Postal code. With the city and the state/province, the Component will determine the correct ZIP/Postal code and use this to verify the address. Conversely, if supplied with a correct ZIP/Postal code, the Component can look up the city and the state/province. Therefore the ZIP/Postal code or the city plus the state/province are required. If the supplied city and state/province do not match the ZIP/Postal code, the Component will use the city and state/province to look up the ZIP/Postal code.

GeoCode determines the longitude and latitude of an address. This can be based on the centroid of the five-digit ZIP Code or the nine-digit ZIP + 4, but in many cases it can be accurate to rooftop level when there is sufficient address data available.

Contents

../../_images/SSIS_CV_GeoCode.png

Input Address

There are four options that control how the GeoCoder feature of the CVC acquires the data it needs for geocoding. The first, Not GeoCoding, disables the feature completely.

Output results of Address Process

If you are using the Address Verify features of the CVC, you can use the results based on those input columns as input for the GeoCoder. To do this, you must meet the minimum requirements for Address Verify: Address and ZIP Code, or address and city/state.

Address Key Column

If you have previously used the Address Verify feature on the input data, or used a similar product, such as Melissa’s Address Object or WebSmart Address Verifier service, you may have an Address Key available. You can use this column as the input for the GeoCoder feature.

Address Components

If you are GeoCoding new data and are not using the Address Verify features of the CVC, you can map the following columns here instead of the Address tab: Address, Address 2, City, State, ZIP/Postal Code.

Reprocessed Inputs

This will prevent records previously coded with GeoCoder Object from being counted towards your overall usage. By setting these properties to the values previously returned from GeoCoder Object, any records whose current values match the values set in the properties will not be counted against your total usage.

Output Columns

Latitude

This column returns a string value containing the latitude for the centroid of the location described by the submitted address. Latitude is the geographic coordinate of a point measured in degrees north or south of the equator. The Web service uses the WGS-84 standard for determining latitude. Since all North American latitude coordinates are north of the equator, this value will always be positive.

Longitude

This field returns a string value containing the longitude for the centroid of the location described by the submitted address. Longitude is the geographic coordinate of a point measured in degrees east or west of the Greenwich meridian. The Web service uses the WGS-84 standard for determining longitude. Since all North American longitude coordinates are west of the Greenwich meridian, this value will always be negative

Additional Columns

To map additional GeoCoder results, click the Additional Output Columns… button.

../../_images/SSIS_CV_GeoCode_Output.png

Geographic Information

County Name

This column returns the name of the county where the input address is located.

County FIPS

This column returns the six-digit Federal Information Processing Standard (FIPS) code for the county where the input address is located.

Place Code

This column returns the Census Bureau Place Code for the physical location of the input address. This information is useful when the boundaries of the ZIP + 4 overlap city limits.

Place Name

This column returns the official Census Bureau name for the location indicated by the Place Code.

Time Zone

This column returns the name of the time zone where the verified input address is located.

Time Zone Code

This column returns a one- or two-digit number code for the time zone where the verified input address is located. The number also indicates the number of hours that the time zone is behind UTC/GMT. In other words, Eastern Standard Time has a time zone code of 5, indicating that the Eastern time zone is five hours behind UTC/GMT.

This number does not indicate differences due to daylight savings time.

Census Information

The following columns return information useful in determining the demographic characteristics for the location of the input address.

CBSA Code

Metropolitan and micropolitan statistical areas (metro and micro areas) are geographic entities defined by the U.S. Office of Management and Budget (OMB) for use by Federal statistical agencies in collecting, tabulating, and publishing Federal statistics. The term “Core Based Statistical Area” (CBSA) is a collective term for both metro and micro areas. A metro area contains a core urban area of 50,000 or more population, and a micro area contains an urban core of at least 10,000 (but less than 50,000) population. Each metro or micro area consists of one or more counties and includes the counties containing the core urban area, as well as any adjacent counties that have a high degree of social and economic integration (as measured by commuting to work) with the urban core. The CBSA Code is a five-digit code for the specific CBSA of the input address.

CBSA Level

This column returns the level of the CBSA for the submitted address: micropolitan or metropolitan.

CBSA Title

This column returns the official U.S. Census Bureau name for the Core Based Statistical Area (CBSA) of the input address.

CBSA Division Code

This column returns the numeric code for the division within the Core Based Statistical Area (CBSA), if any. Some CBSA’s are broken into parts known as divisions. In this case, the CBSA Division columns will also be populated. If not, these columns will be empty. Each division also has a Code, Level, and Title.

CBSA Division Level

This column returns the level of the CBSA division for the submitted address: micropolitan or metropolitan.

CBSA Division Title

This column returns the official U.S. Census Bureau name for the CBSA division of the input address.

Census Block

This column returns the Census Block number for the input data.

Census blocks, the smallest geographic area for which the Bureau of the Census collects and tabulates decennial census data, are formed by streets, roads, railroads, streams, and other bodies of water, other visible physical and cultural features, and the legal boundaries shown on Census Bureau maps.

A Census Block Group is a cluster of blocks having the same first digit of their 3-digit identifying numbers within a Census Tract or Block Numbering Area (BNA). For example, Census Block Group 3 within a Census Tract or BNA includes all blocks numbered between 301 and 397. In most cases, the numbering involves substantially fewer than 97 blocks. Census Block Groups never cross Census Tract or BNA boundaries, however, they may cross the boundaries of county subdivisions, places, American Indian and Alaskan Native areas, urbanized areas, voting districts, and congressional districts. Census Block Groups generally contain between 250 and 550 housing units, with the ideal size being 400 housing units.

Census Blocks are small areas bordered on all sides by visible features such as streets, roads, streams, and railroad tracks, and by invisible boundaries such as city, town, township, county limits, property lines, and short, imaginary extensions of streets and roads.

The Census Block function returns a 4-character string. The first digit is the Block Group and the last three characters (if any) are the Block Number.

Census Tract

This column returns the Census Tract number for the input data.

Census Tracts are small, relatively permanent statistical subdivisions of a county. Census Tracts are delineated for all metropolitan areas (MA’s) and other densely populated counties by local census statistical areas committees following Census Bureau guidelines (more than 3,000 Census Tracts have been established in 221 counties outside MA’s).

This column returns a four or six-character string value.

The Census Tract is usually returned as a 4-digit number. However, in areas that experience substantial growth, a Census Tract may be split to keep the population level even. When this happens, a 6-digit number will be returned.

Contents

../../_images/SSIS_CV_PhoneEmail.png

Input Phone

This is where you map the input columns containing the original phone numbers.

Phone Number

The Phone input column requires a 10-digit phone number in a standard format.

Output Phone Components

Use these columns to map output columns for the geographical and parsed phone number data. Because of number portability, the geographic information may not reflect the actual location of the phone number’s owner for wireless or VOIP numbers.

Phone Number

The Phone output column name.

Format

Select the format to be used for phone numbers in your data.

Area Code

This column returns the Area Code portion of the parsed phone number.

Prefix

This column returns the three-digit prefix portion of the parsed phone number.

Suffix

This column returns the four-digit suffix portion of the parsed phone number.

Extension

If the input phone number contained any extension information, that would be returned by this column.

Additional Output Columns

Click the Additional Output Columns… button to map columns for information beyond basic phone number parsing.

../../_images/SSIS_CV_PhoneEmail_OutputPhoneColumns.png

City

This column returns the city associated with the phone number’s area code and prefix.

State/Province

This column returns the two-character state abbreviation associated with the phone number’s area code and prefix.

County Name

This column returns the five-digit county FIPS code associated with the phone number’s area code and prefix.

Country Code

This column returns the country code associated with the input phone number. This is the two-character abbreviation for the United States or Canada and not the numeric international dialing code.

Time Zone

This column returns the name of the time zone where the input area code and prefix are located.

Time Zone Code

This column returns a one- or two-digit number code for the time zone where the area code and prefix are located. The number also indicates the number of hours that the time zone is behind UTC/GMT. In other words, Eastern Standard Time has a time zone code of 5, indicating that the Eastern time zone is five hours behind UTC/GMT. This number does not indicate differences due to daylight savings time.

Input Email

Email Address

This column returns the complete email address, standardized, and corrected according to the options selected in the Email Standardize Options.

Output Email Components

Email Address

This column returns the complete email address, standardized, and corrected according to the options selected in the Email Standardize Options.

Standardization Options & Additional Output Columns

Click the Standardization Options & Additional Output Columns… button to control how the CVC corrects and standardizes the email address and map the parsing and information columns.

../../_images/SSIS_CV_PhoneEmail_EmailAdditionalOptions.png

Email Standardization Options

Correct Email Syntax

If this box is checked, the Component will do the following:

  • Remove any illegal characters from the address. This would include excess “@” characters.

  • Correct misspelled domain names. For example, yaho.com would be replaced by yahoo.com.

  • Correct misspelled top-level domain names. For example, .con would be replaced with .com.

Standardize Casing

If this box is checked, the Component will reset the input email address to all lowercase letters. For example, JSmith@MelissaData.com would become jsmith@melissadata.com

Update Domains

If this box is checked, the Component will attempt to update the domain name of the email address. One domain name can replace another in cases such as a change in corporate ownership. For example, the domain of subscribers to the @Home cable Internet service was switched from home.com to cox.net.

Lookup Options

Perform Database Lookup

If this box is checked, the domain name is checked against the Email Object’s local database of known valid and invalid domain names. This is faster but may not include recently registered domains.

Perform DNS Lookup

If this box is checked, the Component will attempt to validate the input email address by locating an MX (Mail Exchange) record or an A (Address Name) record for the domain on a DNS server. This is slower than a database lookup but potentially more accurate if the domain name is either obscure or new.

Perform Fuzzy Lookup

If this box is checked, the Component will attempt to validate the input email address by applying fuzzy matching algorithms to the input domain. This is slower than database lookup but potentially more accurate if the domain name contains a common or transposed typo.

Perform Web Service Lookup

If this box is checked, the Component will attempt to validate the input email address by locating the domain from a compiled and continuously updated list of valid domains. This is slower than a database lookup but potentially more accurate if the domain name is either obscure, new, or no longer valid.

Output Columns

Mail Box Name

This column returns the portion of the email address that precedes the “@” character. For ray@melissadata.com, this column would return ray.

Domain Name

This column returns the domain name from the parsed email address, minus the top level domain. For ray@melissadata.com, this column would return melissadata (without the .com).

Top Level Domain

This column returns the top level domain (TLD) indicator from the input email address. For ray@melissadata.com, this would return the dot com portion.

Top Level Domain Description

This column returns the official text description associated with the top level domain. Not all TLDs have a description.

This shows a list of the columns in your input table. Add a column to the Pass Through list to include the original contents in the output table.

../../_images/SSIS_CV_PassThroughColumns.png

Pass Through

Specify whether or not a column should be passed through to the output table(s).

Column Name

The column names from the original input table.

Current Usage

Where the column is currently being used as input.

The Contact Verify Component will output records in up to four streams. The Output Filter tab allows you to control which records go to which stream. Names and usage can be done in any manner. Filters are evaluated from the top down.

../../_images/SSIS_CV_OutputFilter.png

Result Codes

The output status of a record is returned via result codes returned by the underlying objects. The Component will combine them into a single, comma-delimited string and write them to the field mapped here. New field names can be created by typing the name into the Output Results Code box.

Output Filter

Select a filter to determine which records will be directed to a particular output stream. A custom filter may be created based on individual need, each pin filters the records in a cascading effect, where the results code is compared against the first expression (Pin 1) and then compared against Pin 2, and so on.

No Filter

All records are written to a single output stream.

Pre-built Filter

The Component comes with several pre-built filters for common applications:

  1. Full Address Matches - The record is valid only with a valid and deliverable mailing address.

  2. Street Address Matches - The record is valid if the street address is deliverable, even if the suite information is missing.

  3. Full Address Match and Deliverable by all carriers - The record is valid only with a valid and deliverable mailing address that is also served by alternate delivery services such as Fed Ex and UPS.

  4. Non-Questionable Names - The record is valid if the name information was complete and contains no questionable information (vulgarities or common nuisance names).

  5. Valid Email Domains - The record is valid if the domain for the email address was either confirmed to be valid or, at the very least, is not known to be invalid.

  6. Valid and Allowable Email Domains - The record is valid if the domain for the email address was either confirmed to be valid or is not known to be invalid, and is not a mobile email address (which are not deliverable per FCC regulations).

  7. Full Phone Matches - The record is valid only if the phone number was verified to the 10-digit level.

  8. Full and Partial Phone Matches - The record is valid if the phone number was verified to either the 10-digit or 7-digit level.

Custom Filter

A custom rule that would be equivalent to Pre-built rule #6 would read: “(ES01 OR ES03) AND NOT ES04.”

This means that the conditions for the rules are met if either result code “ES01” or “ES03” were returned and the result code “ES04” was not returned.

For more information, see Custom Output Filters below.

Attention

Custom rules are an advanced subject. You should be comfortable with Boolean operations before using custom rules in a production environment

Custom Output Filter

SSIS components will output records in up to four streams. Names and usage can be done in any manner. Filters are evaluated from the top down. A custom filter may be created based on individual need, each pin filters the records in a cascading effect, where the results code is compared against the first expression (Pin 1) and then compared against Pin 2, and so on.

Customer Filter

Select Customer Filter from the drop down and click the ... button next to the Customer Filter Expression text box to open an Output Filter Expression dialog box. These rules use Boolean operators (“OR,” “AND,” and “NOT”) and the result codes to construct filters. Records matching the filter will be directed to the valid table while the rest are directed to the invalid table.

../../_images/SSIS_IP_OutputFilter_ExpressionDialog.png

A custom rule example could be: “(AS01 OR AS02)”. This means that the conditions for the rules are met if either result code “AS01” or “AS02” were returned.

Validate Custom Rules

../../_images/SSIS_IP_OutputFilter_Validated.png

A custom expression may be tested by clicking on the Test Expression button. A pop-up dialog box will confirm whether or not the custom expression is acceptable.

Save as Custom Filter

../../_images/SSIS_IP_OutputFilter_SaveCustom.png ../../_images/SSIS_IP_OutputFilter_SaveRules.png

Right-click the Custom Expression, then left-click Save as Custom Filter from the pop-up. Enter a name for the filter in the window and click OK. It will now be available as a Pre-Built Filter for subsequent components.

Remove Selected Rule

To remove a Pre-Built Filter, select the filter from the Pre-Built drop-down list, right-click the filter, and select Delete Filter. Click Yes. After saving this component, it will no longer be available in new component configurations.

../../_images/SSIS_IP_OutputFilter_RemoveRule.png

Result Codes (Contact Verify)#

Fuzzy Match#

Overview#

The Fuzzy Match Component leverages a toolbox of state-of-the-art fuzzy matching algorithms and allows user-specified granular control on match thresholds and even fine tuning of the algorithms.

Tutorial#

The following steps will guide you in the basic usage of Fuzzy Match for SSIS.

Advanced Configuration#

In the Fuzzy Match Component, navigate to File > Advanced Configuration.

../../_images/SSIS_FM_Advanced_OnPremise.png

Licensing

License Key

Your License Key will activate the product for use.

Default Settings

The options selected here will be the initial settings for every comparison added from the Matches Tab.

Upper Matching Threshold

If a comparison produces a percentage above this percentage, it will be considered a match.

Lower Matching Threshold

If a comparison produces a percentage below this percentage, it will be considered a non-match.

Remove Whitespace

Checking this will cause the Fuzzy Match Component to ignore any space characters as well as letter casing.

Regular Expression Search

The Fuzzy Match Component will use this regular expression to match text in the source field and replace it according to the contents of the Regular Express Replace Field below.

Regular Expression Replace

If this field is blank, any text that matches the Regular Express Search will be deleted from the source data.

Regular Expression Behavior

Checking the box will cause the Fuzzy Match Component to ignore upper and lower case when using the Regular Expression Search.

Test Configuration (Fuzzy Match)

The Test Configuration screen displays basic information about the component.

../../_images/SSIS_FM_Advanced_OnPremise_Test.png

Customer ID

Displays the Customer ID associated with the License Key.

Component Version

Displays the current SSIS component version.

License Expiration

Displays the date when the Fuzzy Match Component License Key will expire.

Build Number

Displays the current development release build number of the Global Verify Component for SSIS. This is usually a three or four-character string.

Initialization

Displays any error messages generated by initializing the Fuzzy Match Component.

Add Component#

To add Fuzzy Match Component to your project, drag the component onto the Data Flow screen. This will snap the Fuzzy Match Component into your workflow space.

../../_images/SSIS_FM_Tutorial_Component.png

Connect Input#

Select a data flow source to be your input data. Many formats can be used as Sources, including Excel files, flat files or Access Input data sources. Connect this data source to the Fuzzy Match Component by dragging the arrow from your data flow source to the Fuzzy Match Component.

../../_images/SSIS_FM_Tutorial_Source.png

Configure Component#

Double click the Fuzzy Match Component to bring up the interface. See Fuzzy Match Settings.

Connect Output#

Add data destinations for downstream output. Connect the respective output filter pin to the output destination.

../../_images/SSIS_FM_Tutorial_Output.png

Save Settings#

Click File and select Save Selected Items to save the project

../../_images/SSIS_Tutorial_Save.png

Run Project#

Now, the project is ready to run.

Settings#

Fuzzy Match Tabs#

  • Matches
  • Advanced Options
  • Source Pass-Through Columns
  • Compare Pass-Through Columns

The Matches tab of the Fuzzy Match Component sets up the relationships between fields in the Source and Compare tables, and determines which algorithms will be used to determine the level of matches.

../../_images/SSIS_FM_Matches.png

Source

Select a field from the Source input table that will be compared to a field in the Compare input table.

Compare

Select the matching field in the Compare table.

Match Type

Select the fuzzy matching algorithm to use when comparing the two fields. For more information on the different algorithms, see Matching Algorithms.

Upper Threshold

Anything above this percentage will be considered an exact match. Anything below this threshold but above the Lower is considered a possible match.

Lower Threshold

Anything below this level will be considered a non-match. Anything above this threshold but below the Upper is considered a possible match.

WS

White Space. Check this box to ignore spaces in the data as well as letter casing.

Search

Enter a regular expression to search for this field in every record.

Replace

Enter the text to replace data that matches the regular expression entered in Search. If Search is filled and this field is left blank, the Fuzzy Match Component will delete any matching text.

Remove Current Row

Click this button to remove the currently selected comparison from the current setup.

N-Gram Size

This setting determines the size of the substring used by the following algorithms:

  • N-Gram

  • Dice’s Coefficient

  • Jaccard Similarity

  • Overlap Coefficient

For more information on the different algorithms, see Matching Algorithms.

The selections on the Advanced Options tab refine the criteria to determine a match between two records (how many fields must match or how exact the overall level of matching must be). Use this tab to set up fields in the output table that will receive the comparison data used and the percentages that determine the level of matching.

../../_images/SSIS_FM_AdvancedOptions.png

Result Codes

Enter a field name and this field will be used to store the overall match percentage for each record.

Threshold Logic

Select a rule to use when determining if two records match. The options are:

  • Every comparison must match.

  • At least one comparison must match.

  • The average match percentage must fall within a certain range.

  • A minimum number of comparisons must match.

Match Diagnostic Fields

The Fuzzy Match Component will create and populate the indicated fields. Use these to determine why certain comparisons do not produce the expected results. Fuzzy matching will create and fill one set of fields per comparison, replacing the “%” character with the comparison number in the field name.

Match Percentage

This field will contain the exact matching percentage for each comparison. The Output Match Percentage field will contain the average for every comparison.

Comparison Type

This field will contain the name of the matching algorithm used for this comparison.

Search Pattern

This field will contain the search string or regular expression (if any) entered for this comparison.

Replace Pattern

This field will contain the replacement text for each comparison.

Source Field Name

This field will contain the name of the source table field used by this comparison.

Compare Field Name

This field will contain the name of the compare table field used by this comparison.

Source Field Contents

This field will contain the contents of the source table field used by this comparison.

Compare Field Contents

This field will contain the contents of the compare table field used by this comparison.

This tab allows you to select which fields in the source table will be included in the output table.

../../_images/SSIS_FM_SourcePassThrough.png

Place a check mark next to every field from the source table that you wish to pass through to the output table. In the text box, enter the text that will be pre-appended to the field name when added to the output table.

../../_images/SSIS_FM_ComparePassThrough.png

Place a check mark next to every field from the compare table that you wish to pass through to the output table. In the text box, enter the text that will be pre-appended to the field name when added to the output table.

Matching Algorithms#

The Fuzzy Match Component can use any of the following matching algorithms on any column in your database:

Exact Matching

Determines whether two strings are identical.

Jaro

Gathers common characters (in order) between the two strings, then counts transpositions between the two common strings.

Jaro-Winkler

A variation to the Jaro algorithm. Strings that have matching characters at the beginning will be accounted for and are given additional weight to similarity.

N-Gram

Counts the number of common sub-strings (grams) of a specified length between the two strings.

Dice’s Coefficient

A variation of the N-Gram algorithm. Dice’s Coefficient counts matching n-Grams but does not count extra duplicate n-Grams.

Jaccard Similarity

A variation of the N-Gram algorithm. The Jaccard Similarity is identical to the N-Gram algorithm but uses a different formula for similarity computation.

Overlap Coefficient

A variation of the N-Gram algorithm. The Overlap Coefficient is identical to the N-Gram algorithm but uses a different formula for similarity computation.

Levenshtein

The Levenshtein algorithm computes for the similarity of two strings by taking into account the amount of character mistakes. Mistakes are based off the number of incorrect characters, inserted characters, and deleted characters.

Needleman-Wunsch

A variation of the Levenshtein algorithm. Levenshtein and Needleman-Wunsch are identical except that character mistakes are given different weights depending on how far two characters are on a standard keyboard layout. For example: A to S is given a mistake weight of 0.4, while A to D is a 0.6 and A to P is a 1.0.

Smith-Waterman-Gotoh

A variation of the Needleman-Wunsch algorithm. Needleman-Wunsch and Smith-Waterman-Gotoh are identical except that character deletions are given a different weight. This effectively adds the “understanding” that the keyboarder may have tried to abbreviate one of the words.

MDKeyboard

A variation of the Smith-Waterman-Gotoh algorithm. Smith-Waterman-Gotoh and MDKeyboard are identical except that character transpositions are given a different weight. This effectively adds the “understanding” that the keyboarder may have typed in one character before another.

Longest Common Substring (LCS)

The LCS algorithm counts for the longest common set of adjacent characters between 2 strings.

Containment

The Containment algorithm will return 100% if one string is a subset of another. A 0% is returned otherwise.

Frequency

The Frequency algorithm will match the characters of one string to the characters of another without any regard to the sequence. For example “abcdef” would be considered a 100% match to “badcfe.”

SoundEx

SoundEx is a string transformation and comparison-based algorithm. For example, JOHNSON would be transformed to “J525” and JHNSN would also be transformed to “J525” which would then be considered a SoundExing match after evaluation. If the original strings are identical, SoundEx will return 100%. If the SoundEx’d strings are equal, the algorithm returns 99%. Otherwise, SoundEx will return 0%.

PhonetEx

A variation of the SoundEx Algorithm. PhonetEx takes into account letter combinations that sound alike, particularly at the start of the word (such as ‘PN’ = ‘N’, ‘PH’ = ‘F’).

Double Metaphone

A variation of the PhonetEx Algorithm. Double Metaphone performs 2 different PhonetEx-style transformations. It creates two PhonetEx-like strings (primary and alternate) for both strings. The logic used for Double Metaphone Similarity works as follows:

  • If primary1 = primary2 and alternate1 = alternate 2, then we have a very good match (99%).

  • If either primary1 = alternate2 or alternate1 = primary2, and alternate1=alternate2, then we have a good match (85%).

  • If alternate 1 = alternate2, we have an acceptable match (75%).

Result Codes (Fuzzy Match)#

Generalized Cleanser#

Overview#

Welcome to the Melissa Generalized Cleanser for SSIS. The Generalized Cleanser Component is a comprehensive tool that allows the user to standardize and cleanse their own data with respect to capitalization, punctuation, abbreviation, regular and custom expressions, and string replacement. This allows the user a high level of customization through combinations of these different actions, allowing easy standardization of any general data type.

Tutorial#

The following steps will guide you in the basic usage of Generalized Cleanser Component for SSIS.

Advanced Configuration#

In the Generalized Cleanser Component, navigate to File > Advanced Configuration.

../../_images/SSIS_GC_Advanced.png

Either the component version or build number will assist Melissa Technical Support in determining if you have the latest software installed on your system.

Generalized Cleanser SSIS Component

Component Version

The version number of the component installed on your local system.

Build Number

The build number of the Generalized Cleanser installed on your local system.

Generalized Cleanser Library Build

The build number of the Generalized Cleanser Library.

Licensing

License Key

This is where you enter your License Key given to you by your Melissa Sales Representative.

License Expiration

This will show you when your License Key will expire.

Customer ID

This will automatically update to your Customer ID if you have a valid License Key.

Generalized Cleanser Settings

Data File Path

This should point to the folder containing your .dat file for the Generalized Cleanser.

Test Configuration

This will test your License Key and ensure you have authorization to use the Generalized Cleanser.

Add Component#

To add Generalized Cleanser Component to your project, drag the component onto the Data Flow screen. This will add the Generalized Cleanser Component into your workflow.

../../_images/SSIS_GC_Tutorial_Component.png

Connect Input#

Select a data flow source to be your input data. Many formats can be used as sources:

  • Excel Files

  • Flat Files

  • Access Input Data Sources

Connect this Data Source to the Generalized Cleanser Component by clicking on your Data Source and dragging to the Generalized Cleanser Component.

../../_images/SSIS_GC_Tutorial_Input.png

Configure Component#

Double click the Generalized Cleanser Component to bring up the interface. See Generalized Cleanser Component Settings.

Connect Output#

Select the desired output destination type and click and drag from the Generalized Cleanser Component to the Destination Output. Once they are connected, configure your output.

../../_images/SSIS_GC_Tutorial_Output.png

Save Settings#

Click File and select Save All to save everything in your project.

../../_images/SSIS_Tutorial_Save.png

Run Project#

Now the project is ready to run.

Settings#

Generalized Cleanser Fields#

  • Component
  • Expression Builder

Contents

../../_images/SSIS_GC_Source.png

Cleansing Details

These are the operations you are creating to cleanse your data. The following operations are available for your use:

Case

Cleanses the casing for your data (e.x. MeLiSa DaTA → Melissa Data)

Punctuation

Cleanses the punctuation for your data (e.x. FIND EXAMPLE)

Expression

Removes your data and replaces with an expression

Regular Expression Search Replace

Searches for an expression and will replace that expression with another expression or data. (E.x. Resumé → Resum)

Adding a Search & Replace Table

The Text Search Replace Operation has the functionality to add a Search & Replace table. The Search & Replace table is used as a dictionary that contains the values to search for and the values to replace them with. Generalized Cleanser will then use the Search & Replace table during processing to make the updates to the values contained in the table. It must adhere to the following format:

  • Regular Search Expression, followed by a TAB, the replace expression and a CR/LF.

See the example below: It contains vehicle models to search for and the values to replace it with.

../../_images/SSIS_GC_SearchReplaceExample.png
  • Select the Source Field you would like to apply the Search & Replace table to.

  • Press the + sign to add an Operation and Select the Operation Text Search Replace.

  • Then select the Use Search & Replace Table File option.

  • Enter the path to the search & replace table or select using the Folder option.

  • Once added and the options are selected, press ok.

Text Search Replace

Searches for a string to replace with another string. (E.x. Volvo → Toyota)

Triggers

There are 3 triggers that you can use to determine whether or not a rule should be used for a record:

None

This will trigger on every record.

Expression

Only trigger when a record matches this expression.

Regular Expression

Only trigger when a record matches this regular expression.

You can use our Expression Elements to build your expressions, each element will have a description of what it is and does when you hover your mouse over it. You may also directly type your expression into the “Use the specified expression” box above. Once you are finished creating your expression, you have the option to test that expression for valid syntax. You may also click the “Save the above expression as a new Pre-Build Expression” for future use.

Contents

../../_images/SSIS_GC_ExpressionBuilder.png

Column Names

The Columns names section lists the columns available from the input.

Variables

The Variables section lists the following system variables:

Variable Name

Data Type

Description

__INPUT__

String Functions/ Operators

The String Functions/Operators section lists the following functions/operators:

Operators

Operator

Description

Not Equal (!=)

Performs a comparison to determine if two expressions are not equal.

Less (<)

Performs a comparison to determine if the first expression is less than the second one.

Greater (>)

Performs a comparison to determine if the first expression is greater than the second one.

Equal (==)

Performs a comparison to determine if two expressions are equal.

Concatenate (+)

Concatenates two expressions.

Greater or Equal (>=)

Performs a comparison to determine if the first expression is greater than or equal to the second one.

Less or Equal (<=)

Performs a comparison to determine if the first expression is less than or equal to the second one.

Functions

Function

Description

Lower()

Returns a character expression after converting uppercase characters to lowercase characters.

Left()

Returns part of a character string starting at a specified number of characters from the left.

LTrim()

Returns a character expression after removing leading spaces.

Len()

Returns the number of characters in a character expression.

PadLeft()

Retruns a character expression after padding a specified string to the left of a specified character.

FindString()

Returns the one-based index of the specified occurrence of a character string within an expression.

Upper()

Returns a character expression after converting lowercase characters to uppercase characters.

Trim()

Returns a character expression after removing leading and trailing spaces.

SubString()

Returns a part of a character expression.

Reverse()

Returns a character expression in reverse order.

PadRight()

Retruns a character expression after padding a specified string to the right of a specified character.

Right()

Returns part of a character string starting at a specified number of characters from the right.

RTrim()

Returns a character expression after removing trailing spaces.

Replace()

Returns a character expression after replacing a string within the expression with either a different string or an empty string.

Replicate()

Returns a character expression, replicated a specified number of times.

Numeric Functions/ Operators

The Numeric Functions/Operators section lists the following functions/operators:

Operators

Operator

Description

Multiply (*)

Multiplies two numeric expressions.

Modulus (%)

Provides the integer remainder after dividing the first numeric expression by the second one.

Not Equal (!=)

Performs a comparison to determine if two expressions are not equal.

Less (<)

Performs a comparison to determine if the first expression is less than the second one.

Divide (/)

Divides the first numeric expression by the second one.

Greater (>)

Performs a comparison to determine if the first expression is greater than the second one.

Subtract (-)

Subtracts the second numeric expression from the first one.

Equal (==)

Performs a comparison to determine if two expressions are equal.

Add (+)

Adds two numeric expressions.

Greater or Equal (>=)

Performs a comparison to determine if the first expression is greater than or equal to the second one.

Less or Equal (<=)

Performs a comparison to determine if the first expression is less than or equal to the second one.

Bitwise OR (|)

Perform a bitwise OR on two numbers.

Bitwise AND (&)

Perform a bitwise AND on two numbers.

Bitwise XOR (^)

Perform a bitwise EXCLUSIVE OR on two numbers.

Bitwise NOT (~)

Perform a bitwise NOT on two numbers.

Functions

Function

Description

Abs()

Returns the absolute, positive value of a numeric expression.

Sqrt()

Returns the square root of a numeric expression.

Floor()

Returns the largest integer that is less than or equal to a numeric expression.

Round()

Returns a numeric expression that is rounded to the specified length or precision.

Sign()

Returns the positive (+), negative (-), or zero (0) sign of a numeric expression.

Ln()

Returns the natural logarithm of a numeric expression.

Log()

Returns the base-10 logarithm of a numeric expression.

Exp()

Returns the exponent to base e of the specified expression.

Ceiling()

Returns the smallest integer that is greater than or equal to a numeric expression.

Square()

Returns the square of a numeric expression.

Power()

Returns the result of raising a numeric expression to a power.

Boolean Functions/ Operators

The Boolean Functions/Operators section lists the following functions/operators:

Operators

Operator

Description

Not Equal (!=)

Performs a comparison to determine if two expressions are not equal.

Conditional (?:)

Returns one of two expressions based on the evaluation of a Boolean expression.

Logical NOT (!)

Negates a Boolean operand.

Logical AND (&&)

Performs a logical AND operation.

Equal (==)

Performs a comparison to determine if two expressions are equal.

Logical OR (||)

Performs a logical OR operation.

Functions

Function

Description

IsIBAN()

Returns a Boolean result based on whether an expression is a valid international bank account number (IBAN).

IsNull()

Returns a Boolean result based on whether an expression is null.

Date/Time Functions/Operators

The Date/Time Functions/Operators section lists the following functions/operators:

Operators

Operator

Description

Not Equal (!=)

Performs a comparison to determine if two expressions are not equal.

Less (<)

Performs a comparison to determine if the first expression is less than the second one.

Greater (>)

Performs a comparison to determine if the first expression is greater than the second one.

Equal (==)

Performs a comparison to determine if two expressions are equal.

Greater or Equal (>=)

Performs a comparison to determine if the first expression is greater than or equal to the second one.

Less or Equal (<=)

Performs a comparison to determine if the first expression is less than or equal to the second one.

Functions

Function

Description

Day()

Returns an integer that represents the day of the specified date.

GetUTCDate()

Returns the current date of the system in UTC time (Universal Time Coordinate or Greenwich Mean Time).

Year()

Returns an integer that represents the year of the specified date.

DateAdd()

Returns a new DT_DBTIMESTAMP value by adding a date or time interval to a specified date.

DateDiff()

Returns the number of date and time boundaries crossed between two specified dates.

GetDate()

Returns the current date of the system.

DatePart()

Returns an integer representing a datepart of a date.

Month()

Returns an integer that represents the month of the specified date.

Misc. Functions/ Operators

The Misc. Functions/Operators section lists the following functions/operators:

Operators

Operator

Description

Conditional(?:)

Returns one of two expressions based on the evaluation of a Boolean expression.

Functions

Function

Description

Null()

Returns a null value of a requested data type.

IsNull()

Returns a Boolean result based on whether an expression is null.

DataType Casts

The DataType Casts section lists the following system variables:

Data Type

Description

DT_STR

A null-terminated ANSI/MBCS character string with a maximum length of 8000 characters. (If a column value contains additional null terminators, the string will be truncated at the occurrence of the first null.)

DT_DATE

A date structure that consists of year, month, day, hour, minute, seconds, and fractional seconds. The fractional seconds have a fixed scale of 7 digits.

The DT_DATE data type is implemented using an 8-byte floating-point number. Days are represented by whole number increments, starting with 30 December 1899, and midnight as time zero. Hour values are expressed as the absolute value of the fractional part of the number. However, a floating point value cannot represent all real values; therefore, there are limits on the range of dates that can be presented in DT_DATE. On the other hand, DT_DBTIMESTAMP is represented by a structure that internally has individual fields for year, month, day, hours, minutes, seconds, and milliseconds. This data type has larger limits on ranges of the dates it can present.

DT_DECIMAL

An exact numeric value with a fixed precision and a fixed scale. This data type is a 12-byte unsigned integer with a separate sign, a scale of 0 to 28, and a maximum precision of 29.

DT_NUMERIC

An exact numeric value with a fixed precision and scale. This data type is a 16-byte unsigned integer with a separate sign, a scale of 0 - 38, and a maximum precision of 38.

DT_BOOL

A Boolean value.

DT_DBTIMESTAMP

A timestamp structure that consists of year, month, day, hour, minute, second, and fractional seconds. The fractional seconds have a fixed scale of 3 digits.

DT_STR

Convert expression to a Unicode string of maximum length <len>

DT_TEXT

Convert expression to a ANSI/MBCS string using code page <codepage>

DT_NTEXT

Convert expression to a Unicode string.

DT_I1

Convert expression to an 8-bit signed integer.

DT_I2

Convert expression to a 16-bit signed integer.

DT_I4

Convert expression to a 32-bit signed integer.

DT_I8

Convert expression to a 64-bit signed integer.

DT_UI1

Convert expression to an 8-bit unsigned integer.

DT_UI2

Convert expression to an 16-bit unsigned integer.

DT_UI4

Convert expression to an 32-bit unsigned integer.

DT_UI8

Convert expression to an 64-bit unsigned integer.

DT_R4

Convert expression to a single-precision (32-bit) floating point number.

DT_R8

Convert expression to a double-precision (64-bit) floating point number.

DT_CY

Convert expression to a fixed-point decimal with a scale of 4.

DT_DBDATE

Convert expression to a date. yyyy-mm-dd

DT_DBTIME

Convert expression to a time. hh:mm:ss

DT_DBTIME2

Convert expression to a time. hh:mm:ss[.fffffff]

DT_DBTIMESTAMP

Convert expression to a timestamp. yyyy-mm-dd hh:mm:ss[.fff]

DT_DBTIMESTAMP2

Convert expression to a timestamp. yyyy-mm-dd hh:mm:ss[.fffffff]

DT_DBTIMESTAMPOFFSET

Convert expression to a timestamp offset. yyyy-mm-dd hh:mm:ss[.fffffff] [{+|-} hh:mm]

DT_FILETIME

Convert expression to a filetime. yyyy-mm-dd hh:mm:ss:fff

Result Codes (Generalized Cleanser)#

Global Verify#

Overview#

  • Verifies international addresses for over 240 countries.

  • Transliterates many major character sets and displays output in either native or Roman characters

  • Geocodes international postal addresses by adding a latitude-longitude coordinate.

  • Verifies phone numbers from over 230 countries and territories, append useful geographic information, and perform, premium real-time checks to distinguish live numbers and phone types.

  • Verifies and parse email addresses, correct common typographical errors, and standardize email addresses. Features real-time email mailbox validation which removes up to 95% of bad emails.

  • Parse, genderize, and standardize personal names as well as able to standardize company names

  • List of supported Countries

Tutorial#

The following steps will guide you in the basic usage of Global Verify for SSIS.

Advanced Configuration#

In the Global Verify Component, navigate to File > Advanced Configuration.

../../_images/SSIS_GV_Advanced_Cloud.png
Melissa Cloud#

For Melissa Cloud processing, you need the License Key issued to you by your sales representative. The other settings on this part of the Advanced Configuration screen should not be changed unless you are specifically directed to do so by Melissa Technical Support.

After entering the License Key, click the Show Details button at the bottom of this screen to verify that the License Key was entered correctly.

Warning

The following items should only be altered if directed by Melissa’s support staff.

Use Proxy

If your network uses a Proxy Server, check this box and enter the Proxy information below.

Proxy URL

If your network uses a Proxy Server, enter the Proxy URL information on this field in order for the Global Verify Component to communicate with the Melissa Cloud. The format is “URL:port”.

User Name

The user name for your Proxy Server, if any.

Password

The password for your Proxy Server, if any.

Maximum Threads

Specify the number of simultaneous requests to be sent to the Melissa Cloud Services to run in parallel.

Maximum Transaction Size

Specify the number of records to be sent to the Melissa Cloud per request.

Request Timeout

Specify the number of seconds for the Global Verify Component to wait before timing out. Some requests may experience connection lag or timeouts due to network problems.

Number of Retries

Specify the number of times the Global Verify Component should re-send a request to the Melissa Cloud due to any exceptions.

Abort on Critical Error

Will abort the process, in event of critical errors related to the Component such as the Web service code WSE00; Unexpected Error-Please Retry.

Test Configuration (Global Verify Cloud)

Either the version number or build number will assist Melissa Technical Support in determining if you have the latest software installed on your system.

../../_images/SSIS_GV_Advanced_Cloud_Test.png

Global Verify Component

Component Version

Displays the current SSIS component version.

Build Number

Displays the current development release build number of the Global Verify Component for SSIS. This is usually a three or four-character string.

Web Services Connectivity Info

Connect

Displays an icon indicating if there is a connection to the web service or not.

Web Service

Displays the name of the web service.

Version

This box displays the version number of the Property Web Service.

Service Request

Displays the Web Service request status with the number of retries and seconds to connect.

On-Premise#

For Melissa On-Premise processing, you need the License Key issued to you by your sales representative. The other settings on this part of the Advanced Configuration screen should not be changed unless you are specifically directed to do so by Melissa Technical Support.

After entering the License Key, click the Show Details button at the bottom of this screen to verify that the License Key was entered correctly. If you have an on-premise License Key, the on-premise settings buttons should now appear. Please check the countries you want to be processed locally on your machine by clicking the checkbox. Make sure to put the data file path where all of your global data files are stored.

../../_images/SSIS_GV_Advanced_OnPremise.png

Warning

The following items should only be altered if directed by Melissa’s support staff.

Use Proxy

If your network uses a Proxy Server, check this box and enter the Proxy information below.

Proxy URL

If your network uses a Proxy Server, enter the Proxy URL information on this field in order for the Global Verify Component to communicate with the Melissa Cloud. The format is “URL:port”.

User Name

The user name for your Proxy Server, if any.

Password

The password for your Proxy Server, if any.

Maximum Threads

Specify the number of simultaneous objects to be initialized and threaded to run in parallel. Recommended one thread per core.

Maximum Transaction Size

Specify the number of records to be sent to the object per request.

Request Timeout

Specify the number of seconds for the Global Verify Component to wait before timing out. Some requests may experience connection lag or timeouts due to network problems or hard drive I/O.

Number of Retries

Specify the number of times the Global Verify Component should re-send a request to the Melissa Cloud due to any exceptions.

Abort on Critical Error

Will abort the process, in event of critical errors related to the Component such as the Web service code WSE00; Unexpected Error-Please Retry.

Test Configuration (Global Verify On Premise)

Either the version number or build number will assist Melissa Technical Support in determining if you have the latest software installed on your system.

../../_images/SSIS_GV_Advanced_OnPremise_Test.png

Global Verify Component

Component Version

Displays the current SSIS component version.

Build Number

Displays the current development release build number of the Global Verify Component for SSIS. This is usually a three or four-character string.

Web Services Connectivity Info

Connect

Displays an icon indicating if there is a connection to the web service or object initialization.

Web Service

Displays the name of the web service or object.

Version

This box displays the version number of the Web Service or Object DLL.

Service Request

Displays the Web/On-Premise Service request status with the number of retries and seconds to connect.

Add Component#

To add the Global Verify Component to your project, drag the component onto the Data Flow screen. This will snap the Global Verify Component into your workflow space.

../../_images/SSIS_GV_Tutorial_Component.png

Connect Input#

Select a data flow source to be your input data. Many formats can be used as Sources, including Excel files, flat files or Access Input data sources. Connect this data source to the Global Verify Component by dragging the arrow from your data flow source to the Global Verify Component.

../../_images/SSIS_GV_Tutorial_Source.png

Configure Component#

Double click the Global Verify Component to bring up the interface. See Global Verify Component Settings.

Connect Output#

Add data destinations for downstream output. Connect the respective output filter pin to the output destination.

../../_images/SSIS_GV_Tutorial_Output.png

Save Settings#

Click File and select Save Selected Items to save the project

../../_images/SSIS_Tutorial_Save.png

Run Project#

Now, the project is ready to run.

Settings#

Global Verify Tabs#

  • Name
  • Address
  • Phone
  • Email
  • Pass-Through Columns
  • Output Filter
../../_images/SSIS_GV_Name.png

Parse and genderize a full name into its respective components.

Input Columns

Full Name

Select the field name that will contain the name information to be parsed. This field can contain one or two full names, such as “Mr. John Q. Smith, Jr.” or “John Q. and Mary S. Smith.”

Company

If the database records may be business type, include the company name here.

Country

The Country name input will be used during processing as a reference point to use the selected Country’s common language for more efficient Name parsing. The Country name, abbreviation or ISO code can be used.

Name Options

Name Order Hint

The Name Order Hint tells the Component in what order the name components will be found in the input full name, normal name order, last name first, or a mixture. The default is Varying. The options are:

Option

Description

DefinitelyFull

Name will always be treated as normal name order, regardless of formatting or punctuation.

VeryLikelyFull

Name will be treated as normal name order unless inverse order is clearly indicated by formatting or punctuation.

ProbablyFull

If necessary, statistical logic will be employed to determine name order, with a bias toward normal name order.

Varying

If necessary, statistical logic will be employed to determine name order, with no bias toward either name order.

ProbablyInverse

If necessary, statistical logic will be employed to determine name order, with a bias toward inverse name order.

VeryLikelyInverse

Name will be treated as inverse name order unless normal order is clearly indicated by formatting or punctuation.

DefinitelyInverse

Name will always be treated as inverse name order, regardless of formatting or punctuation.

MixedFirstName

Name field is expected to only contain prefixes, first, and middle names.

MixedLastName

Name field is expected to only contain last names and suffixes.

Middle Name Logic

This option controls how the Component will parse the Middle Name, depending on the method selected. The default setting is Parse Logic.

Option

Description

Parse Logic

In the absence of a hyphen, recognizable last names in the middle of a full name are treated as part of a hyphenated last name.

Hyphenated Last

The middle word is assumed to be part of the last name.

Middle Name

The middle word is assumed to be a middle name.

Correct Misspellings in First Name

If checked, the Component will use a database of common given names to correct obvious misspellings.

Company Output

Company

The company name.

Output Name Columns

Name 1

These fields apply to the first full name detected.

Name 2

These fields apply to the second full name detected. If the FullName input property contains multiple names, they’ll be located under Name 2.

Prefix

This field returns any part of the name that precedes the given name, such as “Mr.,” “Ms.,” or “Dr.”

First Name

This field returns the given name.

Middle Name

This field returns the middle names or initials.

Last Name

This field returns the family name.

Suffix

This field returns any part of the name that follows the family name, such as degrees (“MD” or “PhD”) and generational indicators (“IV” or “Jr.”.)

Gender

This field returns a gender indicator.

Nickname

This is a string value of an identified nickname from an inputted full name. A nickname is defined as an internal string surrounded by one of the nickname identifying characters [double quote], [single quote] or [parenthesis]. The identified nickname will be returned unstandardized with the identifier intact.

Professional Title

This is a string value of the professional title from an inputted full name. Many countries within the European Union identify professional titles as a datatype preceding the first name but separate from a name prefix.

Attention

Global Verify Address On Premise - 32bit mdGlobalAddr.dll deprecation

The Global Address Object 32bit mdGlobalAddr.dll file was deprecated on April 24th 2023. SSIS Global Verify Address On Premise users will be directly affected and will not be able to continue using SSIS Global Verify Address On Premise option. For more information, check SSIS Global Verify Address On Premise Users – Global Address Object 32bit dll Deprecation below.

SSIS Global Verify Address On Premise Users – Global Address Object 32bit dll Deprecation

The reason for deprecating the 32bit mdGlobalAddr.dll is due to issues encountered with backwards compatibility. As Visual Studio is a 32bit program and utilizes the 32bit directory during processing. The 32bit mdGlobalAddr.dll deprecation will directly affect functionality for SSIS Global Verify Address On Premise users. SSIS Global Verify Cloud users will not be affected by this change.

Transition Recommendations

Existing SSIS Global Verify Address On Premise clients are encouraged to transition over to Melissa’s other Global Address Verification platforms, such as:

Global Address Verification Web Service

  • Provides identical functionality to Melissa’s SSIS Global Verify Address On Premise product but over a Cloud environment. The Global Address Web Service is not slated for deprecation any time soon.

Global Address Verification Docs page: Global Address Verification

Unison by Melissa

  • Is a platform as a service that provides access to Melissa’s powerful Global Address Verification service. The Unison Platform allows enterprise level clients to create a self-hosted system housing the entire set of Melissa libraries and capabilities into one extensible platform.

Unison by Melissa Docs page: Unison

Global Address Object API

  • Consume the Global Address Object directly. This includes the libraries and data files needed to get started with Melissa’s powerful Global Address Verification API.

Global Address Object API Docs page: Global Address Object

For assistance for transitioning to Melissa’s Global Address Web Service contact Tech@melissadata.com

Contents

../../_images/SSIS_GV_Address1.png

Map the address input and output fields. Navigate between pages 1 to 4 by using the Next and Back buttons on the bottom of the window.

Input Columns

Organization

The name of any organization associated with the address record.

Address Line 1-8 (Address Line 1 Required)

Input fields for the address. Should contain the delivery address information (house number, thoroughfare, building, suite, etc.) but should not contain locality information (locality, administrative area, postal code, etc.) which have their own inputs.

At least one Address Line is required.

Last Name (US only)

This field has been added to allow the use of a Melissa proprietary database. For addresses missing a secondary like a suite or apartment, we can use the last name and append that information for residential addresses. This feature is only available for the US.

Double-Dependent Locality

The smallest population center data element. Depends on the Locality and Dependent Locality elements.

Dependent Locality

A smaller population center data element. Depends on the Locality element.

US Term: Urbanization.

In terms of US Addresses, this element applies only to Puerto Rican addresses. It is used to break ties when a ZIP Code is linked to multiple instances of the same address.

Locality (Required)

The most common population center data element.

US Term: City.

Canadian Term: Municipality.

See Note: For US and Canada Only.

Sub-Administrative Area

The smallest geographic data element.

US Term: County.

Administrative Area (Required)

The most common geographic data element.

US Term: State.

Canadian Term: Province.

See Note: For US and Canada Only.

Sub-National Area

The administrative region within a country on an arbitrary level below that of the sovereign state.

Postal Code (Required)

The complete postal code for a particular delivery point.

US Term: ZIP.

Canadian Term: Postcode.

See Note: For US and Canada Only.

Country (Required)

The country name, abbreviation, or code.

If Country field is not specified or is empty, use country

If the Country field is not specified or empty, select a country in the drop-down menu to use.

Note

For US and Canada Only

You must set either Locality and Administrative Area or Postal Code. If all three elements are provided and the Postal Code is incorrect, it can be corrected from the data on the Locality and Administrative Area.

Adddress Options

../../_images/SSIS_GV_Address1-AddressOptions.png

Country of Origin

This is used to determine whether or not to include the country name as the last line in Formatted Address

  • Acceptable Value: Any valid ISO-3166-1 Alpha-2, ISO-3166-1 Alpha-3, or ISO-3166-1 Numeric code.

  • If blank, invalid, or the same as the destination country, then the destination country is not appended to the end of the formatted address.

  • If valid and different from the destination country, then the destination country is appended to the formatted address.

  • US or US Territory:

  1. If Country of Origin and destination country being verified are both US or US Territories then the country will not be appended to Formatted Address.

  2. US Territories will have “Unite States of America” appended if the Country of Origin is not a US Territory, but the Country Name and ISO codes will be that of the territory.

  3. Canada is treated like any other non-US Territory.

Output Script

The character set to use to format the output data.

  • Match Input: Return the output in the same script used in the input.

  • Latin: Convert all output to the latin character set.

Line Separator

The delimiter to use to separate multiple lines in the data returned by Formatted Address.

Delivery Lines

Select the addressing style that best describes the type of data that you would like to output.

*Applies to US or CA Addresses*

USPreferredCityNames

If set to on, we will override and return only the USPS preferred city name. When set to off it will leave valid vanity city names as preferred by the USPS.

USStandardizationType

When set to Auto this uses the input as a guide for how to standardize. When set to Short (Default) will leave the US address in short abbreviated form as preferred by the USPS.

For example Short:

100 W Main St East

For example Long:

100 West Main Street East

DetailedResults

This is for users that have experience or code using Address Object and would like to have those codes alongside the Global Address result codes.

When set to ON (For US and CA addresses only) this will return more detailed and different result codes that come from our Address Object product. When set to OFF (Default) No extra result codes will be returned.

Output Columns

../../_images/SSIS_GV_Address2.png

Organization

Matches the organization input field. It is not modified or populated by Global Verify Component.

Address Line 1-8

Will return the standardized or corrected contents of the input address. These lines will include the entire address including the locality, administrative area, and postal code.

Country

The country name, abbreviation, or code.

Latitude (US and Canada Only)

This is parsed from the input.

Longitude (US and Canada Only)

This is parsed from the input.

Dependent Locality

A district, area, or neighborhood (Turkey) within a Locality required to uniquely identify an address.

Locality

A city (US), town, or municipality (Canada) that is the most common population center element within an Administrative Area.

Administrative Area

A state (US), province (Canada), or canton (Switzerland) contained within a Country.

Postal Code

The postal code or ZIP code (US) for the input address.

Formatted Address

The address in the correct format for mailing from the country specified. This includes the Organization as the first line, one or more lines in the origin country’s format, and the destination country (if required).

Address Type (US and Canada Only)

Returns a one-character code for the type of address coded.

For a complete list of these codes, see Address Type Codes.

Address Key (US and Canada Only)

This is a unique key for the address. The Address Key can be used by other Melissa services, such as Geocoder or Delivery Indicator.

ISO 3166-1 Country Code

Alpha-2

Letter code of the output country. Ex: For United States; Canada; and the Philippines: US; CA; PH.

Alpha-3

Letter code of the output country. Ex: For United States; Canada; and the Philippines: USA; CAN; PHL.

Numeric

Numeric code of the output country. Ex: For United States; Canada; and the Philippines: 840; 124; 608.

Country Subdivision Code

This is the ISO3166-2 code for country subdivisions, usually tied to the administrative area for a country. The format is the 2 letter country code followed by a dash followed by 2 or 3 characters or two numbers. Examples are: US-CA, CN-16, or AU-VIC.

Currently, this field is only populated for some countries. These countries are: AE, AR, AT, AU, BB, BE, BH, BR, BS, CA, CH, CL, CN, CO, CR, DE, DK, DM, DO, ES, FI, FJ, FR, GB, GH, GT, GY, HN, ID, IE, IL, IN, IS, IT, JP, KR, KW, LT, LU, LV, MX, MY, NC, NG, NI, NL, NO, NZ, PE, PH, PK, PL, PR, PT, RS, SA, SG, SI, SV, TH, TR, UA, US, UY, VN.

Disclaimer - On-Premise does not support this field and will return empty.

Additional Output Columns

Content

../../_images/SSIS_GV_Address3.png

Parsed Dependent Thoroughfare Columns

Thoroughfare

Name of the street or block data element.

Pre-Direction

Prefix directional contained within the Thoroughfare field.

Leading Type

Leading thoroughfare type indicator within the Thoroughfare field.

Name

Name indicator within the Thoroughfare field.

Trailing Type

Trailing thoroughfare type indicator within the Thoroughfare field.

Post-Direction

Postfix directional contained within the Thoroughfare field.

Parsed Regional Columns

Double-Dependent Locality

An area or village (UK) within a Dependent Locality required to uniquely identify an address.

Sub-Administrative Area

Not commonly used. An arbitrary region smaller than a Country but larger than an Administrative Area.

Sub-National Area

A county (US) or region larger than the Locality but smaller than the Administrative Area.

Parsed Postal Facility Columns

Post Box

Post box information for a particular delivery point.

Parsed Thoroughfare Columns

Premises Type

Leading premise type indicator within premises field.

Thoroughfare

Name of the street or block data element.

Pre-Direction

Prefix directional contained within the Thoroughfare field.

Leading Type

Leading thoroughfare type indicator within the Thoroughfare field.

Premises Number

Alphanumeric indicator within premises field.

Name

Name indicator within the Thoroughfare field.

Trailing Type

Trailing thoroughfare type indicator within the Thoroughfare field.

Post-Direction

Postfix directional contained within the Thoroughfare field.

Parsed Sub-Premises Columns

Building

Descriptive name identifying an individual location.

Sub Premises

Alphanumeric code identifying an individual location.

Sub-Premises Type

Sub premises type indicator within the premises field.

Sub-Premises Number

Sub premises number indicator within the premises field.

Output Columns

../../_images/SSIS_GV_Address4.png

MelissaAddressKey

This is a globally unique and persistent key for the location, even if parts of the address change. When an address is fully validated this field returns a 10-digit proprietary key for the address. With AddressKey (US and Canada only), if an address zip code changes, the AddressKey would also change. Melissa Address Key (MAK) is independent and will not change. This makes MAK a good way to permanently identify and locate addresses. Once you have a MAK it can be used as an input in most Melissa services and thus is a good tool for deduping.

Currently available for US, CA, GB, IT, SI, PT, FR, AU, SG, NL, VN, BM, and TR with many more countries planned for the future.

MelissaAddressKeyBase

Every full address has its own Melissa Address Key (MAK). If that address is a suites or apartment, we will also return a Melissa Address Key Base (BaseMAK) that corresponds to the overall building. This provides a link between all the individual MAK addresses that belong to the same building. This field also returns a 10-digit proprietary key. Note, if we can validate the address to the building but not the suite, we can return just the BaseMAK. Currently available for countries that have support for MelissaAddressKey.

DeliveryIndicator

This field returns a one character code that indicates if the address is a residence (R), business (B), or unknown (U). It is not available for all countries. Currently, it is available only for the US but more countries are planned for future inclusion.

PostalCodeType

This is a country dependent field. This field returns an identifier that represents the type of postal code returned. Currently only the US uses this field.

Code

Definition

P

PO Box Postal Code

U

Unique Postal Code usually assigned to a large organization or government institution.

M

Military Postal Code

Empty

Regular postal code

SubPremiseLevel

This is a secondary piece of subpremise information used to describe a more generic division of the subpremise. For example, if you have an address like “1123 Market Way, Floor 12 Apt 25A” then the Subpremises will be “Apt 25A” and the SubPremiseLevel will be “Floor 12”. This value is not widely used in official address data.

SubPremiseLevelType and SubPremiseLevelNumber make up the SubPremiseLevel. In our example, the SubPremiseLevelType is “Floor” and the SubPremiseLevelNumber is “12”.

SubBuilding

This value describes a smaller division of the building. For example, if an address has a building name that is a part of a larger set of buildings, then the subbuilding may be populated. SubBuildingType and SubBuildingNumber make up the parts of SubBuilding.

UTC

Returns the Coordinated Universal Time number in format of UTC+#. Note that there are timezones that are not whole hours only, like UTC+9:30.

DST

Returns a Y or a N based on if the country or area of the input observes daylight savings time. Note that the value returned by the UTC output does not change based on whether the country/area is currently in daylight savings time for not. We will only return the standard timezone and this flag to indicate is daylight savings is observed.

CensusKey

This is a country dependent field. It is designed to return a code that correspond to the census division information for a country. Currently, this field is only returned for the US.

Code

Definition

US

The CensusKey for the US is a 15 or 16 digit code that is made up of the following components: FIPS Code, Census Tract, Census Block, and CensusBlockGroup if it exists

PostOfficeLocation

This field, if available for a country, returns the value that is associated to the location of the post office in relation to the address. This value may or may not be used in the official mailing address for the country in question. Currently, these are the countries we will return the data for: Serbia and Slovakia.

Code

Definition

Serbia

The PostOfficeLocation contains the old 5 digit postal number and name. The postal code field will contain the new 6 digit PAK number.

Slovakia

The PostOfficeLocation returns the name of the post office location if it is not the same as the delivery address locality.

DeliveryPointSuffix

This is a country dependent field. This field returns an identifier that represents a suffix code usually tied to a delivery point. For US This returns the 2 digit delivery point assigned by the USPS to an DPV validated address. For GB This is a 2 character (first is numerical, 2nd character is alphabetic) that is assigned by Royal Mail. When added to the postal code, this allows each live delivery point to be uniquely identified.

Extra US Only

Extras option

This element is usually not populated but is reserved to be able to return less used fields if the user requests. Currently, we are using this to return some US only fields. This output requires an additional output Destination component to be added to the project. If Extras is ON, we can return additional outputs. These outputs are presented in a different format. They will look like this below.

Field

Definition

CBSA Outputs

Core-Based Statistical Areas (CBSA) outputs. These values are assigned by the US Census.

CBSACode

CBSADivisionCode

CBSADivisionLevel

CBSADivisionTitle

CBSALevel

CBSATitle

CarrierRoute

Carrier Route Code assigned by the USPS.

CensusBlock

The Census block number from the most recent yearly census

CensusTract

The Census tract number from the most recent yearly census

CongressionalDistrict

The congressional district number for the address

CountyFIPS

The Census FIPS number from the most recent yearly census

CountyName

The county name that corresponds to the county FIPS code

CountySubdivisionCode

The county subdivision code value as defined by the US Census

CountySubdivisionName

The county subdivision name value as defined by the US Census

DeliveryPointCheckDigit

The single digit value that acts as a checksum to the delivery point code

DeliveryPointCode

The 2 digit delivery point code as assigned by the USPS

ElementarySchoolDistrictCode

Returns a 5 digit string representing the elementary school district code for the address

ElementarySchoolDistrictName

Returns a 5 digit string representing the elementary school district code for the address

PlaceCode

The FIPS Place code as defined by the Census

PlaceName

The FIPS Place name as defined by the Census

SecondarySchoolDistrictCode

The secondary school district code for the address

SecondarySchoolDistrictName

The secondary school district name for the address

StateDistrictLower

Returns a 3 digit string representing the Lower State District Code for the requested record

StateDistrictUpper

Returns a 3 digit string representing the Upper State District Code for the requested record

UnifiedSchoolDistrictCode

Returns a 5 digit string representing the Unified School District Code if the address is in a unified school district

UnifiedSchoolDistrictNameString

Returns a 5 digit string representing the Unified School District Name if the address is in a unified school district

Verify a phone number as valid and append geographic information for the wire center.

../../_images/SSIS_GV_Phone.png

Input Columns

Phone Number

The phone number for the input column.

Country

The country name or code associated with the input phone number.

If the above Country field is empty, use country
Use this if no Country field is specified or a record’s country field is blank.
Select the Country from which dialing is done
Specify the Country the dialing is done from.

Output Columns

Phone Number

The standardized output phone number.

Phone Subscriber Number

The subscriber number associated with the inputted phone number. The subscriber number contains significant leading digits that further define the local exchange area and/or service.

County Name

The name of the country for the inputted phone number.

Phone Country Dialing Code

A digit, or combination of digits dialed after the international prefix.

International Prefix

The international exit code needed to call a number outside of the dialing country. If the input country and country of origin differ, this will return the digit(s) required to be dialed before the country code.

National Prefix

A digit, or combination of digits that must be dialed before an area (city) code when calling a number within the same country but outside the numbering area.

National Destination Code

A digit, or combination of digits that identifies a numbering area within a country (or group of countries) and/or network/services.

Locality

City. The locality associated with the inputted phone number.

Administrative Area

State. The administrative area associated with the inputted phone number.

Language

The predominant language of the phone’s detected geographical location.

UTC

The universal time code for the time zone associated with the inputted phone number. The format will be: +/- hh:mm.

DST

Daylight Savings Time. Returns a ‘Y’ (for yes) or ‘N’ (for no) to distinguish whether the region of the inputted phone number observes daylight savings time.

Latitude

The geographic coordinate of the locale, city, municipality, or other geographically identifiable service area of the exchange measured in degrees north or south of the equator.

Longitude

The geographic coordinate of the locale, city, municipality, or other geographically identifiable service area of the exchange measured in degrees east or west of the Greenwich Meridian.

Carrier

Returns the name of the phone’s carrier.

Country Abbreviation

Returns the abbreviation of the country for the inputted phone number.

International Phone Number

This is the number you would dial, given your output fields, in order to successfully send a call. This number can change based on whether a Country of Origin is submitted or not.

Postal Code

The zip code that corresponds to a locality inside the United States. Since this is US only, all other countries will have PostalCode blank.

Phone Number Verification Options

Express Mode

This option will do the following lookups in the order shown:

  1. ITED lookup

  2. Cassandra MasterPhone cache lookup (check HLR Country Coverage section for more info).

Premium Mode

This option will do the following lookups in the order shown:

  1. ITED lookup

  2. Cassandra MasterPhone cache lookup

  3. If the phone belongs in a country that our third-party vendor supports Active Line validation for* AND lookup is more than 30 days, then do HLR lookup

DefaultCallingCode

Is used when the country could not be detected from the phone number or country input. A calling code is a sequence of digits often found after the leading ‘+’ and is unique to a country/region. By default, this value is blank.

For more information on country calling codes, please see https://en.wikipedia.org/wiki/List_of_country_calling_codes.

Verify the domain of an email address as well as correct syntax, typos, and update older domain names.

../../_images/SSIS_GV_Email.png

Input Columns

Email Address

Select the field containing the input email address.

Output Columns

Email Address

The name for the email address output column.

Mail Box Name

The name for the mail box output column.

Domain Name

The name for the domain output column.

Top Level Domain

The name for the top level domain output column.

Top Level Domain Description

The name for the top level domain description output column.

Domain Age Estimated

The estimated age of the domain in days.

Domain Expiration Date

The date the domain expires/expired in the YYYY-MM-DDTHH:MM:SS format.

Domain Created Date

The date the domain was created in the YYYY-MM-DDTHH:MM:SS format.

Domain Updated Date

The date the domain was last updated in the YYYY-MM-DDTHH:MM:SS format.

Domain Email

The email associated with the domain.

Domain Organization

The organization associated with the domain.

Domain Address 1

The street address associated with the domain.

Domain Locality

The locality associated with the domain.

Domain Administrative Area

The administrative area associated with the domain.

Domain Postal Code

The postal code associated with the domain.

Domain Country

The country associated with the domain.

Domain Country Code

The country code associated with the domain.

Domain Availability

Check to see if domain is available for purchase.

Domain Private Proxy

Check if domain is behind a private proxy.

Deliverability Confidence Score

Returns the probability [0-100]% of an email sent to this mailbox will be successfully delivered.

Privacy Flag

The top level domains or countries that may be sensitive to privacy laws. Returns Y for yes and N for no.

MX Server

Returns which MX Server was used to validate the email address. Only available in Premium Mode.

Mailbox Verification Options

Express

Check the Email Address against the Web Service Email Reference Data.

Premium

Check the Email Address against the Web Service Email Reference Data. If the Email has not been verified within the last 3 days in the Web Service Reference Data, run the Email through real-time Email Verification.

Note: The ‘Off’ and ‘Mixed’ options have been deprecated.

Advanced Email Options

Days Since Last Verified

Premium Mode Only

You can choose how fresh you want your data. By setting a higher value, you will receive faster responses but the data will not be as fresh. You can set this value from 3 to 365 days.

Domain Correction ON/OFF

Activates fuzzy email domain correction if the domain is a suspected typo.

Domain Information ON/OFF

Activates output fields for WhoIS domain information.

This shows a list of the columns in your input table. If you check the box next to a column name, the contents of that column will be passed to the output table without modification. Add a column to the Pass Through list to include the original contents in the output table.

../../_images/SSIS_GV_PassThrough.png

Column Name

Column names from the original input table

Current Usage

Column is currently being used as input

The Global Verify Component will output records in up to four streams. The Output Filter tab allows you to control which records go to which stream. Names and usage can be done in any manner. Filters are evaluated from the top down.

../../_images/SSIS_GV_OutputFilter.png

Result Codes

The output status of a record is returned via result codes returned by the underlying objects. The Component will combine them into a single, comma-delimited string and write them to the field mapped here. New field names can be created by typing the name into the Output Results Code box.

Output Filter

Select a filter to determine which records will be directed to a particular output stream. A custom filter may be created based on individual need, each pin filters the records in a cascading effect, where the results code is compared against the first expression (Pin 1) and then compared against Pin 2, and so on.

No Filter

All records are written to a single output stream.

Pre-built Filter

The Component comes with a pre-built filter for a common application:

  1. Fully Verified DeliveryPoint Addresses Only (AV24 and AV25)

  2. Fully Verified Addresses Only (AV2*)

  3. Partially Verified Address or Better (AV*)

  4. Partially Verified Addresses Only (AV1*)

Custom Filter

Records matching the filter will be directed to the designated file. For more information, see Custom Output Filters below.

Attention

Custom rules are an advanced subject. You should be comfortable with Boolean operations before using custom rules in a production environment

Custom Output Filter

SSIS components will output records in up to four streams. Names and usage can be done in any manner. Filters are evaluated from the top down. A custom filter may be created based on individual need, each pin filters the records in a cascading effect, where the results code is compared against the first expression (Pin 1) and then compared against Pin 2, and so on.

Customer Filter

Select Customer Filter from the drop down and click the ... button next to the Customer Filter Expression text box to open an Output Filter Expression dialog box. These rules use Boolean operators (“OR,” “AND,” and “NOT”) and the result codes to construct filters. Records matching the filter will be directed to the valid table while the rest are directed to the invalid table.

../../_images/SSIS_IP_OutputFilter_ExpressionDialog.png

A custom rule example could be: “(AS01 OR AS02)”. This means that the conditions for the rules are met if either result code “AS01” or “AS02” were returned.

Validate Custom Rules

../../_images/SSIS_IP_OutputFilter_Validated.png

A custom expression may be tested by clicking on the Test Expression button. A pop-up dialog box will confirm whether or not the custom expression is acceptable.

Save as Custom Filter

../../_images/SSIS_IP_OutputFilter_SaveCustom.png ../../_images/SSIS_IP_OutputFilter_SaveRules.png

Right-click the Custom Expression, then left-click Save as Custom Filter from the pop-up. Enter a name for the filter in the window and click OK. It will now be available as a Pre-Built Filter for subsequent components.

Remove Selected Rule

To remove a Pre-Built Filter, select the filter from the Pre-Built drop-down list, right-click the filter, and select Delete Filter. Click Yes. After saving this component, it will no longer be available in new component configurations.

../../_images/SSIS_IP_OutputFilter_RemoveRule.png

Result Codes (Global Verify)#

IP Locator#

Overview#

  • Returns geographic data for a given IP address

  • Latitude, Longitude, City, State, Zip Code, County, and ISP Information are all returned

Tutorial#

The following steps will guide you in the basic usage of IP Locator for SSIS.

Advanced Configuration#

In the IP Locator Component, navigate to File > Advanced Configuration.

../../_images/SSIS_IP_Advanced.png

Processing Mode

License Key

Your License Key will activate the product for use.

Community Edition

The Community Edition of IP Locator allows you to explore the full capabilities of this component (with some limitations). Contact a Melissa sales representative (call 1-800-MELISSA) for licensing information to unlock this component’s full functionality.

On-Premise

Processing will be performed on this machine using local data files. This method is the fastest and most secure option as no data leaves your premises. It is ideal for large batch processing where speed and/or security is a concern, but requires periodic updates to be performed on each machine.

Melissa Cloud

Processing will be performed on Melissa’s servers using Web service protocols over the internet. This method is slower but no maintenance is required. It is ideal for processing smaller files and for quickly running this component without installing the local data files.

Dedicated Cloud

Processing will be performed on a dedicated Contact Verification Server using Web service protocols. These servers may be hosted locally or remotely and will be dedicated to your organization for increased speed and security.

Processing Mode#
  • Community Edition
  • On-Premise
  • Melissa Cloud
  • Dedicated Cloud
Data File Path:

This should point to the folder on the local system that contains the IP Locator Component and its data files. The default path should work unless you install the component to a different folder.

After entering the Data Path, click the Test Configuration button immediately below the Data File Path to verify that the Data Path was entered correctly.

../../_images/SSIS_IP_Advanced_Community.png

Test Configuration (IP Locator Community)

The Test Configuration screen for On-Premise Processing displays basic information about the object libraries being used by the IP Locator.

../../_images/SSIS_IP_Advanced_Community_Test.png

Community Object

Component Version

Displays the current SSIS component version.

License Expiration

Displays the date when the IP Locator Component license will expire.

Build Number

Displays the current development release build number of the IP Locator Component for SSIS. This is usually a three or four-character string.

IP Locator Initialization

Displays any error messages generated by initializing the IP Locator Object.

Build Number

Displays the current development release build number of the IP Locator Object. This is usually a three or four-character string.

Data File Path:

This should point to the folder on the local system that contains the IP Locator Component and its data files. The default path should work unless you install the component to a different folder.

After entering the Data Path, click the Test Configuration button immediately below the Data File Path to verify that the Data Path was entered correctly.

../../_images/SSIS_IP_Advanced_OnPremise.png

Test Configuration (IP Locator On-Premise)

The Test Configuration screen for On-Premise Processing displays basic information about the object libraries being used by the IP Locator.

../../_images/SSIS_IP_Advanced_OnPremise_Test.png

IP Locator SSIS Component

Component Version

Displays the current SSIS component version.

License Expiration

Displays the date when the IP Locator Component license will expire.

Build Number

Displays the current development release build number of the IP Locator Component for SSIS. This is usually a three or four-character string.

IP Locator Object

Initialization

Displays any error messages generated by initializing the IP Locator Object.

Build Number

Displays the current development release build number of the IP Locator Object. This is usually a three or four-character string.

Database Date

Displays the date of the IP Locator Object data files. This date confirms that the data files are the latest available.

Database Expiration Date

Displays the date when the IP Locator Object data files will expire. This date confirms that the data files are the latest available.

For Melissa Cloud processing, you need the License Key issued to you by your sales representative. The other settings on this part of the Advanced Configuration screen should not be changed unless you are specifically directed to do so by Melissa Technical Support.

After entering the License Key, click the Show Details button at the bottom of this screen to verify that the License Key was entered correctly.

../../_images/SSIS_IP_Advanced_Cloud.png

Warning

The following items should only be altered if directed by Melissa’s support staff.

Use Proxy

If your network uses a Proxy Server, check this box and enter the Proxy information below.

Proxy URL

If your network uses a Proxy Server, enter the Proxy URL information on this field in order for IP Locator to communicate with the Melissa Cloud. The format is “URL:port”.

User Name

The user name for your Proxy Server, if any.

Password

The password for your Proxy Server, if any.

Maximum Threads

Specify the number of simultaneous requests to be sent to the Melissa Cloud Services to run in parallel.

Request Timeout

Specify the number of seconds for IP Locator to wait before timing out. Some requests may experience connection lag or timeouts due to network problems.

Number of Retries

Specify the number of times IP Locator should re-send a request to the Melissa Cloud due to any exceptions.

Abort on Critical Error

Will abort the process, in event of critical errors related to the Component such as the Web service code WSE00; Unexpected Error-Please Retry.

Test Configuration (IP Locator Cloud)

Either the version number or build number will assist Melissa Technical Support in determining if you have the latest IP Locator software installed on your system.

../../_images/SSIS_IP_Advanced_Cloud_Test.png

IP Locator Component

Component Version

Displays the current SSIS component version.

Build Number

Displays the current development release build number of the IP Locator Component for SSIS. This is usually a three or four-character string.

IP Locator Web Service

Service Response

Displays the Web Service response status with the number of retries and seconds to connect.

Version

This box displays the version number of the IP Locator Web Service.

../../_images/SSIS_IP_Advanced_Dedicated.png

Server URL

This is the internet or intranet address of the server to be used by the IP Locator for processing. Check with your network administrator if you need help with this setting.

Use Proxy

If your network uses a Proxy Server, check this box and enter the Proxy information below.

Proxy URL

If your network uses a Proxy Server, enter the Proxy URL information on this field in order for IP Locator to communicate with the Melissa Cloud. The format is “URL:port”.

User Name

The user name for your Proxy Server, if any.

Password

The password for your Proxy Server, if any.

Enable Compression

Check this to enable GZip compression. This can have up to a 10% increase in speed.

Maximum Threads

Specify the number of simultaneous requests to be sent to the Melissa Appliance to run in parallel.

Maximum Transaction Size

Specify the number of records to be sent in a single request. A single request may contain between 1 – 100 records. It is recommended to set this value to 100 for optimal throughput.

Request Timeout

Specify the number of seconds for IP Locator to wait before timing out. Some requests may experience connection lag or timeouts due to network problems.

Number of Retries

Specify the number of times IP Locator should re-send a request to the Appliance due to any exceptions.

Abort on Critical Error

Enable this option to stop file processing when any exception is thrown. Disabling this option will disregard any exceptions and continue processing your file.

Failover to MD Servers

Check this box to use Cloud (Melissa Cloud) processing as a redundant backup for Local Appliance (Dedicated Cloud) processing. You must have a valid License Key and also configure the Web settings in addition to the Local Appliance settings.

Add Component#

To add IP Locator Component to your project, drag the component onto the Data Flow screen. This will snap the IP Locator Component into your workflow space.

../../_images/SSIS_IP_Tutorial_Component.png

Connect Input#

Select a data flow source to be your input data. Many formats can be used as Sources, including Excel files, flat files or Access Input data sources. Connect this data source to the IP Locator Component by dragging the arrow from your data flow source to the IP Locator Component.

../../_images/SSIS_IP_Tutorial_Source.png

Configure Component#

Double click the IP Locator Component to bring up the interface. See IP Locator Component Settings.

Connect Output#

Add data destinations for downstream output. Connect the respective output filter pin to the output destination.

../../_images/SSIS_IP_Tutorial_Output.png

Save Settings#

Click File and select Save Selected Items to save the project

../../_images/SSIS_Tutorial_Save.png

Run Project#

Now, the project is ready to run.

Settings#

IP Locator Tabs#

  • Input/Output
  • Pass-Through Columns
  • Output Filter
../../_images/SSIS_IP_InputOutput.png

Input Column

The Input/Output tab requires data from a single field in order to populate its output fields.

IP Address

Select or enter the field IP Address that will contain the IP Address information to be parsed. This field accepts a string value that must contain a full, well-formed IP address. A well formed IP address contains four numbers between 0 and 255, separated by periods. If you do not set a field for IP address, the Component will not parse name information.

Output Columns

Use this column to map the column names that will receive the verified IP address information. You may select existing columns or create new columns by entering the column names in the boxes.

Domain

This field returns the domain name associated with the submitted IP address. If the institution that owns the submitted IP address holds a domain name, such as “melissadata.com” or “cox.net,” this function will return that name.

ISP Name

This field returns the name of the internet service provider (ISP) to which the submitted IP address is assigned.

City

This field returns the name of the city where the institution owning the submitted IP address is located, if available.

State/Region

This field returns a string value containing the name of any regional subdivision within the country of origin for the submitted IP address. For IP addresses based in the United States, this function will return the name of the State in which the IP address is located. In other countries, this field may return the name of the city, another regional description or an empty string.

Zip/Postal Code

This field returns the ZIP Code associated with the submitted IP address.

Country

This field will return a country name if the matching IP address record also contains a city and, in the U.S., a ZIP Code. Records that do not contain these pairs will not return country information.

Country Abbreviation

This field will return a country name if the matching IP address record also contains a city and, in the U.S., a ZIP Code. Records that do not contain these pairs will not return country information Records for ISP located within the following U.S. territories will return the territory name and abbreviation for the country, rather than that of the United States.

Latitude

This field returns the city latitude for the submitted IP address.

Longitude

This field returns the city longitude for the submitted IP address.

Connection Speed

This field returns the connection speed for the submitted IP address.

Connection Type

This field returns the connection type for the submitted IP address.

Proxy Description

This field returns the proxy description for the submitted IP address.

Proxy Type

This field returns the proxy type for the submitted IP address.

UTC

This field returns the UTC for the submitted IP address.

Continent

This field returns the continent for the submitted IP address.

This shows a list of the columns in your input table. If you check the box next to a column name, the contents of that column will be passed to the output table without modification. Add a column to the Pass Through list to include the original contents in the output table.

../../_images/SSIS_IP_PassThrough.png
Column Name:

Column names from the original input table

Current Usage:

Column is currently being used as input

The IP Locator Component will output records in up to four streams. The Output Filter tab allows you to control which records go to which stream. Names and usage can be done in any manner. Filters are evaluated from the top down.

../../_images/SSIS_IP_OutputFilter.png

Result Codes

The output status of a record is returned via result codes returned by the underlying objects. The Component will combine them into a single, comma-delimited string and write them to the field mapped here. New field names can be created by typing the name into the Output Results Code box.

Output Filter

Select a filter to determine which records will be directed to a particular output stream. A custom filter may be created based on individual need, each pin filters the records in a cascading effect, where the results code is compared against the first expression (Pin 1) and then compared against Pin 2, and so on.

No Filter

All records are written to a single output stream.

Pre-built Filter

The Component comes with several pre-built filters for common applications:

  1. IP Address Found in Database

  2. IP Address Unknown

  3. IP Address is a proxy

  4. IP Address was empty or not well formed

  5. IP not Initialized

Custom Filter

Records matching the filter will be directed to the designated file.

For more information, see Custom Output Filters below.

Attention

Custom rules are an advanced subject. You should be comfortable with Boolean operations before using custom rules in a production environment

Custom Output Filter

SSIS components will output records in up to four streams. Names and usage can be done in any manner. Filters are evaluated from the top down. A custom filter may be created based on individual need, each pin filters the records in a cascading effect, where the results code is compared against the first expression (Pin 1) and then compared against Pin 2, and so on.

Customer Filter

Select Customer Filter from the drop down and click the ... button next to the Customer Filter Expression text box to open an Output Filter Expression dialog box. These rules use Boolean operators (“OR,” “AND,” and “NOT”) and the result codes to construct filters. Records matching the filter will be directed to the valid table while the rest are directed to the invalid table.

../../_images/SSIS_IP_OutputFilter_ExpressionDialog.png

A custom rule example could be: “(AS01 OR AS02)”. This means that the conditions for the rules are met if either result code “AS01” or “AS02” were returned.

Validate Custom Rules

../../_images/SSIS_IP_OutputFilter_Validated.png

A custom expression may be tested by clicking on the Test Expression button. A pop-up dialog box will confirm whether or not the custom expression is acceptable.

Save as Custom Filter

../../_images/SSIS_IP_OutputFilter_SaveCustom.png ../../_images/SSIS_IP_OutputFilter_SaveRules.png

Right-click the Custom Expression, then left-click Save as Custom Filter from the pop-up. Enter a name for the filter in the window and click OK. It will now be available as a Pre-Built Filter for subsequent components.

Remove Selected Rule

To remove a Pre-Built Filter, select the filter from the Pre-Built drop-down list, right-click the filter, and select Delete Filter. Click Yes. After saving this component, it will no longer be available in new component configurations.

../../_images/SSIS_IP_OutputFilter_RemoveRule.png

Result Codes (IP Locator)#

MatchUp#

Overview#

The MatchUp Component is an extremely fast and powerful tool that is used to find and eliminate duplicate records, specifically in the contact record domain. The MatchUp Component enhances the efficiency and effectiveness of your database by giving you the ability to eliminate duplicated customer and prospect records with user specified customizable criteria to realize a single, accurate view of each customer.

Editions#

The MatchUp Component for SSIS has three different editions. Each edition has a different level of utility, with the Professional edition offering the full functionality of MatchUp.

The following chart displays the level of utility of each edition.

Edition

Community Edition

Lite Edition

Standard Edition

Available Matchcodes

Address

Address

Address

Address, Last

Address, Last

Address, Last

Address, Last, First

Address, Last, First

Address, Last, First

Address, APT

Address, APT

Address, APT

Address, APT, Last

Address, APT, Last

Address, APT, Last

Address, APT, Last, First

Address, APT, Last, First

Address, APT, Last, First

Address, Fuzzy Last

Address, Fuzzy Last

Address, Fuzzy Last

International Address

International Address

International Address

General (40)

General (40)

General (40)

Address, Last Name, Gender

Address, Last Name, Gender

Address, Company

Address, Company

Address, Company AND Last Name

Address, Company AND Last Name

Address, Company AND Last Name, First Name

Address, Company AND Last Name, First Name

Address, Company OR Last Name

Address, Company OR Last Name

Address, Company OR Last Name, First Name

Address, Company OR Last Name, First Name

United Kingdom Address

United Kingdom Address

Address, Fuzzy Last Name, Init First Name

Address, Fuzzy Last Name, Init First Name

Address, Fuzzy Last Name, Nickname

Address, Fuzzy Last Name, Nickname

Name, Address, Proximity Match

Name, Address, Proximity Match

Custom Matchcodes

Record Limit

50,000

1,000,000

Unlimited

License Required

Tutorial#

The following steps will guide you in the basic usage of MatchUp for SSIS.

Advanced Configuration#

In the MatchUp Component, navigate to File > Advanced Configuration.

../../_images/SSIS_MU_Advanced_OnPremise.png
On-Premise#

The On-Premise Settings dialog is where you enter the basic information required for the MatchUp Component to connect to the underlying Melissa libraries.

License Key

Your License Key will activate the product for use.

Data File Path

This should point to the folder on the local system that contains the MatchUp Component and its data files. The default path should work unless you install the component to a different folder.

Temporary Work File Path

Enter the path to the folder where MatchUp component will create temporary files. These files will be deleted automatically once the process is finished.

Test Configuration (MatchUp On-Premise)

The Test Configuration screen for On-Premise Processing displays basic information about the object libraries being used by MatchUp.

../../_images/SSIS_MU_Advanced_OnPremise_Test.png

SSIS Component

Customer ID

Displays the Customer ID associated with the License Key.

Component Version

Displays the current SSIS component version.

License Version

Displays the License Key version.

License Expiration

Displays the date when the MatchUp Component License Key will expire.

Build Number

Displays the current development release build number of the MatchUp Component for SSIS. This is usually a three or four-character string.

MatchUp Object

Initialization

Displays any error messages generated by initializing the MatchUp Object.

Database Date

Displays the date of the MatchUp Object data files. This date confirms that the data files are the latest available.

Database Expiration Date

Displays the date when the MatchUp Object data files will expire. This date confirms that the data files are the latest available.

Build Number

Displays the current development release build number of the MatchUp Object. This is usually a three or four-character string.

Add Component#

To add MatchUp Component to your project, drag the component onto the Data Flow screen. This will snap the MatchUp Component into your workflow space.

../../_images/SSIS_MU_Tutorial_Component.png

Connect Input#

Select a data flow source to be your input data. Many formats can be used as Sources, including Excel files, flat files or Access Input data sources. Connect this data source to the MatchUp Component by dragging the arrow from your data flow source to the MatchUp Component.

../../_images/SSIS_MU_Tutorial_Source.png

Configure Component#

Double click the MatchUp Component to bring up the interface. See MatchUp Component Settings.

Connect Output#

Add data destinations for downstream output. Connect the respective output filter pin to the output destination.

../../_images/SSIS_MU_Tutorial_Output.png

Save Settings#

Click File and select Save Selected Items to save the project

../../_images/SSIS_Tutorial_Save.png

Run Project#

Now, the project is ready to run.

Settings#

MatchUp Tabs#

  • Matchcode
  • Field Mapping
  • Options
  • Survivorship/Pass-Through
  • Lookup Pass-Through Columns
  • Output Filter

Matchcodes are sets of rules that tell MatchUp component which data fields to consider when determining if two records are duplicates. MatchUp component 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 records is unique or a duplicate.

../../_images/SSIS_MU_Matchcode.png

If you would like to copy and edit one of these default matching strategies, or create a new matchcode from scratch, select File from the menu and click Matchcode Editor.

../../_images/SSIS_MU_Menu.png

For more information on the Matchcode Editor, see Matchcode Editor.

This tab maps which source column and its corresponding datatype will be used for each matchcode component.

../../_images/SSIS_MU_FieldMapping.png

Source Mapping

These are the mappings for the table used to provide the records to be deduped for output. For a single table process, this Source is required. You cannot configure the component with a single Input source mapped into the Lookup pin.

Lookup Mapping

These are the mappings for the table used as a filter when matched against Source records. The Options tab allows you to specify whether only the Source records matching the Lookup records (intersected) will be output, or whether these matches will be suppressed from the output.

*Lookup Mapping is HIDDEN when there is only a single input source connected to the MatchUp Component.

Matchcode Data

For each component in a matchcode, this is the associated data type.

Input Column

For every matchcode component, you must map in the table column which will provide the data needed to compare records. You are only required to map one address line if the source contains a single address column.

Input Data Type

For each input column provided, an additional mapping is required to tell the component the format of the incoming data. This allows you to process tables in various formats without having to pre-parse input data to satisfy matchcode component datatypes. For example, a matchcode requiring a last name can receive a FullName, LastName, InverseName, etc. as inputs. The component will correctly parse and extract the input data needed to build the match key.

The Options tab allows you to specify which of the available output results you want returned.

Quick Access - Golden Record

../../_images/SSIS_MU_Options.png

Output Columns

In addition to the source data, you will often want to output processing information about the disposition of a record. This allows you to analyze the results in a number of ways.

Result Codes

This field displays the results of the comparison, whether the record is unique or is a duplicate, was suppressed or intersected, which matchcode combination resulted in a match, etc. See MatchUp Result Codes for a list of possible Result Codes that the component can return.

Dupe Group

Each group of matching records is assigned a sequential unique group number. This field displays the group number that the record, whether unique or a member of a duplicate grouping, is in.

Dupe Count

This field displays the number of matching records in each Dupe Group.

Matchcode Key

Based on the matchcode and matchcodes component used to process the source table(s), every record has a matchkey built. It is this key, a representation of the record, that is used in deduping. This field will be populated with the key and is useful in analyzing the output results.

Lookup Options

*This section is GREYED-OUT When there is only a single upstream source connected to the MatchUp Component.

When a second upstream data source is connected to the Lookup pin, that data source will be used as a filter.

List Suppress

Source pin records that match any record from the Lookup Pin will not be returned with an Output Result Code. They will be marked as Suppressed.

List Intersect

Only Source pin records that match any record from the Lookup Pin will be returned with an Output Result Code (Unique or Has Duplicate result code). The second to nth Source records that match the Lookup record will be marked with a Duplicate Result Code. Source pin records that do not match any Lookup pin records will be returned with a Non-Intersected Result Code.

No Purge

Source pin records that match other Source pin records will not be matched. In other words, a suppressed group or an intersected group will be returned as suppressed or intersected, but each record will have their own Dupe Group number.

Golden Record Selection

The Golden Record Selection Options allow for intelligent selection of the Golden or Master Record using different logic and algorithms. These algorithms include selecting the Golden Record according to: Last Updated, Most Complete, Data Quality Score, and Custom Expressions.

See Golden Record below for more information.

Golden Record

The Golden Record Selection Option is used for selecting the best record amongst a group of duplicate records as your remaining Master Record. This allows for having a single accurate representation of each entity in your data. Thus in a group of duplicate records for example:

Name

Address

Last Update

John Doe

123 Main St

10/25/2003

John Doe

123 Main St

4/16/2012

John Doe

123 Main St

8/6/2008

We can prioritize the selection of the Golden Record by latest update. The selected remaining record will be:

Name

Address

Last Update

John Doe

123 Main St

4/16/2012

The component allows for using pre-defined algorithms that are commonly used to select the Golden Record, or you can also write your own custom expressions for flexible rule generation.

../../_images/SSIS_MU_Options.png

There are four algorithms that can be modified by clicking the “..” button to the right of its respective algorithm.

Multiple algorithms can be selected to evaluate the Golden Record. The algorithms are ordered from 1-4 in order of priority. Select the rule and click either the up arrow or down arrow to change this order. Golden Record selection will first be evaluated by the first selected algorithm in the list. If a Golden Record cannot be determined using the first selected algorithm, it will automatically cascade down to the second selected algorithm to re-evaluate the ties. The component will continue to cascade through all selected algorithms until a single golden record can be evaluated or until all the selected algorithms have been applied.

The four algorithms are Last Updated, Most Complete, Data Quality Score, and Custom Expressions.

Last Updated

This algorithm allows for selecting the Golden Record based on the newest or oldest Date/Time.

../../_images/SSIS_MU_GoldenRecord_LastUpdated.png
“Last Updated” Column:

Input requires a valid column of type Date/Time (DT_Date).

Oldest/Newest Date:

Select whether the Golden Record should be selected based on which one has the Oldest/Newest Date. Example

For the following data:

Name

Address

Last Update

John Doe

123 Main St

10/25/2003

John Doe

123 Main St

4/16/2012

John Doe

123 Main St

8/6/2008

Selecting the Newest Date for the “Last Update” column will yield the following results:

Name

Address

Last Update

Results

John Doe

123 Main St

4/16/2012

MS02

John Doe

123 Main St

8/6/2008

MS03

John Doe

123 Main St

10/25/2003

MS03

The record containing MS02 is the selected Golden Record.

Most Complete

This algorithm allows for selecting the Golden Record based on the completeness/length of information.

../../_images/SSIS_MU_GoldenRecord_MostComplete.png

The options allows for selecting multiple columns for evaluation. In a group of duplicate records, the Golden Record will be selected based on the selected columns has the longest concatenated string.

Example:

For the following data:

Name

Address

Joseph Doe

123 Main St

Joe Doe

123 Main St

J. Doe

123 Main St

Selecting the Name and Address columns will yield the following results:

Name

Address

Results

Joseph Doe

123 Main St

MS02

Joe Doe

123 Main St

MS03

J. Doe

123 Main St

MS03

The record containing MS02 is the selected Golden Record.

Data Quality Score

This algorithm allows for selecting the Golden Record based on the Quality of Your Data. The Data Quality Score is required to be used in tandem with the Melissa Contact Verify Component (CVC).

For more information on the Contact Verify Component, see CVC Overview.

../../_images/SSIS_MU_GoldenRecord_DataQualityScore.png

Column Containing Result Codes

Input requires a valid column containing the Melissa Returned Result Codes returned by the CVC.

For more information on the CVC Results, see CVC Settings > Contact Verify Tabs > Output Filter.

Rule

There are a total of 6 rules that can be utilized.

  • Check the box next to the rule(s) that you wish to use.

  • Rules are also ordered from 1-6 in order of priority. Select the rule and click either the up arrow or down arrow to change this order.

Address Quality Score

The Address Quality Score evaluates your Address Results and selects which one has the best address composition and most deliverable.

Name Quality Score

The Name Quality Score evaluates your Name Results and selects which one has the most probable real person’s name.

Phone Quality Score

The Phone Quality Score evaluates your Phone Results and selects which one has the most valid 10-digit phone number.

Email Quality Score

The Email Quality Score evaluates your Email Results and selects which one has the most correct and deliverable email address.

GeoCode Quality Score

The GeoCode Quality Score evaluates your GeoCode Results and selects which one has the highest level of GeoCoding accuracy.

Data Quality Score

The Data Quality Score evaluates all possible results combined from Address, Email, Name, Phone and GeoCode in a single column.

Custom Expressions

The Custom Expression Algorithm allows you to set up a custom expression of your own design.

../../_images/SSIS_MU_GoldenRecord_ExpressionBuilder.png

Expression

Use a pre-built expression

To use a pre-built expression, select one from the drop-down list. You may also remove the selected pre-built expression by clicking the self-titled button.

Use the specified expression

Alternatively, you may create your own expression in this field.

  • Clicking the text button will check your custom expression for correct syntax.

  • To save your custom built expression, click the “Save the above expression as a new Pre-Built Expression…” button.

Precedence

Choose one of the two radio buttons here to designate which result takes precendence over another when comparing two results.

  • The result with the Lowest Value

  • The result with the Highest Value

Expression Elements

Double-clicking any element in the expression elements section will insert it into the “Use the specified expression:” field.

For more information, see Custom Expression Elements.

The following elements are available for your use:

  • Columns

  • Variables

  • String

  • Numeric Functions/Operators

  • Boolean Functions/Operators

  • Date/Time Functions/Operators

  • Misc. Functions/Operators

  • DataType Casts

For further information on SSIS Operators, see http://msdn.microsoft.com/en-us/library/ms137538(v=sql.100).aspx.

For further information on SSIS Functions, see http://msdn.microsoft.com/en-us/library/ms141671(v=sql.100).aspx.

Contents

Select Use Simple Pass-Through if you would like the contents of the checked field names to be passed to the Source output stream without modification, in addition to the Output Columns specified in Options.

Select Use Advanced Survivorship if you would like to gather data from other matching records to pass into a single output stream record.

Source Pass-Through Columns

This tab allows you to add specific fields from the input Source file to the output file.

../../_images/SSIS_MU_SurvivorshipPassThrough.png

Pass Through

Check this box if you would like the contents of the checked field name to be passed to the Source output stream without modification, in addition to the Output Columns specified in Options.

Column Name

The column names from the original input table.

Current Usage

Where the field is currently being used as input.

Data Type

The data type of each column.

Length

Maximum number of bytes returned.

Precision

Maximum number of digits.

Scale

Maximum number of digits to the right of the decimal point.

Advanced Survivorship

Survivorship can merge data from matching record(s) into a single output record. This allows you to establish criteria for each data column individually instead of using the default method of writing full record content to output.

For example, consider the following matching records:

Name

Address

Last Update

Amount

John Doe

123 Main St

10/25/2003

420

John Doe

123 Main St

4/16/2012

100

Mr John Doe

123 Main St

8/6/2008

56

Using the Golden Record selection by latest update, the selected remaining record would be:

Name

Address

Last Update

Amount

John Doe

123 Main St

4/16/2012

100

But if we set survivorship for longest name and greatest amount, we can populate our remaining record with values from other matching records.

Name

Address

Last Update

Amount

Mr John Doe

123 Main St

4/16/2012

420

../../_images/SSIS_MU_Survivorship_Advanced.png

Output Column Name

The output column name. You choose this name when you add a column through the “Add Column” button. Double-click an existing column name to change its name.

Consolidation Method

This method determines how matching data is merged. Specify the consolidation method to be used on the selected output column. The following examples that have Prioritization use the Lowest Salary Prioritization.

First Data

../../_images/SSIS_MU_ConsolidationSlides_First.png

First Non-Empty

../../_images/SSIS_MU_ConsolidationSlides_FirstNEmpty.png

Join

../../_images/SSIS_MU_ConsolidationSlides_Join.png

Join With Spaces

../../_images/SSIS_MU_ConsolidationSlides_JoinWSpace.png

Add

../../_images/SSIS_MU_ConsolidationSlides_Add.png

Average

../../_images/SSIS_MU_ConsolidationSlides_Average.png

Most Frequent

../../_images/SSIS_MU_ConsolidationSlides_MostFreq.png

Stack Group

../../_images/SSIS_MU_ConsolidationSlides_Stack.png

Source Column or Expression

This is where you specify the source of the data which will populate the output column. As with Simple Pass-through, the most common usage is to use the contents of a Source Column, although you can also use a custom expression which may concatenate two fields for example.

Ex. An custom expression like column ZIP + “ “ + CUST_ID could be used to populate a new column with a proprietary account number.

To bring up the Survivorship Expression editor, double-click the respective cell.

Prioritization

When MatchUp identifies a group of duplicates, configuring Prioritization allows you to order the column values, enabling you to select the lowest or highest value (left to right for strings) to output.

For more information, see Prioritization.

Click the ... button under the prioritization column to open the prioritization window for the selected row.

Prioritization

When MatchUp identifies a group of duplicates, configuring Prioritization allows you to order the column values, enabling you to select the lowest or highest value (left to right for strings) to output.

../../_images/SSIS_MU_Survivorship_Prioritization.png

Source

Specify the source of the data which will populate the output column. As with Simple Pass-through, the most common usage is to use the contents of a Source Column, although you can also use a custom expression which may concatenate two fields for example.

For Example: A custom expression like column ZIP + “ “ + CUST_ID could be used to populate a new column with a proprietary account number.

Default

By default, the output column will be populated with contents from source column contents. This option will be greyed out if the output column is a newly created column, which does not exist in the source table.

Use a Custom Expression

You can have the output column populated with data other than the contents of the source column by creating a custom expression. A valid expression may be the contents of a different field, data concatenated from multiple fields, or custom values created with any valid expression. Select the button to the right to access the expression builder to help you select any of the available valid options.

For more information, see Expression Builder.

Expression Builder

The Expression Builder allows for creating custom expressions for Survivorship. The expression editor includes Industry Standard Functions and Operators for building custom rules. Also included are Melissa proprietary functions for prioritization according to the quality of data. The Expression Builder also allows for selecting which set of data will be outputted as the surviving data.

../../_images/SSIS_MU_GoldenRecord_ExpressionBuilder.png

Expression

Specify the expression to be used.

Use a pre-built expression

Select a pre-built expression from the drop down menu.

Use the specified expression

You can choose to make your own custom expression. Use the Expression Elements (see below) section for lists of the various elements you can use in your custom expression.

Expression Elements

Contains categorized lists of the possible elements you can use in a custom expression. Double-click an element to have it inserted into the “Use the specified expression:” text field.

See MatchUp Tabs > Options > Golden Record > Custom Expression for a detailed explanation of the Expression Builder.

Note

This tab is HIDDEN when there is only a single upstream source connected to the MatchUp Component.

This shows a list of the fields in your input Lookup stream. When there is only a single input source connected, this tab will not be visible.

../../_images/SSIS_MU_LookupPassThrough.png

Pass Through

Check this box if you would like the contents of the checked field name to be passed to the Lookup output stream without modification, in addition to the Output Columns specified in Options.

Column Name

The column names from the original input table.

Current Usage

Where the field is currently being used as input.

Data Type

The data type of each column.

Length

Maximum number of bytes returned.

Precision

Maximum number of digits.

Scale

Maximum number of digits to the right of the decimal point.

The MatchUp Component will output records in up to four streams. The Output Filter tab allows you to control which records go to which stream. Names and usage can be done in any manner. Filters are evaluated from the top down.

../../_images/SSIS_MU_OutputFilter.png

Result Codes

The output status of a record is returned via result codes returned by the underlying objects. The Component will combine them into a single, comma-delimited string and write them to the field mapped here. New field names can be created by typing the name into the Output Results Code box.

Output Filter

Select a filter to determine which records will be directed to a particular output stream. A custom filter may be created based on individual need, each pin filters the records in a cascading effect, where the results code is compared against the first expression (Pin 1) and then compared against Pin 2, and so on.

No Filter

All records are written to a single output stream.

Pre-built Filter

The Component comes with several pre-built filters for common applications:

  1. Deduped Records (MS01 or MS02)

Custom Filter

Records matching the filter will be directed to the designated file.

For more information, see Custom Output Filters below.

Attention

Custom rules are an advanced subject. You should be comfortable with Boolean operations before using custom rules in a production environment

Custom Output Filter

SSIS components will output records in up to four streams. Names and usage can be done in any manner. Filters are evaluated from the top down. A custom filter may be created based on individual need, each pin filters the records in a cascading effect, where the results code is compared against the first expression (Pin 1) and then compared against Pin 2, and so on.

Customer Filter

Select Customer Filter from the drop down and click the ... button next to the Customer Filter Expression text box to open an Output Filter Expression dialog box. These rules use Boolean operators (“OR,” “AND,” and “NOT”) and the result codes to construct filters. Records matching the filter will be directed to the valid table while the rest are directed to the invalid table.

../../_images/SSIS_IP_OutputFilter_ExpressionDialog.png

A custom rule example could be: “(AS01 OR AS02)”. This means that the conditions for the rules are met if either result code “AS01” or “AS02” were returned.

Validate Custom Rules

../../_images/SSIS_IP_OutputFilter_Validated.png

A custom expression may be tested by clicking on the Test Expression button. A pop-up dialog box will confirm whether or not the custom expression is acceptable.

Save as Custom Filter

../../_images/SSIS_IP_OutputFilter_SaveCustom.png ../../_images/SSIS_IP_OutputFilter_SaveRules.png

Right-click the Custom Expression, then left-click Save as Custom Filter from the pop-up. Enter a name for the filter in the window and click OK. It will now be available as a Pre-Built Filter for subsequent components.

Remove Selected Rule

To remove a Pre-Built Filter, select the filter from the Pre-Built drop-down list, right-click the filter, and select Delete Filter. Click Yes. After saving this component, it will no longer be available in new component configurations.

../../_images/SSIS_IP_OutputFilter_RemoveRule.png
Custom Expression Elements#
Columns#

The Columns section lists the columns available from the input.

../../_images/SSIS_MU_GoldenRecord_Expression_Columns.png
Variables#

The Variables section lists the following system variables:

../../_images/SSIS_MU_GoldenRecord_Expression_Variables.png

Variable Name

Data Type

Description

ContainerStartTime

DateTime

The start time of the container.

CreationName

String

The name of the task.

LocaleID

Int32

The locale that the task uses.

ParentContainerGUID

String

TaskID

String

The unique identifier of a task instance.

TaskName

String

The name of the task instance.

TaskTransactionOption

Int32

The transaction option that the task uses.

CancelEvent

Boolean

Indicates whether the event handler stops running when an error, warning, or query cancellation occurs.

CreationDate

DateTime

The date that the package was created.

CreatorComputerName

String

The computer on which the package was created.

CreatorName

String

The name of the person who built the package.

ExecutionInstanceGUID

String

The unique identifier of the executing instance of a package.

FailedConfigurations

String

The names of package configurations that have failed.

InteractiveMode

Boolean

Indicates whether the package is run in interactive mode. If a package is running in SSIS Designer, this property is set to True. If a package is running using the DTExec command prompt utility, the property is set to False.

LastModifiedProductVersion

MachineName

String

The name of the computer on which the package is running.

OfflineMode

Boolean

Indicates whether the package is in offline mode. Offline mode does not acquire connections to data sources.

PackageID

String

The unique identifier of the package.

PackageName

String

The name of the package.

ProductVersion

StartTime

DateTime

The time that the package started to run.

UserName

String

The account of the user who started the package. The user name is qualified by the domain name.

VersionBuild

Int32

The package version.

VersionComments

String

Comments about the package version.

VersionGUID

String

The unique identifier of the version.

VersionMajor

Int32

The major version of the package.

VersionMinor

Int32

The minor version of the package.

Reference: http://msdn.microsoft.com/en-us/library/ms141788.aspx

String Functions/Operators#

The String Functions/Operators section lists the following functions/operators:

../../_images/SSIS_MU_GoldenRecord_Expression_String.png

Operators

Reference: http://msdn.microsoft.com/en-us/library/ms137538(v=sql.100).aspx

Operator

Description

Concatenate (+)

Concatenates two expressions.

Equal (==)

Performs a comparison to determine if two expressions are equal.

Not Equal (!=)

Performs a comparison to determine if two expressions are not equal.

Greater (>)

Performs a comparison to determine if the first expression is greater than the second one.

Greater or Equal (>=)

Performs a comparison to determine if the first expression is greater than or equal to the second one.

Less (<)

Performs a comparison to determine if the first expression is less than the second one.

Less or Equal (<=)

Performs a comparison to determine if the first expression is less than or equal to the second one.

Functions

Reference: http://msdn.microsoft.com/en-us/library/ms141671(v=sql.100).aspx

Function

Description

CodePoint()

Returns the Unicode code value of the leftmost character of a character expression.

FindString()

Returns the one-based index of the specified occurrence of a character string within an expression.

Hex()

Returns a string representing the hexadecimal value of an integer.

Len()

Returns the number of characters in a character expression.

Left()

Returns part of a character string starting at a specified number of characters from the left.

Lower()

Returns a character expression after converting uppercase characters to lowercase characters.

LTrim()

Returns a character expression after removing leading spaces.

PadLeft()

Retruns a character expression after padding a specified string to the left of a specified character.

PadRight()

Retruns a character expression after padding a specified string to the right of a specified character.

Replace()

Returns a character expression after replacing a string within the expression with either a different string or an empty string.

Replicate()

Returns a character expression, replicated a specified number of times.

Reverse()

Returns a character expression in reverse order.

Right()

Returns part of a character string starting at a specified number of characters from the right.

RTrim()

Returns a character expression after removing trailing spaces.

SubString()

Returns a part of a character expression.

Trim()

Returns a character expression after removing leading and trailing spaces.

Upper()

Returns a character expression after converting lowercase characters to uppercase characters.

Numeric Functions/Operators#

The Numeric Functions/Operators section lists the following functions/operators:

../../_images/SSIS_MU_GoldenRecord_Expression_Numeric.png

Operators

Reference: http://msdn.microsoft.com/en-us/library/ms137538(v=sql.100).aspx

Operator

Description

Add (+)

Adds two numeric expressions.

Subtract (-)

Subtracts the second numeric expression from the first one.

Multiply (*)

Multiplies two numeric expressions.

Divide (/)

Divides the first numeric expression by the second one.

Modulus (%)

Provides the integer remainder after dividing the first numeric expression by the second one.

Bitwise OR (|)

Performs a bitwise OR operation of two integer values.

Bitwise AND (&)

Performs a bitwise AND operation of two integer values.

Bitwise XOR (^)

Performs a bitwise exclusive OR operation of two integer values.

Bitwise NOT (~)

Performs a bitwise negation of an integer.

Equal (==)

Performs a comparison to determine if two expressions are equal.

Not Equal (!=)

Performs a comparison to determine if two expressions are not equal.

Greater (>)

Performs a comparison to determine if the first expression is greater than the second one.

Greater or Equal (>=)

Performs a comparison to determine if the first expression is greater than or equal to the second one.

Less (<)

Performs a comparison to determine if the first expression is less than the second one.

Less or Equal (<=)

Performs a comparison to determine if the first expression is less than or equal to the second one.

Functions

Reference: http://msdn.microsoft.com/en-us/library/ms141671(v=sql.100).aspx

Function

Description

Abs()

Returns the absolute, positive value of a numeric expression.

Exp()

Returns the exponent to base e of the specified expression.

Ceiling()

Returns the smallest integer that is greater than or

equal to a numeric expression.

Floor()

Returns the largest integer that is less than or equal to a numeric expression.

Ln()

Returns the natural logarithm of a numeric expression.

Log()

Returns the base-10 logarithm of a numeric expression.

Power()

Returns the result of raising a numeric expression to a power.

Round()

Returns a numeric expression that is rounded to the specified length or precision.

Sign()

Returns the positive (+), negative (-), or zero (0) sign of a numeric expression.

Sqrt()

Returns the square root of a numeric expression.

Square()

Returns the square of a numeric expression.

Boolean Functions/Operators#

The Boolean Functions/Operators section lists the following functions/operators:

../../_images/SSIS_MU_GoldenRecord_Expression_Boolean.png

Operators

Reference: http://msdn.microsoft.com/en-us/library/ms137538(v=sql.100).aspx

Operator

Description

Logical OR (||)

Performs a logical OR operation.

Logical AND (&&)

Performs a logical AND operation.

Logical NOT (!)

Negates a Boolean operand.

Equal (==)

Performs a comparison to determine if two expressions are equal.

Not Equal (!=)

Performs a comparison to determine if two expressions are not equal.

Conditional (?:)

Returns one of two expressions based on the evaluation of a Boolean expression.

Functions

Reference: http://msdn.microsoft.com/en-us/library/ms141671(v=sql.100).aspx

Function

Description

IsNull()

Returns a Boolean result based on whether an expression is null.

Date/Time Functions/Operators#

The Date/Time Functions/Operators section lists the following functions/operators:

../../_images/SSIS_MU_GoldenRecord_Expression_DateTime.png

Operators

Reference: http://msdn.microsoft.com/en-us/library/ms137538(v=sql.100).aspx

Operator

Description

Equal (==)

Performs a comparison to determine if two expressions are equal.

Not Equal (!=)

Performs a comparison to determine if two expressions are not equal.

Greater (>)

Performs a comparison to determine if the first expression is greater than the second one.

Greater or Equal (>=)

Performs a comparison to determine if the first expression is greater than or equal to the second one.

Less (<)

Performs a comparison to determine if the first expression is less than the second one.

Less or Equal (<=)

Performs a comparison to determine if the first expression is less than or equal to the second one.

Functions

Reference: http://msdn.microsoft.com/en-us/library/ms141671(v=sql.100).aspx

Function

Description

DateAdd()

Returns a new DT_DBTIMESTAMP value by adding a date or time interval to a specified date.

DateDiff()

Returns the number of date and time boundaries crossed between two specified dates.

DatePart()

Returns an integer representing a datepart of a date.

Day()

Returns an integer that represents the day of the specified date.

GetDate()

Returns the current date of the system.

GetUTCDate()

Returns the current date of the system in UTC time (Universal Time Coordinate or Greenwich Mean Time).

Month()

Returns an integer that represents the month of the specified date.

Year()

Returns an integer that represents the year of the specified date.

Misc. Functions/Operators#

The Misc. Functions/Operators section lists the following functions/operators:

../../_images/SSIS_MU_GoldenRecord_Expression_Misc.png

Operators

Reference: http://msdn.microsoft.com/en-us/library/ms137538(v=sql.100).aspx

Operator

Description

Conditional(?:)

Returns one of two expressions based on the evaluation of a Boolean expression.

Functions

Reference: http://msdn.microsoft.com/en-us/library/ms141671(v=sql.100).aspx

Function

Description

AddressScore()

Returns a quality score for the address results codes.

DataQualityScore()

Returns a quality score for the results codes.

EmailScore()

Returns a quality score for the email results codes.

GeoCodeScore()

Returns a quality score for the geocode results codes.

IsNull()

Returns a Boolean result based on whether an expression is null.

NameScore()

Returns a quality score for the name results codes.

Null()

Returns a null value of a requested data type.

PhoneScore()

Returns a quality score for the phone results codes.

DataType Casts#

The DataType Casts section lists the following system variables:

../../_images/SSIS_MU_GoldenRecord_Expression_DataType.png

Data Type

Description

DT_STR

A null-terminated ANSI/MBCS character string with a maximum length of 8000 characters. (If a column value contains additional null terminators, the string will be truncated at the occurrence of the first null.)

DT_WSTR

A null-terminated Unicode character string with a maximum length of 4000 characters. (If a column value contains additional null terminators, the string will be truncated at the occurrence of the first null.)

DT_TEXT

An ANSI/MBCS character string with a maximum length of 231-1 (2,147,483,647) characters.

DT_NTEXT

A Unicode character string with a maximum length of 230 - 1 (1,073,741,823) characters.

DT_I1

A one-byte, signed integer.

DT_I2

A two-byte, signed integer.

DT_I4

A four-byte, signed integer.

DT_I8

An eight-byte, signed integer.

DT_UI1

A one-byte, unsigned integer.

DT_UI2

A two-byte, unsigned integer.

DT_UI4

A four-byte, unsigned integer.

DT_UI8

An eight-byte, unsigned integer.

DT_R4

A single-precision floating-point value.

DT_R8

A double-precision floating-point value.

DT_CY

A currency value. This data type is an eight-byte signed integer with a scale of 4 and a maximum precision of 19 digits.

DT_DECIMAL

An exact numeric value with a fixed precision and a fixed scale. This data type is a 12-byte unsigned integer with a separate sign, a scale of 0 to 28, and a maximum precision of 29.

DT_NUMERIC

An exact numeric value with a fixed precision and scale. This data type is a 16-byte unsigned integer with a separate sign, a scale of 0 - 38, and a maximum precision of 38.

DT_BOOL

A Boolean value.

DT_DATE

A date structure that consists of year, month, day, hour, minute, seconds, and fractional seconds. The fractional seconds have a fixed scale of 7 digits. The DT_DATE data type is implemented using an 8-byte floating-point number. Days are represented by whole number increments, starting with 30 December 1899, and midnight as time zero. Hour values are expressed as the absolute value of the fractional part of the number. However, a floating point value cannot represent all real values; therefore, there are limits on the range of dates that can be presented in DT_DATE. On the other hand, DT_DBTIMESTAMP is represented by a structure that internally has individual fields for year, month, day, hours, minutes, seconds, and milliseconds. This data type has larger limits on ranges of the dates it can present.

DT_DBDATE

A date structure that consists of year, month, and day.

DT_DBTIME

A time structure that consists of hour, minute, and second.

DT_DBTIME2

A time structure that consists of hour, minute, second, and fractional seconds. The fractional seconds have a maximum scale of 7 digits.

DT_DBTIMESTAMP

A timestamp structure that consists of year, month, day, hour, minute, second, and fractional seconds. The fractional seconds have a fixed scale of 3 digits.

DT_DBTIMESTAMP2

A timestamp structure that consists of year, month, day, hour, minute, second, and fractional seconds. The fractional seconds have a maximum scale of 7 digits.

DT_DBTIMESTAMPOFFSET

A timestamp structure that consists of year, month, day, hour, minute, second, and fractional seconds. The fractional seconds have a maximum scale of 7 digits. Unlike the DT_DBTIMESTAMP and DT_DBTIMESTAMP2 data types, the DT_DBTIMESTAMPOFFSET data type has a time zone offset. This offset specifies the number of hours and minutes that the time is offset from the Coordinated Universal Time (UTC). The time zone offset is used by the system to obtain the local time. The time zone offset must include a sign, plus or minus, to indicate whether the offset is added or subtracted from the UTC. The valid number of hours offset is between -14 and +14. The sign for the minute offset depends on the sign for the hour offset: If the sign of the hour offset is negative, the minute offset must be negative or zero. If the sign for the hour offset is positive, the minute offset must be positive or zero. If the sign for the hour offset is zero, the minute offset can be any value from negative 0.59 to positive 0.59.

DT_FILETIME

A 64-bit value that represents the number of 100-nanosecond intervals since January 1, 1601. The fractional seconds have a maximum scale of 3 digits.

Reference: http://msdn.microsoft.com/en-us/library/ms141036(v=sql.105).aspx

Matchcode Editor#

The Matchcode Editor is a Windows-based application that creates and edits the matchcode file used by MatchUp Object. This program allows you to customize copies of the preset matchcodes or create new matchcodes from scratch.

../../_images/SSIS_MU_MatchcodeEditor.png

The Matchcode Editor has the following features:

Matchcode Evaluation#

Optimized Matchcode

This Matchcode’s properties satisfy the condition needed for efficient clustering. Benchmarking test should return high throughput.

../../_images/SSIS_MU_EvaluationOptimized.png

Sub Optimal Matchcode

This Matchcode’s first component does NOT satisfy the conditions needed for efficient clustering. We don’t recommend using this Matchcode for batch processes with considerable record volume.

../../_images/SSIS_MU_EvaluationSubOptimal.png

Warning Matchcode

At least one component in this Matchcode does NOT satisfy the conditions needed for efficient clustering. Benchmarking tests should be performed before usage in production as throughput may not be optimal.

../../_images/SSIS_MU_EvaluationWarning.png
Matchcode List#

This top portion of the interface contains a list of all the matchcodes found in the current matchcode file.

To the right of the list are four buttons: Create Matchcode, Remove Matchcode, Copy Matchcode, and Rename Matchcode.

../../_images/SSIS_MU_MatchcodeEditor_Matchcode.png

Add a New Matchcode

  1. Click the Create Matchcode button.

  2. Type a name for the new matchcode in the pop-up and click OK. The Matchcode Editor will present a blank matchcode screen with no components.

  3. Add components.

Remove an Existing Matchcode

  1. Select the matchcode to be deleted.

  2. Click the Remove Matchcode button.

  3. Click Yes to confirm the deletion.

Make a Copy of an Existing Matchcode

  1. Select the matchcode to be copied.

  2. Click the Copy Matchcode button.

  3. Type a name for the new matchcode in the pop-up box and click OK.

Rename an Existing Matchcode

  1. Select the matchcode to be renamed.

  2. Click the Rename Matchcode button.

  3. Type a new name for the matchcode in the pop-up box and click OK.

Component List#

Below the matchcode list is a list of components used by the currently-selected matchcode.

The list also shows the basic settings for each combination. The right side of the list contains a grid that shows the combinations in which component is used.

For more information on how combinations of components are used, see Component Combinations.

../../_images/SSIS_MU_MatchcodeEditor_ComponentList.png

Add a New Component to the Matchcode

  1. Select the Select Data Type dropdown list.

  2. The Matchcode Editor displays a list of 35 available Data Types and an additional General Data Type to choose from.

../../_images/SSIS_MU_MatchcodeEditor_ComponentItem.png
  1. Select the settings for the new component.

    You can click on the different sections of the added component for more settings.

  2. Click OK.

  3. The new component is added as the last component in the matchcode.

Remove a component from a matchcode

  1. Select the Component Data Type dropdown list.

  2. Navigate to the top of the list and select Remove Component.

  3. Place the focus on another control and the component will be removed from the component list.

Change the order of components in a matchcode

  1. Click on the name of the component.

  2. Drag the component to the new position.

Component Properties#
Data Types#

The following table lists all the available matchcode components in MatchUp.

Component

Description

Prefix

Prefix of a personal name (Mr, Mrs, Ms, Dr)

First Name

A first name

Middle Name

A middle name

Last Name

A last name

Suffix

A suffix from a personal name

Gender

Male/Female/Neutral

First/Nickname

A representative nickname for a first name

Middle/Nickname

A representative nickname for a middle name

Department/Title

A title and/or department name [1]

Company

A company name

Company Acronym

A company’s acronym [2]

Street Number

The street number from an address line [3]

Street Pre-Directional

“South” in “3 South Main St”

Street name

The street name from an address line

Street Suffix

An address suffix (St, Ave, Blvd)

Street Post-Directional

“North” in “3 Main St North”

PO Box

PO Boxes also include Farm Routes, Rural Routes, etc.

Street Secondary

Apartments, floors, rooms, etc.

Address

A single unparsed address line [4]

City

A city name, ZIP or Postal code is usually more accurate

State/Province

A state or province name

Zip9

A full ZIP + 4 code (9 digits) [5]

Zip5

The ZIP Code (5 digits)

Zip4

The +4 extension of a ZIP + 4 code (4 digits)

Postal Code (Canada)

A Canadian Postal Code

City (UK)

A city in the United Kingdom

County (UK)

A county in the United Kingdom

Postcode (UK)

A United Kingdom Postcode

Country

A country

Phone/Fax

A phone number [6]

E-mail Address

An e-mail address [7]

Credit Card Number

A credit card number

Date

A date [8]

Numeric

A numeric field [9]

Proximity

Allows you to specify a maximum distance in miles between records in which a match will be possible [10]

General

Any general information, ID, birthday, SSN, etc.

  1. Company, Company Acronym, Department/Title

    Frequently these components don’t match exactly because of ‘noise words’ such as “the,” “and,” “agency,” and so on. MatchUp strips these words from these components.

  2. Company Acronym

    MatchUp converts any multi-word company name into an acronym (for example, “International Business Machines” is squeezed into “IBM”). Single-word company names are left as they are. This conversion is done after noise words are removed.

  3. Street Address Components

    The seven street address components (Street Number, Street Pre-Directional, Street Name, Street Suffix, Street Post-Directional, PO Box, Street Secondary) are obtained by splitting up to three address lines. Note that PO Box and/or Street Secondary do not have to appear on their own line, or in a particular field. MatchUp’s proprietary “street smart” splitter does all of the work.

  4. Full Address

    When using the Full Address component, you are at the mercy of every little deviation in data entry. Because MatchUp’s street splitter is so powerful, it is preferable to use street address components instead of the Full Address in nearly all cases. The only exception may be when processing foreign addresses that don’t conform very well to US, Canadian or UK addressing formats. This is discussed in more detail starting on page 178.

  5. Zip9, Zip5, Zip4, Canadian Postal Code

    MatchUp removes dashes and spaces from Zip codes. When processing a mix of Canadian Postal Codes and US Zip Codes, use the Zip9 component.

  6. Phone Number

    MatchUp removes non-numeric characters from phone numbers. Leading ‘1-’ and trailing extensions are stripped if present. Numbers lacking an area code are right justified so that the local dialing code and number are aligned with numbers having area codes. If a data table often has missing or inaccurate area codes (i.e., after a recent area code split), start at the 4th position of the phone number component. Do not use the right-most 7 positions, as badly formatted extensions can sometimes cause the phone number to get coded improperly.

  7. E-Mail Address

    MatchUp removes illegal characters from e-mail addresses. Incomplete, changed, and commonly misspelled domain names are corrected using the Email Address data table.

  8. Date

    MatchUp allows you to specify a number of days for which a match will be possible if the records being compared fall within the set number of days apart.

  9. Numeric

    This allows you to specify an integer number for which a match will be possible if the record’s unit difference falls within the set number.

  10. Proximity

    The proximity component requires you to map in Latitude / Longitude coordinates (Not determined by MatchUp. Can be determined by a product such as GeoCoder or Contact Verify) allowing you to match addresses within a maximum distance setting for this component.

Global Data Types#

These Global data types will not be visible unless you create a global matchcode.

Component

Description

Postal Code

(Zip &/ plus 4) Complete postal code for a particular delivery point.

Premises Number

(Street Number) Alphanumeric indicator within premises field.

Double Dependent Locality

Smallest population center data element

Dependent Locality

(Urbanization) Smaller population center data element. Dependent on Locality.

Sub Administrative Area

(County) Smallest geographic data element.

Sub National Area

Arbitrary administrative region below that of the sovereign state.

Locality

(City) Most common population center data element.

Administrative Area

(State) Most common geographic data element.

Thoroughfare Leading Type

Leading thoroughfare type indicator within the Thoroughfare field.

Thoroughfare Pre-Directional

(Street Pre Direction) Prefix directional contained within the Thoroughfare field.

Thoroughfare Name

(Street Name) Name indicator within the Thoroughfare field

Thoroughfare Trailing Type

(Street Suffix) Trailing thoroughfare type indicator within the Thoroughfare field.

Thoroughfare Post-Directional

(Street Post Direction) Postfix directional contained within the Thoroughfare field.

Dependent Thoroughfare Pre-Directional

Prefix directional contained within the Dependent Thoroughfare field.

Dependent Thoroughfare Leading Type

Leading thoroughfare type indicator within the Dependent Thoroughfare field.

Dependent Thoroughfare Name

Name indicator within the Dependent Thoroughfare field

Dependent Thoroughfare Trailing Type

Trailing thoroughfare type indicator within the Dependent Thoroughfare field.

Dependent Thoroughfare Post-Directional

Postfix directional contained within the Dependent Thoroughfare field.

  • Size

    The maximum number of characters from this component to be used by this matchcode. If the data has fewer characters, it will be padded with spaces. Sizing is done after all other properties are applied

  • Label

    (Optional) A description of the data found in this component. Not all component types use this field. Not all fields allow the label to be edited. This is most useful for clarifying the contents of General fields that don’t fit any of the other component types.Max size of description is 20 characters.

  • Maximum Number of Words

    This limits the number of words that MatchUp will extract from a field when building the match key. For example, if maximum words for a last name were set for 1 and the last name field was “Von Richtofen”, MatchUp would only use “VON” as the last name.

  • Start

    This property determines where MatchUp begins counting when applying the Size property.

    • Left (beginning)

      Starts from the first character of the field. This is the most commonly used option.

    • Right (end)

      Starts from the last character of the field. In other words, if the data included a phone number of “949-589-5200” and the size was 7, MatchUp would use “5895200” for the match key.

    • Position

      Starts form a specific position within the field.

    • Word

      Starts from the beginning of a specific word. This should only be used if a particular field always has more than one word and first word (or more) can safely be ignored.

  • Trim

    This property tells MatchUp to remove excess spaces from the beginning of a piece of data, the end or both. Usually, this property is always enabled.

Matching Strategies (Fuzzy)#

These properties allow for matching of non-exact components. These options are mutually exclusive, so you can only select one at a time.

Phonetex

(pronounced “Fo-NEH-tex”) An auditory matching algorithm. It works best in matching words that sound alike but are spelled differently. It is an improvement over the Soundex algorithm described below.

Soundex

Another, older, auditory matching algorithm. Although the Phonetex algorithm is measurable superior, the Soundex algorithm is presented for users who need to create a machcode that emulates one from another application.

Containment

Match when one record’s component is contained in another record. For example, “Smith” is contained in “Smithfield”

Frequency

Matches the characters in one record’s component to the characters in another without any regard to the sequence. For example “abcdef” would match “badcfe”

Fast Near

A typographical matching algorithm. It works best in matching words that don’t match because of a few typographical errors. Exactly how many errors is specified on a scale from 1 to 4 (1 being the tightest). The Fast Near algorithm is a faster approximation of the Accurate Near algorithm described below. The tradeoff for speed is accuracy; sometimes Fast Near will find false matches or miss true matches.

Accurate Near

This is a typographical matching algorithm. The Accurate Near algorithm produces better results than the Fast Near algorithm, but is slower.

Frequency Near

Similar to Frequency matching except that a slider lets you specify how many characters may be different between components.

UTF-8 Near

Similar to levenstein (Accurate Near). It counts the number typos, i.e. character substitutions count as one typo, transposed characters count as two typos. This algorithm differs from others in that it will account for character storage sizes due to different encoding.

Vowels Only

Only vowels will be compared. Consonants will be removed.

Consonants Only

Only consonants will be compared. Vowels will be removed.

Alphas Only

Only alphabetic characters will be compared.

Numerics Only

Only numeric characters will be compared. Decimals and signs are considered numeric.

Fuzzy Advanced#

Please research the definitions of the following advanced algorithms before implementing in a matchcode.

Jaro

Gathers common characters (in order) between the two strings, then counts transpositions between the two common strings.

Jaro-Winkler

Just like Jaro, but gives added weight for matching characters at the start of the string (up to 4 characters).

n-Gram

Counts the number of common sub-strings (grams) between the two strings. Substring size ‘N’, is currently defaulted as 2 in MatchUp.

Needleman-Wunch

Similar to Accurate Near, except that inserts/deletes aren’t weighted as heavily and as compensation for keyboarding mis-hits, not all character substitutions are weighted equally.

Smith-Waterman-Gotoh

Builds on Needleman-Wunch, but gives a non-linear penalty for deletions. This effectively adds the ‘understanding’ that the keyboarder may have tried to abbreviate one of the words.

Dice’s Coefficient

Like Jaro, Dice counts matching n-Grams (discarding duplicate n-Grams).

Jaccard Similarity Coefficient

Very similar to Dice’s Coefficient with a slightly different calculation.

Overlap Coefficient

Again, very similar to Dice’s Coefficient with a slightly different calculation. String similarity algorithm based on a substring calculation.

Longest Common Substring

Finds the longest common substring between the two strings.

Double MetaPhone

Performs 2 different Phonetex-style transformations. Returns a value dependant on how many of the transformations match (ie, 1 versus 1, 1 versus 2, 2 versus 1, 2 versus 2).

MD Keyboard

An algorithm developed by Melissa which counts keyboarding mis-hits with a weighted penalty based on the distance of the mis-hit and assigns a percentage of similarity between the compared strings.

Distance#

This is the property where you set a range for which two records will still match. This field is context sensitive, depending on the Data Type and Fuzzy algorithm.

The following matchcode component Data Types use a specific unit of measure when specifying the Distance:

  • Proximity: Distance in miles. Range: 0-4000

  • Numeric: Integer number.

  • Date: Number of days.

For example: If the Distance is set to 60:

  • Two records with dates 20161225 and 20161031 will match. (they are within 60 days)

  • Two records with dates 20161225 and 20160430 will match. (they are further tham 60 days apart)

When using the following fuzzy algorithms, the Distance uses a scale of 1-4, rather than a unit of measure or percentage of similarity.

  • Fast Near: Number of typographical errors. Range: Tight(1) - Loose(4) with respect to length of strings.

  • Accurate Near: Number of typographical errors. Range: Tight(1) - Loose(4) with respect to length of strings.

Note

Since these algorithms are not published and the range was originally developed to represent a general sliding scale (narrow choice of precision), we recommend using Near:1 and carefully test before you consider using the higher settings in production, as doing so can quickly return false duplicates. In other words, the 1-4 scale is like when someone rates something on a 1-10 scale – it’s a general scale, not a specific grade.

The following algorithms use a percentage range of 0-100%, indicating the minimum percentage of similarity which will return a match between two strings.

  • N-Gram

  • Jaro

  • Jaro-Winkler

  • LCS

  • Needleman-Wunch

  • MD Keyboard

  • Smith-Waterman-Gotoh

  • Dice’s Coefficient

  • Jaccard Similarity Coefficient

  • Overlap Coefficient

  • Double MetaPhone

For example, if using the Jaro-Winkler algorithm with the Distance set to 80:

  • Two records which MatchUp finds to be 84% similar according to the Jaro-Winkler algorithm will match.

  • Two records which MatchUp finds to be 62% similar according to the Jaro-Winkler algorithm will not match.

More information on the publically published algorithms can be found here: Advanced Algorithms.

Short/Empty Settings#

These settings control matching between incomplete or empty fields. They are not mutually exclusive, meaning that any combination of these settings may be selected.

../../_images/SSIS_MU_MatchcodeEditor_ShortEmpty.png

Match if both fields are blank

Match this component if both records contain no data. This is a very important concept in creating matchcodes. See Blank Field Matching later in this chapter for more information.

Match if one field is blank

Will match a full word to no data (for example, “John” and “”).

Match initial to full field

Will match a full word to an initial (for example, “J” and “John”).

Combinations#

Uses these check boxes to select which of the sixteen possible combinations will use this component. This matrix will grow as you add more components and combinations.

../../_images/SSIS_MU_MatchcodeEditor_Combinations.png

It is easier to visualize the effects of these boxes if you look at the list of matchcode components as well:

../../_images/SSIS_MU_MatchcodeEditor_ComponentList.png

It is important to note that each VERTICAL column of check marks designates one acceptable matchcode. For example, the illustration above shows a combination that is made up of 4 matchcodes:

  1. Zip5, Last Name, First Name, Street Number, Street Name

  2. Zip5, Last Name, First Name, PO Box

  3. Zip5, Company, Street Number, Street Name

  4. Zip5, Company, PO Box

Since boxes 1 and 3 in the Street Number row have check marks, the Street Number field is included in matchcode 1 and 3.

Swap Match Pairs#

Swap matching is the ability to compare one component to another component.

For example, if you were to swap match a First Name component and a Last Name component, you could match “John Smith” to “Smith John.” Swap matching is always defined for a pair of components. MatchUp allows you to specify up to 8 swap pairs (named “Pair A” through “Pair H”). It is strongly recommended that the other properties of both member components are identical.

Configure a Swap Pair

  1. Click the button for a swap pair.

  2. The Matchcode Editor displays the swap pair editing dialog.

  3. Select the two components that will be used for this swap pair. The first component is automatically disabled, since it cannot be used with swap matching.

  4. Select the swapping rule:

    ../../_images/SSIS_MU_MatchcodeEditor_SwapPair.png
    • Both components must match - The contents of both components must be a match according to fuzzy matching strategy in use for both components. “John Smith” matches “Smith John” but not “Smith <blank>.”

    • Either component can match - At least one of the components must match “John Smith” matches both “Smith John” and “Smith <blank>.”

  5. Click OK.

    For more ideas on how to use Swap Matching, see Swap Matching Uses.

Algorithms#

The MatchUp Editor can use the following matching algorithms:

Exact Matching

Determines whether two strings are identical.

Soundex

SoundEx is a string transformation and comparison-based algorithm. For example, JOHNSON would be transformed to “J525” and JHNSN would also be transformed to “J525” which would then be considered a SoundExing match after evaluation. If the original strings are identical, SoundEx will return 100%. If the SoundEx’d strings are equal, the algorithm returns 99%. Otherwise, SoundEx will return 0%.

Phonetex

A variation of the SoundEx Algorithm. PhonetEx takes into account letter combinations that sound alike, particularly at the start of the word (such as ‘PN’ = ‘N’, ‘PH’ = ‘F’).

Containment

Matches when one record’s component is contained in another record. For example, “Smith” is contained in “Smithfield.”

Frequency

Matches the characters in one record’s component to the characters in another without any regard to the sequence. For example “abcdef” would match ”badcfe.”

Fast Near

A typographical matching algorithm. It works best in matching words that don’t match because of a few typographical errors. Exactly how many errors is specified on a scale from 1(Tight) to 4(Loose). The Fast Near algorithm is a faster approximation of the Accurate Near algorithm described below. The tradeoff for speed is accuracy; sometimes Fast Near will find false matches or miss true matches.

Accurate Near

An implementation of the Levenshtein algorithm. It is a typographical matching algorithm. The Accurate Near algorithm produces better results than the Fast Near algorithm, but is slower.

Frequency Near

The Frequency algorithm will match the characters of one string to the characters of another without any regard to the sequence. For example “abcdef” would be considered a 100% match to “badcfe.”

Vowels

Only vowels will be compared. Consonants will be removed.

Consonants

Only consonants will be compared. Vowels will be removed.

Alphabetic

Only alphabetic characters will be compared.

Numeric

Only numeric characters will be compared. Decimals and signs are considered numeric.

N-Gram

Counts the number of common sub-strings (grams) between the two strings. Substring size ‘N’, is currently defaulted as 2 in MatchUp.

Jaro

Gathers common characters (in order) between the two strings, then counts transpositions between the two common strings.

Jaro-Winkler

Just like Jaro, but gives added weight for matching characters at the start of the string (up to 4 characters).

Longest Common Substring (LCS)

Finds the longest common substring between the two strings.

Needleman-Wunch

A variation of the Levenshtein algorithm. Levenshtein and Needleman-Wunsch are identical except that character mistakes are given different weights depending on how far two characters are on a standard keyboard layout. For example: A to S is given a mistake weight of 0.4, while A to D is a 0.6 and A to P is a 1.0.

MD Keyboard

An algorithm developed by Melissa which counts keyboarding mis-hits with a weighted penalty based on the distance of the mis-hit and assigns a percentage of similarity between the compared strings. This effectively adds the “understanding” that the keyboarder may have typed in one character before another.

Smith-Waterman-Gotoh

A variation of the Needleman-Wunsch algorithm. Needleman-Wunsch and Smith-Waterman-Gotoh are identical except that character deletions are given a different weight. This effectively adds the “understanding” that the keyboarder may have tried to abbreviate one of the words.

Dice’s Coefficient

A variation of the N-Gram algorithm. Dice’s Coefficient counts matching n-Grams but does not count extra duplicate n-Grams.

Jaccard Similarity Coefficient

A variation of the N-Gram algorithm. The Jaccard Similarity is identical to the N-Gram algorithm but uses a different formula for similarity computation.

Overlap Coefficient

A variation of the N-Gram algorithm. The Overlap Coefficient is identical to the N-Gram algorithm but uses a different formula for similarity computation.

Double MetaPhone

A variation of the PhonetEx Algorithm. Double Metaphone performs 2 different PhonetEx-style transformations. It creates two PhonetEx-like strings (primary and alternate) for both strings. The logic used for Double Metaphone Similarity works as follows:

  • If primary1 = primary2 and alternate1 = alternate 2, then we have a very good match (99%).

  • If either primary1 = alternate2 or alternate1 = primary2, and alternate1=alternate2, then we have a good match (85%).

  • If alternate 1 = alternate2, we have an acceptable match (75%).

Matchcodes Overview#

Component Combinations#

Every matchcode is composed of one or more possible combinations of components. These represent different possible situations in which this matchcode will detect a match between two records. A match found using any one of the combinations in a matchcode is considered a match. Programmers may think in terms of a series of OR conditions. Satisfying any one of them is considered a positive result.

MatchUp allows up to 16 different combinations of components per matchcode.

Basic Example

A good example of combinations would be a matchcode designed to catch last names as well as either street addresses or post office box addresses.

  • Condition #1

    ZIP/PC, Last Name, Street Number, Street Name

  • Condition #2

    ZIP/PC, Last Name, PO Box

Such a matchcode might look like this:

Component

Size

1

2

ZIP/PC

5

X

X

Last Name

5

X

X

Street #

4

X

Street Name

4

X

PO Box

10

X

Columns 3 through 16 have been omitted for the sake of clarity. The trick to understanding this table is to look at the vertical columns of X’s. For example, looking at column 1, there are X’s in ZIP/PC, Last Name, Street #, and Street Name, indicating the goal of condition #1 exactly. In column 2 are X’s in ZIP/PC, Last Name, and PO Box, matching condition #2.

Advanced Example

For a more advanced example:

Component

Size

1

2

3

4

ZIP/PC

5

X

X

X

X

Last Name

5

X

X

Company

10

X

X

Street #

4

X

X

Street Name

4

X

X

PO Box

10

X

X

This matchcode produced matches under the following 4 conditions:

  • Condition #1

    ZIP/PC, Last Name, Street Number, Street Name

  • Condition #2

    ZIP/PC, Last Name, PO Box

  • Condition #3

    ZIP/PC, Company, Street Number, Street Name

  • Condition #4

    ZIP/PC, Company, PO Box

This matchcode could be used on a mailing list containing a mixture of both personal and company names and either street or PO Box™ addresses.

First Component Restrictions

The first component in any matchcode is special. This is the component that is used for clustering records, an essential element in efficient deduping. Thus, this component has certain restrictions placed on it. The Matchcode Editor enforces these restrictions automatically.

  1. It must appear in every combination.

  2. It cannot use the following types of Fuzzy matching: Containment; Frequency; Fast Near; Frequency Near; Accurate Near. All others are allowed.

  3. It cannot use Initial Only matching.

  4. It cannot use One Blank Field matching.

  5. It cannot use Swap Matching.

Blank Field Mapping#

This needs a special discussion, as its importance is often overlooked. If this property is on, then the absence of data in both records would indicate a match. If this property is off, then two records with missing data, but matching in every other way, will not match. It would be reasonable to wonder if you would not want this behavior. However, it is undesirable in certain situations. Take the following matchcode (paying attention to the Blank column):

Component

Size

Blank

1

2

ZIP/PC

5

Yes

X

X

Last Name

5

Yes

X

X

Street #

4

Yes

X

Street Name

4

Yes

X

PO Box

10

Yes

X

As described above, this produces the following combinations:

  • Condition #1

    ZIP/PC, Last Name, Street Number, Street Name

  • Condition #2

    ZIP/PC, Last Name, PO Box

For this example, take the following records:

Name:

Joe Smith

Suzi Smith

Address:

326 Main Street

405 Main St

City/State/PC:

Pembroke MA 02066

Pembroke, MA 02066

The following matchcode keys would be generated:

Cond#

ZIP/PC

Last Name

Street #

Street Name

PO Box

1

02066

SMITH

326

MAIN

2

02066

SMITH

405

MAIN

According to these matchcode keys, it is clear that these two records do not satisfy condition #1. But because blank field matching is selected, they do satisfy condition #2. The Zip/PC, Last Name, and PO Box are exactly the same. Therefore, the two records do match.

Obviously, this is not the correct result. Making one change to the matchcode:

Component

Size

Blank

1

2

ZIP/PC

5

Yes

X

X

Last Name

5

Yes

X

X

Street #

4

Yes

X

Street Name

4

Yes

X

PO Box

10

No

X

The same comparison is done for combination #2, but the match is disallowed this time because the matchcode now indicates that missing (blank) information is not allowed to figure in the matching condition.

Looking at another example (using the same matchcode):

Name:

Joe Smith

Suzi Smith

Address:

PO Box 123

PO Box 456

City/State/PC:

Pembroke MA 02066

Pembroke, MA 02066

This pairing produces the following matchcode keys:

Cond#

ZIP/PC

Last Name

Street #

Street Name

PO Box

1

02066

SMITH

123

2

02066

SMITH

456

This record has the same problem as before, but this time combination #1 is the cause.

An even better matchcode would be:

Component

Size

Blank

1

2

ZIP/PC

5

Yes

X

X

Last Name

5

Yes

X

X

Street #

4

No

X

Street Name

4

No

X

PO Box

10

No

X

This is one matchcode that works well. There is one more possible tweak, however: Turn on Both Blank Fields for the Street # component. Occasionally, MatchUp Object may encounter records such as:

Name:

Joe Notarangello

Suzi Notarangello

Address:

Oceanfront Estates

Oceanfront Est.

City/State/PC:

Pembroke, MA 02066

Pembroke, MA 02066

This reflects a trend in up-scale neighborhoods, where neither street address has a Street # component, though it is very likely these records should match.

So this new improved matchcode will account for these situations:

Component

Size

Blank

1

2

ZIP/PC

5

Yes

X

X

Last Name

5

Yes

X

X

Street #

4

Yes

X

Street Name

4

No

X

PO Box

10

No

X

Matchcode Mapping#

Matchcodes deal with the abstract. The components in a matchcode represent specific types of data, but they aren’t directly linked to the fields in databases. Mapping creates the link between the data and the matchcode.

For example, take the following matchcode:

Component

Size

Fuzzy

1

ZIP5

5

No

X

Last Name

5

No

X

First Name

5

No

X

Company

10

No

X

Add a database that contains the following fields:

NAME:

Contains full names (“Mr. John Smith”).

COMPANY:

Contains company names (“Melissa Data”).

ADD1:

Contains first (primary) address line (“22382 Avenida Empresa”).

ADD2:

Contains second (secondary) address line (“Suite 34”).

CSZ:

Contains City/State/Zip (“Rancho Santa Margarita, CA 92688”).

An application must create a link between a database’s fields (Name, Company, Add1, Add2 and CSZ) and the matchcode components (Zip5, Last Name, First Name, Company).

With the example above, it may appear that the application will have to contain extensive splitting routines. This is not the case. All that is necessary is to tell MatchUp what type of data is in a specific field and the format of that data.

In the example above, an application would use the following matchcode mapping:

Component

Database Field

Matchcode Mapping

ZIP5

CSZ

CityStZip

Last Name

NAME

FullName

First Name

NAME

FullName

Company

COMPANY

Company

This mapping tells MatchUp that the 5-digit ZIP Code information is in a field named “CSZ” which is described as a field containing city, state, and ZIP Code information. The Last Name can be found in a field called “NAME” and is described as a full name field (which is a full name sequenced: Pre, FN, MN, LN, Suf).

Five Mapping Rules#

Matchcode mappings follow five rules:

  1. For every Matchcode Component, the application must specify a mapping. The only exception is described in rule 2.

  2. Actual Address components names (such as Street Number, Street Pre-Directional, Street Name, Street Suffix, Street Post-Directional, PO Box, and Street Secondary, and Global Components) are not listed for mapping purposes. Instead, the names Address Line 1 and Address Line 2 through Address Line 8 are used. The example below used four address components in the matchcode (Street #, Street Name, Street Secondary, PO Box). However, it only used two address lines.

  3. If a matchcode uses any address components, Address Lines 1-8 will be listed after all other components regardless of where the address component appears in the matchcode. In the following example, the address components are listed before company in the matchcode, but Address Lines 1-8 are listed at the end (after company).

  4. If a matchcode uses address components, Address Lines 1-8 will require at least one line to be mapped, but not all. If a database only has one address field, an application will only need to map Address 1 to that field. All other components must be mapped.

  5. Address Lines should be mapped from the top down (Address Line 1, then 2 through 8).

Enhancing the matchcode in the previous example:

Component

Size

Fuzzy

1

2

ZIP5

5

No

X

Last Name

5

No

X

First Name

5

No

X

Street #

5

No

X

Street Name

5

No

X

Street Secondary

12

No

X

PO Box

10

No

X

Company

10

No

X

X

Again, MatchUp doesn’t use the individual address components. They are replaced with Address 1, Address 2, and Address 3. So, the application would use the following Matchcode Mapping:

Matchcode Component

Database Field

Matchcode Mapping

ZIP9

CSZ

CityStZip

Last Name

NAME

FullName

First Name

NAME

FullName

Company

COMPANY

Company

Address Line 1

ADD1

Address

Address Line 2

ADD2

Address

Address Line 3

(none)

Note on Rule #1#

If a database does not contain a field for information called for by a component in a matchcode, such as company field in the above example, then that matchcode should not be used to dedupe that database.

Use a different matchcode or modify an existing matchcode, as outlined later in this chapter.

However, if a matchcode calls for last name, for example, and the database only has full name, then simply map the full name field to the last name and MatchUp Object will handle parsing the field.

Optimization#

Some matchcodes process much faster than others in spite of the fact that they detect the same matches. This section will assist in creating the most efficient matchcodes. Ninety-nine percent of the time, clicking the Optimize button in the Matchcode Editor will sufficiently optimize a matchcode. This discussion is included so developers can better understand why certain things are done while optimizing, as well as what can be done to make the optimizer work more effectively.

Optimizing can make a significant difference in processing speed. 58-hour runs have been reduced to four hours simply by optimizing the matchcode.

It is important, however, that the developer verifies that a matchcode works in the intended way before attempting any optimizations. If a matchcode is not functioning properly, these optimizations will not help, and could quite possibly make the situation worse.

Component Sequence#

As discussed in the previous section, the first component of a matchcode has certain restrictions:

  • It must be used in every combination.

  • It cannot use certain types of Fuzzy Matching: Containment; Frequency; Fast Near; Frequency Near or Accurate Near (other types are okay, though).

  • It cannot use Initial Only matching.

  • It cannot use One Blank Field matching.

  • It cannot use Swap matching.

If the matchcode’s second component also follows these conditions, MatchUp Object will incorporate it into its clustering scheme (see MatchUp Hub > Matchcode Optimization for more information on clustering). Additional components, if they follow in sequence (third, fourth, and so on), will be used if they too satisfy these conditions. Incorporating a component into a cluster greatly reduces the number of comparisons MatchUp Object has to perform which, in turn, speeds up your processing.

This is a simple example of optimization:

Component

Size

Fuzzy

Blank

1

2

ZIP/PC

5

No

Yes

X

X

Street #

5

No

Yes

X

Street Name

5

No

No

X

PO Box

10

No

No

X

Last Name

5

No

Yes

X

X

As shown here, MatchUp Object will only cluster by ZIP/PC. But note that the last component satisfies all the conditions listed earlier.

Component

Size

Fuzzy

Blank

1

2

ZIP/PC

5

No

Yes

X

X

Last Name

5

No

Yes

X

X

Street #

5

No

Yes

X

Street Name

5

No

No

X

PO Box

10

No

No

X

This simple optimization will produce significant improvements in speed. The Matchcode Optimizer will always perform this optimization.

Fuzzy Algorithms#

Fuzzy algorithms fall into two categories: early matching and late matching.

Early matching algorithms are algorithms where a string is transformed into a (usually shorter) representation and comparisons are performed on this result. In MatchUp, these transformations are performed during key generation (the BuildKey function in each interface), which means that the early matching algorithms pay a speed penalty once per record: as each record’s key is built.

Late matching algorithms are actual comparison algorithms. Usually, one string is shifted in one direction or another, and often a matrix of some sort is used to derive a result. These transformations are performed during key comparison. As a result, late matching algorithms pay a speed penalty every time a record is compared to another record. This may happen several hundred times per record.

Obviously, late matching is much slower than early matching. If a particular matchcode is very slow, changing to a faster fuzzy matching algorithm may improve the speed. Often, a faster algorithm will give nearly the same results, but it is a good idea to test any such change before processing live data.

The fuzzy algorithms, ranked from slowest to fastest:

Algorithm

Late or Early

Speed (10=fastest)

Jaro

Late

1

Jaro-Winkler

Late

1

n-Gram

Late

1

Needleman-Wunch

Late

1

Smith-Waterman-Gotoh

Late

1

Dice’s Coefficient

Late

1

Jaccard Similarity Coefficient

Late

1

Overlap Coefficient

Late

1

Longest Common Substring

Late

1

Double Metaphone

Late

1

Accurate Near

Late

1

Fast Near

Late

3

Containment

Late

4

Frequency Near

Late

4

Frequency

Late

6

Phonetex

Early

7

Soundex

Early

8

Vowels Only

Early

9

Numerics Only

Early

9

Consonants Only

Early

9

Alphas Only

Early

9

Exact

N/A

10

The speed values are only rough estimates.

Another benefit of using a faster fuzzy algorithm is that an application may be able to exploit the component sequence optimization shown earlier. All of the early matching algorithms satisfy the restrictions for first components.

The Matchcode Optimizer will not perform this optimization as it can have a significant impact on matching results.

Unnecessary Components#

Components that are not used in any combinations (in other words, they have no X’s in columns 1 through 16) are a sign of poor matchcode design.

Take the following matchcode:

Component

Size

Fuzzy

Blank

1

2

ZIP/PC

5

No

Yes

X

X

Last Name

5

No

Yes

X

X

First Name

5

No

Yes

Street #

5

No

Yes

X

Street Name

5

No

No

X

PO Box

10

No

No

X

First name is not being used in any combination. Perhaps it was used in a combination that has since been removed from this matchcode, but is no longer necessary.

Unnecessary Combinations#

Take the following matchcode:

Component

Size

Fuzzy

Blank

1

2

3

4

ZIP5

5

No

Yes

X

X

X

X

Last Name

5

No

Yes

X

X

X

X

First Name

5

No

Yes

Street #

5

No

Yes

X

X

Street Name

5

No

No

X

X

PO Box

10

No

No

X

X

Here are the four conditions for matching:

Condition #1:

ZIP/PC

Last Name

First Name

Street #

Street Name

Condition #2:

ZIP/PC

Last Name

First Name

PO Box

Condition #3:

ZIP/PC

Last Name

Street #

Street Name

Condition #4:

ZIP/PC

Last Name

PO Box

There is no match that will be detected by condition #1 that would not be detected by condition #3. Similarly, matches found by condition #2 will always be found by condition #4. In other words, condition 3 is a subset of condition 1, and condition 2 is a subset of condition 4. Subsets are rarely desirable.

So either conditions 1 and 2 aren’t needed or conditions 3 and 4 were a mistake. If conditions 1 and 2 are eliminated, the First Name component should also be removed, as it will not be needed.

Swap Matching#

Swap matching is used to catch matches when two fields are flipped around. The most common occasion is catching the “John Smith” and “Smith John” records. But there are other uses:

Comparing Household Records

When there are two or three first or full names per record, a list provider may claim that every record is always “husband, wife, then children,” but records will read wife then child and husband:

../../_images/SSIS_MU_Matchcode_SwapMatch1.png

In the above example, select Either component can match for Swap Pairs A, B, and C

Comparing up to Three Address Lines

Although the address splitter works well in the US and Canada, some European countries can cause problems. A typical Euro-Matchcode will not use street split components and look at three address lines instead. The swap matching ensures that every address line is compared with every other address line.

../../_images/SSIS_MU_Matchcode_SwapMatch2.png

Again, select Either component can match for Swap Pairs A, B, and C.

../../_images/SSIS_MU_Matchcode_SwapMatch3.png

Don’t always discard the street split component matchcodes because you are working with a foreign database. Sometimes the street splitter will yield usable results. Therefore, a combination of approaches will often work.

Result Codes (MatchUp)#

Personator#

Overview#

Personator Component is an all-in-one contact verification and appending Web service. It allows you to pass in names, addresses, phone numbers, and email addresses; simultaneously parsing them, making conservative corrections, and even appending data derived from the input. It can also leverage all of these inputs to verify whole contact records. Personator Component can be configured to perform one or more of the primary actions the service provides: Verify and Append.

  • Verifies name corresponds to address, email, and phone data.

  • Appends missing name and company name, phone number, and/or email address.

  • Provide current addresses for people and companies that have moved with 20+ years of history.

Tutorial#

The following steps will guide you in the basic usage of Personator for SSIS.

Advanced Configuration#

In the Personator Component, navigate to File > Advanced Configuration.

../../_images/SSIS_PR_Advanced_Cloud.png
Melissa Cloud#

For Melissa Cloud processing, you need the License Key issued to you by your sales representative. The other settings on this part of the Advanced Configuration screen should not be changed unless you are specifically directed to do so by Melissa Technical Support.

After entering the License Key, click the Show Details button at the bottom of this screen to verify that the License Key was entered correctly.

Warning

The following items should only be altered if directed by Melissa’s support staff.

Use Proxy

If your network uses a Proxy Server, check this box and enter the Proxy information below.

Proxy URL

If your network uses a Proxy Server, enter the Proxy URL information on this field in order for the Personator Component to communicate with the Melissa Cloud. The format is “URL:port”.

User Name

The user name for your Proxy Server, if any.

Password

The password for your Proxy Server, if any.

Enable Compression

Check this to enable GZip compression. This can have up to a 10% increase in speed.

Maximum Threads

Specify the number of simultaneous requests to be sent to the Melissa Cloud Services to run in parallel.

Maximum Transaction Size

Specify the number of records to be sent to the Melissa Cloud per request.

Request Timeout

Specify the number of seconds for the Personator Component to wait before timing out. Some requests may experience connection lag or timeouts due to network problems.

Number of Retries

Specify the number of times the Personator Component should re-send a request to the Melissa Cloud due to any exceptions.

Abort on Critical Error

Will abort the process, in event of critical errors related to the Component such as the Web service code WSE00; Unexpected Error-Please Retry.

Test Configuration (Personator Cloud)

Either the version number or build number will assist Melissa Technical Support in determining if you have the latest software installed on your system.

../../_images/SSIS_PR_Advanced_Cloud_Test.png

Personator SSIS Component Info

Version

Displays the current SSIS component version.

Build Number

Displays the current development release build number of the Personator Component for SSIS. This is usually a three or four-character string.

License Expiration

Displays the date the License Key expires.

Personator Web Service Info

Service Response

Displays the Web Service response status with the number of retries and seconds to connect.

Version

This box displays the version number of the Personator Web Service.

Add Component#

To add Personator Component to your project, drag the component onto the Data Flow screen. This will snap the Personator Component into your workflow space.

../../_images/SSIS_PR_Tutorial_Component.png

Connect Input#

Select a data flow source to be your input data. Many formats can be used as Sources, including Excel files, flat files or Access Input data sources. Connect this data source to the Personator Component by dragging the arrow from your data flow source to the Personator Component.

../../_images/SSIS_PR_Tutorial_Source.png

Configure Component#

Double click the Personator Component to bring up the interface. See Personator Component Settings.

Connect Output#

Add data destinations for downstream output. Connect the respective output filter pin to the output destination.

../../_images/SSIS_PR_Tutorial_Output.png

Save Settings#

Click File and select Save Selected Items to save the project

../../_images/SSIS_Tutorial_Save.png

Run Project#

Now, the project is ready to run.

Settings#

Personator Tabs#

  • Input
  • Actions
  • Processing Options
  • Output
  • Pass-Through Columns
  • Output Filter

The input tab configures the fields that will be used for the Personator Component. Existing field names can be selected using the drop-down boxes. New field names can be created by typing the name into the box.

../../_images/SSIS_PR_Input.png
Apply Free Form:

Check this option to use the Free Form input.

Free Form

Free Form

Enter the whole address as one line, and the Personator component will attempt to identify, parse, and reorganize the input data.

Address Fields

Company Name

The company associated with the name/address.

Address Line 1

The first line of street address information. It may also contain secondary address information such as suite and private mailbox numbers.

Address Line 2

The second line of street address information, if any.

City

The city.

State

The state.

Zip

The postal (ZIP) code.

Country

The country. Personator currently supports the U.S. and Canada.

Melissa Address Key

MAK

This is a globally unique and persistent key for the location, even if parts of the address change. When an address is fully validated this field returns a 10-digit proprietary key for the address.

With AddressKey (US and Canada only), if an address zip code changes, the AddressKey would also change. Melissa Address Key (MAK) is independent and will not change. This makes MAK a good way to permanently identify and locate addresses. Once you have a MAK it can be used as an input in most Melissa services and thus is a good tool for deduping.

Name Fields

If parsed First and Last Names are present, Fullname will not be used to verify a record.

Full Name

This field can contain a full name. We will parse and check Names only if the First Name and Last Name fields are left blank.

First Name

The given (First) name. Used for verifying a contact Name against other contact input data types (Address, Phone, etc.).

Last Name

The family (Last) name. Used for verifying a contact Name against other contact input data types (Address, Phone, etc.).

Other Fields

Social Security

The social security number.

Phone

The telephone number.

Email

The email address.

IP Address

Retrieve IP Address information

Birth Day

Insert Birth Day DD

Birth Month

Insert Birth Month MM

Birth Year

Insert Birth Year YY

The Actions tab allows you to specify which actions you would like to perform.

../../_images/SSIS_PR_Actions.png

Personator Actions

Choose which action you wish to perform with the Personator component.

Verify

(Default) Will return the relationships between your different input data pieces. It can show you if your name, address, email, and phone number are correlated.

Move

Updates the address when a move is found.

Append

Allows you to enrich your contact records with data returned by the Personator component.

Append Options

Blank

Append data when incoming information is blank.

Always

Always append data with the information provided by Melissa.

Check Error

Append data when incoming information cannot be verified.

../../_images/SSIS_PR_ProcessingOptions.png

Verify and Append Options

Centric Hint

Used to set which piece of information to use as the primary point of reference when verifying/appending data.

Auto

(Default) First uses Address, if available, followed by Phone if no Address is available, and lastly Email if neither Address nor Email are available.

Social Security

Uses Social Security number as the primary point of reference.

Address

Uses Address as the primary point of reference.

Phone

Uses Phone as the primary point of reference.

Email

Uses Email as the primary point of reference.

Name

Uses Name as the primary point of reference – This is not included in Centric Hint Auto option.

Social Security Number Cascade Option

Personator will attempt to match on 4 scenarios:

  1. Full Name & Full SSN

  2. Last Name & Full SSN

  3. Full Name & SSN Last 4

  4. Last Name & SSN Last 4

Returned Result codes will indicate the level of matching.

Name Options

Name Hint

Varying

(Default) If necessary, statistical logic will be employed to determine name order, with no bias toward either name order.

Definitely Full

Name will always be treated as normal name order, regardless of formatting or punctuation.

Very Likely Full

Name will be treated as normal name order unless inverse order is clearly indicated by formatting or punctuation.

Probably Full

If necessary, statistical logic will be employed to determine name order, with a bias toward normal name order.

Probably Inverse

If necessary, statistical logic will be employed to determine name order, with a bias toward inverse name order.

Very Likely Inverse

Name will be treated as inverse name order unless normal order is clearly indicated by formatting or punctuation.

Definitely Inverse

Name will always be treated as inverse name order, regardless of formatting or punctuation.

Mixed First Name

Name field is expected to only contain prefixes, first, and middle names.

Mixed Last Name

Name field is expected to only contain last names and suffixes.

Middle Name Logic

Determines the handling of middle names.

Parse Logic

(Default) Middle names that are typically last names are considered to be part of a hyphenated last name.

Hypenated Last

The middle word is assumed to be part of the last name. For Example: “Matthew Edward Jones” is treated as “Matthew Edward-Jones.”

Middle Name

The middle word is assumed to be a middle name. For example: “Matthew Svensson Jones”. “Svensson” would be considered a middle name instead of part of the last name.

Salutation Format

Sets the salutation format for the response.

Formal

(Default) Mr. Smith

Informal

John

First Last

John Smith

Gender Population

Default is Mixed. Sets the gender balance of the source data, either predominantly Male, Female, or Mixed (evenly split).

Gender Aggression

Default is Neutral. Sets how aggressive genderization is for neutral first names, either Neutral, Conservative, or Aggressive.

Correct First Name

Checked by default. If checked, allows common spelling corrections for the First Name field.

Standardize Company Name

Checked by default. If checked, the Company Name field will be returned with standard abbreviation, capitalization, and punctuation rules applied.

Geo Options

Decennial CensusKey Option

Using the drop down menu, set the preferred Census information returned, whether the latest version or the decennial version.

  • 2020 - Return the 2020 static decennial census database released.

  • 2010 - Return the 2010 static decennial census database released.

  • Off - Default. Return the latest Census information available.

Address Options

Diacritics

Default is auto. If on, French language characters will be returned.

Advanced Address Correction

AAC uses the Full Name/Company Name input to perform more advanced address correction.

USPS Preferred City

Default is off. For every city in the United States, there is an official name that is preferred by the U.S. Postal Service. There may be one or more unofficial or “vanity” names in use. Normally, Personator Component allows you to verify addresses using known vanity names. If Preferred City is on, the preferred city name will be substituted for all vanity names when it verifies an address.

Phone Options

Phone Format

Choose one of six different available phone formats:

    1. 800-6245: (Default) Parenthesis with dash.

    1. 800 6245: Parenthesis with space.

  • 800 800 6245: Spaces.

  • 800-800-6245: Dashes.

  • 800.800.6245: Periods.

  • 8008006245: No space.

Email Options

Database Look up

Checked by default. If checked, verification of domain names will be attempted using a database of valid domains.

Standardize Casing

Checked by default. If checked, all letters in the Email field will be changed to lower case before any checking occurs.

Correct Syntax

Checked by default. If checked, the syntax of the Email field will be corrected.

Update Domain

Checked by default. If checked, determines whether the domain name is out of date and updates it.

The Output Personator tab allows you to specify which fields to have in your output file.

../../_images/SSIS_PR_Output.png

Output Groups/Columns

These are preset groups for the output fields. Check the checkbox next to the groups/columns that you want to include in your output.

Details

When an output field is selected, any details about the column will be displayed here.

The Pass-Through Columns tab allows you to choose which columns, if any, you want to have in your output file.

../../_images/SSIS_PR_PassThroughColumns.png

Field Name

This displays the column name of fields from your input data.

Current Usage

The current usage of the field. E.g. Unused or as Input.

Data Type

The data type of the field.

Length

The maximum length of the field.

The Personator Component will output records in up to four streams. The Output Filter tab allows you to control which records go to which stream. Names and usage can be done in any manner. Filters are evaluated from the top down.

../../_images/SSIS_PR_OutputFilter.png

Result Codes

The output status of a record is returned via result codes returned by the underlying objects. The Component will combine them into a single, comma-delimited string and write them to the field mapped here. New field names can be created by typing the name into the Output Results Code box.

Output Filter

Select a filter to determine which records will be directed to a particular output stream. A custom filter may be created based on individual need, each pin filters the records in a cascading effect, where the results code is compared against the first expression (Pin 1) and then compared against Pin 2, and so on.

No Filter

All records are written to a single output stream.

Pre-built Filter

The Component comes with several pre-built filters for common applications:

  1. Address and Name Verified - VR01

  2. Full Address and Full Name Verified - VR01 AND NOT VS02 AND NOT VS12

  3. Full Address and Full Company Verified - VR07 AND NOT VS02 AND NOT VS22

  4. Address, Name, and Phone Verified - (VR01 AND VR04) OR (VR02 AND VR04)

  5. One or more components verified - VR*

  6. Appended one or more contact pieces - DA*

  7. Move Address Detected - AS12

Custom Filter Expression

Records matching the filter will be directed to the designated file.

For more information, see Custom Output Filters below.

Attention

Custom rules are an advanced subject. You should be comfortable with Boolean operations before using custom rules in a production environment

Custom Output Filter

SSIS components will output records in up to four streams. Names and usage can be done in any manner. Filters are evaluated from the top down. A custom filter may be created based on individual need, each pin filters the records in a cascading effect, where the results code is compared against the first expression (Pin 1) and then compared against Pin 2, and so on.

Customer Filter

Select Customer Filter from the drop down and click the ... button next to the Customer Filter Expression text box to open an Output Filter Expression dialog box. These rules use Boolean operators (“OR,” “AND,” and “NOT”) and the result codes to construct filters. Records matching the filter will be directed to the valid table while the rest are directed to the invalid table.

../../_images/SSIS_IP_OutputFilter_ExpressionDialog.png

A custom rule example could be: “(AS01 OR AS02)”. This means that the conditions for the rules are met if either result code “AS01” or “AS02” were returned.

Validate Custom Rules

../../_images/SSIS_IP_OutputFilter_Validated.png

A custom expression may be tested by clicking on the Test Expression button. A pop-up dialog box will confirm whether or not the custom expression is acceptable.

Save as Custom Filter

../../_images/SSIS_IP_OutputFilter_SaveCustom.png ../../_images/SSIS_IP_OutputFilter_SaveRules.png

Right-click the Custom Expression, then left-click Save as Custom Filter from the pop-up. Enter a name for the filter in the window and click OK. It will now be available as a Pre-Built Filter for subsequent components.

Remove Selected Rule

To remove a Pre-Built Filter, select the filter from the Pre-Built drop-down list, right-click the filter, and select Delete Filter. Click Yes. After saving this component, it will no longer be available in new component configurations.

../../_images/SSIS_IP_OutputFilter_RemoveRule.png

Result Codes (Personator)#

Personator World#

Overview#

Melissa’s Personator World Component is a new ID verification solution makes it easy to check and verify your data in real time. Using trusted reference and national databases, the service can verify a person’s name, address, phone, email, date of birth and national ID. As a cloud web service, it can be integrated into applications and services that need to maintain trust in their data as well as detect and prevent fraud globally such as in shopping/eCommerce platforms or other applications involving financial transactions.

The web service features 2 different selectable actions, each of which is a separate level of subscription:

The Check Action cleans and standardizes your names, addresses, phones and emails. During this stage, the web service validates and determines whether:

  • Name is in a valid format

  • Address is deliverable

  • Email address exists

  • Phone number is callable

The Verify Action takes the standardized name, phone, email and address from the Check Action and performs ID verification. Additional input such as the individuals National ID and date of birth can be verified as well depending on the country. Result codes are returned indicating what matches were found for the given input (address match, email match, last name match, first name match, etc.)

Tutorial#

The following steps will guide you in the basic usage of Personator World for SSIS.

Advanced Configuration#

In the Personator World Component, navigate to File > Advanced Configuration.

../../_images/SSIS_PRW_Advanced_Cloud.png
Melissa Cloud#

For Melissa Cloud processing, you need the License Key issued to you by your sales representative. The other settings on this part of the Advanced Configuration screen should not be changed unless you are specifically directed to do so by Melissa Technical Support.

After entering the License Key, click the Show Details button at the bottom of this screen to verify that the License Key was entered correctly.

Warning

The following items should only be altered if directed by Melissa support staff.

Use Proxy

If your network uses a Proxy Server, check this box and enter the Proxy information below.

Proxy URL

If your network uses a Proxy Server, enter the Proxy URL information on this field in order for the Personator Component to communicate with the Melissa Cloud. The format is “URL:port”.

User Name

The user name for your Proxy Server, if any.

Password

The password for your Proxy Server, if any.

Enable Compression

Check this to enable GZip compression. This can have up to a 10% increase in speed.

Maximum Threads

Specify the number of simultaneous requests to be sent to the Melissa Cloud Services to run in parallel.

Maximum Transaction Size

Specify the number of records to be sent to the Melissa Cloud per request.

Request Timeout

Specify the number of seconds for the Personator World Component to wait before timing out. Some requests may experience connection lag or timeouts due to network problems.

Number of Retries

Specify the number of times the Personator World Component should re-send a request to the Melissa Cloud due to any exceptions.

Abort on Critical Error

Will abort the process, in event of critical errors related to the Component such as the Web service code WSE00; Unexpected Error-Please Retry.

Test Configuration (Personator World Cloud)

Either the version number or build number will assist Melissa Technical Support in determining if you have the latest software installed on your system.

../../_images/SSIS_PRW_Advanced_Cloud_Test.png

Personator World SSIS Component

Component Version

Displays the current SSIS component version.

License Expiration

Displays the date the License Key expires.

Build Number

Displays the current development release build number of the Personator World Component for SSIS. This is usually a three or four-character string.

Web Services Connectivity Info

Connect

Displays the connection status of the web service.

Web Service

Displays the name of the web service.

Version

This box displays the version number of the web service.

Service Request

Displays the web service response status with the number of retries and seconds to connect.

Add Component#

To add the Personator World Component to your project, drag the component onto the Data Flow screen. This will snap the Personator World Component into your workflow space.

../../_images/SSIS_PRW_Tutorial_Component.png

Connect Input#

Select a data flow source to be your input data. Many formats can be used as Sources, including Excel files, flat files or Access Input data sources. Connect this data source to the Personator World Component by dragging the arrow from your data flow source to the Personator World Component.

../../_images/SSIS_PRW_Tutorial_Source.png

Configure Component#

Double click the Personator World Component to bring up the interface. See Personator World Component Settings.

Connect Output#

Add data destinations for downstream output. Connect the respective output filter pin to the output destination.

../../_images/SSIS_PRW_Tutorial_Output.png

Save Settings#

Click File and select Save Selected Items to save the project

../../_images/SSIS_Tutorial_Save.png

Run Project#

Now, the project is ready to run.

Settings#

Personator World Tabs#

  • Actions
  • Name
  • Address
  • Phone
  • Email
  • Pass-Through Columns
  • Output Filter

The Actions tab allows you to specify which actions you would like to perform.

../../_images/SSIS_PRW_Actions.png

Personator Actions

Choose which action you wish to perform with the Personator World component.

Check

Determines whether the data within a submitted record is valid, e.g. whether or not a given postal code contains the given city. It can also make limited corrections and appends to the data. Check looks at each data point separately.

Verify

After the data has been checked, identity verification is performed and result codes (KV*) are returned to indicate what pieces of input data have been matched against trusted referenced data.

The Name tab allows you to parse and genderize a full name into its respective components. This also generates salutations and allows you to filter out detected company names, vulgarities, and/or suspicious names.

../../_images/SSIS_PRW_Name.png

Input Columns

Full Name

The full name of the contact.

Company

The company name.

Name Options

Name Order Hint

Varying

(Default) If necessary, statistical logic will be employed to determine name order, with no bias toward either name order.

Definitely Full

Name will always be treated as normal name order, regardless of formatting or punctuation.

Very Likely Full

Name will be treated as normal name order unless inverse order is clearly indicated by formatting or punctuation.

Probably Full

If necessary, statistical logic will be employed to determine name order, with a bias toward normal name order.

Probably Inverse

If necessary, statistical logic will be employed to determine name order, with a bias toward inverse name order.

Very Likely Inverse

Name will be treated as inverse name order unless normal order is clearly indicated by formatting or punctuation.

Definitely Inverse

Name will always be treated as inverse name order, regardless of formatting or punctuation.

Mixed First Name

Name field is expected to only contain prefixes, first, and middle names.

Mixed Last Name

Name field is expected to only contain last names and suffixes.

Middle Name Logic

Determines the handling of middle names.

Parse Logic

(Default) Middle names that are typically last names are considered to be part of a hyphenated last name.

Hypenated Last

The middle word is assumed to be part of the last name. For Example: “Matthew Edward Jones” is treated as “Matthew Edward-Jones.”

Middle Name

The middle word is assumed to be a middle name. For example: “Matthew Svensson Jones”. “Svensson” would be considered a middle name instead of part of the last name.

Gender Population

Default is Mixed. Sets the gender balance of the source data, either predominantly Male, Female, or Mixed (evenly split).

Gender Aggression

Default is Neutral. Sets how aggressive genderization is for neutral first names, either Neutral, Conservative, or Aggressive.

Correct Misspellings in First Name

If checked, allows common spelling corrections for the First Name field.

Company

You may overwrite the company field in your input file or output a new standardized company name field. Ex. MD_Company.

Output Name Columns

Name 1

Prefix

The prefix (such as “Mr.” or “Dr.”) from the full name.

First Name

The first name from the full name.

Middle Name

The middle name from the full name.

Last Name

The last name from the full name.

Suffix

The suffix (such as “Jr.” or “III”) from the full name.

Gender

A one-character value indicating the gender of the first name.

Code

Description

M

Male

F

Female

U

Unknown first name or no first name present

N

A neutral first name

Name 2

If the full name input contained multiple names, the second name will be returned here.

The Address tab allows you to map your address input fields. At least one Address Line and the country is required.

You can also map your output fields.

Input Columns

../../_images/SSIS_PRW_Address1.png

Company

The company/organization name.

Address Line 1

The input field for the address. This should contain the delivery address information (house number, thoroughfare, building, suite, etc.) but should not contain locality information (locality, administrative area, postal code, etc.) which have their own inputs.

Address Line 2

The input field for the address. This should contain the delivery address information (house number, thoroughfare, building, suite, etc.) but should not contain locality information (locality, administrative area, postal code, etc.) which have their own inputs.

Address Line 3

The input field for the address. This should contain the delivery address information (house number, thoroughfare, building, suite, etc.) but should not contain locality information (locality, administrative area, postal code, etc.) which have their own inputs.

Address Line 4

The input field for the address. This should contain the delivery address information (house number, thoroughfare, building, suite, etc.) but should not contain locality information (locality, administrative area, postal code, etc.) which have their own inputs.

Address Line 5

The input field for the address. This should contain the delivery address information (house number, thoroughfare, building, suite, etc.) but should not contain locality information (locality, administrative area, postal code, etc.) which have their own inputs.

Address Line 6

The input field for the address. This should contain the delivery address information (house number, thoroughfare, building, suite, etc.) but should not contain locality information (locality, administrative area, postal code, etc.) which have their own inputs.

Address Line 7

The input field for the address. This should contain the delivery address information (house number, thoroughfare, building, suite, etc.) but should not contain locality information (locality, administrative area, postal code, etc.) which have their own inputs.

Address Line 8

The input field for the address. This should contain the delivery address information (house number, thoroughfare, building, suite, etc.) but should not contain locality information (locality, administrative area, postal code, etc.) which have their own inputs.

Locality

The most common population center data element.

US Term: City Canada Term: Municipality

Administrative Area

The most common population center data element.

US Term: State Canada Term: Province

Postal Code

The complete postal code for a particular delivery point.

If all three elements are provided and the PostalCode is incorrect, it can be corrected from the data on the Locality and AdministrativeArea.

Country

The country name, abbreviation, or code.

If Country field is not specified or is empty, use country

The country name, abbreviation, or code to use if the Country field is empty.

Address Options

Output Script

This is the script type used for all applicable fields.

Country of Origin

This is used to determine whether or not to include the country name as the last line in FormattedAddress.

Line Separator

This is the line separator used for the Formatted Address result.

Delivery Lines

This options allows you to specify if the Address Lines 1-8 should contain just the delivery address or the entire address.

Output Columns

../../_images/SSIS_PRW_Address2.png

Organization

Matches the Company input element. It is not modified or populated by the service.

Address Line 1

This will return the standardized or corrected contents of the input address. These lines will include the entire address including the locality, administrative area, and postal code.

Address Line 2

This will return the standardized or corrected contents of the input address. These lines will include the entire address including the locality, administrative area, and postal code.

Address Line 3

This will return the standardized or corrected contents of the input address. These lines will include the entire address including the locality, administrative area, and postal code.

Address Line 4

This will return the standardized or corrected contents of the input address. These lines will include the entire address including the locality, administrative area, and postal code.

Address Line 5

This will return the standardized or corrected contents of the input address. These lines will include the entire address including the locality, administrative area, and postal code.

Address Line 6

This will return the standardized or corrected contents of the input address. These lines will include the entire address including the locality, administrative area, and postal code.

Address Line 7

This will return the standardized or corrected contents of the input address. These lines will include the entire address including the locality, administrative area, and postal code.

Address Line 8

This will return the standardized or corrected contents of the input address. These lines will include the entire address including the locality, administrative area, and postal code.

Country Name

The standardized contents of the Country Name element.

Latitude

The parsed Latitude element from the input.

Longitude

The parsed Longitude element from the input.

Dependent Locality

The standardized contents of the Dependent Locality element.

Locality

The standardized contents of the Locality element.

Administrative Area

The standardized contents of the Administrative Area element.

Postal Code

The standardized contents of the Postal Code element.

Formatted Address

The address in the correct format for mailing from the country specified in the Country Of Origin element. This includes the Organization as the first line, one or more lines in the origin country’s format, and the destination country (if required). Separate lines will be delimited by what is specified in the option.

Address Type

A one-character code for the type of address coded. This element works only for US and Canadian addresses.

Address Key

A unique key for the address. Only for US and Canadian addresses. The AddressKey can be used by other Melissa services, such as Geocoder or RBDI.

ISO 3166-1 Country Code

Country Code

The parsed CountryCode element from the input.

For example:

Country

Code

United States

US

Canada

CA

Philippines

PH

Country ISO3

The parsed CountryISO3 element from the input.

For example:

Country

Code

United States

USA

Canada

CAN

Philippines

PHL

Country Number

The parsed CountryNumber element from the input.

For example:

Country

Code

United States

840

Canada

124

Philippines

608

Country Subdivision Code

The ISO3166-2 code for country subdivisions, usually the administrative area for a country. The format is the 2 letter country code followed by a dash followed by 2 or 3 characters or two numbers. Examples are: US-CA, CN-16, or AU-VIC.

Currently, this field is only populated for some countries. These countries are: AU, BR, CA, CN, CR, DM, GT, HN, NI, MX, SV, US.

Additional Output Columns

../../_images/SSIS_PRW_Address3.png

Parsed Dependent Thoroughfare Columns

Thoroughfare

This is used when there are more than one thoroughfares with the same name in one locality. An adjoining thoroughfare is used to uniquely identify the target thoroughfare.

US Term: Dependent street or block data element.

Pre-Direction

Cardinal directional at the beginning of the dependent thoroughfare. The prefix directional is parsed from the Dependent Thoroughfare element. For example, if the dependent thoroughfare is “W Hickory Ln”, the dependent thoroughfare pre direction would be “W.”

Leading Type

Thoroughfare type at the beginning of the dependent thoroughfare. The leading type is parsed from the Dependent Thoroughfare element. For example, if the dependent thoroughfare is “St. Hickory E”, the dependent thoroughfare leading type would be “St.”

Name

Dependent thoroughfare name parsed from the Dependent Thoroughfare element. For example, if the dependent thoroughfare is “E Hickory Ln”, the dependent thoroughfare name would be “Hickory.”

Trailing Type

Thoroughfare type at the end of the dependent thoroughfare. The trailing type is parsed from the Dependent Thoroughfare element. For example, if the dependent thoroughfare is “W Hickory Ln”, the dependent thoroughfare trailing type would be “Ln.”

Post-Direction

Cardinal directional at the end of the dependent thoroughfare. The postfix directional is parsed from the Dependent Thoroughfare element. For example, if the dependent thoroughfare is “Hickory Ln N”, the dependent thoroughfare post direction would be “N.”

Parsed Regional Columns

Double-Dependent Locality

A double dependent locality is a logical area unit that is smaller than a dependent locality but bigger than a thoroughfare. This field is very rarely used. Great Britain is an example of a country that uses double dependent locality.

Sub-Administrative Area

This is a logical area that that is smaller than the administrative area but larger than a locality. While many countries can have a sub-administrative area value, it is very rarely used as part of an official address.

US Term: County

Sub-National Area

A sub-national area is a logical area unit that is larger than an administrative area but smaller than the country itself. It is extremely rarely used.

Parsed Postal Facility Columns

Post Box

Post box information for a particular delivery point.

Parsed Thoroughfare Columns

Premises Type

The parsed Premises Type element from the output.

Thoroughfare

The parsed Thoroughfare element from the output. This value is a part of the address lines and contains all the sub-elements of the thoroughfare like trailing type, thoroughfare name, pre direction, post direction, etc.

Pre-Direction

The parsed Thoroughfare Pre-Direction element from the output. This value is a part of the Thoroughfare field.

US Term: Pre Direction

Leading Type

The parsed Thoroughfare Leading Type element from the output. A leading type is a thoroughfare type that is placed before the thoroughfare. This value is a part of the Thoroughfare field. For example, the thoroughfare type of “Rue” in Canada and France is placed before the thoroughfare, making it a leading type.

Premises Number

The parsed Premises Number element from the output.

US Term: House Number

Name

The parsed Thoroughfare Name element from the output. This value is a part of the Thoroughfare field.

US Term: Street Name

Trailing Type

The parsed Thoroughfare Trailing Type element from the output. A trailing type is a thoroughfare type that is placed after the thoroughfare. This value is a part of the Thoroughfare field. For example, the thoroughfare type of “Avenue” in the US is placed after the thoroughfare, making it a trailing type.

US Term: Street Suffix

Post-Direction

The parsed Thoroughfare Post-Direction element from the output. This value is a part of the Thoroughfare field.

US Term: Post Direction

Parsed Sub-Premises Columns

Building

Descriptive name identifying an individual location.

Sub Premises

Alphanumeric code identifying an individual location.

US Term: Suite

Sub-Premises Type

The parsed Sub-Premises Type element from the output.

US Term: Suite Name

Sub-Premises Number

The parsed SubPremisesNumber element from the output.

US Term: Suite Number

The Phone tab allows you to verify a phone number as valid and append geographic information for the wire center. You can also designate a line type (land line, cell, or VOIP) and phone type (business, residential, or home office).

../../_images/SSIS_PRW_Phone.png

Input Columns

Phone Number

The phone number to be verified.

Country

The country name, abbreviation, or code.

If the above Country field is empty, use country

Select the country to use if the country field is blank.

Select the Country from which dialing is done

Select the origin country from which the dialing will occur.

Phone Number Verification Options

Premium Mode

Validates against a database of known phone numbers. If a number was last real-time validated more than 30 days ago, then a real-time check will be performed.

Express Mode

Quickly validate against a database of known phone numbers.

Default Calling Code

Set the default calling code to use when the country could not be detected from the phone number or country input.

Time To Wait

Set how long the service takes (in seconds) to query a phone number for Premium or Caller ID before it times out.

Caller ID

When checked this returns the name or association linked to the phone number at the time of registration, if available.

Output Columns

Phone Number

The standardized phone number after a successful call to the service.

Phone Subscriber Number

The subscriber number associated with the phone number passed in.

Country Name

The name of the country for the inputted phone number.

Phone Country Dialing Code

A digit, or combination of digits, known as the country dialing code. This will return the digit(s) dialed after the international prefix.

International Prefix

The international exit code needed to call a number outside of the dialing country. If the input country and country of origin differ, this will return the digit(s) required to be dialed before the country code.

National Prefix

A digit, or combination of digits, known as the national prefix. The national prefix must be dialed before an area (city) code when calling a number within the same country but outside the numbering area.

National Destination Code

A digit, or combination of digits, known as the national destination code. The national destination code that identifies a numbering area within a country (or group of countries) and/or network/services.

Locality

The locality (city) associated with the phone number passed to the Lookup function.

Because of phone portability, geographical information may not reflect the true location of the owner of the phone number for wireless and VOIP numbers.

Administrative Area

The administrative area associated with the inputted phone number.

Because of phone number portability, geographical information may not reflect the true location of the owner of the phone number for wireless and VOIP numbers.

Language

The predominant language of the phone’s detected geographical location.

The field will return the written out form of the language name. For example: “French”.

Because of phone number portability, geographical information may not reflect the true location of the owner of the phone number for wireless and VOIP numbers.

UTC

The universal time code for the time zone associated with the inputted phone number.

UTC returns the time zone specified with the format: +/- hh:mm.

Because of phone number portability, geographical information may not reflect the true location of the owner of the phone number for wireless and VOIP numbers.

DST

Daylight Savings Time. This returns a ‘Y’ (for yes) or ‘N’ (for no) to distinguish whether the region of the inputted phone number observes daylight savings time.

Because of phone number portability, geographical information may not reflect the true location of the owner of the phone number for wireless and VOIP numbers.

Latitude

The latitude of the geographically identifiable service area of the exchange.

Latitude is the geographic coordinate of the locale, city, municipality, or other geographically identifiable service area of the exchange measured in degrees north or south of the equator.

Because of phone number portability, geographical information may not reflect the true location of the owner of the phone number for wireless and VOIP numbers.

Longitude

The longitude of the geographically identifiable service area of the exchange.

Longitude is the geographic coordinate of the locale, city, municipality, or other geographically identifiable service area of the exchange measured in degrees east or west of the Greenwich Meridian.

Because of phone number portability, geographical information may not reflect the true location of the owner of the phone number for wireless and VOIP numbers.

Carrier

The name of the phone’s carrier.

Country Abbreviation

The abbreviation of the country for the inputted phone number.

International Phone Number

The number you would dial, given your output fields, in order to successfully send a call.

Postal Code

The zip code that corresponds to a locality inside the United States.

Caller ID

From the CallerID service, which appends a name to the targeted phone number.

The Email tab allows you to verify the domain of an email address as well as correct syntax, typos, update older domain names, filter by bad mailbox names (noreply, spam…), and FCC restricted mobile email domains.

../../_images/SSIS_PRW_Email.png

Input Columns

Email Address

The email address.

Output Columns

Email Address

The email address, including any corrections or changes made by the component.

Mail Box Name

The mailbox or user name portion of the email address (All characters preceding the “@” character).

With an example email of sample@melissadata.com the mailbox name would be “sample”.

Domain Name

The domain name portion of the email address (All characters between the “@” and “.” characters).

With an example email of sample@melissadata.com the domain name would be “melissadata”.

Top Level Domain

The top level domain name portion of the email address (All characters after the “.”).

With an example email of sample@melissadata.com the top level domain name would be “com”.

Top Level Domain Description

The description associated with the top-level domain name of the email address.

DateChecked

The date the email was last checked. DateChecked field returns a UTC, Unix Time (Epoch Time).

Mailbox Verification Options

Express Mode

Also known as fast mode. Quickly validates against database of known email addresses.

Time To Wait

Select how long the web service will wait before it times out on an email.

Premium Mode

Also known as real time mode. Perform real time, live validation of email addresses.

Advanced Email Options

Un-check to turn OFF Domain Correction

When checked, this activates fuzzy email domain correction if the domain is a suspected typo.

The Pass-Through Columns tab allows you to choose which columns, if any, you want to have in your output file.

../../_images/SSIS_PRW_PassThroughColumns.png

Field Name

This displays the column name of fields from your input data.

Current Usage

The current usage of the field. E.g. Unused or as Input.

Data Type

The data type of the field.

Length

The maximum length of the field.

The Personator World Component will output records in up to four streams. The Output Filter tab allows you to control which records go to which stream. Names and usage can be done in any manner. Filters are evaluated from the top down.

../../_images/SSIS_PRW_OutputFilter.png

Result Codes

The output status of a record is returned via result codes returned by the underlying objects. The Component will combine them into a single, comma-delimited string and write them to the field mapped here. New field names can be created by typing the name into the Output Results Code box.

Output Filter

Select a filter to determine which records will be directed to a particular output stream. A custom filter may be created based on individual need, each pin filters the records in a cascading effect, where the results code is compared against the first expression (Pin 1) and then compared against Pin 2, and so on.

No Filter

All records are written to a single output stream.

Pre-built Filter

The Component comes with several pre-built filters for common applications:

  1. Address and Name Verified - VR01

  2. Full Address and Full Name Verified - VR01 AND NOT VS02 AND NOT VS12

  3. Full Address and Full Company Verified - VR07 AND NOT VS02 AND NOT VS22

  4. Address, Name, and Phone Verified - (VR01 AND VR04) OR (VR02 AND VR04)

  5. One or more components verified - VR*

  6. Appended one or more contact pieces - DA*

  7. Move Address Detected - AS12

Custom Filter Expression

Records matching the filter will be directed to the designated file.

For more information, see Custom Output Filters below.

Attention

Custom rules are an advanced subject. You should be comfortable with Boolean operations before using custom rules in a production environment

Custom Output Filter

SSIS components will output records in up to four streams. Names and usage can be done in any manner. Filters are evaluated from the top down. A custom filter may be created based on individual need, each pin filters the records in a cascading effect, where the results code is compared against the first expression (Pin 1) and then compared against Pin 2, and so on.

Customer Filter

Select Customer Filter from the drop down and click the ... button next to the Customer Filter Expression text box to open an Output Filter Expression dialog box. These rules use Boolean operators (“OR,” “AND,” and “NOT”) and the result codes to construct filters. Records matching the filter will be directed to the valid table while the rest are directed to the invalid table.

../../_images/SSIS_IP_OutputFilter_ExpressionDialog.png

A custom rule example could be: “(AS01 OR AS02)”. This means that the conditions for the rules are met if either result code “AS01” or “AS02” were returned.

Validate Custom Rules

../../_images/SSIS_IP_OutputFilter_Validated.png

A custom expression may be tested by clicking on the Test Expression button. A pop-up dialog box will confirm whether or not the custom expression is acceptable.

Save as Custom Filter

../../_images/SSIS_IP_OutputFilter_SaveCustom.png ../../_images/SSIS_IP_OutputFilter_SaveRules.png

Right-click the Custom Expression, then left-click Save as Custom Filter from the pop-up. Enter a name for the filter in the window and click OK. It will now be available as a Pre-Built Filter for subsequent components.

Remove Selected Rule

To remove a Pre-Built Filter, select the filter from the Pre-Built drop-down list, right-click the filter, and select Delete Filter. Click Yes. After saving this component, it will no longer be available in new component configurations.

../../_images/SSIS_IP_OutputFilter_RemoveRule.png

Result Codes (Personator World)#

Profiler#

Overview#

Melissa’s Data Profiler is a component that can be used to analyze a table’s data. This analysis provides a large number of statistics at varying levels of detail. Using these statistics, you can make educated decisions on what strategies you may need to employ to handle the data.

Supported Data Profiling Techniques#

  • Discovery
  • Monitoring
  • Columns and Data Types
  • Data Analysis Summary

The analysis of new data before it is inserted into a Data Warehouse. This analysis is used to ensure that the data is correctly fielded, consistently formatted, standardized, etc. Because it can be very difficult to fix problems once data has been merged into a Data Warehouse, it is critical that issues are detected and eradicated prior to the merge.

The continual analysis of warehoused data in an effort to ensure a consistent quality of data. In systems where records are actively inserted, updated and deleted, it is nearly impossible to maintain a comprehensive set of business rules that foresee every situation. In addition, in systems that support multiple methods of access (ie, web, desktop, tablet/phone), it can be difficult to ensure that all program code adequately enforces all business rules.

The Profiler is designed to work with a variety of column types, and analyzes data to ensure that it adheres to the limitations imposed by the user-specified type.

  • Numeric: Integers (8, 16, 32 or 64-bit), Floats (single or double), Decimal and Currency.

  • String: Unicode and Multi-byte, both fixed- or variable-length.

  • Date and/or Time, of varying resolutions.

  • Boolean

Deep data analysis is performed on several levels:

  • General Formatting analysis is used to determine if the input data ‘looks’ like what is expected.

  • Content analysis relies on reference data to determine if the input data contains information consistent with what is expected.

  • Field analysis determines if the input data is consistently fielded, using the data contained in the entire record to analyze the context of the data.

Service Speed#

What kinds of speeds/throughput can the Profiler component do?

Different analysis features directly affect component performance. Options with data aggregation and sort analysis have a high impact on speed of the component.

The following are the average speeds for 1 Thread across different combinations of Actions selected:

Append Mode Combination

Records per Minute

Data Aggregation

46,800

MatchUp Analysis

115,000

Rightfielder Analysis

100,000

Sort Analysis

105,000

Data Aggregation, MatchUp Analysis

47,100

Data Aggregation, Rightfielder Analysis

34,000

Data Aggregation, Sort Analysis

280

MatchUp Analysis, Rightfielder Analysis

91,000

MatchUp Analysis, Sort Analysis

105,000

RightFielder Analysis, Sort Analysis

81,000

Data Aggregation, MatchUp Analysis, Rightfielder Analysis

33,333

Data Aggregation, MatchUp Analysis, Sort Analysis

1,100

Data Aggregation, RightFielder Analysis, Sort Analysis

310

Matchup Analysis, RightFielder Analysis, Sort Analysis

80,500

Data Aggregation, Matchup Analysis, RightFielder Analysis, Sort Analysis

130

Tutorial#

The following steps will guide you in the basic usage of Profiler for SSIS.

Advanced Configuration#

In the Profiler Component, navigate to File > Advanced Configuration.

../../_images/SSIS_PF_Advanced.png

Licensing

License Key

Your License Key will activate the product for use.

Customer ID

Displays the Customer ID associated with the License Key.

Profiler Settings

Data File Path

This should point to the folder on the local system that contains the Profiler Component and its data files. The default path should work unless you install the component to a different folder.

Test Configuration (Profiler)

The Test Configuration screen displays basic information about the object libraries being used by Profiler.

../../_images/SSIS_PF_Advanced_Test.png

SSIS Component

Customer ID

Displays the Customer ID associated with the License Key.

Component Version

Displays the current SSIS component version.

License Expiration

Displays the date when the Profiler Component License Key will expire.

Build Number

Displays the current development release build number of the Profiler Component for SSIS. This is usually a three or four-character string.

Profiler Object

Initialization

Displays any error messages generated by initializing the Profiler Object.

Database Date

Displays the date of the Profiler Object data files. This date confirms that the data files are the latest available.

Build Number

Displays the current development release build number of the Profiler Object. This is usually a three or four-character string.

Add Component#

To add Profiler Component to your project, drag the component onto the Data Flow screen. This will snap the Profiler Component into your workflow space.

../../_images/SSIS_PF_Tutorial_Component.png

Connect Input#

Select a data flow source to be your input data. Many formats can be used as Sources, including Excel files, flat files or Access Input data sources. Connect this data source to the Profiler Component by dragging the arrow from your data flow source to the Profiler Component.

../../_images/SSIS_PF_Tutorial_Source.png

Configure Component#

Double click the Profiler Component to bring up the interface. See Profiler Component Settings.

Connect Output#

Add data destinations for downstream output. Connect the respective output filter pin to the output destination.

../../_images/SSIS_PF_Tutorial_Output.png

Save Settings#

Click File and select Save Selected Items to save the project

../../_images/SSIS_Tutorial_Save.png

Run Project#

Now, the project is ready to run.

Settings#

Profiler Tabs#

  • Input Field
  • Analysis Options
  • Output

The input field tab maps the input columns to be profiled. Each column can be passed through and/or column-specific results can be output. Not all columns are required.

../../_images/SSIS_PF_InputField.png

Advanced profiling options can be modified for any field by clicking the ... button to the right of any row. See Advanced Settings for more information.

Profile

Designates the selected field to be profiled.

PassThrough

Designate the selected field as a pass-through column. The data will be passed through to the output.

Results

Designates the selected field

Column Name

The name of the column from the source file.

Expected Contents

Use the drop-down menu to select the expected contents of the input column.

Data Type

Displays the data type of the column.

Length

Displays the maximum length of the column. Double-clicking this field will bring up the Advanced Settings dialogue where you can changed this value.

Precision

Displays the precision of the column. Double-clicking this field will bring up the Advanced Settings dialogue where you can changed this value.

Scale

Displays the scale of the column. Double-clicking this field will bring up the Advanced Settings dialogue where you can changed this value.

Settings

Displays any special settings for the column. Double-clicking this field will bring up the Advanced Settings dialogue where you can changed this value.

The Analysis Options tab allows for enabling/disabling certain profiling calculations. Disabling unused Analysis Options will become beneficial due to the increase in processing time.

../../_images/SSIS_PF_AnalysisOptions.png

Analysis Options

Sort Analysis

This is an analysis of any prevailing sortation for each profiled column. This enables/disables the sortation analysis, which can increase profiling time. This time penalty grows geometrically as more records are added. If you are not interested in this statistic, disable it to decrease your profiling time.

MatchUp Analysis

This is an analysis of duplicate record detection. This enables/disables duplicate record detection. Duplicate analysis increases the profiling time by under 5% and ProfileData profiling time by about 30%.

RightFielder Analysis

This is an analysis of profiled columns’ inferred data type (e.g., Full Name, Address, etc.). This enables/disables inferred data type analysis. This analysis is responsible for the Inconsistent Data and Inferred Data Type statistics. This increases the profiling time by under 10%.

Data Aggregation

This is an analysis of aggregate data determination (e.g., averages, median, quartiles, etc.). This enables/disables all forms of aggregation and value gathering. Any statistic that cannot be determined incrementally (for example, median, population standard deviation, etc.) is determined via aggregation. This analysis is also responsible for all value tables (Frequency, Pattern, SoundEx, etc.). All iterators and data aggregation statistics are dependent on this analysis. This increases profiling time by over 90%.

Setup Options

The Setup Options are not required. They are used purely for documentation purposes and will have no impact on profiling results.

Table Name

This function sets the user name for a particular run.

User Name

This function sets the user name for a particular run.

Job Name

This function sets the job name for a particular run.

Job Description

This function sets the job description for a particular run.

Specify an output file that the profiler will use to store its results. If you don’t specify a path, a temporary file will be created.

../../_images/SSIS_PF_Output.png

Output File Storage

Output File

Select a name and location for your target output file. You can check the option below output file to automatically append the current date/time to the file name specified above.

If Output File Exists

You can choose what happens if the output file already exists when the components is ready to write to the file:

  • Append new data to the existing file. (This file must already exist at run time.)

  • Overwrite the existing file. (The previous processing results will be deleted.)

  • Cancel processing. (An error will be reported.)

Advanced Settings#

Double-clicking select fields or the ... button to the right of the rows will bring up the Advanced Settings dialogue. Check the box next to any option to enable it’s modification. These settings allow for validating your data. Records that do not meet the specified validation rules in the Advanced Options will be given a result code indicating failure.

../../_images/SSIS_PF_AdvancedSetting.png

Scale

Set the scale of the column.

Precision

Set the precision of the column.

Max Length

Set the maximum length of the column.

Default Value

Set the default value.

Upper & Lower Bounds

Set the Upper and Lower bounds values.

Regular Expressions

Set a list of regular expressions. See Regular Expression Builder for more information.

Regular Expression Builder#

Checking the box next to Regular Expressions and then selecting the Add... button will bring up the Regular Expression Builder.

../../_images/SSIS_PF_RegularExpression.png

Output Columns#

Unlike the other Melissa components for SSIS, the Profiler Component has a set of 11 possible output pins. Each output pin will contain a static set of output columns which cannot be edited or modified.

../../_images/SSIS_PF_OutputColumns.png

The following are the possible output pins for the Profiler Component:

Column-Based Counts#

The output fields associated with Column-Based Counts provides analysis and information based on the selected input column as a whole.

The following are all the output fields returned for Column –Based Counts and their description.

Column Name

Description

ColumnName

Name of the Input Column

ColumnType

This is the actual Data Type for that column as defined in the SSSI Pipeline. Here is a list of all possible Column Types:

ProfilerColumnType Enumerations

Value

Name

Description

1

ColumnTypeInt1

8 bit signed integer

2

ColumnTypeInt2

16 bit signed integer

3

ColumnTypeInt4

32 bit signed integer

4

ColumnTypeInt8

64 bit signed integer

5

ColumnTypeUInt1

8 bit unsigned integer

6

ColumnTypeUInt2

16 bit unsigned integer

7

ColumnTypeUInt4

32 bit unsigned integer

8

ColumnTypeUInt8

64 bit unsigned integer

9

ColumnTypeReal4

32 bit floating point number

10

ColumnTypeReal8

64 bit floating point number

11

ColumnTypeNumeric

Numeric Value

12

ColumnTypeDecimal

Numeric Value

13

ColumnTypeCurrency

Numeric Value

14

ColumnTypeFixedMBCSString

Fixed-length multi-byte string

15

ColumnTypeVariableMBCSString

Variable-length multi-byte string

16

ColumnTypeFixedUnicodeString

Fixed-length Unicode string

17

ColumnTypeVariableUnicodeString

Variable length Unicode string

18

ColumnTypeDate

Date

19

ColumnTypeDBDate

Database date

20

ColumnTypeDBTime

Database Time

21

ColumnTypeDBTime2

Database Time

22

ColumnTypeDBTimeStamp

Time stamp

23

ColumnTypeDBTimeStamp2

Time stamp

24

ColumnTypeDBTimeStampOffset

Date/Time offset

25

ColumnTypeFileTime

File Date/Time

26

ColumnTypeBoolean

Boolean Value

27

ColumnTypeGUID

GUID value

28

ColumnTypeBytes

Byte Array

29

ColumnTypeImage

Image Array

DataType

This is the Expected Data Type selected in the “Expected Contents” on the Input Field Tab of the Profiler Component.

Here is a list of all possible Data Types:

ProfilerDataType Enumerations

Value

Name

Description

1

DataTypeFullName

Full name

2

DataTypeInverseName

Inverse ordered name (Last – First)

3

DataTypeNamePrefix

Name prefix

4

DataTypeFirstName

First name

5

DataTypeMiddleName

Middle name

6

DataTypeLastName

Last name

7

DataTypeNameSuffix

Name Suffix

8

DataTypeTitle

Title / Department

9

DataTypeCompany

Company or Organization

10

DataTypeAddress

Street address

11

DataTypeCity

City Name

12

DataTypeStateOrProvince

US state or Canadian province

13

DataTypeZipOrPostalCode

US zip code or Canadian postal code

14

DataTypeCityStateZip

City/State/Zip combined

15

DataTypeCountry

Country Name

16

DataTypePhone

Phone number

17

DataTypeEmail

Email address

18

DataTypeString

Generic string value

19

DataTypeNumeric

Generic numeric value

20

DataTypeDateMDY

Generic Date/Time (formatted Month Day Year)

21

DataTypeDateYMD

Generic Date/Time (formatted Year Month Day)

22

DataTypeDateDMY

Generic Date/Time (formatted Day Month Year)

23

DataTypeBoolean

Generic Boolean Value

ColumnSize

Returns the specified Column Type set in the Advanced Options.

ColumnPrecision

Returns the specified Column Precision in the Advanced Options.

ColumnScale

Returns the specified Column Scale in the Advanced Options.

ValueRangeFrom

Returns the specified Upper Bound for the Value Ranges in the Advanced Options.

ValueRangeTo

Returns the specified Lower Bound for the Value Ranges in the Advanced Options.

DefaultValue

Returns the specified Default Value in the Advanced Options.

CustomPatterns

Returns the specified RegEx Pattern set in the Advanced Options.

InferredDataType

This function returns a column’s inferred data type. The inferred data type is used to determine if a prevalent data type is seen for the majority of values in this column. For a deviant value to be returned (i.e., a value that differs from the user-specified data type), the count of that detected data type must exceed all other detected data type counts by at least 20%.

Here is a list of all possible Inferred Data Types:

ProfilerDataType Enumerations

Value

Name

Description

1

DataTypeFullName

Full name

2

DataTypeInverseName

Inverse ordered name (Last – First)

3

DataTypeNamePrefix

Name prefix

4

DataTypeFirstName

First name

5

DataTypeMiddleName

Middle name

6

DataTypeLastName

Last name

7

DataTypeNameSuffix

Name Suffix

8

DataTypeTitle

Title / Department

9

DataTypeCompany

Company or Organization

10

DataTypeAddress

Street address

11

DataTypeCity

City Name

12

DataTypeStateOrProvince

US state or Canadian province

13

DataTypeZipOrPostalCode

US zip code or Canadian postal code

14

DataTypeCityStateZip

City/State/Zip combined

15

DataTypeCountry

Country Name

16

DataTypePhone

Phone number

17

DataTypeEmail

Email address

18

DataTypeString

Generic string value

19

DataTypeNumeric

Generic numeric value

20

DataTypeDateMDY

Generic Date/Time (formatted Month Day Year)

21

DataTypeDateYMD

Generic Date/Time (formatted Year Month Day)

22

DataTypeDateDMY

Generic Date/Time (formatted Day Month Year)

23

DataTypeBoolean

Generic Boolean Value

Sortation

Returns the column’s natural sortation. This is the sortation order seen in the values as they were input. In order for a column to be considered near-sorted, no more than 10% of the input values must be out of order.

This column returns one of the following enumerations.

Enum Value

Sortation Type

Description

0

SortUnknown

No sortation detected.

1

SortStringAscending

Values are sorted ascending, using a string comparison.

2

SortStringDescending

Values are sorted descending, using a string comparison.

3

SortNumericAscending

Values are sorted ascending, using a numeric comparison.

4

SortNumericDescending

Values are sorted descending, using a numeric comparison.

5

SortDateAscending

Values are sorted ascending, using date/time comparison.

6

SortDateDescending

Values are sorted descending, using date/time comparison.

SortationPercent

Percentage of how well a column is sorted. This is only reported for columns where GetColumnSortation returned a value other than SortUnknown. The sortation percentage is determined by counting the number of re-ordering values that would be required to put the list of values into a sorted state, and then dividing this value by the worst-case value (i.e., re-ordering required for a reverse-sorted list.)

MostPopularCount

Number of records that have the most popular count or most repeating values

DistinctCount

Number of uniquely different values.

UniqueCount

Number of records with no duplicates.

DefaultValuleCount

Number of records that contains the Default Value set in the Advanced Options

BelowRangeCount

Number of records that are below the lower bounds set in the Advanced Options

AboveRangeCount

Number of records that are above the lower bounds set in the Advanced Options

AboveSizeCount

Number of records that have values higher than the ColumnSize set in the Advanced Options

AbovePrecisionCount

Number of records that have values higher than the Precision set in the Advanced Options

AboveScaleCount

Number of records that have values higher than the Scale set in the Advanced Options

InvlidRegExCount

Number of records that did not pass the Regular Expression set in the Advanced Options

EmptyCount

Number of records with Empty Values

NullCount

Number of records with NULL Values

InvlidDataCount

Number of records that do not match the specified detected Column Type (not the Expected Data Type)

InvlidUTF8Count

Number of records that are not valid UTF-8

NonPrintingCharCount

Number of records with non-printable characters

DiacriticCharCount

Number of records with Diacritics

ForeignCharCount

Number of records with foreign language character sets

AlphaOnlyCount

Number of records that only have English alphabet letters

NumericOnlyCount

Number of records with numbers only

AlphaNumericCount

Number of records with English alphabet letters and numbers only

UpperCaseOnlyCount

Number of records that have all upper case letters

LowerCaseOnlyCount

Number of records that have all lower case letters

MixedCaseCount

Number of records that have mixed Upper and Lower casing

SingleSpaceCount

Number of records that have multiple words separated only by single spaces

MultiSpaceCount

Number of records that have multiple words separated by more than one space at least once.

LeadingSpaceCount

Number of records that have a leading space

TrailingSpaceCount

Number of records that have a trailing space

MaxSpaces

Maximum number of spaces between words

MinSpaces

Minimum number of spaces between words

TotalSpaces

Number of spaces between words only. Not including leading and trailing spaces.

TotalWordBreaks

Number of words breaks found

AvgSpaces

Average Number of spaces found between words

DecorationCharCount

Number of decorative characters (comma, pipe, tab, or double quote) at the end or beginning of the string.

ProfanityCount

Number of records with profanities

InconsistentDataCount

Number of records which doesn’t match the specified Expected Data Type

StringMaxValue

Returns the highest string value (as sorted A-Z). Not to be confused with String Max Length.

StringMinValue

Returns the lowest string value (as sorted A-Z). Not to be confused with String Min Length.

StringQ1Value

The first Quartile value for strings. Strings are first ordered from lowest to highest value, then the Quartile is selected.

StringMedValue

The second Quartile value for strings. Strings are first ordered from lowest to highest value, then the Quartile is selected.

StringQ3Value

The third Quartile value for strings. Strings are first ordered from lowest to highest value, then the Quartile is selected.

StringMaxLength

Length of the longest string.

StringMinLength

Length of the shortest string.

StringAvgLength

Average length for all strings

StringQ1Length

Length of the first quartile string value

StringMedLength

Length of the second quartile string value

StringQ3Length

Length of the third quartile string value

WordMaxValue

Returns the highest word value (as sorted A-Z). Not to be confused with word Max Length.

WordMinValue

Returns the lowest word value (as sorted A-Z). Not to be confused with word Max Length.

WordQ1Value

The first Quartile value for all words. All Words are first ordered from lowest to highest value, then the Quartile is selected.

WordMedValue

The second Quartile value for all words. All Words are first ordered from lowest to highest value, then the Quartile is selected.

WordQ3Value

The third Quartile value for all words. All Words are first ordered from lowest to highest value, then the Quartile is selected.

WordMaxLength

Length of the longest word

WordMinLength

Length of the shortest word

WordAvgLength

Average length for all words

WordQ1Length

Length of the first quartile word value

WordMedLength

Length of the second quartile word value

WordQ3Length

Length of the third quartile word value

MaxWords

Returns a columns maximum number of words

MinWords

Returns a columns minimum number of words

AvgWords

Returns a columns average number of words

NumericMaxValue

Returns the highest numeric value (as sorted numerically).

NumericMinValue

Returns the lowest numeric value (as sorted numerically).

NumericAvgValue

Average Value for all numbers in a column

NumericQ1Value

The first Quartile value for all numbers. All numbers are first ordered from lowest to highest value, then the Quartile is selected.

NumericQ1IntValue

The first Quartile integer (decimals removed) value for all numbers. All numbers are first ordered from lowest to highest value, then the Quartile is selected.

NumericMedValue

The second Quartile value for all numbers. All numbers are first ordered from lowest to highest value, then the Quartile is selected.

NumericMedIntValue

The secon Quartile integer (decimals removed) value for all numbers. All numbers are first ordered from lowest to highest value, then the Quartile is selected.

NumericQ3Value

The third Quartile integer value for all numbers. All numbers are first ordered from lowest to highest value, then the Quartile is selected.

NumericQ3IntValue

The third Quartile integer (decimals removed) value for all numbers. All numbers are first ordered from lowest to highest value, then the Quartile is selected.

NumericStdDevValue

Standard Deviation Value

DateMaxValue

Returns the latest date value (as sorted by dates).

DateMinValue

Returns the oldest date value (as sorted by dates).

DateAvgValue

Average Date Value

DateQ1Value

The first Quartile value for all dates. All numbers are first ordered from oldest to latest date, then the Quartile is selected.

DateMedValue

The second Quartile value for all dates. All numbers are first ordered from oldest to latest date, then the Quartile is selected.

DateQ3Value

The third Quartile value for all dates. All numbers are first ordered from oldest to latest date, then the Quartile is selected.

TimeMaxValue

Returns the latest time value (as sorted by time).

TimeMinValue

Returns the oldest time value (as sorted by time).

TimeAvgValue

Average Time Value

TimeQ1Value

The first Quartile value for all times. All numbers are first ordered from oldest to latest time, then the Quartile is selected.

TimeMedValue

The second Quartile value for all times. All numbers are first ordered from oldest to latest time, then the Quartile is selected.

TimeQ3Value

The third Quartile value for all times. All numbers are first ordered from oldest to latest time, then the Quartile is selected.

DateTimeNoCenturyCount

Number of records that contain no century indicator. (eg. 19-01-63 instead of 19-01-1963)

NameInconsistentOrderCount

Number of records that don’t correspond to the specified expected name order. (eg. “Smith, John” for a column set to a data type of DataTypeFullName)

NameMultipleNameCount

Number of records with multiple names (eg. John and Jane Smith)

NameSuspiciousCount

Number of records with suspicious names like “Mickey Mouse”

StateCount

Number of records with US States, both standardized and unstandardized

ProvinceCount

Number of records with Canadian Provinces, both standardized and unstandardized

StateProvinceNonStandardCount

Number of records that contain non-standardized US States of Canadian Provinces

StateProvinceInvalidCount

Number of records that contain invalid US States or Canadian Provinces

ZipCodeCount

Number of records containing US Zip Codes

Plus4Count

Number of records containing full Zip Plus4 Codes

ZipCodeInvalidCount

Number of records that contain invalid ZIP Codes

PostalCodeCount

Number of records containing Canadian Postal Codes

PostalCodeInvalidCount

Number of records that contain invalid Canadian Postal Codes

ZipCodePostalCodeInvalidCount

Number of records that contain invalid US Zips or Canadian Postal Codes

StateZipCodeMismatchCount

Number of records where the Zip Code does not match the US State.

ProvincePostalCodeMismatchCount

Number of records where the Postal Code does not match the Canadian Province

CountryNonStandardCount

Number of records that contain a country in a non-ISO Standard Countries

CountryInvalidCount

Number of records that contain non-recognized country names

EmailSyntaxCount

Number of records with invalid Email Syntax

EmailMobileDomainCount

Number of records with Emails with mobile domains

EmailMispelledDomainCount

Number of records with misspelled Email domains

EmailSpamtrapDomainCount

Number of records with spamtrap Email domains

EmailDisposableDomainCount

Number of records with disposable Email domains

PhoneInvalidCount

Number of records with non-US or non-Canadian Phone Numbers.

Date-Time Frequencies#

This output pin returns each distinct value for a column with Date/Time and the counts for each distinct value. Date/time values are gathered for all column types (for example, Strings), not just Date/Time data types.

Column Name

Description

ColumnName

Name of the Input Column

Value

All distinct values for Dates.

Count

Number of times a distinct Date appears in the profiled data for this particular column.

Length Frequencies#

This output pin allows you to step through each distinct value length for a specific column.

Column Name

Description

ColumnName

Name of the Input Column

Length

All distinct lengths for each value.

Count

Number of times a distinct length appears in the profiled data for this particular column.

Overall Record Counts#

This output pin returns counts based on all selected columns for profiling as a whole record.

Column Name

Description

RecordCount

Number of records processed

EmptyCount

Number of records with empty values for all columns. An empty value is not Null, can contain spaces, and has no string or value.

NullCount

Number of null records

ExactMatchDistinctCount

Number of exact matching records. Casing and punctuation will be ignored.

ExactMatchDupesCount

Number of exact matching duplicates. Casing and punctuation will be ignored.

ExactMatchLargestGroup

Returns the size of the largest group of duplicate records using an Exact Match matching criteria. All data fields provided will be compared. Casing and punctuation will be ignored.

ContactMatchDistinctCount

Returns the number of distinct records using Address, First Name and Last Name matching criteria.

The Contact Match matching rules used are:

Zip5 AND First Name AND Last Name AND Street Number AND Street Name (All have to match) OR Zip5 AND First Name AND Last Name AND PO Box (All have to match)

Note: The Profiler will parse data present in a single field such as an AddressLine or a FullName for matching purposes. (e.g., From an Address field containing “12 Main Street”, the Profiler will take the “12” as the Street Number and “Main” as the Street Name for its matching needs.)

ContactMatchDupesCount

Number of duplicate records using Contact Match described under ContactMatchDistinctCount

ContactMatchLargestGroup

Returns the size of the largest group of duplicates using Contact Match described under ContactMatchDistinctCount

HoueholdMatchDistinctCount

Returns the number of distinct records using Address, and Last Name matching criteria.

The Household Match matching rules used are:

Zip5 AND Last Name AND Street Number AND Street Name (All have to match) OR Zip5 AND Last Name AND PO Box (All have to match)

Note: The Profiler will parse data present in a single field such as an AddressLine or a FullName for matching purposes. (e.g, From an Address field containing “12 Main Street”, the Profiler will take the “12” as the Street Number and “Main” as the Street Name for its matching needs.)

HoueholdMatchDupesCount

Number of duplicate records using the Household Match matching strategy described under HouseholdMatchDistinctCount.

HoueholdMatchLargestGroup

Returns the size of the largest group of duplicate records using the Household Match matching strategy described under HouseholdMatchDistinctCount.

AddressMatchDistinctCount

Returns the number of distinct records using Address only matching criteria.

The Address Match matching rules used are:

Zip5 AND Street Number AND Street Name (All have to match) OR Zip5 AND PO Box (both have to match)

Note: The Profiler will parse data present in a single field such as an AddressLine or a FullName for matching purposes. (e.g., From an Address field containing “12 Main Street”, the Profiler will take the “12” as the Street Number and “Main” as the Street Name for its matching needs.)

AddressMatchDupesCount

Number of duplicate records using Address Match matching strategy decribed under HouseholdMatchDistinctCount.

AddressMatchLargestGroup

Returns the size of the largest group of duplicate records using Address Match matching strategy decribed under HouseholdMatchDistinctCount.

PassThru & Result Codes#

This output pin will include all of the original contents that have been selected as “Pass Through” in the Input Field Tab. This output pin will also include a Results Code Field for all columns that have been selected to output “Results” in the Input Field Tab:

../../_images/SSIS_PF_InputField.png

For more information on result codes, see Result Codes.

Pattern & RegEx Frequencies#

This output pin allows you to step through each distinct value pattern for a specific column.

Column Name

Description

ColumnName

Name of the Input Column

Value

The distinct Pattern Value representation for all records in a column

RegEx

The distinct Regular Expression representation for all records in a column. The regular expressions are ‘tuned’ for your specified data type. Where appropriate, letters or numbers may be lumped together using the ‘one or more’ quantifier.

Example

Returns an example value represented by the pattern. This will always be the first value encountered while profiling.

Count

Number of times the distinct patterns appears in the profiled data for this particular column.

Profile Session#

This output pin returns information about the processed job. This information can be stored and used to identify information such as what table was profiled, who did the profiling, what version of the profiler was used, the start and end time of the job, as well as the job name and description.

Column Name

Description

BuildNo

Current Build of the Profiler Component

ProfileStart

Start Time of the processed profiling job

ProfileEnd

End Time of the processed profiling job

TableName

Name of the Table being processed as specified in the Analysis Options Tab

UserName

Name of the User processing the job as specified in the Analysis Options Tab

JobName

Name of the Job as specified in the Analysis Options Tab

JobDesription

Description of the Job as specified in the Analysis Options Tab

Sound-Alike Frequencies#

This output pin allows you to step through each distinct SoundEx pattern for a specific column.

Column Name

Description

ColumnName

Name of the Input Column

Value

The distinct SoundEx pattern value representation for all records in a column

Example

Returns an example value represented by the SoundEx pattern. This will always be the first value encountered while profiling.

Count

Number of times the distinct SoundEx patterns appears in the profiled data for this particular column.

Value Frequencies#

This output pin allows you to step through each distinct value for a specific column.

Column Name

Description

ColumnName

Name of the Input Column

Value

Returns a column’s distinct value

Count

Number of times the distinct value appeared in the profiled data for this particular column.

Work Length Frequencies#

This output pin allows you to step through each distinct word length for a specific column.

Column Name

Description

ColumnName

Name of the Input Column

Length

Returns a column’s distinct word length

Count

Number of times the distinct word length appears in the profiled data for this particular column.

Word Value Frequencies#

This output pin allows you to step through each distinct word for a specific column.

Column Name

Description

ColumnName

Name of the Input Column

Value

Returns a column’s distinct word

Count

Number of times the distinct word appears in the profiled data for this particular column. Multiple occurrences of the same word in a single record will all be counted.

Result Codes (Profiler)#

Property#

Overview#

  • Returns information about a given parcel of property, including: assessed value; last sale price; current mortgage; physical dimensions of land; and square footage.

  • The level of detail may vary according to location.

Tutorial#

The following steps will guide you in the basic usage of Property for SSIS.

Advanced Configuration#

In the Property Component, navigate to File > Advanced Configuration.

../../_images/SSIS_PY_Advanced_Cloud.png
Melissa Cloud#

For Melissa Cloud processing, you need the License Key issued to you by your sales representative. The other settings on this part of the Advanced Configuration screen should not be changed unless you are specifically directed to do so by Melissa Technical Support.

After entering the License Key, click the Show Details button at the bottom of this screen to verify that the License Key was entered correctly.

Warning

The following items should only be altered if directed by Melissa’s support staff.

Use Proxy

If your network uses a Proxy Server, check this box and enter the Proxy information below.

Proxy URL

If your network uses a Proxy Server, enter the Proxy URL information on this field in order for the Property Component to communicate with the Melissa Cloud. The format is “URL:port”.

User Name

The user name for your Proxy Server, if any.

Password

The password for your Proxy Server, if any.

Maximum Threads

Specify the number of simultaneous requests to be sent to the Melissa Cloud Services to run in parallel.

Maximum Transaction Size

Specify the number of records to be sent to the Melissa Cloud per request.

Request Timeout

Specify the number of seconds for the Property Component to wait before timing out. Some requests may experience connection lag or timeouts due to network problems.

Number of Retries

Specify the number of times the Property Component should re-send a request to the Melissa Cloud due to any exceptions.

Abort on Critical Error

Will abort the process, in event of critical errors related to the Component such as the Web service code WSE00; Unexpected Error-Please Retry.

Test Configuration (Property Cloud)

Either the version number or build number will assist Melissa Technical Support in determining if you have the latest software installed on your system.

../../_images/SSIS_PY_Advanced_Cloud_Test.png

Property Component

Component Version

Displays the current SSIS component version.

Build Number

Displays the current development release build number of the Property Component for SSIS. This is usually a three or four-character string.

Property Web Service

Service Response

Displays the Web Service response status with the number of retries and seconds to connect.

Version

This box displays the version number of the Property Web Service.

Add Component#

To add Property Component to your project, drag the component onto the Data Flow screen. This will snap the Property Component into your workflow space.

../../_images/SSIS_PY_Tutorial_Component.png

Connect Input#

Select a data flow source to be your input data. Many formats can be used as Sources, including Excel files, flat files or Access Input data sources. Connect this data source to the Property Component by dragging the arrow from your data flow source to the Property Component.

../../_images/SSIS_PY_Tutorial_Source.png

Configure Component#

Double click the Property Component to bring up the interface. See Property Component Settings.

Connect Output#

Add data destinations for downstream output. Connect the respective output filter pin to the output destination.

../../_images/SSIS_PY_Tutorial_Output.png

Save Settings#

Click File and select Save Selected Items to save the project

../../_images/SSIS_Tutorial_Save.png

Run Project#

Now, the project is ready to run.

Settings#

Property Tabs#

  • Input
  • Pass-Through Columns
  • Output
  • Output Filter
../../_images/SSIS_PY_Input.png

Provide either an address key or FIPS and APN codes for the address.

Input Address Field

If you do not provide FIPS and APN fields, this field is required.

Address Key

This is an 11-character string value that uniquely identifies a specific address. This is used by many Melissa products.

Input FIPS/APN Fields

If you do not provide an Address Key, these fields are required.

FIPS

Federal Information Processing Standard (FIPS). A five-digit code defined by the U.S. Bureau of Census. The first two digits are the state code and the last three indicate the county within the state.

APN

Assessor’s Parcel Number (APN). A code that uniquely identifies a specific parcel of land within a county. APNs can be optained through your local county assessor’s office.

This shows a list of the columns in your input table. If you check the box next to a column name, the contents of that column will be passed to the output table without modification. Add a column to the Pass Through list to include the original contents in the output table.

../../_images/SSIS_PY_PassThrough.png

Field Name

Column names from the original input table

Current Usage

Column is currently being used as input

Content

../../_images/SSIS_PY_Output.png

Check the box next to the groups or columns you want to output. The following are definitions of the available groups and columns. For a list of codes returned by these columns, refer to Property Codes.

Parcel

These fields return information used to uniquely identify the parcel of land which the property occupies

FIPSCode

Federal Information Processing Standards codes used nationally to numerically identify a specific county or political jurisdiction.

FIPSSubCode

A secondary classification of a jurisdiction within a FIPS.

UnformattedAPN

Assessor’s Parcel Number in an unformatted form. This is most often used by the county and others as a unique key (e.g.,10132021A).

APNSequenceNo

This internal sequence number is used to ensure “uniqueness” of the Assessor’s Parcel Number (e.g., 10132021A seq 001).

FormattedAPN

Assessor’s Parcel Number in a formatted form. Dashes and decimals are commonly used to break an APN down into logical components (e.g., 101-32-021.A).

OriginalAPN

Assessor’s Parcel Number exactly as received by source (e.g., 10132-021A00000).

CensusTract

Comprised of Census Tract, Census Block and Census Block Suffix. These numbers are established by the US Department of Commerce (Bureau Of The Census).

Zoning

The data contained in this field is based upon County and/or Local established Zoning Codes and are not converted by FARES.

Range

The “range” portion of geographical coordinates based on local surveys. Ranges typically run east or west of predetermined “meridian” in sixmile intervals.

Township

The “township” portion of geographical coordinates based on local surveys. Townships typically run north or south of predetermined “meridian” in six-mile intervals.

Section

The “section” portion of geographical coordinates based on local surveys. Sections are 1 square mile and there are 36 sections within the intersection of a Range / Township.

QuarterSection

A section that has been divided into four “sub” sections (e.g., NE, NW, SE, SW).

HomesteadExempt

This field will be set with a “Y” if the owner has qualified for a Homeowner/Homestead exemption.

AbsenteeOwnerCode

This field will be set with an “A” if the owner is an absentee.

For a list of possible codes returned for this element, see Property Codes - Absentee Owner Code.

LandUseCode

A FARES established Land Use code converted from various county Land Use codes to aid in search and extract functions.

For a list of possible codes returned for this element, see Property Codes - Land Use Code.

CountyLandUse1

Primary (i.e., highest) Land Use as established by the county or local taxing administration.

CountyLandUse2

Secondary Land Use as established by the county or local taxing administration.

PropertyIndicatorCode

A FARES general code used to easily recognize specific property types (e.g, Residential, Condominium, Commercial).

For a list of possible codes returned for this element, see Property Codes - Property Indicator Code.

MunicipalityName

Name of the Municipality where parcel is located.

ViewCode

View from building (e.g., Gulf, Mountains, Pool).

For a list of possible codes returned for this element, see Property Codes - View Code.

LocationInfluenceCode

Positive or negative aspects associated with the location of the parcel (e.g., waterfront, flood plane, airport).

For a list of possible codes returned for this element, see Property Codes - Location Influence Code.

NumberOfBuildings

Total number of buildings on the parcel.

PropertyAddress

These fields contain the physical address of the property.

Address

The first line of the street address.e.g. 22382 Avenida Empresa

City

The city associated with the property address (CHICAGO, ATLANTA, DENVER).

State

The two-letter USPS postal abbreviation associated with the state/protectorants/commonwealth (CA, VI, PR).

Zip

The nine-digit code (i.e., ZIP & plus 4) assigned by the USPS. This is populated by various source files and other proprietary and nonproprietary processes (95463-0042).

AddressKey

A unique 11-digit address key for the submitted address (92688211282).

Latitude

Geographic coordinate that specifies the northsouth position of a point on the Earth’s surface (33.637550).

Longitude

Geographic coordinate that specifies the eastwest position of a point on the Earth’s surface (117.606840).

ParsedPropertyAddress

These fields contain the parsed address of the physical property.

Range

The delivery number of a parsed address.

PreDirectional

The geographic directional that precedes the street name(NW, E, etc).

StreetName

The name of the street from a parsed address (Empresa, etc).

Suffix

Suffix portion of a parsed address(Avenida).

PostDirectional

Geographic directional that follows the street name.

SuiteName

The name of the secondary unit of a parsed address (Apt, Suite, etc.).

SuiteRange

Range of any secondary unit of a parsed address.

Owner

These fields contain information on the current owner of the property.

CorporateOwner

The Name of the property owner has been recognized as a corporation or business.

Name

The name of the property owner.

Name2

Additional owner names if more than one person owns the property.

UnparsedName1

Non-parsed owner name.

UnparsedName2

Additional owner names if more than one person owns the property - non-parsed.

Phone

Phone number of property owner (e.g., 9095551212).

PhoneOptOut

A “Y” represents a record where the property owner has contacted the DMA (i.e., Direct Marketing Association) and has asked not to be contacted by phone for solicitation.

OwnerAddress

These fields contain the ownder’s mailing address.

Address

The first line of the street address.

Suite

The unit or suite number of the property address (e.g., 649 LAKE SHORE DR #1400).

City

The city associated with the property address (e.g., CHICAGO, ATLANTA, DENVER).

State

The two-letter USPS postal abbreviation associated with the state/protectorants/commonwealth (e.g., CA, VI, PR).

Zip

The nine-digit code (i.e., ZIP & plus 4) assigned by the USPS. This is populated by various source files and other proprietary and nonproprietary processes (e.g., 954630042).

CarrierRoute

This is the four-digit code used by the local mail carrier to identify the delivery path.

Matchcode

Indicates the level of matching for an owner’s mailing address (no matching streets, ranges, etc.)

For a list of possible codes returned for this element, see Property Codes - Matchcode.

MailOptOut

A “Y” represents a record where the property owner has contacted the DMA (i.e., Direct Marketing Association) and has asked not to be contacted by mail for solicitation.

Values

These fields contain data on the current value of the property.

CalculatedTotalValue

The “TOTAL” (i.e., Land + Improvement) Value closest to current market value used for assessment by county or local taxing authorities.

CalculatedLandValue

The “LAND” Value closest to current market value used for assessment by county or local taxing authorities.

CalculatedImprovementValue

The “IMPROVEMENT” Value closest to current market value used for assessment by county or local taxing authorities.

CalculatedTotalValueCode

The code appearing in this indicator field reflects the type of values (e.g., Market, Appraised) used to seed the TOTAL VALUE CALCULATED field.

For a list of possible codes returned for this element, see Property Codes - Total Value Calculated Indicator.

CalculatedLandValueCode

The code appearing in this indicator field reflects the type of values (e.g., Market, Appraised) used to seed the LAND VALUE CALCULATED field.

For a list of possible codes returned for this element, see Property Codes - Total Value Calculated Indicator.

CalculatedImprovementValueCode

The code appearing in this indicator field reflects the type of values (e.g., Market, Appraised) used to seed the IMPROVEMENT VALUE CALCULATED field.

For a list of possible codes returned for this element, see Property Codes - Total Value Calculated Indicator.

AssessedTotalValue

The Total Assessed Value of the Parcel’s Land & Improvement values as provided by the county or local taxing/assessment authority.

AssessedLandValue

The Assessed Land Values as provided by the county or local taxing/assessment authority.

AssessedImprovementValue

The Assessed Improvement Values as provided by the county or local taxing/assessment authority.

MarketTotalValue

The Total Market Value of the Parcel’s Land & Improvement values as provided by the county or local taxing/assessment authority.

MarketLandValue

The Market Land Values as provided by the county or local taxing/assessment authority.

MarketImprovementValue

The Market Improvement Values as provided by the county or local taxing/assessment authority.

AppraisedTotalValue

The Total Appraised Value of the Parcel’s Land & Improvement values as provided by the county or local taxing/assessment authority.

AppraisedLandValue

The Appraised Land Values as provided by the county or local taxing/assessment authority.

AppraisedImprovementValue

The Appraised Improvement Values as provided by the county or local taxing/assessment authority.

TaxAmount

The Total Tax amount provided by the county or local taxing/assessment authority.

TaxYear

The tax or assessment year for which the taxes were billed.

CurrentSale

These fields contain information from the most recent sale of the property.

TransactionId

This is a FARES internal number used to identify a specific transaction. This number may aid customers in the creation of unique keys.

DocumentYear

The year a sales transaction document was recorded (e.g., 1984).

DeedCategoryCode

The type of deed used to record the sales transaction (e.g., Grant, Quit, Foreclosure).

RecordingDate

The date the sales transaction was recorded at the county (e.g., 19621028).

SaleDate

The date the sales transaction was legally completed (i.e., contact signed) (e.g., 19621025).

SalePrice

Price of the sale as depicted on the recorded sales transaction.

SaleCode

This field indicates whether the financial consideration is F = Full or P = Partial.

For a list of possible codes returned for this element, see Property Codes - Sale Code.

SellerName

The seller’s name as it appears on the recorded sales transaction.

MultiAPNCode

The data contained in this field depicts multiple or split parcel sales.

MultiAPNCount

This reflects the number of parcels associated with the sale (e.g., 14 parcels recorded on the same document number).

ResidentalModel

A code to indicate whether the property is residential based on individual ZIP codes and values. “Y” = yes, “N” or blank = no.

CurrentDeed

These fields contain information about the current mortgage holder on the property.

MortgageAmount

The amount of the first mortgage as depicted on the recorded document.

MortgageDate

The date the Mortgage was initiated.

MortgageLoanTypeCode

Type of loan secured (e.g., Conventional, FHA, VA).

For a list of possible codes returned for this element, see Property Codes - Mortgage Loan Type Code.

MortgageDeedTypeCode

Type of deed used for recording (e.g., Agreement of Sale, Assumption, Correction Deed).

For a list of possible codes returned for this element, see Property Codes - Mortgage Deed Type Code.

MortgageTermCode

This code is used to identify whether the number stored in the MORTGAGE TERM field is in Days, Months or Years.

For a list of possible codes returned for this element, see Property Codes - Mortgage Term Code.

MortgageTerm

The length of time before the mortgage matures (e.g., 15yrs, 30 yrs, 45dys).

MortgageDueDate

The date the mortgage amount becomes due.

MortgageAssumptionAmount

The assumption amount related to an existing mortgage.

LenderCode

This is a FARES internal code used to identify the Lending Company that was associated with the sales transaction.

LenderName

This is the name of the lender on the original recorded document.

SecondMortgageAmount

This is the amount associated with the 2nd mortgage.

SecondMortgageLoanTypeCode

Type of loan secured as part of the 2nd mortgage (e.g., Conventional, FHA, VA).

SecondMortgageDeedTypeCode

Type of deed used for recording the 2nd mortgage (e.g., Agreement of Sale, Assumption, Correction Deed).

PriorSale

These fields contain information about a sale of the property prior to the most recent one.

TransactionId

This is a FARES internal number used to identify a specific transaction. This number may aid customers in the creation of unique keys.

DocumentYear

The year a sales transaction document was recorded (e.g., 1984).

DeedCategoryCode

The type of deed used to record the prior sales transaction (e.g., Grant, Quit, Foreclosure).

For a list of possible codes returned for this element, see Property Codes - Deed Category Code.

RecordingDate

The date the sales transaction was recorded at the county (e.g., 19621028).

SaleDate

The date the sales transaction was legally completed (i.e., contact signed) (e.g., 19621025).

SalePrice

Price of the sale as depicted on the recorded sales transaction.

SaleCode

This field indicates whether the financial consideration is F = Full or P = Partial.

TransactionCode

This identifies situations associated with the sale (e.g., Resale, Construction Loan, Seller Carryback).

MultiAPNCode

The data contained in this field depicts multiple or split parcel sales.

For a list of possible codes returned for this element, see Property Codes - Multi APN Code.

MultiAPNCount

This reflects the number of parcels associated with the sale (e.g., 14 parcels recorded on the same document number).

MortgageAmount

This is the amount associated with the mortgage of the prior sale.

DeedTypeCode

Type of deed used for recording ( e.g., Agreement of Sale, Assumption, Correction Deed).

Lot

These fields contain data on the physical dimensions of the entire property.

FrontFootage

The linear feet across the front of the lot - facing the street.

DepthFootage

The linear feet between the front and back of the lot.

Acreage

Total land mass in Acres.

SquareFootage

Total land mass in Square Feet.

SquareFootage

These fields contain physical information about the building or buildings on the property.

UniversalBuilding

The Building Square Footage that can most accurately be used for assessments or comparables (e.g., Living, Adjusted, Gross).

BuildingAreaCode

The codes appearing in this field indicate the source used to populate the UNIVERSAL BUILDING SQUARE FEET field (e.g., Living, Adjusted, Gross).

For a list of possible codes returned for this element, see Property Codes - Building Area Code.

BuildingArea

The size of the building in Square Feet. This field is most commonly populated as a cumulative total when a county does not differentiate between Living and Non-living areas.

LivingSpace

This is the area of a building that is used for general living. This is typically the area of a building that is heated or air conditioned and does not include Garage, Porch or Basement square footage.

GroundFloor

Square footage of the part of the building which is level with the ground (typically the front of the building). This is generally above the basement(s) and below the second floor.

Gross

This is the square footage for the entire building. Typically this represents all square feet under the roof.

AdjustedGross

This is the square footage used by the county or local taxing / assessment authority to determine Improvement Value. This figure is typically 100% of the living area, plus lower percentage of non-living area.

Basement

This is total square footage associated with Basement portion of a building. This would include both finished and unfinished areas.

GarageOrParking

This is the total square footage of the primary garage or parking area (i.e., commercial). This includes both finished and unfinished areas.

Building

These fields contain information about the features of the building or buildings on the property.

YearBuilt

This is the construction year of the original building.

EffectiveYearBuilt

This is the first year the building was assessed with its current components (e.g., a building is originally constructed in 1960 and a bedroom and bath was added to the building in 1974). The Year Built would be 1960 and the Effective Year Built would be 1974.

BedRooms

Total number of Bedrooms contained in the primary building.

TotalRooms

Total number of rooms contained in the primary building.

TotalBathsCalculated

Total number of Bathrooms in whole numbers (e.g., a home containing 2 1/2 baths would have the number 3 stored in this field as, three actual rooms have been designated for this purpose).

TotalBaths

Total number of Bathrooms as provided by our data sources (e.g., 4.00, 2.50, 1.75).

FullBaths

Total number of Full Baths (typically comprised of a sink, toilet, and bathtub / shower stall). A home containing 2 1/2 baths would have the number 2 stored in this field.

HalfBaths

Total number of Half Baths (typically comprised of a sink & toilet). A home containing 2 1/2 baths would have the number 1 stored in this field.

OneQuarterBaths

Total number of Quarter Baths (typically comprised only of a sink, as found in many laundry rooms).

ThreeQuarterBaths

Total number of Three-Quarter Baths (typically comprised of a sink, toilet & shower stall).

BathFixtures

The total number of bathroom fixtures (typically a Full Bath would have 4 fixtures - 1 = sink, 1 = toilet, 1 = bathtub, 1 = shower head).

AirConditioningCode

The type of air conditioning method used to cool the building (e.g., Central, Wall Unit, Evaporative).

For a list of possible codes returned for this element, see Property Codes - Air Conditioning Code.

BasementCode

The type of basement finish found in the building (e.g., Finished, Half, Crawl).

For a list of possible codes returned for this element, see Property Codes - Basement Code.

BuildingCode

The primary building type (e.g., Bowling Alley, Supermarket).

For a list of possible codes returned for this element, see Property Codes - Building Code.

ImprovementCode

The primary improvement type (e.g., Grain Silo, Hanger, Marina).

For a list of possible codes returned for this element, see Property Codes - Improvement Code.

ConditionCode

This represents the physical condition of the main improvement (e.g., Good, Fair, Under Construction).

For a list of possible codes returned for this element, see Property Codes - Condition Code.

ConstructionCode

The primary method of construction (e.g., Steel/Glass, Concrete Block, Log).

For a list of possible codes returned for this element, see Property Codes - Construction Code.

ExteriorWallCode

The type and/or finish of the exterior walls (e.g., Vinyl Siding, Brick Veneer, Frame / Stone).

For a list of possible codes returned for this element, see Property Codes - Exterior Wall Code .

Fireplace

This field is populated with a “Y” if a fireplace is located within the building.

Fireplaces

This represents the number of fireplace openings located within the building

FireplaceCode

The type of fireplace (e.g., 2 Story / 3 Openings, 2 Story Brick).

For a list of possible codes returned for this element, see Property Codes - Fireplace Code .

FoundationCode

The type of foundation (e.g., Continuous Footing, Pier, Mud Sill).

For a list of possible codes returned for this element, see Property Codes - Foundation Code .

FlooringCode

The type of floor construction (e.g., Concrete, Plywood).

For a list of possible codes returned for this element, see Property Codes - Flooring Code .

RoofFramingCode

The type of roof framing used (e.g., Bar Joist, Reinforced Concrete, Flexicore).

For a list of possible codes returned for this element, see Property Codes - Roof Framing Code .

GarageCode

Type of garage or carport present (e.g., Attached Finished, Enclosed Carport, Basement Garage).

For a list of possible codes returned for this element, see Property Codes - Garage Code .

HeatingCode

Type or method of heating (e.g., Hot Water, Heat Pump, Baseboard, Radiant).

For a list of possible codes returned for this element, see Property Codes - Heating Code .

MobileHome

This element is populated with a “Y” if a Mobile Home is present on the parcel.

ParkingSpaces

This represent the total number of Parking Spaces or Car Capacity associated with the Garage or Parking type.

ParkingCode

Type of parking found on the parcel. This is typically commercial or communal (e.g., Condos) in nature.

For a list of possible codes returned for this element, see Property Codes - Parking Code .

Pool

This element is populated with a “Y” if a Pool is present on the parcel.

PoolCode

Type of pool, construction or pool amenities (e.g., Kidney, Gunite, Vinyl, Jacuzzi, Heated).

For a list of possible codes returned for this element, see Property Codes - Pool Code .

QualityCode

Type of construction quality of building (e.g., excellent, economical).

For a list of possible codes returned for this element, see Property Codes - Quality Code .

RoofCoverCode

Type of roof covering (e.g., Clay Tile, Aluminum, Shake).

For a list of possible codes returned for this element, see Property Codes - Roof Cover Code .

RoofTypeCode

Type of roof shape (e.g., Gambrel, Gable, Flat, Mansard).

For a list of possible codes returned for this element, see Property Codes - Roof Type Code .

StoriesCode

Type / number of stories (e.g., Split Foyer, Tri Level, 2 Story).

For a list of possible codes returned for this element, see Property Codes - Stories Code .

Stories

Number of stories associated with the building (e.g., 2, 1.5).

BuildingStyleCode

Type of building style (e.g., Colonial, Cape Code, Bungalow).

For a list of possible codes returned for this element, see Property Codes - Building Style Code .

Units

Number of Residential, Apartment or Business Units.

ElectricityCode

Type of electricity or energy use within the building (e.g., Average Wiring, Underground Wired, Private Source).

For a list of possible codes returned for this element, see Property Codes - Electricity Code .

FuelCode

Type of fuel used for heating of water and building (e.g., Solar, Gas, Oil).

For a list of possible codes returned for this element, see Property Codes - Fuel Code .

SewerCode

Type of sewer system on the parcel (e.g., Public, Septic, Commercial).

For a list of possible codes returned for this element, see Property Codes - Sewer Code .

WaterCode

Type of water service on the parcel (e.g., Public, Well, Cistern).

For a list of possible codes returned for this element, see Property Codes - Water Code .

Associated Parcels

Returns parcel information that matched the users input. Associated Parcels will provide a list of parcels by their APN, FIPs and MAK key, specifically for the YS05 (multiple matches) result code.

For example, if a record is sent using an addresskey and if Melissa’s property data had multiple records for the same address key, Associated Parcels will provide the list of matching parcels. Note: A new destination component is needed, select Associated Parcels Output from the Input Output Selection menu when prompted.

../../_images/SSIS_PY_OutputFilter.png

The Property Component will output records in up to four streams. The Output Filter tab allows you to control which records go to which stream. Names and usage can be done in any manner. Filters are evaluated from the top down.

Result Codes

The output status of a record is returned via result codes returned by the underlying objects. The Component will combine them into a single, comma-delimited string and write them to the field mapped here. New field names can be created by typing the name into the Output Results Code box.

Output Filter

Select a filter to determine which records will be directed to a particular output stream. A custom filter may be created based on individual need, each pin filters the records in a cascading effect, where the results code is compared against the first expression (Pin 1) and then compared against Pin 2, and so on.

No Filter

All records are written to a single output stream.

Pre-built Filter

The Component comes with several pre-built filters for common applications:

  1. Obtained Property Information

Custom Filter

Records matching the filter will be directed to the designated file.

For more information, see Custom Output Filters below.

Attention

Custom rules are an advanced subject. You should be comfortable with Boolean operations before using custom rules in a production environment

Custom Output Filter

SSIS components will output records in up to four streams. Names and usage can be done in any manner. Filters are evaluated from the top down. A custom filter may be created based on individual need, each pin filters the records in a cascading effect, where the results code is compared against the first expression (Pin 1) and then compared against Pin 2, and so on.

Customer Filter

Select Customer Filter from the drop down and click the ... button next to the Customer Filter Expression text box to open an Output Filter Expression dialog box. These rules use Boolean operators (“OR,” “AND,” and “NOT”) and the result codes to construct filters. Records matching the filter will be directed to the valid table while the rest are directed to the invalid table.

../../_images/SSIS_IP_OutputFilter_ExpressionDialog.png

A custom rule example could be: “(AS01 OR AS02)”. This means that the conditions for the rules are met if either result code “AS01” or “AS02” were returned.

Validate Custom Rules

../../_images/SSIS_IP_OutputFilter_Validated.png

A custom expression may be tested by clicking on the Test Expression button. A pop-up dialog box will confirm whether or not the custom expression is acceptable.

Save as Custom Filter

../../_images/SSIS_IP_OutputFilter_SaveCustom.png ../../_images/SSIS_IP_OutputFilter_SaveRules.png

Right-click the Custom Expression, then left-click Save as Custom Filter from the pop-up. Enter a name for the filter in the window and click OK. It will now be available as a Pre-Built Filter for subsequent components.

Remove Selected Rule

To remove a Pre-Built Filter, select the filter from the Pre-Built drop-down list, right-click the filter, and select Delete Filter. Click Yes. After saving this component, it will no longer be available in new component configurations.

../../_images/SSIS_IP_OutputFilter_RemoveRule.png

Property Codes#

The following codes are used by Melissa’s Property V3 Web Service and SSIS Property Component.

Parcel#
Absentee Owner Code#

Returned by the AbsenteeOwnerCode element.

Code

Description

A

ABSENTEE(MAIL AND SITUS NOT =)

M

SITUS ADDRESS TAKEN FROM MAIL

O

OWNER OCCUPIED

S

SITUS FROM SALE (OCCUPIED)

T

SITUS FROM SALE (ABSENTEE)

Y

ABSENTEE

Land Use Code#

Returned by the LandUseCode element.

Code

Description

100

RESIDENTIAL (NEC)

102

TOWNHOUSE/ROWHOUSE

103

APARTMENT/HOTEL

106

APARTMENT

109

CABIN

111

COOPERATIVE

112

CONDOMINIUM

113

CONDOMINIUM PROJECT

114

COMMON AREA

115

DUPLEX

116

MID-RISE CONDOMINIUM

117

HIGH-RISE CONDO

118

FRATERNIT/SORORITY HOUSE

119

RESIDENCE HALL/DORMITORIES

127

HOTEL

130

RESORT HOTEL

131

MULTI FAMILY 10 UNITS PLUS

132

MULTI FAMILY 10 UNITS LESS

133

MULTI FAMILY DWELLING

134

MIXED COMPLEX

135

MOBILE HOME LOT

136

MOBILE HOME PARK

137

MOBILE HOME PP

138

MOBILE HOME CO OP

142

MOTEL

148

PUD

151

QUADRUPLEX

155

GROUP QUARTERS

156

ORPHANAGE

157

NURSING HOME

160

RURAL HOMESITE

163

SFR

164

TRANSIENT LODGING

165

TRIPLEX

167

TIME SHARE

199

TIME SHARE CONDO

200

COMMERCIAL (NEC)

201

AIR RIGHTS

202

MULTIPLE USES

203

AUTO EQUIPMENT

204

AUTO REPAIR

205

AUTO SALES

207

SALVAGE IMPRV

208

AUTO WRECKING

209

BUSINESS PARK

210

CARWASH

211

COMMERCIAL BUILDING

212

CEMETERY

213

COMMERCIAL CONDOMINIUM

214

CONVALESCENT HOSPITAL

215

CONVENTION CENTER

217

DEPARTMENT STORE

218

FACILITIES

220

STORE FRANCHISE

221

FAST FOOD FRANCHISE

222

FIN/INSURANCE/REAL ESTATE

223

FINANCIAL BUILDING

225

FUNERAL HOME

226

GARAGE

229

GREENHOUSE

230

HOSPITAL

234

KENNEL

235

ANIMAL HOSPITAL/VET

236

LOFT BUILDING

237

MEDICAL BUILDING

238

MEDICAL CONDO

239

LABORATORY

240

LAUNDROMAT

242

NIGHTCLUB

243

BAR

244

OFFICE BUILDING

245

OFFICE & RESIDENTIAL

246

OFFICE & SHOWROOM

247

OFFICE CONDO

248

CONVERTED RESIDENCE

249

MISC IMPROVEMENTS

250

PRE FABRICATED BLDG

251

MISC BUILDING

252

PARKING LOT

255

PARKING STRUCTURE

257

PRODUCE MARKET

258

PUBLIC STORAGE

261

RESTAURANT BUILDING

262

RESTAURANT DRIVE IN

266

SERVICE STATION

268

SERVICE STATION/MARKET

269

MISC COMMERCIAL SERVICES

270

SHOPPING CENTER

273

STRIP COMMERCIAL CENTER

276

APPAREL

278

STORE BUILDING

279

STORES & OFFICES

281

STORES & RESIDENTIAL

282

RETAIL TRADE

283

SUPERMARKET

284

FOOD STORES

285

TAVERN

286

WHOLESALE

290

LEASED LAND/BLDG

299

LEASED LAND/BLDG II

300

INDUSTRIAL (NEC)

301

COMMERCIAL/INDUSTRIAL

302

BREWERY

303

BULK PLANT

304

CANNERY

308

CHEMICAL

309

TEXTILE/CLOTHES/CARPET INDUSTRY

310

PAPER & ALLIED INDUSTRY

311

DUMP SITE

312

DURABLE GOODS

313

NON DURABLE GOODS

316

FOOD PROCESSING

318

GRAIN ELEVATOR

320

HEAVY INDUSTRIAL

321

INDUSTRIAL CONDOMINIUM

322

INDUSTRIAL PARK

323

INDUSTRIAL PLANT

324

LIGHT INDUSTRIAL

326

LUMBER YARD

328

LUMBER MILL

331

METAL PRODUCT

333

MINERAL RIGHTS

334

MINERAL PROCESSING

336

MINI WAREHOUSE

338

MULTI TENANT INDUSTRIAL

342

PACKING

344

PETROLEUM

349

MINE/QUARRY

352

R&D FACILITY

353

TECHNOLOGICAL INDUSTRY

354

SHIPYARD

356

STOCKYARD

358

STORAGE

361

STORAGE TANKS

364

WAREHOUSE

366

WINERY

399

WINERY II

400

VACANT LAND (NEC)

401

MARSHLAND

402

FLOOD PLAIN

410

BARREN LAND

415

COMMERCIAL ACREAGE

420

COMMERCIAL LOT

421

COMMON LAND

425

DESERT

430

AGRICULTURAL LAND

435

INDUSTRIAL ACREAGE

440

INDUSTRIAL LOT

445

MOUNTAINOUS LAND

446

NATURAL RESOURCES

450

MULTI FAMILY ACREAGE

452

MULTI FAMILY LOT

453

OPEN SPACE

454

VACANT, MOBILE HOME

455

RECREATIONAL ACREAGE

460

RESIDENTIAL ACREAGE

465

RESIDENTIAL LOT

480

WASTE LAND

481

VACANT LMTD/NO DEV POTENTIAL

490

WILDLIFE REFUGE

499

WILDLIFE REFUGE II

500

AGRICULTURAL (NEC)

501

LIVESTOCK

502

NURSERY/HORTICULTURE

505

AGRICULTURAL PLANT

509

RANCH

510

ANIMAL FARM

511

FARMS

512

AVOCADO GROVE

514

CITRUS GROVE

515

DAIRY FARM

520

FALLOW LAND

530

FIELD & SEED

533

FISHERIES

540

FOREST

542

GREENBELT

550

ORCHARD

560

PASTURE

562

POULTRY RANCH

570

TRUCK CROPS

575

VINEYARD

599

VINEYARD II

600

PUBLIC (NEC)

601

TAX EXEMPT

602

STATE PROPERTY

603

COUNTY PROPERTY

604

MUNICIPAL PROPERTY

605

POLICE/FIRE/CIVIL DEFENSE

606

US POSTAL SERVICE

607

EMBASSIES/CHANCERIES

609

CORRECTIONAL FACILITY

610

COMMUNITY CENTER

611

HISTORICAL DISTRICT

614

FEDERAL PROPERTY

615

FEDERAL BUILDING

618

INDIAN RESERVATION

620

ART

630

MILITARY BUILDING

640

POSSESSORY INTEREST

650

SCHOOL

652

NURSERY SCHOOL

654

HIGH SCHOOL

655

PRIVATE SCHOOL

656

VOCATIONAL/TRADE SCHOOL

660

EDUCATIONAL SERVICE

664

SECONDARY EDUCATIONAL SCHOOL

665

PUBLIC SCHOOL

670

PUBLIC SERVICE

671

CHARITABLE ORGANIZATION

675

RELIGIOUS

680

UNIVERSITY

690

NATURE FACILITY

699

ZOO

700

RECREATIONAL (NEC)

701

CASINO

703

AMPHITHEATRE

706

AMUSEMENT ARCADE

709

AMUSEMENT PARK

712

AUDITORIUM

721

BOWLING ALLEY

724

BILLIARD HALL

725

CLUB

727

COUNTRY CLUB

728

HEALTH CLUB

733

DANCE HALL

742

GOLF COURSE

745

GOLF RANGE

750

GYMNASIUM

754

LAKE/RIVER/BEACH

755

MARINA FACILITY/RECREATIONAL

757

PARK

766

RACE TRACK

769

RACQUET/TENNIS COURT

770

TENNIS CLUB

775

RV PARK

780

SKATING RINK

784

STADIUM

787

STABLE

790

SWIMMING POOL

795

DRIVE IN THEATER

796

THEATER

797

TOURIST ATTRACTION/EXHIBITS

798

LIBRARY/MUSEUM

800

TRANSPORT (NEC)

801

COMMUNICATION FACILITY

806

AIRCRAFT FACILITY

808

AIRPORT

818

ELECTRICAL FACILITY

830

GAS PRODUCTION

839

MARINE FACILITY/COMMERCIAL

850

PORT/HARBOR

860

RAILROAD FACILITY

863

RECORDING STUDIO

864

RADIO FACILITY

867

EASEMENT

872

TELEPHONE FACILITY/COMMUNICATION

875

TV FACILITY

877

TRANSPORT FACILITY

879

TRUCK TERMINAL

880

UTILITIES

883

WASTE DISPOSAL

885

WELL/WATER

886

WELL/GAS-OIL

887

PIPELINE

899

WELL/GAS/OIL II

999

TYPE UNKNOWN

Location Influence Code#

Property Location Information. Returned by the LocationInfluenceCode element.

Code

Description

000

NONE

001

TYPE UNKNOWN

I01

TYPE UNKNOWN

IAC

ALLEY/CORNER

IAG

AGRICULTURAL

IAI

AIRPORT

IAV

AVERAGE

IBA

BAY ACCESS

IBB

BEHIND BAY FRONT

IBF

BAY FRONT

IBG

BEHIND GULF FRONT

IBI

BAY FRONT ISLAND

IBL

BACK LOT

IBM

BAY FRONT MAIN-LAND

IBR

BEACH ROAD

IBU

BAYOU

IBY

BAY

ICA

CANAL

ICC

CREEK

ICD

CANAL DRAINAGE

ICF

CANAL FRONT

ICI

CANAL FRONT ISLAND

ICL

CORNER/LANDLOCK

ICM

CANAL MAIN-LAND

ICN

CORNER/WOODLOT/WATERFRONT

ICO

CORNER/WOODLOT

ICR

CORNER

ICT

CORNER/WATERFRONT

ICU

CUL-DE-SAC

ICW

CORNER/LANDLOCK/WOODLOT

ICY

CITY

IDE

DRAINAGE EASEMENT

IDO

DOWNTOWN

IDU

DUPLEX LOTS

IEF

EXTRA FRONT

IEL

EXPENSIVE LAND

IFL

FOUR PLEX LOT

IFP

FLOOD PLAIN

IGC

GOLF COURSE

IGG

GREENBELT/GOLF COURSE

IGO

GOOD

IGR

GREENBELT

IGU

GULF

IHI

HIGHWAY

IIC

INSIDE CITY

IIF

ISLAND GULF FRONT

IIN

INDUSTRIAL

IIO

IN-OUT CITY

IIW

ISLAND NO WATERFRONT

ILA

LAGOON

ILD

LANDLOCKED/WOODLOT/WATERFRONT

ILF

LAKE FRONT

ILK

LAKE

ILL

LANDLOCKED

ILP

LAKE/POND

ILT

LANDLOCKED/WOODLOT

ILW

LANDLOCKED/WATERFRONT

IMH

MOBILE HOME

IML

MAIN LAND

IMO

MOUNTAIN

INB

NON BUILDABLE

INC

INTRACOASTAL

INE

NEIGHBORHOOD

INR

INFERIOR

INT

INTERIOR

IOC

OCEAN

IOT

OUTSIDE CITY

IPA

PARK LAND

IPF

PARK FRONT

IPO

POOL

IPR

PRESERVE

IRA

RAVINE

IRC

RECREATIONAL

IRE

REAR

IRI

RIVER

IRL

IRREGULAR LOT

IRO

ROAD

IRS

RESTRICTIONS

IRU

RURAL

ISL

SUBMERGED LAND

IST

STREET

ISU

SUBURBAN

ITH

TOWNHOUSE

ITL

TRI PLEX LOT

IUR

URBAN

IVA

VALLEY

IWE

WETLAND

IWF

WATER FRONT

IWL

WOODLAND

IWW

WOODLOT/WATERFRONT

IZL

ZERO LOT LINE

Property Indicator Code#

FARES General Code for Property Types. Returned by the PropertyIndicatorCode element.

Code

Description

10

Single Family Residence / Townhouse

11

Condominium (residential)

20

Commercial

21

Duplex, Triplex, Quadplex

22

Apartment

23

Hotel, Motel

24

Commercial (condominium)

25

Retail

26

Service (general public)

27

Office Building

28

Warehouse

29

Financial Institution

30

Hospital (medical complex, clinic)

31

Parking

32

Amusement-Recreation

50

Industrial

51

Industrial Light

52

Industrial Heavy

53

Transport

54

Utilities

70

Agricultural

80

Vacant

90

Exempt

00

Miscellaneous

000

Not Available / None

View Code#

Building View. Returned by the ViewCode element.

Code

Description

000

NONE

001

TYPE UNKNOWN

V01

TYPE UNKNOWN

VAI

AIRPORT

VAV

AVERAGE

VBA

BAY

VBE

BEST

VBR

BETTER

VCA

CANAL

VCI

CITY

VCL

CREEK/LAKE

VCN

CANYON

VCV

CANYON/VALLEY

VEX

EXCELLENT

VFA

FAIR

VGC

GOLF COURSE

VGO

GOOD

VGP

GREENBELT/PARK

VGU

GULF

VHM

HILLS/MOUNTAINS

VHV

HILL/VALLEY

VIN

INFERIOR

VIW

INTERCOASTAL WATERWAY

VLA

LAKE

VLG

LAGOON

VLP

LAKE/POND

VMN

MOUNTAIN

VMO

MOUNTAIN/OCEAN

VOB

OBSTRUCTED

VOC

OCEAN

VPA

PARK

VPD

POND

VPG

PARKING

VPI

PRIME

VPL

POOL

VPM

PREMIUM

VPR

POOR

VRC

RECREATIONAL

VRD

ROAD

VRR

RIVER

VSD

STANDARD

VSN

SUBURBAN

VSR

SUPERIOR

VST

STREET

VTY

TYPICAL

VWD

WOODLAND

VWR

WATER

Owner Address#
Matchcode#

Indicates Level of Matching. Returned by the Matchcode element.

Code

Description

E001

LOW LEVEL ERROR

E002

COULD NOT FIND GSD FILE FOR THAT STATE

E003

INCORRECT GSD FILE SIGNATURE, OR VERSION ID

E004

GSD FILE OUT OF DATE (CAN ONLY OCCUR WHEN CASS MODE IS ON)

E010

NO CITY+STATE OR ZIP CODE WAS FOUND

E011

INPUT ZIP WAS NOT IN THE DIRECTORY

E012

INPUT CITY WAS NOT IN THE DIRECTORY

E013

INPUT CITY WAS NOT UNIQUE IN THE DIRECTORY

E014

OUT OF LICENSED AREA

E020

NO MATCHING STREETS FOUND IN DIRECTORY

E021

NO MATCHING CROSS STREETS FOR AN INTERSECTION MATCH

E022

NO MATCHING RANGES

E023

MATCH IS UNRESOLVED

E024

NO MATCHING RANGES (SAME AS S022)

E025

TOO MANY POSSIBLE CROSS STREETS FOR INTERSECTION MATCH

E999

SITUS ADDRESS WAS OUT OF COUNTY AND ALL FIELDS WERE RESET

Values#
Total Value Calculated Indicator#

Value Types. Returned by the CalculatedTotalValueCode, CalculatedLandValueCode, and CalculatedImprovementValueCode elements.

Code

Description

A

ASSESSED

M

MARKET

P

APPRAISED

T

TRANSITIONAL

Current Sale#
Deed Category Code#

Prior Sales Transaction Deed Type. Returned by the DeedCategoryCode element.

Code

Description

CD

CORRECTION DEED

D

RELEASE

F

FINAL JUDGEMENT

G

GRANT DEED

L

LIS PENDENS

N

NOTICE OF DEFAULT

Q

QUIT CLAIM

R

RELEASE

S

LOAN ASSIGNMENT

T

DEED OF TRUST

U

FORECLOSURE

X

MULTI CNTY/ST OR OPEN-END MORTGAGE

Z

NORMAL TYPE DOC

Sale Code#

Indicates Financial Consideration. Returned by the SaleCode element.

Code

Description

C

CONFIRMED

E

ESTIMATED

F

SALE PRICE (FULL)

L

SALE PRICE (PARTIAL)

N

NOT OF PUBLIC RECORD

P

SALE PRICE (PARTIAL)

R

LEASE

U

UNKNOWN

V

VERIFIED

Current Deed#
Mortgage Deed Type Code#

Deed Type Used for Recording. Returned by the MortgageDeedTypeCode element.

Code

Description

AA

ASSIGNMENT AND AGREEMENT OF SALE

AD

ADMINISTRATOR’S DEED

AF

AFFIDAVIT

AG

AGREEMENT OF SALE

AI

ALL INCLUSIVE DEED OF TRUST

AJ

ADMINISTRATOR JOINT TENANCY

AL

ASSGNMT/ASSMPTN OF LEASE/SUBLS

AN

ASSIGNMENT DEED

AP

ASSUMPTION

AS

ASSIGNMENT OF DEED OF TRUST

AU

AUCTION

BA

BARGAIN & SALE DEED

CA

COUNTY DEED

CD

CORRECTION DEED

CL

CONSTRUCTION DEED OF TRUST

CM

COMMISSIONER’S DEDED

CN

CONDOMINIUM DEED

CQ

CORPORATION QUIT CLAIM DEED

CR

CORPORATE DEED

CS

CONTRACT OF SALE

CT

COMMITTEE DEED

CV

CONVEYANCE DEED

DA

DEED OF ASSUMPTION

DD

DEED

DI

DEED OF DISTRIBUTION

DL

DEED IN LIEW OF FORCLOSURE

DP

DOWN PAYMENT ASSISTANCE LOAN (SC)

DR

DEED OR RELEASE

EJ

EXECUTOR JOINT TENANT

EQ

EQUITY OR CREDIT LINE

EX

EXECUTORS DEED

FD

FORECLOSURE DEED

FI

FIDUCIARY DEED

FJ

FINAL JUDGMENT

FR

FORFEITURE DEED

FS

FEE SIMPLE DEED

GD

GRANT DEED

GF

GIFT DEED

GJ

FUARDIAN JOIN TENANT

GU

GUARDIAN DEED

IC

INTERCOMPANY DEED TRANSFER

ID

INTERCOMPANY/INTERFAMILY DEED

IF

INTERFAMILY DEED TRANSFER

IM

INDEMNITY DEED OF TRUST

IN

INSTITUTIONAL DEED

IS

INTERSPOUSAL DEED TRANSFER

IV

INDIVIDUAL GRANT DEED

JT

JOINT TENANCY DEED

LA

LEASE AGREEMENT

LH

LEASEHOLD DEED

LM

LIMITED WARRANTY DEED

LP

LIS PENDENS

MA

MARSHALLS DEED

MD

MASTERS DEED (SC)

MF

MORTGAGE FORECLOSURE DEED

MG

MORTGAGE DEED

ND

NOTICE OF DEFAULT

NT

NOTICE OF TRUSTEES SALE

OT

MISCELLANEOUS DOCUMENT

PA

PUBLIC AUCTION DEED

PB

PROBATE COURT DEED

PD

PARTNERSHIP GRANT DEED

PJ

PERSONAL REP JOINT TENANT

PN

PATENT (LAND)

PO

PAY OFF DEED

PR

PERSONAL REP’S DEED

PT

PUBLIC TRUSTEES DEED

PV

PRIVATE SALE

QC

QUIT CLAIM DEED

QJ

JOINT TENANT QUIT CLAIM DEED

RC

RECEIVER’S DEED

RD

RERECORDED DEED

RF

REFEREES DEED

RV

REVOLVING LINE OF CREDIT

SA

STATE DEED

SC

CERTIFICATE OF SALE - SHERIFF / MARSHALL

SD

SHERIFF’S DEED

SE

SECURITY DEED

SJ

SPECIAL WARRANTY DEED JOINT TENANT

SL

SUB LEASE

SO

SELLING OFFICER’S DEED (IL)

SR

STRAW DEED

ST

SETTLEMENT DEED

SU

JOINT SURVIVORSHIP / RIGHT OF

SW

SPECIAL WARRANTY DEED

TA

TRUST AGREEMENT

TC

CERTIFICATE OF TITLE (FL)

TD

TRUSTEE’S DEED (FORCLOSURE)

TJ

TRUSTEES JOINT TENANT

TR

DEED OF TRUST

TT

TORRENS DOCUMENT

TU

TRUSTEE’S DEED (TRANSFER)

TX

TAX DEED

UD

UNIT DEED

WD

WARRANTY DEED

WJ

WARRANTY DEED JOINT TENANT

XD

EXCHANGE DEED

XP

EXEMPTION DEED

Mortgage Loan Type Code#

Type of Loan Secured. Returned by the MortgageLoanTypeCode element.

Code

Description

CDA

COMMUNITY DEVELOPMENT AUTHORITY

CNV

CONVENTIONAL

FHA

FEDERAL HOUSING AUTHORITY

LHM

LEASE HOLD MORTGAGE

PP

PRIVATE PARTY LENDER

SBA

SMALL BUSINESS ADMINISTRATION

VA

VETERIANS ADMINISTRATION

WRP

WRAP-AROUND MORTGAGE

Mortgage Term Code#

Identifies number stored in Mortgage Term field. Returned by the MortgageTermCode element.

Code

Description

D

DAYS

M

MONTHS

Y

YEARS

Prior Sale#
Multi APN Code#

Depicts Multiple or Split Parcel Sales. Returned by the MultiAPNCode element.

Code

Description

D

MULTI / DETAIL PARCEL SALE

M

MULTIPLE PARCEL SALE

S

SPLIT PARCEL SALE

X

MULTI / SPLIT PARCEL SALE

Square Footage#
Building Area Code#

Indicates Source Used for Universal Building Square Feet. Returned by the BuildingAreaCode element.

Code

Description

A

ADJUSTED

B

BUILDING

G

GROSS

L

LIVING

M

MAIN OR BASE AREA

R

GROUND FLOOR LEVEL

Building#
Air Conditioning Code#

Air Conditioning Method. Returned by the AirConditioningCode element.

Code

Description

000

NONE

001

TYPE UNKNOWN

ACA

AC.COMMERCIAL A/C

ACE

AC.CENTRAL

ACH

AC.CHILLED WATER

ACP

AC.CENTRAL PARTIAL

ACW

AC.CENTRAL & UNIT

ADU

AC.DUAL UNIT

AEV

AC.EVAPORATIVE

AFA

AC.FAN COOLING

AHT

AC.HEAT PUMP

AOF

AC.OFFICE ONLY

APF

AC.REFRIGERATION

APK

AC.PACKAGE

APR

AC.PACKAGE ROOF

APT

AC.PARTIAL

APV

AC.REFRIGERATION/EVAPORATION

ASE

AC.SEPARATE SYSTEM

ASO

AC.SOLAR

ASP

AC.SPLIT SYSTEM

AWA

AC.WALL UNIT

AWI

AC.WINDOW UNIT

AWN

AC.WALL/WINDOW UNIT

CAC

COMMERCIAL A/C

CEN

CENTRAL

CHW

CHILLED WATER

CPR

CENTRAL PARTIAL

CWU

CENTRAL & UNIT

DUL

DUAL UNIT

EVP

EVAPORATIVE

FAN

FAN COOLING

HTP

HEAT PUMP

OFC

OFFICE ONLY

PKG

PACKAGE

PKR

PACKAGE ROOF

PRT

PARTIAL

REF

REFRIGERATION

REV

REFRIGERATION/EVAPORAT

SEP

SEPARATE SYSTEM

SOL

SOLAR

SPL

SPLIT SYSTEM

WAU

WALL UNIT

WIU

WINDOW UNIT

WNU

WALL/WINDOW UNIT

Basement Code#

Basement Finish Type. Returned by the BasementCode element.

Code

Description

000

NONE

001

TYPE UNKNOWN

BFL

FULL

CRA

CRAWL-SPACE

FBE

BEDROOM

FBR

BEDROOM & RECREATION ROOM

FCF

COMPLETELY FINISHED

FFD

FINISHED WITH DRYWALL

FFI

FINISHED

FFL

FINISHED WITH PLASTER

FFP

FINISHED WITH PANEL

FOF

OFFICE

FPA

PARKING

FPF

PARTIALLY FINISHED

FRE

RESIDENT

FRR

RECREATION ROOM

FST

STORAGE

FUN

UNFINISHED

FUT

UTILITY

Building Code#

Primary Building Type. Returned by the BuildingCode element.

Code

Description

001

TYPE UNKNOWN

A0L

CRIB

A0M

BIN

A0U

OUT BUILDING

A0V

TANK

A1E

HOG HOUSE

AA0

BARN

AA1

PACKING BARN

AAA

DAIRY BARN

AAH

HORSE BARN

AAS

BARN/SHED

AKY

GRAIN TANK

AMG

MILK HOUSE

AMR

MILK PARLOR

AQ0

AGRICULTURAL BUILDING

AR0

SHED

ATG

POULTRY HOUSE

AU0

UTILITY

AV0

SILO

AVF

FRAME SILO

AW0

STABLE

AY0

FARM

AZL

CORN CRIB

C00

COMMERCIAL

C04

MARKET

C06

SAVINGS & LOAN

C07

SUPERMARKET

C0E

SALES

C0Q

COMMERICAL CONDO

C0R

STORE

C10

FOOD STAND

C3D

FURNITURE SHOWROOM

C40

COMMERCIAL GREENHOUSE

C5Y

LUMBER YARD

C5Z

LUMBER STORAGE

C60

OFFICE

C61

MEDICAL OFFICE

C6L

OFFICE LOW RISE

C6Q

OFFICE CONDO

C6W

OFFICE HI RISE

C82

PROFESSIONAL OFFICE

C98

DRIVE-UP WINDOW

CA0

SERVICE

CAA

SERVICE STATION

CAK

SERVICE GARAGE

CB0

BUSINESS

CCA

AUTO STATION

CCB

AUTO AGENCY

CCD

AUTO SHOWROOM

CCE

AUTO SALES

CCF

AUTO SALES & SERVICE

CCK

AUTO GARAGE

CCS

AUTO SERVICE

CD0

GAS

CDA

GAS STATION

CE0

LAUNDROMAT/DRY CLEANERS

CHK

MAINTENANCE GARAGE

CJ0

BANK

CJ2

BANK OFFICES

CJH

BANK DRIVE-IN

CJS

BANK SERVICE

CN0

RETAIL

CN8

RETAIL DRIVE UP

CNQ

RETAIL CONDO

CO0

CAR WASH

COL

CAR WASH AUTOMATIC

COM

CAR WASH MANUAL

CPK

PARKING GARAGE

CQ0

MARINA

CS0

FINANCIAL INSTITUTION

CT4

CONVENIENCE MARKET

CU0

HOTEL

CUP

HOTEL/MOTEL

CV0

MOTEL

CX0

SHOPPING CENTER

CYR

DEPARTMENT STORE

CZR

DISCOUNT STORE

E00

ENTERTAINMENT

E08

FRANCHISE FOOD

E0K

FAST FOOD

E0U

LOUNGE/NITE CLUB

E10

FRATERNAL

E2I

NIGHT CLUB/DINNER

E33

TENNIS/HANDBALL

E3A

TENNIS COURT

E3Q

TENNIS CLUB

E60

RADIO/TV

E61

RADIO/TV TRANSMITTER STATION

E6Z

RADIO/TV STUDIO

EB0

BOWLING ALLEY

EC0

ARENA/STADIUM

EE0

BAR

EEC

BAR COCKTAIL LOUNGE

EH0

CLUBHOUSE

EI0

CLUB/LODGE

EJQ

COUNTRY CLUB

EL0

CULTURAL FACILITY

EM0

FITNESS CENTER

EN0

CAMP SITES

EP0

GOLF

EPL

GOLF COURSE

ER0

RECREATION

ES0

RESTAURANT

ESK

RESTAURANT FAST FOOD

ET0

THEATER

ETE

THEATER/CINEMA

ETJ

DRIVE-IN THEATER

EU0

GYMNASIUM

EVQ

HEALTH CLUB

EVS

HEALTH SPA

EW0

SKATING RINK

EWX

SKATING RINK OUTDOORS

EZ0

RACQUETBALL

G00

GOVERNMENT

G0A

COURTHOUSE

G0P

POLICE STATION

GA0

ARMORY

GB0

MUNICIPAL

GC0

COUNTY

GE0

FEDERAL

GG0

FIRE STATION

GGP

FIRE STATION/POLICE STATION

GH0

CORRECTIONAL

GIE

CITY/VILLAGE/TOWN EXEMP

GM0

MILITARY

GP0

POST OFFICE

GS0

STATE

IAJ

ASPHALT PAVING

IB0

LIGHT IMPROVEMENTS

ICJ

CONCRETE PAVING

IFE

FENCE CHAINLINK

IFI

FENCE IRON

IFP

FENCE PICKET

IFR

FENCE POST/RAIL

IFS

FENCE BRICK/STONE

IFT

FENCE STOCKADE

M00

MULTI FAMILY

M0A

MULTI FAMILY HI RISE

M0H

GARDEN

M0T

MULTI FAMILY TOWNHOUSE

M50

5-PLEX

M51

5-PLEX AND HIGHER

MA0

APARTMENT

MAA

APARTMENT HI RISE

MAH

APARTMENT GARDEN

MAL

APARTMENT MID RISE

MAT

APARTMENT TOWNHOUSE

MC0

MULTI FAMILY CONDO

MCA

CONDO HI RISE

MCE

CONDO APARTMENT

MCH

CONDO GARDEN

MCM

CONDO-MULTIPLEX

MCO

CONDO OFFICE

MCT

CONDO TOWNHOUSE

MD0

DUPLEX

MDF

DUPLEX/TRIPLEX

R00

RESIDENTIAL

RC0

CABIN/COTTAGE

RG0

GUEST HOUSE

RI0

RESIDENTIAL GREENHOUSE

RM0

MOBILE HOME

RM1

MOBILE HOME SINGLE WIDE

RM2

MOBILE HOME DOUBLE WIDE

RMP

MOBILE HOME PARK

RS0

SINGLE FAMILY

RT0

TOWNHOUSE

RU0

PATIO HOME

T0T

TRANSPORTATION TERMINAL

TA0

AIRPORT

TH0

HANGAR

TTT

TRUCK TERMINAL

TTU

TRUCK STOP

U00

INDUSTRIAL

U0A

PLANT

U0F

FACTORY

U0H

INDUSTRIAL HEAVY

U0K

COLD STORAGE

U0L

INDUSTRIAL LIGHT

U0P

PROCESSING

U0Q

FREEZER

U21

FUEL SUPPLY

U80

PACKING PLANT

U85

TERMINAL TRANSIT

UA8

CIGARETTE MANUFACTURER

UB0

BOTTLING

UBB

BOTTLING BREWERY

UFP

FOOD PROCESSING

UM0

MANUFACTURING

UMH

MANUFACTURING HEAVY

UML

MANUFACTURING LIGHT

UMP

MANUFACTURING PROCESSING

UN0

MINING

URJ

RESEARCH & DEVELOPMENT

UW0

WAREHOUSE

UWI

WAREHOUSE PREFAB

UWN

MINI WAREHOUSE

UWO

OFFICE WAREHOUSE

UWP

WAREHOUSE PROCESSING

UWX

WAREHOUSE CONDO

UWZ

WAREHOUSE STORAGE

UX9

LABORATORY/RESEARCH

X0A

AUDITORIUM/GYMNASIUM

X0F

EXEMPT

XA0

CHARITABLE

XB0

COLLEGE

XBP

COLLEGE PUBLIC

XBQ

COLLEGE PRIVATE

XBU

COLLEGE UNIVERSITY

XC0

CHURCH/SYNAGOGUE

XDD

DAY CARE CENTER

XE0

HOSPITAL

XEH

HOSPITAL CONVALESCENT

XEP

HOSPITAL PUBLIC

XEQ

HOSPITAL PRIVATE

XEV

VETERINARY HOSPITAL

XF0

DORMITORY

XGO

FOREST PARK

XH0

ORPHANAGE

XI0

INSTITUTION

XK0

FRATERNITY

XL0

LIBRARY

XMM

FUNERAL HOME

XNM

NURSING HOME

XQ0

MORTUARY

XQR

MORTUARY/CEMETARY

XR0

RELIGIOUS

XR5

RELIGIOUS EDUCATION

XS0

SCHOOL

XSP

SCHOOL PUBLIC

XTV

VETERINARY CLINIC

Building Style Code#

Building Style Type. Returned by the BuildingStyleCode element.

Code

Description

000

NONE

001

TYPE UNKNOWN

ADC

ART DECO

AFR

A-FRAME

ANT

ANTIQUE/HISTORIC

BIL

BI-LEVEL

BUN

BUNGALOW

CAB

CABIN

CAP

CAPE COD

CHL

CHALET/ALPINE

CLU

CLUSTER

CND

CONDOMINIUM

CNT

CONTEMPORARY

COA

COACH/CARRIAGE HOUSE

COL

COLONIAL

CON

CONVENTIONAL

CTB

COTTAGE/BUNGALOW

DES

CUSTOM/DESIGNER

DOM

DOME

DUP

DUPLEX

EUR

EUROPEAN

FED

FEDERALIST

FRE

FRENCH PROVINCIAL

GAM

GAMBREL/BARN

GEO

GEODESIC

GOT

GOTHIC

GRA

GARAGE APARTMENT

GRE

GREEK REVIVAL

GRG

GEORGIAN

GRS

GARRISON/FRONTIER

HRI

HIGH RISE

HSH

H-SHAPE

LOG

LOG

LRI

LOW RISE

LSH

L-SHAPE

MAN

MANSION

MDR

MODULAR/PREFAB

MED

MEDITERRANEAN

MIS

MISSION

MLF

MULTI-FAMILY

MLL

MULTI-LEVEL

MOB

MOBILE HOME

MOD

MODERN

MRI

MID RISE

NEN

NEW ENGLAND

OLD

OLD

OLE

OLD ENGLISH

PAT

PATIO-HOME

QLV

QUAD-LEVEL

QUA

QUADRAPLEX

RAN

RANCH

REC

RECTANGULAR DESIGN

ROW

ROW HOUSE

RRA

RAISED RANCH

SLT

SALT BOX

SPA

SPANISH

SPF

SPLIT FOYER

SPL

SPLIT LEVEL

SQU

SQUARE DESIGN

SWN

SOUTHWESTERN

TLV

TRI-LEVEL

TPX

TRIPLEX

TRA

TRADITIONAL

TUD

TUDOR

TWN

TOWNHOUSE

UND

UNDERGROUND/BERM

USH

U-SHAPE

VIC

VICTORIAN

WIL

WILLIAMSBURG

WSH

W-SHAPE

Condition Code#

Physical Condition of Main Improvement. Returned by the ConditionCode element.

Code

Description

000

NONE

001

TYPE UNKNOWN

AVE

AVERAGE

DMG

PHYSICAL DAMAGE

EXC

EXCELLENT

FAI

FAIR

GOO

GOOD

POO

POOR

UCN

UNDER CONSTRUCTION

UNS

UNSOUND

VGO

VERY GOOD

Construction Code#

Primary Method of Construction. Returned by the ConstructionCode element.

Code

Description

000

NONE

001

TYPE UNKNOWN

ADB

ADOBE

AFR

A FRAME

ALF

ALUMINUM FRAME

ALS

ALUMINUM SIDING

ALV

ALUMINUM/VINYL

AOD

ARCHED/DOME

BCB

BRICK/CINDER BLOCK

BLB

BLOCK/BRICK

BLM

BLOCK/METAL

BLS

BLOCK/STEEL

BRC

BRICK/CONCRETE

BRF

BRICK/FRAME

BRK

BRICK

BRL

BRICK/STEEL

BRM

BRICK/METAL

BRS

BRICK/STUCCO

BST

BRICK/STONE

CCB

CONCRETE BLOCK

CCM

CONCRETE MASONRY

CCS

CONCRETE/STEEL

CLP

CLAPBOARD

CND

CINDER BLOCK

COM

COMBINATION

CRE

CONCRETE

CUS

CUSTOM

DOM

DOME

FLX

FLEXIBLE/FLEXICORE

FRM

FRAME

FRS

FRAME/STEEL

FRY

FRAME/MASONRY

FST

FRAME/STUCCO

GLA

GLASS

HEA

HEAVY

LIG

LIGHT

LOG

LOG

MAN

MANUFACTURED/MODULAR

MAS

MASONRY

MET

METAL

MTU

MASONRY TILT-UP

PFR

POLE FRAME

PRM

PREFAB METAL

SFM

STEEL/MASONRY

SRO

STONE/ROCK

STE

STEEL

STS

STEEL/STUCCO

STU

STUCCO

STV

STONE VENEER

STW

STEEL/WOOD

TBM

TILT-UP BRICK/METAL

TLU

TILT-UP

TUC

TILT-UP CONCRETE

WBR

WOOD/BRICK

WCB

WOOD FRAME/CONCRETE BLOCK

WMT

WOOD FRAME/METAL

WOO

WOOD

WSC

WOOD/STUCCO

WSL

WOOD/STEEL

WSN

WOOD/STONE

Electricity Code#

Type of Energy Use. Returned by the ElectricityCode element

Code

Description

000

NONE

001

TYPE UNKNOWN

EAG

AVERAGE WIRING

EAV

AVAILABLE

EBA

BELOW AVERAGE WIRING

ECN

CONNECTED

EEX

EXTENSIVE WIRING

EGO

GOOD WIRING

EHE

HEAVY WIRING

ELI

LIGHT WIRING

EMA

MAXIMUM WIRING

EME

MEDIUM WIRING

EMI

MINIMAL WIRING

EOV

OVERHEAD WIRES

EPR

PRIVATE SOURCE

ETY

TYPICAL WIRING

EUN

UNDERGROUND WIRES

Exterior Wall Code#

Type/Finish of Exterior Walls. Returned by the ExteriorWallCode element

Code

Description

ABL

ALUMINUM/BLOCK

ABP

ASBESTOS/BLOCK/PLYWOOD

ABR

ASBESTOS/BRICK

ABV

ASBESTOS/BRICK VENEER/WOOD

ABW

ASBESTOS/BLOCK/WOOD

ADO

ADOBE BLOCK

AFW

ASPHALT/FIBERGLASS/WOOD FRAME

ALB

ALUMINUM/BRICK

ALF

FRAME/ALUMINUM

ALM

ALUMINUM/MASONITE

ALN

ALUMINUM/STONE

ALS

ALUMINUM SIDING

ALU

ALUMINUM

ALV

ALUMINUM/VINYL

AME

ALUMINUM/METAL

AMS

ALUMINUM SIDING/STUCCO

ASB

ASBESTOS

ASC

ASBESTOS/CONCRETE

ASD

ASPHALT SIDING

ASF

ASBESTOS FRAME

ASG

ASBESTOS SHINGLE

ASI

ASBESTOS SIDING

ASK

ASBESTOS/BLOCK

ASM

ASBESTOS/MASONITE

ASO

ALUMINUM/STUCCO

ASP

ASBESTOS/PERMASTONE

AST

ASBESTOS/STONE

ASV

ASBESTOS/VINYL

ASW

ASBESTOS/WOOD

AWD

ASBESTOS/STONE/WOOD

BAS

BLOCK/ASBESTOS SHINGLE

BBA

BOARD & BATTEN

BBD

BLACK-BOARD

BBS

BRICK/CONCRETE BLOCK STUCCO

BBW

BOARD & BATTEN/WOOD FRAME

BFS

BRICK FRAME/STONE

BFT

BRICK/FRAME/STUCCO

BFV

BRICK/FRAME/VENEER

BFW

BRICK/FRAME/WOOD

BLB

BLOCK/BRICK

BLF

FRAME/BLOCK

BLM

BLOCK/MASONRY

BLO

BLOCK

BLP

BLOCK PAINTED

BLS

BLOCK/STONE

BLT

BLOCK/METAL

BLW

BLOCK/WOOD

BMG

BRICK/METAL & GLASS PANEL

BMM

BRICK/MASONITE

BMN

BRICK/MASONRY/STONE

BMS

BLOCK/MASONRY/STUCCO

BMT

BRICK/METAL

BMV

BRICK/METAL/VENEER

BOP

BOARD ON POST

BRC

BRICK/CONCRETE

BRI

BRICK

BRM

BRICK/MASONRY

BRO

BRICK/STUCCO

BRP

BRICK/PERMASTONE

BRS

BRICK/STONE

BRV

BRICK VENEER

BRW

BRICK/WOOD

BRX

BRICK VENEER/STONE/WOOD

BSD

BRICK SIDING

BSH

BRICK/SHINGLE

BSO

BLOCK/STONE/WOOD

BST

BLOCK/STUCCO

BSV

BRICK/STONE VENEER

BSW

BRICK/STONE/WOOD SIDING

BTL

BRICK/TILE

BVB

BRICK VENEER/BLOCK

BVN

BRICK/VINYL

BVW

BRICK VENEER/WOOD

BWB

BRICK VENEER/WALL BOARD

BWD

BRICK/WOOD SIDING

BWS

BRICK/STUCCO/WOOD

BWT

BRICK/WOOD/STONE VENEER

BWV

BRICK/WOOD/VINYL

CBC

CONCRETE BRICK/COMPOSITION

CBE

CONCRETE BLOCK/STEEL

CBL

CONCRETE BLOCK/METAL

CBM

CINDER BLOCK/MASONITE

CBP

CONCRETE BRICK/PANEL

CBS

CONCRETE BLOCK/STUCCO

CBU

CINDER BLOCK/STUCCO

CBV

CONCRETE BLOCK/STONE VENEER

CBW

CINDER BLOCK/WOOD

CBY

CONCRETE BLOCK/MASONRY

CCB

CINDER BLOCK

CCC

CONCRETE/CINDER BLOCK

CDR

CONCRETE/DRYVIT

CFS

CONCRETE/FRAME/STEEL

CGP

CONCRETE/GLASS PANELS

CHA

TONGUE & GROOVE/CHANNEL

CLA

CLAPBOARD

CLT

CLAY TILE

CMG

CB/METAL/GLASS PANEL

CMS

CONCRETE MASONRY

CMT

CONCRETE/METAL

CMW

CORRUGATED METAL/WALLBOARD

CNB

CONCRETE BLOCK

CNT

CONCRETE TILE

COM

COMPOSITION

CON

CONCRETE

COS

COPPER SIDING

CRP

CORRUGATED PANEL

CRS

CORRUGATED SIDING

CSH

COMPOSITION SHINGLE

CSI

COMPOSITION SIDING

CSP

CORRUGATED STEEL PANEL

CSS

COMPOSITION SIDING/STUCCO

CST

CONCRETE STUCCO

CUS

CUSTOM

CWL

PORCELAIN/ENAMEL PANEL

EIF

INSULATED FINISH/EIFS

FAB

FRAME ALUMINUM/BRICK

FAV

FRAME/ALUMINUM/VINYL

FBR

FIBERBOARD

FCB

FRAME CONCRETE BLOCK/BRICK

FCL

FRAME CLAPBOARD

FHB

FRAME HARDBOARD

FIB

FIBERGLASS

FMM

FRAME/MASONRY

FMV

FRAME/MASONRY/VENEER

FPM

FRAME/PERMASTONE

FPP

FRAME/PLYWOOD

FRA

FRAME

FRB

FRAME BRICK

FRC

FRAME COMPOSITION

FRE

FRAME/SHINGLE

FRG

FRAME/GLASS

FRM

FRAME/METAL

FRS

FRAME/STONE

FRV

FRAME/VINYL

FRW

FRAME/WOOD

FSB

FRAME SHINGLE/BRICK

FSD

FRAME SIDING

FSG

FRAME/STEEL/SIDING

FSL

FRAME-STUD/LATH/STUC/ASB SDG

FSM

FRAME/STEEL/METAL

FSP

FRAME/STEEL PANEL

FSS

FRAME/SHINGLE SIDING

FST

FRAME/STUCCO

FSV

FRAME/STONE/VENEER

FSW

FRAME/WOOD SHINGLE

FTS

FRAME/STUCCO/SIDING

FTW

FRAME/TILE/WOOD

FWB

FRAME WOOD/BRICK

FWC

FRAME WOOD/STUCCO

FWD

FRAME WOOD

FWS

FRAME/WOOD SIDING

GLA

GLASS

GLB

BRICK/GLASS

GLL

ALUMINUM/GLASS

GLM

GLASS/METAL

GLS

GLASS/STEEL

GMA

GLASS/MASONRY

GST

GLASS/STONE

GUN

GUNITE

GWD

GLASS/WOOD

HAR

HARDBOARD

HAY

HAYDITE

HBP

HARDBOARD/PLYWOOD

HBV

HARDBOARD/VINYL

HRW

HARDWOOD

IMI

SYNTHETIC PANEL/SIDING

INC

FIREPROOF/FIRE RETARDANT

IRN

IRON POST/CORRUGATED IRON

LOG

LOG

LPS

LAP SIDING

LWS

LOG/WOOD SHINGLE

MAR

MARBLE

MAS

MASONITE

MBS

MARBLE/STONE

MEL

METAL/STEEL

MET

METAL

MIX

MIXTURE

MLS

METAL/STUCCO

MSC

MASONITE/STUCCO

MSH

MASONITE/SHEATHING

MSM

MASONRY/METAL

MSN

MASONRY

MSS

MASONRY/STONE

MST

MASONITE/STONE

MSV

MASONITE/VINYL

MSW

MASONITE/WOOD

MTP

METAL PANEL

MTS

METAL SIDING

MVN

MASONRY VENEER

MVS

METAL/STONE/VENEER

MWD

METAL/WOOD

MWF

METAL/WOOD FRAME

MYS

MASONRY/STUCCO

MYW

MASONRY/WOOD

OPE

OPEN END

PAB

POST & BOARD

PAN

PANEL

PCP

PRECAST CONCRETE PANEL

PCW

PRECAST CURTAIN WALLS

PER

PERMASTONE

PFM

PREFAB METAL

PFW

PREFAB WOOD

PLS

PLASTER

PLY

PLYWOOD

POR

PORCELAIN/ENAMEL PANEL

PRB

PRESSBOARD

PRC

PRECAST CONCRETE

PRF

PREFAB

PRP

PREFAB PANEL

PST

PANEL/STUCCO

PTP

PRECAST TEXTURED PANEL

PWD

PERMASTONE/WOOD

PWF

PLYWOOD/WOOD FRAME

PWP

PREFAB WOOD PANEL

RBW

BRICK/CONCRETE BLOCK/WOOD

ROC

ROCK/STONE

SBR

SIMULATED BRICK, ROCK, STONE

SDS

SIDING SHEATHING

SEW

STEEL/WOOD

SFW

STEEL FRAME/WOOD

SGL

SOLAR GLASS

SGS

SHINGLE SIDING

SGW

SHINGLE/WOOD

SHB

SHINGLE/BRICK

SHE

SHEATHING

SHI

SHINGLE

SHS

SHEATHING/STUCCO

SHW

SHEATHING/WOOD

SIN

SINGLE

SLU

SLUMP

SNS

STONE/SIDING

SNW

STONE/WOOD

SPR

GUNITE/SPRAYCRETE

SSC

STONE/STUCCO

SSD

STONE/WOOD SIDING

SSF

FRAME/STUCCO SHINGLE

SSG

STAINLESS STEEL W/BRONZED GLAS

SSH

SLATE

SSS

SHINGLE/STUCCO

SST

STEEL/STUCCO

SSW

SHINGLE SIDING/WOOD FRAME

STE

STEEL

STF

STEEL FRAME

STM

STUCCO/MASONRY

STO

STONE

STP

STEEL/PANEL

STT

STUCCO/TILE

STU

STUCCO

STV

STONE VENEER

STW

STUCCO/TILE/WOOD

STY

STYROFOAM STUCCO

SUV

STUCCO/VINYL

SVE

STUCCO/VENEER

SVF

STONE VENEER/WOOD FRAME

SVL

STONE/VINYL

SVW

STONE/VENEER/WOOD

SWD

STUCCO/WOOD

SWF

STUCCO/WOOD FRAME

SWS

STONE/WOOD FRAME

TAP

TAR PAPER

TIL

TILE

TLU

TILT-UP/CONCRETE

TUU

TILT-UP

VIN

VINYL

VIT

VITROLITE

VNW

VINYL/WOOD

WAF

WAFERBOARD

WAS

WOOD/ALUMINUM/COMPOSITION SHIN

WDA

WOOD/ALUMINUM

WDF

WOOD FRAME

WDH

WOOD SIDING/SHINGLE

WDS

WOOD SHEATHING

WDV

WOOD VENEER

WFA

WOOD FRAME/ASBESTOS

WFS

WOOD FRAME/SIDING

WFV

WOOD FRAME/VINYL

WFX

WOOD FRAME(STUCCO OR ASBESTOS)

WLB

WALLBOARD

WOO

WOOD

WOS

WOOD SIDING

WRB

WEATHERBOARD

WSS

WOOD SHAKE/SHINGLE

WWL

WINDOW WALL

WWS

WALLBOARD/WOOD SHINGLE

XXX

CBS/HOLW TILE/FR/STUD/SHEAT/SD

Fireplace Code#

Fireplace Type. Returned by the FireplaceCode element.

Code

Description

000

NONE

001

TYPE UNKNOWN

0B0

BRICK CHIMNEY

0C0

COAL/WOOD

0G0

GAS/LOG

0L0

STEEL

0M0

MASONRY

0M1

MASONRY 1 OPENING

0N0

CINDER/CONCRETE BLOCK CHIMNE

0P0

PREFAB

0P2

2 OPENINGS PREFAB

0R0

SEE THRU

0S0

STONE

0T0

METAL

0T1

1 METAL OPENING

0U0

TYPE UNKNOWN

0U1

1 OPENING

0U2

2 OPENINGS

0U3

3 OPENINGS

0U4

4 OPENINGS

0U5

5 OPENINGS

0U6

6 OPENINGS

0U7

7 OPENINGS

0U8

8 OPENINGS

0U9

9 OPENINGS

0UA

10 OPENINGS

0UB

11 OPENINGS

0UC

12 OPENINGS

0V0

MASSIVE

0V2

MASSIVE 2 OPENINGS

0W0

WOOD STOVE

0X0

STONE, BRICK, MARBLE

1B0

1 STORY BRICK

1F0

1 STORY FRAME

1O0

1 STORY STUCCO

1P0

1 STORY PREFAB

1S0

1 STORY STONE

1U0

1 STORY

1U1

1 STORY 1 OPENING

1U2

1 STORY 2 OPENINGS

1UX

1 STORY EXTRA OPENING

2B0

2 STORY BRICK

2F0

2 STORY FRAME

2O0

2 STORY STUCCO

2P0

2 STORY PREFAB

2S0

2 STORY STONE

2U0

2 STORY

2U1

2 STORY 1 OPENING

2U2

2 STORY 2 OPENINGS

2U3

2 STORY 3 OPENINGS

2U4

2 STORY 4 OPENINGS

2UX

2 STORY EXTRA OPENING

3B0

3 STORY BRICK

3F0

3 STORY FRAME

3P0

3 STORY PREFAB

3U1

3 STORY 1 OPENINGS

3U2

3 STORY 2 OPENINGS

3U3

3 STORY 3 OPENINGS

3UX

3 STORY EXTRA OPENING

AB0

1.5 STORY BRICK

AO0

1.5 STORY STUCCO

AP0

1.5 STORY PREFAB

AS0

1.5 STORY STONE

AU0

1.5 STORY

Flooring Code#

Floor Construction Type. Returned by the FlooringCode element.

Code

Description

000

NONE

001

TYPE UNKNOWN

A

CONCRETE

B

WOOD

C

PLYWOOD

D

CONCRETE/ASPHALT

E

BRICK

F

ACRYLIC

G

ASBESTOS

H

GRAVEL

I

SLATE

J

DIRT

K

CINDER BLOCK

L

ASPHALT

M

BRICK/STONE

N

BRICK/STONE/SLATE

P

METAL DECK

Q

METAL GRATING

R

CORREGATED DECK

S

WOOD SHEATHING

T

STEEL-FLAT-SLAB

U

SUB-FLOORING

Foundation Code#

Foundation Type. Returned by the FoundationCode element.

Code

Description

000

NONE

001

TYPE UNKNOWN

BLK

BLOCK

BRK

BRICK

CNB

CONCRETE BLOCK

CNF

CONTINUOUS FOOTING

CNW

CONTINUOUS WALL

CRB

CONCRETE/BEAM

CRE

CONCRETE

CRS

CROSS BRIDGED/WALLS

DRE

DIRT/EARTH

GDB

GRADE-BEAM

MSN

MASONRY

MUD

MUD SILL

PIL

PILINGS

PIR

PIER

PPI

PIPE/IRON

PRE

PRE-FAB

RAS

RAISED

SDF

SPREAD FOOTING

SLB

SLAB

STD

STANDARD

STE

STEEL

STM

STEM WALL

STN

STONE

UBM

TYPE UNKNOWN WITH BASEMENT

UCR

TYPE UNKNOWN WITH CRAWSPACE

UPB

TYPE UNKNOWN WITH PART BASEMENT

WOO

WOOD

Fuel Code#

Type of Fuel used by Building. Returned by the FuelCode element.

Code

Description

000

NONE

001

TYPE UNKNOWN

FBU

BUTANE

FCO

COAL

FCV

CONVECTION

FCW

COAL/WOOD

FEL

ELECTRIC

FGA

GAS

FGS

GAS/SOLAR

FKE

KEROSENE

FLP

LIQUEFIED PETROLEUM GAS

FOI

OIL

FOS

OIL/SOLAR

FSO

SOLAR

FWD

WOOD

FWO

COAL/WOOD/OIL

Garage Code#

Type of Garage or Carport. Returned by the GarageCode element.

Code

Description

000

NONE

001

UNDEFINED TYPE

002

UNDEFINED TYPE - 2 CAR

003

UNDEFINED TYPE - 3 CAR

004

UNDEFINED TYPE - 4 CAR

005

UNDEFINED TYPE - 5 CAR

006

UNDEFINED TYPE - 6 CAR

010

ATTACHED GARAGE/CARPORT

020

ATTACHED BASEMENT

030

DETACHED BASEMENT

040

DETACHED GARAGE/CARPORT

050

ENCLOSED BRICK GARAGE/CARPORT

060

BASEMENT FINISHED

061

FINISHED BASEMENT - 1 CAR

062

FINISHED BASEMENT - 2 CAR

063

FINISHED BASEMENT - 3 CAR

064

FINISHED BASEMENT - 4 CAR

070

FINISHED BUILT IN

080

UNFINISHED BASEMENT

081

UNFINISHED BASEMENT - 1 CAR

082

UNFINISHED BASEMENT - 2 CAR

083

UNFINISHED BASEMENT - 3 CAR

084

UNFINISHED BASEMENT - 4 CAR

090

UNFINISHED BUILT IN

100

PREFAB

110

BASEMENT

112

BASEMENT - 2 CAR

113

BASEMENT - 3 CAR

114

BASEMENT - 4 CAR

115

BASEMENT - 5 CAR

116

BASEMENT - 6 CAR

120

BUILT IN

121

BUILT IN - 1 CAR

122

BUILT IN - 2 CAR

130

BUILT UNDER

140

GARAGE/CARPORT

170

FINISHED BRICK GARAGE

200

FINISHED ATTACHED MASONRY

210

UNFINISHED ATTACHED MASONRY

220

DETACHED MASONRY

230

FINISHED DETACHED MASONRY GARA

240

FINISHED MASONRY

250

UNFINISHED MASONRY

260

MASONRY

270

ATTACHED METAL

280

DETACHED METAL

290

METAL/WOOD

300

SALT BOX

310

STEEL

320

ATTACHED STONE

330

DETACHED STONE

340

FINISHED STONE

350

UNFINISHED STONE

360

STONE

370

ATTACHED STUCCO

380

STUCCO

390

VINYL

400

ATTACHED WOOD

410

DETACHED WOOD

430

UNFINISHED WOOD

440

WOOD

450

ATTACHED

451

ATTACHED - 1 CAR

452

ATTACHED - 2 CAR

453

ATTACHED - 3 CAR

454

ATTACHED - 4 CAR

460

ATTACHED FINISHED

470

UNFINISHED ATTACHED

480

ENCLOSED DETACHED

490

DETACHED FINISHED

500

UNFINISHED DETACHED

501

UNFINISHED DETACHED FRAME GARA

502

UNFINISHED DETACHED MASONRY GA

510

ENCLOSED

520

ALUMINUM

530

ALUMINUM/WOOD

540

DETACHED BLOCK

550

UNFINISHED DETACHED BLOCK

560

FINISHED BLOCK

570

PREFAB METAL

580

BLOCK

590

DETACHED BLOCK/FRAME

600

WOOD FRAME

610

ATTACHED BRICK

620

DETACHED BRICK

640

UNFINISHED BRICK

650

BRICK

660

BRICK/FRAME

670

MASONRY/BRICK

680

DETACHED BRICK/STONE

690

BRICK/STONE

701

DETACHED CINDERBLOCK - 1 CAR

710

CONCRETE

716

CONCRETE - 6 CAR

720

ATTACHED CONCRETE BLOCK

730

DETACHED CONCRETE BLOCK

740

FINISHED CONCRETE BLOCK

750

UNFINISHED CONCRETE BLOCK

760

CONCRETE BLOCK

770

UNFINISHED STUCCO/CONCRETE BLO

780

ATTACHED FRAME

790

FINISHED ATTACHED FRAME

800

UNFINISHED ATTACHED FRAME

810

DETACHED FRAME

820

DETACHED FRAME FINISHED

830

ENCLOSED FRAME

840

FINISHED FRAME

850

UNFINISHED FRAME

860

DETACHED FRAME/CONCRETE BLOCK

870

DETACHED GABLE/HIP

880

LOG

890

ATTACHED MASONRY

900

FINISHED

910

UNFINISHED

911

UNFINISHED - 1 CAR

912

UNFINISHED - 2 CAR

913

UNFINISHED - 3 CAR

920

DETACHED

921

DETACHED - 1 CAR

922

DETACHED - 2 CAR

923

DETACHED - 3 CAR

924

DETACHED - 4 CAR

930

COVERED PARKING/GARAGE

940

DETACHED FINISHED STUCCO

950

FRAME

960

FRAME/CONCRETE BLOCK

971

UNDEFINED TYPE - 1 CAR

980

METAL

00X

UNDEFINED TYPE - 10 CAR

A00

CARPORT

A01

CARPORT - 1 CAR

A02

CARPORT - 2 CAR

A03

CARPORT - 3 CAR

A04

CARPORT - 4 CAR

A05

CARPORT - 5 CAR

A06

CARPORT - 6 CAR

B00

ATTACHED CARPORT

C00

DETACHED CARPORT

D00

ENCLOSED CARPORT

E00

FINISHED DETACHED CARPORT

F00

UNFINISHED DETACHED CARPORT

G00

COVERED CARPORT

H00

UNFINISHED CARPORT

I00

FINISHED CARPORT

J00

MASONRY CARPORT

K00

METAL CARPORT

L00

WOOD CARPORT

M00

ALUMINUM CARPORT

N00

ALUMINUM FRAME CARPORT

O00

ALUMINUM/WOOD CARPORT

P00

CONCRETE CARPORT

Q00

CONCRETE BLOCK CARPORT

R00

FRAME CARPORT

S00

DETACHED GABLE/HIP CARPORT

T00

ATTACHED GABLE/HIP CARPORT

U00

DETACHED ALUMINUM CARPORT

V01

DETACHED CARPORT - 1 CAR

V02

DETACHED CARPORT - 2 CAR

WOO

PREFAB CARPORT

Z00

OPEN CARPORT

Heating Code#

Type of Heating. Returned by the HeatingCode element.

Code

Description

000

NONE

001

TYPE UNKNOWN

00A

ELECTRIC/SOLAR

00C

COAL

00D

GAS/WOOD

00E

ELECTRIC

00G

GAS

00I

ELECTRIC/OIL

00M

GAS STEAM

00N

SOLAR/COAL/WOOD

00O

OIL

00P

COAL/WOOD

00Q

SOLAR/OIL

00R

ELECTRIC/RADIANT

00S

SOLAR

00T

ELECTRIC/HOT WATER

00W

WOOD

00Y

OIL/WOOD

00Z

GAS SOLAR

BB0

BASEBOARD

BBE

BASEBOARD ELECTRIC

BBG

BASEBOARD GAS

BBO

BASEBOARD OIL

BBP

BASEBOARD COAL/WOOD

BH0

BASEBOARD HOT WATER

BRE

BASEBOARD ELECTRIC/RADIANT

BS0

BASEBOARD HOT WATER/STEAM

BTE

BASEBOARD ELECTRIC/HOT WATER

CF0

CENTRAL FORCED AIR

CFO

CENTRAL FORCED AIR OIL

CL0

CENTRAL

CLE

CENTRAL ELECTRIC

CLG

CENTRAL GAS

CP0

CENTRAL PARTIAL

CV0

CONVECTION

CVE

CONVECTION ELECTRIC

CVG

CONVECTION GAS

CVO

CONVECTION OIL

FA0

FORCED AIR

FAC

FORCED AIR COAL

FAE

FORCED AIR ELECTRIC

FAG

FORCED AIR GAS

FAH

FORCED HOT WATER

FAO

FORCED AIR OIL

FAW

FORCED AIR WOOD

FC0

CEILING FURNACE

FCW

FORCED AIR COAL/WOOD

FF0

FLOOR FURNACE

FFE

FLOOR FURNACE ELECTRIC

FFG

FLOOR FURNACE GAS

FFL

FLOOR FURNACE COAL/WOOD

FFO

FLOOR FURNACE OIL

FL0

FLOOR/WALL FURNACE

FN0

FORCED AIR NOT DUCTED

FP0

FIREPLACE

FR0

FURNACE

FRC

FURNACE COAL

FRE

FURNACE ELECTRIC

FRG

FURNACE GAS

FRW

WOOD FURNACE

FS0

FURNACE/STOVE

GF0

GRAVITY FURNACE

GFG

GRAVITY FURNACE GAS

GN0

GRAVITY NOT DUCTED

GR0

GRAVITY

GRC

GRAVITY COAL

GRE

GRAVITY ELECTRIC

GRG

GRAVITY GAS

GRO

GRAVITY OIL

GRS

GRAVITY SOLAR

HA0

HOT AIR

HAE

HOT AIR ELECTRIC

HAO

HOT AIR OIL

HAS

HOT AIR SOLAR

HN0

HOT AIR NOT DUCTED

HP0

HEAT PUMP

HPE

HEAT PUMP ELECTRIC

HPG

HEAT PUMP GAS

HPH

HEAT PUMP HOT WATER

HPL

HEAT PUMP COAL/WOOD

HPO

HEAT PUMP OIL

HPS

HEAT PUMP SOLAR

HS0

HOT WATER STEAM

HW0

HOT WATER

HWE

HOT WATER/ELECTRIC

HWG

HOT WATER GAS

HWL

HOT WATER COAL/WOOD

HWO

HOT WATER OIL

HWS

HOT WATER SOLAR

HWW

HOT WATER WOOD

IN0

INDUSTRIAL

JT0

JETS

ND0

NOT DUCTED

PK0

PACKAGE

PKE

PACKAGE ELECTRIC

PT0

PARTIAL

RC0

RADIANT CEILING

RD0

RADIANT

RDE

RADIANT ELECTRIC

RDH

RADIANT HOT WATER

RDI

RADIANT ELECTRIC/OIL

RDW

RADIANT WOOD

RGO

RADIANT HOT WATER OIL

RR0

RADIATOR

RS0

RADIANT STEAM

SP0

SPACE

SPG

SPACE GAS

SPL

SPACE COAL/WOOD

SPO

SPACE OIL

SS0

STOVE/SPACE

ST0

STEAM

STE

STEAM ELECTRIC

STG

STEAM GAS

STH

STEAM HOT WATER

STO

STEAM OIL

STW

STEAM WOOD

SV0

STOVE

SVG

STOVE GAS

UN0

UNIT

UNE

UNIT ELECTRIC

UNG

UNIT GAS

WA0

WARM AIR

WF0

WALL FURNACE

WFL

WALL FURNACE COAL/WOOD

WFO

WALL FURNACE OIL

WH0

WALL HEAT PUMP

WL0

WALL

WLE

WALL ELECTRIC

WLG

WALL GAS

WS0

WOOD STOVE

WU0

WALL UNIT

Improvement Code#

Building Improvement Type. Returned by the ImprovementCode element.

Code

Description

000

NONE

001

TYPE UNKNOWN

A0I

FARM

A0L

CRIB

A0S

SHED

A0Y

TANK

A1E

HOG HOUSE

AA0

BARN

AA1

PACKING BARN

AAA

DAIRY BARN

AAH

HORSE BARN

AAS

BARN/SHED

AKY

GRAIN TANK

AMG

MILK HOUSE

AMR

MILK PARLOR

AQ0

AGRICULTURAL BUILDING

ATG

POULTRY HOUSE

AU0

UTILITY

AV0

SILO

AVF

FRAME SILO

AW0

STABLE

AY0

BIN

AZL

CORN CRIB

C00

COMMERCIAL

C04

MARKET

C06

SAVINGS & LOAN

C07

SUPERMARKET

C0C

HANGAR

C0E

COMMERCIAL SALES

C0P

MOTEL

C0Q

COMMERCIAL CONDO

C0R

STORE

C3D

FURNITURE SHOWROOM

C40

COMMERCIAL GREENHOUSE

C5Y

LUMBER YARD

C60

OFFICE

C61

MEDICAL OFFICE

C6Q

OFFICE CONDO

C6W

OFFICE HIGH RISE

C82

PROFESSIONAL OFFICE

C98

DRIVE-UP WINDOW

CA0

COMMERCIAL SERVICE

CAA

SERVICE STATION

CAK

SERVICE GARAGE

CB0

BUSINESS PARK

CCA

AUTO STATION

CCB

AUTO AGENCY

CCD

AUTO SHOWROOM

CCE

AUTO SALES

CCF

AUTO SALES & SERVICE

CCK

AUTO GARAGE

CCS

AUTO SERVICE

CD0

GAS

CDA

GAS STATION

CE0

MARINA

CG0

AIRPORT

CHK

MAINTENANCE GARAGE

CJ0

BANK

CJ2

BANK OFFICES

CJH

BANK DRIVE-IN

CJS

BANK SERVICE

CN0

RETAIL

CN8

RETAIL DRIVE UP

CNQ

RETAIL CONDO

CO0

CAR WASH

COL

CAR WASH AUTOMATIC

COM

CAR WASH MANUAL

CPK

PARKING GARAGE

CS0

FINANCIAL INSTITUTION

CT4

CONVENIENCE MARKET

CU0

HOTEL

CVP

HOTEL/MOTEL

CX0

SHOPPING CENTER

CYR

DEPARTMENT STORE

CZ5

LUMBER STORAGE

CZR

DISCOUNT STORE

E00

ENTERTAINMENT

E07

FOOD STAND

E08

FRANCHISE FOOD

E0K

FAST FOOD

E0U

LOUNGE/NITE CLUB

E10

FRATERNAL BUILDING

E2I

NITE CLUB/DINNER

E33

TENNIS/HANDBALL

E50

RADIO/TV

E51

RADIO/TV TRANSMITTER STATION

E5Z

RADIO/TV STUDIO

EB0

BOWLING ALLEY

EC0

ARENA

EE0

BAR

EEC

BAR/LOUNGE

EH0

CLUBHOUSE

EI0

CLUB/LODGE

EJQ

COUNTRY CLUB

EL0

CULTURAL FACILITY

EM0

FITNESS CENTER

EN0

CAMP

EP0

GOLF

EPL

GOLF COURSE

ER0

RECREATION

ES0

RESTAURANT

ESK

FAST FOOD RESTAURANT

ET0

THEATER

ETA

TENNIS COURT

ETE

THEATER/CINEMA

ETJ

DRIVE-IN THEATER

ETQ

TENNIS CLUB

EU0

GYMNASIUM

EVQ

HEALTH CLUB

EVS

HEALTH SPA

EW0

SKATING RINK

EWX

SKATING RINK OUTDOORS

EZ0

RACQUETBALL

G00

GOVERNMENT

G0H

COURTHOUSE

G0P

POLICE STATION

GA0

ARMORY

GB0

MUNICIPAL

GC0

COUNTY

GE0

FEDERAL

GG0

FIRE STATION

GGP

FIRE STATION/POLICE STATION

GH0

CORRECTIONAL

GIE

CITY/VILLAGE/TOWN EXEMP

GM0

MILITARY

GP0

POST OFFICE

GS0

STATE

I80

TERMINAL

IAJ

ASPHALT PAVING

IB0

LIGHT

ICJ

CONCRETE PAVING

IFE

FENCE CHAINLINK

IFI

FENCE IRON

IFP

FENCE PICKET

IFR

FENCE POST/RAIL

IFS

FENCE BRICK/STONE

IFT

FENCE STOCKADE

M00

MULTI FAMILY

M0A

HIGH RISE

M0H

GARDEN

M0T

MULTI FAMILY TOWNHOUSE

M50

5-PLEX AND HIGHER

MA0

APARTMENT

MAA

APARTMENTS HIGH RISE

MAH

APARTMENT GARDEN

MAI

APARTMENTS MID RISE

MAT

APARTMENT TOWNHOUSE

MC0

CONDO

MCA

CONDO HIGH RISE

MCE

CONDO-APARTMENT

MCH

CONDO-GARDEN

MCM

CONDO-MULTIPLEX

MCO

CONDO-OFFICE

MCT

CONDO-TOWNHOUSE

MD0

DUPLEX

MDF

DUPLEX/TRIPLEX

R00

RESIDENTIAL

R99

HOUSE/OFFICE

RC0

RESIDENTIAL CABINS

RG0

GUEST HOUSE

RI0

GREENHOUSE

RM0

MOBILE HOME

RM1

MOBILE HOME SINGLE WIDE

RM2

MOBILE HOME DOUBLE WIDE

RMP

MOBILE HOME PARK

RS0

SINGLE FAMILY

RT0

TOWNHOUSE

RU0

PATIO HOME

U00

INDUSTRIAL

U0A

PLANT

U0F

FACTORY

U0H

INDUSTRIAL - HEAVY

U0K

COLD STORAGE

U0L

INDUSTRIAL - LIGHT

U0P

PROCESSING

U0Q

FREEZER

U21

FUEL SUPPLY

U85

TERMINAL TRANSIT

U87

TRUCK TERMINAL

U97

TRUCK STOP

UA8

CIGARETTE MANUFACTURER

UBB

BOTTLING/BREWERY

UFP

FOOD PROCESSING

ULA

PACKING PLANT

UM0

MANUFACTURING

UMH

MANUFACTURING - HEAVY

UML

MANUFACTURING - LIGHT

UMP

MANUFACTURING/PROCESSING

UN0

MINING

URJ

RESEARCH & DEVELOPMENT

UW0

WAREHOUSE

UWI

WAREHOUSE - PREFAB

UWN

WAREHOUSE - MINI

UWO

OFFICE/WAREHOUSE

UWP

PROCESSING WAREHOUSE

UWX

WAREHOUSE CONDO

UWZ

WAREHOUSE STORAGE

UX9

LABORATORY/RESEARCH

WUO

WAREHOUSE/OFFICE

X0A

AUDITORIUM

X0F

EXEMPT

XA0

CHARITABLE

XB0

COLLEGE

XBQ

COLLEGE PRIVATE

XBU

COLLEGE/UNIVERSITY

XC0

CHURCH

XCP

COLLEGE - PUBLIC

XDD

DAY CARE CENTER

XE0

HOSPITAL

XEH

CONVALESCENT HOSPITAL

XEP

HOSPITAL - PUBLIC

XEQ

HOSPITAL - PRIVATE

XEV

VETERINARY HOSPITAL

XF0

DORMITORY

XGO

FOREST PARK

XH0

ORPHANAGE

XI0

INSTITUTION

XK0

FRATERNITY

XL0

LIBRARY

XMM

FUNERAL HOME

XMN

NURSING HOME

XQ0

MORTUARY

XQR

MORTUARY/CEMETARY

XR0

RELIGIOUS

XRI

RELIGIOUS EDUCATION

XS0

SCHOOL

XSP

SCHOOL - PUBLIC

XTV

VETERINARY CLINIC

Parking Code#

Type of Parking on the Parcel. Returned by the ParkingCode element.

Code

Description

000

NONE

001

TYPE UNKNOWN

002

UNDEFINED TYPE - 2 CAR GARAGE

003

UNDEFINED TYPE - 3 CAR GARAGE

004

UNDEFINED TYPE - 4 CAR GARAGE

005

UNDEFINED TYPE - 5 CAR GARAGE

006

UNDEFINED TYPE - 6 CAR GARAGE

010

ATTACHED GARAGE/CARPORT

020

ATTACHED BASEMENT GARAGE

030

DETACHED BASEMENT GARAGE

040

DETACHED GARAGE/CARPORT

050

ENCLOSED BRICK GARAGE/CARPORT

060

BASEMENT FINISHED GARAGE

061

FINISHED BASEMENT - 1 CAR GARA

062

FINISHED BASEMENT - 2 CAR

063

FINISHED BASEMENT - 3 CAR GARA

064

FINISHED BASEMENT - 4 CAR GARA

070

FINISHED BUILT IN GARAGE

080

UNFINISHED BASEMENT GARAGE

081

UNFINISHED BASEMENT - 1 CAR GA

082

UNFINISHED BASEMENT - 2 CAR GA

083

UNFINISHED BASEMENT - 3 CAR GA

084

UNFINISHED BASEMENT - 4 CAR GA

090

UNFINISHED BUILT IN GARAGE

100

PREFAB GARAGE

110

BASEMENT GARAGE

111

BASEMENT - 1 CAR GARAGE

112

BASEMENT - 2 CAR GARAGE

113

BASEMENT - 3 CAR GARAGE

114

BASEMENT - 4 CAR GARAGE

115

BASEMENT - 5 CAR GARAGE

116

BASEMENT - 6 CAR GARAGE

120

BUILT-IN GARAGE

121

BUILT IN - 1 CAR GARAGE

122

BUILT IN - 2 CAR GARAGE

130

BUILT UNDER GARAGE

140

GARAGE/CARPORT

150

CINDERBLOCK GARAGE

160

ASBESTOS GARAGE

200

FINISHED ATTACHED MASONRY GARA

210

UNFINISHED ATTACHED MASONRY GA

220

DETACHED MASONRY GARAGE

230

FINISHED DETACHED MASONRY GARA

240

FINISHED MASONRY GARAGE

250

UNFINISHED MASONRY GARAGE

260

MASONRY GARAGE

270

ATTACHED METAL GARAGE

280

DETACHED METAL GARAGE

290

METAL/WOOD GARAGE

300

SALT BOX GARAGE

310

STEEL GARAGE

320

ATTACHED STONE GARAGE

330

DETACHED STONE GARAGE

340

FINISHED STONE GARAGE

350

UNFINISHED STONE GARAGE

360

STONE GARAGE

361

STONE GARAGE - 1 CAR

362

STONE GARAGE - 2 CAR

363

STONE GARAGE - 3 CAR

370

ATTACHED STUCCO GARAGE

380

STUCCO GARAGE

390

VINYL GARAGE

400

ATTACHED WOOD GARAGE

410

DETACHED WOOD GARAGE

420

ATTACHED MASONRY GARAGE

430

UNFINISHED WOOD GARAGE

440

WOOD GARAGE

450

ATTACHED GARAGE

451

ATTACHED - 1 CAR GARAGE

452

ATTACHED - 2 CAR GARAGE

453

ATTACHED - 3 CAR GARAGE

454

ATTACHED - 4 CAR GARAGE

460

ATTACHED FINISHED GARAGE

470

UNFINISHED ATTACHED GARAGE

480

ENCLOSED DETACHED GARAGE

490

DETACHED FINISHED GARAGE

500

UNFINISHED DETACHED GARAGE

501

UNFINISHED DETACHED FRAME GARA

502

UNFINISHED DETACHED MASONRY GA

510

ENCLOSED GARAGE

520

ALUMINUM GARAGE

530

ALUMINUM/WOOD GARAGE

540

DETACHED BLOCK GARAGE

550

UNFINISHED DETACHED BLOCK GARA

560

FINISHED BLOCK GARAGE

570

PREFAB METAL GARAGE

580

BLOCK GARAGE

590

DETACHED BLOCK/FRAME GARAGE

600

WOOD FRAME GARAGE

610

ATTACHED BRICK GARAGE

620

DETACHED BRICK GARAGE

630

DETACHED STUCCO GARAGE

640

UNFINISHED BRICK GARAGE

650

BRICK GARAGE

651

BRICK GARAGE - 1 CAR

652

BRICK GARAGE - 2 CAR

653

BRICK GARAGE - 3 CAR

654

BRICK GARAGE - 4 CAR

660

BRICK/FRAME GARAGE

670

MASONRY/BRICK GARAGE

680

DETACHED BRICK/STONE GARAGE

690

BRICK/STONE GARAGE

701

DETACHED CINDERBLOCK - 1 CAR G

710

CONCRETE GARAGE

716

CONCRETE - 6 CAR GARAGE

720

ATTACHED CONCRETE BLOCK GARAGE

730

DETACHED CONCRETE BLOCK GARAGE

740

FINISHED CONCRETE BLOCK GARAGE

750

UNFINISHED CONCRETE BLOCK GARA

760

CONCRETE BLOCK GARAGE

761

CONCRETE BLOCK GARAGE - 1 CAR

762

CONCRETE BLOCK GARAGE - 2 CAR

763

CONCRETE BLOCK GARAGE - 3 CAR

770

UNFINISHED STUCCO/CONCRETE BLO

780

ATTACHED FRAME GARAGE

790

FINISHED ATTACHED FRAME GARAGE

800

UNFINISHED ATTACHED FRAME GARA

810

DETACHED FRAME GARAGE

820

DETACHED FRAME FINISHED GARAGE

830

ENCLOSED FRAME GARAGE

840

FINISHED FRAME GARAGE

850

UNFINISHED FRAME GARAGE

860

DETACHED FRAME/CONCRETE BLOCK

870

VINYL GARAGE

880

LOG GARAGE

890

VINYL GARAGE

900

FINISHED GARAGE

910

UNFINISHED GARAGE

911

UNFINISHED - 1 CAR GARAGE

912

UNFINISHED - 2 CAR GARAGE

913

UNFINISHED - 3 CAR GARAGE

920

DETACHED GARAGE

921

DETACHED - 1 CAR GARAGE

922

DETACHED - 2 CAR GARAGE

923

DETACHED - 3 CAR GARAGE

924

DETACHED - 4 CAR GARAGE

930

COVERED PARKING/GARAGE

940

DETACHED FINISHED STUCCO GARAG

950

FRAME GARAGE

951

FRAME GARAGE - 1 CAR

952

FRAME GARAGE - 2 CAR

953

FRAME GARAGE - 3 CAR

954

FRAME GARAGE - 4 CAR

960

FRAME/CONCRETE BLOCK GARAGE

971

UNDEFINED TYPE - 1 CAR GARAGE

980

METAL GARAGE

00P

UNDEFINED TYPE

00X

UNDEFINED TYPE - 10 CAR GARAGE

A00

CARPORT

A01

CARPORT - 1 CAR

A02

CARPORT - 2 CAR

A03

CARPORT - 3 CAR

A04

CARPORT - 4 CAR

A05

CARPORT - 5 CAR

A06

CARPORT - 6 CAR

ADP

ADEQUATE CAPACITY

ASP

ASSIGNED SPACES(S)

B00

ATTACHED CARPORT

C00

DETACHED CARPORT

CAP

COVERED/ASSIGNED SPACE(S)

CUP

COVERED/UNASSIGNED SPACE(S)

CVP

COVERED

D00

ENCLOSED CARPORT

DEP

DECK

DGP

DECK/GARAGE

E00

FINISHED DETACHED CARPORT

F00

UNFINISHED DETACHED CARPORT

G00

COVERED CARPORT

GAP

GARAGE/ADEQUATE CAPACITY

H00

UNFINISHED CARPORT

I00

FINISHED CARPORT

J00

MASONRY CARPORT

K00

METAL CARPORT

L00

WOOD CARPORT

M00

ALUMINUM CARPORT

N00

ALUMINUM FRAME CARPORT

O00

ALUMINUM/WOOD CARPORT

OAP

OPEN & ASSIGNED SPACE(S)

OFP

OFF STREET

ONP

ON STREET

OOP

ON & OFF STREET

OSP

OFF SITE

OTP

ON SITE

OUP

OPEN/UNASSIGNED SPACE(S)

P00

CONCRETE CARPORT

PAP

PAVED

Q00

CONCRETE BLOCK CARPORT

R00

FRAME CARPORT

ROP

ROOF

S00

DETACHED GABLE/HIP CARPORT

SBP

SUBTERRANEAN

SCP

SHARED/COMMON

T00

ATTACHED GABLE/HIP CARPORT

U00

DETACHED ALUMINUM CARPORT

UNP

UNCOVERED

V01

DETACHED CARPORT - 1 CAR

V02

DETACHED CARPORT - 2 CAR

WOO

PREFAB CARPORT

Z00

OPEN CARPORT

Pool Code#

Type of Pool. Returned by the PoolCode element.

Code

Description

000

NONE

001

TYPE UNKNOWN

002

2 POOLS

003

3 POOLS

004

4 POOLS

005

5 POOLS

006

6 POOLS

007

7 POOLS

008

8 POOLS

009

9 POOLS

100

POOL/HOT TUB

200

POOL/SAUNA

300

POOL/SPA

400

HOT TUB/SPA

500

SAUNA/SPA

00A

POOL & SAUNA

00B

POOL & BATH HOUSE

00C

POOL & COVER

00D

POOL & DECK

00E

POOL & EQUIP

00F

POOL & FENCE

00H

HEATED

00J

POOL & HOT TUB

00K

POOL & CABANA

00L

POOL HOUSE

00N

POOL & CANOPY

00O

SOLAR HEATED

00P

POOL & PATIO

00R

POOL & BAR

00S

POOL & SPA

00T

POOL & HOT TUB/SPA

00V

POOL & FOUNTAIN

00W

POOL & WATERFALL

00X

MULTIPLE

00Y

POOL & DIVING BOARD

0A0

GRANITE

0B0

BRICK

0C0

CONCRETE

0CB

CONCRETE & BATH HOUSE

0CE

CONCRETE & EQUIPMENT

0CF

CONCRETE & FENCED

0CG

CONCRETE/GUNITE

0F0

FIBERGLASS

0G0

GUNITE

0GC

CONCRETE/GRANITE

0GH

GUNITE HEATED

0GJ

GUNITE & HOT TUB

0GP

GUNITE & PATIO

0GS

GUNITE & SPA

0L0

VINYL/FIBERGLASS

0M0

METAL

0P0

PLASTIC

0R0

PREFAB VINYL

0S0

STEEL/VINYL

0V0

VINYL

0VD

VINYL & DECK

0VP

VINYL & PATIO

A00

ABOVE GROUND

C00

COMMERCIAL

CF0

COMMERICAL FIBERGLASS

D00

ADULT/KIDDIE

E00

ENCLOSED

EG0

ENCLOSED GUNITE

F00

FISH

G00

INGROUND

G0J

INGROUND & HOT TUB

G0S

INGROUND & SPA

GC0

INGROUND CONCRETE

GG0

INGROUND GUNITE

GV0

INGROUND VINYL

H00

IRREGULAR SHAPE

I00

INDOOR

J00

HOT TUB/JACUZZI

J0S

HOT TUB & SPA

K00

KIDDIE/PLAY

KC0

KIDDIE/PLAY POOL - CONCRETE

L00

L SHAPE

LV0

L SHAPE VINYL

M00

SAUNA

N00

LAGOON

O00

OVAL SHAPE

OV0

OVAL SHAPE VINYL

P00

COMMUNITY

Q00

CIRCULAR

S00

SPA

S0D

POOL/SPA & DECK

S0Z

SPA & GAZEBO

SD0

SPA & DECK

T00

BUMPER BOAT

U00

LAP

V00

ARROW SHAPE

W00

WADING

WC0

WADING CONCRETE

Y00

MUNICIPAL

Z00

KIDNEY SHAPE

ZG0

KIDNEY SHAPED GUNITE

ZV0

KIDNEY SHAPE VINYL

Quality Code#

Building Construction Quality. Returned by the QualityCode element.

Code

Description

000

NONE

001

TYPE UNKNOWN

QAV

AVERAGE

QBA

BELOW AVERAGE

QEC

ECONOMICAL

QEX

EXCELLENT

QFA

FAIR

QGO

GOOD

QLO

LOW

QLU

LUXURY

QPO

POOR

Roof Cover Code#

Roof Covering Type. Returned by the RoofCoverCode element.

Code

Description

000

NONE

001

TYPE UNKNOWN

002

ASPHALT SHINGLE

003

BUILT UP

004

ALUMINUM

005

CUSTOM

010

ASBESTOS

011

ASBESTOS SHINGLE

013

COMPOSITION

014

COMPOSITION ROLL

015

COMPOSITION SHINGLE

016

CONCRETE

017

COPPER

018

COPPER/SHINGLE

019

GALVANIZED SHEET METAL

020

GYPSUM

021

METAL SHEETING

022

ROLL

023

SHINGLE

024

SLATE/SLAG

025

TAR & GRAVEL

026

TAR PAPER

027

TILE

028

WOOD

029

WOOD SHAKE

030

WOOD SHAKE/SHINGLE

101

ALUMINUM/SHINGLE

104

ASBESTOS/WOOD

105

ASBESTOS/WOOD/SHINGLE

106

ASPHALT

107

ASPHALT ROLL

109

ASPHALT TILE

110

ASPHALT/COMPOSITION

111

ASPHALT/COMPOSITION SHINGLE

113

BUILT U