1. A method for deriving user intent from a query, the method comprising the steps of: defining a plurality of domains that correspond to a plurality of possible user intents, each domain having a hierarchy of predicates; receiving a query from the user, the query containing a plurality of keywords; and selecting a domain based on the query and the hierarchy of predicates; determining if at least one term in the query matches at least one predicate value of an entry; determining a corresponding position in the hierarchy for the at least one predicate value matching the at least one term in the query; generating inverted lists for each keyword of the plurality of keywords based on the hierarchy; generating a plurality of queries wherein a query of the plurality of queries is generated for each entry in the inverted list, wherein a web page is updated based on at least one query of the plurality of queries.