diff options
author | Federico Mena Quintero <federico@helixcode.com> | 2000-02-28 13:20:23 +0800 |
---|---|---|
committer | Federico Mena Quintero <federico@src.gnome.org> | 2000-02-28 13:20:23 +0800 |
commit | 181979b2b9889a073c9ffb1aa8b4f774af62560f (patch) | |
tree | 4b2368e01b2c3f88efae5f88520cd958198f5a38 /doc/white-papers/calendar | |
parent | 139df8a8f32364d73cb6c612dbf74fd77f45882f (diff) | |
download | gsoc2013-evolution-181979b2b9889a073c9ffb1aa8b4f774af62560f.tar.gz gsoc2013-evolution-181979b2b9889a073c9ffb1aa8b4f774af62560f.tar.zst gsoc2013-evolution-181979b2b9889a073c9ffb1aa8b4f774af62560f.zip |
Section for the personal calendar server.
2000-02-28 Federico Mena Quintero <federico@helixcode.com>
* calendar.sgml: Section for the personal calendar server.
svn path=/trunk/; revision=1970
Diffstat (limited to 'doc/white-papers/calendar')
-rw-r--r-- | doc/white-papers/calendar/ChangeLog | 4 | ||||
-rw-r--r-- | doc/white-papers/calendar/calendar.sgml | 102 |
2 files changed, 103 insertions, 3 deletions
diff --git a/doc/white-papers/calendar/ChangeLog b/doc/white-papers/calendar/ChangeLog index 819f68905c..47b3e30c41 100644 --- a/doc/white-papers/calendar/ChangeLog +++ b/doc/white-papers/calendar/ChangeLog @@ -1,3 +1,7 @@ +2000-02-28 Federico Mena Quintero <federico@helixcode.com> + + * calendar.sgml: Section for the personal calendar server. + 2000-02-25 Federico Mena Quintero <federico@helixcode.com> * calendar.sgml: New file for the Evolution calendaring white paper. diff --git a/doc/white-papers/calendar/calendar.sgml b/doc/white-papers/calendar/calendar.sgml index a8c8e53ee6..6d6cb7da5e 100644 --- a/doc/white-papers/calendar/calendar.sgml +++ b/doc/white-papers/calendar/calendar.sgml @@ -1,5 +1,7 @@ <!doctype article PUBLIC "-//Davenport//DTD DocBook V3.0//EN" [ -<!entity Evolution "<productname>Evolution</productname>"> +<!entity Evolution "<application>Evolution</application>"> +<!entity CUA "<acronym>CUA</acronym>"> +<!entity PCS "<acronym>PCS</acronym>"> ]> <article class="whitepaper" id="calendar"> @@ -41,9 +43,103 @@ <title>Introduction</title> <para> + Calendaring is an important part of a groupware suite. A + calendaring framework will allow a user to keep a personal + calendar and have several applications use it. Such + applications could be a graphical calendar client that the user + employs to schedule appointments and keep track of his time, a + <productname>Palm Pilot</productname> synchronization client, or + a simple alarm or reminder utility. A comprehensive calendaring + framework will also allow multiple users to schedule + appointments between each other; for example, a project director + may want to schedule a weekly meeting with the rest of the + project members, or a person who owns a large house may want to + schedule a big party with his friends. The attendees will then + want to reply with messages such as, “I will + attend”, or “I will attend only if the proposed time + is changed”. + </para> + + <para> The &Evolution; groupware suite provides a framework for - developing calendaring applications. This includes handling of - appointments, “to do” lists, and journal entries. + developing calendaring applications, as well as a graphical + calendar client or calendar user agent (&CUA;) and a personal + calendar server (&PCS;). + </para> + + <para> + The following sections explain the basic calendaring framework, + the functions of the calendar user agent and the personal + calendar server, and the relationship between the two. + </para> + </sect1> + + <!-- Personal Calendar Server --> + + <sect1 id="pcs"> + <title>Personal Calendar Server</title> + + <para> + The personal calendar server (&PCS;) provides centralized + management and storage of a user's personal calendar. Multiple + clients can connect to the &PCS; simultaneously to query and + modify the user's calendar in a synchronized fashion. The main + features of the &PCS; are as follows: </para> + + <formalpara> + <title>Storage</title> + + <para> + The &PCS; is responsible for loading and saving calendars. + Centralizing the loading and saving functionality allows + multiple clients to use the same calendar at the same time + without having to worry about each other. + </para> + </formalpara> + + <formalpara> + <title>Basic Queries</title> + + <para> + The &PCS; provides functions to do basic queries on a + calendar, for example, a client can ask the server for a list + of all the appointments in the calendar, or for all the data + for a specific appointment. + </para> + </formalpara> + + <formalpara> + <title>Recurrence and Alarm Queries</title> + + <para> + Clients can ask the &PCS; for a list of the appointments that + occur within a specified time range; for example a graphical + client that has a per-week view could ask the &PCS; for all + the appointments that occur in a particular week. This + includes multiple occurrences of a single recurring event; for + example, the object for “a 1-hour meeting that occurs on + every Tuesday and Thursday” is represented inside the + &PCS; as a single event with a recurrence rule. Similarly, + clients can ask the &PCS; for a list of events that have + alarms that trigger within a specified time range. + </para> + </formalpara> + + <formalpara> + <title>Notification of Changes</title> + + <para> + This is the most important function of the &PCS;, as it allows + multiple calendar clients to maintain a unified view of the + calendar between the server and themselves. When a client + asks the &PCS; to modify or remove an event, the &PCS; + notifies all the clients that are connected to it about the + change. The policy is that “the server is always + right”; clients can act as dumb views onto the + calendar's data and they will be notified by the &PCS; when + something changes. + </para> + </formalpara> </sect1> </article> |