throbber
W0 94/1428!
`
`PCT/US93/11617
`
`_2151458
`
`39
`
`there is a textual description for a program. such as a movie.
`
`the description may be given following that program's coded
`
`description or may be communicated following the four hours
`
`of programming information. As is shown in the coded
`
`listing. program descriptions for programs greater than a half
`
`hour in length need not be repeated (each half hour). The
`
`video description code informs the set top terminal 220
`
`whether there is still or live video available to advertise the
`
`program.
`
`For example. a sporting program may be assigned a
`
`code of B35-010194-1600-3.25-Michigan St. vs. USC. The
`
`letter B would assign the program to category B. sports. The
`
`second alpha-numeric character number 3 would assign the
`
`program to the third menu of the sports category. The third
`
`character of the code. number 5. assigns the program to the
`
`fifth program slot on the third menu.
`
`The next six
`
`characters. 01/ 01/ 94, represent the date. The following four
`
`characters. 1600 represent the start time which is followed
`
`by the length of the program and the program name. This
`
`entry represents a sports show. a college football game. which
`
`will be aired at 4:00PM on New Years day 1994.
`
`In the 12:30 Channel
`
`1 entry of TABLE A. two menu
`
`codes are shown. By allowing two menu codes. programs that
`
`may fit under two different category descriptions may be
`
`shown in both menus to the subscriber. With this minimal
`
`amount of information being communicated to the set top
`
`terminal 220 on a regular basis.
`
`the terminal is able to
`
`determine the proper menu location for each program and
`
`the proper time and channel to activate for the subscriber
`
`after his menu selection.
`
`in the preferred embodiment. the
`
`menu codes are generated at the Operations Center 202.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`Page 001038
`
`

`
`“:0 94/1428]
`
`PCT/‘U593/11617
`
`215iA53
`
`D
`
`40
`
`Table B shows an example Events Table that may be
`
`downloaded to a set top terminal 220 using the Event Data
`
`file which contains information about events and pricing. As
`shown in the table. the three columns of the Events Table
`
`5
`
`the field itself and the type of
`identify the field number.
`information downloaded in the Event Data tile. The first
`
`column contains the field numbers 1 through 11. The middle
`
`column contains the corresponding field parameters.
`
`including the event type. event ID. global channel ID, price.
`start time. end time. start date. end date. P— icon, name and
`
`10
`
`description. The third column contains corresponding field
`type infonnation. As shown in this field type information
`
`typically consists of an unsigned integer; hours. minutes and
`
`15
`
`seconds: months. day and year; and ASCII character
`identifier.
`
`20
`
`30
`
`25
`
`Table C shows an example Event Data data file.
`
`In
`
`35
`
`particular. Table C shows two data streams corresponding to
`two event types. The first data stream identifies a YCTV event
`
`in the first field. The second field designates the event ID.
`
`Page 001039
`
`

`
`W0 94/14231
`
`- 2 1 5 1 45 8
`
`PCT/US93/11617
`
`41
`
`which is 1234 in this example. The third field includes the
`
`global channel ID number two. The fourth field indicates the
`
`cost of 50 cents for this event. The fifth and sixth fields
`
`indicate the respective start and end times of 3:00 a.m. to
`
`5
`
`3:00 p.m.. respectively. The seventh and eighth fields show
`the corresponding start and end date. designated as 8/25/93
`
`and 8/27/93. respectively. Field nine indicates the P icon set
`
`to a graphics file. Finally. fields ten and eleven indicate the
`
`name and description of the event selected. which in this
`
`10
`
`case is TM and TM. The second data
`
`stream in the Event.Dat example shown in Table C includes
`
`analogous information for
`
`Iggmingtgr 11'“. which.
`
`is
`
`designated in field one as a pay-per-view event.
`TABLE C
`
`15
`
`20
`
`25
`
`30
`
`Event Data Example
`0 ; 0'0 fl:
`
`Se
`
`
`The program control
`
`information signal 276 and
`
`STTCIS can be formatted in a variety of ways and the on-
`
`screen menus can be produced in many different ways. For
`instance.
`if the program control
`information signal 276
`
`carries no menu format information.
`
`the menu format for
`
`creating the menus can be fixed in ROM at the set top
`
`terminal 220. This method allows the program control signal
`276 to carry less information but has the least flexibility since
`
`the menu formats cannot be changed without physically
`swapping the ROM holding the menu format information.
`In
`
`the preferred embodiment. the menu format information is
`
`stored at the set
`
`top terminal 220 in temporary memory
`
`either in a RAM or EPROM. This configuration provides the
`
`Page 001040
`
`

