A geographic data relational database and a spatial library of routines
that access and analyze spatial data are used to convert an identified
location to a set of geographic coordinate pairs. A geocoder engine
applies the spatial library routines to the geographic data in the
relational database, and based on the identified location and a set of
matching rules, produces the set of geographic coordinates. The
geographic data may be derived from multiple sources. The rules may
specify, for example, that only geographic coordinates corresponding to
an exact match of the identified location are to be returned, or that
matching of certain attributes may be relaxed. The identified location
may be, for example, the intersection of two streets, an address, a
postal area code such as a zip code.