1. A method for generating a recommendation, the method comprising the steps of: receiving a user-defined recommendation request; receiving a user-defined declarative community definition; searching at least one recommendation database; retrieving rating data from at least one member of the community defined by the declarative community definition; and generating at least one recommendation based at least in part on the rating data.