[Kroupware] Kroupware RFC
Helge Hess
helge.hess at skyrix.com
Mon Apr 7 02:13:40 CEST 2003
Martin Konold wrote:
>>OK, I see. Editing a record is "delete old message" and "save new message".
> Yes, this is a key design issue.
OK. Two more general questions for understanding the design:
a) How do you deal with references ?
If entries are potentially copied there can't be any links between the
entries (eg between an appointment and a contact of a contact folder
invited to the appointment) ?
Obviously the IMAP4 uid isn't suitable for that because of the copying
semantics. Do you use some special mail header field (msg-id ?) or
internal key for locating an entry ? Is there a specific (and efficient)
IMAP query to locate such an entry ?
How does the current interface (eg the appointment editor) deal with the
case that a record was duplicated on conflict ? Does any single GUI
component resolving a reference need to deal with the fact that the
query may return multiple objects and provide proper resolution GUI ?
b) What is the general strategy of dealing with queries ?
Given that Cyrus doesn't know about the attributes contained in an
iCalendar message it can't run a query like "give me all appointments of
this folder in the week xy in year 20xz". Obviously it wouldn't be
acceptable for the client to go (online) over each of the thousands of
appointments contained in a folder, query the content and perform the
query itself.
So do you rely on the client keeping a local, domain specific and
indexed cache of the information (much like local searches in Mozilla)
and let the client perform the query operation ?
If this is the case, I'm interested in your approach for dealing with
that in the webclient. Were is the webclient going to store it's local
cache ?
What is the maximum number of appointments and contacts per folder the
current Kolab Client can handle locally on usual hardware ? Does it use
a Berkley DB for storing the attributes of an appointment ?
Thanks for your good explanations,
Helge Hess
--
SKYRIX Software AG - http://developer.skyrix.com/
More information about the Kroupware
mailing list