`
`W0 94/14281
`
`PCTIUS93/11617
`
`1&5‘
`
`42
`
`desired flexibility in the menu format while still hunting the
`
`amount of information needed to be communicated via the
`program control information signal ‘276. New menu format
`
`information would be
`
`sent via the program control
`
`5
`
`information signal 276 or the S'1'i‘ClS to the set top terminals
`
`220 each time there was a change to a menu.
`
`in the simplest embodiment. the menus remain fixed
`
`and only the text changes. Thus.
`
`the program control
`
`information signal 276 can be limited to primarily text and a
`
`10
`
`text generator can be employed in the set top terminal 220.
`
`This simple embodiment keeps the cost of the set
`
`top
`
`terminal 220 low and limits the bandwidth necessary for the
`
`program control information. Another simple embodiment
`
`1 5
`
`uses a separate channel full-time (large bandwidth) just for
`the menu information.
`
`Figures 6a and 6b. particularly Figure 6a. show a data
`
`format 920 at the bit-level for one embodiment of a program
`
`information signal 276. This frame format consists of six
`
`fields. namely:
`
`(1) a leading flag 922 at the beginning of the
`
`20
`
`message.
`
`(2) an address field 924.
`
`(3) a subscriber region
`
`designation 926.
`
`(4) a set top terminal identifier 928 that
`
`includes a polling command/response (or P/F) bit 930. (5) an
`
`information field 932. and (6) a trailing flag 934 at the end of
`
`the message.
`
`25
`
`The eight-bit
`
`flag sequence that appears at
`
`the
`
`beginning 922 and end 927 of a frame is used to establish and
`
`maintain synchronization. Such a sequence typically consists
`
`of a "O111l110" bit-stream.
`
`The address field 924
`
`designates a 4-bit address for a given set top terminal 220.
`
`30
`
`The subscriber region designation 926 is a 4-bit field that
`
`indicates the geographical region in which the subscriber's
`
`set
`
`top terminal 220 is housed.
`
`The set
`
`top terminal
`
`Page 001041
`
`

