Street Address Geocoding

Street address geocoding is the process of determining an estimated latitude and longitude position for the location of a street address, such as "1600 Pennsylvania Avenue NW, Washington, DC 20500." Manifold includes a sophisticated street address geocoding engine, but it must be enabled through the installation of Geocoding Tools and supported by access to an appropriate geocoding data source. Before continuing with this topic, please first read the About Geocoding topic.

 

Street address geocoding within Manifold is mostly used in two situations:

 

§      Adding a latitude and longitude location to each record in a table of addresses. The table then becomes a geocoded table and can easily be copied and pasted as a drawing. Geocoding the street addresses allows us to see where they are located as points in a drawing.

§      Using a street address within interactive commands such as the GoTo command. In that case the street address is "geocoded on the fly" to determine the latitude and longitude location to be used by the command.

 

In addition to the above uses, Manifold street address geocoding facilities are also used within SQL queries and are used by programmers via the Manifold API.

 

Required Geocoding Tools

 

Manifold's street address geocoding capability becomes operational only when the optional Manifold Geocoding Tools package is installed. If you do not have the optional Geocoding Tools package, you will not be able to use street address geocoding functions within Manifold (regardless of the data source used) or take advantage of the Manifold Geocoding Database provided as a free download on the manifold.net site for the United States.

 

Note that Manifold Universal Edition automatically installs the Geocoding Tools package. If you are using Universal Edition, you do not need to perform an extra Geocoding Tools installation as it has already been installed.

 

Required Geocoding Data Sources

 

In addition to installation of Geocoding Tools, the Manifold installation must have access to a geocoding data source. Once enabled by installation of the Geocoding Tools package, Manifold can use a variety of geocoding data sources, including the Manifold Geocoding Database for US streets provided as a free download on the manifold.net site, MapPoint North American or European editions, user-provided geocoding data extensions or Manifold Geocoding Servers accessed through the web.

 

Without a geocoding data source such as the US streets Manifold geocoding database or MapPoint, Manifold's street address geocoding commands cannot function. The Manifold Geocoding Database supports US street address geocoding only. The Microsoft MapPoint North American edition product will allow street address geocoding in the US and Canada, while the European edition of MapPoint will allow street address geocoding in eleven European countries. User-supplied geocoding extensions can cover whatever region the user desires. Web-based servers vary greatly in the regions they cover. See the Geocoding Data Sources topic for information on these sources as well as information on installing the Manifold Geocoding Database provided as a free download on the manifold.net site.

 

Limitations of Street Address Geocoding

 

Unless a special type of geocoding data source is used that provides data in "points of interest" format, the latitude and longitude location created for a given address by Manifold is only an estimate. In all cases, the accuracy of either the estimate or a putatively-precise location made possible by points of interest data sources will be determined by the accuracy and detail of the geocoding data source used. As the famous saying has it, "Garbage in, garbage out."

 

If the data source in use does not include a particular street or does not include information on the address of interest, that address cannot be located. At times addresses in use in the US and other countries will vary considerably from the usual pattern to the degree they cannot be easily cited within a data source.

 

For these and other technical reasons, street address geocoding normally cannot find latitude and longitude locations for all street addresses submitted and the locations which are found will at best be estimates and not exact locations. Street address geocoding using high quality geocoding data sources in urban areas that feature regular address patterns on streets will often result in high hit rates, with over 90% of addresses routinely being located and geocoded to within a few dozen meters of their actual locations. Street address geocoding done in rural areas with irregular address patterns can have abysmally poor hit rates and accuracy unless the geocoding data source is a user-supplied geocoding data extension using points of interest format.

 

Requirements for Records to be Geocoded

 

Manifold can geocode an entire table containing street address records, a process often called "batch street address geocoding" in GIS nomenclature. Records that are to be geocoded must have the following characteristics:

 

§      Standard fields - Each record must include four standard text columns containing street address, city, state and ZIP code. Using Standardize, it is usually possible to fill in missing ZIP codes based on street address, city and state information. The Country field by default uses the United States; however, when geocoding outside of the United States using MapPoint the Country field should be used to specify the country for that address.

§      Well-formed addresses - Address fields cannot contain multi-line values or special characters such as newlines.

§      Complete street addresses - Street address fields should contain the true name of the street. For example, if an address is located on "Johnston Road" the street name should not just be something like "265 Johnston" but should include the full "265 Johnston Road" or include a standard abbreviation for "Road".

§      No extensions - The column containing the street address must contain the street address only without any additional address information such as apartment number or other embellishments (such additional information can be kept in a separate field).

§      Text columns - Columns used for geocoding must be text columns, not numeric columns. Note that many postal codes, such as ZIP codes, have leading "0" characters (with ZIP codes such as "02138") that are significant and will be preserved if a text column is used and lost if a numeric column is used.

§      International addresses - See the Geocoding with MapPoint topic for additional requirements and limitations when geocoding Canadian or European street addresses using MapPoint.

 

When geocoding addresses, most effort will be expended on cleaning addresses and converting those that are in non-standard form into standard form. This is accomplished with the Standardize command. Once addresses have been standardized, we can use the Geocode command to geocode them.

 

The Manifold Geocoding Database or some other geocoding data source must be installed on for either of these commands to function. If a usable geocoding data source has not been installed, neither of these two commands will be enabled.

 

The Standardize and Geocode dialogs are related in how they use the geocoding database and both dialogs use the same Unmatched Records dialog to allow manual adjustments to records that cannot be automatically standardized or geocoded. The Standardize dialog uses the geocoding database to look up valid zip codes, city names, street names and address ranges. It can use that information to identify errors in records and to offer alternatives. The Geocode dialog uses presumably valid address information to determine, if possible, the latitude and longitude location of a specific address.

 

To geocode a table of street addresses:

 

1. Open the table of addresses. If the addresses are not known to be absolutely clean and well formed we should first run Table - Address - Standardize to eliminate common problems.

2. Choose Table - Address - Geocode. Specify the fields that are to be used for the standard geocoding fields of Address, City, State and Zip. Specify which fields are to contain the created latitude and longitude values or let Manifold create new columns for these values. Press OK.

3. Any records that cannot be automatically located in the geocoding database will be presented in the Unmatched Records dialog. This dialog will allow us to edit the record to make corrections. It will present a menu of nearest matches, if any, from which we can quickly choose a desired match.

 

After geocoding the table will contain latitude and longitude columns that will contain the latitude and longitude location of each record.

 

Standardize

 

The Standardize command is used to convert addresses from non-standard forms into the standard form expected by the Manifold geocoder. It has several functions:

 

§      Extract Address, City, State and Zip fields - Given one or more address fields that contain a mix of street address, city, state and Zip code information, the command will attempt to parse the data and (usually) extract information into four newly-created standard Address, City, State and Zip fields. The command can normally extract the main street address from a single address field. For example, if we have a single database field called "Street Address" that contains a string such as "408 Queen Street Suite 35, Causeway Bay, Kansas" Manifold can parse the string to obtain "408 Queen Street" for the Address field.

§      Find missing Zip codes - If a Zip code is not present the command can usually find the missing Zip code or present possible matches for approval.

§      Normalize address nomenclature - If the Normalize addresses box is checked the command will convert address nomenclature into standardized abbreviations, such as "Rd" for "Road," and will convert state names into official postal abbreviations. The command will also correct elementary errors in case, such as converting "1208 HennEssy ROad" to "1208 Hennessy Rd".

§      Check for unknown locations - The command will automatically check for impossible combinations of streets, towns and zip codes, including unknown town names, street names and other clearly inaccurate address data.

 

The Standardize command will process a table and then raise the Unmatched Records dialog to allow editing and selection of proposed matches the system thinks are close to what is intended.

 

Standardize Addresses Dialog Controls

 

generate … using

Specify the columns to be used for standardized address fields and from which column each standardized address should be extracted. Either new columns may be automatically created or existing columns may be used.

Address

Column to be used for the standard field that contains the building number and street name. Choosing [New Column] will add a new column to the table called Address.

City

