com.esri.arcgis.location
Class AGSAddressLocator

java.lang.Object
  extended by com.esri.arcgis.location.AGSAddressLocator
All Implemented Interfaces:
ILocator, ILocatorDataset, com.esri.arcgis.interop.RemoteObjRef, IAddressCandidates, IAddressGeocoding, IAddressInputs, IAdvancedGeocoding, IAdvancedIntersectionGeocoding, IGeocodingProperties, IIntersectionGeocoding, IPlaceNameAlias, IReverseGeocoding, IReverseGeocodingProperties, IClone, ISupportErrorInfo, Serializable

public class AGSAddressLocator
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, IClone, ILocatorDataset, ILocator, IAddressInputs, IGeocodingProperties, IAddressGeocoding, IAdvancedGeocoding, IIntersectionGeocoding, IAdvancedIntersectionGeocoding, IAddressCandidates, IPlaceNameAlias, ISupportErrorInfo, IReverseGeocodingProperties, IReverseGeocoding

A locator adaptor for the GeocodeServer proxies.

Description

An AGSAddressLocator is a locator that uses a GeocodeServer over a LAN or over the Internet to geocode addresses.

Remarks

There are certain restrictions on the use of AGSAddressLocators that do not apply to other types of locators.

AGSAddressLocators are retrieved from an AGSLocatorWorkspace, which represents the collection of GeocodeServers made available by an instance of an ArcGIS Server. AGSAddressLocators cannot be added to an AGSLocatorWorkspace, or to any other type of LocatorWorkspace, using ArcObjects. Use the ServerObjectAdmin class to create new instances of GeocodeServers that can be retrieved from an AGSLocatorWorkspace.

GeocodeServers cannot be modified by their clients, so modifying certain writeable properties on interfaces supported by AGSAddressLocators is not supported. These properties are:

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

See Also:
IEnumServerObjectType, ServerObjectType, AGSLocatorWorkspace, IEnumServerObjectTypeInfo, GeocodeServer, ServerObjectConfiguration, ILocatorManager2.getAGSLocatorWorkspace(com.esri.arcgis.gisclient.IAGSServerConnectionName), ServerObject, ILocatorWorkspaceName2.getAGSServerConnectionName(), ServerMachine, AGSAddressLocator, ServerObjectAdmin, Serialized Form

Constructor Summary
AGSAddressLocator(Object obj)
          Construct a AGSAddressLocator using a reference to such an object returned from ArcGIS Engine or Server.
 
Method Summary
 void assign(IClone src)
          Assigns the properties of src to the receiver.
 boolean equals(Object o)
          Compare this object with another
 IClone esri_clone()
          Clones the receiver and assigns the result to *clone.
 IArray findAddressCandidates(IPropertySet address)
          Generates candidates for an address.
 IArray findStandardizedAddressCandidates(IPropertySet standardizedAddress)
          Generates candidates for a standardized address.
 IArray findStandardizedIntersectionCandidates(IPropertySet standardizedIntersection)
          Generates candidates for a standardized intersection.
 IFields getAddressFields()
          Fields needed to geocode a table of addresses.
 String getAliasField()
          Name of the alias field.
 IFields getCandidateFields()
          Fields contained in a list of candidates.
 String getCategory()
          Category of the locator.
 Object getDefaultAliasFieldNames()
          Recognized names for the address fields in the place name alias table.
 Object getDefaultInputFieldNames(String addressField)
          Recognized names for an input field.
 String getDescription()
          Description of the locator.
 int getEndOffset()
          End offset percentage.
 ILocatorName getFullName()
          The Name object for the locator.
 IFields getIntersectionCandidateFields()
          Fields contained by intersection candidates.
 String getIntersectionConnectors()
          Connector strings used to designate intersections.
 ILocatorWorkspace getLocatorWorkspace()
          The locator workspace that contains the locator.
 IFields getMatchFields()
          Fields contained in the geocoding result.
 int getMinimumCandidateScore()
          Minimum candidate score setting.
 int getMinimumMatchScore()
          Minimum match score setting.
 String getName()
          Name of the locator.
 double getSearchDistance()
          Search distance.
 int getSearchDistanceUnits()
          Units used for the search distance.
 double getSideOffset()
          Side offset distance.
 int getSideOffsetUnits()
          Units used for the side offset.
 int getSpellingSensitivity()
          Spelling sensitivity setting.
 IFields getStandardizeFields()
          Fields contained in a standardized address.
 IFields getStandardizeIntersectionFields()
          Fields contained in a standardized intersection.
 ITableName getTable()
          Name object for the place name alias table.
 ILocatorUI getUserInterface()
          User interface for the locator.
 int hashCode()
          the hashcode for this object
 void interfaceSupportsErrorInfo(GUID riid)
          interfaceSupportsErrorInfo
 String IPlaceNameAlias_getAddressFields()
          Names of the address fields.
 boolean isAddPercentAlongToMatchFields()
          Indicates if the percentage along the reference feature at which the address is located is included in the geocoding result.
 boolean isAddReferenceIDToMatchFields()
          Indicates if the feature ID of the matched feature is included in the geocoding result.
 boolean isAddStandardizeStringToMatchFields()
          Indicates if the standardized address is included in the geocoding result.
 boolean isAddXYCoordsToMatchFields()
          Indicates if the x and y coordinates of the address location are included in the geocoding result.
 boolean isEqual(IClone other)
          Returns TRUE when the receiver and other have the same properties.
 boolean isIdentical(IClone other)
          Returns TRUE when the receiver and other are the same object.
 boolean isIntersection(IPropertySet address)
          Indicates if an address is an intersection.
 boolean isMatchIfScoresTie()
          Indicates whether addresses should be arbitrarily matched to a feature when two or more features have the same best score.
 boolean isUseRelativePaths()
          Indicates if the paths to the reference data should be stored relative to the locator.
 IPropertySet matchAddress(IPropertySet address)
          Geocodes a single address.
 IPropertySet matchStandardizedAddress(IPropertySet standardizedAddress)
          Geocodes a single standardized address.
 IPropertySet matchStandardizedIntersection(IPropertySet standardizedIntersection)
          Geocodes a single standardized intersection.
 void matchTable(ITable addressTable, String addressFieldNames, String whereClause, IFeatureClass outputFeatureClass, String outputFieldNames, IPropertySet fieldsToCopy, ITrackCancel cancelTracker)
          Geocodes a table of addresses.
 void rematchTable(ITable pInputTable, String inputFieldNames, String inputJoinFieldName, IFeatureClass resultTable, String outputFieldNames, String outputJoinFieldName, String whereClause, ITrackCancel cancelTracker)
          Rematches a geocoded feature class or shapefile.
 IPropertySet reverseGeocode(IPoint location, boolean bReturnIntersection)
          Generate an address based on a point.
 void setAddPercentAlongToMatchFields(boolean bAddPercentAlongToMatchFields)
          Indicates if the percentage along the reference feature at which the address is located is included in the geocoding result.
 void setAddReferenceIDToMatchFields(boolean bAddReferenceIDToMatchFields)
          Indicates if the feature ID of the matched feature is included in the geocoding result.
 void setAddressFields(String fieldList)
          Names of the address fields.
 void setAddStandardizeStringToMatchFields(boolean bAddStandardizeStringToMatchFields)
          Indicates if the standardized address is included in the geocoding result.
 void setAddXYCoordsToMatchFields(boolean bAddXYCoordsToMatchFields)
          Indicates if the x and y coordinates of the address location are included in the geocoding result.
 void setAliasField(String name)
          Name of the alias field.
 void setDefaultAliasFieldNames(Object names)
          Recognized names for the address fields in the place name alias table.
 void setDefaultInputFieldNames(String addressField, Object rhs2)
          Recognized names for a required input field.
 void setDescription(String description)
          Description of the locator.
 void setEndOffset(int endOffset)
          End offset percentage.
 void setIntersectionConnectors(String intersectionConnectors)
          Connector strings used to designate intersections.
 void setMatchIfScoresTie(boolean bMatchIfScoresTie)
          Indicates whether addresses should be arbitrarily matched to a feature when two or more features have the same best score.
 void setMinimumCandidateScore(int minimumCandidateScore)
          Minimum candidate score setting.
 void setMinimumMatchScore(int minimumMatchScore)
          Minimum match score setting.
 void setSearchDistance(double searchDistance)
          Search distance.
 void setSearchDistanceUnits(int searchDistanceUnits)
          Units used for the search distance.
 void setSideOffset(double sideOffset)
          Side offset distance.
 void setSideOffsetUnits(int sideOffsetUnits)
          Units used for the side offset.
 void setSpellingSensitivity(int spellingSensitivity)
          Spelling sensitivity setting.
 void setTableByRef(ITableName name)
          Name object for the place name alias table.
 void setUseRelativePaths(boolean bUseRelativePaths)
          Indicates if the paths to the reference data should be stored relative to the locator.
 IPropertySet standardizeAddress(IPropertySet address, boolean[] isAnIntersection)
          Standardizes an address.
 void validate()
          Checks that the locator properties and locator dataset are present and valid.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.esri.arcgis.interop.RemoteObjRef
getJintegraDispatch, release
 

Constructor Detail

AGSAddressLocator

public AGSAddressLocator(Object obj)
                  throws IOException
Construct a AGSAddressLocator using a reference to such an object returned from ArcGIS Engine or Server. This is semantically equivalent to casting obj to AGSAddressLocator.
Casting to this class from the return value of a method will not work, as this class represents an abstract class in ArcObjects.
*
AGSAddressLocator o = (AGSAddressLocator)obj; // will not work

AGSAddressLocator o = new AGSAddressLocator(obj); // Use this constructor instead
* @param obj an object returned from ArcGIS Engine or Server

Throws:
IOException - if there are interop problems AGSAddressLocator theAGSAddressLocator = (AGSAddressLocator) obj;
Method Detail

equals

public boolean equals(Object o)
Compare this object with another

Overrides:
equals in class Object

hashCode

public int hashCode()
the hashcode for this object

Overrides:
hashCode in class Object

esri_clone

public IClone esri_clone()
                  throws IOException,
                         AutomationException
Clones the receiver and assigns the result to *clone.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
esri_clone in interface IClone
Returns:
A reference to a com.esri.arcgis.system.IClone
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

assign

public void assign(IClone src)
            throws IOException,
                   AutomationException
Assigns the properties of src to the receiver.

Description

Use Assign method to assign the properties of source object to receiver object. Both objects need to have the same CLSIDs. Both source and receiver objects need to be instantiated.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
assign in interface IClone
Parameters:
src - A reference to a com.esri.arcgis.system.IClone (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isEqual

public boolean isEqual(IClone other)
                throws IOException,
                       AutomationException
Returns TRUE when the receiver and other have the same properties.

Description

IsEqual returns True if the receiver and the source have the same properties. Note, this does not imply that the receiver and the source reference the same object.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isEqual in interface IClone
Parameters:
other - A reference to a com.esri.arcgis.system.IClone (in)
Returns:
The equal
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isIdentical

public boolean isIdentical(IClone other)
                    throws IOException,
                           AutomationException
Returns TRUE when the receiver and other are the same object.

Description

IsIdentical returns true if the receiver and the source reference the same object.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isIdentical in interface IClone
Parameters:
other - A reference to a com.esri.arcgis.system.IClone (in)
Returns:
The identical
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getFullName

public ILocatorName getFullName()
                         throws IOException,
                                AutomationException
The Name object for the locator.

Description

Returns a reference to a LocatorName object that represents the locator.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getFullName in interface ILocatorDataset
Returns:
A reference to a com.esri.arcgis.geodatabase.ILocatorName
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
ILocatorName, LocatorName, ILocatorWorkspace.getLocatorName(String)

getLocatorWorkspace

public ILocatorWorkspace getLocatorWorkspace()
                                      throws IOException,
                                             AutomationException
The locator workspace that contains the locator.

Description

Returns a reference to the locator workspace that contains the locator.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getLocatorWorkspace in interface ILocatorDataset
Returns:
A reference to a com.esri.arcgis.geodatabase.ILocatorWorkspace
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
ILocatorWorkspace2, ILocatorManager2, DatabaseLocatorWorkspace, ILocatorWorkspace, ILocatorManager.getLocatorWorkspaceFromPath(String), LocatorEnumerator, ILocatorWorkspaceName2, LocatorWorkspaceName, IDatabaseLocatorWorkspace, LocalLocatorWorkspace, ILocatorManager, LocatorManager, ILocatorWorkspaceName

getName

public String getName()
               throws IOException,
                      AutomationException
Name of the locator.

Remarks

Locators and locator styles stored in an ArcSDE locator workspace are prefixed by the name of the ArcSDE user that owns the locator styles, as in "SDE.US Streets with Zone".

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getName in interface ILocator
Returns:
The name
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDescription

public String getDescription()
                      throws IOException,
                             AutomationException
Description of the locator.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getDescription in interface ILocator
Returns:
The description
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDescription

public void setDescription(String description)
                    throws IOException,
                           AutomationException
Description of the locator.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setDescription in interface ILocator
Parameters:
description - The description (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCategory

public String getCategory()
                   throws IOException,
                          AutomationException
Category of the locator.

Remarks

The Category property returns a string indicating the category to which the locator belongs. There are two categories that are defined for locators provided with ArcGIS:

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getCategory in interface ILocator
Returns:
The category
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getUserInterface

public ILocatorUI getUserInterface()
                            throws IOException,
                                   AutomationException
User interface for the locator.

Description

The UserInterface property returns an object that you can use to display the user interfaces for the locator.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getUserInterface in interface ILocator
Returns:
A reference to a com.esri.arcgis.geodatabase.ILocatorUI
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getAddressFields

public IFields getAddressFields()
                         throws IOException,
                                AutomationException
Fields needed to geocode a table of addresses.

Remarks

The AddressFields property returns a Fields object that specifies the fields that the locator uses to geocode addresses. The IField::Name property of each Field object in the collection is the internal field name used by the locator.

The IField::Required property of each Field indicates whether or not the locator requires this field to geocode addresses. Fields with a Required value of False are not required by the Locator, but may improve the match scores of the addresses.

You can use the Fields returned by this property to determine which fields in a table contain address information using the DefaultInputFieldNames property.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getAddressFields in interface IAddressInputs
Returns:
A reference to a com.esri.arcgis.geodatabase.IFields
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDefaultInputFieldNames

public Object getDefaultInputFieldNames(String addressField)
                                 throws IOException,
                                        AutomationException
Recognized names for an input field.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getDefaultInputFieldNames in interface IAddressInputs
Parameters:
addressField - The addressField (in)
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMinimumMatchScore

public int getMinimumMatchScore()
                         throws IOException,
                                AutomationException
Minimum match score setting.

Remarks

The MinimumMatchScore property specifies how well addresses have to match their most likely candidate in the reference data in order to be considered matched. A perfect match yields a score of 100. A match score between 75 and 100 can generally be considered a good match, depending upon the quality of your reference and address data. An address with no candidates with scores euqal to or greater than the minimum match score will not be matched.

The MinimumMatchScore property can have values between 0 and 100. If your application demands that addresses be located with a high level of confidence, you should specify a high value. If you want to maximize the number of addresses that can be matched and don’t mind if some addresses are potentially matched incorrectly, you can use a lower value.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getMinimumMatchScore in interface IGeocodingProperties
Returns:
The minimumMatchScore
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMinimumMatchScore

public void setMinimumMatchScore(int minimumMatchScore)
                          throws IOException,
                                 AutomationException
Minimum match score setting.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setMinimumMatchScore in interface IGeocodingProperties
Parameters:
minimumMatchScore - The minimumMatchScore (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMinimumCandidateScore

public int getMinimumCandidateScore()
                             throws IOException,
                                    AutomationException
Minimum candidate score setting.

Remarks

Locators use the MinimumCandidateScore setting to filter the set of candidates that are returned by the IAddressCandidates::FindAddressCandidates, IAdvancedGeocoding::FindStandardizedAddressCandidates, and IAdvancedIntersectionGeocoding::FindStandardizedIntersectionCandidates methods. Only candidates with a score greater than the minimum candidate score will be returned by these methods.

The minimum candidate score for a locator can have values between 0 and 100. If the Locator is unable to come up with any likely candidates for an address that you want to geocode, you can specify a lower value so that candidates with very low scores are considered.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getMinimumCandidateScore in interface IGeocodingProperties
Returns:
The minimumCandidateScore
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMinimumCandidateScore

public void setMinimumCandidateScore(int minimumCandidateScore)
                              throws IOException,
                                     AutomationException
Minimum candidate score setting.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setMinimumCandidateScore in interface IGeocodingProperties
Parameters:
minimumCandidateScore - The minimumCandidateScore (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSpellingSensitivity

public int getSpellingSensitivity()
                           throws IOException,
                                  AutomationException
Spelling sensitivity setting.

Remarks

The SpellingSensitivity property controls how much variation the locator will allow when it searches for likely candidates in the reference data. A low value for spelling sensitivity will allow “Mane”, “Maine”, and “Man” to be treated as match candidates for “Main”. A higher value will restrict candidates to exact matches. The spelling sensitivity does not affect the match score of each candidate; it only controls how many candidates the locator considers. The locator then computes the match score of each candidate and ranks the candidates by score.

The SpellingSensitivity property can have values between 0 and 100. If you are sure that your addresses are spelled correctly, you can specify a higher value for the SpellingSensitivity. However, if you think that your addresses may contain spelling errors, then you should specify a lower value.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSpellingSensitivity in interface IGeocodingProperties
Returns:
The spellingSensitivity
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSpellingSensitivity

public void setSpellingSensitivity(int spellingSensitivity)
                            throws IOException,
                                   AutomationException
Spelling sensitivity setting.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setSpellingSensitivity in interface IGeocodingProperties
Parameters:
spellingSensitivity - The spellingSensitivity (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getEndOffset

public int getEndOffset()
                 throws IOException,
                        AutomationException
End offset percentage.

Remarks

Locators that use polyline features as reference data interpolate positions along reference data features for geocoded addresses. In order to prevent features that are located at the end of a reference data feature from falling on top of other features (for example, a cross street), the locator can apply a “squeeze factor”, or end offset, to the location of a geocoded address.

The EndOffset property specifies by what amount to offset geocoded locations from the end of reference data features, and is expressed as a percentage of the length of the reference feature, between 0 percent and 50 percent. An EndOffset value of 0 will not offset features from the end of the reference feature. An EndOffset value of 50 percent will locate all geocoded addresses at the middle of the reference feature.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getEndOffset in interface IGeocodingProperties
Returns:
The endOffset
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setEndOffset

public void setEndOffset(int endOffset)
                  throws IOException,
                         AutomationException
End offset percentage.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setEndOffset in interface IGeocodingProperties
Parameters:
endOffset - The endOffset (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSideOffset

public double getSideOffset()
                     throws IOException,
                            AutomationException
Side offset distance.

Remarks

Some locators support geocoding addresses to a particular side of a street. For those locators, you can specify a side offset using the SideOffset property, which specifies how far from the correct side of the street geocoded addresses should be offset. The SideOffsetUnits property specifies the units for the side offset.

You can use these properties to improve the cartographic appearance of your geocoded feature classes. By default, the value of the SideOffsetUnits property is esriUnknownUnits, which indicates to use the reference data’s units.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSideOffset in interface IGeocodingProperties
Returns:
The sideOffset
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSideOffset

public void setSideOffset(double sideOffset)
                   throws IOException,
                          AutomationException
Side offset distance.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setSideOffset in interface IGeocodingProperties
Parameters:
sideOffset - The sideOffset (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSideOffsetUnits

public int getSideOffsetUnits()
                       throws IOException,
                              AutomationException
Units used for the side offset.

Remarks

Some locators support geocoding addresses to a particular side of a street. For those locators, you can specify a side offset using the SideOffset property, which specifies how far from the correct side of the street geocoded addresses should be offset. The SideOffsetUnits property specifies the units for the side offset.

You can use these properties to improve the cartographic appearance of your geocoded feature classes. By default, the value of the SideOffsetUnits property is esriUnknownUnits, which indicates to use the reference data’s units.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSideOffsetUnits in interface IGeocodingProperties
Returns:
A com.esri.arcgis.system.esriUnits constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSideOffsetUnits

public void setSideOffsetUnits(int sideOffsetUnits)
                        throws IOException,
                               AutomationException
Units used for the side offset.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setSideOffsetUnits in interface IGeocodingProperties
Parameters:
sideOffsetUnits - A com.esri.arcgis.system.esriUnits constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isAddXYCoordsToMatchFields

public boolean isAddXYCoordsToMatchFields()
                                   throws IOException,
                                          AutomationException
Indicates if the x and y coordinates of the address location are included in the geocoding result.

Remarks

The AddXYCoordsToMatchFields property indicates if the matches returned by the locator have attributes representing the x and y coordinates of the geocoded locations. If this property has a value of True, then the locator will return two additional attributes for matches — one each for the x and y coordinates of the geocoded features. These attributes will be included in the match fields for the locator.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isAddXYCoordsToMatchFields in interface IGeocodingProperties
Returns:
The bAddXYCoordsToMatchFields
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setAddXYCoordsToMatchFields

public void setAddXYCoordsToMatchFields(boolean bAddXYCoordsToMatchFields)
                                 throws IOException,
                                        AutomationException
Indicates if the x and y coordinates of the address location are included in the geocoding result.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setAddXYCoordsToMatchFields in interface IGeocodingProperties
Parameters:
bAddXYCoordsToMatchFields - The bAddXYCoordsToMatchFields (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isAddStandardizeStringToMatchFields

public boolean isAddStandardizeStringToMatchFields()
                                            throws IOException,
                                                   AutomationException
Indicates if the standardized address is included in the geocoding result.

Remarks

The AddStandardizeStringToMatchFields property indicates if the matches returned by the locator have an attribute containing a string representing the standardization of the address. The standardization string is a string with each component of the standardized address separated by pipe ("|") characters. If this property has a value of True, then this attribute will be included in the match fields for the locator.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isAddStandardizeStringToMatchFields in interface IGeocodingProperties
Returns:
The bAddStandardizeStringToMatchFields
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setAddStandardizeStringToMatchFields

public void setAddStandardizeStringToMatchFields(boolean bAddStandardizeStringToMatchFields)
                                          throws IOException,
                                                 AutomationException
Indicates if the standardized address is included in the geocoding result.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setAddStandardizeStringToMatchFields in interface IGeocodingProperties
Parameters:
bAddStandardizeStringToMatchFields - The bAddStandardizeStringToMatchFields (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isAddReferenceIDToMatchFields

public boolean isAddReferenceIDToMatchFields()
                                      throws IOException,
                                             AutomationException
Indicates if the feature ID of the matched feature is included in the geocoding result.

Remarks

The AddReferenceIDToMatchFields property indicates if the matches returned by the locator have an attribute containing the FeatureID of the reference data feature to which the address was matched. If this property has a value of True, then this attribute will be included in the match fields for the locator.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isAddReferenceIDToMatchFields in interface IGeocodingProperties
Returns:
The bAddReferenceIDToMatchFields
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setAddReferenceIDToMatchFields

public void setAddReferenceIDToMatchFields(boolean bAddReferenceIDToMatchFields)
                                    throws IOException,
                                           AutomationException
Indicates if the feature ID of the matched feature is included in the geocoding result.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setAddReferenceIDToMatchFields in interface IGeocodingProperties
Parameters:
bAddReferenceIDToMatchFields - The bAddReferenceIDToMatchFields (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isAddPercentAlongToMatchFields

public boolean isAddPercentAlongToMatchFields()
                                       throws IOException,
                                              AutomationException
Indicates if the percentage along the reference feature at which the address is located is included in the geocoding result.

Remarks

For locators that interpolate geocoded locations along polyline reference data features, the AddPercentAlongToMatchFields property indicates if the matches returned by the locator have an attribute containing the percentage along the reference data feature at which the address was located, with values between 0 and 100. If this property has a value of True, then this attribute will be included in the match fields for the locator.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isAddPercentAlongToMatchFields in interface IGeocodingProperties
Returns:
The bAddPercentAlongToMatchFields
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setAddPercentAlongToMatchFields

public void setAddPercentAlongToMatchFields(boolean bAddPercentAlongToMatchFields)
                                     throws IOException,
                                            AutomationException
Indicates if the percentage along the reference feature at which the address is located is included in the geocoding result.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setAddPercentAlongToMatchFields in interface IGeocodingProperties
Parameters:
bAddPercentAlongToMatchFields - The bAddPercentAlongToMatchFields (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isMatchIfScoresTie

public boolean isMatchIfScoresTie()
                           throws IOException,
                                  AutomationException
Indicates whether addresses should be arbitrarily matched to a feature when two or more features have the same best score.

Remarks

If the locator finds two or more candidates with the same best candidate score, and that score is greater than the minimum match score, then you can use the MatchIfCandidatesTie property to specify whether or not the locator should arbitrarily match the address to one of those candidates. If so, the locator will match the address to the first of these candidates that
it encounters.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isMatchIfScoresTie in interface IGeocodingProperties
Returns:
The bMatchIfScoresTie
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMatchIfScoresTie

public void setMatchIfScoresTie(boolean bMatchIfScoresTie)
                         throws IOException,
                                AutomationException
Indicates whether addresses should be arbitrarily matched to a feature when two or more features have the same best score.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setMatchIfScoresTie in interface IGeocodingProperties
Parameters:
bMatchIfScoresTie - The bMatchIfScoresTie (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDefaultInputFieldNames

public void setDefaultInputFieldNames(String addressField,
                                      Object rhs2)
                               throws IOException,
                                      AutomationException
Recognized names for a required input field.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
setDefaultInputFieldNames in interface IGeocodingProperties
Parameters:
addressField - The addressField (in)
rhs2 - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getIntersectionConnectors

public String getIntersectionConnectors()
                                 throws IOException,
                                        AutomationException
Connector strings used to designate intersections.

Remarks

The IntersectionConnectors property lets you specify strings that are used to delimit intersection addresses. Some address locators can geocode intersection addresses such as "New York St. & W. Redlands Blvd.". This property is a string containing all of the strings that can be used to delimit intersections (such as "&", "AND", or "AT"). Each intersection connector is separated by a space in this string.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getIntersectionConnectors in interface IGeocodingProperties
Returns:
The intersectionConnectors
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setIntersectionConnectors

public void setIntersectionConnectors(String intersectionConnectors)
                               throws IOException,
                                      AutomationException
Connector strings used to designate intersections.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setIntersectionConnectors in interface IGeocodingProperties
Parameters:
intersectionConnectors - The intersectionConnectors (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isUseRelativePaths

public boolean isUseRelativePaths()
                           throws IOException,
                                  AutomationException
Indicates if the paths to the reference data should be stored relative to the locator.

Remarks

The UseRelativePaths property indicates if the locator stores paths to reference data sources as relative path names. Storing paths to reference data sources as relative paths names allows users to copy a locator and its reference data between folders in ArcCatalog without invalidating the locator. It also allows users to access the same locator from a shared network directory.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isUseRelativePaths in interface IGeocodingProperties
Returns:
The bUseRelativePaths
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setUseRelativePaths

public void setUseRelativePaths(boolean bUseRelativePaths)
                         throws IOException,
                                AutomationException
Indicates if the paths to the reference data should be stored relative to the locator.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setUseRelativePaths in interface IGeocodingProperties
Parameters:
bUseRelativePaths - The bUseRelativePaths (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMatchFields

public IFields getMatchFields()
                       throws IOException,
                              AutomationException
Fields contained in the geocoding result.

Description

The MatchFields property returns the fields that are created by the address locator for matched addresses.

Remarks

The MatchFields that can be returned by geocoding services included with ArcGIS are:

All address locators based on the address locator styles provided with ArcGIS return the Shape, Status , Score and Match_addr fields.

You can use the fields returned by this property to inspect the match returned by the MatchAddress method, or to define the feature class that is created using the MatchTable method. See the MatchTable method for more information on fields written to the result feature class.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getMatchFields in interface IAddressGeocoding
Returns:
A reference to a com.esri.arcgis.geodatabase.IFields
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IAddressGeocoding.matchTable(com.esri.arcgis.geodatabase.ITable, String, String, com.esri.arcgis.geodatabase.IFeatureClass, String, com.esri.arcgis.system.IPropertySet, com.esri.arcgis.system.ITrackCancel), IAdvancedGeocoding.rematchTable(com.esri.arcgis.geodatabase.ITable, String, String, com.esri.arcgis.geodatabase.IFeatureClass, String, String, String, com.esri.arcgis.system.ITrackCancel), IAddressGeocoding.matchAddress(com.esri.arcgis.system.IPropertySet), IAddressGeocoding

matchAddress

public IPropertySet matchAddress(IPropertySet address)
                          throws IOException,
                                 AutomationException
Geocodes a single address.

Remarks

The address parameter is a PropertySet that contains the components of the address that you want to match. The property names in this PropertySet are defined by the IAddressInputs::AddressFields property.

The PropertySet returned by this method contains properties defined by the MatchFields property.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
matchAddress in interface IAddressGeocoding
Parameters:
address - A reference to a com.esri.arcgis.system.IPropertySet (in)
Returns:
A reference to a com.esri.arcgis.system.IPropertySet
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IAddressGeocoding.matchTable(com.esri.arcgis.geodatabase.ITable, String, String, com.esri.arcgis.geodatabase.IFeatureClass, String, com.esri.arcgis.system.IPropertySet, com.esri.arcgis.system.ITrackCancel), IAdvancedGeocoding.rematchTable(com.esri.arcgis.geodatabase.ITable, String, String, com.esri.arcgis.geodatabase.IFeatureClass, String, String, String, com.esri.arcgis.system.ITrackCancel), IAddressGeocoding.matchAddress(com.esri.arcgis.system.IPropertySet), IAddressGeocoding

matchTable

public void matchTable(ITable addressTable,
                       String addressFieldNames,
                       String whereClause,
                       IFeatureClass outputFeatureClass,
                       String outputFieldNames,
                       IPropertySet fieldsToCopy,
                       ITrackCancel cancelTracker)
                throws IOException,
                       AutomationException
Geocodes a table of addresses.

Description

The MatchTable method geocodes a table of addresses to a feature class.

Remarks

Before you geocode a table of addresses, you must first create the feature class that will contain the geocoded features. In addition to having an ObjectID and the match fields created by the locator, you can also specify fields from the address table to copy to the geocoded feature class. When you geocode a table of addresses using ArcGIS Desktop, the output feature class contains two copies of the address fields from the address table. One copy is a static copy that contains the original values of the address components from the address table. The second copy is an editable copy that you can use to modify the address when rematching the geocoded feature class. The names of the latter set of address fields are prefixed with "ARC_". In general, it is a good idea to follow this pattern when programatically geocoding a table of addresses, since the locator that you attach to the geocoded feature class will then only need to refer to the geocoded feature class itself (and not the original address table) in order to be able to rematch the addresses in the geocoded feature class.

The addressFieldNames parameter is used to specify the names of the fields in the addressTable that contain address information. The field names are contained in a comma-delimited string, in the order required by the address locator. You can get the set of address fields for the geocoding service using IAddressInputs::AddressFields. Use the IField::Required property to determine which address fields are required by the address locator. You must specify the names of the required fields in the address table. If your address table does not contain an optional address field, then do not specify a name in the this property.

The WhereClause parameter is used to restrict which addresses in the table are geocoded using a query.

The outputFeatureClass parameter is the feature class which will contain the geocoded addresses. This feature class must have an ObjectID field, and the match fields for the address locator. Use the MatchFields property to get the match fields for the address locator. In addition to the fields returned from MatchFields property, the result feature class also contains the Match_type field indicating how an adddress was matched. The field may contain the following values assigned by IAddressGeocoding::MatchTable or IAddressUI::RematchTable

If you want to copy any additional fields from the address table, or create new fields in the feature class, you must also add them to the feature class before geocoding the table.

The outputFieldNames parameter is a string containing a comma-delimited list of the names of the match fields in the feature class. The names of the fields must be specified in the same order as defined by the address locator. Use the MatchFields property to get the match fields for the address locator.

The fieldsToCopy parameter allows you to copy values from fields in the address table to the feature class. To copy a field, add a property to the PropertySet with the name of the destination field in the feature class, and with a value of the name of the field in the address table. You must add the the field to the feature class when you create it in order to copy values from the address table.

The CancelTracker parameter allows you to optionally display the progress while the geocoding service geocodes the table of addresses.

In order to be able to rematch a geocoded feature class, you must attach a locator to the geocoded feature class.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
matchTable in interface IAddressGeocoding
Parameters:
addressTable - A reference to a com.esri.arcgis.geodatabase.ITable (in)
addressFieldNames - The addressFieldNames (in)
whereClause - The whereClause (in)
outputFeatureClass - A reference to a com.esri.arcgis.geodatabase.IFeatureClass (in)
outputFieldNames - The outputFieldNames (in)
fieldsToCopy - A reference to a com.esri.arcgis.system.IPropertySet (in)
cancelTracker - A reference to a com.esri.arcgis.system.ITrackCancel (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
ILocatorManager2, IAddressGeocoding.matchTable(com.esri.arcgis.geodatabase.ITable, String, String, com.esri.arcgis.geodatabase.IFeatureClass, String, com.esri.arcgis.system.IPropertySet, com.esri.arcgis.system.ITrackCancel), AttachedLocator, ILocatorAttach2, IAttachedLocator, IAdvancedGeocoding.rematchTable(com.esri.arcgis.geodatabase.ITable, String, String, com.esri.arcgis.geodatabase.IFeatureClass, String, String, String, com.esri.arcgis.system.ITrackCancel), ILocatorManager, LocatorManager, IAddressGeocoding.matchAddress(com.esri.arcgis.system.IPropertySet), IAddressGeocoding, ILocatorAttach2.attachLocator(com.esri.arcgis.geodatabase.ILocator, com.esri.arcgis.geodatabase.ITable, String, String)

validate

public void validate()
              throws IOException,
                     AutomationException
Checks that the locator properties and locator dataset are present and valid.

Remarks

The Validate method allows you to check that the locator is ready to be used. This method checks if the locator properties and locator dataset are present and valid.

This method preloads all locators referenced by a composite locator. Use this method to optimize performance as locators are loaded on application startup, so that the first geocoding operation will run quickly.

This method returns a value of True if the locator is valid, and returns an error if it is not.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
validate in interface IAddressGeocoding
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
GeocodingIndexObject, GeocodingIndexClassExtension, IReferenceDataTable.getGeocodingIndexes(), ReferenceDataIndex, IReferenceDataFieldEdit, ReferenceDataFieldsEnumerator, IGeocodingIndexCompute, ReferenceDataTableEnumerator, IReferenceDataField, IReferenceDataTableEdit, ESRIFDOAddressLocator, IReferenceDataFile.getPathName(), StreetMapAddressLocator, IEnumReferenceDataField, IReferenceDataFile, IReferenceDataTable, IReferenceDataTables, IReferenceDataTables.getTables(), ReferenceDataField, IReferenceDataFile.getFilters(), IEnumReferenceDataTable, IReferenceDataIndex, IReferenceDataIndexEdit, ReferenceDataTable, IAddressGeocoding.validate(), ReferenceDataIndexEnumerator, IEnumReferenceDataIndex

getStandardizeFields

public IFields getStandardizeFields()
                             throws IOException,
                                    AutomationException
Fields contained in a standardized address.

Remarks

All of the locators provided with ArcGIS standardize addresses before matching them to the reference data. Sometimes, locators are not able to standardize addresses properly and thus cannot match them. If you find addresses that a locator cannot match, examining how they are standardized may help you determine why they cannot be matched. You may even be able to modify the standardization so that the addresses are standardized properly and thus improve the likelihood that the locator can match them.

The StandardizeFields property returns a Fields collection that specifies the fields that are contained by standardized addresses. The IField::Name property of each Field object in the collection is the internal field name used by the locator.

You can use fields returned by the StandardizeFields property to inspect the results of the StandardizeAddress method.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getStandardizeFields in interface IAdvancedGeocoding
Returns:
A reference to a com.esri.arcgis.geodatabase.IFields
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

rematchTable

public void rematchTable(ITable pInputTable,
                         String inputFieldNames,
                         String inputJoinFieldName,
                         IFeatureClass resultTable,
                         String outputFieldNames,
                         String outputJoinFieldName,
                         String whereClause,
                         ITrackCancel cancelTracker)
                  throws IOException,
                         AutomationException
Rematches a geocoded feature class or shapefile.

Remarks

The RematchTable method rematches a geocoded feature class or shapefile. In general, you will use the RematchTable method on a locator that you retreived from an AttachedLocator on a geocoded feature class. You can get most of the parameters required by this function from the AttachedLocator.

The pInputTable parameter is a reference to the table that contains the address information, which is usually the geocoded feature class.

The pInputFieldNames parameter is a comma-delimited string containing the names of the fields in pInputTable that contain the address information. Usually, these fields are copied from the original address table to the geocoded feature class when the geocoded feature class is first created, and are prefixed with "ARC_". The field names in the string must be given in the same order as specified by the IAddressInputs::AddressFields property.

The InputJoinFieldName parameter is the name of the field in pInputTable that relates records in this table to records in resultTable. Usually, this parameter is not used because pInputTable and resultTable refer to the same feature class.

The resultTable parameter is the feature class that contains the geocoded addresses.

The outputFieldNames parameter is a comma-delimited string containing the names of the fields in resultTable that contain match information. You can use the IAddressGeocoding::MatchFields property to determine which fields contain the match information. The field names in the string must be given in the same order as specified by the IAddressGeocoding::MatchFields property.

The OuputJoinFieldName parameter is the name of the field in resultTable that relates records in this feature class to records in pInputTable. Usually, this parameter is not used because pInputTable and resultTable refer to the same feature class.

The WhereClause parameter is a string that contains a SQL clause specifying which records in pInputTable to rematch. To rematch all of the records, specify a blank string for this parameter.

The CancelTracker parameter is an optional parameter that you can use to specify a CancelTracker to display the progress of the rematch operation.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
rematchTable in interface IAdvancedGeocoding
Parameters:
pInputTable - A reference to a com.esri.arcgis.geodatabase.ITable (in)
inputFieldNames - The inputFieldNames (in)
inputJoinFieldName - The inputJoinFieldName (in)
resultTable - A reference to a com.esri.arcgis.geodatabase.IFeatureClass (in)
outputFieldNames - The outputFieldNames (in)
outputJoinFieldName - The outputJoinFieldName (in)
whereClause - The whereClause (in)
cancelTracker - A reference to a com.esri.arcgis.system.ITrackCancel (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
com.esri.arcgis.locationui.IAddressUI, IAdvancedGeocoding.rematchTable(com.esri.arcgis.geodatabase.ITable, String, String, com.esri.arcgis.geodatabase.IFeatureClass, String, String, String, com.esri.arcgis.system.ITrackCancel), ILocatorUI.matchTable(int, com.esri.arcgis.geodatabase.ITable, com.esri.arcgis.geodatabase.ILocator, String[])

matchStandardizedAddress

public IPropertySet matchStandardizedAddress(IPropertySet standardizedAddress)
                                      throws IOException,
                                             AutomationException
Geocodes a single standardized address.

Remarks

All of the locators provided with ArcGIS standardize addresses before matching them to the reference data. Sometimes, locators are not able to standardize addresses properly and thus cannot match them. If you find addresses that a locator cannot match, examining how they are standardized may help you determine why they cannot be matched. You may even be able to modify the standardization so that the addresses are standardized properly and thus improve the likelihood that the locator can match them.

The standardizedAddress parameter is a PropertySet containing a standardized address. Use the StandardizeAddress method to obtain a PropertySet containing a standardized address. Alternatively, you can construct a standardized address by creating a PropertySet whose values are defined by the names of the fields returned by the StandardizeFields property.

The PropertySet returned by this method has properties whose names are defined by the names of the fields returned by the IAddressGeocoding::MatchFields property.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
matchStandardizedAddress in interface IAdvancedGeocoding
Parameters:
standardizedAddress - A reference to a com.esri.arcgis.system.IPropertySet (in)
Returns:
A reference to a com.esri.arcgis.system.IPropertySet
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IPropertySet.getCount(), com.esri.arcgis.system.propertySet, com.esri.arcgis.locationui.ILocatorExtension, com.esri.arcgis.locationui.FindAddresses, IAdvancedGeocoding.matchStandardizedAddress(com.esri.arcgis.system.IPropertySet), com.esri.arcgis.locationui.AddressFindData, IPropertySet.removeProperty(String), com.esri.arcgis.locationui.LocatorExtension, com.esri.arcgis.locationui.IAddressFindData, IPropertySet.isEqual(com.esri.arcgis.system.IPropertySet)

findStandardizedAddressCandidates

public IArray findStandardizedAddressCandidates(IPropertySet standardizedAddress)
                                         throws IOException,
                                                AutomationException
Generates candidates for a standardized address.

Remarks

All of the locators provided with ArcGIS standardize addresses before matching them to the reference data. Sometimes, locators are not able to standardize addresses properly and thus cannot match them. If you find addresses that a locator cannot match, examining how they are standardized may help you determine why they cannot be matched. You may even be able to modify the standardization so that the addresses are standardized properly and thus improve the likelihood that the locator can match them.

The standardizedAddress parameter is a PropertySet containing a standardized address. Use the StandardizeAddress method to obtain a PropertySet containing a standardized address. Alternatively, you can construct a standardized address by creating a PropertySet whose values are defined by the names of the fields returned by the StandardizeFields property.

The Array returned by this method contains PropertySets, each of which contains a candidate for the standardized address. The properties in these PropertySets names are defined by the names of the fields returned by the IAddressGeocoding::MatchFields property.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
findStandardizedAddressCandidates in interface IAdvancedGeocoding
Parameters:
standardizedAddress - A reference to a com.esri.arcgis.system.IPropertySet (in)
Returns:
A reference to a com.esri.arcgis.system.IArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

standardizeAddress

public IPropertySet standardizeAddress(IPropertySet address,
                                       boolean[] isAnIntersection)
                                throws IOException,
                                       AutomationException
Standardizes an address.

Remarks

All of the locators provided with ArcGIS standardize addresses before matching them to the reference data. Sometimes, locators are not able to standardize addresses properly and thus cannot match them. If you find addresses that a locator cannot match, examining how they are standardized may help you determine why they cannot be matched. You may even be able to modify the standardization so that the addresses are standardized properly and thus improve the likelihood that the locator can match them.

The StandardizeAddress method returns a PropertySet containing the address contained in the address parameter standardized by the geocoding engine. Use the IAddressInputs::AddressFields property to determine the properties that the address parameter should contain. Use the StandardizeFields property to determine the names of the properties that the returned PropertySet contains.

The isAnIntersection is an output parameter whose value is set by the StandardizeAddresses method. If the value of the variable is set to True, then the locator interpreted the address as an intersection. If the address is an intersection, then you can use the IAdvancedIntersectionGeocoding::StandardizeIntersectionFields property to inspect the properties in the PropertySet returned by this method. Otherwise, you can use the StandardizeFields property to inspect the properties.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
standardizeAddress in interface IAdvancedGeocoding
Parameters:
address - A reference to a com.esri.arcgis.system.IPropertySet (in)
isAnIntersection - The isAnIntersection (in/out: use single element array)
Returns:
A reference to a com.esri.arcgis.system.IPropertySet
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getIntersectionCandidateFields

public IFields getIntersectionCandidateFields()
                                       throws IOException,
                                              AutomationException
Fields contained by intersection candidates.

Remarks

The IntersectionCandidateFields property returns a Fields object that specifies the fields that are contained by candidates for intersection addresses. You can use these fields to inspect the candidates that the locator generates for an address.

Use the IsIntersection method to determine if an address is an intersection address.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getIntersectionCandidateFields in interface IIntersectionGeocoding
Returns:
A reference to a com.esri.arcgis.geodatabase.IFields
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isIntersection

public boolean isIntersection(IPropertySet address)
                       throws IOException,
                              AutomationException
Indicates if an address is an intersection.

Remarks

Use the IsIntersection property to determine if an address specifies an intersection. If an address does specify an intersection, use the fields returned by the IntersectionCandidateFields property to inspect the candidates that the locator returns for the address.

Use the IAddressInputs::AddressFields property to determine what properties the address parameter should contain.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isIntersection in interface IIntersectionGeocoding
Parameters:
address - A reference to a com.esri.arcgis.system.IPropertySet (in)
Returns:
The isAnIntersection
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getStandardizeIntersectionFields

public IFields getStandardizeIntersectionFields()
                                         throws IOException,
                                                AutomationException
Fields contained in a standardized intersection.

Remarks

The StandardizeIntersectionFields property returns a Fields object that you can use to inspect a standardized intersection address. To determine if an address is an intersection, use the IIntersectionGeocoding::IsIntersection method. You can then standardize the address using the IAdvancedGeocoding::StandardizeAddress method. The name of each Field in the Fields object corresponds to a property name in the PropertySet for the standardized address.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getStandardizeIntersectionFields in interface IAdvancedIntersectionGeocoding
Returns:
A reference to a com.esri.arcgis.geodatabase.IFields
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

matchStandardizedIntersection

public IPropertySet matchStandardizedIntersection(IPropertySet standardizedIntersection)
                                           throws IOException,
                                                  AutomationException
Geocodes a single standardized intersection.

Remarks

Use the MatchStandardizedIntersection method to match a standardized intersection address.

The standardizedIntersection parameter is a PropertySet containing the components of the standardized intersection address. You can obtain a standardized address using the IAdvancedGeocoding::StandardizeAddress method.

This method returns a PropertySet containing the match for the address. The names of its properties are determined by the names of the fields returned by the IAddressGeocoding::MatchFields property.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
matchStandardizedIntersection in interface IAdvancedIntersectionGeocoding
Parameters:
standardizedIntersection - A reference to a com.esri.arcgis.system.IPropertySet (in)
Returns:
A reference to a com.esri.arcgis.system.IPropertySet
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

findStandardizedIntersectionCandidates

public IArray findStandardizedIntersectionCandidates(IPropertySet standardizedIntersection)
                                              throws IOException,
                                                     AutomationException
Generates candidates for a standardized intersection.

Remarks

The FindStandardizedIntersectionCandidates method returns a set of candidates for a standardized intersection address.

The standardizedIntersection parameter is a PropertySet that contains a standardized address. You can create a standardized address using the IAdvancedGeocoding::StandardizeAddress method.

This method returns an Array of PropertySets containing candidates for the standardized intersection address. The names of the properties are defined by the names of the fields returned by the IIntersectionGeocoding::IntersectionCandidateFields property.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
findStandardizedIntersectionCandidates in interface IAdvancedIntersectionGeocoding
Parameters:
standardizedIntersection - A reference to a com.esri.arcgis.system.IPropertySet (in)
Returns:
A reference to a com.esri.arcgis.system.IArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCandidateFields

public IFields getCandidateFields()
                           throws IOException,
                                  AutomationException
Fields contained in a list of candidates.

Remarks

When an address locator generates a set of match candidates for an address, the candidates are described by a certain set of candidate fields. Each style of address locator has its own set of candidate fields.

You can use the fields returned by this property to inspect candidates found using the FindAddressCandidates method.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getCandidateFields in interface IAddressCandidates
Returns:
A reference to a com.esri.arcgis.geodatabase.IFields
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IAddressCandidates

findAddressCandidates

public IArray findAddressCandidates(IPropertySet address)
                             throws IOException,
                                    AutomationException
Generates candidates for an address.

Remarks

The address parameter is a PropertySet that contains one property for each of the address fields defined by the address locator. You can use the IAddressInputs::AddressFields method to get the address fields for a address locator.

This method returns an Array of PropertySets. Each PropertySet in the Array has properties specified by the CandidateFields property.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
findAddressCandidates in interface IAddressCandidates
Parameters:
address - A reference to a com.esri.arcgis.system.IPropertySet (in)
Returns:
A reference to a com.esri.arcgis.system.IArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IAddressCandidates

getTable

public ITableName getTable()
                    throws IOException,
                           AutomationException
Name object for the place name alias table.

Remarks

Locators can use place name alias tables during the geocoding process. A place name alias table is a table that contains place names (for example, "City Hall"), and the addresses for those places. When geocoding, the locator searches the place name alias table for matches to the input address. If a match is found, then locator replaces the input address with the corresponding address from the place name alias table. In this way, you can geocode addresses by place name, without having to know the proper street address for those places.

The Table property returns a reference to a TableName object representing the place name alias table.

When using the IPlaceNameAlias interface to specify the place name alias table for a locator, only set the writeable properties immediately one after the other. Setting some of these properties, such as the Table property, can place the locator object in a state which can cause some of the readable properties and methods on the locator to raise errors until the other writeable properties on this interface are set.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getTable in interface IPlaceNameAlias
Returns:
A reference to a com.esri.arcgis.geodatabase.ITableName
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setTableByRef

public void setTableByRef(ITableName name)
                   throws IOException,
                          AutomationException
Name object for the place name alias table.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setTableByRef in interface IPlaceNameAlias
Parameters:
name - A reference to a com.esri.arcgis.geodatabase.ITableName (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getAliasField

public String getAliasField()
                     throws IOException,
                            AutomationException
Name of the alias field.

Remarks

The AliasField property returns the name of the field in the place name alias table that contains the place name aliases.

When using the IPlaceNameAlias interface to specify the place name alias table for a locator, only set the writeable properties immediately one after the other. Setting some of these properties, such as the Table property, can place the locator object in a state which can cause some of the readable properties and methods on the locator to raise errors until the other writeable properties on this interface are set.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getAliasField in interface IPlaceNameAlias
Returns:
The name
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setAliasField

public void setAliasField(String name)
                   throws IOException,
                          AutomationException
Name of the alias field.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setAliasField in interface IPlaceNameAlias
Parameters:
name - The name (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

IPlaceNameAlias_getAddressFields

public String IPlaceNameAlias_getAddressFields()
                                        throws IOException,
                                               AutomationException
Names of the address fields.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
IPlaceNameAlias_getAddressFields in interface IPlaceNameAlias
Returns:
The fieldList
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setAddressFields

public void setAddressFields(String fieldList)
                      throws IOException,
                             AutomationException
Names of the address fields.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setAddressFields in interface IPlaceNameAlias
Parameters:
fieldList - The fieldList (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDefaultAliasFieldNames

public Object getDefaultAliasFieldNames()
                                 throws IOException,
                                        AutomationException
Recognized names for the address fields in the place name alias table.

Remarks

The DefaultAliasFieldNames property is an array of strings containing recognized field names for the alias field in a place name alias table. You can use the contents of this array to search through your place name alias table to determine which field contains the place name alias information. If the locator contains no default alias field names, calling this property returns an error.

When using the IPlaceNameAlias interface to specify the place name alias table for a locator, only set the writeable properties immediately one after the other. Setting some of these properties, such as the Table property, can place the locator object in a state which can cause some of the readable properties and methods on the locator to raise errors until the other writeable properties on this interface are set.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getDefaultAliasFieldNames in interface IPlaceNameAlias
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDefaultAliasFieldNames

public void setDefaultAliasFieldNames(Object names)
                               throws IOException,
                                      AutomationException
Recognized names for the address fields in the place name alias table.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setDefaultAliasFieldNames in interface IPlaceNameAlias
Parameters:
names - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

interfaceSupportsErrorInfo

public void interfaceSupportsErrorInfo(GUID riid)
                                throws IOException,
                                       AutomationException
interfaceSupportsErrorInfo

Description

Indicates whether the interface supports IErrorInfo.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
interfaceSupportsErrorInfo in interface ISupportErrorInfo
Parameters:
riid - A Structure: com.esri.arcgis.support.ms.stdole.GUID (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSearchDistance

public double getSearchDistance()
                         throws IOException,
                                AutomationException
Search distance.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSearchDistance in interface IReverseGeocodingProperties
Returns:
The searchDistance
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSearchDistance

public void setSearchDistance(double searchDistance)
                       throws IOException,
                              AutomationException
Search distance.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setSearchDistance in interface IReverseGeocodingProperties
Parameters:
searchDistance - The searchDistance (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSearchDistanceUnits

public int getSearchDistanceUnits()
                           throws IOException,
                                  AutomationException
Units used for the search distance.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSearchDistanceUnits in interface IReverseGeocodingProperties
Returns:
A com.esri.arcgis.system.esriUnits constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSearchDistanceUnits

public void setSearchDistanceUnits(int searchDistanceUnits)
                            throws IOException,
                                   AutomationException
Units used for the search distance.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setSearchDistanceUnits in interface IReverseGeocodingProperties
Parameters:
searchDistanceUnits - A com.esri.arcgis.system.esriUnits constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

reverseGeocode

public IPropertySet reverseGeocode(IPoint location,
                                   boolean bReturnIntersection)
                            throws IOException,
                                   AutomationException
Generate an address based on a point.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
reverseGeocode in interface IReverseGeocoding
Parameters:
location - A reference to a com.esri.arcgis.geometry.IPoint (in)
bReturnIntersection - The bReturnIntersection (in)
Returns:
A reference to a com.esri.arcgis.system.IPropertySet
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.