`
`W0 94/1428]
`
`PCT/US93I116l7
`
`_2151458
`
`43
`
`identifier 928 is a 16-bit field that uniquely identifies each set
`
`top terminal 220 with a 15-bit designation followed by an
`
`appended P/F bit 930. Although field size is provided by this
`
`example. a variety of sizes can be used with the present
`invention.
`
`5
`
`The P/F bit 930 is used to command a polling response
`
`920' (Figure 6b) from the set top terminal 220 addressed.
`
`The polling response 920' is substantially similar to the from
`
`format 920. and is commonly numbered. but with a prime (‘)
`
`10
`
`designation appended for clarity. The frame format 920 also
`
`provides a variable-length information field 932 for other data
`
`transmissions. such as information on system updates. The
`
`frame format ends with an 8-bit flag 934 (or trailing flag) that
`is identical in format to the leading flag 922. as set forth
`
`1 5
`
`above. Other frame formats, such as MPEG. for example. will
`
`be apparent to one skilled in the art and can be easily adapted
`
`for use with the system.
`
`D. §mma
`
`The program control
`
`information signal 276 is
`
`20
`
`produced substantially by the CAP CPU 264 and the Delivery
`Control Processor Unit
`(DCPU) 270. An overview of the
`
`software modules. focusing on the processing of signals and
`communication between CAP CPU 264 and DCPU 270 is
`
`shown in Figure 7. The software modules for the CAP CPU
`
`25
`
`264 and DCPU 270 include dispatcher 484. processing 486
`
`and communications 488. each of which performs like-named
`
`functions. as well as supporting database 490 access.
`
`Processing within the CAP CPU 264 is controlled by the
`
`dispatcher 484 software module which may generate
`
`30
`
`processing commands based on user command (e.g.. do
`
`something now). schedule events (e.g., do something at noon)
`
`or based on the occurrence of other events
`
`(e.g.. do
`
`Page 001042
`
`

`
`WO 94114281
`
`PC'I'IUS93l1l6l7
`
`X555?’
`
`44
`
`something when the database is updated). The dispatcher
`
`484 sends messages to the processing software module 486
`
`instructing it to process information within the database 490
`
`and generate control information for the DCPU 270.
`
`For
`
`5
`
`example. based on the updating of information associated
`
`with a particular headend 208.
`
`the dispatcher 484 may
`
`command the CAP CPU 264 to regenerate headend 208
`
`parameters. perform any required database integrity checking
`
`and send them to the DCPU 270. Also. in the case of headend
`
`10
`
`208 information processing. a filtering function (not shown)
`
`is performed which eliminates any information that does not
`
`either directly or indirectly relate to a given headend 208.
`
`Information transfer between the CAP CPU 264 and the DCPU
`
`15
`
`270 is controlled by the DCPU communications software
`module 488.
`
`Information received by the DCPU 270 from the CAP
`
`CPU 264 is processed at the DCPU processing module 496
`
`and put into a form consistent with the DCPU 270. Some of
`
`this information is used for DCPU control. while most is data
`
`20
`
`to be integrated into the program control information signal
`
`261.
`
`some of this information is also used for miscellaneous
`
`control 494 for such things as external multiplex equipment.
`
`source material generation hardware.
`
`transmission
`
`equipment and so on.
`
`Information destined for the program
`
`25
`
`control information signal 261 may be transmitted once or
`
`may be scheduled for periodic transmission. This information
`
`is integrated by the processing module 496 with other
`
`information. both internal and external. The DCPU scheduler
`
`module 497 is responsible for scheduling and regulating this
`
`30
`
`data traffic. Also. the scheduler 497 may perform information
`
`filtering.
`
`For example.
`
`imbedded date/time information
`
`within the information records of interest can be used for
`
`Page 001043
`
`

`
`WO 94114281
`
`A 21 5 1 4 5 8
`
`PCT/US93I116l7
`
`45
`
`filtering. External pass-through control information 495 may
`
`also be incorporated into the program control information
`
`signal 261 to provide external input to this digital data
`
`stream.
`
`The DCPU multiplexer 498 is responsible for
`
`5
`
`multiplexing external pass-through control
`
`information.
`
`Finally. a transmission software module 499 in conjunction
`
`with appropriate communications hardware (not shown).
`
`controls the output of both the program control information
`
`signal 261 and the miscellaneous control signals 494.
`
`10
`
`Figure 8 is a high level diagram of CAP software
`
`subroutines and their interrelations. A Main Program (not
`
`shown) orchestrates the use of the various subroutines as
`
`needed to perform the CAPS tasks. The Packager Data Entry
`
`Interface (PDEI) 400. Marketing Information Interface (M11)
`
`15
`
`402. and Cable Franchise Information Access (CI-‘lA) 404
`
`subroutines perform the interface functions between the CAP
`
`Main Program and outside data or
`
`information.
`
`The
`
`remaining subroutines shown in the center column of Figure
`
`8 perform the processing and manipulations necessary to the
`
`20
`
`functioning of the CAP 260.
`
`The Packager Data Entry Interface (PDEI) 400
`
`subroutine includes routines that
`
`enable the Packager to
`
`interactively enter program selections 410. start times of
`
`programs 412. price setting 414. transponder allocation 416.
`
`25
`
`and menu editing 418. The PDEI subroutine 400 controls the
`
`keyboard and mouse data entry by the packager and runs in
`
`concert with the processing and editing subroutines
`
`described later.
`
`The Marketing Information Interface
`
`(M11) 402
`
`30
`
`subroutine interfaces the processing and editing subroutines
`
`with marketing data.
`
`This interface regularly receives
`
`programs watched information from billing sites 420. cable
`
`Page 001044
`
`