Column to be used for the standard field that contains the city name. Choosing [New Column] will add a new column to the table called City.

State

Column to be used for the standard field that contains the state name. Choosing [New Column] will add a new column to the table called State.

Zip

Column to be used for the standard field that contains the five-digit postal ZIP code. Choosing [New Column] will add a new column to the table called Zip.

Country

Optional column for country name. The Manifold Geocoding engine recognizes typical variations of country names ("US," "USA," "United States," "The United States of America," and so on). Manifold will use the default country specified in the Tools - Options dialog for Standardize and Geocode operations if there is no Country field.

Status

If desired, add a column that reports the status of a particular record after processing. [None] does not report status. [New Column] will add a new column to the table called Status.

Fail on

Criterion to be used to declare a particular record to be unmatched.

Normalize addresses

Convert address nomenclature into standardized abbreviations, such as "Rd" for "Road," state names into official postal abbreviations. etc.

Skip completed records

Do not process records that already have values in the designated Address, City, State and Zip fields.

 

Fail on Options

 

any error

Does not process record unless it is a perfect match in all fields. Equivalent to setting an "unknown building" error.

unknown street name, possible misspelling

Matches to Zip and City and does not process record unless the street name is an exact match.

unknown street name, no similar names

Matches to Zip and City, and attempts to match to similar street names if an exact match to the street name cannot be found. Uses "Soundex" and similar algorithms to attempt to find the right street in case of a street name misspelling. This is the default setting.

unknown zip

Do not process record if the zip code cannot be found.

critical error

Stop processing only on problems with an incomplete geocoding database or on hardware failure.

 

Status Values

 

When reporting the status of a record's processing in a Status field the following values are used, listed in order of increasing severity:

 

ok

No errors in processing record.

unknown building

The geocoder was able to locate the zip code and the street name, but the street does not appear to contain an address of the given number.

unknown street name, possible misspelling

The geocoder was able to locate the zip code but not the street name; however, the zip code does contain some streets with names similar to the street name.

unknown street name, no similar names

The geocoder was able to locate the zip code but not the street name. The zip code does contain any streets with names similar to the street name.

unknown zip code

The geocoder could not locate the zip code.

critical error

The geocoder could not function due to an incomplete geocoding database, a problem accessing the database or a hardware failure.

 

Search Priority

 

The biggest difficulties encountered when standardizing addresses arise from errors in the address. Addresses may be incomplete, missing zip codes, for example, or they may incorporate typographical or other errors that result in erroneous zip codes, city names, street names and building numbers. At times, cities may be called by local names that are different than those officially recorded by the US government. For example, a small town located North of Boston is called "Manchester," "Manchester-by-the-Sea" and "Manchester by the Sea".

 

Manifold helps deal with such errors by prioritizing searches for standardization and geocoding using the following order of precedence:

 

§      Search by zip code and then search by street name and building number.

§      If the zip code and street can be located but there is no address range on the street that allows the given building number the system will return the data found and will generate a unknown building error.

§      If the zip code can be located but no such street name can be found within that zip code, the system tries to locate streets with similar names. Variations will be scanned for different prefixes (for example, "East" or "West" in combination with the street name), different types ("Road," "Street," "Drive," "Lane," etc.), typical abbreviations and possible misspellings. Finally, the system will search for street names that sound like the one given. If similar street names can be found, the system will return the data found and will generate an unknown street name, possible misspelling error.

§      If the zip code cannot be found or if there are no streets with similar names found, the system tries to located street names (first, by exact matches and then approximate matches) in a wider geographic area, first within the city name given and then within the state name given. It then returns the data found and generates either an unknown street name, no similar names error or unknown zip error depending on whether the search started with a valid zip code or not.

 

The setting used for the Fail on parameter allow Manifold to accept failed address matches up to a given level of severity. For example, the default setting of unknown street name, no similar names for the Fail on parameter will allow Manifold to automatically accept records for which an unknown building or an unknown street name, possible misspelling error would be reported.

 

Geocode

 

The Geocode command takes an address in standard form, finds it in the Manifold Geocoding Database and then produces latitude and longitude values for the location of the address. Addresses to be geocoded must include the four standard Address, City, State and Zip fields.

 

Records that cannot be located within the error level specified by the Fail on parameter will be reported in an Unmatched Records dialog to allow editing and selection of proposed matches the system determines may be the correct locations. If a particular address cannot be located on a street, the system will report "Building not found" and will offer a match to the address. Choosing that match will choose a location for the address that is at the midpoint of the street segment for the street of that name.

 

Records that cannot be geocoded at all, even after manual intervention, will have zero values for latitude and longitude. When the table is copied and pasted as a drawing these records will be ignored if the Skip zero latitude / longitude records option is checked (the default setting) in the Paste As Drawing dialog.

 

If an address cannot be found in the available street address ranges for a specific street the command will choose a point near the middle of the street segment.

 

Geocode Addresses Dialog Controls

 

generate … using

Specify the columns to be used for Longitude and Latitude, Status and Match type fields, and which columns in the table should be used for the standardized Address, City, State, and Zip fields.

Longitude

Table column to be used for the longitude of geocoded record. Contains 0 if the record was not geocoded. Use [New Column] to automatically create a new column called Longitude.

Latitude

Table column to be used for the latitude of geocoded record. Contains 0 if the record was not geocoded. Use [New Column] to automatically create a new column called Latitude.

Status

If desired, add a column that reports the status of a particular record after processing. [None] does not report status, [New Column] will add a new column to the table called Status.

Match type

If desired, add a column that reports the geocoding match type of a particular record after processing. [None] does not report match type, [New Column] will add a new column to the table called Match type.

Fail on

Criterion to be used to declare a particular record to be unmatched.

Offset Locations by

Offset the location for each geocoded record by the given number of units from the street line, to the left or right side of the street based on whether the address was found in the left or right range.

Skip completed records

Do not process records that already have values in the designated Address, City, State and Zip fields.

 

Fail on Options

 

any error

Does not process record unless it is a perfect match in all fields. Equivalent to setting an "unknown building" error.

unknown street name, possible misspelling

Matches to Zip and City and does not process record unless the street name is an exact match.

unknown street name, no similar names

Matches to Zip and City, and attempts to match to similar street names if an exact match to the street name cannot be found. Uses "Soundex" and similar algorithms to attempt to find the right street in case of a street name misspelling. This is the default setting.

unknown zip

Do not process record if the zip code cannot be found.

critical error

Stop processing only on problems with an incomplete geocoding database or on hardware failure.

 

Match type Values

 

When reporting the status of a record's processing in a Match Type field the following values are used, listed in order from most precise to least precise:

 

building

The zip code, street name and building number were used to identify a location at the building's number.

street

The zip code and acceptable street name were found but not the building's number so the location has been placed at the center of the bounding box for the street.

zip

Only a zip code was used so the location has been placed at the center of the bounding box for the zip code.

city

Only the city name was used so the location has been placed at the center of the bounding box for the zip code.

(empty string)

The record could not be geocoded and values of 0 have been written into both Latitude and Longitude.

 

Selections

 

Both the Standardize and the Geocode commands are auto-scoped: if a selection is present in the table they will operate only on the selected records.

 

Example

 

images\eg_geocode_01.gif

 

Suppose we have a table like that above, which contains two text fields: a Name field and a Street Address field. The table lists a few sushi restaurants near the USGS facility in Menlo Park, California. To geocode this table we must first standardize the addresses it contains using the Standardize command by choosing Table - Address - Standardize.

 

images\eg_geocode_02.gif

 

The Standardize Addresses dialog allows us to designate which fields will be used as sources to generate the five standard Address, City, State, Zip and Country fields and which existing fields, if desired, will host the four standard fields. We choose Street Address as the source for the new fields and [New Column] for each new field to be generated, so that a new column is created for each. Note: We will have to explicitly choose [New Column] for the Address column, since Manifold will by default the Street Address column into that field since it has "Address" in the name of the field and Manifold will guess that we might want to use it.

 

images\eg_geocode_03.gif

 

