The process of geocoding turns a textual representation of a place or address into a map representation of its location. Geocoding allows you to find and display addresses on a map and see how they relate to surrounding features. Sometimes you can see relationships by reviewing the map; other times, you can use spatial analysis tools to reveal information that can't be easily seen. The work of geocoding is done by a service called a locator.
Locators help users find addresses, places of interest, parcels, and other assets. In ArcGIS Enterprise, locators are powered by geocode services. They support a wide range of applications, from business and customer management, to shipping and distribution, to directions and navigation. A locator should be able to efficiently geocode locations in the area of interest, either from a single query (as the address bar in a mobile app) or a batch query (as when a table file is geocoded into a feature class).
There are many commercially available locators and geocode services, such as the ArcGIS World Geocoding Service. But these locators may not meet your organization's needs, and they don't provide the flexibility of creating a locator using the asset and address data your organization collects and manages.
By investing the time to build your own locator, you can ensure that your geocoding needs are met. For example, a local utility company can build a locator using its collection of smart meters within a municipality, geocoding each meter to plan routes for its meter readers.
You can create your own locator in ArcGIS Pro.
If you are working in ArcGIS Pro, you can share the custom locator to ArcGIS Enterprise portal, which will also publish a geocode service to its federated ArcGIS Server site. Additionally, you can publish a geocode service to a stand-alone ArcGIS Server site starting at ArcGIS Pro 2.4.
Once the locator or geocode service are in your ArcGIS Enterprise deployment, you can use them in client applications, including Map Viewer Classic and ArcGIS Web AppBuilder.
Creating a locator
The locator is the main tool for geocoding in ArcGIS. It contains all the data and settings necessary to transform addresses and other text strings into map locations. Building your own locator will require you to do the following:
- Define the purpose of the locator, and the format and resolution of the entries it will be geocoding. Will your locator's users enter only a city name or a postal code, or will they provide a complete postal address? Will they want to locate a specific building, a certain block, or the centroid of an area? Might two users have different names or addresses for the same location?
- Provide your reference data. This data must cover the area of interest for your locator and have an appropriate resolution, so that the locator is useful for the purposes you've defined. You may have multiple sets of reference data—one set of primary addresses and additional sets of potential aliases for those locations.
- Align the fields in your reference data, so that the locator knows which field refers to postal code, which refers to house number, and so on. This process is called field mapping; in some cases, it can be done automatically by the software.
- Create and save your locator in the .loc format, and prepare it to be published or shared to the web.
For step-by-step instructions, see Create a locator in ArcGIS Pro.
Locators should be stored in a file folder so you take advantage of new features that are not supported for locators stored in geodatabases, such as performance improvements, multithreading capabilities, and suggestions support. ArcGIS 10.4 was the last release to support storing locators in geodatabases.
ArcGIS Enterprise 10.9.1 is the last version at which publishing locators created with the Create Address Locator geoprocessing tool will be supported.
A multirole locator consists of multiple reference data layers and locator roles. The multirole locator can be used to combine multiple data layers with different geometry types from many sources and multiple locator roles into a single locator. This allows you to have a single locator that can search for rooftop locations, interpolated street locations, points of interest, postal codes, and administrative areas. Creating a multirole locator reduces redundant information and candidates, which can be beneficial for performance and reducing the size of the locator on disk.
The composite locator can be used to combine locators from many sources into a single locator. Using a composite locator allows you to geocode so that addresses can be matched against multiple locators based on data from different sources at once to increase the geocoding accuracy of the matched results. The composite locator can fall back to another locator to increase the probability of finding the best match. For example, the composite locator contains locators based on building rooftops and street centerlines, but when the address is not found by the rooftop locator, it will fall back to the street locator for the next best match. You can modify the fallback order or result order of the composite locator on the Locator Properties dialog box in ArcGIS Pro. The composite locator stores references to the participating locators but does not contain the actual address information, indexes, and reference data of the individual locators.
When you publish or share a composite locator, you must specify for all its data to be copied, rather than registering the data source. If the participating locators are stored in a folder that is registered with the server, only the composite locator, not the participating locators, will be copied to the server.
You can create composite locators in ArcGIS Pro. For more information, see Combine multiple locators into a composite locator in ArcGIS Pro.
Sharing your locator
When your locator is complete, you can share it with ArcGIS Enterprise.
There are three main options for sharing locators from ArcGIS Pro:
- You can share a locator from ArcGIS Pro to an ArcGIS Enterprise portal as a hosted service. Users can access the locator from your portal if the hosted service has been shared with them. This requires an ArcGIS GIS Server site federated with the portal.
- From ArcGIS Pro starting at version 2.4, you can publish a locator as a geocode service directly to ArcGIS Server sites at versions 10.6 and later. This does not require that the server be federated with a portal.
- You can also share a locator in a locator package (.gcpk) or a mobile map package (.mmpk) for use in disconnected environments using ArcGIS Pro.
Geocode service operations
Geocode services have built-in operations that allow you to perform geocoding and reverse geocoding, and to generate suggestions. Geocoding refers to the process of finding a geographic location from an address; reverse geocoding refers to the process of finding the nearest address to a geographic location; suggestions are autocompleted addresses generated for partial input strings. When sharing a locator, the Geocode and Reverse Geocode operations are enabled by default. The Suggest operation is enabled by default, and is only available when suggestions are enabled for the source address locator. You can enable or disable any one of these operations by accessing the Capabilities tab of the Service Editor in ArcGIS Server Manager.
Using a geocode service
For the portal to use your custom locator as its default locator, you can designate it as the portal's geocoding service.
In its basic form, the geocode service is a web service that takes in an address and returns the corresponding location coordinates. You can see the geocode service's REST URL if you browse to the service with the ArcGIS Server Services Directory. The URL looks like this: