Storage and structure of calendars with an infinite set of intentional-time events for calendar applications
AssigneeMicrosoft Technology Licensing, LLC
InventorFabio Andre Pintos
Life of this patent
Estimating the term…
Abstract
An event can be stored using an indication of recurrence and an intent-time event time that includes a trigger indicator and optionally an offset. When a view of a calendar having intentional-time events is requested by a calendar application, a calendar service can search a storage resource for the requested calendar and any events that fall within a requested start time and end time. The identified events can be provided to a source of the request. Any intent-time event times that are stored as part of intentional-time events can be calculated based on their triggers and offsets. The calculations may be carried by the calendar service and the results provided to the calendar application or by the calendar application itself.
Claims11
A calendaring system comprising:
- a processing system;
- a storage system;
- structured calendar data stored on a storage resource of the storage system, the structured calendar data comprising, for each intentional-time event of a recurring-type based on natural phenomena, at least:
- a corresponding event identifier,
- a calendar identifier indicating a corresponding calendar to which the intentional-time event belongs,
- an indication of recurrence, and
- a corresponding intent-time event time,
- wherein the corresponding intent-time event time is stored as a function in a structured format that is relative to an external trigger of a natural phenomenon upon which an actual time of the intentional-time event is based, wherein the structured format of the corresponding intent-time event time comprises a location parameter and a phenomena parameter;
- instructions for supporting a calendar application stored on the storage system, the instructions directing the processing system to at least:
- receive a request for a calendar view of events of a calendar;
- search a storage resource storing calendar data for the calendar associated with the request and any events associated with the calendar;
- identify any occurrences of intentional-time events of the recurring-type based on the natural phenomena that fall within a start time and an end time for the calendar view of events, wherein the start time and the end time for the calendar view of events comprises two or more days;
- calculate an event start time and event end time for each occurrence of the intentional-time event of the recurring type based on the natural phenomena that falls within the two or more days for the calendar view of events by executing the function corresponding to the intentional-time event that includes the location parameter and the phenomena parameter,
- wherein executing the function comprises retrieving, by a calendar server or calendar application, a time of an occurrence of the natural phenomenon corresponding to a set of location coordinates indicated by the location parameter and resolved using a geolocation service, from an external trigger information resource service, via an application programming interface, for that intentional-time event and applying an offset from the time in which the natural phenomenon for that intentional-time event occurs,
- wherein the event start time, the event end time, or both the event start time and the event end time are different for at least two occurrences of the intentional-time event;
- and
- provide any identified occurrences of the intentional-time events and their corresponding event start time and event end time that fall within the two or more days for the calendar view of events to a source of the request.
A computer-implemented method comprising:
- receiving, at a server, a request for a calendar view of events of a calendar;
- searching a storage resource storing calendar data for the calendar associated with the request and any events associated with the calendar;
- identifying any occurrences of intentional-time events of a recurring-type based on natural phenomena that fall within a start time and an end time for the calendar view of events, wherein the start time and the end time for the calendar view of events comprises two or more days;
- and
- calculating an event start time and event end time for each occurrence of the intentional-time event of the recurring-type based on natural phenomena that falls within the two or more days for the calendar view of events by executing a function corresponding to each occurrence of the intentional-time event, wherein each occurrence of the intentional-time event includes a corresponding location parameter and a phenomena parameter,
- wherein executing the function comprises retrieving, by a calendar server or calendar application, a time of an occurrence of a natural phenomenon corresponding to a set of location coordinates indicated by the location parameter and resolved using a geolocation service, from an external trigger information resource service, via an application programming interface, for that intentional-time event and applying an offset from the time of the occurrence of the external trigger for that intentional-time event,
- wherein the event start time, the event end time, or both the event start time and the event end time are different for at least two occurrences of the intentional-time event.
One or more computer-readable storage media having instructions stored thereon that, when executed by a processing system, direct the processing system to at least:
- receive an input indicative of an intentional-time event of a recurring-type based on natural phenomena;
- determine an appropriate intent-time format for the intentional-time event of the recurring-type based on the natural phenomena that is relative to an external trigger of a natural phenomenon upon which an actual time of the intentional-time event is based to at least identify any additional information for the external trigger of the natural phenomenon,
- wherein the intent-time format comprises an executable function comprising a location parameter and a phenomena parameter that, when executed:
- retrieves, by a calendar server or calendar application, a time of an occurrence of the external trigger of the natural phenomenon corresponding to a set of location coordinates indicated by the location parameter and resolved using a geolocation service, from an external trigger information resource service, via an application programming interface, for that intentional-time event, and
- generates at least an event start time by applying an offset from the time of the occurrence of the external trigger for that intentional-time event, wherein the event start time, an event end time, or both the event start time and the event end time are different for at least two occurrences of the intentional-time event;
- store an indication of recurrence for the intentional-time event in a storage resource storing calendar data;
- store the executable function, including the offset, in the storage resource;
- receive a request for a calendar view of events, wherein the request includes a start time and an end time for the calendar view of events that comprises two or more days;
- search the storage resource for a calendar associated with the request and any events associated with the calendar that fall within the two or more days;
- and
- provide any identified intentional-time events that fall within the two or more days to a source of the request.
Dependencies are inferred from the claim text.