The result is that five new columns, Address, City, State, Zip and Country, have been created in the table and the relevant parts for each record have been extracted from the Street Address column and placed in the new columns.

 

images\eg_geocode_04a.gif

 

Let's hide the Street Address column to reduce the size of the illustrations. We also hide the Country field since we don't need an explicit reminder that these locations are in the United States. That makes the table smaller but the Address and City fields look ugly all in capital letters. We can convert them to title case by using the Make Title Case operator in the transform toolbar for the Address and City columns.

 

images\eg_geocode_04.gif

 

That's better. Manifold will happily geocode whether or not columns contain all upper case letters so the above step is not necessary. But using title case makes the table more legible to humans so that's what we prefer to use. The table above is now in standard form so we can geocode it using Table - Address - Geocode.

 

images\eg_geocode_05.gif

 

The Geocode Addresses dialog allows us to choose which columns will be used for the four standard fields used by the Manifold geocoder. Even though the Country column is not visible, Manifold knows it is still in the table and can use it. Even if we did not have an explicit Country column Manifold would know to use the default country set in the Tools - Options dialog. We can also choose which columns will receive the generated latitude and longitude locations.

 

The Offset locations by checkbox will automatically position geocoded points to the left or right side of a street based on which side of the street that address falls on (according to the geocoding database). The distance and units boxes allow us to choose how far from the street centerline the geocoded points will be offset. The default offset is 50 feet.

 

The Skip completed records checkbox tells the dialog to ignore records that already contain data in the target fields.

 

images\eg_geocode_06.gif

 

If all records can be matched by the geocoder the result will be the addition of two new columns to the table called Latitude and Longitude that contain the latitude and longitude locations for each address. The table is now a geocoded table and can be copied and pasted as a drawing.

 

images\eg_geocode_07.gif

 

If we copy the table and paste it as a drawing, we can drag and drop the drawing into a map created from a drawing of roads in the Menlo Park and Palo Alto area. The points have been formatted as bright green dots.

 

The Unmatched Records Dialog

 

The Unmatched Records dialog is used with both the Standardize and the Geocode commands. In both cases, records that cannot be correctly standardized or geocoded are presented one by one within the Unmatched Records dialog to allow users to deal with each record on a case-by-case basis.

 

The dialog presents the address record being processed in editable boxes for Address, City, State and Zip fields. A list of possible alternatives found in the geocoding database is presented in a Found pane. We can edit the fields manually or, if we see a match that we like in the Found pane we can click on it to highlight the match and load it into the edit boxes in the dialog. Pressing Accept will save the values from the edit boxes into the record in the table, including the latitude and longitude in the case of the Geocode command.

 

If desired (say in the case of an obvious typographical error in the name of a street) we can edit the values in the Address, City, State and Zip edit boxes and then press Look Up to direct the system to check the new values against the geocoding database to see if they can be located. If the location is found we can press Accept to accept the geocoding for the edited address and to write the edited address values back into the table for that record. If we would like to go back to the previous set of values, before editing, we can press the Previous button.

 

If we would like to skip this record and continue with other unmatched records, we press the Skip button.

 

Unmatched Record Dialog Controls

 

Record

Current record as it has been read from the table. A read-only edit box that can be used with Copy.

Address

Address value now in use.

City

City value now in use.

State

State value now in use.

Zip

Zip value now in use.

(result)

Result of last Look Up operation.

Found pane

A list of possible matches found in the geocoding database. Clicking on one of the matches will load it into the edit boxes. Double-clicking on one of the matches will load it and immediately Accept it as well and move on to the next record.

Accept

Accept the current values in the edit boxes. Click on one of the choices in the Found pane and then choose Accept. This updates the table with specified values, replacing the current values of the record.

Look Up

Look up the current address in the edit boxes in the geocoding database. When used with Standardize, this checks the possible validity of the address. When used with Geocode, this looks up the location of the address.

Previous

Reload the previous values for this address into the edit box. Enabled if the address has been edited, either by choosing a possible match in the Found pane or by manually editing the address.

Skip

Skip this record and continue with other unmatched records.

