1. A method for providing a response to a query comprising: receiving the query from a user device operated by a user, the query comprising one or more query tokens; determining one or more candidate location tokens from the one or more query tokens; generating a relevance score for each of the one or more candidate location tokens; determining a target location based on the relevance scores, the candidate location tokens, and a geodata index; determining a query classification using the one or more query tokens and a domain index; selecting a plurality of query response candidates from a content index based on the query classification and the target location, each query response candidate comprising a document associated with a location; generating a relevance score for each of the plurality of query response candidates; selecting a query response from the plurality of query response candidates based on their relevance scores; and sending the selected query response to the user device.