# US 8,782,710 B2 · Method and system for optimizing electronic program guide data

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,782,710 B2
- Document ID: US8782710B2
- Status: Granted
- Kind: B2
- Application number: 13/221,183
- Filed: 2011-08-30
- Published: 2012-03-01
- Granted: 2014-07-15
- Earliest claimed: 2010-08-31
- Assignees: Shaw Cablesystems, G.P.
- Applicants: Jacob Fehr
- Inventors: Jacob Fehr
- Web page: https://patentgrep.com/patent/US8782710B2

## CPC

- H04N 21/26283: {for associating distribution time parameters to content, e.g. to generate electronic programme guide data}
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

Methods and systems of optimizing EPG data include: (i) receiving EPG data comprising a plurality of schedule objects; (ii) identifying a recurrence pattern in a subset of the schedule objects based on an association between properties of the schedule objects in the subset; (iii) based on the recurrence pattern, identifying at least one base schedule object in the subset, each at least one base schedule object comprising properties that are common to two or more of the schedule objects in the subset; (iv) generating at least one recurrence pattern property for identifying the recurrence pattern; (v) generating an optimized schedule grouping comprising the at least one base schedule object and a metadata object, wherein the metadata object comprises the at least one recurrence pattern property; and (vi) providing optimized EPG data in which the subset of schedule objects is substituted with the optimized schedule grouping.

## Claims

### Claim 1

A method of optimizing EPG data at a server for provision to a terminal device, the method comprising:
receiving the EPG data, wherein the EPG data comprises a plurality of schedule objects;
identifying, using a processor, a recurrence pattern in a subset of the schedule objects, wherein identifying the recurrence pattern comprises:
comparing schedule objects of the plurality associated with a selected channel to schedule objects of the plurality associated with a plurality of other channels, allowing for a drift of up to six hours in half hour increments;
sorting the plurality of schedule objects primarily by channel, secondarily by program and thirdly by air date and time; and
sorting the plurality of schedule objects primarily by channel, secondarily by air time, thirdly by program and fourthly by air date; and
based on the recurrence pattern, identifying at least one base schedule object in the subset of schedule objects, wherein the at least one base schedule object comprises properties that are common to two or more of the schedule objects in the subset;
generating at least one recurrence pattern property for the at least one base schedule object, the at least one recurrence pattern property usable to regenerate the one or more properties of two or more of the schedule objects in the subset, based on the recurrence pattern and the at least one base schedule object;
generating an optimized schedule grouping comprising the at least one base schedule object and a metadata object, wherein the metadata object comprises the at least one recurrence pattern property;
replacing the subset of schedule objects in the EPG data with the optimized schedule grouping to generate optimized EPG data; and
providing the optimized EPG data to the terminal device.

### Claim 2 (depends on 1)

The method of claim 1, wherein the recurrence pattern comprises repetition of the subset of schedule objects on one or more days of the week.

### Claim 3 (depends on 2)

The method of claim 2, wherein the recurrence pattern property identifies days of the week on which to repeat the subset of schedule objects.

### Claim 4 (depends on 1)

The method of claim 1, wherein the recurrence pattern comprises repetition of the subset of schedule objects for a selected number of repetitions.

### Claim 5 (depends on 4)

The method of claim 4, wherein the selected number of repetitions are separated by a repetition interval.

### Claim 6 (depends on 4, 5)

The method of claim 4 or claim 5, wherein the recurrence pattern property identifies the selected number of repetitions.

### Claim 7 (depends on 5)

The method of claim 5, wherein the recurrence pattern property further identifies the repetition interval.

### Claim 8 (depends on 1)

The method of claim 1, wherein the recurrence pattern comprises repetition of the subset of schedule objects on at least one channel.

### Claim 9 (depends on 8)

The method of claim 8, wherein the recurrence pattern further comprises repetition of the subset of schedule objects with at least one time offset.

### Claim 10 (depends on 8)

The method of claim 8, wherein the recurrence pattern property identifies at least one channel corresponding to the subset of schedule objects.

### Claim 11 (depends on 8, 9)

The method of claim 8 or claim 9, wherein the recurrence pattern property further identifies the time offset.

### Claim 12 (depends on 1)

The method of claim 1, wherein the metadata object is a header.

### Claim 13 (depends on 1)

The method of claim 1, further comprising determining an optimization type based on the identified recurrence pattern.

### Claim 14

