1. A system for facilitating data searching over a network, the system comprising: a first component adapted to communicate with a user via a user device over the network; a second component adapted to receive a request from the user via the user device over the network, process the request by identifying a context chain related to the user based on information passed with the request, and provide a result in response to the request; and a database adapted to store information including the context chain related to the user, the context chain being an array of contexts, contexts being added to and subtracted from the context chain dependent upon communications received from the user; wherein the second component selects at least one context from the context chain from which to obtain the result.