1. A machine-implemented method for dynamically identifying and removing potential stopwords from a search query, the method comprising: receiving a search query comprising plural terms; identifying a possible stopword among the plural terms that appears in a predefined list of possible stopwords; determining one or more query splits by matching the search query to one or more query patterns, wherein each query pattern corresponds to a respective rule for interpreting the search query, wherein each query pattern is matched to the search query based on the respective rule, and wherein each query split comprises at least one of a location portion that uses one or more of the plural terms or a subject portion that uses one or more of the plural terms; removing the possible stopword from at least one of the location portion or the subject portion for at least one of the query splits based on a stopword removal rule, wherein the stopword removal rule specifies whether to remove the stopword from the location portion only, the subject portion only, or both the location portion and the subject portion; querying the search engine with the location portion and the subject portion for each of the one or more query splits, and respectively obtaining scored search results for each of the one or more query splits; and selecting the search results returned for at least one of the query splits to return as a response to the search query.