jam sessions site requirementsdisplay a per-user calendar having: - user's events - events associated with user's stated interests - user's available timeframesallow user to express interest in: - venues - timeframes - users - objects representing collections of any of the above + styles + record labels + user groups- calendar- interest + an object of interest must be able to provide a list of additional interests which would result from being interested in the original object- events- venues- users + event generator + has interest in: - events - event generators - venues - timeframes (possibly periodic, like "tuesday nights") + this would be a constraint, a filter, capable of knocking out objects a user would otherwise be interested in - any object?! (what API must such objects implement?)queries: - date to day-of-week - user to collection of interests - interest to eventssimple first implementation:display a list of users who perform stylesdisplay a list of users who are interested in a styledisplay a list of styles and allow their names to be editeddisplay a list of users, all of whom are of interest to a particular userdisplay a list of interests of a particular user (not the same as above)allow user to express interest in styleallow user to state he performs a styleallow user to name/create a new styledata structures - users - styles (first cut: collections of users who perform particular styles) (very first cut: an object targeted by an acs_rel) - interests + acs_rel from interested user to object of interest + object of interest must implement an interface (to be defined) - provide list of additional interests as result of interest in this + acs_rel will have aux table containing type of interest (probably type of object of interest) - style performer + acs_rel from performing user to performance style