[dev] Wild thoughts on relationships, Was: Adding contact to nag task

Michael Häusler michael at akatose.de
Tue Jan 28 07:45:24 PST 2003


Hello!

Just some wild thoughts on the relationships discussion:

1. unidirectional / bidirectional relationships and cardinality:

>> It might not be usefull or it could be undesired to have the reverse
>> relationship. At least I could imagine that it would not, but I can not
>> think of a terribly good example at the moment, but what I am thinking
>> about is a reverse relationship that could possible return a *huge*
>> amount of results.

> Yeah, but it might not. This doesn't seem a good reason to me; maybe you
> want to UI code to be able to limit the number of results, but not rule
> out the link entirely...

I can think of many situations, where you want fine-grained control of 
which side (of the relation) shows which elements of the UI.
Example: I always whished, I could connect people (contacts) with their 
birthdays (events). If a person has no birthday registered yet, one would 
probably like to have UI, that allows to create a new event, which will be 
automatically registered as this person's birthday. If the birthday is 
already registered, one would like to have a link to this birthday. But 
you would certainly not want UI for events, that would say "make this 
event birthday of ..." (seldom needed, wasting screen estate, would have 
to allow selection in the whole addressbook).
So in a perfect dream world, one would be able to configure
- the cardinality (1 person has at most 1 birthday and vice versa)
- wether a side should show UI for
  - generation of new partners
  - displaying existing partners (and allowing to follow the link)
  - deletion of existing partners


2. relationships, that connect more than two modules:
Ok, perhaps this goes to far - even for a perfect dream world ;-)


Anyway, I am just thinking out loud.

Michael


More information about the dev mailing list