A search engine for databases, data streams, and other data sources allows
user preferences as to the relative importance of search criteria to be
used to rank the output of the search engine. A weighted preference
generator generates weighted preference information including at least a
plurality of weights corresponding to a plurality of search criteria. A
weighted preference data search engines uses the weighted preference
information to search a data source and to provide an ordered result list
based upon the weighted preference information. A method for weighted
preference data searching includes determining weighted preference
information including a plurality of search criteria and a corresponding
plurality of weights signifying the relative importance of the search
criteria, and querying a data source and ranking the results based upon
the weighted preference information. In addition to allowing client input
of the relative importance of various search criteria, the system and
method also preferably include the ability to provide a subjective
ordering for at least some of the search criteria.