`
`wo 94/14281
`
`PCTIUS93/11617
`
`iifilw’
`
`46
`
`headends 208. or set top terminals 220.
`
`In addition. other
`
`marketing information 422 such as the demographics of
`
`viewers during certain time periods may be received by the
`
`MI] 402. The M11 402 also uses algorithms 424 to analyze
`
`5
`
`the program watched information and marketing data 420.
`
`422. and provides the analyzed information to the processing
`
`and editing subroutines.
`
`In the preferred embodiment. an
`
`Executive Information System (EIS) with a yield management
`
`10
`
`subsystem is included in the MI] subroutine as described
`above.
`
`The Cable Franchise Information Access (CFIAI 404
`
`subroutine receives information on cable franchises. as
`
`represented at block 426, such as the particular equipment
`used in a cable headend 208. the number of set top terminals
`
`1 5
`
`220 within a cable franchise. groupings of set top terminals
`220 on concatenated cable systems 210. distribution of "high-
`
`end" cable subscribers. etc. The CFIA 404 generates a cable
`franchise control signal 428 which is integrated with the
`
`20
`
`program control information 276 output to generate cable
`headend 208 specific information to be transmitted. The
`
`25
`
`integration algorithm for accomplishing this resides within
`
`the Generator subroutine described herein below.
`
`The process program line-up subroutine 430 uses
`information from the M11 404 and PDEI 400 to develop a
`program line-up.
`Importance weighting algorithms and best
`fit time algorithms are used to assign programs in time slots.
`
`The process menu configurations subroutine 432
`
`determines appropriate menu formats to be used and
`
`positions programs on menu screens.
`
`Information from the
`
`30
`
`M11 404 and PDEI 400 are used to determine program
`positions on menus.
`
`Page 001045
`
`

`
`wo 94/14231
`
`_ 21 5 145 8
`
`PCT/US93/11617
`
`47
`
`The menu display algorithms 434 displays menus as the
`
`menus would be seen by the viewer on a large CRT or color
`monitor.
`
`The editing of menus subroutine 436 works with the
`
`5
`
`menu display algorithm and PDEI 400 to allow the packager
`
`to edit menus on-the-fly during viewing of the menus.
`
`The graphical transponder allocation display 438 sends
`information obtained from the CI-‘IA 404 and PDEI 400 to
`
`create graphical displays enabling the packager
`
`to
`
`10
`
`comprehend the allocation of transponder space across the
`
`entire television delivery system 200.
`
`In a manner similar to the display and editing of menus
`
`represented at blocks 434. 436. the packager may utilize the
`
`editing transponder allocation subroutine 440 to interactively
`
`1 5
`
`reallocate assignment of transponder space.
`
`In the preferred
`
`embodiment. the EIS with yield management may be used by
`
`the packager to assist in decisions on allocating transponder
`space.
`
`The generator subroutine 442 creates the program
`
`20
`
`control
`
`information signal
`
`for output.
`
`The Generator
`
`subroutine receives the cable franchise control signal and
`
`uses this signal to help create a custom signal for each cable
`headend 208.
`
`The Packaging Routine 448 obtains and packages the
`
`25
`
`programs. along with the program control information signal
`
`216. for transmission to the transponders.
`
`With continued reference to Figures 7. 8 and 9,
`
`the
`
`general software flow of the operations center 202 is
`
`depicted. The flow can be broken up into modules that apply
`
`30
`
`to parts of the database to allow viewing. editing aha adding
`
`records to the database. The software also accomplishes
`
`Page 001046
`
`

`
`wo 94/14281
`
`gxfilllc-3%
`
`PCTIUS93/11617
`
`48
`
`database integrity checking by restricting the user to enter
`
`only valid data. and by checking for conflicts.
`
`Figure 9 shows some of the software involved in the
`
`creation of programs. events and services. This creation
`
`5
`
`occurs prior to or during the processing of the program line-
`
`up 43O shown in Figure 8. With reference to Figure 9. a flrst
`
`step is indicated generally at 461 and includes acquiring
`
`source materials for program production at the Operations
`
`Center 202 (e.g.. tape production). Once the source materials
`
`10
`
`are collected 460. and entered into the database "D".
`
`they
`
`can be used to create programs 462. These programs are
`
`made up of source ‘cuts’ from various video/audio source
`
`materials. Once the programs have been generated and
`
`entered into the database “D”. events. collections of one or
`
`15
`
`more programs. are created 464.
`
`Each event
`
`is then
`
`schedule onto a service 466. with the software checking for
`
`conflicts. Each service is given run times. and days. and
`checked for conflicts. Once the services and events have
`
`been created. the event names can be added to the menus
`
`20
`
`468. The programs for the events and services may be stored
`
`at the Operations Center (as shown in Figure 11 at 286).
`
`Processing and manipulation of the events or records is
`
`depicted generally at 463.
`
`The packager user interface (a portion of 463) for each
`
`25
`
`of the creation modules works substantially identically to each
`of the other modules to make the interface easy to use and
`
`learn. The packager user interfaces forms a portion of the
`
`PDEI 400 shown on Figure 8. The browse system 470 is
`
`entered first and allows viewing of records. and selection of
`
`30
`
`specific records. The database can be ‘populated’ by selection
`
`of a button. which activates a populate screen.
`
`As
`
`represented at block 471.
`
`this allows details to be deleted.
`
`Page 001047
`
`

`
`W0 94/1428]
`
`_2151458
`
`PCT/US93ll16l7
`
`49
`
`added or changed for events. programs, and sources. The
`
`browse screen also allows access to the edit screen 472,
`
`where fields in a selected record can be modified. with
`
`conflicts or errors. in scheduling for example. being checked
`
`5
`
`continuously. as at 473 and 474.
`
`'
`
`In use.
`
`the Operations Center 202 of the present
`
`invention performs a variety of management functions which
`
`can be broken out into five primary areas:
`
`(1) cable headend
`
`208 management.
`
`(2) program source management.
`
`(3)
`
`10
`
`broadcast program management, (4) internal program storage
`
`and management. and (5) marketing, management and
`
`customer information. A relational database. such as that
`
`represented by Figure 10. can be used to maintain the data
`associated with these areas.
`
`1 5
`
`I
`
`Customer billing is not included in any of the above five
`
`areas for the Operations Center 202. Although billing can be
`
`handled by the Operations Center 202 (as shown in the
`
`database structure 508. 511).
`
`it is preferred that billing is
`
`handled at a remote location through traditional channels and
`
`20
`
`methods [such as Cable TV billing provided by Telecorp
`
`corporation).
`
`Extracts of customer purchases will be
`
`provided to the Operations Center 202. These extracts of
`
`information will be formatted and correlated with customer
`
`25
`
`demographics for marketing purposes by the Marketing
`Information Interface (M11) 402.
`
`(1) Qa
`
`Management of the cable headend 208 includes the
`
`following activities: defining the cable headend site: profiling
`
`the viewers: determining available set
`
`top equipment:
`
`30
`
`defining the concatenated cable systems connected to the
`
`cable headend site. This information may be stored as cable
`
`franchise information within the Operations Center 202
`
`Page 001048
`
`

