CN101073254B - System and device for describing presentation and behavior information in an ITV application - Google Patents

System and device for describing presentation and behavior information in an ITV application Download PDF

Info

Publication number
CN101073254B
CN101073254B CN2005800068179A CN200580006817A CN101073254B CN 101073254 B CN101073254 B CN 101073254B CN 2005800068179 A CN2005800068179 A CN 2005800068179A CN 200580006817 A CN200580006817 A CN 200580006817A CN 101073254 B CN101073254 B CN 101073254B
Authority
CN
China
Prior art keywords
data structure
itv
resource
data
uid
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN2005800068179A
Other languages
Chinese (zh)
Other versions
CN101073254A (en
Inventor
K·沙若其克
J·达卡斯
J·哥德
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mk Systems Us Holding Co
Mk Systems Usa
MK systems USA holding Co.
Rio Media
Ericsson AB
Original Assignee
GoldPocket Interactive Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by GoldPocket Interactive Inc filed Critical GoldPocket Interactive Inc
Publication of CN101073254A publication Critical patent/CN101073254A/en
Application granted granted Critical
Publication of CN101073254B publication Critical patent/CN101073254B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/44Receiver circuitry for the reception of television signals according to analogue transmission standards
    • H04N5/445Receiver circuitry for the reception of television signals according to analogue transmission standards for displaying additional information
    • H04N5/44504Circuit details of the additional information generator, e.g. details of the character or graphics signal generator, overlay mixing circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8543Content authoring using a description language, e.g. Multimedia and Hypermedia information coding Expert Group [MHEG], eXtensible Markup Language [XML]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot

Abstract

An ITV application definition language (ADL) used to generate ITV applications for different types of target platforms and devices. The ADL provides a plurality of core data structure types upon which one or more data structures may be built. Data structures storing ITV content presentation and behavior information are referred to as resources. A resource is associated with a globally unique identifier that allows the data structure to be efficiently stored and retrieved from a hash table. A resource is also associated with an expiration time stamp that indicates when the resource is to be freed from memory. A resource is of arbitrary length, and contains values that differ from the default values stored at a receiving client device. Resources are also packaged into a module that may be catered to a platform and/or profile of a receiving client. The client may quickly determine whether the module is relevant to it by examining the platform and/or profile ID contained in a header of the module.

Description

Be used for describing system and the device that presents with behavioural information in the ITV application
Technical field
The present invention relates generally to interactive TV system, in particular, relate to a kind of application program definitional language, it is described in presenting in the interactive television applications (presentation) and behavioural information.
Background technology
Interactive television (ITV) has been incorporated the extra content that is called as the ITV content on traditional tv, to present the audiovisual material that strengthens version to the beholder, described audiovisual material is such as being broadcast TV program, commercial advertisement (commercial) or VOD content.As used in this, term ITV content is meant and is requested to produce any extra information of one of above-mentioned enhancing television experience or application program.
In order to produce the television experience of enhancing, provide the information that will how to be shown to the client computer of carrying out, and be the information of how working in response to user action or other external event about the content that strengthens about the content that strengthens.In general, presentation information and behavioural information should be enriched and have descriptive as much as possible, so that high-quality enhancing television experience to be provided to the beholder.Yet, because the platform or operating platform (platform) resource of limited bandwidth and limited subscribing client, present with behavioural information should be again little and efficient.
Therefore, needed is the system and method for the interactive application definitional language that is used to optimize, and this interactive application definitional language describes by this way that ITV presents and behavioural information: it has relaxed the nervous situation that produces these two kinds of rival demands that ITV experiences.
Summary of the invention
According to an embodiment, the invention relates to a kind of application program definitional language (application definition language), it is different types of target platforms and device generation ITV application program in interactive TV system.
According to an embodiment, interactive TV system comprises creation instrument (authoring tool) and carries out engine (execution engine).The creation instrument produces the ITV application program that contains presentation information, and wherein said presentation information is expressed by a plurality of data structures of setting up based on one or more predetermined type of data structure.Each data structure can be quoted by unique identifier, and this unique identifier is relevant with the memory location or the memory cell of this data structure.Carry out the engine reception and carry out this ITV application program, and the alternative events that interrelate are provided.
According to an embodiment, the ITV application program comprises behavioural information, and it has described application program is how to carry out work in response to external event.The behavior, information stores was in the data structure that the data structure with the storage presentation information is separated.
According to an embodiment, carry out engine and stored a plurality of default values or the default value of presentation information, and retrieve or obtain (retrieve) described default value in response to the disappearance of analog value in a plurality of data structures.
According to an embodiment, the DIF system is before transmission ITV application program arrives the execution engine, and the compression that produces the ITV application program is expressed.The expression of this compression can be a binary expression.
According to an embodiment, first in a plurality of data structures inherited with a plurality of data structures in second feature that is associated.
According to an embodiment, a plurality of data structures are packaged as the module with header information.This module satisfies the needs of the particular platform and/or the standard summary (profile) of subscribing client.Carry out engine and can check header information, be used for the correlation of determination module and execution engine.
According to another embodiment, the invention relates to the creation instrument that produces the ITV application program.This creation instrument comprises data storage, and it is stored with first data structure that produces based on one or more basic data structure types and organizes interactive content to present or the first of behavioural information.First data structure comprises the symbol (symbol) that is mapped to the unique identifier value, and this unique identifier value is quoted second data structure.Described data storage is also with second data structure storage with organize interactive content to present or the second portion of behavioural information.
According to an embodiment, second data structure has been inherited by the feature of first data structure definition (properties).This feature can comprise the vision expression characteristics.
According to an embodiment, first data structure storage is also organized presentation information, and second data structure storage and organizational behavior information.
According to another embodiment, the present invention relates to the client apparatus in the interactive TV system.Described client apparatus comprises the decoder that receives the ITV application program, and this ITV application program comprised by presenting and behavioural information that a plurality of data structures are expressed.Each data structure identifies by identifier.This ITV application program also comprises one or more ITV orders.
Client apparatus also comprises the processor that is coupled to decoder, and the memory that is coupled to processor.Memory comprises the computer program instructions that is stored in wherein, and it can be carried out by processor.Computer program instructions comprises that resolving each is included in data structure in the ITV application program that is received, and the identifier that is associated with the data structure of being resolved of retrieval; Identifier id memory position based on retrieval; With the data structure storage that is associated in the memory location that is identified; Retrieval is included in the ITV order in the ITV application program that is received, and this order comprises command name and the identifier of the special data structure that is associated with this order; Based on the identifier that is included in the ITV order, from the special special data structure of memory location retrieval; And carry out ITV about institute's data retrieved structure and order.
When considering, will understand these and other feature of the present invention, aspect and advantage more fully about following detailed, appended claim and accompanying drawing.Certainly, actual range of the present invention is defined by claims.
Description of drawings
Figure 1A is the block diagram of ITV system according to an embodiment of the invention, and it has used the application program definitional language to describe ITV presentation information and behavioural information;
Figure 1B is the block diagram of module according to an embodiment of the invention, and this module produces by the data distributing server in the ITV system of Figure 1A;
Fig. 2 A is a process chart according to an embodiment of the invention, and it is carried out by the execution engine that is used to receive with processing module;
Fig. 2 B is a process chart according to an embodiment of the invention, and it is carried out by the execution engine that is used to carry out the ITV order;
Fig. 3 is the layout of resource UID according to an embodiment of the invention;
Fig. 4 is the layout that comprises the non-resource UID of scalar value according to an embodiment of the invention;
Fig. 5 has illustrated exemplary according to an embodiment of the invention dictionary or program library (dictionary) resource XML document;
Fig. 6 has illustrated exemplary according to an embodiment of the invention variable mapping resource (variable map resource) XML document;
Fig. 7 has illustrated example object mark sheet (object property table) resource XML document according to an embodiment of the invention;
Fig. 8 has illustrated exemplary containers widget or member (widget) resource XML document according to an embodiment of the invention;
Fig. 9 A has illustrated the navigation grid (navigation grid) that has delegation's four row according to an embodiment of the invention;
Fig. 9 B has illustrated the navigation grid that has four lines one row according to an embodiment of the invention;
Fig. 9 C has illustrated the navigation grid that has two row, two row according to an embodiment of the invention;
Figure 10 A is the Snipping Tool of window of container widget according to an embodiment of the invention;
Figure 10 B is according to an embodiment of the invention, transfers to the Snipping Tool of the window of container widget of inactive state;
Figure 11 has illustrated exemplary according to an embodiment of the invention XML document, and it is used for window of container widget resource, list of fields (field list) resource, and linguistic context or environment (contextual) attribute resource;
Figure 12 has illustrated exemplary event table resource XML document according to an embodiment of the invention;
Figure 13 has illustrated exemplary action tabulation resource XML document according to an embodiment of the invention;
Figure 14 has illustrated exemplary according to an embodiment of the invention XML document, and it is used for back-end services resource and argument tabulation resource;
Figure 15 has illustrated exemplary according to an embodiment of the invention XML document, and it is used for window of container widget resource and navigation order (navigation order) resource; And
Figure 16 has illustrated exemplary fields tabulation resource XML document according to an embodiment of the invention.
Embodiment
Generally speaking, various embodiment of the present invention relate to a kind of ITV application program definitional language (ADL), and it is that different types of target platforms and device generate the ITV application program.The ITV application program with strengthen TV, tunnel, managed content (managed content), recreation, interactive program guide, and the Interactive Advertising content is associated, but also is not limited to these.
According to an embodiment, ADL provides a plurality of kernel data structure types, can set up one or more data structures on this, is also become structure (construct).These structure descriptions have also been organized such as for example font size and color, and the such ITV content presentation information of logic OR behavior that the ITV application program of content is provided.It is how response to be made in terminal use's action or another kind of external event that behavioural information has been described application program.
According to an embodiment, the data structure of having stored ITV content presentation information and behavioural information is called as resource.Resource is associated with GUID, and this identifier makes data structure can be stored effectively and retrieval from hash table (hash table).Resource is also stabbed (expiration time stamp) with expiration time and is associated, and this expiration time stabs to have indicated when discharge resource from memory.Resource has random length, and can comprise and the different value of default value that is stored in subscribing client device place.Resource also can be packaged as module, and it satisfies the platform of subscribing client and/or the needs of standard summary.Be included in platform and/or standard summary ID in the header of module by inspection, whether client computer promptly determination module is associated.
The kernel data structure type that is provided by ADL includes but not limited to: (1) dictionary (dictionary); (2) unique identifier (UID) vector; (3) UID is to vector; (4) image; (5) character string; And (6) font.By the number that the restricted number to of type of data structure is limited, and by making up these structures to make it high flexible and can reuse, dissimilar ITV application programs can be produced, and do not need to change the mode of ITV application program resolved (parse), coding or distribution.
Figure 1A is the block diagram of ITV system according to an embodiment of the invention, and this system uses ADL to describe ITV presentation information and behavioural information.This ITV system comprises broadcast system 100, task manager 102, data forwarding system (headend system) 104, and one or more client computer 106.The broadcast system 100 that is positioned at broadcasting running center comprises dispatching patcher 108, automation of broadcast continuity server 110, datin 112, and one or more video player 116 (as, VTR).In the heart miscellaneous equipment also can be included in the broadcast system 100 in the broadcasting running, such as, for example be used for text and image are overlayed character-generator (not shown) on the audiovisual content element.
Dispatching patcher 108 produces the TV programme playlists, and it has comprised the schedule of a program that is transmitted in the appointed date.This playlist comprises, for example, and timing code and with their program segment identifier, program fragment source, and/or the inventory of program segment duration.Next, dispatching patcher 108 uses playlist to drive video player 116, and this video player 116 has comprised the actual video and the audio frequency of the content element that will be transmitted.
Automation of broadcast continuity server 110 monitors the playlist that is produced, and detects any change that may make playlist.According to one embodiment of present invention, automation of broadcast continuity server 110 was read the playlist that produced before several hrs for example, and by wired or wireless data link 120 recent entry of playlist was passed to task manager 102.Data link 120 can be, for example, and the Internet link of maintaining secrecy, local area network (LAN) link, wide area network link or the like.
Task manager 102 receives playlist information from different broadcast system, and retrieves suitable ITV event information and respond.According to one embodiment of present invention, the ITV event information of different broadcast systems is that central authorities are kept in the ITV event database 122.Go up in this respect, ITV event database 122 is the mapping of each broadcasting station storage ITV incident to particular segment (or demonstration) identifier.ITV event database 122 further is used to move the ITV content presentation information and the behavioural information of ITV incident for the ITV incident storage of each mapping.
According to one embodiment of present invention, task manager 102 is coupled to creation instrument 103, and it uses ADL to produce the ITV application program that is associated with the ITV incident.With extensible markup (XML) language format, perhaps, express content presentation information and behavioural information in the ITV application program with any other data representation form well known in the art.In a single day the ITV application program produces, and just is stored in the ITV event database 122.
According to one embodiment of present invention, ITV task manager 102 detects the program segment that is associated with the ITV incident in the playlist information that is received, and preparation broadcast (playout) data relevant with the ITV incident.Played data comprises, for example, the ITV application program, it contains and is useful on actual logic and the presentation information that produces the ITV incident.
To various recipients transmission such as, for example TV programme, commercial advertisement or the such content element of VOD content, described various recipients comprise data forwarding system 104 or certain other up-line system of local cable or optical cable operator.According to one embodiment of present invention, data forwarding system 104 comprises the data distributing server 126 that is coupled to encoder 128 and multiplexer 128, and all these content element and any ITV application program that is associated that is used for being received sends client computer 106 to.
According to an embodiment, data forwarding (or up link) system 104 has comprised all or part of of the playlist that produced by dispatching patcher 108.This part of playlist can be passed through such as for example so wired or wireless data link 124 of secret the Internet link, local area network (LAN) link or wide area network link, and communicates with task manager 102.
Based on its playlist and the information that is provided by task manager 102, such as for example about the information (such as program segment) of the audiovisual content element that can utilize the ITV application program, data distributing server 126 is before the predetermined reproduction time of the audiovisual content element that is identified, send one or more requests to task manager 102, the ITV application program that request is associated.This request is transmitted by secure data communication link 124.
In response to request from data distributing server 126, task manager 102 transmits one or more all required ITV application programs that present with behavioral data that comprise to data forwarding system 104, and client computer need this present with behavioral data and move the ITV incident.Then, data distributing server 126 transmits the ITV application program that is received with suitable number of times to client computer, and this number of times calculates based on predetermined ITV event times.
According to one embodiment of present invention, the ITV application program sends client computer to a succession of standard summary and/or platform specific modules form.Module has comprised the object data stream that is cited within the ITV application program.Object can comprise and presenting and logical data, or carves when appropriate to call and present/order of logical data.
When generation passes to the object of client computer 106, be included in the DIF system analysis that at first is coupled to data distributing server 126 with logical data and relevant order that presents in the ITV application program.Then, the data of being resolved are converted into the compression of data and the expression that the meaning of one's words is equal to.According to one embodiment of present invention, the expression of this compression is a binary expression.
The DIF that this conversion is observed based on the DIF system.This DIF makes following thing become possibility: use much smaller bandwidth for transmission present with logical data to target platform and take the much less internal memory, can not cause the parsing of being undertaken by the execution engine on the client computer 106 more complicated simultaneously.
According to one embodiment of present invention, the sequence of modules of object data stream that comprises presentation information with compression and behavioural information is packaged, and is multiplexed as mpeg 2 transport stream, and (in-band) is transferred to client computer 106 in being with content element then.Module also may be encoded as the horizontal or vertical blanking interval of analog video signal, or is encoded to the auxiliary data interval (ancillary data space) of digital video frequency flow.In addition, can connect, perhaps by segregated channel band other places transport module such as QPSK modulates or the DOCSIS channel is such by the internet.
According to one embodiment of present invention, task manager 102 is not transferred to module data forwarding system so that module is passed to client computer, but gives automation of broadcast continuity system 110 with data passes, is used for being embedded into content element.In this case, automation of broadcast continuity server 110 calls datin 112, so that module is inserted in the content element.Therefore, the content element that received of data forwarding system 104 has just comprised client computer and is used to move required suitable of ITV incident and presents and logical message and the order that is associated.
According to one embodiment of present invention, client computer 106 is receiving systems of ITV arbitrarily known in the field, such as, for example analog or digital cable, ground or satellite set top box or consumer electronic devices.Client computer 106 comprises control (host) execution engine 133 and is coupled to the processor 132 of decoder 134.Client computer further is coupled to input unit 135, such as remote controllers, Wireless Keyboard, speech input device or the like, is used for receiving the input data from the beholder.Client computer also is coupled to output device 137, such as display, loud speaker or the like, so that dateout is offered the beholder.
Carry out engine 133 and retrieve and handle the module that is embedded among the content element with decoder, this content element receives by transmission channel 140.This execution engine also can further be retrieved and handle by the module with outer data path 142 transmission.
If identify a module relevant with carrying out engine 133, then to carry out the engine parsing and comprise and present/object of logic and command information, these information are represented with binary system or other certain compressed format.The ITV order of being resolved is stored in the event queue 138, and is called constantly in suitable execution, and described execution is indicated by time source 136 constantly.
Present and the logical message of being resolved are stored in the local storage 140, and are presented when being called in their ITV orders separately.According to one embodiment of present invention, carry out engine 133 based on unique identifier (UID), presenting of being resolved and logical message are stored in the hash table, this unique identifier is assigned to and has comprised the structure that presents with logical message.This just allows to quote the data of being stored with single level of indirection, keeps the cpu clock cycle term of execution of application program.
According to one embodiment of present invention, comprise the structure that presents with logical message and comprise the timestamp that expires.In case carry out engine 133 based on the indicated time of time source 136, to determine to have arrived expiration time and stabbed the indicated time, it just uses the timestamp that expires to discharge the memory location of storage construct.This allows to carry out engine 133 for passing to the new object vacating space of client computer.
According to one embodiment of present invention, the local storage 140 of client computer has stored that ADL describes presents all or part of default value with behavior property.If it is right that execution engine 133 does not receive (keyword is worth) of describing particular community, it just supposes that this default value should be used to this attribute.As a result of, comprise the variable-length that presents with the structure of logical message.Be different from the regular length structure of whole attributes of the prior art, as to comprise structure, it is more efficient that variable-length is configured in memory use aspect, and this variable-length structure only defines its value and the different attribute of value by client computer kept.
Figure 1B is the block diagram of module 200 according to an embodiment of the invention, and this module produces by data distributing server 126.Module has comprised header (header) part 202 and payload (payload) part 204.Header portion 202 comprise such as, for example application program ID 202a, standard summary ID 202b, and the such header information of platform ID 202c, its allow the execution engine 133 that receives promptly determination module whether can be applicable to this engine.If module is considered to use, carry out the byte that engine is ignored next block size 202d, up to the beginning of next module.Enter the correlation of module by assessment promptly, and ignore this module when it is uncorrelated, carrying out engine can be in the cpu clock cycle of assessing consumes least possibility quantity on the module that does not have correlation with it.
If module is considered to be correlated with, engine continues number of modules 202e, the object data stream number 202f of parsing and this module of decoding, and payload portions 204.According to an embodiment, payload portions comprises one or more object data stream 204a-204n, and each object data stream has comprised one or more object 206a-206m therein, and these objects are used to move one or more ITV incidents.Object can comprise resource or order.Resource is a data structure, its description and organize ITV presentation information and behavioural information.Order is the ITV order towards the time that interrelates with resource.According to one embodiment of present invention, object 206a-206m with such as, for example the such compressed format of binary format is represented.
Table 1 has been described the DIF that DIF system 127 is observed, and this DIF system 127 is used for according to one embodiment of the invention, with the form of expression of module converts for compression.
Table 1 module placement table
?Syntax? Number?of?bits Format?
?ModuleLayoutTable(){ applicationID profiieID platformID moduleSize moduleNumber numberOfObjectStreams Private?Use Reserved?for?future?standardization Reserved?for?future?standardization for(i=0;i<(numberOfObjectStreams;1++){ streamID } for(i=0;i<(0·numberOfStreams)%4;i++){ padTo4ByteAlignment } for(i=0;1<numberOfObjectStreams;1++){ numberOfBytes firstObjectStartsAt }} 32 8 8 8 8 8 8 8 8 8 8 32 32 uimsbf uimsbf uimsbf uimsbf uimsbf uirnebf uimsbf uimsb uimsbf uimsbf ulmsbf uimsbf uimsbf
(wherein " Syntax " represents grammer; " Number of bits " represents figure place; " Format " presentation format, down together.)
ApplicationID: 32 place values of identification application.
ProfileID: sign is described in 8 place values of the standard summary of the object in the module.This value can be indicated common, benchmark, low, whole or senior standard summary.
PlatformID: sign is described in 8 place values of the platform of the object in the module.Special platform ID can be with Motorola set-top box for example and Scientific Atlanta set-top box distinguishing identifier mutually.
ModuleSize: 8 place values of the kilobytes number in the indicating module, it has comprised ModuleLayoutTable.
ModuleNumber: 8 place values of coming the identifier of indicating module based on profileID.This number of modules can be used as a continuity counter.
NumberOfObjectStreams: indication is included in 8 place values of the parallel object data stream number in the module.
StreamID: sign is included in 8 place values of the particular type of the stream in the module.This stream ID can indicate telegram end object data (trailer object data), blocks data (mask data), small object, big object, dynamic data or the like.
NumberOfBytes: 32 place values of the byte number in the denoted object stream.
FirstObjectStartsAt: first object in the object data stream begins to locate 32 biased the moving that begin from object data stream.
As described, the object data stream that is included in the module is the sequence of order and resource.Table 2 has been described the DIF that DIF system 127 is observed, and this DIF system 127 is used for being created in order or resource object header before according to one embodiment of the invention.
Table 2 object header
Syntax? Number?of?bits ?Format?
ObjectHeader()?{ ebiMagic objectLength } 8 24 uimsbf?uimsbf?
EbiMagic: 8 bit constants that are set to 0X77.
ObjectLength: 24 place values (not comprising the object header) of coming the length of directive command or resource object with byte.
Fig. 2 A is a process chart according to an embodiment of the invention, and it is carried out by carrying out engine 133, and this execution engine 133 receives and processing module based on the computer program instructions that is stored in the memory 140.In step 210, whether execution engine 133 detects the module with the object that comprises resource and order and arrives.In step 212, determination module is for carrying out whether engine 133 is applicable.For example, be included in application program ID 202a, standard summary ID 202b in the header portion 202 of module by detection, and/or platform ID 202c, and relatively itself and the application program ID, the standard summary ID that are stored in the execution engine self in the memory 140, and/or the matching of platform ID, can determination module whether be applicable for execution engine 133.
If it is applicable that module is considered to, carry out engine and next resolve the object that is included in the module.Go up in this respect, whether in step 214, existing in the determination module still needs resolved object.If answer is (Y), then next engine resolves current object in step 216.According to one embodiment of present invention, resolved object has comprised the compression expression of one or more data structures, and it has stored resource or command information.
In step 218, determine whether object comprises resource data structure.If answer is, then carry out engine just at the UID of step 220 retrieve resources.In step 222, based on the UID sign Hash-table entry of being retrieved.In step 224, resource is stored in the Hash-table entry that is identified.
If object does not comprise resource data structure, then determine in step 226 whether this object comprises command data structure.If answer is, then order just is stored in the event queue 138, and it is according to for example, the zero-time sign indicating number that is associated with this order.
Fig. 2 B is a flow chart according to an embodiment of the invention, and it is carried out based on being stored in the computer program that is used to carry out the ITV order in the memory 140 by carrying out engine 133.
In step 240, whether the zero-time sign indicating number time that the execution engine determines to be stored in the order in the time queue 138 arrives.For example, can indicate by the time in review time source 136 and finish this and determine.In step 242, be marked with the order of zero-time sign indicating number from the incident queue search.According to one embodiment of present invention, except the zero-time sign indicating number, the data structure of memory command information comprises command name and will carry out one or more UID of the resource data structure of this order.
In step 243, the execution engine. retrieves is included in the one or more UID in the order, and in step 244, carries out engine and use this UID to fetch the resource that is associated.According to one embodiment of present invention, one or more UID is used to calculate the Hash-table entry of storing one or more resources.
In step 245, determine whether the data structure of fetching has the attribute of missing value.If answer is, then carry out engine and just fetch the default value that is stored in the memory 140 in step 246, it is used on the attribute of missing value.
In step 248, be performed about the resource (one or more) that institute's retrieval obtains by the order that command name identified.For example, this order can be according to the order that comes display member with behavioural information that presents that is included in the resource data structure of being retrieved.
A.UIDs
According to one embodiment of present invention, each resource of presentation information and behavioural information is described and organized to the ADL independent process, and for each resource provides a memory location with the UID form, allow resource to be stored and to be quoted clearly.According to one embodiment of present invention, based on its UID, each resource is stored in the hash table.By this way, resource can be cited with single level of indirection, and keeps the cpu clock cycle during carrying out the ITV application program.
Can quote by its UID under the situation of same resource or value at one or more interactive applications, UID has also promoted re-using of resource.Opposite, art mechanisms with storage in having the table of row and column, and in the dictionary to locate described table.These row/row modes of making table generally need more operation when locating resource or value, and to reuse resource in whole application program be difficult.
UID can make that also carrying out engine is created, the dynamic management memory is to support reaching of new data element thus, this new data element is included in the element that must not be arrived by expectation when creating application program (, to the enhancing such as the such live event of Super Bowl Superbowl or Grammy Awards).Carry out engine and can receive the new data element, and by using data element UID, data element is stored in the memory, its position in memory can easily be quoted.This provides the advantage that is better than other method, and memory partition is specified within data flow self in advance in other method, makes that the support that new element is arrived is difficult.
According to one embodiment of present invention, UID can comprise the memory location of scalar value or resource.The UID that comprises scalar value is called as non-resource UID.The UID that quotes the particular instance of resource is called as resource UID.
Fig. 3 is the layout of resource UID according to an embodiment of the invention.The resource UID of illustrated explanation is one 64 place value, and it comprises that 24 are installed 250 and 40 resource values 252 of prefix (installationprefix).Yet those skilled in the art are to be understood that this UID can be by being less than or forming more than 64 indicated position.
According to an embodiment, source/founder that prefix 250 has identified resource uniquely is installed.Source/founder uses its unique installation prefix among its resource UID that creates at each.This allows UID is that the overall situation is unique.
The unique UID of the overall situation has many-sided advantage.The first, it allows before data are transferred to its source of execution engine validates it to be monitored.The second, it allows to cause greatly having reduced the return path data by transmitting mutual (the supposition reporting application can decompose UID with original contents) that UID follows the tracks of the beholder from carrying out engine to reporting application.The 3rd, overall unique UID stores if resource is based on, and one group of resource can be delivered to the execution engine effectively by multiple different data path.At last, overall unique UID allows the resources effective storage in object-oriented database.
Fig. 4 is the layout that comprises the non-resource UID of scalar value according to an embodiment of the invention.The non-resource UID of illustrated explanation is made up of field 260, type field 262 and value field 264, and wherein field 260 is corresponding to the installation prefix among the resource UID.Should the field 260 corresponding in non-resource UID, comprise 0 with installation resource.Type field 262 has identified the data type of the content of value field 264.The all kinds of non-resource UID its corresponding type i D in table 3 lists together.
Table 3 scalar type
Type i D Type
1? Action
2? Color
3? Secret is used
4? Designation
5? Integer
6? Floating number
7? Incident
8? Index (indexed) color
9? Bolean number
10? Bit vector
11-127? For standard in the future keeps
128-255 Privacy uses
Except resource and non-resource UID, ADL has also defined and has comprised complete zero empty UID.Empty UID only indicates the shortage data.
B. resource
All other data structure/resources based on kernel data structure type/resource comprise that dictionary, UID vector, UID are to vector, image, character string and font.According to one embodiment of present invention, opposite with regular length, the special resource that produces based on one or more core resources has variable-length.This be since only when the default value that value and client computer kept that be associated with attribute not simultaneously, resource just comprises this attribute.
According to one embodiment of present invention, DIF system 127 produces the resource header that is used for all resources.Table 4 has been described and has been produced the DIF that the DIF system 127 that is used to produce the resource header is according to an embodiment of the invention observed.
Table 4 resource header binary format
?Syntax? Number?of?bits Format?
?ResourceHeader(){ commandType headerVersionNumber resourceVersionNumber resourceType reserved resourceUID expiration?} 8 4 4 8 8 64 32 uimsbf uimsbf uimsbf uimsbf uimsbf uimsbf uimsbf
CommandTypes: 8 place values of marking command.Same, CommandType is set to 0 for resource object.
HeaderVersionNumber: 4 number of versions of resource header format.When carrying out the backward compatibility revision to the basic syntactic structure of resource header format, this value can increase at every turn.
ResourceVersionNumber: 4 number of versions of resource format.When carrying out the backward compatibility revision to the basic syntactic structure of resource format, this value can increase at every turn.
ResourceType: 8 place values of one of six kinds of core resource types of sign.
Reserved:, and be changed to complete " 0 " position for standard in the future keeps.
ResourceUID: 64 UID of resource.
ExpirationTime:32 bit time benchmark, at this moment between the benchmark place no longer need resource, and can from memory, discharge resource.
According to one embodiment of present invention, the stamp seal (stamping) with each resource of expiration time stamp allows to carry out engine 133 and manages its memory 140 efficiently, thinks the resource vacating space that enters.Suppose to strengthen the high dynamic characteristic of TV, for adding this expiration time, resource stabs mark, can make that carrying out engine discharges resource in the expiration time indicated time of stamp from memory, and be the resource vacating space that enters, thereby make the interactivity content of program or commercial advertisement to change in time.
According to one embodiment of present invention, the byte of following the resource header is carried out engine 133 and is explained according to the resourceType that is discerned by resolving.The boundary alignment of next 4 byte after the beginning of next object in byte stream and the end of this resource data.
1. dictionary resource
According to one embodiment of present invention, dictionary resource mapping symbols (being also referred to as keyword) is to the UID value.UID value or quote other resource perhaps comprises scalar value.
Fig. 5 has illustrated exemplary according to an embodiment of the invention dictionary resource XML file.The dictionary of this example explanation is a text member dictionary resource, as indicated by resource name 314.This resource comprises version 3 00, the resource UID302 that distributes to resource, the resource name 304 of the ADL standard (specification) that is used for producing resource and the count value (count) 306 that is included in the element in the resource.Those skilled in the art will be appreciated that other attribute also can be used to describe resource.
The dictionary resource comprises that it is mapped to UID value 312 with designation 310 by the clauses and subclauses of " Dictltem " type 308 signs.
Fig. 5 has described the DIF that DIF system 127 is observed, and it is used for according to one embodiment of the invention the dictionary resource being converted to the expression-form of compression.
Table 5 dictionary resource binary form
?Syntax? Number?ofbits Format?
?DictionaryResource()?{ ResourceHeader() dlctlonarySize for(i=0;1<dictionarvSize;1++){?symbol } for(i=0;i<dictionarySize;1++){ uid }} 32 32 64 uimsbf?uimsbf uimsbf
DictionarySize: 32 of the mapping number of indication in the dictionary.
Symbol: with corresponding 32 place values of symbolic name that are included in the dictionary.
Uid: 64 UID of associated symbols.
Fig. 6 provides dictionary the Resources list of ADL definition, and has briefly described these resources.
Table 6 dictionary resource
BackEndServiceResource? Service features is mapped to the dictionary of UID
ContextualAttibutesResource? The component specification name map of environment is arrived the dictionary of UID
ConnectionResource? The return path that is described to response server or interactive network connects
EventTableResource? The incident title is mapped to the dictionary of the UID of ActionListResources
OPTResource? Be associated with item (item) and designation be mapped to the dictionary of UID
VariableMapResource? To be present in the dictionary that whole name variables in the clauses and subclauses are mapped to UID
?
Widget Be associated with member and with the dictionary of component specification name map to UID
ContainerWidgetResource The member of other member is held in representative
ImageWidgetResource Represent the member of display graphics
TextEntryWidgetResource The member of text input is collected in representative from the beholder
TextWidgeResource Represent the member of videotex
VideoWidgetResource The member of the demonstration of motion video is being controlled in representative
A. variable shines upon the dictionary resource
Variable mapping resource will be used for the mutual variable of specific ITV and be mapped to their initial UID value.Fig. 6 has illustrated exemplary according to an embodiment of the invention variable mapping resource XML document.For each clauses and subclauses, the resource file of illustrated explanation has identified the initial UID value 352 that is used for mutual variable 350, variable, and the optional literal title 354 (it is peeled off by the DIF system usually) that is used for readability purpose variable.According to one embodiment of present invention, exist one to be used for each mutual variable mapping resource.
B. characteristics of objects literary name allusion quotation resource
Characteristics of objects table (OPT) resource is to be mapped to the dictionary of corresponding UID with product or the designation that interrelates alternately.One section specific (for example, collection of TV plays, film or commercial advertisement) mutual set of medium is included in the product
The OPT resource generally comprises variable, its dynamically change such as, for example have the character string of new shares quotations.If value is updated, just may sends to change and order to upgrade the OPT value.Carrying out engine can the value of noticing be updated, and therefore upgrades them in the OPT resource.
As explanation as illustrated in Fig. 7, show the OPT element by " gensym " (or general symbol) 340 and the UID342 that lists reference to variable, UID342 or comprise the value of variable perhaps quotes the resource corresponding to variable.The feature that is associated with this resource further by symbol/UID to representing.
C. back-end services dictionary resource
The back-end services resources definition in the formal argument that is coupled to the remote function of moving on the response server (not shown) of client computer 106 (or signature).First dictionary item in the resource has defined the type of the value of returning from remote function, for example integer, character string, image or element vectors.The argument tabulation that second dictionary item is value, it is delivered to remote function, and wherein each UID in this row argument has passed on: (1) is when remote function required type of corresponding actual argument during by actual calling; And (2) are used to make up the default value of actual argument tabulation.According to an embodiment, use argument, backend resources is called as the part of action lists (action list).
D. connect the dictionary resource
The unordered list of connection resource is-symbol, each all is mapped to the return path parameter of UID value or resource symbology.Can on connection resource, carry out action.Such action is used for setting up with unloading under program control and is connected by the feature of connection resource is defined.Interactive application also can obtain the existing state that is connected that interrelates with connection resource.These connections can be that TCP or UDP socket, HTTP connect, and perhaps for example use such method such as ALOHA, the bag that transmits by the outer data channel of the band of QPSK modulation.It can be being connected or the special-purpose return data passage under the cable platform situation on modulator-demodulator and the telephone wire (for example, using together to family (DTH) platform with live).
Table 7 has been described an attribute list, and attribute is defined by connection resource according to an embodiment of the invention.
Table 7
Parameter Describe Grammer
Server URL (Server URL) The standard URL of the server of this connection.This URL can describe the procotol (that is, http, udp, tcp, ALOHA or the like) that is used for server communication String
Authentication URL (Authentication URL) The URL of the server on authentication machine top (that is, if there is the intermediate server that needs authenticating transactions to handle) String
Telephone number (Phone Number) Default telephone number String
Retries count value (Retry Count) The number of times of repeated call (do not comprise for the first time and attempting) Uint8
Standby number (Alternate Number) Backup phone number (when busy, sounding) String
?
Parameter Describe Grammer
Minimum baud rate (Minimum BaudRate) The minimum baud rate that connection should be attempted String?
Maximum baud rate (Maximum BaudRate) The maximum baud rate that connection should be attempted String?
Idle overtime (Idle Timeout) Hang up idle line second number afterwards uint8?
Call out cost (Call Cost) Be shown to user representative and call out the character string of cost String?
No dial tone message (No DialtoneMessage) When detecting less than dialing tone, modulator-demodulator is shown to user's character string String?
Authentification failure message (Authentication Failure Message) When the authentification failure of machine top, be shown to user's character string String?
E. member dictionary resource
According to an embodiment, the visual element of interactive application is defined as member dictionary resource.Member dictionary resource arrives UID with the component specification name map.
According to one embodiment of present invention, member has vision and behavior property simultaneously.How perceptual property domination member shows, and behavior property has been described action sequence, and it is based on showing time institute's event at these members and being performed.
Fig. 8 has described according to an embodiment of the invention, has been tabulated by a structure attribute of ADL definition.When the member structure was converted to binary format, DIF system 127 was converted to each parameter the binary numeral that is associated.In this respect, only required symbol need have the value that is used for member, and it is considered to corresponding to DIF.For example, the member title is a symbol that needs expression values.If non-required value does not offer symbol, carry out engine 133 and just use the default value that is stored in the memory 140.
Table 8
Parameter Describe Grammer
Height (highly) Show as the member height of its parent (parent) height percentage (between 0 and 1) float?
?
Parameter Describe Grammer
Width (width) Show as the member width of its parent width percentage (between 0 and 1) float?
X Position (X position) Show as the position of its parent width percentage (between 0 and 1) along the member upper left corner of trunnion axis float?
Y Position (Y position) Show as the position of its parent height percentage (between 0 and 1) along the member upper left corner of vertical axes float?
Z Order (Z order) About the drawing order of other daughter of parent container member, wherein be positioned at the daughter of tabulation back (promptly 3 or 4), can make the daughter that is positioned at the front of tabulating (promptly 0 or 1) become unclear potentially unit32?
Event Table (event table) Comprise event table and reach when member has focus, the EventTableResource of their corresponding action tabulation that when incident takes place, will carry out ResourceUID?
Initial Visibility (initial observability) When its parent member was given focus, whether the element of member was drawn Unit32 wherein 0=denys; 1=is
Participate In Grid (participation grid) Whether member participates in the grid of its parent member boolean?
Dictionary element: occur ? ?
Parameter Describe Grammer
Inactive Background Color (inactive background color) Background color when member does not have focus color?
Active Background Color (movable background color) Member is movable but does not have background color when selected color?
Inactive Selected Background Color (inactive selected background color) Selected but background color when no longer movable of member color?
Active Selected Background Color (movable selected background color) Member is movable and the background color when being current selected element color?
Armed Background Color (pending background color) The background color of member, it indicates this member selected color?
?
Parameter Describe Grammer
Inactive Border Color (inactive border color) Member border color when member does not have focus color?
Active Border Color (movable border color) Member is movable but does not have member border color when selected color?
Inactive Selected B orderColor (inactive selected border color) Selected but member border color when no longer movable of member color?
Active Selected Border Color (movable selected border color) Member is movable and the member border color when being current selected element color?
Armed Border Color (pending border color) The border color of member, it indicates this member selected color?
Border Width (border width) The border width of representing with pixel unit32?
Promote Own Arributes (pointing out the attribute of oneself) To quoting of the UID of ContextualAttributesResource, its with component specification name map of environment to UID ResourceUID?
Vertical Contents Alignment (vertical content is arranged) Content along vertical axes is arranged Unit32 is a 0=left side wherein; 1=central authorities; The 2=right side
Horizontal ContentsAlignment (horizontal content arrangement) Content along trunnion axis is arranged Unit32 is the 0=top wherein; 1=central authorities; The 2=bottom
Horizontal Inset (level insertion) The horizontal edge of container contents (margin) unit32?
Vertical Inset (the vertical insertion) The vertical edge of container contents unit32?
List in the parameter of table 8, some attributes, for example title, UID, coordinate and size all are common for all members.The member subclass has specific to the attribute of they characteristics and element.The member subclass can be, for example image member, text member, textual entry member, video component, block member, " fault " member or container member.
The image definition of the component different images that represent by image resource, that be used for the various navigational states of member.The text definition of the component the different texts of representing by string resource, the text font represented by font resource, and the color that is used for the various different navigation states of member.The textual entry member comprises text member parameter, and has further defined the text of representing by string resource, text type, length or the like by beholder's input.Block definition of the component video cover the demonstration block.The fault member is used to display image and gives the user, with the appearance of indication interaction content during strengthening program.
It is how to be shown and the part that how shows as interaction content is come controlled that video component has been described motion image.Application author can be utilized video component to express the video size of convergent-divergent and position or fill the color of the screen that replaces video.Video component also can be used to be connected within the VOD storehouse, and makes it possible to switch between a plurality of video/audio streams.
Container member comprises the subclass of sub-member.Sub-member can be that perhaps they oneself are container members such as image or the such core resource of text.Fig. 8 has illustrated exemplary containers component resource XML file according to an embodiment of the invention.This resource has been indicated resource type 360 and has been used to produce the version 3 61 of the ADL standard of resource.Resource further comprises resource UID362, the resource name 364 of distributing to resource and the count value 366 that is included in the element in the resource.
Because the container member resource is the dictionary resource type, therefore the element that is included in the resource is identified by " Dictltem " type 368.In illustrative example, the multiple clauses and subclauses in the container member resource can be mapped to UID value 372 with designation 370.A this mapping is the mapping of " field list (list of fields) " parameter 374 to the UID 376 of list of fields resource, and this list of fields resource has comprised the tabulation of all daughter elements within the container.Then the field resource is mapped to environment attribute resource UID with the UID of sub-member, and it will describe in further detail hereinafter.
Container member allows member to be grouped into parent/daughter hierarchy (hierarchies).Container member plays the function of parent for other sub-member.Container member also can comprise other container member, makes it possible to produce meticulous member hierarchy.By this structure, sub-member can be inherited such as for example such feature of relative positioning feature based on their parent.Sub-member also can pass to incident their parent, and receiving as the fruit member does not so also have appointed incident, and it just can be returned to this incident its parent, and this parent can have the clauses and subclauses of this incident in its event table.
The navigation of the daughter element in the further specified containers of container member.The navigation of daughter element can use the navigation grid to show.The navigation grid allows to move to describe coming and going of a plurality of visualized elements with intuitive user interface design (intuitive user interface design) corresponding to mode.Usually when the video sequence that shows the visualized elements of to navigate, when illustrating the grid 400 of delegation four row in Fig. 9 A, the beholder will suppose that they can move around them with the order that visualized elements shows by using their " left side " and " right side " Long-distance Control button.Similarly, when the vertical series that shows such as such the navigated visualized elements of the grid 402 that illustrates four lines one row in Fig. 9 B, the beholder will suppose use they " on " and D score Long-distance Control button, they can move described element with the order of demonstration.In addition, when the navigated visualized elements sequence that shows more than row and row, when illustrating the grid 404 of two row two row in Fig. 9 C, the beholder will suppose by depressing D score Long-distance Control button, they can navigate to element 2 from element 1, and can navigate to element 3 from element 1 by depressing " right side " button.
Container member has defined a plurality of row 378 and/or the row 380 of its sub-member, so that this navigation framework can be used in the sub-member that can navigate.Container member is further with the UID 376 of navigating lists 374 parameter maps to navigation order resource, and this navigation order resource comprises the navigated daughter element tabulation with navigation order.Container member further comprises default focus 382 parameters of indication at navigating lists neutron element position, and it is given focus as default focus when member is drawn.According to an embodiment, member is exactly to have focus when they are clearly visible for the beholder, and they are subjected to the influence of beholder action, such as pressing the Long-distance Control button.
Member has the attribute of some navigational state, and whether relation and they or they container that described navigational state has been expressed they and beholder's interacting activity have focus.According to one embodiment of present invention, specify to change some component specification that comprises color, text and image, to indicate their state to the beholder.Can use these visual and combinations behavior state to describe navigation on the screen comprehensively.
Navigational state by ADL definition includes but not limited to: non-activity, activity and choose, activity and non-activity but selected state.According to an embodiment, inactive state is the basic state of all members.According to additional embodiments, designated if the feature of other state does not have, then inactive state feature slowly changes to other state.
When member had focus, it just was in activity and selected state, and when the beholder pressed the Long-distance Control key or starts some other input units 135, this member was affected.When member had focus, the parent of member was arranged or container, is added that other has any member of same parent, all is in their active state.Figure 10 A is the Snipping Tool that comprises the container member 420 of sub-member 422 and 424.Member 422 is in activity and selected state, and member 424 is in active state.
When first member is in activity and selected state, and the beholder moves to and when beginning to navigate in having another container of second member, this first member is converted to non-activity but selected state.Non-activity but the member chosen is the last member that had focus before the beholder shifts out this container.The container of first member and any member with same parent also are transformed into inactive state, as explanation as illustrated in Figure 10 B.
The member that the user chooses is transformed into armed state (armed state) immediately.This armed state provides such as for example producing to the beholder who selects and shows such immediate feedback.
F. environment attribute dictionary resource
The environment attribute resource is the dictionary resource that is mainly used to descriptor member in the environment of its parent member.For example, the height of sub-member and width can be described to the height of parent and the percentage of width respectively.As above described with reference to figure 8, the container member resource is listed its sub-member by list of fields parameter 374, and this list of fields parameter 374 is mapped to the list of fields resource, and next it be mapped to the UID of each sub-member the attribute resource of environment.The environment attribute resource has just had a feature list of quoting the parent of daughter.
The environment attribute structure makes the generation of interactive television assets (asset) and transmits more effective.For example, many resources with a lot of common traits can be used as an independent resource and realize, and difference are included in the environment attribute resource of each example of resource.For example, consider a ticktacktoe grid image component resource, it can be configured to " X " or " O " image.They do not have the individual images component resource of 9 different coordinates, have comprised all and present jointly with the ticktacktoe plate image component resource of behavioural characteristic and realize but can be used as independent one.The container member that is used for the ticktacktoe plate has 9 daughters in its list of fields, and each all is single ticktacktoe square chart as the resource UID of component resource to the varying environment attribute resource mapping that comprises different coordinates on the ticktacktoe plate.
Figure 11 has illustrated exemplary according to an embodiment of the invention XML file, and it is used for container member resource, list of fields resource and environment attribute resource.The container member resource 450 of illustrated explanation comprises the list of fields parameter of the UID 452 with corresponding list of fields resource 454.The list of fields resource 454 that is identified comprises UID 456,458, and it has identified the environment attribute resource of two sub-members.The environment attribute resource 460 of the first sub-member provides a row UID value 462, its with the x coordinate position of sub-member, y coordinate position, width, highly, initially observability, z interrelate in proper order or the like.
G. event table dictionary resource
Event table dictionary resource is mapped to the incident title UID of action lists resource.The event table resource is quoted by component resource, and the action that will carry out during the generation of listed incident when member has focus of indication.According to one embodiment of present invention, the peripheral operation excitation that incident is carried out from interactive TV program produces, such as for example pressing the such operation that expires of user's Long-distance Control button or timer.
Figure 12 has illustrated according to an embodiment of the invention schematically event table table resource XML file.In this illustrative example, the incident of listing is four numerical keys 500 that are positioned on the Long-distance Control, and it is mapped to the UID502 of corresponding actions tabulation.
2.UID vector resource
UID vector resource comprises only UID that itemizes.Element in UID vector resource is identified as " UIDReference " type.Various types of UID vector resources comprise action lists resource, argument tabulation resource and navigation order resource.
Table 9 has been described the DIF that DIF system 127 is observed, and system 127 is converted to UID vector resource the expression of compression according to one embodiment of present invention.
Table 9 UIDVector resource
?Syntax? Number?of?bits Format?
?UIDVectorResource(){ ResourceHeader() UIDVectorSize for(i=0;i<UIDVectorSize;i++){ uid }} 32 64 uimsbf uimsbf
UIDVectorSize: 32 place values of the UID quantity in the sign UID vector resource.
Uid: 64 place values of designated value or UID.
A. action lists resource
The action lists resource is by the event table quoting resource of the UID that the incident title is mapped as the action lists resource.Next this event table resource is included in the component resource.
The action lists resource comprises the non-resource UID that identifies specific action, and action is being followed this specific action to its one or more operands of being operated.Operand can be UID, component specification, variable or the literal that is associated with member.The operation that action is carried out can be the action of branch operation (branching action), empty action, member action, variable operation and time correlation, or connecting moves (connection action).
Branch operation is converted to another action lists with execution under the control of interactive program.All branches stop the execution of current action lists immediately, and continue to carry out in the initial place of new action list.According to one embodiment of present invention, branch operation can be a branch operation with good conditionsi, and it depends on that the value of Boolean condition continues to carry out in two action lists.
Empty action is for not influence of interactive program.
The single feature of single variable or existing member is revised in the variable operation.Its calculates the simple expression comprise variable or feature, and with this as a result assignment give another variable or feature.
Figure 13 has illustrated according to an embodiment of the invention schematically action lists resource XML file.The action lists that illustrates has identified " assign " variable action 510, is following two symbol/UID thereafter to 512-518.Should " assign " value of the UID 514 that quoted of action first symbol 512 be set to the same value of the 2nd UID 518 that quoted with second symbol 516.
The action lists of illustrated explanation has also comprised " goto " branch operation 520, and it causes program to continue to carry out in the action lists that UID 522 is identified.
The relation between the member is revised in the member action, rather than operates the feature of revising single member by variable.For example, the member action can influence the relation of holding of member, determines that promptly which member comprises other member.In another example, the member action can determine which member has focus, and determines that therefore which member is the recipient of incident.
Table 10 provides the tabulation of member action and the sign indicating number that is associated by the DIF appointment, and this DIF is that DIF system 127 is observed according to an embodiment of the invention.
Table 10
Title Sign indicating number Describe
ADD_WIDGET 001 16 Increase by a member to container.
DESTROY_WIDGET 002 16 Remove member from its parent container, and discharge the resource that all are associated.
Title Sign indicating number Describe
REPLACE_WIDGET 003 16 With the member in the container of new structural member replacement.
HIDE_WIDGET 004 16 Make member and all daughters thereof invisible and make it can not receive focus.
SHOW_WIDGET 005 16 Make member and all daughters thereof visible and make it can receive focus.
GIVE_FOCUS 006 16 Make specified member enter the focus storehouse.
POP_FOCUS 007 16 Member specified on the focus storehouse is popped, and the cancellation all subsequent manipulations.
CALL 008 16 Make specified item enter the focus storehouse, wait for value from this middle RETURN action.
RETURN 009 16 Make uppermost pop on the focus storehouse, and the cancellation all subsequent manipulations, the CALL action of wait then the return value of appointment is offered.
POP_TO_ROOT 00A 16 The whole contents of focus storehouse is popped, and make all component relations turn back to its initial condition.
With the action of time correlation be the action of the contact time reading and setting a property.
Table 11 provides the tabulation with the action of time correlation and the sign indicating number that passes through the DIF appointment that is associated, and this DIF is that DIF system 127 is observed according to an embodiment of the invention.
Table 11
Operation Title Sign indicating number Describe
y∏startTimer?x, t0=a1,tN=a2, data=a3? START_TIMER A01 16 Timer process x and variable y and initial timeout value a1, timeout interval a2 and optional timer data a3 are interrelated
stopTimer?y? Stop_TIMER? A02 16 Dwell time process y
?
a∏ getRemainingTimer Time?y GET_REMAINING_ TIMER_TIME A03 16 Before the next overtime incident of timer was come, a was set to the remaining time (unit millisecond) among the timer variable y
y∏ExpiredTimer? GET_EXPIRED_ TIMER? A04 16 Y be set be the example of timer of expiring
y∏ ExpiredTimerData? GET_EXPIRED_ TIMER_DATA? A05 16 The data of y for being associated with the timer that expires are set
y∏ ApplicationRunTime? GET_APPLICATION RUN_TIME? A06 16 Y (unit millisecond) is set to the self-application program begins back institute elapsed time
y∏DateTimeString? GET_DATE_TIME_S TRING? A07 16 Y is set to current date and time
Connecting moves be used under interactive program control, being provided with, destroying or management with unload from carry out engine context to external server, by the connection that is connected the dictionary resources definition.Interactive program also can obtain the existing state that is connected that is associated with connection resource.
The tabulation of passing through the DIF designated code that table 12 provides a connecting moves and has been associated, this DIF are that DIF system 127 is observed according to an embodiment of the invention.
Table 12
Operation Title Sign indicating number Describe
Connect ? ? ?
connect?c? CONNECT? B01 16 The specified new connection of the resource that connects c to server
shutdown?c? SHUTDOWN? B02 16 Close the specified connection of connection resource c
?
S<-?getstatus?c? GETSTATUS? B03 16 Obtain the state of the specified connection of connection resource c
On?error?c,?a? ON_ERROR? B04 16 Whenever just carry out action lists a as long as detect mistake in the operation on connection resource c
B. argument tabulation resource
One row scalar non-resource UID value that argument has been tabulated resources definition, it serves as argument for another resource.The exemplary resources of quoting argument tabulation resource is a rear end dictionary resource.The tabulation of argument in the dictionary resource of rear end has defined, for example, a row argument, it transmits carrying out engine 133 and run between the remote function of response server.According to an embodiment, each UID in this row argument transmits type and default value, described type remote function during by actual calling corresponding actual argument required, and described default value is used to make up actual argument tabulation.
Figure 14 has illustrated the exemplary XML file of back-end services resource and argument tabulation resource according to an embodiment of the invention.Back-end services resource 600 comprises return type 602, and it is mapped to the UID 604 of the resource of the value type that definition returned by remote function.The back-end services resource also comprises argument tabulation 606, and it is mapped to the UID 608 of argument tabulation resource 610.Argument tabulation resource 612 has defined two scalar UID values 614,616, and it is delivered to remote function.
C. navigation order resource
Navigation order resource is quoted by container member, and comprises that row have the sub-member that navigates of its navigation order.According to one embodiment of present invention, determined the order that sub-member will be moved around in the order of quoting the UID within the navigation order resource of sub-member.
Figure 15 has illustrated the exemplary XML file of container member resource and navigation order resource according to an embodiment of the invention.Container member resource 650 comprises the navigating lists of the UID 654 that is mapped to navigation order resource 654.This navigation order resource 654 has been listed the UID 658 of the sub-member within container, and it means and can be navigated by the user.The order of UID 658 within navigation order resource 656 has been determined the order that member will be moved around.
3.UID to the vector resource
It is right that UID has listed UID to the vector resource, and comprise the element with " UIDReferencePair " type.The list of fields resource is the type of UID to the vector resource.
Figure 16 has illustrated exemplary fields tabulation resource XML file according to an embodiment of the invention.This list of fields interrelates the UID 700 and the UID 702 of each member in the parent container, UID 702 referencing environment attribute resources.The environment attribute resource description attribute of the sub-member relevant with this parent container.
Table 13 has been described the DIF that DIF system 127 is according to an embodiment of the invention observed, and system 127 is used for UID is converted to the vector resource expression of compression.
Table 13 UID is to the vector resource
Syntax? Number?of?bits Format
UIDPairVectorResource(){ ResourceHeader() UlDPairVectorSize for(i=0;i<UIDPairVecforSize;1++){ uidFirst }for(i=0;i<UIDPairVectorSize;i++){ uidSecond } } 32 64 64 uimsbf uimsbf uimsbf
UIDPairVectorSize: 32 place values that are identified at UID quantity among the UIDPairVectorResource.
UidFirst: 64 place values of pointing out first value of every centering or UID.
UidSecond: 64 place values of pointing out second value of every centering or UID.
4. image, character string and font resource
According to one embodiment of present invention, image, character string and font resource are the base configurations of interactive television applications.Font resource is quoted the font that resides on the client computer 106, and operation is used for the execution engine 133 of videotex character string.
Image resource has been described image, and comprises view data.Each image is made up of the rectangular array of pixel.According to one embodiment of present invention, each pixel comprises 8 place values [α, R, G, B], and it is Alpha's (opacity), the red, green and blue component of representative color respectively, is mark [α/255, R/255, G/255, B/255].Alpha's component is stored in the highest order of octet, and blue component is stored in the lowest order of octet.Pixel is represented with the scan line order from left to right.
String resource has comprised text-string, and it has corresponding to the formatted message that can draw in the text member.According to one embodiment of present invention, the HTML(Hypertext Markup Language) form can be used to describe such as for example format and the such character string information of locating information.Under this example, client computer 106 has comprised the HTML drawing engine that is used for rendering text.
C. order
According to one embodiment of present invention, order allows audiovisual material to strengthen by interaction content, the incident synchronised in this interaction content and the program.In this respect, demanded storage and is obtained by carrying out engine 133 retrievals when the time started of order arrives in event queue 138.The time started of order calculated based on the time that time source 136 is provided.
1. eject command
Eject command sends indication to show the member that is associated in time of appointment, with duration of appointment to carrying out engine, and it removes from display after this duration.According to an embodiment, member shows that at the top of existing rootkey just described rootkey always can be accessed, such as for example static menu.
Table 14 provides according to an embodiment of the invention, by a row eject command element of ADL definition.
Table 14
Attribute Describe Grammer
StartCode When resource should be shown, the time started sign indicating number (representing) in the product of " timing " with frame.(optionally) " a 1: a 2: a 3.a 4" 0≤a wherein 1≤ 24 0≤a 2≤ 60 0≤a 3≤ 60 0≤a 4≤ 30 a 1, a 2, a 3, a 4Be uint8
Uid UID with the member that is shown ResourceUID
Platform (platform) Special target platform (optionally) String (character string)
Duration (duration) The duration that member should show on screen (representing) with frame Uint32
?
Example
Be the example of PopUpCommand below:<popUpCommand startCode="01:04:15.00"uid="E200000000006739"platform="Platform:Common"duration="420"/></PopUpCommand>
Table 15 has been described the DIF that DIF system 127 is according to an embodiment of the invention observed, and DIF system 127 is used for eject command is converted to compressed format.
Table 15 eject command
?Syntax? Number?of?bits Format?
?PopUpCornmand(){ CommandHeader() duration optUID?} 32 64 uimsbf uimsbf
Duration: 32 place values of representing to eject the duration according to frame.
OptUID: in preset time (in the order header), be superimposed upon mutual 64 UIDs of root on mutual with the given duration.
Table 16 has been described the DIF that DIF system 127 is according to an embodiment of the invention observed, and DIF system 127 is used for producing the order header.
Table 16
?Syntax? Number?of?bits Format?
?CommandHeader(){ commandType reserved1 reserved2 reserved3 startTime} 8 8 8 8 32 uimsbf uimsbf uimsbf uimsbf uimsbf
CommandType: 8 place values of marking command.
Reserved: be standard reservation in future, and be set to complete " 0 " position.
StartTime:32 bit time benchmark, fill order at this moment.
Explain the byte of following after header according to CommandType by resolving execution engine 133.The next one 4 byte boundaries after the beginning of the next object in byte stream and order data finish align.
2. make the root order
Make the root order and send indication, replace rootkey by the new rootkey that UID was quoted to adopt to carrying out engine.
Table 17 provides according to an embodiment of the invention, has made the element of root order by the defined row of ADL.
Table 17
Attribute Describe Grammer
StartCode When should the be manufactured new rootkey of item, the time started sign indicating number (representing) in " timing " product with frame. " a 1: a 2: a 3.a 4" 0≤a wherein 1≤ 24 0≤a 2≤ 60 0≤a 3≤ 60 0≤a 4≤ 30 a 1, a 2, a 3, a 4Be uint8
Uid The UID of new rootkey ResourceUID
Platform (platform) Special target platform (optionally) String (character string)
EndCode When item should no longer be rootkey, the concluding time sign indicating number (representing) in " timing " product with frame. " a 1: a 2: a 3.a 4" 0≤a wherein 1≤ 24 0≤a 2≤ 60 0≤a 3≤ 60 0≤a 4≤ 30 a 1, a 2, a 3, a 4Be uint8
Example
Below be the example of MakeRootCommand:<MakeRootCommandstart Code=" 00:05:15.00 " uid=" E200000000007039 " platform=" Platform:Common "/</MakeRootCommand 〉
Table 18 has been described the DIF that DIF system 127 is according to an embodiment of the invention observed, and DIF system 127 is used for manufacturing root command conversion is compressed format.
Table 18
?Syntax? Number?of?bits Format?
?MakeRootCommand(){ CommandHeader() expirationTime optUID } 32 64 uimsbf uimsbf
ExpirationTime: the overdue 32 bit time benchmark of root.
OptUID: order in the header given time, will be set to 64 mutual UID of root.
3. change order
Change order and send indication, with the UID of " gensym " clauses and subclauses of changing the appointment in project OPT resource by new UID to carrying out engine.This order can be used to upgrade such as for example comprising the such dynamic value of recent titles, perhaps is used for upgrading being set at the value that the preassigned moment changes, such as for example such specific character string of the lyrics in the interactive mode Karaoke is used.
Table 19 provides according to an embodiment of the invention, a series of variance command elements by the ADL definition.
Table 19
Attribute Describe Grammer
StartCode When OPT should be updated, the time started sign indicating number (representing) in " timing " product with frame.(optionally) " a 1: a 2: a 3.a 4" 0≤a wherein 1≤ 24 0≤a 2≤ 60 0≤a 3≤ 60 0≤a 4≤ 30; a 1, a 2, a 3, a 4Be uint8
Changedictref UID with OPTResource of the clauses and subclauses that will be updated ResourceUID
Gensym Among the OPTResource with the title of the clauses and subclauses that are updated String (character string)
Newuidref The UID of the new resources that interrelate with clauses and subclauses ResourceUID
Example
?
Be the example of ChangeCommand below:<changeCommand startCode="00:00:38.01"changedictref="E00210000003F2D7"gansym="1000099"newuidref="E002100000043DB0"></ChangeCommand>
Table 20 has been described the DIF that DIF system 127 is according to an embodiment of the invention observed, and DIF system 127 is used for the change command conversion is expressed for compression.
Table 20
?Syntax? Numberofbits ?Format?
?ChangeCommand(){ CommandHeader() optUID symbol newUID } 64 32 64 uimsbf?uimsbf?uimsbf
OptUID: 64 UID of the OPT resource of given time change in the order header.
Symbol: with 32 place values that designation interrelates, this designation is within the OPT that its UID becomes new UID.
NewUID: 64 new UID values of symbol.
4. telegram end object command
The telegram end order is sent indication to carrying out engine, will being appointed as the telegram end object by the specific resources that its UID was identified, and shows this resource, is loaded fully up to main application program or root track.According to one embodiment of present invention, telegram end is to liking less relatively in size resource, often be broadcasted, as introducing or telegram end just is shown when being received, the remainder (usually greatly greater than the afterbody object) of root track is loaded in the memory simultaneously at one.
Table 21 provides a row telegram end command element that is defined by ADL according to an embodiment of the invention.
Table 21
Attribute Describe Grammer
uid? UID with the resource of given " TrailerObject " state ?ResourceUID?
Example ? ?
Be the example of TrailerObjectCommand below:<trailerObjectCommand uid="0006000000169152"></TrailerObjectCommand> ? ?
Table 22 has been described the DIF that DIF system 127 is according to an embodiment of the invention observed, and DIF system 127 is used for the telegram end command conversion is expressed for compression.
Table 22 TrailerObject order
?Syntax? Number?of?bits Format?
?TraiierObjectCommand(){ CommandHeader() optUID} 64 uimsbf?
OptUID: 64 the mutual UID that when loading primary application program, make root.
The advantage of the ADL of embodiment described above is according to the present invention: specific although the established data structure can be designated as platform, but ADL is a platform independence, and this allows the ITV application program using this language to produce to be used for different platform by independent creation instrument.
Allow by producing new data configuration or existing structure is expanded the kernel data structure type is combined simply by kernel data structure type (that is, dictionary, UID vector, UID are to vector, image, character string, and font) that ADL provided.For example, one or more symbols can be added to the dictionary resource to define new interactive object.The generation of neotectonics or expansion can be finished under the situation that does not change the input parsing, resolves to the conversion and the compressed format of compressed format.In addition, the kernel data structure type of restricted number needs littler memory capacity with respect to the system of a large amount of specialized purpose-build.
In the prior art, add the new object definition of functional general requirement change within user agent (agent), perhaps brand-new object of requirements definition to interactive object.This just requires to increase new structure by changing existing structure (and the follow-up version number that changes) or defining new structure to language.Next this may cause in code base the change in a lot of zones, such as for example XML resolve, format, data compression on the user agent or the like.In addition, by using high commissioner also to be limited to the scope that this object adapts to (tailor) with functional scope of the incompatible expression of fixed set of sex object.
ADL according to the foregoing description also provides the element structure with mother-child relationship (MCR), and this allows the succession to attribute and/or behavior, and can reuse data element, thereby has reduced the demand to transmission bandwidth and memory space.
The structure that uses ADL to produce also has length variable, and only comprises the different value of default value of preserving with client computer.This and prior art structure have formed striking contrast: the prior art structure generally has regular length, and has comprised whole attributes of structure, causes using more storage.In the prior art, to the arbitrarily renewal of some or cover and generally need to retransmit whole structure in these attributes.
Structure by the ADL definition is quoted by UID, and the UID indication structure is stored in memory location wherein.This and prior art are different with the tabulating method of storage in having the table of row and column.Because row and column has fixing length, and image and other data type change in size, therefore generally need to fill to adapt to large-sized image and data, this has wasted bandwidth and memory resource.
ADL according to various embodiments also allows to carry out the effective memory management by the timestamp that expires, and this expiration time stabs has indicated the resource that is associated when can discharge from memory.The high dynamic performance of given enhancing TV stabs mark for resource adds expiration time, and just allow to carry out engine 133 and manage its memory 140 effectively, and the resource vacating space for entering.
In addition, the module structure permission object that is provided by ADL is that specific platform is got together.Be positioned at affiliated application program, standard summary and the platform (if applicable words) of the rapid identification module content of header information that module begins to locate, it allows to carry out engine 133 and promptly estimates the correlation that enters module, and ignores it when not having correlation.
Standard summary specific modules method helps standard summary specific modules is divided into a plurality of standard summary ID, wherein all are carried out engine and can at first be adjusted to the standard summary ID that comprises the total module of all standard summaries, and can next be adjusted to the standard summary ID that comprises for its standard summary specific modules.This help has reduced the load time of application program, this be because: carrying out before engine arrives relative module, it no longer need be waited for when module incoherent with it arrives, if and carry out engine regulation to the specific stream of standard summary, it just has the ability to begin loading data immediately, does not need to wait for whether evaluating data has correlation.
Although the present invention is described with certain embodiments, the variation that those skilled in the art design the embodiment that describes is easy, and this never departs from the scope of the present invention and spirit.In addition, for the technical staff in various fields, the solution for other task and the modification of other application have also been hinted in this present invention itself.By claims, the applicant plans to cover whole purposes of the present invention and to these changes and improvements of the embodiment of the invention, and does not depart from the scope of the present invention and spirit, the embodiment of the invention of selection at this to be disclosed as purpose.Therefore, existing embodiment of the present invention should be understood that illustrative rather than restrictive aspect all, and scope of the present invention is by claims and their equivalents, rather than aforesaid specification limits.

Claims (23)

1. interactive television ITV system, it comprises:
Produce the creation instrument of ITV application program, described ITV application program comprises the presentation information that presents the ITV content, described presentation information shows by a plurality of data structures, described data structure is set up based on one or more basic data structure types, wherein said basic data structure type is set up and is used to describe and organizes the ITV of ITV content to present structure with behavioural information, and wherein said a plurality of data structures one or more are configured to comprise and are used for the right of attribute that the described presentation information to described ITV content limits and value formation that each of described a plurality of data structures has length arbitrarily; And
Carry out engine, its reception is also carried out described ITV application program and described ITV content, a plurality of default values of a plurality of attributes that the storage of described execution engine limits the relevant presentation information of described ITV content, described execution engine is determined one or more one or more values that whether comprise the one or more attributes in described a plurality of attribute of described data structure, and retrieval obtains described one or more value and does not use the corresponding default value that presents described ITV content from described data structure one or more, goes out response described data structure one or more are comprised described one or more value is customized really.
2. system according to claim 1, wherein said ITV application program comprises behavioural information, it has been described described ITV application program and how to have turned round in response to external event, and described behavioural information is stored in and stores in the data structure that the data structure of described presentation information is separated.
3. system according to claim 1, wherein said a plurality of data structures are variable-lengths.
4. system according to claim 1, wherein each data structure is quoted by unique identifier, and this unique identifier is associated with the memory location that is used for data structure.
5. system according to claim 4, the part of wherein said unique identifier has identified the founder of described data structure uniquely.
6. system according to claim 1, it further comprises:
The DIF system, it is before described ITV application program is transferred to described execution engine, and the compression that produces this ITV application program is expressed.
7. system according to claim 6, it is binary expression that wherein said compression is expressed.
8. system according to claim 1, first of wherein said a plurality of data structures inherited second feature that is associated with described a plurality of data structures.
9. system according to claim 8, wherein said a plurality of data structures are packaged as the module with header information.
10. system according to claim 9, wherein said execution engine is checked described header information, to determine the correlation of described module for described execution engine.
11. system according to claim 8, wherein said a plurality of data structures are packaged as module, and it satisfies the demand of the particular platform of subscribing client.
12. system according to claim 8, wherein said a plurality of data structures are packaged as module, and it satisfies the demand of the special standard summary of subscribing client.
13. system according to claim 1, one of wherein said a plurality of data structures are set up based on the dictionary data structure type, and described dictionary data structure type arrives the unique identifier value with sign map.
14. system according to claim 13, wherein symbol is associated with incident, and the described unique identifier value that is mapped to described incident has identified the action data structure.
15. the creation instrument of a computer implemented generation ITV application program, described creation instrument comprises:
Store the data storage of one group of basic data structure type, wherein said basic data structure type is set up and is used to describe and organizes all ITV of any ITV content to present with the structure of behavioural information and do not introduce new type of data structure;
Be used for storing and organizing interaction content to present or the device of the first of behavioural information with a data structure, described data structure is based on one or more generations of described basic data structure type, described data structure comprises the symbol that is mapped to the unique identifier value, described unique identifier value is quoted another data structure, and described another data structure is based on other one or more generations of described basic data structure type;
Be used for storing and organizing interaction content to present or the device of the second portion of behavioural information with described another data structure; And
Described ITV in the data structure that produces based on being stored in presents the device that alternative events are provided with behavioural information.
16. creation instrument according to claim 15, the part of wherein said unique identifier has identified the founder of described data structure uniquely.
17. creation instrument according to claim 15, wherein said second data structure has been inherited the feature by described first data structure definition.
18. creation instrument according to claim 17, wherein said feature are the vision expression characteristicses.
19. creation instrument according to claim 15, wherein said first data structure storage and organize described presentation information, and described second data structure storage and organize described behavioural information.
20. the client apparatus in the interactive TV system, described client apparatus comprises:
Decoder, its reception and decoding ITV application program, described ITV application program comprised by presenting and behavioural information that a plurality of data structures show, each of described a plurality of data structures set up based on one or more basic data structure types by the creation instrument, the effect of described basic data structure type is to set up and is used to describe and organizes the ITV of ITV content to present structure with behavioural information, each data structure is identified by identifier, and described ITV application program further comprises one or more ITV orders;
Parsing is included in each data structure in the ITV application program that is received, and the device of retrieving the identifier that is associated with the data structure of being resolved;
Device based on the identifier id memory position of retrieving;
With the device of data structure storage in the memory location that is identified that is associated;
Retrieval is included in the device of the ITV order in the ITV application program that is received, and this order comprises command name and the identifier of the special data structure that is associated with this order;
Based on the described identifier that is included in the described ITV order, retrieve the device of described special data structure from special memory location; And
Carry out the device of described ITV order about institute's data retrieved structure.
21. client apparatus according to claim 20, wherein identify described memory location and comprise based on the identifier of being retrieved identification entry in hash table, and wherein retrieve described special data structure and comprise that the special clauses and subclauses from described hash table retrieve described special data structure, identify described special clauses and subclauses based on the described identifier that is included in the described ITV order.
22. client apparatus according to claim 20, it further comprises:
Be used to store the device of the default value of described presentation information, wherein said computer program instructions further comprises the disappearance in response to analog value in institute's data retrieved structure, and retrieves described default value.
23. client apparatus according to claim 20, wherein institute's data retrieved is stabbed with expiration time and is associated, and described computer program instructions further comprises in response to determining that arrived described expiration time stabs the indicated time, and discharges memory location.
CN2005800068179A 2004-03-01 2005-03-01 System and device for describing presentation and behavior information in an ITV application Active CN101073254B (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US54899704P 2004-03-01 2004-03-01
US60/548,997 2004-03-01
US63475704P 2004-12-09 2004-12-09
US60/634,757 2004-12-09
PCT/US2005/006804 WO2005084348A2 (en) 2004-03-01 2005-03-01 System and method for describing presentation and behavior information in an itv application

Publications (2)

Publication Number Publication Date
CN101073254A CN101073254A (en) 2007-11-14
CN101073254B true CN101073254B (en) 2011-05-18

Family

ID=34922700

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2005800068179A Active CN101073254B (en) 2004-03-01 2005-03-01 System and device for describing presentation and behavior information in an ITV application

Country Status (4)

Country Link
EP (1) EP1730949A4 (en)
CN (1) CN101073254B (en)
CA (1) CA2555276C (en)
WO (1) WO2005084348A2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10086289B2 (en) * 2016-11-22 2018-10-02 Sony Interactive Entertainment America Llc Remastering by emulation

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6018768A (en) * 1996-03-08 2000-01-25 Actv, Inc. Enhanced video programming system and method for incorporating and displaying retrieved integrated internet information segments
US6173317B1 (en) * 1997-03-14 2001-01-09 Microsoft Corporation Streaming and displaying a video stream with synchronized annotations over a computer network
US6240555B1 (en) * 1996-03-29 2001-05-29 Microsoft Corporation Interactive entertainment system for presenting supplemental interactive content together with continuous video programs
US6392664B1 (en) * 1998-11-30 2002-05-21 Webtv Networks, Inc. Method and system for presenting television programming and interactive entertainment

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6496981B1 (en) * 1997-09-19 2002-12-17 Douglass A. Wistendahl System for converting media content for interactive TV use
CA2326197A1 (en) * 2000-01-11 2001-07-11 International Business Machines Corporation Method and system for enabling real-time interactive e-commerce transactions
US7120924B1 (en) * 2000-02-29 2006-10-10 Goldpocket Interactive, Inc. Method and apparatus for receiving a hyperlinked television broadcast

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6018768A (en) * 1996-03-08 2000-01-25 Actv, Inc. Enhanced video programming system and method for incorporating and displaying retrieved integrated internet information segments
US6240555B1 (en) * 1996-03-29 2001-05-29 Microsoft Corporation Interactive entertainment system for presenting supplemental interactive content together with continuous video programs
US6173317B1 (en) * 1997-03-14 2001-01-09 Microsoft Corporation Streaming and displaying a video stream with synchronized annotations over a computer network
US6392664B1 (en) * 1998-11-30 2002-05-21 Webtv Networks, Inc. Method and system for presenting television programming and interactive entertainment

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
US 6173317 B1,全文.

Also Published As

Publication number Publication date
EP1730949A2 (en) 2006-12-13
CA2555276C (en) 2012-05-15
WO2005084348A3 (en) 2007-05-24
CN101073254A (en) 2007-11-14
CA2555276A1 (en) 2005-09-15
EP1730949A4 (en) 2009-08-12
WO2005084348A2 (en) 2005-09-15

Similar Documents

Publication Publication Date Title
US7913286B2 (en) System and method for describing presentation and behavior information in an ITV application
US10587930B2 (en) Interactive user interface for television applications
CN101036385B (en) Method and system for providing interactive services in digital television
CN100355276C (en) A system for acquiring and processing broadcast programs and program guide data
CN1095276C (en) Transmission of an electronic database of information
US7146615B1 (en) System for fast development of interactive applications
CN101207782B (en) Content linkage information prompting device and method
CN101194505B (en) system and method for video-rich navigation
CN100438626C (en) Data referencing system
US11272265B2 (en) Validation of content
US8453175B2 (en) System for presentation of multimedia content
US8191103B2 (en) Real-time bookmarking of streaming media assets
CN101390390B (en) Systems and methods for episode tracking in an interactive media environment
US8763052B2 (en) System for enabling video-based interactive applications
CN102098537B (en) Systems and methods for episode tracking in an interactive media environment
US20020053085A1 (en) Apparatus, method, and system for information processing, and recording meduim
CN102918832A (en) Tv-centric actions in triggered declarative objects
CN103596020A (en) Method and system for mixed arrangement and playing of television programs
CN100536556C (en) A method to realize the design and update of picture advertisement of set top box
CA2387658A1 (en) Interactive television systems with live customer service
JP2001292425A (en) Interactive system with media contents using slide type graphic window
CN101116336B (en) Apparatus and method for providing adaptive broadcast service using usage environment description including biographic information and terminal information
CN101073254B (en) System and device for describing presentation and behavior information in an ITV application
CN103428536A (en) Method and device for playing internet protocol television (IPTV) programs
WO2001013206A1 (en) Interactive television system and method

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: ERICSSON TELEVISION INC.

Free format text: FORMER OWNER: GOLDPOCKET INTERACTIVE INC.

Effective date: 20121025

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20121025

Address after: American California

Patentee after: ERICSSON TELEVISION Inc.

Address before: American California

Patentee before: GOLDPOCKET INTERACTIVE

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20201215

Address after: Delaware, USA

Patentee after: MK systems us holding Co.

Address before: Delaware, USA

Patentee before: MK systems USA holding Co.

Effective date of registration: 20201215

Address after: Delaware, USA

Patentee after: MK systems USA holding Co.

Address before: Delaware, USA

Patentee before: Rio media

Effective date of registration: 20201215

Address after: Delaware, USA

Patentee after: Rio media

Address before: Stockholm, Sweden

Patentee before: Ericsson AB

Effective date of registration: 20201215

Address after: Stockholm, Sweden

Patentee after: Ericsson AB

Address before: California, USA

Patentee before: ERICSSON TELEVISION Inc.

Effective date of registration: 20201215

Address after: Delaware, USA

Patentee after: MK systems USA

Address before: Delaware, USA

Patentee before: MK systems us holding Co.