[Dev] Re: [Design] Distinguishing a collection as a "user collection"

John Anderson john at osafoundation.org
Thu Mar 2 10:01:05 PST 2006

Alec Flett wrote:
> Andi just checked in the ability to have bidirectional references 
> between ContentItems and InclusionExclusionCollections - this is 
> really great news. This means we can start to ask, what exactly is a 
> "User collection"?
> We've been delaying the decision about what a 'user collection' really 
> is, from a technical standpoint... but I think that in order to figure 
> that out, we need to figure out what it means from the user's 
> perspective. We need to handle this because internally we make ample 
> use of Collections for different technical reasons. At the moment the 
> domain model treats them all the same (for instance they all have a 
> 'color' attribute) - and then it makes it really hard to fill in the 
> "Appears In:" line in the detail view. We have to actually query the 
> sidebar to see what "user collections" exist.. yuck! Further, we want 
> bidirectional references between items and their "user collections" so 
> that users and parcel writers can make use of the value of "Appears 
> In" without writing duplicate code.
> From a user's perspective, it seems like a User Collection both:
> 1) appears in the sidebar
I think it might be slightly more accurate to rephrase this "is 
contained in the sidebar collection" In theory any UI could display the 
sidebar collection, however, today only the sidebar block's contents is 
the sidebar collection. We should never access the sidebar collection by 
looking up the sidebar block.
> 2) is listed in the detail view under "Appears In:"
> Now one of the issues is that going forward, its not clear if both of 
> these rules will continue to hold. For instance:
> * if I "tag" something with "scooby" and later drag the "scooby" tag 
> into the sidebar, should the "Appears In:" list 'scooby'?
> * Are 'Library' collections included - i.e. is "Appears In" supposed 
> to include "My Items" when appropriate? What about other "library" 
> collections like Trash, Inbox, etc...
> * And what about Spheres? Do they affect this in any way?
> * What about rule-based collections - do they show up in "Appears In"?
> * Later, if there is a UI to present a list of collections to the user 
> (i.e. maybe some sharing UI, or a parcel writer wants to let the user 
> choose a collection in a dialog box or something) - how do they choose 
> which collections to display?
> Some ideas that have floated around that define a user collection, 
> from a technical perspective:
> a) anything that appears in the sidebar (more or less what we do today)
> b) anything with some well-known attribute (i.e. '.isUserCollection' 
> or something)
> c) a particular Kind of collection - i.e. our 
> InclusionExclusionCollection is pretty chandler-specific, behaves well 
> in the sidebar, and isn't really useful anywhere else.
> At the moment, Andi has hooked up the machinery to IECollection - 
> implementing "c" would be as simple as renaming 
> InclusionExclusionCollection to UserCollection. However this doesn't 
> address some of the open issues above.
> Thoughts? Other ideas on what defines a user collection to the user?
> Alec
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> Open Source Applications Foundation "Design" mailing list
> http://lists.osafoundation.org/mailman/listinfo/design

More information about the Dev mailing list