`
`W0 94/ 1 4281
`
`215x453
`
`PCT/US93/11617
`
`50
`
`database by the Cable Franchise Information Access routine
`
`404. Such information can be compiled and maintained in a
`
`relational database (described below and shown as 328 in
`
`Figure 11).
`
`(2) £mm
`
`Source programs will be provided by a variety of
`
`networks.
`
`Information from the contractual records to the
`
`actual program tapes should be maintained and includes:
`
`tracking of property rights:
`
`tracking and profiling source
`
`tapes: profiling source providers. A relational database [such
`
`as “D” shown in Figure 9) can be used, for example. that
`
`identifies and correlates programs sources. Programs may be
`
`received from various rights holders. and such a database
`
`would track the person or entity that owns the rights to each
`
`program at issue. Other data could be maintained relating to
`
`program cuts (a program cut is a portion of a program) that
`
`specifies.
`
`for example, the program from which the cut is
`
`taken.
`
`Information relating to time slot allocations. menu
`
`10
`
`15
`
`20
`
`entries, and categories. and channel assignments are also
`maintained in the relational database.
`
`25
`
`Program services represents a purchasable time slice
`
`which is occupied by a type of programming. Each time slice
`
`has multiple time constraints. Using the purchasing of
`through time slices allows for great flexibility. An infinite
`
`number of program and time slice combinations are possible.
`Preferably. services are created using the software shown in
`
`Figure 9. particularly the service creation routine 466. For a
`
`service to become available at a cable headend 208 site. it is
`
`30
`
`mapped to the site. At the time of mapping the program
`service is assigned a program channel.
`
`Program services are defined by the following fields:
`
`Service ID
`
`System generated unique ID
`
`Page 001049
`
`

`
`W0 94/1428]
`
`PCT/US93/11617
`
`_2151458
`
`51
`
`Description
`
`Describes the service. The description
`
`will allow the packager to easily assign a
`
`service to a broadcast program.
`
`'1‘./P8
`
`Defines the type of service. Current
`
`service types include YCTVT“, Grid.
`Network and Other.
`
`Network ID
`
`Relevant
`
`for
`
`network
`
`services.
`
`Broadcast Event
`
`Relevant for a YC'l'V'““ service.
`
`Identifies
`
`(examples: ABC, NBC. DISC”)
`
`the current YCTVT“ broadcast event
`
`PICON me
`
`Name of
`
`the picture icon (PICON)
`
`assigned to the service.
`
`assigned to the service. This picon is
`
`displayed for example on the buy screen
`
`for a pay per view event.
`
`Expiration Date
`
`Expiration date of the service. Removes
`the service from the service selection
`
`list.
`
`Day Start
`
`Each service is a series of days within a
`
`Day Stop
`Time Start
`
`week. This represents the starting day.
`
`(example: Monday)
`
`Represents the last day in the interval.
`
`Within a day.
`
`the service has a time
`
`period.
`
`'I'his field represents the start of
`
`the period.
`
`1 O
`
`1 5
`
`2 0
`
`25
`
`Time Stop
`
`Represents the end of the time period.
`
`Required Tape
`
`If stored tapes are required. the number
`
`of tapes required by the service.
`
`(3)
`
`B
`
`30
`
`Broadcast program management is one focal point of
`
`the data management system. The issues of product. price.
`
`promotion and packaging are addressed at
`
`this level.
`
`Page 001050
`
`

`
`W0 “/1431
`
`PCTlUS93ll16l7
`
`2x5XQB%
`
`52
`
`Decisions in these areas will affect the actual programming
`that will be shown to the viewers.
`Information on description
`of the content of each program event. program scheduling.
`broadcast program pricing. TV/set top information flow and
`information on how broadcast programs will be mapped to
`viewer channels should be included in the database.
`
`Preferably. the EIS system described below will access this
`
`data and assist in the Broadcast Program Management.
`(4) mm
`the
`Information an internally stored programs at
`Operations Center 202 should also be maintained. This will
`allow the Operations Center 202 to assemble electronically
`stored programs. CD stored programs and program tapes. and
`ensure the quality of programs and location of programs.
`(5) Marketing fig Customer lnfgrmagon
`and important. marketing and customer
`Last.
`information should be maintained.
`In order to effectively
`manage the operations. information is constantly needed on
`market conditions.
`Information is needed on the existence of
`markets for certain programs.
`The following type of
`information must be maintained in a Marketing and Customer
`Information data base: demographic profile of viewers. viewer
`buy information: correlation of demographic information with
`buy information. information rapid restructuring of program
`mix in response to data analysis. As a subscriber uses the
`system. this viewer information or viewer log data can be
`stored and maintained in relational database. The Marketing
`Information Interface 402 gathers the marketing information
`and indexes the information for inclusion in the Marketing
`and Customer Information database. An example of the type
`of information that is needed in this data base is a viewer
`profile.
`
`5
`
`10
`
`15
`
`20
`
`25
`
`30
`
`Page 001051
`
`

