1. A computer-implemented geocoding system, comprising: a processor; a triage component executing on the processor and configured to perform steps including: receiving a query comprising a string and user context information, wherein the user context information includes at least one of market data, culture data, map view data and user location data, wherein the market data indicates a preferred geographical region, the culture data indicates a language setting, the map view data provides a geographic context of a current user view, and the user location data is based on a physical location of user; parsing the string into a set of data-retrieval requests by extracting geographical information to generate a list of ranked geographical information using a weighting function and validating an address from the geographical information, wherein each data retrieval request comprises user context information and fields of a valid address, and wherein the set of data-retrieval requests comprises more than one data-retrieval request for execution by geocoders; selecting a plurality of geocoders to which to send the set of data retrieval requests for execution based on specific requirements of each geocoder, wherein the specific requirements of a first geocoder are different from the specific requirements of a second geocoder, and the data retrieval requests sent to the first geocoder are different from the data retrieval requests send to the second geocoder; and using at least one data retrieval request in the set of data retrieval requests to generate a geocoding command specifically for each of the selected plurality of geocoders to consume, wherein the geocoding command of the first geocoder is different from the geocoding command of the second geocoder; a geocoding component executing on the processor and configured to perform steps including: aggregating the set of data-retrieval requests; and federating the set of data-retrieval requests and generated geocoding commands to the selected plurality of geocoders for parallel execution, wherein the selected plurality of geocoders return responses, wherein the responses comprise a set of results; and a results component executing on the processor and configured to perform steps including: processing the responses from the selected geocoders by merging the responses into a ranked list of results using predetermined scoring and ranking rules, and a subset of the results is returned.
6. The system of claim 1 , wherein the results component executing on the processor and further configured to perform steps including generating scores for the results, and the results are ranked based on the scores.