Method and apparatus for representing recurring events
First Claim
1. A method for representing a schedule of a recurring event in an electronic device, wherein the schedule includes one or more cycles, wherein each of said one or more cycles has a length, the method comprising causing the electronic device to perform the steps of:
- a) for each cycle in said schedule, performing the steps ofa1) receiving a first input that specifies a unit of time used to measure the length of said cycle;
a2) receiving a second input that specifies a number of time units;
a3) generating a time-interval indicator representing the length of said cycle;
wherein said step of generating said time-interval indicator includes the steps ofgenerating a unit-type indicator corresponding to said unit of time;
generating a unit-frequency indicator corresponding to said number of time units;
a4) generating a repeat-quantity indicator representing how many times said cycle is repeated in said schedule;
a5) generating a recurrence command to represent said cycle, said recurrence command including said time-interval indicator and said repeat-quantity indicator; and
b) constructing a recurrence rule to represent said schedule, wherein said recurrence rule includes the recurrence command generated for each cycle of said one or more cycles.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for representing and storing the schedules of recurring events. The schedules are represented by recurrence rules generated according to a specific grammar. According to the grammar, each recurrence rule is composed of one or more recurrence commands. Each recurrence command corresponds to a cycle and includes a time interval indicator that specifies the duration of the cycle and a repeat quantity that determines the number of times the cycle is repeated in the schedule. Each recurrence command may also include an occurrence list that specifies at what times during a particular cycle the event occurs. The occurrence list may specify times in absolute or relative terms. Thus, the grammar supports recurrence rules for representing the schedule "first and tenth of every month" as well as the schedule "second Thursday and last Friday of every month". To represent schedules that terminate before the last event in the last cycle is completed, a symbol may be inserted into the occurrence list to distinguish the events that are performed on the last cycle from the events that are not performed on the last cycle. Complex schedules that involve cycles repeated within cycles are represented by multiple-command recurrence rules. The stored recurrence rules may be parsed to determine when events will occur. The grammar may be applied to a variety of applications, including calendar programs, video cassette recorders and home automation devices.
187 Citations
22 Claims
-
1. A method for representing a schedule of a recurring event in an electronic device, wherein the schedule includes one or more cycles, wherein each of said one or more cycles has a length, the method comprising causing the electronic device to perform the steps of:
-
a) for each cycle in said schedule, performing the steps of a1) receiving a first input that specifies a unit of time used to measure the length of said cycle; a2) receiving a second input that specifies a number of time units; a3) generating a time-interval indicator representing the length of said cycle; wherein said step of generating said time-interval indicator includes the steps of generating a unit-type indicator corresponding to said unit of time; generating a unit-frequency indicator corresponding to said number of time units; a4) generating a repeat-quantity indicator representing how many times said cycle is repeated in said schedule; a5) generating a recurrence command to represent said cycle, said recurrence command including said time-interval indicator and said repeat-quantity indicator; and b) constructing a recurrence rule to represent said schedule, wherein said recurrence rule includes the recurrence command generated for each cycle of said one or more cycles. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method for representing in an electronic device a schedule of a recurring event, wherein the schedule includes a cycle of a certain duration, wherein the cycle is repeated N times during the schedule, wherein N is at least two, wherein during the first N-1 iterations of the cycle said recurring event occurs at a first set of times and a second set of times, wherein during the Nth iteration of said cycle said recurring event occurs at said first set of times but not at said second set of times, the method comprising the steps of:
-
generating a time-interval indicator representing said certain duration; generating a repeat-quantity indicator representing the value of N; generating an occurrence list including data representing said first set of times and said second set of times; inserting at least one symbol into said occurrence list to distinguish between said first set of times and said second set of times. - View Dependent Claims (12)
-
-
13. An apparatus for storing a representation of a schedule of a recurring event, the apparatus comprising:
-
an input device for receiving input representing said schedule; a processor coupled to said input device, said processor receiving said input from said input device and generating a recurrence rule based on a grammar, wherein said recurrence rule represents said schedule of said recurring event; and a storage device coupled to said processor, said processor storing data representing said recurrence rule on said storage device; wherein said recurrence rule includes one or more recurrence commands, wherein each recurrence command of said recurrence rule represents a repeating cycle in said schedule; wherein said grammar includes rules for constructing time-interval indicators for representing cycles that repeat every N1 minutes, every N2 days, every N3 weeks, every N4 months on a relative day and week, every N5 months on an absolute day, every N6 years on one or more specific months, and every N7 years on one or more specific days of the year, where N1 -N7 are each any natural number. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
-
21. A method for representing a schedule of a recurring event in an electronic device, wherein the schedule includes a plurality of cycles, wherein each of said plurality of cycles has a length, the method comprising causing the electronic device to perform the steps of:
-
a) for each cycle in said schedule, performing the steps of a1) generating a time-interval indicator representing the length of said cycle; a2) generating a recurrence command to represent said cycle, said recurrence command including said time-interval indicator, and b) constructing a recurrence rule to represent said schedule, wherein said recurrence rule includes the recurrence command generated for each cycle of said plurality of cycles;
wherein;said schedule includes a first cycle and a second cycle; said schedule includes repeating one of said first cycle and said second cycle within the other of said first cycle and said second cycle; said first cycle has a duration that does not vary; said second cycle has a duration that varies based on a selective relative occurrence; said step of a1) generating a time-interval indicator includes the steps of generating a first time-interval indicator representing the length of said first cycle; and generating a second time-interval indicator representing the length of said second cycle; wherein said step of a2) generating a recurrence command includes generating a first recurrence command to represent said first cycle; and generating a second recurrence command to represent said second cycle; wherein said step of b) constructing a recurrence rule includes constructing a recurrence rule that includes said first recurrence command and said second recurrence command. - View Dependent Claims (22)
-
Specification