`
`W0 94/1428]
`
`PCTIUS93/11617
`
`A215145s
`
`53
`
`The viewer profile data fields are an example of typical
`fields required in the databases. Definitions of various fields
`
`are listed below. The primary purpose of profiling the viewer
`
`is to acquire marketing information on the viewer's response
`
`to available selections. Ancillary information will be available
`
`including the actual program and channel selections of the
`viewer.
`
`Information tracked within the viewer's profile
`
`includes:
`
`Viewer ID
`
`A unique identifier generated by
`
`the system.
`
`Set-Top Types
`
`Boolean field which identifies the
`
`Headend ID
`
`type of set top used.
`
`Links the viewer to a particular
`cable site.
`
`Site Assigned ID
`
`Viewer ID assigned by the cable
`site.
`
`Set-Top ID
`
`Hookup Date
`
`ID of the viewer's set top.
`
`physical
`Date
`connected.
`
`hardware
`
`is
`
`Survey Date
`
`A demographic profile will be
`
`conducted on each user.
`
`The
`
`following fields
`
`represent
`
`this
`
`demographic information.
`
`data
`
`represents when
`
`The
`
`the
`
`interview survey was completed.
`
`Viewers Age 2-5
`
`Boolean field if the household has
`
`viewers between 2 and 5 years of
`
`age.
`
`Viewers Age 6-11
`
`Boolean field if the household has
`
`viewers between 6 and 11 years of
`
`age.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`Page 001052
`
`

`
`WO 94/14281
`
`PCT/US93/11617
`
`2t51A5%
`
`'
`
`54
`
`Viewers Age 12-17 Boolean field if the household has
`
`Tape Rental $
`
`PPV $
`
`Income
`
`viewers between 12 and 17 years
`
`of age.
`Approivdmate amount spent on tape
`rentals on a monthly basis.
`Household average pay-pre-view
`
`expenditures per month.
`Annual household income.
`
`Self-explanatory.
`Zip Code
`Level of cable service purchased.
`Cable Tier
`Self-Explanatory.
`Number of TV‘s
`Self-Explanatory.
`Years with Cable
`Number of people in household.
`Occupancy
`Highest Education Highest level of education of any
`member of the household.
`The compilation of viewer demographic information has
`an impact on decisions based on marketing. The names of
`the heads of household are not used due to Privacy Act
`considerations. Completion of demographic data can be
`accomplished referencing the cable site assigned ID or the
`system generated ID. There are numerous variations to the
`field definitions listed above such as difierent age groupings.
`To maintain the database at the Operations Center 202.
`a data base server. communications server. user work station
`or stations 262. or the suitable equivalent
`thereof. are
`needed.
`The database server performs the following
`functions:
`it is the repository for data base files, event
`logging. event scheduling (example. automated download of
`files to headends 208). multi-user services, data base server
`services. and data base security access.
`The communications server performs the following
`functions on data base data:
`integrity check.
`filtering.
`
`5
`
`10
`
`1 5
`
`20
`
`25
`
`30
`
`Page 001053
`
`

`
`W0 94/14281
`
`PCTIUS93/11617
`
`_2151458
`
`55
`
`5
`
`processing. downloading to headends 208. uploading from
`headends 208. and uploading from remote location.
`
`User work stations 262 perform the following tasks:
`creation. deletion and access of all database data. system
`administration and report generation. Database manipulations
`are performed through the user workstations or remotely.
`The database structure is designed to support multiple users
`performing multiple tasks simultaneously. The preferred
`embodiment includes a network of user workstations 262.
`
`10
`
`The workstations 262,
`
`through user interface software,
`
`15
`
`20
`
`access data within database files on the database server.
`
`For example. once the appropriate database data has
`
`been generated for downloading to a cable headend 208. the
`
`communications
`server
`is
`instructed to perform the
`download. Although this may be done manually at the
`communications
`server.
`it
`is preferred that
`the
`
`communications server automatically send information to the
`
`cable headends 208. The communications server retrieves
`
`required data from the database server. filters out any data
`not associated with the specified headend 208. and perfonns
`data integrity checks. creates data files to be downloaded and
`
`then downloads the data file via modem (or other means such
`
`as the DCPU 270). While the communication server is
`
`connected with the headend 208, it also requests any data
`
`25
`
`that the headend might be holding for the Operations Center
`
`log
`202. This may consist of cable headend 208 event
`information. set top billing and viewer log data on programs
`watched. etc.
`
`The communications server may also assist in retrieving
`information from other remote sites such as remote billing
`
`30
`
`and statistic sites. For example. if a location is being used for
`
`billing purposes.
`
`the communications server may retrieve
`
`Page 001054
`
`

`
`W0 94/14281
`
`PCT/US93/11617
`
`2i5ii58
`
`56
`
`viewer log data. Also.
`
`the communications server may
`
`retrieve billing and viewer log data from actual set
`
`top
`
`converters in the field. Once the data is retrieved it is sent to
`
`the database server. Thus. in the preferred embodiment the
`
`5
`
`communications server will support incoming information via
`modem or otherwise.
`
`The basic database structure at the Operations Center
`
`202 consists of multiple tables. Database data tables contain
`
`one or more data records. each with multiple fields. Each
`
`10
`
`field contains a piece of data about the particular record. This
`
`data may be general information. such as a numeric value.
`
`date or text string. or it may be a reference to another
`
`database record relating one piece of data to another.
`Database index files contain information about associated data
`
`15
`
`files to allow for improved data retrieval. The database index
`
`file makes retrieval of information much quicker.
`
`In an alternative embodiment where some television
`
`programming begins with the procurement of source material
`
`in the form of tapes or CDs. additional data about the tapes or
`CDs may be stored in the Operations Center database. Each
`
`20
`
`tape or CD may have a database record associated with it.
`
`source tape data file. Each tape may contain multiple cuts of
`
`which each cut has an associated record in a source tape
`detailed data file. Additionally, a company data file may
`
`25
`
`contain individual records for the rights of the holders of the
`
`source tapes as well as company information about cable
`
`headends 208.
`
`In this alternative embodiment with tapes.
`
`programs may be created from multiple tapes using multiple
`
`tape source cuts. The programs created by these source cuts
`
`30
`
`may be stored and the individual cuts that make up the
`
`programs may be stored in a database record called ‘program
`
`tape detail.“ Events may be created that consist of more than
`
`Page 001055
`
`

`
`W0 94/1428!
`
`PCTlUS93/1 161 7
`
`_2151458
`
`57
`
`one program and details on individual programs that make up
`these events may be stored in a database file called ‘event
`
`detail.‘ Using this embodiment. events may be sold to
`subscribers.
`
`Figure 10 and the description below is a more complete
`
`example of a database structure that can be used with the
`
`present invention. Each database file is listed below along
`
`with a description, record field details and explanation of
`
`relationships. The software data structures are defined after
`
`the description of the database structure.
`
`The SCHEDULE Database file 501 contains scheduling
`
`data for a single day. There are many schedule files. one for
`
`each day of schedule information. The actual filename for a
`
`given days schedule is assigned under computer control.
`
`Schedules are broken up into single days so they may be easily
`
`created. dispatched and archived. A cross-reference of days
`
`to computer generated filenames is kept. Each scheduled
`
`event (either a program or a preview) has its own record
`
`entry and unique schedule ID This record references the
`
`corresponding scheduled program or preview and program
`
`type (either program or preview]. The service to carry the
`
`scheduled program is also referenced. The starting date and
`
`time is also specified.
`
`Program duration is stored as a
`
`program attribute and is not
`
`included here.
`
`Note that
`
`program. preview and service records must be provisioned
`
`before they may be referenced in a schedule record.
`
`Another SCHEDULE Database file 500 contains a cross-
`
`reference of starting dates data to computer generated
`filenames.
`
`The PROGRAM Database file 502 contains Program
`records are contained in another database file 502.

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket