Package org.osid.calendaring

The Open Service Interface Definitions for the org.osid.calendaring service.

See: Description

Package org.osid.calendaring Description

The Open Service Interface Definitions for the org.osid.calendaring service.

The Calendaring OSID manages events, commitments and calendars. The Calendaring OSID offers a rich set of event management services.

Event

An Event is range of time associated with a Location and event sponsors. Events may be managed singularly, or be generated of of one of the typs of events listed below.

Offset Events

An OffSetEvent is an OsidRule for generating an Event off of another Event. An OffsetEvent may be offset by a fixed period of time, a weekday, or include an external Rule to determine the offset. Example OffsetEvents are "the first Tuesday after Labor Day" or "24 hours before a due date."

Superseding Events

A SupersedingEvent is an OsidRule for replacing another Event. Typically, SupersedingEvents are used for replacing a generated Event from a recurring event series. Events may be superseded by date or position in a recruring even seriest. Examples are "replace the event on 12/25 with an event scheduled for 12/26" or "replace the 10th event in a course schedule with an exam."

Recurring Events

A RecurringEvent generates a series of Events from a Schedule. A Schedule is a series of times and locations.

A RecurringEvent may include SupersedingEvents to replace specific events in the series with another Event which may, in turn, be another RecurringEvent. RecurringEvents may also have a set of blackout dates in which Event generation is suuppressed.

Schedules

A Schedule describes a repeating time and Location. Schedules may be bounded by dates or by using a TimePeriod. A TimePeriod is a reusable date range and may include a set of exception Events to define a set of time ranges that any RecurringEvent mapped to the TimePeriod may not occur.

Schedules are composed of ScheduleSlots. ScheduleSlots are normalized weekly time slots. A ScheduleSlot may be composed of other ScheduleSlots.

To make a RecurringEvent for MWF 3pm in room 26-100 during the summer except July 4th:

Commitments

Commitments are OsidRelationships between Resources and Events. Commitments may include any data specific to the relationship.

Calendaring Catalogging

Events and Schedules are cataloged into Calendars. The Calendar is simply an OsidCatalog representing a collection of Events that may be federated using the OSID hierarchy pattern to create virtual calendars.

Calendaring Rules

The Calendaring OSID includes a rules package for managing the behavior of Commitments and Events. It also includes a Calendaring Cycle OSID for managing canonical events and time periods as well as a Calendaring Mason OSID for defining rules for building events and time periods. The Calendaring Batch OSID manages Events, Commitments, and TimePeriods in bulk.




Copyright © 2002-2004 Massachusetts Institute of Technology.

Copyright © 2008-2011 Ingenescus. All Rights Reserved.

This Work is being provided by the copyright holder(s) subject to the following license. By obtaining, using and/or copying this Work, you agree that you have read, understand, and will comply with the following terms and conditions.

Permission to use, copy and distribute unmodified versions of this Work, for any purpose, without fee or royalty is hereby granted, provided that you include the above copyright notices and the terms of this license on ALL copies of the Work or portions thereof.

You may modify or create Derivatives of this Work only for your internal purposes. You shall not distribute or transfer any such Derivative of this Work to any location or to any third party. For the purposes of this license, "Derivative" shall mean any derivative of the Work as defined in the United States Copyright Act of 1976, such as a translation or modification.

This Work and the information contained herein is provided on an "AS IS" basis WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE WORK OR THE USE OR OTHER DEALINGS IN THE WORK.

The export of software employing encryption technology may require a specific license from the United States Government. It is the responsibility of any person or organization contemplating export to obtain such a license before exporting this Work.