Support DESK

Follow

W3.1 – International Address Verify Service Interface

Previous Article matchIT Web Index                   

The following section is a technical reference for the types and methods of the International Address Verify service, available as part of the findITS2AddressService application.  Where self-explanatory, descriptions have been omitted.

InternationalAddressVerifyService

This is the main interface that offers the core address verification functionality.  It contains one single method -

ProcessResult Process(Address address, ProcessOptions processOptions, Processes processes)

This method takes all the information provided in the input parameters, and performs the verification process accordingly.  The return type on this method is a ProcessResult – for more information on this and the input parameters, see the object descriptions below.

Address

This object contains all the information relating to an address that requires verification.  It is passed as the first argument to the Process method.  Its properties are as follows –

 

string AddressStr – This is a comma delimited string of the whole address

string Address1

string Address2

string Address3

string Address4

string Address5

string Address6

string Address7

string Address8

string Address9

string Address10

string Address11

string Address12

string Country

string SuperAdministrativeArea

string AdministrativeArea

string SubAdministrativeArea

string Locality

string DependentLocality

string DoubleDependentLocality

string Thoroughfare

string DependentThoroughfare

string Building

string Premise

string SubBuilding

string PostalCode

string Organization

string PostBox

string Contact

string Function

string Department

string ThoroughfarePreDirection

string ThoroughfareLeadingType

string ThoroughfareName

string ThoroughfareTrailingType

string ThoroughfarePostDirection

string DependentThoroughfarePreDirection

string DependentThoroughfareLeadingType

string DependentThoroughfareName

string DependentThoroughfareTrailingType

string DependentThoroughfarePostDirection

string BuildingLeadingType

string BuildingName

string BuildingTrailingType

string PremiseType

string PremiseNumber

string SubBuildingType

string SubBuildingNumber

string SubBuildingName

string OrganizationName

string OrganizationType

string PostBoxType

string PostBoxNumber

 

Note that the applicability of the above properties will depend on the country that the address is associated with.

ProcessOptions

This object contains the properties that describe all the parameters you want to apply to the Process method – It is passed as the second argument to the method.  The properties are listed below.  Note that if any of the properties are not set, the default value will be used.

string FIS2AddressLineFormattingConfig

Used to specify the custom formatting configuration file for any of the returned address elements.  If left blank, the standard formatting provided by the addressing engine is used.  The name of this property is prefixed with FIS2 as it has been added and implemented at the wrapper level as part of findIT S2, and does not exist in the native addressing API.

string AddressLineSeparator

Used to specify the string which will separate the output address lines within the output Address field (default “<BR>”).

string CasingIgnoreFields

Used to specify the fields that should not be cased. Default “ID,PostalCode,PostalCodePrimary,PostalCodeSecondary,ISO3166-2,ISO3166-3,PostBox,PostBoxNumber,PostBoxType,_L,Latitude,Longitude,GeoAccuracy,GeoDistance,AVC”.

string CertifiedCountryList

Certified option which allows testing of a SERP compliant output for Canada (SERP Recognition still pending).

int ConfidenceThreshold

Used to specify the threshold at which to stop returning parse interpretations, as a percentage of the confidence of the top result. Default 90.

int ContextResultCacheSize

Used to specify how many sets of context results should be cached in memory. This cache is a cost-based cache based on processing time, meaning that the slowest context analyses have their results cached. Default 0. Values up to around 5,000 are relevant, but the memory usage and performance gain will be dependent on the supplied input data.

int ContextCountryCacheSize

Used to specify the number of MRU countries to generate ContextResult caches for. On an unsorted multi-country file a value of around 10 may be relevant, but the memory usage and performance gain will be dependent on the supplied input data.

string CountryFields

Used to specify the comma delimited list of fields to be searched for country information.

string CustomFields

Used to specify the comma delimited list of custom fields to be searched for during the parse process.

int CustomFieldConfidence

Used to specify the confidence to be applied to the recognition of any fields recognized through the CustomFields option.

string DataDirectory

Used to specify the directory in which to find the Global Knowledge Repository.

string DefaultCountry

Used to specify the ISO 3166-1 alpha-3 code which should be used if no identifiable country can be found in an input record.

int FieldNameWeight

Used to specify the default field name weight, between 1 and 255. Default 10. A larger value will give more precedence to the supplied field name, a smaller value will give more precedence to the GKR matches.

string ForceCountry

Used to specify the ISO 3166-1 alpha-3 code which should be used for all input records.

string GeocodeCountryList

Used to specify a comma-delimited list of ISO 3166-1 alpha-3 codes of acceptable countries to geocode. Input records from other countries will not return geocodes. The default is to process data from all countries.

bool IgnoreUnmatched

Allow unmatched input data within the address lines to be ignored during a Search process, meaning that a search can proceed matching only partial input data. Default false.

string LogFileName

Used to specify a filename for debug output.

int MatchScoreAbsoluteThreshold

Used to specify the minimum matchscore a record must reach in the Match process to be taken into account as a candidate for matching. Default value is 60 and the maximum value is 100.

int MatchScoreThresholdFactor

This is a value that is used as a factor of the highest matching result. The resulting value is then used as a cut-off for considering candidates for the results. The higher the value of the factor, the higher the chance of getting a good verification result. Default value is 95 and the maximum value is 100.

int MaxResults

Used to specify the maximum number of results to return in the ProcessResults structure.

int MinimumMatchscore

Used to specify the minimum matchscore a record must reach in order to avoid reversion. Default is 0 (zero), valid values are 0-100.

int MinimumPostcode

Used to specify the minimum postcode status a record must reach in order to avoid reversion. Default is 0 (zero), valid values are 0-8.

int MinimumVerificationLevel

Used to specify the minimum verification level a record must reach in order to avoid reversion. Default is 0 (zero), valid values are 0-5.

bool OutputAddressFormat

Used to specify whether to output an extra field for the Address block fields with the suffix ‘Format’ showing how the hierarchical field positioning has occurred.  Default false.

CasingOptions OutputCasing

Used to specify the letter case to use for output fields. Enum values are ‘Upper’, ‘Title’, ‘Lower’ or ‘UseDefault’. Default ‘Title’ (which is also used when using the Enum val ‘UseDefault’).

string OutputScript

Related to transliteration - Used to specify the ISO 15924 Code in which the output should be encoded, if possible. Alternatively ‘Native’ should be specified to choose the correct country specific script value.  At the time of writing, valid values are  -

 

Latn – Latin (English transliteration wherever possible)

Cyrl – Cyrillic (Russia)

Grek – Greek (Greece)

Hebr – Hebrew (Israel)

Hani – Kanji (Japan)

Hans – Simplified Chinese (China)

Arab – Arabic (United Arab Emirates)

Thai – Thai (Thailand)

Hang – Hangul (South Korea)

Native – Output in the native script wherever possible

int QueryResultCacheSize

Used to specify how many sets of query results should be cached in memory. This cache is a cost-based cache based on query time, meaning that the slowest queries have their results cached. Default 0. Values up to around 5,000 are relevant, but the memory usage and performance gain will be dependent on the supplied input data.

RangeDecoposeOptions RangeDecompose

Used to specify how to expand ranges such as premise numbers and sub building numbers. Valid values are ‘Match’ (returning only the value matching the input query), ‘Range’ (returning a human-readable range, e.g. ’1-9 Odd’), or ‘Full’ (expanding out the range into its constituent numbers, e.g. ’1′, ’2′, ’3′, ’4′, ’5′).  It is also possible to specify ‘UseDefault’.

int ReferenceDatasetCacheSize

Used to specify the number of MRU reference datasets to cache. Default value is 5.

int ReferencePageCacheSize

Used to specify the number of MRU pages to cache from each individual reference dataset. Default value is 12, each page equates to approximately 5Mb of memory use.

string SuppressAdditionFields

Used to specify the list of fields that should not be added to an output result if they do not appear in the input record.

string SuppressAddressFields

Used to specify the list of fields that should be suppressed from the Address field output.

string SuppressFields

Used to specify the list of fields that should be suppressed from the output.

string TransliterationIgnoreFields

Used to specify the fields that should not be transliterated. Default “ID,ISO3166-2,ISO3166-3,_L,Latitude,Longitude,GeoAccuracy,GeoDistance,AVC”.

bool ToolInfo

Specify true to output extra debug information viewable using the getFieldInfo method.

bool UseCustomLexicons

Specify true to force the API to search for custom lexicons (lx__c.lfs files)

bool UseSymbolicTransliteration

Specify false to limit transliteration to complete field phrase matches. Default true.

string VerifyCountryList

Used to specify a comma-delimited list of ISO 3166-1 alpha-3 codes of acceptable countries to process. Input records from other countries will return the unprocessed Address Verification Code ‘U00-U00-P0-000′. The default is to process data from all countries.

string LogInput

Record the process input data to the specified debug log file.

string LogOutput

Record the process output data to the specified debug log file.

Processes

This is an enumeration of processes that are available from the Process method.  The enumeration is a bit field, so in order to combine processes in one call, simply OR the values together as the third argument to the process method.  Note that not all processes can run at the same time.  Values are as follows –

 

Country = 1

Attempts to identify a country from supplied input data.

Parse = 2

Attempts to produce componentised output from fully or partially unstructured address data.

Match = 4

Finds the most closely matching record or records from the relevant reference data source to the supplied componentized input data.

Verify = 16

The Verify process is designed for batch environments, where the desire is to enter address information in address lines, address components or a combination of both and return the cleansed address data. Internally, the Verify process is implemented by running the Country, Parse, Match, and Format processes.

 

Geocode = 64

The Geocode process adds latitude, longitude, and GeoAccuracy where possible; typically used with either Verify or Search.

 

CASS = 512

For outputting CASS verified US addresses.

SERP = 1024

For outputting SERP verified Canadian addresses.

AutoComplete = 2048

For interactive environments where full or partial address data is provided as input and a set of possible matching results is returned as output.

 

Note that, whilst using strongly typed code it is easy to OR these values (such as using the pipe delimiter in .NET), when manually writing a text based SOAP request, the values are ORed simply by leaving a space between them.  For example, using Verify with Geocode in SOAP would be achieved with the following (note the exact format of the nodes below may vary) -

 

<web:processes>Verify Geocode</web:processes>

ProcessResult

This object contains the results of a call to the Process method.  The properties are as follows -

string AccuracyCode

This represents the Address Verification Code (AVC) of a call to the Process method.

List<ProcessResultItem> ResultItems

This property contains a list of results / matches that were found in the call to the process method.  Depending on the Processes submitted as the third argument, and the address data, this list can contain any number of results.  For instance, the ‘Verify’ process will only ever return one single result, whereas the ‘Search’ process can return multiple matches if ambiguities were detected.

ResultStatus Status

This property describes the status of the call to the Process method.  Possible values are -

 

psException

psInvalidInputRecord

psOK

psServerUninitialized

 

In the case of psException, the specific reason for the failure will be contained in the LastError property.

string LastError

This property will contain information about any exceptions that occur in the case of a failure.

ProcessResultItem

This object contains all the information relating to a match found during a call to the Process method.  The information for each field is contained in a ProcessResultItemField object, which is described further below, as is the type of the MachingInfo property, MatchInfo.

 

ProcessResultItemField AVC

ProcessResultItemField AddressStr

ProcessResultItemField Address1

ProcessResultItemField Address2

ProcessResultItemField Address3

ProcessResultItemField Address4

ProcessResultItemField Address5

ProcessResultItemField Address6

ProcessResultItemField Address7

ProcessResultItemField Address8

ProcessResultItemField Address9

ProcessResultItemField Address10

ProcessResultItemField Address11

ProcessResultItemField Address12

ProcessResultItemField DeliveryAddress

ProcessResultItemField DeliveryAddress1

ProcessResultItemField DeliveryAddress2

ProcessResultItemField DeliveryAddress3

ProcessResultItemField DeliveryAddress4

ProcessResultItemField DeliveryAddress5

ProcessResultItemField DeliveryAddress6

ProcessResultItemField DeliveryAddress7

ProcessResultItemField DeliveryAddress8

ProcessResultItemField DeliveryAddress9

ProcessResultItemField DeliveryAddress10

ProcessResultItemField DeliveryAddress11

ProcessResultItemField DeliveryAddress12

ProcessResultItemField Country

ProcessResultItemField CountryName

ProcessResultItemField ISO3166_2

ProcessResultItemField ISO3166_3

ProcessResultItemField ISO3166_N

ProcessResultItemField SuperAdministrativeArea

ProcessResultItemField AdministrativeArea

ProcessResultItemField SubAdministrativeArea

ProcessResultItemField Locality

ProcessResultItemField DependentLocality

ProcessResultItemField DoubleDependentLocality

ProcessResultItemField Thoroughfare

ProcessResultItemField DependentThoroughfare

ProcessResultItemField Building

ProcessResultItemField Premise

ProcessResultItemField SubBuilding

ProcessResultItemField PostalCode

ProcessResultItemField PostalCodePrimary

ProcessResultItemField PostalCodeSecondary

ProcessResultItemField Organization

ProcessResultItemField PostBox

ProcessResultItemField Unmatched

ProcessResultItemField Contact

ProcessResultItemField Function

ProcessResultItemField Department

ProcessResultItemField ThoroughfareType

ProcessResultItemField ThoroughfarePreDirection

ProcessResultItemField ThoroughfareLeadingType

ProcessResultItemField ThoroughfareName

ProcessResultItemField ThoroughfareTrailingType

ProcessResultItemField ThoroughfarePostDirection

ProcessResultItemField DependentThoroughfarePreDirection

ProcessResultItemField DependentThoroughfareLeadingType

ProcessResultItemField DependentThoroughfareName

ProcessResultItemField DependentThoroughfareTrailingType

ProcessResultItemField DependentThoroughfarePostDirection

ProcessResultItemField BuildingLeadingType

ProcessResultItemField BuildingName

ProcessResultItemField BuildingTrailingType

ProcessResultItemField PremiseType

ProcessResultItemField PremiseNumber

ProcessResultItemField SubBuildingType

ProcessResultItemField SubBuildingNumber

ProcessResultItemField SubBuildingName

ProcessResultItemField OrganizationName

ProcessResultItemField OrganizationType

ProcessResultItemField PostBoxType

ProcessResultItemField PostBoxNumber

ProcessResultItemField GeoAccuracy

ProcessResultItemField GeoDistance

ProcessResultItemField Latitude

ProcessResultItemField Longitude

MatchInfo MatchingInfo

FormatInfo FIS2FormattingInfo

 

ProcessResultItemField

This object represents all the information pertaining to a field of a match found in the Process method.  The properties are as follows –

string Name

This property holds the name of the field as a string

string Value

This property holds the value of the field.

int Confidence

This property holds a measure of how confident the match of this particular field is in the matched record.

string Info

This property can contain further information on the matched field.

float MatchScore

This property contains the score achieved for the field in the matched record.

FieldStatus Status

This is a description of the what actions were taken on this field during the process.  Potential values are

 

fsAdded

fsEmpty

fsIdentifiedAlias

fsIdentifiedContext

fsIdentifiedNoChange

fsNotApplicable

fsUnrecognized

fsVerifiedAliasChange

fsVerifiedLargeChange

fsVerifiedNoChange

fsVerifiedSmallChange

MatchInfo

This object represents the match information available for a particular match found during a call to the Process method.  It gives an overall view of the various properties of a match, rather than the individual view shown for each field in the ResultItemField object.  The properties are as follows –

 

int Confidence

int Start

int End

string Type

string Info

float MatchScore

FormatInfo

This object represents the format information available for a particular match found during a call to the Process method.  It gives an indication of whether or not custom formatting was applied, and if so which formatting (file / country) was used.  The properties are as follows –

 

bool CustomFormattingUsed

string FormattingConfigurationName

string FormattingCountryName

string FormattingInfoMessage

 

Previous Article matchIT Web Index  

 

Was this article helpful?
0 out of 0 found this helpful

0 Comments

Please sign in to leave a comment.