WikiPatents - Community Patent Review
Create Free Account  |  License or Sell Your Patent  |  WikiPatents Marketplace  |  WikiPatents Blog
Username:  Password:  
    
Advanced Search
System and method for verification of electronic television program guide data    

Get related patents on CD
United States Patent5576755   
Link to this pagehttp://www.wikipatents.com/5576755.html
Inventor(s)Davis; Bruce (5505 Preserve Pkwy. South, Greenwood Village, CO 80121); Darata; Paul (2599 W. Long Cir., Littleton, CO 80120); Morris; Michael (30 Whistling Swan La., Downington, PA 19355); Schwartz; Michele S. (2900 Knights Rd. A-16, Bensalem, PA 19020); Collins; Debbie (1 Ashbourne Rd., Darby, PA 19023); Dasch; John H. (761 Collins Ave., Lansdale, PA 19446); Zucker; Jonathan S. (1559 Fitzwatertown Rd., Willow Grove, PA 19090); Gorman; Mitchell S. (2807 Sagemore Dr., Marlton, NJ 08053)
AbstractThe system and method of the present invention provides for automated checking of the program listings data in a database of television program schedule listings used in an electronic program guide ("EPG"). The integrity of the program listings data is verified prior to transmission of the data to a cable or other pay television system (or prior to transmission to viewers). The verification system may be used to check the entire database or a user-defined subset of the database for one or more of the following: missing stations, schedule gaps and overlaps, missing titles, missing copy, missing fields, missing movie ratings, lengthy titles, lengthy copy, editorial errors, and inappropriate language. In this manner, the EPG provider ensures the integrity of the EPG data and substantially reduces the time required to manually check all of the data in the program listings database. The verification system may be easily integrated with other processing steps performed on the EPG data prior to being transmitted to cable and multi-system operators.
   














 Title Information Submit all comments and votes
 
Patent Text Patent PDF Print Page Summary File History
Plain text PDF images Print Summary File History Custom Search
Drawing from US Patent 5576755
System and method for verification of electronic television program

     guide data - US Patent 5576755 Drawing
System and method for verification of electronic television program guide data
Inventor     Davis; Bruce (5505 Preserve Pkwy. South, Greenwood Village, CO 80121); Darata; Paul (2599 W. Long Cir., Littleton, CO 80120); Morris; Michael (30 Whistling Swan La., Downington, PA 19355); Schwartz; Michele S. (2900 Knights Rd. A-16, Bensalem, PA 19020); Collins; Debbie (1 Ashbourne Rd., Darby, PA 19023); Dasch; John H. (761 Collins Ave., Lansdale, PA 19446); Zucker; Jonathan S. (1559 Fitzwatertown Rd., Willow Grove, PA 19090); Gorman; Mitchell S. (2807 Sagemore Dr., Marlton, NJ 08053)
Owner/Assignee    
Patent assignment
All assignments
Company News
Publication Date     November 19, 1996
Application Number     08/330,684
PAIR File History     Application Data   Transaction History
Image File Wrapper   Patent Term   Fees
Litigation
Filing Date     October 28, 1994
US Classification     725/48 725/54
Int'l Classification     H04N 007/14
Examiner     Kostak; Victor R.
Assistant Examiner    
Attorney/Law Firm     Weil, Gotshal & Manges LLP
Address
Parent Case    
Priority Data    
USPTO Field of Search     348/6 348/7 348/12 348/13 348/906 348/9 348/722 348/180 455/4.2 455/5.1 455/6.1 455/3.1
Patent Tags     verification electronic television program guide data
   
Enter a comma (,) or semicolon (;) between multiple tag words/phrases.
Describe this patent:
 Amusing   
 Clever   
 Complex   
 Efficient   
 Historic   
 Important   
 Innovative   
 Interesting   
 Practical   
 Simple   
[no votes]
Patent WIKI

Share information and news about this patent, including information and news about the technology, inventors, company, ligation and licensing.

 References Submit all comments and votes
 
*references marked with an asterisk below are user-added references
 U.S. References
 
Add a new US reference:  
ReferenceRelevancyCommentsReferenceRelevancyComments
5416508
Sakuma
725/54
May,1995

[0 after 0 votes]
5353121
Young
725/52
Oct,1994

[0 after 0 votes]
5323234
Kawasaki
725/141
Jun,1994

[0 after 0 votes]
4945412
Kramer
348/460
Jul,1990

[0 after 0 votes]
4706121
Young
348/27
Nov,1987

[0 after 0 votes]
4639779
Greenberg
348/460
Dec,1969

[0 after 0 votes]
5283639
Esch
725/32
Dec,1969

[0 after 0 votes]
 Foreign References
 Other References
 Market Review Submit all comments and votes
   
Market Size
Estimate the gross annual revenues of the relevant market sector:
> $10B
$5B - $10B
$2B - $5B
$500M - $2B
$100M - $500M
$10M - $100M
$1M - $10M
$500K - $1M
$100K - $500K
< $100K
[No votes]
$0
 
$0   $2.5B   $5B   $7.5B   $10B

[0 market size comments]
Market Share
Estimate the percentage of the relevant market sector this invention will capture:
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%

[0 market share comments]
Reasonable Royalty
What percentage of gross sales should the inventor or assignee be paid?
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%

[0 reasonable royalty comments]
Public's "Guesstimation" of Royalty Value
Market SizeN/A[No votes]
xMarket ShareN/A[No votes]
xReasonable RoyaltyN/A[No votes]

N/A

[0 Guesstimation of Royalty Value Comments]
License Availablity
If you are NOT the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
[0 license availability comments]
License Availablity
If you ARE the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
[0 owner/assignee comments]
Competitive Advantage
Does this invention have a significant competitive advantage over similar technologies?
Yes

No



[No votes]
Most helpful competitive advantage comment
[No comments]

[0 competitive advantage comments]
Commercial Alternatives
Are there viable commercial alternatives for this invention?
Yes

No



[No votes]
Most helpful commercial alternative comment
[No comments]

[0 commercial alternatives comments]
 Technical Review Submit all comments and votes
 Claims Submit all comments and votes
 


We claim:

1. A data verification system for automatically verifying the integrity of a database of program schedule information for an electronic television program guide comprising:

storage means for storing a database of television program schedule listings, said database comprising a plurality of data fields for a plurality of television stations;

means for selecting a station from said plurality of stations for verification of one or more of said data fields for said selected station;

means for selecting a time range for said verification of said one or more data fields;

data processing means for automatically analyzing said data fields for said selected station in said database for at least one of schedule gaps and schedule overlaps in the schedule data for said station, and

editing means for editing said data fields for said selected station in said database.

2. The system of claim 1 further comprising transmitting means for transmitting said database to a remote location.

3. The system of claim 1 wherein said data processing means further automatically analyzes said data fields for said selected station in said database for at least one of missing titles, copy, and fields.

4. The system of claim 1 wherein said data processing means further automatically analyzes said data fields for said selected station in said database for at least one of lengthy titles and lengthy copy.

5. The system of claim 1 wherein said data processing means further automatically analyzes said data fields for said selected station in said database for editorial errors.

6. The system of claim 1 wherein said data processing means further automatically analyzes said data fields for said selected station in said database for inappropriate language.

7. The system of claim 1 wherein said transmission means transmits said database to a plurality of cable systems.

8. The system of claim 1 wherein transmission means transmits said database to a plurality of television viewers.

9. The system of claim 1 wherein said data fields for said selected station in said database comprise schedule times and run times for a plurality of television programs and said data processing means determines if either of the following inequalities is substantially met:

T.sub.n+1 >T.sub.n +RT.sub.n

T.sub.n+1 <T.sub.n +RT.sub.n

where T.sub.n denotes the schedule time and RT.sub.n the run time for the nth listing in the database for said selected station, and T.sub.n+1 denotes the schedule time for the n+1th listing in the database for said selected station.

10. The system of claim 1 further comprising a display device for listing the start time and end time of said gaps and/or overlaps.

11. A data verification system for automatically verifying the integrity of a database of program schedule information for an electronic television program guide comprising:

storage means for storing a database of television program schedule listings, said database comprising a plurality of data fields for a plurality of television stations;

means for selecting a station list file for comparison against said plurality of television stations in said database;

data processing means for automatically comparing said station list file against said data fields for said plurality of stations in said database to determine if each station in said file is included in said database; and

editing means for editing said database.

