1. A method for electronically searching for an item, the method comprising the steps of: providing a search index comprising a set of predefined categories, wherein each predefined category is defined by a taxonomy of attributes comprising a set of predefined attributes, wherein each predefined attribute is defined by at least one question and one or more answers to each question; receiving a search request for the item from a user, wherein the search request comprises a requested category for the item selected from the set of predefined item categories, and one or more requested attributes of the item selected from the set of predefined attributes by providing at least one of the answers to at least one of the questions defining the requested attribute of the item; storing the search request for the item in the search index based on the requested category for the item and the requested attribute(s) of the item; searching the search index for any previously stored search requests from other users that match the requested category and the requested attribute(s); determining a result of the search; sending a search response comprising the result of the search; persistently searching the search index for the item by monitoring the search index for a trigger event until the search request is terminated; whenever the trigger event is detected, searching the search index for any stored search results that match the requested category and the requested attributes, and determining a new result of the search; whenever the new result differs from the result, sending an updated search response comprising the new result of the search; determining a relevancy score for each found stored search request; wherein the step of determining the relevancy score for each found stored result comprises the step of summing the relevancy scores for each requested attribute in the search request divided by the number of requested attributes in the search request; and wherein the relevancy score for each requested attribute comprises a first value whenever the requested attribute is not specified in the stored search request, a second value whenever the requested attribute matches the attribute of the stored search request and the requested attribute is Must Have, a third value whenever the requested attribute that matches the attribute of the stored search request and the requested attribute is not Must Have, a fourth value whenever the requested attribute that does not match the attribute of the stored search request and the requested attribute is Must Have, and a fifth value whenever the requested attribute does not match the attribute of the stored search request and the requested attribute is not Must Have.