Close

Skip this and all remaining unmatched records. Note that any Accept commands that have been issued for any unmatched records before a Close command will have already updated the table. Close is not the same as a Cancel of all changes made in this session with the Unmatched Records dialog.

 

The Unmatched Records dialog has keyboard accelerators for the Accept, Look Up, Previous, Skip and Close commands bound to ALT E, L, P, K and O keys. Pressing ALT-E is the same as clicking Accept. Using keyboard accelerators can help deal with very long lists of unmatched records.

 

Skipping Unmatched Records when Creating Drawings

 

The results of the Geocode command are latitude and longitude values for each record that was successfully geocoded. Unmatched records that were skipped will have 0 values for their latitudes and longitudes. When copying a table that contains unmatched records and pasting it as a drawing, make sure the Skip zero latitude / longitude records checkbox is checked in the Paste As Drawing dialog. This will make sure that the unmatched records having 0 values for their latitudes and longitudes are not pasted as a cluster of points off the coast of Africa.

 

Geocoding SQL Extensions

 

Manifold SQL includes geocoding extensions that operate with Manifold's geocoding engine to perform spatial operations based upon an address string or zip code. Geocoding extensions will not work unless the US streets geocoding database is correctly installed. Geocoding extensions will not work with Manifold IMS unless the US streets geocoding database is installed within the Manifold application installation folder (normally, C:\Program Files\Manifold System). Therefore, the US streets geocoding database should be installed in the Manifold application installation folder on machines on which Manifold IMS operates.

 

Boolean CloseToAddress(Number ID, String Address, Number Distance, [String Unit])

 

Given an object ID, an address string, a distance and an optional distance unit determine if the object lies within the specified distance of the address.

 

Boolean CloseToZip(Number ID, String Zip, Number Distance, [String Unit])

 

Given an object ID, a ZIP code string, a distance and an optional distance unit determine if the object lies within the specified distance of the zip code centroid.

 

Number DistanceToAddress(Number ID, String Address, [String Unit])

 

Given an object ID, an address string, and an optional distance unit computes the distance between the object and the address.

 

Number DistanceToZip(Number ID, String Zip, [String Unit])

 

Given an object ID, a ZIP code string, and an optional distance unit computes the distance between the object and the zip code centroid.

 

Notes on usage:

 

§      If an object is a line or an area the object's centroid is used for distance calculations.

§      If an address string produces more than one match, the system automatically selects the closest of the building-level matches (possibly with an "unknown street name, possible misspelling" error).

§      If an address string produces no building-level matches, CloseToAddress returns False and DistanceToAddress returns -1.

§      If the optional distance unit is omitted, the system will use the native measurement unit of the drawing or meters if the drawing is not projected.

§      Distances are great circle distances computed over a WGS84 ellipsoid and are accurate to 1 meter.

§      The geocoding functions cache returned geocoding data between subsequent calls.

§      Functions can be used from IMS as long as the geocoding database is located within the Manifold application installation folder (usually C:\Program Files\Manifold System).

 

Geocoding Function Examples

 

SELECT * FROM Dealers

WHERE CloseToAddress(ID, "330 Lytton Ave, Palo Alto, CA, 94301", 10, "mi")

 

SELECT * FROM Dealers

WHERE DistanceToAddress(ID, "330 Lytton Ave, Palo Alto, CA, 94301", "mi") <= 10

 

SELECT * FROM Dealers

WHERE CloseToZip(ID, "94301", 10, "mi")

 

SELECT * FROM Dealers

WHERE DistanceToZip(ID, "94301", "mi") <= 10

 

All four examples have a similar function. The first query selects all objects in Dealers that are within 10 miles of the given address using the CloseToAddress function, while the second example performs the same task using the DistanceToAddress function. The third and fourth examples perform the same functions using the 94301 ZIP code.

 

To keep the user interface simple and to avoid the complication of dealing with possible user errors when entering address information into forms, many web applications with IMS will use the CloseToZip or DistanceToZip functions since these require the user to merely enter the ZIP code correctly. For many applications, such as locating a dealer, finding the closest objects to the ZIP centroid provides acceptable accuracy.

 

