r5 - 26 Jul 2004 - 14:20:41 - LisaDusseaultYou are here: OSAF >  Journal Web  >  TWikiUsers > LisaDusseault > LisaDusseaultNotes > LisaDusseault20040720

Modeling Attendees, To, From, Organizer, Subscriber/Sharee, etc.

Problem: Our major Note-like Kinds in the ContentModel? (Event, Email, Task) have many links to people. These links "belong to" the Kind in the sense that when you share/copy/move/delete the instance of the Kind, the link needs to go along with it. There's also some metadata belonging to the link itself in some sense -- metadata that doesn't belong either to the Note-based Kind or to the Contact, but to the link between the two. For example:

  • Attendee links an Event to a Contact and will eventually be annotated with "RSVP Status"
  • Organizer links an Event to a Contact (with a different semantic meaning than Attendee)
  • Sharer links any ContentItem? to a Contact and will be annotated with "sharing status" and "last synched" timestamp in 0.4
  • To links an Email to a Contact

Proposal: create new Kind called "ContactRef". Attendee and Sharer will inherit from ContactRef? and extend it with metadata specific to attendees and sharing. To, From and Organizer will simply instantiate ContactRef? with a different name.

A ContactRef? is inside the cloud for the ContentItem? that it is linked from. E.g. a Subscriber is part of the ContentItem? that is shared so all other people downloading the item can see the Subscriber list. An Attendee is part of the Event so if the Event is synchronized the Attendees are too, but not the entire Contact that the Attendee links to.

Sometimes a single ContactRef? will be used, e.g. the "organizer" field on an event would contain a single ref to a ContactRef?. Sometimes ContactRef? will be used in multiple-cardinality fields, e.g. the "attendees" field on an event.

A ContactRef? has these attributes:

  • itemref to a Contact
  • "refBy" back to Content Item
  • emailAddress used (may be blank in a few cases if no email sent -- e.g. a Task with no email fields)
  • displayName, somehow inherited from Contact

Issues

  • The "display name" attribute ought to be calculated based on (or redirected to) the display name of the Contact. So if I change the display name on the Contact from Jane Doe to Jane Smith, that new name should appear in all ContactRefs?. Then when the ContactRef? is part of a cloud that is shared, the ContactRef? would be shared too, but not the Contact. For example, if I organized a meeting with Katie Parlante and shared this meeting on my calendar, subscribers to my calendar would see the Event instance containing a ContactRef? instance with the attributes "Katie Parlante" and "capps@osafoundation.org". Follow-Up: Redirected values are not currently copied/persisted/etc -- they are simply aliases, really, and have no value existence. Andi said this would not currently work as desired although we could change it.

-- LisaDusseault - 20 Jul 2004

Edit | WYSIWYG | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r5 < r4 < r3 < r2 < r1 | More topic actions
 
Open Source Applications Foundation
Except where otherwise noted, this site and its content are licensed by OSAF under an Creative Commons License, Attribution Only 3.0.
See list of page contributors for attributions.