An EPG data optimization system comprising:
a terminal device; and
a server, the server comprising:
a communication interface for receiving the EPG data, wherein the EPG data comprises a plurality of schedule objects;
a memory for storing the EPG data; and
a processor, the processor configured to:
identify a recurrence pattern in a subset of the schedule objects, by:
comparing schedule objects of the plurality associated with a selected channel to schedule objects of the plurality associated with a plurality of other channels, allowing for a drift of up to six hours in half hour increments;
sorting the plurality of schedule objects primarily by channel, secondarily by program and thirdly by air date and time; and
sorting the plurality of schedule objects primarily by channel, secondarily by air time, thirdly by program and fourthly by air date; and
based on the recurrence pattern, identify at least one base schedule object in the subset of schedule objects, wherein the at least one base schedule object comprises properties that are common to two or more of the schedule objects in the subset;
generate at least one recurrence pattern property for the at least one base schedule object, the at least one recurrence pattern property usable to regenerate the one or more properties of two or more of the schedule objects in the subset, based on the recurrence pattern and the at least one base schedule object;
generate an optimized schedule grouping comprising the at least one base schedule object and a metadata object, wherein the metadata object comprises the at least one recurrence pattern property;
replace the subset of schedule objects in the EPG data with the optimized schedule grouping to generate optimized EPG data; and
provide the optimized EPG data to the terminal device.

### Claim 15 (depends on 14)

The system of claim 14, wherein the recurrence pattern comprises repetition of the subset of schedule objects on one or more days of the week.

### Claim 16 (depends on 15)

The system of claim 15, wherein the recurrence pattern property identifies days of the week on which to repeat the subset of schedule objects.

### Claim 17 (depends on 14)

The system of claim 14, wherein the recurrence pattern comprises repetition of the subset of schedule objects for a selected number of repetitions.

### Claim 18 (depends on 17)

The system of claim 17, wherein the selected number of repetitions are separated by a repetition interval.

### Claim 19 (depends on 17, 18)

The system of claim 17 or claim 18, wherein the recurrence pattern property identifies the selected number of repetitions.

### Claim 20 (depends on 18)

The system of claim 18, wherein the recurrence pattern property further identifies the repetition interval.

### Claim 21 (depends on 14)

The system of claim 14, wherein the recurrence pattern comprises repetition of the subset of schedule objects on at least one channel.

### Claim 22 (depends on 21)

The system of claim 21, wherein the recurrence pattern further comprises repetition of the subset of schedule objects with at least one time offset.

### Claim 23 (depends on 21)

The system of claim 21, wherein the recurrence pattern property identifies at least one channel corresponding to the subset of schedule objects.

### Claim 24 (depends on 21, 22)

The system of claim 21 or claim 22, wherein the recurrence pattern property further identifies the time offset.

### Claim 25 (depends on 14)

The system of claim 14, wherein the metadata object is a header.

### Claim 26 (depends on 14)

The system of claim 14, wherein the processor is further configured to determine an optimization type based on the identified recurrence pattern.

### Claim 27

A non-transitory computer-readable medium having stored thereon instructions executable by a computer processor, which, when executed, cause the computer to perform a method of optimizing EPG data at a server for provision to a terminal device, the method comprising:
receiving the EPG data, wherein the EPG data comprises a plurality of schedule objects;
identifying, using a processor, a recurrence pattern in a subset of the schedule objects, wherein identifying the recurrence pattern comprises:
comparing schedule objects of the plurality associated with a selected channel to schedule objects of the plurality associated with a plurality of other channels, allowing for a drift of up to six hours in half hour increments;
sorting the plurality of schedule objects primarily by channel, secondarily by program and thirdly by air date and time; and
sorting the plurality of schedule objects primarily by channel, secondarily by air time, thirdly by program and fourthly by air date; and
based on the recurrence pattern, identifying at least one base schedule object in the subset of schedule objects, wherein the at least one base schedule object comprises properties that are common to two or more of the schedule objects in the subset;
generating at least one recurrence pattern property for the at least one base schedule object, the at least one recurrence pattern property usable to regenerate the one or more properties of two or more of the schedule objects in the subset, based on the recurrence pattern and the at least one base schedule object;
generating an optimized schedule grouping comprising the at least one base schedule object and a metadata object, wherein the metadata object comprises the at least one recurrence pattern property;
replacing the subset of schedule objects in the EPG data with the optimized schedule grouping to generate optimized EPG data; and
providing the optimized EPG data to the terminal device.