See the Units topic for a list of unit abbreviations that may be used to specify optional distance units.

 

GoTo Extensions

 

When the US street address Manifold Geocoding Database is installed, the Edit - GoTo command will allow a GoTo to an Address or to a Zip code within the US. The address may be a full street address, or it may be a partial address, such as "Atlanta" or "Atlanta, GA" or "GA." Manifold includes a gazetteer of large city names so that "Atlanta" will find the large city in Georgia and not one of the various small towns of that name throughout the US. City names will take priority over states when spelled out, so that "Washington" will find the capital city of the US and not the state. To find the state, use "WA."

 

Accuracy

 

The accuracy of the Manifold geocoder depends almost entirely upon the accuracy of the US streets geocoding database it uses. The Manifold Geocoding Database uses address data extracted from the US Bureau of the Census TIGER/Line data set. Although TIGER/Line is the federal standard for address accuracy used to support the Constitutional requirement of a census that counts every citizen, even this mammoth data set does not accurately capture all possible addresses in the US. Although TIGER/Line is updated every few years using a network of many Census Bureau field offices it does not capture address exceptions nor does it provide a satisfying level of geospatial accuracy in rural areas.

 

A further limitation of TIGER/Line is that due to constant churning of zip codes by the US Postal Service it is possible (although very rare) that a zip code for a valid geographic location might not be matched. A more frequent problem is the appearance of zip codes within address records that are abstract zip codes (such as those assigned to some ships in the US Navy) that do not correspond to a geographical location within the United States.

 

If a street address cannot be found within the Manifold Geocoding Database, resulting in an unmatched record with no options presented, the user has several choices to deal with the unmatched address:

 

§      Accept a zip code only match, if the zip code exists.

§      Ignore the address.

§      Manually create a point for the address in a drawing, if local knowledge is available.

§      Use a geocoding system from another vendor to locate the address, and manually add latitude and longitude values to the geocoded table for that address record.

 

When using the geocoder for demographic or marketing studies it is usually safe to ignore unmatched addresses because addresses that can not be found in TIGER/Line are usually randomly dispersed. After all, if within a sample of 10,000 addresses one can obtain 90% geocoding without any effort to identify unmatched records the 9,000 data points thus obtained will normally be highly representative of the characteristics of the overall data set. For some applications, of course, achieving a match for every record may be a sufficiently important objective to merit a significant amount of time working with the Unmatched Records dialog or manual geocoding or use of a different geocoder.

 

Troubleshooting

 

If the geocoder does not work, check the following:

 

§      Either the Manifold Geocoding Database or MapPoint or some other geocoding data source has been installed.

§      All state files required are present (that is, required files have not been removed after installation).

§      The Geocoding Database folder in the Tools - Options - File Locations correctly specifies the folder used to install the geocoding database. By default, this location is C:\Program Files\Manifold System\GCDB.

§      If Manifold has been installed in a different folder than the default and if geocoding functions do not work within IMS, check that the geocoding database has been installed within the main Manifold installation folder, such as in the default path above.

§      Are all columns used for addresses text columns?

§      If MapPoint has also been installed, make sure the Use MapPoint option has been checked.

 

If an address cannot be located, check the following:

 

§      The address is correct. Nowhere is the ancient maxim of computing, "Garbage in, garbage out" more correct than in street address geocoding.

§      The address does not contain secondary address information, such as "Apartment 20" co-mingled with the primary street address field.

§      The address is a real street address and is not a virtual address, such as a Post Office box address (which, of course, can only be geocoded to a zip code).

§      Try manually breaking up a single line address into street, city, state and zip fields.

§      If the zip code cannot be found, check the zip code against the US Postal Service's website to make sure it is a valid zip code.

§      If MapPoint has also been installed, make sure the Use MapPoint as… option has been checked in the Tools - Options - Geocoding dialog.

 

See Also

 

About Geocoding

Geocoding Data Sources

Geocoding with MapPoint

Geocoding Extensions

Geocoding Data Extensions