12. The system of claim 11 wherein said data processing means further automatically analyzes said data fields for said stations in said station list file for at least one of missing titles, copy, and fields.

13. The system of claim 11 wherein said data processing means further automatically analyzes said data fields for said stations in said station list file for at least one of lengthy titles and lengthy copy.

14. The system of claim 11 wherein said data processing means further automatically analyzes said data fields for said selected station in said station list file for editorial errors.

15. The system of claim 11 wherein said data processing means further automatically analyzes said data fields for said stations in said station list file for inappropriate language.

16. The system of claim 11 further comprising a display device for listing each station in said file not included in said database.

17. In an electronic program guide system for television programs, a system for automatically verifying the integrity of the data contained in a database of television program schedule information comprising:

storage means for storing a database of television program schedule information, said database comprising a plurality of data fields for a plurality of television stations;

means for selecting a station from said plurality of stations for verification of one or more of said data fields for said selected station;

means for selecting a time range for said verification of said one or more data fields;

a data processor for automatically analyzing said data fields for said station to locate gaps in the schedule data for said television station included in said program schedule information,

and a display device for displaying information identifying said gaps.

18. The system of claim 17 wherein said data processor automatically locates schedule overlaps in said data fields for said selected station in said database and said display device displays information identifying said schedule overlaps.

19. The system of claim 17 wherein said data processor automatically locates missing titles in said data fields for said selected station in said database and said display device displays information identifying the locations of said missing titles.

20. The system of claim 17 wherein said data processor automatically locates missing fields in said data fields for said selected station in said database and said display device displays information identifying the locations of said missing fields.

21. The system of claim 17 further comprising means for transmitting said database to a plurality of remote locations.

22. The system of claim 21 wherein said plurality of remote locations comprise cable systems.

23. In an electronic program guide system for television programs, a system for automatically verifying the integrity of the data contained in a database of television program schedule information comprising:

storage means for storing a database of television program schedule information, said database comprising a plurality of data fields for a plurality of television stations

means for selecting a station list file for comparison with said plurality of television stations in said database;

a data processor for automatically comparing said station list file against said data fields for said plurality of stations in said database to determine if each station in said file is included in said database;

and a display device for displaying information identifying stations in said file not included in said database.

24. The system of claim 23 wherein said data processor automatically locates missing titles in said data fields for said plurality of stations and said display device displays information identifying the locations of said missing titles.

25. The system of claim 23 wherein said data processor automatically locates missing fields in said data fields for said plurality of stations and said display device displays information identifying the locations of said missing fields.

26. A process for automatically verifying the integrity of a database of program schedule information for an electronic television program guide comprising:

providing a database of television program listings data to a data processor, said database comprising data fields for program titles, program start times, and program run times for a plurality of television stations,

selecting a station from said plurality of stations for verification of one or more of said data fields for said selected station;

selecting a time range for said verification of said one or more data fields;

automatically analyzing said data fields for said selected station in said database for at least one of schedule gaps and schedule overlaps,

listing said schedule gaps and/or schedule overlaps, and

editing said database to correct said gaps and/or overlaps.

27. The process of claim 26 wherein said data processor further analyzes said data fields for said selected station in said database for at least one of missing titles, copy, and fields.

28. The process of claim 26 wherein said data processor further automatically analyzes said data fields for said selected station in said database for at least one of lengthy titles and lengthy copy.

29. The process of claim 26 wherein said data processor further automatically analyzes said data fields for said selected station in said database for editorial errors.

30. The process of claim 26 wherein said data processor further automatically analyzes said data fields for said selected station in said database for inappropriate language.

31. The process of claim 26 further comprising transmitting said database to a plurality of cable systems.

32. The process of claim 26 further comprising transmitting said database to a plurality of television viewers.

33. The process of claim 26 wherein said data fields for said selected station in said database comprise schedule times and run times for a plurality of television programs and said data processor determines if either of the following inequalities is substantially met:

T.sub.n+1 >T.sub.n +RT.sub.n

T.sub.n+1 <T.sub.n +RT.sub.n

where T.sub.n denotes the schedule time and RT.sub.n the run time for the nth listing in the database for said selected station, and T.sub.n+1 denotes the schedule time for the n+1th listing in the database for said selected station.

34. The process of claim 26 further comprising listing the start time and end of said schedule gaps and/or overlaps.

35. A process for delivering an electronic television program guide to a plurality of remote locations comprising:

receiving television program listings from a plurality of information providers,

formatting said program listings,

providing said formatted program listings to a database of program schedule information,

automatically analyzing said formatted listings to locate missing stations, missing titles, schedule gaps, and schedule overlaps,

storing information identifying said located missing stations, missing titles, schedule gaps, and schedule overlaps,

editing said formatted program listings in response to said stored information,

extracting a portion of said formatted and edited program listings from said database,

and transmitting said extracted portion to a remote location.

36. A process for automatically verifying the integrity of the data for an electronic television program guide comprising:

storing a database of television program schedule listings, said database comprising a plurality of data fields for a plurality of television stations,

selecting a station list file,

automatically comparing said station list file against said plurality of data fields to determine if each said station in said file is included in said database,

editing said database to correct for any stations in said file not included in said database, and

transmitting said edited database to a plurality of remote locations.

37. The process of claim 36 further comprising automatically analyzing said plurality of said fields for said stations in said station list file for at least one of missing titles, copy, and fields.

38. The process of claim 36 further comprising automatically analyzing said plurality of said fields for said stations in said station list file for at least one of lengthy titles and lengthy copy.

39. The process of claim 36 further comprising automatically analyzing said plurality of said fields for said stations in said station list file for editorial errors.

40. The process of claim 36 further comprising automatically analyzing said plurality of said fields for said stations in said station list file for inappropriate language.

41. The process of claim 36 further comprising listing the missing stations.

42. A method for automatically verifying the integrity of the data contained in a database of television program schedule information for an electronic television program guide comprising:

storing a database of television program schedule information, said database comprising a plurality of data fields for a plurality of television stations,

selecting a station from said plurality of stations for verification of one or more of said data fields for said station,

selecting a time range for said verification,

automatically analyzing said data fields for said selected station to locate gaps in the schedule data for said television station included in said program schedule information, and

displaying information identifying said gaps.

43. The method of claim 42 further comprising automatically locating schedule overlaps in said data fields for said selected station in said database and displaying information identifying said schedule overlaps.

44. The method of claim 42 further comprising automatically locating missing titles in said data fields for said selected station in said database and displaying information identifying the locations of said missing titles.

45. The method of claim 42 further comprising automatically locating missing fields in said data fields for said selected station in said database and displaying information identifying the locations of said missing fields.

46. The method of claim 42 further comprising editing said database and transmitting it to a plurality of remote locations.

47. The method of claim 46 wherein said plurality of remote locations comprise cable systems.

48. In an electronic program guide system for television programs, a method for automatically verifying the integrity of the data contained in a database of television program schedule information comprising:

storing a database of television program schedule information, said database comprising a plurality of data fields for a plurality of television stations,

selecting a station list file,

automatically comparing said station list file against said plurality of data fields to determine if each said station in said file is included in said database, and

displaying information identifying the stations in said station list file not included in said database.

49. The method of claim 48 further comprising locating missing titles in said plurality of fields for said stations in said station list file and displaying information identifying the locations of said missing titles.

50. The method of claim 48 further comprising locating missing fields in said plurality of fields for said stations in said station list file and displaying information identifying the locations of said missing fields.
 Description Submit all comments and votes
 


BACKGROUND OF THE INVENTION

This invention relates to an electronic program guide ("EPG") system that provides users with schedule information for broadcast or cablecast programs available for viewing on a video display. More particularly, it relates to a system and method for verification of the EPG data prior to transmission to a plurality of remote locations such as cable system head ends or viewer sites.

Electronic program guides for television systems are known in the art, particularly with regard to cable television systems. For example, one common implementation of a electronic program guide utilizes a dedicated cable television channel for continuously broadcasting program schedule information. The advantage of such a system is that it is relatively easy to deploy because it is centrally implemented at the cable head-end. No additional electronics or software are required at the viewer location because full control of the display is maintained at the cable head-end. The display information is then broadcast continuously on a dedicated cable channel. The television viewer simply tunes the cable converter box or television tuner to the channel on which the schedule information is modulated and views the program listings. Typically, these program guides utilize a scrolling display of television listings or a fixed display that periodically changes. Some systems employ a partial screen of listings with additional information in the remainder of the screen such as advertisements for movies on pay channels, pay-per-view (PPV) event schedules, time and weather information, and other commercial information. These systems generally incorporate a grid or matrix to display the program schedule information, with a different row for each channel and columns representing different time slots.

In addition, interactive program guides are also known. Such guides permit the user to select the program listings to be displayed based on user selection criteria and display the listings on the television receiver in a desired format. Interactive guides are more versatile than dedicated channel guides because they operate under user control. However, they are more costly to implement because they require memory and processor capabilities at each user site. The present invention may be used with either dedicated channel or interactive program guides because it operates on the program listings data common to both types of guides.

Modern cable systems include upwards of 100 channels. Thus, for both dedicated channel and interactive program EPGs, large quantities of data are required to provide a complete listing of program schedule information. A problem common to both types of systems is that there are often errors in the data that must be corrected. Errors may arise for any number of reasons. First, it is common for a complete database of program listings to be compiled from several different sources. Much of the data is available on a national basis, including network schedules (both broadcast and cable), pay-per-view listings, and regional programming. Some data, however, must be obtained at a local level, including locally originated programs, channel maps for individual cable systems, and pricing for pay-per-view programs. The fact that there is no single entity responsible for compilation of the entire listings database increases the risk of errors. For example, a portion of the data may need to be converted to a different format before it can be utilized in the program guide.

Second, the listings database contains an enormous amount of data. Electronic program guides, whether of the dedicated channel or interactive variety, include a database comprising the program listings information for the various stations and pay-per-view channels. The listings data may be arranged in weekly blocks or other time periods. As an example, consider a cable system with eighty (80) channels, each one broadcasting 24 hours a day. Assuming for each station a daily average of four hours of two-hour programs, five hours of on-hour programs, and the balance comprising one-half hour programs, 37 different programs are aired per channel per day. Thus, a one week database comprises on average information for 37.times.80.times.7=20,720 programs. Although many programs repeat on a daily basis, it is apparent that even one weeks' worth of program listings for the average cable system is a very large amount of data. In addition, while much of the data may be compiled in advance, a substantial number of listings must be added, and schedule changes accounted for, shortly before the data is transmitted to the various cable systems. The volume of data makes it difficult and time consuming to manually ensure its reliability.

Finally, certain programs, primarily sports events, are not scheduled as far in advance as other programs. For example, although a time slot may be slated for a baseball game, it may not be known until one week or less in advance of the scheduled game, the particular game to be broadcast. There is thus a need to efficiently and quickly identify entries in a listings database that require editing of one form or another either to add information or correct errors.

A program listings database with incorrect listings or incomplete information is of limited utility. There is thus a need to ensure the reliability of the data transmitted to the cable systems and ultimately to viewers. However, because the volume of data is so great, there is a need for an automated procedure for verification of the data to reduce the number of manual hours required. There is thus a need for an automated system and method of reviewing the EPG data and flagging any errors therein. In addition, there is a need to provide a list of any such errors to a database editor to permit the editor to take whatever corrective action is necessary. In addition, different data may need to be generated for different cable systems because, e.g., each cable system may have different local programming or pay-per-view programs or schedules.

One factor that complicates the task is the need for a program listings database to be compatible with a plurality of different platforms. Different cable systems may have different hardware configurations at the cable system head-end and different set-top converter boxes at the viewer locations. For example, EPGs typically display program listings in grid format with columns representing different time slots and rows representing different channels. Set-top converters vary with regard to their text display capabilities. Some may display text using a proportional font while others use a standard font. In addition, some are configured to display symbols in the grid cells in addition to text which decreases the available space for text display. Thus, the database must be configured in such a way to accommodate the varying capabilities of set-top converters. One way to accomplish this is by editing the text (program titles, copy, station identifications, and any other text included in the EPG) to abbreviate any text that does not fit into a particular grid cell. A system for assisting in this "text fit" process is described in co-pending application Ser. No. 08/247,059. Thus, when verifying the data prior to transmission to a cable system, it is necessary to specify the platform on which the EPG operates so as to determine if the listings are properly edited for the particular platform.

The system and method of the present invention provides for automated checking of the program listings data in the database. The disclosed invention solves these and other problems of prior art EPG systems by providing a system and method for verification of the EPG data prior to transmission to a cable or other pay television system (or prior to transmission to viewers). Prior to being processed by the data verification system of the present invention, the database of television program schedule listings may undergo initial processing as follows. First, the data is collected from the various information providers and checked for high level errors. Next, it may be required to normalize the data to the EPG database structure and format as it is possible that the information collected from the different sources uses different formats and syntax. Finally, the data may be processed with a text fit system to determine if any titles in the database require editing in order to fit within a grid cell of a predetermined size for any of the different platforms on which the EPG will operate. Alternatively, the text fit process may be incorporated as part of the listing verification process so that text requiring editing to fit within a particular grid cell size is identified and presented to the user for editing if not already included in a library or look-up table of pre-edited text.

At this stage, the listing verification system and procedure of the present invention operates on the data to check for any errors in the data. In particular, checks may be run for any missing stations, schedule gaps, schedule overlaps, missing titles, missing copy, missing fields (i.e., run time, slot time, program type), missing movie ratings, missing program origin, missing PPV price, PPV events on non-PPV station, non-PPV event on PPV station, inappropriate language, lengthy titles, lengthy copy, and editorial errors. "Lengthy" as used herein refers to text that is too long to fit into the allocated grid space in the program guide. Errors are automatically written to output files and separate files are used for each of the above parameters.

The database may also be processed by additional steps such as a program listings editing system to cream, delete, or modify individual program listings and a channel map editing system to create, delete, or modify individual channel maps, which contain information identifying the stations carried by a cable system as well as the on-air times for each station. The program listings may be searched using the program title, program identification number (PIN), or station name. It is preferable to perform these editing steps prior to listing verification and text fit to ensure that all of the data in the data file has been processed by these latter two steps. Alternatively, the listing verification process may be re-run if any editing is performed after initial verification of the data. Finally, an extract process is run against the database to create data files containing cable system specific data based on a specified date range and channel map. The data files may be ASCII or tightly packed binary files readable by the cable system to which it is destined. Finally, the data is processed according to the specific platform and transmitted to the designated cable system. Cable system as used herein is not limited to standard cable television systems but includes direct broadcast television systems, over-the-air pay television systems, and any other television program distribution system including central control over the distribution of a television signals for a plurality of stations.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram showing an EPG delivery system including the data verification system of the invention herein.

FIG. 2 is a flow chart illustrating the overall operation of the data verification system of the invention herein.

FIG. 3 is a flow chart showing the operation of the schedule gaps and overlaps verification step of one embodiment of the data verification system of the invention herein.

FIG. 4 is an illustration of a user interface for setting the parameters of one embodiment of the data verification system of the invention herein.

FIG. 5 is an illustration of a post-verification correction menu of one embodiment of the data verification system of the invention herein.

FIG. 6 is illustration of the correction editor feature of one embodiment of the data verification system of the invention herein.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

System Configuration

The data verification system 1 of the present invention may be described with reference to the appended figures. FIG. 1 is a block diagram illustrating schematically the general configuration for one embodiment of an electronic program guide delivery system. Information for the database may originate from several different information providers. For example, one source 101 may provide all the national listings which may include network (both broadcast and cable) schedules, and regional program schedules or, alternatively, there may be multiple sources of such information. A single second source 102 (or combination of second sources) may provide local listings information which includes schedules for locally originated programs, channel maps for individual cable systems, and information on shared channels (single cable channels that carry different programming during different parts of the day). A third information provider 103 (or multiple providers) may furnish all of the listings information for pay-per-view events. It may even be the case that each of these categories of program schedule information are provided by multiple sources. Of course, it is also possible that all the information be gathered and provided by a single source or that overlapping information be gathered from the multiple sources. In addition, there may be other information providers such as billing vendors that furnish billing information.

Due to the fact that the listings database is likely to be comprised of information from a variety of different sources which may or may not furnish the data in the desired format, it may be necessary to perform format conversion and/or syntax verification 111-113 on the received data prior to loading it into the database. This step is necessary to ensure that the data is in a uniform format in the database for further processing. A second function which may be performed on the data is pre-verification editing 120. One example of such editing is processing of the data by the text fit system 121 disclosed in co-pending application Ser. No. 247,059. Text fit processing in effect expands the database to include multiple values for text fields for individual listings to accommodate different EPG platforms. For example, varying amounts of space are allocated for program titles for the different platforms. In addition, within the same platform, multiple versions of a title may be required to fit inside grid cells of, e.g., for a two hour program, 30, 60, 90, and 120 minutes. The text fit system determines whether an edited version of a title is required to fit within the designated space for a particular platform and grid cell. The database is then edited to include an abbreviated version of the title as well as the full title for the listing. It is also possible that a portion of the data will already contain multiple versions of titles. In some cases, it may be desirable to incorporate the text fit process into the verification utility by using the verification utility to first identify listings requiring processing with the text fit system and then running the text fit system on these identified listings. Depending on the particular implementation of the EPG delivery system, it may be desirable or necessary to perform additional pre-verification processing on the data.

Following the pre-verification processing steps, the listings database 130 is assembled and processed by the data verification system 1. As shown in FIG. 1, the data verification system 1 operates on the listings database and generates error reports 140 for errors found therein. The program listings and channel map editing systems 150 and 160 are used to make changes to the data in the listings database 130. The data verification system operates under user control to determine which data fields are to be checked. Alternatively, the system can operate fully automatically to check all data fields. An advantageous feature of one embodiment of the present invention is the creation of reports for each type of error. The reports permit the editor to reconcile any missing or conflicting information in the database with the information provider. The reports may be electronically generated and then viewed on a computer, stored in electronic format, or printed as hard copies. The utility operates on the database of program listings information for a user definable time period, such as one week. For each verification utility, stations may be selected individually, by channel map, platform type, multi-system operator ("MSO"), or arbitrary grouping. Each of the processing options associated with the system is discussed below. The operation of the various options is discussed under the section headed "System Operation." Following processing by the data verification system 1, the data is transmitted to cable systems after undergoing extraction 170 and format conversion 180.

1. Missing Stations

In order to determine if there are any stations missing from the database, the listings database (or any subset thereof) is checked against a second database that includes a list of all stations that should be included in the listings database or subset, such as a station list file for a particular cable system. The missing stations verification utility then outputs to a file a list of the missing stations.

2. Schedule Gaps and Overlaps

It is important to ensure that there are no gaps in the programming schedule. Included in the database is an indication of the daily on-the-air periods for each station. The database is then checked to determine if, for any designated station, there are any gaps between the ending time of a program and the start time of the next program. The end times for listings are calculated by adding the program's slot time (total time until the beginning of the next listing) to the start time. The system provides the flexibility of being able to specify any time range for checking for gaps and overlaps. If the beginning of the time range for a channel does not coincide with the beginning of a program, the system will check for the "intersecting listing", i.e., the listing starting prior to and ending after the beginning of the specified time range. Schedule holes are written to a file that includes the date, station, start time, and end time of the hole or other information sufficient to uniquely identify the schedule hole.

This option also checks for overlaps in a similar manner. If the listings data indicates that a program on a particular channel begins prior to the sum of the start time plus the run time of the previous program, the listing is flagged as a program overlap error.

3. Missing Titles

The listings database is checked for missing titles for program events, i.e., where the listing has no title field. Listings with missing titles are written to a file that includes the date, station, and start time of the listing.

4. Missing Copy

Certain program listings include additional descriptive information in addition to the program title called "copy." These include movies, live sports, and pay-per-view programs. The additional information may also be provided for other programs as well as determined by the operating rules for the EPG. The missing copy option checks these listings for missing copy and writes any such listings to a file with sufficient context data to identify the program, such as program date, station, start time, and title.

5. Missing Fields

This option checks the database listings to ensure that all required fields for each type of program are present. For example, according to the operating rules of the EPG as defined by the EPG provider, the schedule information for pay-per-view and premium movies must include an MPAA rating as this parameter may be used by viewers to lock-out certain movies. Thus, the missing fields option will check that the MPAA rating, as well as the other fields dictated by the operating rules, are in the database for the pay-per-view and premium listings. For PPV events, the operating rules may further dictate that the schedule information include price information, a telephone number for ordering the event, and promotional copy used for advertising the event. The missing fields option would then check these fields as well for programs designated as PPV events. Similarly, the operating rules may dictate different required fields for other types of listings. Listings with missing fields are written to a file including the date, station, and start time of the program, as well as an identification