WO2012161125A1 - 受信機、プログラム及び受信方法 - Google Patents

受信機、プログラム及び受信方法 Download PDF

Info

Publication number
WO2012161125A1
WO2012161125A1 PCT/JP2012/062826 JP2012062826W WO2012161125A1 WO 2012161125 A1 WO2012161125 A1 WO 2012161125A1 JP 2012062826 W JP2012062826 W JP 2012062826W WO 2012161125 A1 WO2012161125 A1 WO 2012161125A1
Authority
WO
WIPO (PCT)
Prior art keywords
application
data
policy
unit
user
Prior art date
Application number
PCT/JP2012/062826
Other languages
English (en)
French (fr)
Inventor
千草 山村
亜里砂 藤井
一博 大槻
Original Assignee
日本放送協会
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 日本放送協会 filed Critical 日本放送協会
Priority to EP12789444.2A priority Critical patent/EP2712188A4/en
Priority to US14/118,262 priority patent/US20140344846A1/en
Priority to JP2013516349A priority patent/JP5986993B2/ja
Publication of WO2012161125A1 publication Critical patent/WO2012161125A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/09Arrangements for device control with a direct linkage to broadcast information or to broadcast space-time; Arrangements for control of broadcast-related services
    • H04H60/14Arrangements for conditional access to broadcast information or to broadcast-related services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/35Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users
    • H04H60/45Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users for identifying users
    • 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/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • H04N21/2396Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests characterized by admission policies
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25875Management of end-user data involving end-user authentication
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4126The peripheral being portable, e.g. PDAs or mobile phones
    • 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/441Acquiring end-user identification, e.g. using personal code sent by the remote control or by inserting a card
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/28Arrangements for simultaneous broadcast of plural pieces of information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/86Arrangements characterised by the broadcast information itself
    • H04H20/91Arrangements characterised by the broadcast information itself broadcasting computer programmes

Definitions

  • Non-Patent Document 1 when a plurality of users share one TV, information corresponding to the preference of each user who is watching TV is displayed. There is a problem that cannot be provided.
  • the application can acquire information related to the user who is watching the television, an individual service can be provided for each user.
  • appropriate information can be provided for each user by selecting information to be provided according to the user's preference, gender, or age.
  • a mechanism in which all applications can access information related to all users it is preferable to manage access to information related to the users because the privacy of the users cannot be protected.
  • the present invention has been made in consideration of such circumstances, and while providing individual services for each user, managing access to information related to the user using the receiver and managing the user's privacy Provided are a receiver, a program, and a receiving method capable of protecting.
  • a first aspect of the present invention includes a broadcast receiving unit that receives a broadcast signal, user identification information, data related to the user, and a policy that indicates a criterion for determining whether to access the data.
  • the communication unit that communicates with the terminal device to acquire the user identification information, and the user identification information acquired by the communication unit, the user identification information
  • a policy determination unit that reads the associated policy from the related data storage unit and determines whether to permit access to data corresponding to the identification information of the user based on the read policy
  • a data reading unit that reads data corresponding to the user identification information from the related data storage unit when the access is permitted, and is included in the broadcast signal.
  • Launch the application according to the application start command a receiver having a, an application execution unit that executes an application using the data which the data reading unit has read.
  • a first aspect of the present invention is the above-described receiver, wherein the related data storage unit indicates data related to the user and a criterion for determining whether or not to access data related to the user.
  • Application identification information is further stored in association with a policy, and the policy determination unit is configured to identify application identification information associated with data related to a user indicated by the identification information based on the read policy. And the identification information of the application that has output the read request may be compared, and if they match, access may be permitted.
  • a first aspect of the present invention is the above-described receiver, wherein the policy determination unit permits access to data related to a user indicated by the identification information based on the read policy. Whether or not to permit access may be determined according to an operation input indicating whether or not.
  • a first aspect of the present invention is the receiver described above, wherein the related data storage unit stores data corresponding to each key information, and the data reading unit is the application execution unit. The data corresponding to both the identification information of the user and the key information may be read based on the key information designated by the user.
  • a computer used for a receiver, a broadcast receiving unit that receives a broadcast signal, user identification information, data related to the user, and access to the data.
  • the communication unit that acquires the user identification information by communicating with the terminal device, the related data storage unit that stores the policy indicating the criterion in association with the Whether the policy associated with the user identification information is read from the related data storage unit, and whether to permit access to the data corresponding to the user identification information is determined based on the read policy.
  • a policy determination unit for determining, and when the access is permitted, a data read for reading data corresponding to the user identification information from the related data storage unit , Start the application according to the application start command included in the broadcast signal, a program to function as the application execution unit, which executes an application using the data which the data reading unit has read.
  • a broadcast signal is received, and user identification information, data related to the user, and a policy indicating a criterion for determining whether to access the data are stored in association with each other. Then, it communicates with the terminal device to acquire the user identification information, and based on the acquired user identification information, reads the policy associated with the user identification information, and reads the policy And determining whether to permit access to the data corresponding to the user identification information, and when the access is permitted, reads the data corresponding to the user identification information, and This is a receiving method of starting an application according to an included application start command and executing the application using the read data.
  • 1 is an overall configuration diagram of a broadcasting / communication cooperation system according to an embodiment of the present invention. It is a functional block diagram which shows the internal structure of the receiver by the embodiment. It is a block diagram which shows the detailed structure of the application execution control part by the embodiment. It is a block diagram which shows the detailed structure of the presentation control part by the embodiment. It is a data structure figure which shows the data structure of the user relevant information in the same embodiment. In the embodiment, it is a sequence diagram which shows the example of operation
  • FIG. 11 is a sequence diagram illustrating an example of an operation of a receiver when a policy determination unit performs policy determination when writing application execution target data in the embodiment. In the same embodiment, it is a figure which shows the example of a user relevant information after a resource control part writes data.
  • FIG. 11 is a sequence diagram illustrating a second example of the operation of the receiver when the policy determination unit performs policy determination when acquiring application execution unit target data in the embodiment.
  • FIG. 1 is a block diagram showing a configuration of a receiver according to an embodiment of the present invention.
  • the receiver 4 includes a separation unit 402, a communication input / output unit 411, an application execution control unit 412, a local information storage unit (related data storage unit) 416 and an external interface unit (communication unit) 417.
  • the application execution control unit 412 includes an application storage unit 431, an application control unit 434, an application execution unit 435, and a resource control unit (data reading unit) 439.
  • the application execution unit 435 includes a login processing unit 461, and the resource control unit 439 includes a usage state determination unit 464, an access control unit 462, and a policy determination unit 463.
  • the external interface unit 417 communicates with the terminal device to acquire a user operation input.
  • the external interface unit 417 communicates with a terminal device connected to itself via a wireless LAN.
  • the local information storage unit 416 stores data in association with user identification information, as will be described later.
  • the login processing unit 461 executes user login and logout.
  • the usage status determination unit 464 generates usage status information according to the login status of the user.
  • the resource control unit 439 acquires data associated with the usage state information generated by the usage state determination unit 464 from the local information storage unit 416.
  • the policy determination unit 463 determines whether or not data can be acquired based on a policy indicating a criterion for determining whether or not data can be accessed, as pre-processing for the resource control unit 439 to acquire data from the local information storage unit 416.
  • the access control unit 462 controls access to the local information storage unit 416 of the resource control unit 439. Further details will be described later with reference to FIGS.
  • broadcast communication cooperation system broadcast communication integration system, broadcast communication system, transmission / reception system
  • broadcast communication cooperation service broadcast communication cooperation service
  • broadcast communication cooperation service link a digital broadcast service and a communication service using the Internet or the like.
  • FIG. 2 is a diagram showing a person who uses the broadcasting / communication cooperation system and its relationship.
  • a broadcasting station that sends a program accompanied by organization distributes the program to viewers by broadcast radio waves or a communication network.
  • Broadcasting stations provide service providers with metadata related to programs in order to enhance broadcast communication cooperation services.
  • a service provider that provides a broadcasting / communication cooperation service produces and distributes content and applications (hereinafter also referred to as “apps”) for providing the broadcasting / communication cooperation service to viewers.
  • application when simply described as “application”, it refers to an application for providing a broadcasting / communication cooperation service (an application of the broadcasting / communication cooperation service).
  • the content or application producer and distributor need not be the same service provider.
  • a broadcasting station may also serve as a service provider.
  • the service provider can also provide link information to other service providers.
  • the service provider can apply for registration of the application and obtain approval from the system administrator in order to indicate that the application to be provided is official. Approved applications are not restricted in operation on the receiver.
  • the system administrator is an organization that certifies that the application (receiver application) provided to the viewer is official.
  • the system administrator's decision as to whether or not to approve the applied application depends on the commission from the broadcasting station.
  • Receiver manufacturers manufacture and sell receivers.
  • the receiver manufacturer can make the receiver operable by installing an application for performing various settings of the receiver in the receiver.
  • the display screen of the application in the receiver may overlap the display screen (video) of the program.
  • a viewer who views a program broadcast by a broadcasting station enjoys a broadcasting / communication cooperation service.
  • the viewer can download or start the application according to his / her will. Further, the viewer can overlap the display screen of the application with the display screen (video) of the program according to his / her intention.
  • Broadcasting stations have broadcasting station facilities. Further, the broadcasting station configures and manages both the broadcasting station server group and the service provider server group.
  • the service provider configures and manages a service provider server group.
  • the system administrator manages and operates the repository server.
  • the receiver manufacturer manufactures and sells the receiver. The viewer has a receiver and enjoys a broadcasting / communication cooperation service.
  • a receiver (Hybridcast (registered trademark) receiver, broadcast receiving communication device) is equipped with a standardized common API (Application Program Interface). Further, the receiver receives broadcasts of the current system such as terrestrial digital broadcast and BS (broadcasting satellite) digital broadcast.
  • the broadcasting station equipment multiplexes a signal for starting a broadcasting / communication cooperation service into a broadcasting wave. The multiplexing method will be described later.
  • the broadcasting station server group manages and distributes content and metadata held by broadcasting stations.
  • the broadcasting station server group includes various servers, a data storage unit (DB (database)), and an API.
  • the broadcasting station server group includes a content management server, a viewer management server, a content distribution server, and a broadcasting station service server. including.
  • the content management server that manages content manages programs and metadata that are broadcast content.
  • the content management server includes a program management server that manages a broadcast program or a broadcast program, and a metadata management server that manages metadata related to the program.
  • the metadata indicates, for example, a program title, a program ID, a program summary, performers, staff, broadcast date and time, script, captions, and commentary.
  • the viewer management server manages viewers (users), and the content distribution server distributes content data by communication.
  • the broadcast station service server is a server for the broadcast station to provide a service to a service provider. Services provided by the broadcast station service server include, for example, a social network service operated by a broadcast station and a web log (blog) for each broadcast program.
  • the receiver application server is a server that manages an application of the broadcasting / communication cooperation service.
  • the service provider stores, manages, and distributes applications that operate on the receiver. Service providers are composed of groups or individuals.
  • the receiver application server In response to a request from the receiver, the receiver application server notifies the receiver of the storage location of the application file (the application file will be described later) and distributes the application file.
  • the service server is a server that provides a service in response to a request from an application running on the receiver.
  • Examples of the service server include a multilingual subtitle server, a speech speed conversion voice server, a social TV server, a recommendation server, a program review server, and a bookmark server.
  • the content distribution server is a server that provides content in response to a request from an application running on the receiver.
  • Examples of the content distribution server include a VOD (Video On Demand) distribution server, a caption distribution server, and a multi-view distribution server.
  • the data storage unit of the service provider server group is a place for storing content data, metadata, data created by the service provider, viewer data, and application files.
  • the data stored in the data storage unit can be accessed only by the service provider that is managing it, and cannot be accessed by others.
  • the API of the service server group is an API for providing application files, contents, and services in response to requests from applications running on the receiver.
  • the receiver receives and displays the broadcast of the current system, and executes a broadcasting / communication cooperation service.
  • Current broadcasting is satellite broadcasting such as terrestrial digital broadcasting and BS digital broadcasting, and data broadcasting.
  • the receiver is connected to the Internet.
  • the API implemented by the receiver is specified so that the operation of the application is the same without depending on the receiver. Since all applications process the receiver through the API, the application cannot access functions specific to the receiver without going through the API.
  • FIG. 4 is a diagram illustrating a terminal cooperation model of the broadcasting / communication cooperation system.
  • the receiver can provide a service in cooperation with a terminal such as a portable terminal. Examples of terminals to be linked include a personal computer, a mobile phone, a tablet, a smartphone, and a PDA (Personal Digital Assistant).
  • the receiver provides, as an API, a function that can be used by other terminals as a receiver function.
  • An API that provides a function that can be used by other terminals is called a terminal cooperation API.
  • an application running on a mobile terminal can access a broadcasting resource such as acquisition of program information or call a receiver function such as reproduction control by using the terminal cooperation API.
  • RESTful REST: Representational State Transfer
  • UPnP Universal Plug and Play
  • XMPP eXtensible Messaging and Presence Protocol
  • the receiver also supports a Notification function in which a server on the Internet notifies the receiver of information by pushing.
  • the receiver receives information notified by a push from a server or the like.
  • Some receiver operations may be controlled by the Notification function, and the Notification function is also defined as part of the terminal cooperation API specification.
  • application life cycle control such as activation is performed in conjunction with broadcast or communication content.
  • the application is activated based on an AIT (Application Information Table) (application information table, application activation information) distributed together with the AV content.
  • AIT Application Information Table
  • a provider of AV content such as a broadcaster can also control a life cycle such as automatic startup and termination of an application.
  • non-linkage the application is started and terminated without being linked to broadcasting or communication content. In this case, the life cycle of the application such as the start and end of the application is controlled only by the viewer.
  • a service means a series of programs that can be broadcasted as part of a schedule organized by a broadcaster, but this concept has been expanded in a broadcasting / communication cooperation system to provide stream-dependent and independent services. Two service types are defined.
  • There are two methods for starting an application a method of starting an application file acquired on the fly, and a method of starting an application file stored (installed) in a receiver in advance.
  • On-the-fly is a method of acquiring an application file by communication when an application is executed, and is also referred to as a non-install type or a direct execution type.
  • the receiver activates an application program of an application file in the local file system based on the well-known application by AIT described later.
  • the receiver acquires and installs an application file by communication, it rewrites the information in the location hierarchy set in the related AIT (see section 2.5.1) to the location on the local file system. Accordingly, an operation for generating a value for identifying a stand-alone service (required for each AIT unit of the stand-alone service) is required.
  • FIG. 6 is a diagram showing an example of a text expression of AIT used in the broadcasting / communication cooperation system.
  • the AIT used in the broadcasting / communication cooperation system is based on the AIT defined by ARIB-J.
  • AIT there are binary representation for transmission in an SI (Service Information) table and text representation (AIT File) in XML (extensible markup language) format.
  • FIG. 6 shows an example of text representation. Yes.
  • an application ID applicationIdentifier
  • controlCode control code
  • location information location indicating a storage location (storage location) of the application file, and the like are described.
  • the AIT ES is multiplexed on the broadcast TS in the same manner as in ARIB-J.
  • an AIT file prepared separately is acquired simultaneously with the selection of AV content.
  • the AV content to be reproduced (content ID)
  • the information describing application activation information (AIT) are acquired as starting points. It is possible to use the concept of unit content and entry components of server type broadcasting (ARIB TR-B27).
  • control for starting a new application or terminating the active application during playback of AV content is performed by the AIT transmitting by communication.
  • control is performed at a timing that is not assumed in advance, notification by push through communication is performed.
  • FIG. 7 is a diagram illustrating a life cycle of an application.
  • the application state is “Not Loaded”, “Loaded”, “Paused”, “Started”, “Destroyed” (destroyed) according to the application state in ARIB-J. ) ".
  • an application life cycle a series of processes from when an application is loaded and executed until the application is finished.
  • control of transition between the states is called life cycle control.
  • the life cycle control of an application linked to AV content is basically performed through selection of a stream dependent service.
  • the selection of the stream dependent service is made by the viewer.
  • a service is a set of a series of contents including AV contents and applications, and a life cycle such as activation and termination is controlled by a control code included in an AIT sent together with the application.
  • a single service may include a plurality of applications that operate simultaneously.
  • Selection of a service that triggers application activation includes control from an application through a receiver API, control from a navigator as a resident application of a receiver, control of a remote control button in the case of a broadcast service, and the like. .
  • presentation of content (AV content or application) included in the service before and after switching is switched.
  • the applications included in the service before and after the switching are different, the application that was activated before the switching is terminated by the service switching, and a different application can be activated after the switching. Details of these operations will be described later in section 2.4.
  • BML Broadcast Markup Language
  • an API for controlling the start of the broadcast communication cooperation application is added as a BML API.
  • BML is a multimedia coding system defined in ARIB STD B24, and is adopted as a data broadcasting system in the current Japanese terrestrial / BS / CS digital broadcasting.
  • An independent service is a virtual service that includes only an application, and by selecting an independent application, the application is started by acquiring an AIT by the same mechanism as the activation by AIT in Section 2.3.2.1. . However, in the stand-alone service, at least one auto-start application is started.
  • the stand-alone service is selected from, for example, an application launcher.
  • Termination by other applications Using the application termination API executed by the application, other running applications are terminated. In this case, an appropriate security policy for terminating other applications is necessary.
  • the receiver terminates the designated application by the receiver function. For example, a list of applications that are activated by the receiver is displayed, and the designated application is terminated by the viewer's selection.
  • the execution of the application is continued even if the received composition service is changed. Since the AIT for starting the application cannot be obtained from the composition service, the start information is obtained by other means (for example, obtaining an AIT File (file) associated with the application using an application launcher, etc.). It is given to the receiver and activated. Another application started from the unbound application is also handled as an unbound application. The application is basically terminated explicitly by the operation of the viewer, but is terminated also when an instruction (KILLALL) for terminating all applications is given by the AIT from the receiving service.
  • KILLALL an instruction
  • the activation information of all applications is given by the AIT. Acquisition of the application file is instructed by the location information of the application included in the AIT.
  • the location information is described in a hierarchy of “/ ApplicationList / Application / applicationSpecificDescriptor / dvbjDescriptor / location” (XML is described as the contents of the location element).
  • the description of the location information is, for example, “http://192.168.11.37/demo.jar”.
  • the above is an example of acquiring demo.jar (Java (registered trademark) application archive) using the HTTP (Hypertext Transfer Protocol) protocol. The transport protocol to be used and the package format of the application will be described later.
  • the transmission method used when acquiring the application file via the network includes acquisition using the HTTP protocol and acquisition using the FILE protocol.
  • acquisition is performed using the GET method.
  • the designation of the location of the AIT is “http: // ⁇ ”.
  • the location specification of the AIT is set to “file: /// ⁇ ”.
  • FIG. 10 is a diagram illustrating a sequence of a recommendation service.
  • Methods used between the service provider server group and the interface unit of the broadcast station server are “GET”, “POST”, “PUT”, and “DELETE”.
  • An example of the command format is shown below.
  • Parameters include ⁇ broadcast station name ⁇ , ⁇ server name ⁇ , ⁇ content ID ⁇ , ⁇ viewer ID ⁇ , ⁇ review ID ⁇ , ⁇ data to be managed ⁇ , ⁇ sort method ⁇ , ⁇ first item ⁇ , ⁇ Number ⁇ etc.
  • MPEG-2 Video or H.264 For multiplexing video encoded with H.264 / MPEG-4 Advanced Video Coding (AVC), audio encoded with MPEG-1 Audio Layer II, MPEG-2 Audio AAC, subtitles, etc.
  • AVC MPEG-4 Advanced Video Coding
  • MPEG-1 Audio Layer II MPEG-2 Audio Layer II
  • MPEG-2 Audio AAC MPEG-2 Audio AAC
  • subtitles etc.
  • Transport Stream format MPEG2-TS, MMT (MPEG Media Transport), MP4, etc. can also be used.
  • FIG. 11 is a diagram illustrating a transfer protocol stack.
  • Stream transmission uses RTP (Real-Time Transport Protocol) / UDP (User Datagram Protocol) and HTTP / TCP (Transmission Control Protocol).
  • RTP Real-Time Transport Protocol
  • UDP User Datagram Protocol
  • HTTP / TCP Transmission Control Protocol
  • HTTP / TCP Transmission Control Protocol
  • stream control is performed using HTTP connections, methods, and headers.
  • RTP Real-time Transport Protocol
  • RTSP Real Time Streaming Protocol
  • Multilingual subtitles comply with Timed Text Markup Language (W3C (World Wide Web Consortium)). Note that synchronization is performed separately at the application level. Each corresponding font is downloaded from the server as necessary. For example, a font file is placed on the HTTP payload. In this case, Web Dynamic Fonts and PFR (PortableFont Resource) are used. The font capacity is preferably about 5-35 MB (megabytes).
  • MPEG-2 Audio or PCM (Pulse Code Modulation) (AIFF-C (Audio Interchange File Format Compression)) is used.
  • MPEG-2 Audio the MPEG-2 AAC system defined in ARIB STD-B32 2.4 Edition, Part 2, Section 3.1 is used, and the encoding parameter constraints defined in Chapter 5 are Applied.
  • PCM the method defined in ARIB STD-B24 5.4 version 1st part 2 section 6.2 is used.
  • PCM the system defined in ARIB STD-B24 5.4 version 1st part 2 section 6.4 is used.
  • control code only APR (CR) and APD (LF) are used among the C0 control codes defined in ARIB STD-B24 5.4 version 1 Part 2 Section 7.2.2.1. . Other C0 control codes and C1 control codes are not used.
  • the conversion of character codes is in accordance with ARIB STD-B24 5.4 edition, Part 1, Part 2, Appendix E.
  • the receiver has a function of presenting a BML document that conforms to the terrestrial digital broadcast operation rules (ARIB TR-B14) or the BS digital broadcast operation rules (ARIB TR-B15).
  • the receiver must be able to present data broadcasting services provided by terrestrial digital broadcasting or BS digital broadcasting in accordance with existing standards.
  • the receiver is required only to present BML content distributed by the data carousel method in broadcasting, and BML content provided by the HTTP protocol by communication (TR-B14, Volume 3, Part 2, Section 5.14, TR -B15 Part 1, Part 3, Section 8.14) is not mandatory.
  • browser.startHybridcastApp () and getAITInfo () are specified as broadcasting extended APIs for starting the communication application specified below.
  • Table 2 shows the rules for browser.startHybridcastApp ().
  • browser.startHybridcastApp () is an API for starting a broadcasting / communication cooperation application.
  • Table 3 shows the rules for getAITInfo ().
  • getAITInfo () is an API for acquiring the latest AIT information included in the service being received.
  • HTML5 [3.5.3 HTML5] [3.5.3.1 Description method]
  • the receiver supports HTML5 as a description method of a presentation engine type application provided from communication.
  • the following are supported as JavaScript (registered trademark) APIs.
  • JavaScript registered trademark
  • those being studied by W3C include Working Draft (WD) or Editor's Draft (ED).
  • the API related to the data carousel transmitted by the broadcast wave is not essential.
  • the HTML5 browser of the receiver is JavaScript (registered trademark) processing system, Web Workers (W3C Working Draft 08 Feb 2011), Widget Interface (W3C Working Draft 3 Feb 2011), HTML Implement the function of Canvas2D Context (W3C Editor's Draft 28 Feb. 2011). Since Web Workers supports multitasking, Widget Interface supports independent applications, and HTML Canvas 2D Context is necessary to support 2D vector graphics.
  • ARIB-J The receiver supports ARIB-J as a description method of an application execution engine type application provided from communication. Further, DVB Bluebook A153 (GEM Media Synchronization API) is used as a synchronization API between a plurality of streams.
  • GEM Media Synchronization API GEM Media Synchronization API
  • the name space is a character string description rule for specifying the positions of various resources such as video / audio contents, applications, monomedia files, and the like that are handled on the server or in the receiver. Namespace notation for referring to various resources used in section 3.5.2 and after is specified for each classification.
  • the resources include resources on the Internet server, resources on the application cache, and broadcasting resources.
  • the resources on the Internet server include stream resources such as VOD contents, and file resources such as applications and other resources referred to by applications.
  • Broadcast resources include stream resources such as programs being broadcast, past and future programs, and carousel resources such as modules and event messages.
  • the broadcasting / communication cooperation interface includes the following interfaces.
  • getRunningApplications Acquires information on applications being executed.
  • the return value of getRunningApplications includes apps [] and application_id and running_level for each application.
  • apps [] a list of running applications is set.
  • application_id an application ID is set, and is null when the application is unofficial.
  • running_level an execution level (authentication result and viewer setting state) is set. From a security point of view, information that can be acquired for other applications should be restricted.
  • queryApplicationInfo Acquires information about the specified application.
  • getProgramInfo Acquires information on the broadcast being received. Return values are tuner_state, network_id, ts_id, orig_ts_id, service_id, event_id, and content_id. In tuner_state, a value indicating the reception state is set.
  • getEPGInfo Acquires various information in the EIT (+ SDT) of the broadcast being received.
  • saveApplicationToCache Saves the application file on the server in the cache.
  • queryApplicationInCache Search for an application file (application program) in the cache.
  • the arguments of queryApplicationInCache () are application_id, getDSMCCModule (), addBroadcastSignalListener (), and getListFromHybridcastMenu ().
  • application_id an application ID issued from the certification authority is set.
  • getDSMCCModule () acquires the specified module from the broadcast wave.
  • addBroadcastSignalListener registers a listener that monitors updates of SI, emergency information, carousel, and event messages.
  • getListFromHybridcastMenu acquires a list of top menu applications.
  • the return values of queryApplicationInCache () are user_apps [], broadcaster_apps [], and vendor_apps [].
  • addApplicationToHybridcastMenu Adds an application to the top menu.
  • getKeyFromBroadcast Acquires key information for limited server access from broadcasting.
  • querySupportedFunction Queries the application browser function. This is used for the purpose of checking whether the function / API is available.
  • the BroadacastSignalListener interface is a listener interface for monitoring SI, emergency information, carousel, and event messages acquired from broadcasting. This interface event also occurs when the associated organization service is changed during bound application execution.
  • the LocalDatabase interface is an interface for holding and managing viewer information in the receiver.
  • the viewer information is information that should not be output to the server side such as personal information, and is minimum information such as a viewer ID and a receiver ID.
  • SynchronizationManager interface As a SynchronizationManager interface, an API similar to DVB Bluebook A153 (GEM Stream Synchronization API) is introduced. Further, the following interface is added as an API.
  • getCurrentSTC Acquires the current STC (System Time Clock) value.
  • STC System Time Clock
  • the system clock (STC) on the receiver side is multiplexed and distributed as a PCR (Program Clock Reference) signal in the MPEG2 transport stream so that the system clock (STC) inside the receiver is transmitted on the transmission side.
  • STC System Time Clock
  • getCurrentPositionInProgram Acquires the elapsed time from the start of the program.
  • delayStreamPresentation Starts delay presentation of the broadcast stream being presented.
  • getCurrentDelay Acquires the delay time amount (from the original presentation time) of the broadcast stream being presented.
  • [3.6.6 SecurityException interface] An interface for exceptions that occur when an application makes function calls and property operations that are prohibited at the current execution level.
  • the ecurityException interface is generated by calling each of the above APIs or by various operations on an object ( ⁇ video> for HTML5 or OO Controller for ARIB-J) that references a broadcast.
  • the receiver of the broadcasting / communication cooperation system includes an application launcher as a receiver function.
  • the application launcher is used to start an application stored in the receiver, to select an independent application from a known repository, and to select an application whose control code is “PRESENT” among applications whose start instructions are described by the AIT.
  • FIG. 13 shows a functional model of the secure manager.
  • the secure manager is a function that comprehensively manages security in the receiver.
  • Application authentication The receiver identifies either official or informal, and if official, IDs for all applications to be executed. The official or informal distinction is made by confirming the presence or absence of a signature attached to the application file (application program). If it is official, the receiver further obtains an application ID described in the signature. The application is identified when the application is acquired or activated.
  • Screen presentation control described later in section 4.3.
  • Resource access control The receiver performs access control to APIs such as broadcast resources of the application being executed. When an application tries to access an API, if the application is an informal application, the access is restricted by the type of API. Further, when the application accesses the screen display API on the display, screen presentation control is executed based on the formal or informal type and the presentation policy of the broadcaster being selected. Details will be described later in section 4.3.
  • (4) Revocation An application revocation function is provided.
  • FIG. 15 is a diagram illustrating a basic operation model of screen presentation control.
  • the method of presenting the communication content for the broadcast program which is assumed in advance by the broadcaster, is managed as a presentation rule by the receiver.
  • levels are classified according to the order of superposition and the difference in arrangement, and a table of presentation levels (policy levels) and presentation methods is held in the receiver as presentation rules.
  • the broadcaster multiplexes and transmits the designated presentation level to the broadcast wave, and the receiver collates the presentation level with the presentation rules to determine the presentation method. Thereby, presentation control based on the presentation policy of the broadcaster can be realized.
  • EIT program genre The policy level is determined from the program genre described in the existing EIT content descriptor. For this purpose, the receiver manages a correspondence table between program genres and policy levels.
  • the relationship with the ARIB standard is as follows: ARIB STD-B10 Part 2 6.2.4, Appendix H.
  • Table 4 is a table showing a specific example of the relationship between the program genre and the policy level.
  • the program genre (program_genre) is composed of two stages of “content_nibble_level1” (0x0 to 0xF) representing the major classification and “content_nibble_level2” (0x0 to 0xF) representing the middle classification.
  • the table managed by the receiver covers the genre of the middle category, and defines a policy level value.
  • EIT + New descriptor added to EIT: A new descriptor is added to the event information section of EIT, and policy information is described. The receiver interprets this descriptor and executes a desired process, thereby realizing control according to the policy level for each program.
  • the relationship with the ARIB standard is ARIB TR-B14 (second volume), Part 3 31.3, ARIB STD-B10 Volume 2, 5.2.7.
  • Table 5 is a table showing the structure of the event security descriptor.
  • the event security descriptor shown in FIG. 15 is newly defined, and this event security descriptor is stored in the descriptor area in the EIT and transmitted.
  • a policy level policy level
  • an application ID application_identifier
  • a control code application_control_code
  • a priority application_priority
  • protocol_id protocol identification
  • program related flag associated_application_flag
  • policy_level represents a policy level in units of programs.
  • the policy level is a value from 1 to 4.
  • application_identifier () is an identifier for identifying an application.
  • Table 6 shows the structure of application_identifier ().
  • Organization_id represents the organization that created the application and takes a value of 0x00000063 or later.
  • application_id represents a number for identifying an application. application_id is uniquely assigned within the organization identification.
  • Application_control_code specifies the control code that controls the application state. Table 7 shows the definition of the control code.
  • Application_priority indicates the policy level for each application.
  • the policy level for each application indicates the relative priority among the applications announced in the service.
  • the priority is a value from 1 to 4.
  • AIT table definition and addition of new descriptor (AIT +): AIT is extended to transmit policy information. The receiver interprets this table and executes a desired process, thereby realizing control corresponding to a policy level for an event that occurs at any time.
  • the relationship with the ARIB standard is ARIB STD-B23 Part 2 10.16.
  • Table 10 shows the data structure of AIT.
  • the AIT shown in Table 10 is an extension of the AIT data structure defined by ARIB STD-B23.
  • AIT describes a policy level, an application ID, and a control code.
  • the AIT is transmitted in a section format, and is always transmitted while the event is continuing.
  • the application ID is described in application_identifier (), and the control code is described in application_control_code. These details are the same as those described in (2) EIT extension.
  • a new security policy descriptor is defined and stored in the AIT common descriptor loop for transmission.
  • each of the above methods (1) to (4) can be sent simultaneously in parallel. Therefore, it is necessary to determine which method is used to prioritize what is sent and determine the policy level.
  • the priority order is as follows.
  • the receiver can determine the policy level based on this priority order, thereby enabling screen presentation control that prioritizes emergency events based on the broadcaster's intention.
  • FIG. 16 shows an example of screen presentation control according to the policy level.
  • the policy level of the program is “1”
  • both the application screen of the official application screen and the application screen of the unofficial application are allowed to be superimposed on the broadcast screen.
  • the policy level of the program is “2”
  • only the official application is allowed to be superimposed on the broadcast screen, and the application screen of the unofficial application is prohibited from being superimposed on the broadcast screen. Only display to is allowed.
  • the policy level of the program is “3”, the display of both the application screen of the official application and the application screen of the unofficial application is permitted, but overlaying on the broadcast screen is prohibited for all application screens. Only display outside the broadcast screen is allowed.
  • the policy level is “4”, only the full screen display of the broadcast screen is permitted.
  • FIG. 17 shows an example of presentation control when receiving an earthquake early warning.
  • the program policy level of program A is “1”
  • the application screen of the official application and the application screen of the unofficial application are displayed superimposed on the broadcast screen in the broadcast time zone of program A.
  • the receiver determines that the policy level in the time zone in which the earthquake early warning is generated in the broadcast time zone of program A is the policy level “4” of the emergency earthquake early warning. Therefore, even if the receiver is in the broadcast time zone of program A, the application screen of the official application and the application screen of the unofficial application are displayed on the broadcast screen in the time zone when the earthquake early warning is occurring. Overlay is prohibited.
  • FIG. 18 is an overall configuration diagram of a broadcasting / communication cooperation system according to an embodiment of the present invention.
  • the broadcasting / communication cooperation system according to the present embodiment includes a broadcaster apparatus 1 owned by a broadcasting station, a service provider server group 2 held by a service provider, and a repository server 3 held by a system administrator. And a receiver 4 held by the viewer. Although only one receiver 4 is shown in FIG. 18, a plurality of receivers 4 are actually provided.
  • the broadcast transmission apparatus 11 includes a broadcast-related data management unit 111, a signal setting unit 112, and a broadcast transmission unit 113.
  • the broadcast-related data management unit 111 manages program security policy data for each program, application security policy data for official applications, other policy data, and the like.
  • the program security policy data includes policy level data indicating a policy level of the program, an application ID of an application bound to the program, a control code for the application bound to the program, and the like.
  • the application security policy data includes information for identifying a program to which the application is bound, application protocol identification, location information, and the like.
  • the location information indicates the storage location (storage location) of the application, and is, for example, the URL of the receiver application server 21 or the repository server 3 that can download the application.
  • the protocol identification indicates whether the application is transmitted by broadcast or communication. Only the official application is bound to the program.
  • the signal setting unit 112 sets the application file to a data carousel or the like.
  • the signal setting unit 112 sets the policy data managed by the broadcast-related data management unit 111 to a broadcast signal in a section format, or to an engineering service or a data carousel.
  • the broadcast sending unit 113 transmits a broadcast signal for digital broadcasting.
  • the broadcast signal includes information set by the signal setting unit 112.
  • the broadcast station server group 12 corresponds to the broadcast station server group shown in FIG. 3, and includes a content management server 13, a content distribution server 16, a broadcast station service server 17, and a notification server 18.
  • the content management server 13 includes a program management server 14 and a metadata management server 15.
  • the program management server 14 manages already broadcasted programs and broadcasted programs.
  • the metadata management server 15 manages metadata regarding each program.
  • the metadata includes, for example, program title, program ID, program outline, performer, broadcast date and time, script, caption, and commentary data.
  • the content distribution server 16 is connected to the receiver 4 via the communication network 9 such as the Internet, and distributes content data of the content requested from the receiver 4.
  • the broadcast station service server 17 transmits the content data of the broadcast station service to the service provider server group 2. Examples of broadcasting station services include social network services and blog services.
  • the service provider server group 2 corresponds to the service provider server group shown in FIG. 3 and includes a receiver application server 21, a service server 22, a content distribution server 23, and a notification server 24.
  • the receiver application server 21, service server 22, content distribution server 23, and notification server 24 are connected to the receiver 4 via the communication network 9.
  • the receiver application server 21 manages each application and distributes application files to the receiver 4.
  • the service server 22 is, for example, a multilingual subtitle server, a speech speed conversion voice server, a social TV server, a recommendation server, a bookmark server, and the like, and distributes content data of a service requested from the receiver 4.
  • the content distribution server 23 is, for example, a VOD distribution server, a caption distribution server, or a multi-view distribution server, and distributes content data of content requested from the receiver 4.
  • the notification server 24 transmits the application AIT (FIG. 6) to the receiver 4. In the case of an official application, the notification server 24 may transmit AIT (FIG. 6) based on program security policy data or application security policy data acquired from the broadcast-related data management unit 111 of the broadcast transmission device 11.
  • the receiver 4 corresponds to the receiver shown in FIG. 3, and is a device such as a television receiver, a set top box, a personal computer, or a portable terminal.
  • FIG. 19 is a functional block diagram showing the internal configuration of the receiver 4.
  • the receiver 4 includes a broadcast receiving unit 401, a separation unit 402, a clock 403, a first synchronization buffer 404-1, a second synchronization buffer 404-2, a first decoder 405-1, 2 decoder 405-2, data broadcast execution unit 406, video control unit 407, video display unit 408, audio control unit 409, audio output unit 410, communication input / output unit 411, application execution control unit 412, presentation control unit 413, operation
  • An input unit 414, a channel selection unit 415, a local information storage unit 416, and an external I / F unit 417 are configured.
  • the broadcast receiving unit 401 is a tuner that receives a broadcast signal.
  • the broadcast signal is either a wireless broadcast signal or a wired broadcast signal.
  • a radio broadcast signal is a signal obtained by receiving a broadcast radio wave (ground wave) transmitted by a transmission antenna on the broadcast station side or a satellite wave relayed by a satellite with a reception antenna.
  • the wired broadcast signal is a signal transmitted from the broadcast station side via an optical cable, a coaxial cable, or the like.
  • the broadcast receiving unit 401 receives a broadcast signal, demodulates it, and outputs a broadcast stream (TS).
  • TS broadcast stream
  • the communication input / output unit 411 inputs and outputs data through communication via the communication network 9.
  • the communication input / output unit 411 outputs the AIT and application file transmitted via the communication network 9 to the application execution control unit 412. Further, the communication input / output unit 411 outputs the policy level data and policy data of the program transmitted via the communication network 9 to the presentation control unit 413.
  • the communication input / output unit 411 communicates content data distributed from the content distribution server 16 and the content distribution server 23 and content data distributed from the service server 22 in accordance with an instruction of an application executed by the application execution control unit 412. The data is received via the network 9 and output to the second synchronization buffer 404-2.
  • the data broadcast execution unit 406 executes the data broadcast application transmitted by the digital broadcast signal, and outputs data (graphic) data of the data broadcast to the video control unit 407.
  • the data broadcast execution unit 406 includes an API for starting an application of the broadcast communication cooperation service. When the data broadcast execution unit 406 executes the data broadcast application and an API for starting the application of the broadcast communication cooperation service is called, the data broadcast execution unit 406 instructs the application execution control unit 412 to start the application. Further, the data broadcast execution unit 406 acquires the AIT and application file transmitted by the data carousel from the data broadcast and outputs them to the application execution control unit 412. Further, the data broadcast execution unit 406 acquires the policy data transmitted by the data carousel from the data broadcast and outputs it to the presentation control unit 413.
  • the application execution control unit 412 executes an application of the broadcasting / communication cooperation service.
  • the application execution control unit 412 instructs the second decoder 405-2 to decode the content data received from the content distribution server 16, the content distribution server 23, or the service server 22 in accordance with the application being executed.
  • the content data includes one or both of video data and audio data.
  • the video data is, for example, a moving image, a still image, text data, or the like.
  • the application execution control unit 412 outputs graphic (video) data and video control instructions to the video control unit 407 and outputs audio data and voice control instructions to the audio control unit 409 according to the application being executed.
  • the clock 403 outputs a timer counter value.
  • the clock 403 adjusts the frequency of the oscillator according to the timer counter value indicated by the PCR, and synchronizes the time with the broadcast transmission side.
  • the first synchronization buffer 404-1 stores video data, audio data, and caption data output from the separation unit 402.
  • a PES Packetized Elementary Stream
  • ES elementary stream
  • TS broadcast stream
  • the PES header includes PTS (Presentation Time Stamp).
  • the first synchronization buffer 404-1 outputs the video data, audio data, and caption data output from the separation unit 402 in units of PES packets according to the instruction of the first decoder 405-1.
  • the first decoder 405-1 identifies the PES packet in the first synchronization buffer 404-1 in which the PTS corresponding to the time output from the clock 403 is set, and the video data encoded from the identified PES packet Audio data and subtitle data are read, and the read data are decoded and output.
  • the second decoder 405-2 identifies the content data or the PES packet of the program in the second synchronization buffer 404-2 in which the PTS corresponding to the time output from the clock 403 is set, and from the identified PES packet The encoded video data, audio data, and subtitle data are read, and the read data are decoded and output.
  • the presentation control unit 413 determines the presentation method (screen display method and audio output method) according to the policy level of the selected program or the policy level of the event that is occurring and the presentation rule data.
  • the presentation control unit 413 instructs the video control unit 407 to display the broadcast screen, the application screen of the official application, and the application screen of the unofficial application according to the determined screen display method.
  • the presentation control unit 413 instructs the audio control unit 409 to output the sound based on the broadcast sound data, the sound based on the sound data of the official application, and the sound based on the sound data of the unofficial application, according to the determined sound output method. To do.
  • the video control unit 407 includes a broadcast screen based on the video data and caption data of the program output from the first decoder 405-1 and an official application based on the video data of the content data output from the second decoder 405-2.
  • the application screen of the official application is displayed on the video display unit 408 according to the screen display method instructed from the presentation control unit 413 or the application execution control unit 412.
  • graphic (video) data is output from the application execution control unit 412 by executing the application
  • the video control unit 407 displays the video according to the screen display method instructed from the presentation control unit 413 or the application execution control unit 412.
  • a display screen based on the data is also displayed on the video display unit 408.
  • the second decoder 405-2 may output video data and subtitle data of other programs.
  • the video display unit 408 is a general display, and displays broadcast and application screens.
  • the video display unit 408 displays an application screen such as a moving image, a still image, text of content data received from the communication network 9, a graphic output from the application execution control unit 412 by executing the application, Alternatively, a video that combines broadcast screens of other programs is displayed.
  • the audio control unit 409 is an audio of an official application or an unofficial application based on the audio based on the audio data of the program output from the first decoder 405-1 and the audio data of the content data output from the second decoder 405-2.
  • voice based on the voice data output from the application execution control unit 412 by execution of the application is output from the voice output unit 410 according to the voice output method instructed by the presentation control unit 413 or the application execution control unit 412.
  • the second decoder 405-2 may output audio data of another program.
  • the audio output unit 410 is a general speaker and outputs broadcast and application audio.
  • the local information storage unit 416 stores various data such as user information.
  • An external interface unit (hereinafter referred to as “external I / F unit”) 417 transmits and receives data to and from the device 8 connected to a home network such as a LAN (Local Area Network).
  • the device 8 is a terminal that operates in cooperation with the receiver 4, and is, for example, a personal computer, a mobile phone, a tablet, a smartphone, or a PDA.
  • FIG. 20 is a block diagram illustrating a detailed configuration of the application execution control unit 412.
  • the application execution control unit 412 includes an application storage unit 431, an application authentication unit 432, an application management unit 433, an application control unit 434, an application execution unit 435, a resource access control unit 438, and a resource control unit 439. Prepare.
  • the application storage unit 431 is an application file received by the communication input / output unit 411 via the communication network 9, or an application file acquired from the data broadcast by the data broadcast execution unit 406, or separated from the broadcast signal by the separation unit 402. Store application files.
  • the application file may be stored in the application storage unit 431 in advance at the time of shipment.
  • the application storage unit 431 includes a main storage device and an auxiliary storage device such as a disk.
  • an application file is stored on a disk and read to the main storage device at the time of execution.
  • the application file of the application executed on-the-fly is not stored in the disk but is stored only in the main storage device, and is deleted from the main storage device when the execution is completed.
  • the application management unit 433 manages the activation or stop state of the application by the application execution unit 435 and the output status of the activated application.
  • the output status is information indicating whether an image or sound is output from a running application.
  • the application management unit 433 returns the output status of the activated application and a response indicating whether the activated application is an official application or an informal application.
  • the application control unit 434 controls the start and stop of the application in the application execution unit 435 according to the control code for the application bound to the program and the instruction for the application input by the operation input unit 414. In addition, the application control unit 434 instructs the application execution unit 435 to start the application that is instructed to start from the data broadcast execution unit 406. When the channel is changed according to the input from the operation input unit 414, the application control unit 434 terminates the application bound to the program of the channel before the change and the application bound to the program of the channel after the change. The application execution unit 435 is instructed to start.
  • the application control unit 434 is equivalent to the application bound to the program and the control code for the bound application as the independent ES of the broadcast signal or the AIT included in the data broadcast and the AIT obtained from the EIT of the broadcast signal. Or from the AIT received from the notification server 18 or the notification server 24 via the communication input / output unit 411. In addition, the application control unit 434 transmits an application file download request with the location information set in the AIT as a destination.
  • the repository server 3 or the receiver application server 21 that has received the download request from the receiver 4 distributes the application file to the receiver 4.
  • the application execution unit 435 includes a receiver API unit 436 and a terminal cooperation API unit 437.
  • the application execution unit 435 reads the application program of the application instructed to start from the application storage unit 431 and executes it.
  • the application execution unit 435 executes the application program
  • the application operates on the receiver 4, and the application execution unit 435 requests content from the content distribution server 16 and the content distribution server 23 via the communication network 9. Or request a service from the service server 22.
  • the application execution unit 435 outputs graphic data and video control instructions to the video control unit 407 and outputs audio data and voice control instructions to the audio control unit 409.
  • the receiver API unit 436 executes a receiver API that is an API for using each resource in the receiver 4 when the application execution unit 435 executes the application.
  • the receiver API unit 436 executes the receiver API, the resources in the receiver 4 can be used from the application program executed by the application execution unit 435.
  • the terminal cooperation API unit 437 is an API that allows the device 8 on the home network that can communicate with the external I / F unit 417 and the device connected via the communication network 9 to use the function of the receiver 4. Execute cooperative API. When the terminal cooperation API unit 437 executes the terminal cooperation API, resources in the receiver 4 can be used from a device 8 connected via the home network or a device connected via the communication network 9.
  • the resource control unit 439 controls access from the receiver API unit 436 and the terminal cooperation API unit 437 to each functional unit that is a resource in the receiver 4.
  • the resource access control unit 438 controls whether access from the receiver API unit 436 and the terminal cooperation API unit 437 to each functional unit in the receiver 4 is permitted.
  • the resource access control unit 438 performs this control according to whether the application that is the caller of each API executed by the receiver API unit 436 or the terminal cooperation API unit 437 is an official application or an unofficial application.
  • FIG. 21 is a block diagram illustrating a detailed configuration of the presentation control unit 413.
  • the presentation control unit 413 includes a policy data management unit 451, a policy data storage unit 452, an event interpretation unit 453, a policy level collation unit 454, an event control unit 455, a program policy storage unit 456, and a policy mediation unit. 457 and a policy level storage unit 458.
  • the policy data storage unit 452 stores policy data including presentation rule data and a policy level table.
  • the policy data management unit 451 manages policy data stored in the policy data storage unit 452.
  • the policy data management unit 451 outputs the policy level table read from the policy data storage unit 452 to the policy level verification unit 454, and outputs the presentation rule data read from the policy data storage unit 452 to the policy arbitration unit 457.
  • the policy data management unit 451 receives the policy data transmitted by broadcasting from the separation unit 402 or the data broadcast execution unit 406, and receives the policy data transmitted by communication from the communication input / output unit 411.
  • the policy data management unit 451 updates the policy data stored in the policy data storage unit 452 with the policy data transmitted by broadcasting or communication.
  • the event interpreter 453 analyzes the broadcast signal received by the broadcast receiver 401, the data broadcast and subtitle data separated by the separator 402, and detects the occurrence or end of the event. When the event interpretation unit 453 detects (interprets) the occurrence or end of an event, the event interpretation unit 453 outputs the event number of the detected event and status data indicating the occurrence or end to the policy level matching unit 454.
  • the policy level checking unit 454 refers to the policy level table to determine (check) the policy level corresponding to the genre of each program indicated by the EIT and the policy level corresponding to the event specified by the event number.
  • the policy level collating unit 454 includes the broadcast start time and broadcast end time data of the program acquired from the SI input from the separating unit 402 and the policy level of the program (hereinafter referred to as “program policy level”). Output to the event control unit 455.
  • program policy level is set to EIT
  • the policy level verification unit 454 sends the program start level and end time data of the program and the program policy level of the program acquired from the EIT to the event control unit 455. Output.
  • the program policy storage unit 456 stores the program start time and program end time in association with the program policy level.
  • the event control unit 455 writes the program start time and program end time data input from the policy level matching unit 454 and the program policy level in association with each other and writes them in the program policy storage unit 456, and stores them in the program policy storage unit 456. Based on these information, the time for executing the display control is managed.
  • the event control unit 455 refers to the program start time data stored in the program policy storage unit 456 and detects that the execution time is to be notified, the event control unit 455 corresponds to the execution time and the execution time.
  • the program policy level is output to the policy mediation unit 457.
  • the policy level storage unit 458 stores the execution time and program policy level, trigger policy level, and status data input to the policy arbitration unit 457.
  • the policy arbitration unit 457 determines a policy level from the execution time and program policy level input from the event control unit 455 and the trigger policy level input from the policy level collation unit 454.
  • the trigger policy level may be determined as the policy level, and the higher one of the program policy level and the trigger policy level may be determined as the policy level.
  • the policy mediation unit 457 When the program policy level acquired by the AIT is input from the policy level verification unit 454, the policy mediation unit 457 is input from the policy level verification unit 454 rather than the program policy level input from the event control unit 455. Prioritize program policy level. That is, the policy mediation unit 457 determines the policy level from the program policy level obtained from the AIT and the trigger policy level. The policy mediation unit 457 refers to the presentation rule data, and determines the screen display method and voice output based on the determined policy level, information indicating whether the running application acquired from the application management unit 433 is official, and the output status. Determine the method (presentation method). The policy arbitration unit 457 outputs the determined screen display method to the video control unit 407, and outputs the determined audio output method to the audio control unit 409.
  • a broadcast receiving unit 401 receives a broadcast signal.
  • the broadcast signal received by the broadcast receiving unit 401 includes various data such as AIT or extended EIT.
  • the AIT is used as information that instructs activation of an application executed by the receiver 4.
  • the broadcast signal received by the broadcast receiving unit 401 includes a policy in a predetermined packet.
  • policy is data indicating a criterion for determining whether or not access to target data is possible, as will be described later with reference to FIGS. 24 and 25A to 25D.
  • This policy includes data that indicates whether or not access is possible according to the comparison result by comparing the determination criterion with data input from the outside, including a determination criterion for whether or not access is possible.
  • Various packets can be used as the predetermined packet to be transmitted including the policy.
  • the policy may be included in a packet different from AIT and EIT, or the AIT or EIT may be extended and the policy may be included in the extended AIT or extended EIT.
  • a policy transmission method for example, a DMSS-CC data carousel is used.
  • the separating unit 402 separates various data from the broadcast signal received by the broadcast receiving unit 401.
  • the separation unit 402 separates the AIT and the extended EIT from the broadcast signal.
  • the separation unit 402 separates the packet including the policy from the broadcast signal.
  • the application control unit 434 controls the application execution unit 435 based on the AIT separated by the separation unit 402 or an activation instruction from the communication input / output unit. In particular, the application control unit 434 outputs an application execution command to the application execution unit 435 based on the AIT.
  • the external I / F unit 417 communicates with the terminal device and acquires a user operation input accepted by the terminal device.
  • the external I / F unit 417 acquires user input data from the terminal device and outputs the user input data to the application execution device 435.
  • the external I / F unit 417 communicates with the terminal device to acquire user identification information.
  • the “user input data” here is data input by the user using the terminal device. Examples of user input data include a user name, gender, age, and the like.
  • the terminal device transmits these data input by the user to the external I / F unit 417 in response to a request from an application executed by the application execution device 435.
  • the user identification information acquired by the external I / F unit 417 is information for identifying a user who logs in to the receiver 4 using the terminal device. This user identification information is input to the terminal device by the user. Or the identification information of a terminal device and this user's identification information may be matched, and the local information storage part 412 may memorize
  • the application execution unit 435 starts and executes the application by reading and executing the application program from the application storage unit 431 in accordance with the application start command output from the application control unit 434. Then, the application execution unit 435 outputs a data storage request related to the user to the resource control unit 439 in accordance with the processing of the application to be executed.
  • data related to the user is information related to each user of the receiver 4.
  • the data related to the user includes the above-described user input data and data generated by the application in association with the user.
  • the data generated by the application in association with the user includes, for example, accuracy rate information generated by the application executed in synchronization with the quiz program in association with the user, information on points obtained by correctly answering the quiz, etc. There is.
  • the application execution unit 435 associates request source information indicating a request source that has requested to write information related to the terminal, a policy, and key information, and includes them in a data storage request related to the user to control resources. Output to the unit 439.
  • the “key information” here is information used as a search key when data related to the user is read.
  • As the key information for example, information indicating a user attribute item is used.
  • the information indicating the user attribute item is, for example, an item name such as “name”, “sex”, “age”, and the like.
  • the request source information is identification information of a provider of the application when the application makes a save request.
  • the terminal device receiving the user makes a save request, the user requests the request source information. It is a value “own” indicating that
  • the application execution unit 435 activates the application according to the application activation instruction included in the broadcast signal, and executes the application using the data read by the resource control unit 439.
  • the application executed by the application execution unit 435 performs, for example, processing on data obtained from the broadcast signal or processing related to the content of the broadcast program in association with the broadcast signal received by the broadcast reception unit 401.
  • the processing related to the broadcast signal is related to the service executed by the application in relation to viewing of the broadcast program, the service executed by the application in relation to metadata included in the broadcast signal, and the content of the broadcast program. And there is a service that the application executes.
  • the application executed by the application execution unit 435 reads the credit card number from the target data and reads the credit card number. Is generated and transmitted to the credit card settlement server apparatus on the network via the communication input / output unit 411.
  • the login processing unit 461 performs login and logout of the user according to the user's operation.
  • “login” is a process of writing user identification information in the login user information stored in the local information storage unit 416.
  • logout is processing for deleting user identification information from login user information stored in the local information storage unit 416.
  • the “user identification information” here is information for uniquely identifying a user.
  • the “logged-in user information” here is information in which information indicating a login state is associated with user identification information.
  • the local information storage unit 416 stores in advance the user identification information and the password input by the user in association with each other.
  • the login processing unit 461 acquires an operation input indicating the login request from the terminal device together with the user identification information and the password
  • the login processing unit 461 performs user authentication with reference to the local information storage unit 416.
  • the login processing unit 461 determines that the authentication is established when the user identification information and password acquired from the terminal device match the user identification information and password stored in the local information storage unit 416. If they do not match, it is determined that authentication is not established.
  • the login processing unit 461 writes login user information including user identification information acquired from the terminal device in the local information storage unit 416.
  • the login processing unit 461 uses the terminal device identification information instead of the password. You may make it authenticate login.
  • the local information storage unit 416 includes the user identification information and the IMSI (International Mobile Subscriber Identity) of the mobile phone used for login by the user. Are stored in advance in association with each other. The user identification information and the IMSI are stored in the local information storage unit 416 in association with each other when the user registers the user identification information using the mobile phone.
  • IMSI International Mobile Subscriber Identity
  • the login processing unit 461 When the login processing unit 461 acquires an operation input indicating a login request from the mobile phone together with the IMSI of the mobile phone, the login processing unit 461 performs user authentication with reference to the local information storage unit 416. Then, the login processing unit 461 determines that the authentication is established when the IMSI acquired from the mobile phone matches the IMSI stored in the local information storage unit 416, and does not establish the authentication when they do not match. Is determined. When it is determined that the authentication is successful, the login processing unit 461 reads the user identification information associated with the IMSI acquired from the mobile phone from the local information storage unit 416, and stores the login user information including the user identification information. Write to local information storage.
  • the login processing unit 461 acquires an operation input indicating a logout request from the mobile phone together with the IMSI of the mobile phone
  • the login processing unit 461 obtains the user identification information associated with the IMSI acquired from the mobile phone from the local information storage unit 416.
  • the login user information including the identification information of the user is deleted from the local information storage unit 416.
  • the physical address of the communication interface of the mobile phone may be used instead of the IMSI described above.
  • the receiver 4 can specify the user identification information indicating the user in the login state.
  • the application executed by the application execution unit 435 can acquire data associated with the user stored in the local information storage unit 416 and associated with the user in the login state. .
  • the application which the application execution part 435 performs can provide an individual service for every user using the data relevant to the acquired user.
  • the local information storage unit 416 stores user identification information indicating a user who is logged into the receiver 4 using the terminal device as the above-described login user information.
  • this terminal device should just be an apparatus which receives a user's login operation and outputs it to the receiver 4, and the receiver 4 and the terminal device may be united.
  • the usage state determination unit 464 generates usage state information based on the login user information and outputs the usage state information to the access control unit 462.
  • “Usage status information” here is information indicating user identification information corresponding to a user in the login state. When the number of users in the login state is one with reference to the login user information (login user) When there is only one user identification information obtained from the information), the identification information of the user or the case where there are other than one (0 or more) users in the login state (obtained from the login user information). Information (for example, the value “family”) indicates that the number of logged-in users is not one.
  • the resource control unit 439 stores user-related data in which user identification information indicating a logged-in user, data related to the user, key information, request source information, and policy are associated with each other.
  • the resource control unit 439 acquires the usage state information from the usage state determination unit 464 and writes it according to the usage state information. For example, when the usage state information indicates identification information of one user, the resource control unit 439 associates the identification information of the user, data related to the user, key information, request source information, and policy. And write.
  • the usage state information indicates the value “family”
  • the resource control unit 439 writes the value “family”, data related to the user, key information, request source information, and policy in association with each other. .
  • the resource control unit 439 reads data corresponding to the user state information output from the use state determination unit 464 from the local information storage unit 416 when a policy determination unit 463 described later permits access. That is, when the user status information indicates identification information of one user, data associated with the identification information of the user is read from the local information storage unit 416. When the user status information indicates the value “family”, data related to the user associated with “family” is read from the local information storage unit 416. Further, the resource control unit 439 relates to the user corresponding to both the user status information output from the usage status determination unit 464 and the key information based on the key information specified from the application execution unit 435. Data is read from the local information storage unit 416.
  • the local information storage unit 416 associates and stores user identification information, data related to the user, and a policy indicating a criterion for determining whether to access the data (described later). In addition, the local information storage unit 416 further stores request source information in association with data related to the user and a policy indicating a criterion for determining whether or not to access data related to the user. In addition, when a plurality of pieces of data related to the user are associated with the identification information of one user, the local information storage unit 416 accesses the data related to the user and the data related to the user. A policy indicating the determination criterion for acceptability, request source information, and key information are stored in association with each other. In particular, the local information storage unit 416 stores data related to the user corresponding to each key information.
  • the access control unit 462 controls data access performed by the resource control unit 439.
  • the access control unit 462 acquires usage state information from the usage state determination unit 464 and outputs the usage state information to the resource control unit 439.
  • the access control unit 462 acquires usage state information from the usage state determination unit 464 and outputs the usage state information to the policy determination unit 463.
  • the policy determination unit 463 reads the policy associated with the user identification information indicated by the usage state information generated by the usage state determination unit 464 from the local information storage unit 416, and based on the read policy, It is determined whether or not access to data corresponding to the identification information is permitted. More specifically, the policy determination unit 463 outputs the data write request source information associated with the data related to the user indicated by the identification information included in the read request and the read request based on the read policy. The identification information of the application is compared, and if they match, it is determined that access is permitted. Also, the policy determination unit 463 determines whether to permit access according to an operation input indicating whether to permit access to data related to the user indicated by the identification information included in the read request based on the read policy. Determine.
  • FIG. 22 is a data structure diagram showing a data structure of user-related information stored in the local information storage unit 416.
  • the value of the item ⁇ usr> indicates user identification information.
  • the local information storage unit 416 stores information related to each user for each user by storing information related to the user in association with identification information of the user. Indicates the identification information of the user who is logged in.
  • the value “famy” of the item ⁇ usr> indicates a state in which a user who is logged in cannot be specified. As described above, the state in which a user in the login state cannot be identified is, for example, a state in which there is no user in the login state and a case where there are two or more users in the login state.
  • the item ⁇ value> stores data related to the user identified by the value of the item ⁇ usr>, such as the user name, gender, and age.
  • the data stored in the item ⁇ value> is referred to as “target data”.
  • the application execution unit 435 provides a service using the target data.
  • the item ⁇ key> stores key information for specifying the target data.
  • the local information storage unit 416 stores the target data in association with the item ⁇ key> and further in association with the item ⁇ usr>. That is, the local information storage unit 416 stores the target data in association with the user identification information.
  • the application execution unit 435 outputs a data acquisition request to the access control unit 462 (sequence S111).
  • This data acquisition request is a signal for requesting target data, and includes an item ⁇ key> as information for specifying the target data to be requested.
  • the application execution unit 435 outputs the value “name” of the item ⁇ key> included in the data acquisition request.
  • the value “name” of the item ⁇ key> is associated with the user name in the user related information stored in the local information storage unit 416.
  • the access control unit 462 first outputs a usage state determination request to the usage state determination unit 464 (sequence S121).
  • the usage state determination request is a request for inquiring the identification number of the user who is in the login state.
  • the usage state determination unit 464 outputs the usage state information to the access control unit 462 in accordance with the usage state determination request (sequence S122).
  • This usage state information is information indicating the login state of the user.
  • the user of the receiver 4 logs in when the use of the receiver 4 starts and logs out when the use of the receiver 4 ends.
  • a user can receive an individual service for each user by logging in.
  • the usage state information includes user identification information indicating the user.
  • the user state information includes user identification information “family” indicating an unspecified user.
  • access control unit 462 outputs a read request to resource control unit 439 (sequence S131).
  • This read request is a signal requesting reading of the target data, and the value of the item ⁇ usr> and the value of the item ⁇ key> acquired from the usage state determination unit 464 as information for specifying the requested target data. including.
  • the access control unit 462 reads the usage state information value “usr001” as the value of the item ⁇ usr ”and also includes the item“ key ”value“ name ”included in the data acquisition request. The request is being output.
  • the resource control unit 439 reads the value of the item ⁇ usr> and the value of the item ⁇ key> from the read request, and reads the target data associated with these values from the local information storage unit 416. (Sequence S132).
  • the local information storage unit 416 stores the target data “Hanako Yamada” in association with the value “usr001” of the item ⁇ usr ”and the value“ name ”of the item ⁇ key>. ing. Therefore, the resource control unit 439 reads the target data “Hanako Yamada”. Then, the resource control unit 439 outputs the read target data to the application execution unit 435 (sequence S133).
  • the application execution unit 435 When viewing an age-restricted program, the application execution unit 435 acquires the user's age data, and the application executed by the application execution unit 435 determines whether the user can view the program based on the data. Can be determined.
  • the application execution unit 435 outputs the data acquisition request including the item ⁇ key>, and outputs the resource control unit 439. Specifies the target data based on the value of the item ⁇ key> included in the data acquisition request and the usage state information output by the usage state determination unit 464, and updates the data. Further, when newly saving the target data, the application execution unit 435 outputs the target data and the item ⁇ key> included in the data storage request. Then, the resource control unit 439 reads the value of the item ⁇ key> included in the data storage request, and acquires the usage state information output from the usage state determination unit 464 via the access control unit 462. Then, the resource control unit 439 writes the value of the target data in the local information storage unit 416 in association with the value of the item ⁇ key> and the usage state information as the value of the item ⁇ usr>.
  • FIG. 24 is a data structure diagram showing another data structure of user-related information stored in the local information storage unit 416.
  • an item ⁇ src> and an item ⁇ policy> are added to the data structure described in FIG.
  • the item ⁇ src> data indicating an access request source to the target data is stored.
  • the value “own” of the item ⁇ src> indicates that the user himself has requested storage of target data.
  • the item ⁇ src> stores identification information of the application that requested storage of the target data, or identification information of the provider of the application.
  • a policy name is stored as a link to the policy.
  • the separation unit 402 separates the AIT from the broadcast signal and outputs the AIT to the application execution control unit 412. Then, the application execution control unit 412 reads the policy from the AIT and writes it in the local information storage unit 416.
  • the policy is included in the extended EIT and transmitted.
  • the policy determination unit 463 outputs the user identification information “usr001” and the key information “123456” and requests the policy and the request source information
  • the resource control unit 439 displays “usr001”.
  • the policy corresponding to the policy name “only_use_policy” corresponding to “123456” and the request source information “application 101” are read from the local information storage unit 416 and output to the policy determination unit 463.
  • the application execution unit 435 outputs key information “123456” and the application provider identification information “application 101” to request data reading, and the policy determination unit 463 permits data reading.
  • the resource control unit 439 receives the key information “name”, the user identification information “usr001” output from the usage state determination unit 464, and the target data “Hanako Yamada” from the local information storage unit 416. Read out and output to the application execution unit 435.
  • 25A to 25D are data structure diagrams showing the data structure of the policy information stored in the local information storage unit 416.
  • the local information storage unit 416 stores a policy in which a policy name and a policy body are associated with each other.
  • the local information storage unit 416 stores default_policy, only_use_policy, allow_all_policy, and src_or_popup_policy as policies.
  • a code C11 illustrated in FIG. 25A is a code indicating only_use_policy.
  • This only_use_policy is a policy that allows access only to an application provided by the same provider as the application that requested registration of the target data. Note that only_use_Policy may make a determination based on the application instead of the application registrant so that only the same application as the application that requested registration of the target data is accessible.
  • the policy name “only_use_policy” is associated with the code body.
  • the variable “subject” of the code body identification information of the provider of the application that requests acquisition of the target data is stored.
  • the variable “src” stores the identification information of the provider of the application that requested storage of the target data, which is stored in the item ⁇ src> described with reference to FIG.
  • the policy determining unit 463 executes a code “allow_read” that replies that access is possible by branching to “then” in the conditional statement “if... As a result, the policy determination unit 463 outputs a determination result indicating that access is possible to the access control unit 462.
  • a code C12 illustrated in FIG. 25B is a code indicating allow_all_policy.
  • This allow_all_policy is a policy that allows access to all access request sources.
  • the policy name “allow_all_policy” is associated with the code body.
  • the policy determination unit 463 Based on the code “allow_read” in the code body, the policy determination unit 463 outputs a determination result indicating that access is possible to the access control unit 462.
  • a code C13 illustrated in FIG. 25C is a code indicating src_or_popup_policy.
  • This src_or_popup_policy is a policy that first determines whether or not access is possible according to the access request source, and inquires the user whether or not to permit access to the target data when it is determined that access is impossible.
  • the policy name “src_or_popup_policy” is associated with the code body.
  • the policy determination unit 463 proceeds to “then” in the conditional statement “else if... By branching, a code “allow_read” for replying that access is possible is executed. As a result, the policy determination unit 463 outputs a determination result indicating that access is possible to the access control unit 462.
  • the policy determination unit 463 when the policy determination unit 463 obtains the user selection for refusing access to the data, the policy determination unit 463 displays the conditional statement “else if ... then ... else ...”.
  • the code “deny_read” for answering the inaccessibility is executed by branching to “else” in “”. As a result, the policy determination unit 463 outputs a determination result indicating that access is impossible to the access control unit 462.
  • a code C14 illustrated in FIG. 25D is a code indicating default_policy.
  • This default_policy is a policy for inquiring the user whether to permit access to the target data.
  • the policy determination unit 463 displays a pop-up screen inquiring whether or not the target data is acceptable on the terminal device, acquires a selection of a user accepted by the terminal device, and determines whether or not access is possible according to the selection of the user.
  • the code “popup-select” is a code for obtaining a user's selection by displaying on the terminal device a pop-up window inquiring whether or not to permit access to data.
  • the policy determination unit 463 when the policy determination unit 463 obtains a user selection for refusing access to data, the policy determination unit 463 displays the conditional statement “if ... then ... else ...”.
  • the code “deny_read” for answering the inaccessibility is executed by branching to “else” in FIG. As a result, the policy determination unit 463 outputs a determination result indicating that access is impossible to the access control unit 462.
  • FIG. 26 illustrates a first example of the operation of the receiver 4 when the policy determination unit 463 performs policy determination when the application execution unit 435 acquires target data according to the processing of the application to be executed.
  • the application control unit 434 obtains the above-mentioned AIT from the separation unit 402 or the communication input / output unit 411 (sequence S201), and in accordance with the AIT, issues an activation command for an application named application 002 to the application execution unit 435. Output (sequence S202). Then, the application execution unit 435 activates and executes the application 002 in accordance with the activation instruction output from the application control unit 434 (sequence S203).
  • application execution unit 435 outputs a data acquisition request to access control unit 462 (sequence S211).
  • the data acquisition request in this case includes an item ⁇ subject> in addition to the item ⁇ key> in the case of step S111 (FIG. 23) as information for specifying the requested target data.
  • information indicating an access request source is stored. This is because it is possible to determine whether or not access is possible according to the data acquisition request source in policy determination.
  • the application execution unit 435 stores the identification information of the application 0002 provider in the item ⁇ subject> of the data acquisition request, and stores and outputs the value “name” in the item ⁇ key>. .
  • the access control unit 462 that has received the output of the data acquisition request first outputs a usage state determination request to the usage state determination unit 464 (sequence S221). Then, the usage state determination unit 464 outputs the usage state information to the access control unit 462 in accordance with the usage state determination request (sequence S222). In the example shown in FIG. 26, as in step S122 (FIG. 23), the usage state determination unit 464 outputs user identification information “usr001” to the access control unit 462.
  • the access control unit 462 outputs a policy determination request to the policy determination unit 463 (sequence S231).
  • This policy determination request is a signal for requesting policy determination to the policy determination unit 463, and includes an item ⁇ subject>, an item ⁇ usr>, and an item ⁇ key>.
  • the policy determination unit 463 that has received the output of the policy determination request reads the value of the item ⁇ usr> and the value of the item ⁇ key> from the policy determination request, and sends a policy read request including these values to the resource control unit 439. (Sequence S232).
  • the policy determining unit 463 determines whether or not access is possible according to the policy output from the resource control unit 439 (sequence S235).
  • the policy determination unit 463 displays an inquiry pop-up screen on the terminal device according to default_policy, and determines that access is possible according to the selection operation accepted by the terminal device. Then, the policy determination unit 463 outputs the determination result to the access control unit 462 (sequence S236).
  • the sequences S241 to S243 are the same as the sequences S131 to S133 of FIG.
  • the access control unit 462 outputs an error code to the application execution unit 435 without acquiring the target data.
  • FIG. 27 is a sequence diagram illustrating an example of the operation of the receiver 4 when the policy determination unit 463 performs policy determination when the application execution unit 435 writes target data according to the processing of the application to be executed. is there.
  • the application control unit 434 acquires the above-described AIT from the separation unit 402 or the communication input / output unit 411 (sequence S301), and sends an application activation command named application 003 to the application execution unit 435 according to the AIT. Output (sequence S302).
  • the application execution unit 435 activates and executes the application 003 according to the activation instruction output from the application control unit 434 (sequence S303).
  • This data storage request is a signal for requesting storage of target data, and includes target data and items ⁇ key>, ⁇ src>, and ⁇ policy> to be stored in association with the target data.
  • the access control unit 462 that has received the output of the data storage request first outputs a usage state determination request to the usage state determination unit 464 (sequence S321). Then, the usage state determination unit 464 outputs the usage state information to the access control unit 462 in accordance with the usage state determination request (sequence S322). In the example illustrated in FIG. 27, the usage state determination unit 464 outputs a value “family” indicating a state in which a user who is using the receiver 4 cannot be specified to the access control unit 462.
  • the resource control unit 439 When the data writing is completed, the resource control unit 439 outputs a writing completion notification indicating that the writing has been successful to the application execution unit 435 (sequence S333).
  • FIG. 29 shows a second example of the operation of the receiver 4 when the policy determination unit 463 performs policy determination when the application execution unit 435 acquires the target data according to the processing of the application to be executed.
  • the application control unit 434 acquires the above-described AIT from the separation unit 402 or the communication input / output unit 411 (sequence S401), and in accordance with the AIT, issues an activation command for an application named application 004 to the application execution unit 435. Output (sequence S402). Then, the application execution unit 435 activates and executes the application 004 in accordance with the activation instruction output from the application control unit 434 (sequence S403).
  • the application execution unit 435 outputs a data acquisition request to the access control unit 462 (sequence S411).
  • the application execution unit 435 stores the identification information of the application 0004 provider in the item ⁇ subject> of the data acquisition request, and stores and outputs the value “20984721” in the item ⁇ key>. .
  • the access control unit 462 Upon receiving the data acquisition request output, the access control unit 462 first outputs a usage state determination request to the usage state determination unit 464 (sequence S421). Then, the usage state determination unit 464 outputs the usage state information to the access control unit 462 in accordance with the usage state determination request (sequence S422). In the example shown in FIG. 29, as in the case of step S322 (FIG. 27), the usage state determination unit 464 outputs the user identification information “family” to the access control unit 462.
  • the access control unit 462 outputs a policy determination request to the policy determination unit 463 (sequence S431).
  • the policy determination unit 463 that has received the output of the policy determination request reads the value of the item ⁇ usr> and the value of the item ⁇ key> from the policy determination request, and sends a policy read request including these values to the resource control unit 439. (Sequence S432).
  • the resource control unit 439 reads the value of the item ⁇ usr> and the value of the item ⁇ key> from the policy read request, the value of the item ⁇ src> associated with these values, the policy name, Are read from the local information storage unit 416.
  • the resource control unit 439 reads the policy associated with the read policy name from the local information storage unit 416 (sequence S433), and the policy determination unit 463 displays the read policy and the value of the item ⁇ src>. (Sequence S434). In the example illustrated in FIG. 29, the resource control unit 439 outputs the on_use_policy and the value “family” of the item ⁇ src> to the policy determination unit 463.
  • the policy determination unit 463 performs policy determination, and the resource control unit 439 reads the target data only when it is determined that access is possible, thereby limiting the access request sources that can access the target data.
  • User privacy can be protected.
  • the local information storage unit 4 stores a credit card number.
  • the application permitted by the user can acquire the credit card number, thereby saving the user from entering the credit card number. And unauthorized acquisition of a credit card number can be prevented.
  • the application execution unit 435 acquires the target data associated with the identification information of the user that can communicate with the external I / F unit 417, and thus responds to the user who is using the receiver 4. Get the data. Thereby, the receiver 4 can provide an individual service for each user using the receiver 4 using the data. Also, the resource control unit 439 reads out the target data only when the policy determination unit 463 performs policy determination and it is determined that access is possible, thereby managing access to data related to the user using the receiver. User privacy protection.
  • the policy determination unit 463 determines whether or not to permit access according to an operation input indicating whether or not to permit access to the target data. This makes it possible to directly reflect the user's intention when determining whether to permit access.
  • the local information storage unit 416 stores data corresponding to each key information
  • the resource control unit 439 determines whether the user identification information and the key information are based on the key information specified by the application execution unit 435. Read the target data associated with both. As a result, the resource control unit 439 can read out desired target data from among the plurality of target data stored in the local information storage unit 416 in association with the identification information of one user.
  • the “computer-readable recording medium” refers to a storage device having a non-temporary storage function.
  • a magnetic disk, a magneto-optical disk, a CD-ROM, a DVD-ROM, a semiconductor disk (SSD), a semiconductor memory, and the like are mentioned, but the invention is not necessarily limited thereto.
  • the “recording medium” includes a volatile medium such as a DRAM or an SRAM like a volatile memory inside a computer system serving as a server or a client, but is not necessarily limited thereto.
  • second decoder 406 ... data broadcast execution section 407 ... Video control unit 408 ... Video display unit 409 ... Audio control unit 410 ... Audio output unit 411 ... Communication input / output Unit 412 ... Application execution control unit 413 ... Presentation control unit 414 ... Operation input unit 415 ... Channel selection unit 416 ... Local information storage unit 417 ... External I / F unit 431 ... Application storage unit 432 ... Application authentication unit 433 ... Application management unit 434 Application control unit 435 Application execution unit 436 Receiver API unit 437 Terminal cooperation API unit 438 Resource access control unit 439 Resource control unit 451 Policy data management unit 452 Policy data storage unit 453 Event interpretation unit 454 ... Policy level matching unit 455 ... Event control unit 456 ... Program policy storage unit 457 ... Policy mediation unit 458 ... Policy level storage unit 461 ... Login processing unit 462 ... Access control unit 463 ... Policy judgment unit 464 ... Usage status Determination section 9 ... communication network

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

 受信機は、放送信号を受信する放送受信部と、端末装置と通信を行ってユーザの識別情報を取得する通信部と、通信部が取得するユーザの識別情報に基づいて、当該ユーザの識別情報に対応付けられたポリシーを、関連データ記憶部から読み出し、読み出されたポリシーに基づいて、ユーザの識別情報に対応するデータへのアクセスを許可するか否かを判定するポリシー判定部と、アクセスが許可された場合に、ユーザの識別情報に対応するデータを関連データ記憶部から読み出すデータ読出部と、前記放送信号に含まれるアプリケーション起動指令に従ってアプリケーションを起動し、データ読出部が読み出したデータを用いてアプリケーションを実行するアプリケーション実行部と、を具備する。

Description

受信機、プログラム及び受信方法
 本発明は、放送を受信する受信機、プログラム及び受信方法に関する。
 本願は、2011年5月20日に、日本に出願された特願2011-114051号に基づき優先権を主張し、その内容をここに援用する。
 放送波を受信する受信機として、テレビ番組のデータを受信して表示する機能に加えて、付加的な機能を有するものが知られている。例えば、非特許文献1には、データ放送において、セキュリティクラスに応じて実行可能な放送用拡張関数が規定されている。この規格を用いることで、セキュリティクラスに応じて実行可能な関数を選択することが可能となる。例えば、非特許文献1(p.109-116)では、受信機のユーザに関連する情報を受信機内の不揮発性メモリに読み書きする関数が規定されている。この関数を用いることで、受信機が、ユーザに応じた処理をおこなえるようになり、ユーザの利便性が向上し得る。また、非特許文献1(p.145-163)では、通信機能を利用するための関数が規定されている。
 また、現在、放送と通信とを連携した放送通信連携サービスの実現に向けた研究開発が進められている(例えば、非特許文献2)。
「デジタル放送におけるデータ放送符号化方式と伝送方式 DATA CODING AND TRANSMISSION SPECIFICATION FOR DIGITAL BROADCASTING 標準規格 ARIB STANDARD ARIB STD-B24 5.4版(第二分冊)(1/2)」、社団法人 電波産業会、平成21年12月16日 加藤久和、「Hybridcastを目指して」、NHK技研 R&D、No.123、2010年9月、p.56-63
 上述した通信機能を利用するための関数を利用可能な環境や、放送通信連携サービスを利用可能な環境など、放送と通信とを連携した環境においては、様々なサービス提供者が、通信を通じて個々のユーザに応じたきめ細かなサービスを提供することが期待される。
 例えば、ユーザ毎の嗜好に応じた情報を当該ユーザに提供することが期待される。
 しかしながら、非特許文献1に記載された放送用拡張関数を用いても、1台のテレビを複数のユーザが共用する場合に、テレビを視聴しているユーザ毎の嗜好に応じた情報を当該ユーザに提供することはできないという課題がある。ここで、アプリケーションが、テレビを視聴しているユーザに関連する情報を取得できれば、ユーザ毎に個別のサービスを提供することができる。例えば、データ放送や放送通信連携サービスにおいて各種情報を表示する際、ユーザの嗜好、性別あるいは年齢に応じて提供する情報を選択することで、ユーザ毎に適切な情報を提供し得る。ここで、全てのアプリケーションが、全てのユーザに関する情報へアクセスし得る仕組みを構築した場合、ユーザのプライバシーを保護することができないため、ユーザに関連する情報へのアクセスを管理することが好ましい。
 本発明は、このような事情を考慮してなされたもので、ユーザ毎に個別のサービスを提供しつつ、受信機を使用しているユーザに関連する情報へのアクセスを管理してユーザのプライバシー保護を図ることのできる受信機、プログラム及び受信方法を提供する。
[1] 本発明の第1の態様は、放送信号を受信する放送受信部と、ユーザの識別情報と、当該ユーザに関連するデータと、前記データへのアクセス可否の判定基準を示すポリシーとを対応付けて記憶する関連データ記憶部と、端末装置と通信を行ってユーザの識別情報を取得する通信部と、前記通信部が取得する前記ユーザの識別情報に基づいて、当該ユーザの識別情報に対応付けられた前記ポリシーを、前記関連データ記憶部から読み出し、読み出された前記ポリシーに基づいて、前記ユーザの識別情報に対応するデータへのアクセスを許可するか否かを判定するポリシー判定部と、前記アクセスが許可された場合に、前記ユーザの識別情報に対応するデータを前記関連データ記憶部から読み出すデータ読出部と、前記放送信号に含まれるアプリケーション起動指令に従ってアプリケーションを起動し、前記データ読出部が読み出したデータを用いてアプリケーションを実行するアプリケーション実行部と、を具備する受信機である。
[2] 本発明の第1の態様は、上述した受信機であって、前記関連データ記憶部は、前記ユーザに関連するデータと、前記ユーザに関連するデータへのアクセス可否の判定基準を示すポリシーとに対して、さらにアプリケーションの識別情報を対応付けて記憶し、前記ポリシー判定部は、前記読み出したポリシーに基づき、前記識別情報が示すユーザに関連するデータに対応付けられたアプリケーションの識別情報と、前記読出要求を出力したアプリケーションの識別情報とを比較して、一致する場合にアクセスを許可しても良い。
[3] 本発明の第1の態様は、上述した受信機であって、前記ポリシー判定部は、前記読み出したポリシーに基づき、前記識別情報が示すユーザに関連するデータへのアクセスを許可するか否かを示す操作入力に従って、アクセスを許可するか否かを判定しても良い。
[4] 本発明の第1の態様は、上述した受信機であって、前記関連データ記憶部は、前記キー情報毎に対応してデータを記憶し、前記データ読出部は、前記アプリケーション実行部から指定されるキー情報に基づいて、前記ユーザの識別情報と当該キー情報との両方に対応する前記データを読み出しても良い。
[5] 本発明の第2の態様は、受信機に用いられるコンピュータを、放送信号を受信する放送受信部、ユーザの識別情報と、当該ユーザに関連するデータと、前記データへのアクセス可否の判定基準を示すポリシーとを対応付けて記憶する関連データ記憶部、端末装置と通信を行ってユーザの識別情報を取得する通信部、前記通信部が取得する前記ユーザの識別情報に基づいて、当該ユーザの識別情報に対応付けられた前記ポリシーを、前記関連データ記憶部から読み出し、読み出された前記ポリシーに基づいて、前記ユーザの識別情報に対応するデータへのアクセスを許可するか否かを判定するポリシー判定部、前記アクセスが許可された場合に、前記ユーザの識別情報に対応するデータを前記関連データ記憶部から読み出すデータ読出部、前記放送信号に含まれるアプリケーション起動指令に従ってアプリケーションを起動し、前記データ読出部が読み出したデータを用いてアプリケーションを実行するアプリケーション実行部、として機能させるプログラムである。
[6] 本発明の第3の態様は、放送信号を受信し、ユーザの識別情報と、当該ユーザに関連するデータと、前記データへのアクセス可否の判定基準を示すポリシーとを対応付けて記憶し、端末装置と通信を行ってユーザの識別情報を取得し、取得した前記ユーザの識別情報に基づいて、当該ユーザの識別情報に対応付けられた前記ポリシーを読み出し、読み出された前記ポリシーに基づいて、前記ユーザの識別情報に対応するデータへのアクセスを許可するか否かを判定し、前記アクセスが許可された場合に、前記ユーザの識別情報に対応するデータを読み出し、前記放送信号に含まれるアプリケーション起動指令に従ってアプリケーションを起動し、読み出した前記データを用いてアプリケーションを実行する受信方法である。
 本発明によれば、ユーザ毎に個別のサービスを提供しつつ、受信機を使用しているユーザに関連する情報へのアクセスを管理してユーザのプライバシー保護を図ることができる。
本発明の一実施形態による受信機の構成を示すブロック図である。 本発明が適用される放送通信連携システムの一例を利用する者とその関係を示す図である。 放送通信連携システムの全体構成を示す図である。 放送通信連携システムの端末連携モデルを示す図である。 放送通信連携システムのサービス種別の概念図を示す。 放送通信連携システムに使用するAITのテキスト表現の例を示す図である。 放送通信連携システムにおけるアプリケーションのライフサイクルを示す図である。 放送通信連携システムにおける事業者間のデータの流れを示す図である。 放送通信連携システム全体におけるデータの流れを示す図である。 放送通信連携システムにおけるレコメンドサービスのシーケンスを示す図である。 放送通信連携システムにおける転送プロトコルスタックを示す図である。 放送通信連携システムにおけるアプリケーション管理モデルを示す図である。 放送通信連携システムにおけるセキュアマネージャーの機能モデルを示す。 放送通信連携システムにおける画面提示制御方式の概念を示す図である。 放送通信連携システムにおける画面提示制御の基本動作モデルを示す図である。 放送通信連携システムにおけるポリシーレベルに応じた画面提示制御の例を示す。 放送通信連携システムにおける緊急地震速報受信時の提示制御の例を示す。 本発明の一実施形態による放送通信連携システムの全体構成図である。 同実施形態による受信機の内部構成を示す機能ブロック図である。 同実施形態によるアプリケーション実行制御部の詳細な構成を示すブロック図である。 同実施形態による提示制御部の詳細な構成を示すブロック図である。 同実施形態におけるユーザ関連情報のデータ構造を示すデータ構造図である。 同実施形態において、アプリケーション実行部目的データを取得する際の、受信機の動作の例を示すシーケンス図である。 同実施形態におけるユーザ関連情報の、もう1つのデータ構造を示すデータ構造図である。 同実施形態におけるポリシー情報の第1のデータ構造を示すデータ構造図である。 同実施形態におけるポリシー情報の第2のデータ構造を示すデータ構造図である。 同実施形態におけるポリシー情報の第3のデータ構造を示すデータ構造図である。 同実施形態におけるポリシー情報の第4のデータ構造を示すデータ構造図である。 同実施形態において、アプリケーション実行部目的データを取得する際に、ポリシー判定部がポリシー判定を行う場合の、受信機の動作の第1例を示すシーケンス図である。 同実施形態において、アプリケーション実行部目的データを書き込む際に、ポリシー判定部がポリシー判定を行う場合の、受信機の動作の例を示すシーケンス図である。 同実施形態において、リソース制御部がデータを書き込んだ後の、ユーザ関連情報の例を示す図である。 同実施形態において、アプリケーション実行部目的データを取得する際に、ポリシー判定部がポリシー判定を行う場合の、受信機の動作の第2例を示すシーケンス図である。
 以下、図面を参照しながら本発明の実施形態を詳細に説明する。
 図1は、本発明の一実施形態による受信機の構成を示すブロック図である。図1に示すように、受信機4は、分離部402、通信入出力部411、アプリケーション実行制御部412、ローカル情報記憶部(関連データ記憶部)416及び外部インタフェース部(通信部)417を含む。アプリケーション実行制御部412は、アプリケーション記憶部431、アプリケーション制御部434、アプリケーション実行部435及びリソース制御部(データ読出部)439を含む。アプリケーション実行部435は、ログイン処理部461を備え、リソース制御部439は、利用状態判定部464と、アクセス制御部462と、ポリシー判定部463とを含む。
 外部インタフェース部417は、端末装置と通信を行って、ユーザの操作入力を取得する。例えば外部インタフェース部417は、無線LANを介して自身に接続された端末装置と通信を行う。
 ローカル情報記憶部416は、後述するように、ユーザの識別情報と対応付けてデータを記憶する。
 ログイン処理部461は、ユーザのログインおよびログアウトを実行する。
 利用状態判定部464は、ユーザのログイン状況に従って、利用状態情報を生成する。
 リソース制御部439は、利用状態判定部464が生成する利用状態情報に対応付けられたデータを、ローカル情報記憶部416から取得する。
 ポリシー判定部463は、リソース制御部439がローカル情報記憶部416からデータを取得する前処理として、データへのアクセス可否の判定基準を示すポリシーに基づいて、データ取得可否を判定する。
 アクセス制御部462は、リソース制御部439のローカル情報記憶部416へのアクセスを制御する。
 さらに詳細には、図22~図29を用いて後述する。
[本発明が適用される放送通信連携システムの一例の説明]
 ここで、本発明が適用される放送通信連携システムの一例について説明する。本発明が適用される放送通信連携システム(放送通信融合システム、放送通信システム、送受信システム)の一例は、例えば、Hybridcast(登録商標)(ハイブリッドキャスト)システムであり、放送通信連携サービス(Hybridcast(登録商標)サービス、放送通信融合サービス、放送通信サービス)を提供する。本発明が適用される放送通信連携システムの一例が実現する放送通信連携サービスは、デジタル放送サービスと、インターネットなどによる通信サービスとを連携する。例えば、放送通信連携サービスでは、デジタルテレビやパーソナルコンピュータ、携帯端末などの受信機は、放送により伝送された放送番組(以下、「番組」とも記載する。)の表示画面(以下、番組の表示画面の「放送画面」とも記載する。)に、この受信機に実装されているアプリケーションが通信により取得したサービスやコンテンツの表示画面(以下、「アプリケーション画面」、「アプリケーションの表示画面」とも記載する。)を合わせて同時に表示する。
[1. システムモデル]
[1.1 放送通信連携システムの利用者]
 図2は、放送通信連携システムを利用する者とその関係を示す図である。
 編成を伴う番組を送出する放送局は、放送電波あるいは通信網により番組を視聴者に配信する。放送局は、放送通信連携サービスを充実するために、番組に関連するメタデータをサービス事業者に提供する。
 放送通信連携サービスを提供するサービス事業者は、視聴者に放送通信連携サービスを提供するためのコンテンツとアプリケーション(以下、「アプリ」とも記載する。)を制作し、配信する。以下では、単に「アプリケーション」と記載した場合、放送通信連携サービスを提供するためのアプリケーション(放送通信連携サービスのアプリケーション)を指す。コンテンツまたはアプリケーションの制作者と配信者が同一のサービス事業者である必要はない。放送局がサービス事業者を兼ねてもよい。サービス事業者は、他のサービス事業者へのリンク情報を提供することも可能である。サービス事業者は、提供するアプリケーションが公式であることを示すために、システム管理者にアプリケーションの登録を申請し、承認を得ることができる。承認されたアプリケーションは、受信機上での動作に制限を受けない。一方、承認されないアプリケーションが表示させる画面は、番組の表示画面および音声にオーバーラップすることはできないが、アプリケーションの表示画面を縮小して放送番組の画面の外に表示することができる。承認されたアプリケーションを公式アプリケーション、承認されないアプリケーションを非公式アプリケーションという。なお、公式アプリケーションを、登録アプリケーション、認証済アプリケーション、認定アプリケーション、公認アプリケーション、オーソライズドアプリケーション、A(Authorized)タイプアプリケーション、Aアプリケーションとも呼ぶ。また、非公式アプリケーションを、一般アプリケーション、非認証アプリケーション、非認定アプリケーション、非公認アプリケーション、U(Unauthorized)タイプアプリケーション、Uアプリケーションとも呼ぶ。
 システム管理者は、視聴者に提供するアプリケーション(受信機アプリ)が公式であることを認定する機関である。申請されたアプリケーションを承認するか否かのシステム管理者の判断は、放送局からの委託による。
 受信機メーカは、受信機を製造し、販売する。受信機メーカは、受信機の各種設定等を行なうためのアプリケーションを受信機にインストールしておくことによって、受信機を動作可能とすることができる。この際、受信機におけるアプリケーションの表示画面が番組の表示画面(映像)にオーバーラップしてもよい。
 放送局により放送された番組を視聴する視聴者は、放送通信連携サービスを享受する。
 視聴者は、自身の意思により、アプリケーションをダウンロードしたり、起動したりすることができる。また、視聴者は、自身の意思により、アプリケーションの表示画面を番組の表示画面(映像)にオーバーラップさせることができる。
[1.2 放送通信連携システムのシステム構成]
 図3は、放送通信連携システムの全体構成を示す図である。放送通信連携システムは、電波を利用した現行の放送局設備に、機能的に「放送局サーバ群」、「サービス事業者サーバ群」、「受信機」を加えて構成される。
 放送局は、放送局設備を保有する。さらに放送局は、放送局サーバ群あるいはサービス事業者サーバ群の両方を構成し、管理運営する。また、サービス事業者は、サービス事業者サーバ群を構成し、管理運営する。システム管理者は、リポジトリサーバを管理運営する。受信機メーカは、受信機を製造販売する。視聴者は受信機を保有し、放送通信連携サービスを享受する。
 受信機(Hybridcast(登録商標)受信機、放送受信通信装置)は、標準化された共通のAPI(アプリケーションプログラムインタフェース:Application Program Interface)を搭載する。また、受信機は、地上デジタル放送、BS(broadcasting satellite)デジタル放送等の現行方式の放送を受信する。
 放送局設備は、放送通信連携サービスを起動するための信号を放送波に多重化する。多重化の方式については後述する。
[1.3 放送局サーバ群の構成例]
 放送局サーバ群は、放送局が持っているコンテンツやメタデータを管理し、配信する。
 例えば、放送局サーバ群は、各種サーバ、データ蓄積部(DB(データベース))及びAPIを含み、放送局サーバ群のサーバは、コンテンツ管理サーバ、視聴者管理サーバ、コンテンツ配信サーバ、放送局サービスサーバを含む。
 コンテンツを管理するコンテンツ管理サーバは、放送コンテンツである番組とメタデータを管理する。コンテンツ管理サーバには、放送された番組または放送される番組を管理する番組管理サーバや、番組に関連するメタデータを管理するメタデータ管理サーバが含まれる。メタデータは、例えば、番組タイトル、番組ID、番組概要、出演者、スタッフ、放送日時、台本、字幕、解説などを示す。
 視聴者管理サーバは、視聴者(ユーザ)を管理し、コンテンツ配信サーバは、通信によりコンテンツデータを配信する。放送局サービスサーバは、放送局がサービス事業者に対してサービスを提供するためのサーバである。放送局サービスサーバが提供するサービスには、例えば、放送局が運営するソーシャルネットワークサービスや、放送番組毎のウェブログ(ブログ)などがある。
 放送局サーバ群のデータ蓄積部は、放送局が持っているコンテンツ、メタデータを格納する部分とデータベースから構成される。蓄積されたデータには、管理しているサービス事業者のみがアクセス可能であり、他者からはアクセスできないように制限している。
 放送局サーバ群のAPIは、サービス事業者サーバ群からの要求に応じてデータを提供するためのAPIである。APIは、アプリケーションがサービスを受けるために呼び出すプログラムおよびその実行部である。
[1.4 サービス事業者サーバ群の構成例]
 サービス事業者が管理運営するサービスサーバ群は、アプリケーションとコンテンツを管理し、提供する。サービスサーバ群は、受信機アプリサーバ、サービスサーバ、コンテンツ配信サーバ、データ蓄積部(DB(データベース))及びAPIを含む。
 受信機アプリサーバは、放送通信連携サービスのアプリケーションを管理するサーバである。サービス事業者は、受信機で動作するアプリケーションを保存、管理、配信する。
 サービス事業者は、団体または個人で構成される。受信機アプリサーバは、受信機からの要求により、アプリケーションファイル(アプリケーションファイルについては後述する。)の保存場所を受信機に知らせるとともに、アプリケーションファイルを配信する。
 サービスサーバは、受信機で動作しているアプリケーションからの要求によりサービスを提供するサーバである。サービスサーバには、例えば、多言語字幕サーバ、話速変換音声サーバ、ソーシャルTVサーバ、レコメンドサーバ、番組レビューサーバ、ブックマークサーバなどがある。
 コンテンツ配信サーバは、受信機で動作しているアプリケーションからの要求によりコンテンツを提供するサーバである。コンテンツ配信サーバには、例えば、VOD(VideoOn Demand)配信サーバ、字幕配信サーバ、マルチビュー配信サーバなどがある。
 サービス事業者サーバ群のデータ蓄積部は、コンテンツデータ、メタデータ、サービス事業者が作成したデータ、視聴者データ、アプリケーションファイルを保存する場所である。データ蓄積部に保存されたデータには、管理しているサービス事業者のみがアクセスでき、他者からはアクセスできない。
 サービスサーバ群のAPIは、受信機で動作しているアプリケーションからの要求により、アプリケーションファイル、コンテンツ、サービスを提供するためのAPIである。
[1.5 受信機]
 受信機は、現行方式の放送を受信し表示するとともに、放送通信連携サービスを実行する。現行方式の放送とは、地上デジタル放送、BSデジタル放送等の衛星放送、データ放送である。また、受信機は、インターネットに接続される。
 受信機は、受信する放送波に多重された情報をもとにして、サービス事業者サーバにアプリケーションのダウンロード要求を行う。受信機が、ダウンロードしたアプリケーションファイルに含まれるアプリケーションプログラムを実行することによって、受信機上でアプリケーションが動作する。受信機上で動作しているアプリケーションは、サービス事業者サーバにアクセスしてコンテンツを取得する。
 また、受信機は、同期機能、アプリ制御機能など放送通信連携サービスを実行するために必要な機能である放送通信連携機能を持つ。放送通信連携機能に対するAPIは共通化されているため、アプリケーションの制作が容易であるとともに、アプリケーションは受信機に依存しない。
 放送通信連携サービスでは、パーソナルコンピュータや携帯端末などのデバイスとの連携のための機能も取り入れている。
 放送通信連携機能には、放送通信連携基本機能と、必要に応じて実装するオプション機能とがある。受信機メーカは、放送通信連携基本機能を全ての受信機に実装する。アプリケーションは、APIを通して放送通信連携機能を利用する。放送通信連携機能は、後述するAPIに基づき動作する。
 受信機が実装するAPIは、受信機に依存することなく、アプリケーションの動作が同じになるようにするために規定される。全てのアプリケーションは、APIを通して受信機の処理を行なうため、APIを介さずにアプリケーションが受信機固有の機能にアクセスすることはできない。
[1.6 端末連携モデル]
 図4は、放送通信連携システムの端末連携モデルを示す図である。
 受信機は、携帯端末などの端末と連携してサービスを提供することができる。連携する端末には、例えば、パーソナルコンピュータ、携帯電話、タブレット、スマートフォン、PDA(Personal Digital Assistant)などがある。受信機は、受信機機能として他の端末が利用可能な機能をAPIとして提供する。この他の端末が利用可能な機能を提供するAPIを端末連携APIという。例えば、携帯端末上で動作するアプリケーションは、端末連携APIを利用することで、番組情報の取得などの放送リソースにアクセスしたり、再生制御等の受信機機能を呼び出したりすることができる。
[1.6.1 端末連携API]
 端末連携APIは、他の端末やその端末上で動作するアプリケーションが受信機の機能を利用するためのAPIである。連携する端末は、ホームネットワーク(LAN)上の端末及びインターネットを通してアクセスする端末を対象とする。各種動作を提供するAPIの規定は後述する。
[1.6.2 端末連携API提供プロセス]
 受信機上で動作する端末連携API提供プロセスは、端末連携APIを動作させる。端末連携API提供プロセスは、常駐して動作する一種のデーモンプロセスのように動作する。
[1.6.3 APIを呼び出すプロトコル]
 端末連携APIを呼び出すプロトコルには、例えば、RESTful(REST:Representational State Transfer)、UPnP(Universal Plug and Play)、XMPP(eXtensible Messaging and Presence Protocol)などが用いられる。
[1.6.4 プッシュ通知(Notification)機能]
 受信機は、インターネット上のサーバ等が受信機に対してプッシュで情報を通知するNotification(通知)機能にも対応する。受信機はサーバ等からのプッシュにより通知された情報を受信する。Notification機能によって、なんらかの受信機動作を制御する場合があり、Notification機能も端末連携API仕様の一部として規定される。
[2. 放送通信連携アプリケーション]
[2.1 サービスとアプリケーションモデル]
 放送通信連携システムのアプリケーションモデルは、DVB-GEM1.2のアプリケーションモデルの考え方をベースに追加、変更したモデルである。
[2.1.1 放送通信連携アプリケーション]
 放送通信連携サービスのアプリケーションの動作は、AV(Audio Visual)コンテンツに連動した動作(連動)と、アプリケーション単独での動作(非連動)の2つのパターンに分類される。AVコンテンツとは、放送コンテンツ(番組)または通信コンテンツ(VoD等)である。
 連動の場合、起動などのアプリケーションのライフサイクル制御は、放送または通信コンテンツに連動して行われる。アプリケーションは、AVコンテンツと一緒に配信されるAIT(Application Information Table)(アプリケーション情報テーブル、アプリケーション起動情報)をもとに起動される。この場合、視聴者による起動や終了の操作に加え、放送事業者などのAVコンテンツの提供者がアプリケーションの自動起動や、終了などのライフサイクルを制御することも可能である。
 一方、非連動の場合、放送や通信コンテンツに連動せずに、アプリケーション単独で起動、終了される。この場合、アプリケーションの開始や終了などのアプリケーションのライフサイクルは、視聴者によってのみ制御される。
[2.1.2 サービス]
 従来、サービスとは、放送事業者が編成し、スケジュールの一環として放送可能な番組の連続のことをいうが、放送通信連携システムにおいてはこの考え方を拡張し、ストリーム従属型サービスと独立型サービスの2つのサービス種別を定義する。
 図5は、サービス種別の概念図を示す。
 受信機において、ストリーム従属型サービス及び独立型サービスを擬似的に選局することで、関連するアプリケーションが起動することになる。
 ストリーム従属型サービスは、従来の意味でのサービスの考え方を拡張したものであり、放送や通信で伝送するAVストリームに、それに連動して動作するアプリケーション(複数可)を加えて構成される。AVストリームの選択・再生(放送の場合は選局)によって連動してアプリケーションを起動することができる。
 一方、独立型サービスは、映像・音声のストリームは含まず、アプリケーション(複数可)のみで構成される。視聴者が独立型サービスを選択することで、アプリケーションが起動される。
[2.1.3 オンザフライで取得するアプリ起動とインストールしたアプリの起動]
 アプリケーションの起動には、オンザフライでアプリケーションファイルを取得して起動する方法と、予め受信機に蓄積(インストール)しておいたアプリケーションファイルを起動する方法の2つがある。オンザフライとは、アプリケーションの実行時に通信によってアプリケーションファイルを取得する方法であり、非インストール型、直接実行型ともいう。
 なお、受信機は、後述するAITによるアプリケーションの周知をもとに、ローカルのファイルシステムにあるアプリケーションファイルのアプリケーションプログラムを起動する。受信機は、通信によりアプリケーションファイルを取得してインストールする際、関連するAITに設定されているロケーション階層内の情報(2.5.1節参照)をローカルのファイルシステム上のロケーションに書き換え、必要に応じて独立型サービスを識別する値(独立型サービスのAIT単位で必要)を生成する動作などが必要となる。
[2.2 アプリケーションの周知法(シグナリング)]
[2.2.1 アプリケーション起動情報(AIT)]
 サービスに含まれるアプリケーションの周知は、サービス選択時に通知されるアプリケーション起動情報によって行う。アプリケーション起動情報としてARIB STD-B23(以下、ARIB-Jと記載)で定義されているAITを用いる。ストリーム従属型サービス、独立型サービスそれぞれで、そのサービス用のAITが周知される。各サービスにおけるAITの送り方の詳細を以下に示す。
 図6は、放送通信連携システムに使用するAITのテキスト表現の例を示す図である。
 放送通信連携システムにおいて使用するAITは、ARIB-Jで規定されるAITをベースとする。AITには、SI(Service Information)のテーブルで伝送するためのバイナリ表現と、XML(extensible markup language)形式によるテキスト表現(AIT File)とが存在し、図6では、テキスト表現の例を示している。AITには、アプリケーションを特定するアプリケーションID(applicationIdentifier)、アプリケーション状態を制御する制御コード(controlCode)、アプリケーションファイルの格納位置(格納場所)を示すロケーション情報(location)などが記述される。
[2.2.2 AVコンテンツに連動するアプリケーションの周知]
 AVコンテンツに連動するアプリケーションの周知は、MPEG(Moving Picture Experts Group)-2 TS(トランスポートストリーム:Transport Stream)で伝送するAVコンテンツにAITを多重する場合と、別途AITの情報を送る場合がある。AVコンテンツと連動させてAITを伝送することにより、受信機において、放送番組に連動するアプリケーションの起動や、番組の進行に連動したダイナミックなアプリケーションの起動などのライフサイクル制御が可能となる。
 周知方法には、例えば、(1)AIT用のES(エレメンタリーストリーム:Elementary Stream)追加、(2)EIT(イベント情報テーブル:EventInformationTable)への記述子追加、(3)カルーセルでの伝送、(4)通信でのAITファイルの取得、(5)通信でのダイナミックなAITファイルの伝送、などがある。
(1)AIT用のES追加の場合、ARIB-Jにおける規定と同様にAITのESを放送TSに多重する。
(2)EITへの記述子追加の場合、後述する提示制御と同様に、EIT(p/f)への記述子を追加し、AITで伝送される情報と同じ情報を伝送する。
(3)カルーセルでの伝送の場合、DSM-CC(Digital Storage Media Command and Control)データカルーセルでAITを伝送する。例えば、特定のモジュールでAITファイルを伝送する。カルーセルで伝送することで、取得時間のオーバーヘッドが想定されるが、現行の放送信号を変更する必要がない。
 カルーセルでの運用例として、放送通信連携起動ファイル伝送用カルーセルのコンポーネントタグ、モジュールを固定する。例えば、コンポーネントタグに「AA」を、モジュールIDに「0000」を設定し、モジュールのType記述子にAITであることを示すタイプを設定する。受信機は、モジュールの更新を監視し、更新を検出するとAITを読み直し、AITにより指定された制御(アプリケーションのライフサイクル制御)を実行する。
(4)通信でのAITファイルの取得の場合、AVコンテンツの選択と同時に、別に用意されたAITファイルを取得する。例えば、再生するAVコンテンツの情報(コンテンツID)とアプリケーション起動情報(AIT)が記述された情報を起点に両者を取得する。サーバ型放送(ARIB TR-B27)の利用単位コンテンツやエントリーコンポーネントの考え方を利用することができる。
 (5)通信でのダイナミックなAITの伝送の場合、AVコンテンツを再生中に、新たなアプリケーションを起動したり、起動中のアプリケーションを終了させたりする制御を通信で伝送するAITにより行う。なお、予め想定されていないタイミングでの制御を行なう場合、通信を経由したプッシュによる通知を行なう。
[2.2.3 独立して動作するアプリケーションの周知]
 受信機は、独立して動作するアプリケーションの起動情報を含むAITを通信により取得する。独立アプリケーションは、既知のアプリケーションリポジトリから取得する。個々の独立アプリケーションの起動情報を取得するまでの手順を以下に示す。
(1)受信機にアプリケーションリポジトリのロケーションをセットする。出荷時に予め設定してもよく、複数のリポジトリを後から何らかの方法で追加してもよい。
(2)アプリケーションメニューを開くと、受信機はアプリケーションリポジトリからアプリケーションのリスト(各アプリのAITのロケーション記述を含む)を取得し、メニューにアプリを表示する。
(3)視聴者が選択したアプリケーションのAITを通信から取得する。
 上記の手順は、リポジトリが提供するWEB(ウェブ) APIを利用して実行される。また、独立して動作するアプリケーションは、AVコンテンツと連動して動作するものではないため、予め指定したタイミングでの動的なライフサイクルコントロールは行わない。予め指定されていないタイミングでの制御(終了など)は、通信経由でのプッシュでの通知(Notification)により行なう。
[2.3 アプリケーションの起動と終了]
[2.3.1 アプリケーションのライフサイクル]
[2.3.1.1 ライフサイクル]
 図7は、アプリケーションのライフサイクルを示す図である。
 アプリケーションの状態は、ARIB-Jにおけるアプリケーションの状態に準じ、「Not Loaded(ロード前)」、「Loaded(ロード後)」、「Paused(休止)」、「Started(開始)」、「Destroyed(破壊)」の5つの状態を持つ。これら5つの状態において、アプリケーションがロード、実行されて終了するまでの一連の過程をアプリケーションのライフサイクルと呼び、各状態間の遷移の制御をライフサイクルコントロールと呼ぶ。
[2.3.1.2 AVコンテンツに連動するアプリケーションの基本的ライフサイクル制御]
 AVコンテンツに連動するアプリケーションのライフサイクルの制御は、ストリーム従属型サービスの選択を通して行われることを基本とする。
 ストリーム従属型サービスの選択は視聴者によって行われる。サービスは、AVコンテンツやアプリケーションを含む一連のコンテンツのセットであり、アプリケーションと一緒に送られるAITに含まれる制御コードよって起動や終了などのライフサイクルが制御される。一つのサービスに複数のアプリケーションが含まれ、それらが同時に動作する場合もある。
 アプリケーション起動のトリガとなるサービスの選択は、受信機APIを通してアプリケーションから制御する場合や、受信機のレジデントアプリケーションとしてのナビゲータから制御する場合、放送サービスの場合はリモコンボタンを制御する場合、などがある。サービス切り替え時に、切り替え前後のサービスに含まれるコンテンツ(AVコンテンツやアプリケーション)の提示が切り替えられる。切り替え前後のサービスに含まれるアプリケーションが異なる場合は、切り替え前に起動していたアプリケーションはサービス切り替えによって終了し、切り替え後には異なるアプリケーションが起動可能となる。これらの動作の詳細は、2.4節に後述する。
[2.3.2 アプリケーションの起動]
[2.3.2.1 AITによる起動]
 受信機においてサービス(ストリーム従属型サービス、独立型サービス)が選択されたとき、サービスと共に提供されるAITに含まれる制御コードで「auto-start」が指定されたアプリケーションは、視聴者からの明示的なアクションなしでサービス選択とともに自動的に起動する。サービス選択中は、そのサービスに対するアプリケーションシグナリングによってライフサイクルが制御される。例えば、放送サービスの場合は、放送と共に伝送されるAITを受信機が常に監視し、その変化に対応する。このように、AITの伝送などのアプリケーションシグナリングによって、受信機において新たなアプリケーションを途中で自動起動(auto-start)するよう制御できる。
 AITによるアプリケーション起動情報において「auto-start」が指定されていないアプリケーションは、自動的には起動されず、視聴者による明示的な起動が必要となる。この明示的な起動は、受信機のレジデントアプリケーションのアプリケーションローンチャーによって行われる。例えば、放送サービス選択時に、リモコンの放送通信連携サービスボタンを押すことで、受信機においてアプリケーション起動用のメニューが開き、現在の放送(通信)サービスに連動するアプリケーション一覧が表示される。ここで視聴者は、受信機に対して、起動したいアプリケーションを選択・起動する操作を行う。
[2.3.2.2 放送通信連携アプリケーションからの起動]
 サービス内で複数のアプリケーションを起動できるため、起動済のアプリケーションから同じサービスに含まれる他のアプリケーションを起動することもある。ARIB-Jアプリケーション実行環境では、アプリケーションIDを指定することにより他のアプリケーションを起動するAPIが規定されている。その他の実行環境の場合も、同様の機能をもったAPIを規定する。
[2.3.2.3 BML(Broadcast Markup Language)からの起動]
 受信機は、放送通信連携アプリケーション実行環境に加えて、現行のBMLデータ放送の実行環境を備えることから、BMLのAPIとして放送通信連携アプリケーションの起動を制御するAPIを追加する。なお、BMLは、ARIB STD B24に規定されるマルチメディア符号化方式であり、現行の日本の地上・BS・CSデジタル放送におけるデータ放送方式として採用されている。
[2.3.2.4 独立して動作するアプリケーションの起動]
 独立型サービスは、アプリケーションのみを含む仮想的なサービスであり、独立アプリケーションを選択することで、2.3.2.1節のAITによる起動と同じメカニズムによりAITを取得してアプリケーションが起動される。ただし、独立型サービスでは、少なくとも1つのauto-startアプリケーションが起動される。独立型サービスの選択は、例えば、アプリケーションローンチャーから行う。
[2.3.3 アプリケーションの終了]
[2.3.3.1 AITによる終了]
 起動されたアプリケーションは、そのサービスに対するアプリケーションシグナリングによってライフサイクルが制御される。例えば、放送の場合は、放送と共に伝送されるAITを受信機が常に監視し、起動中のアプリケーションに対して制御コードdestroyを指定することで、アプリケーションを終了する。通信で伝送するストリーム従属型サービスにAITが多重されている場合も、連動するアプリケーションの終了制御が可能である。
[2.3.3.2 アプリケーション自身による終了]
 アプリケーション自身が、終了用のAPIを用いて自ら終了する。
[2.3.3.3 他のアプリケーションによる終了]
 アプリケーションが実行するアプリケーション終了用のAPIを用いて、起動中の他のアプリケーションを終了させる。この場合、他のアプリケーションを終了させる適切なセキュリティポリシーが必要である。
[2.3.3.4 別のサービスへの切替え時の終了]
 受信機における別のサービスへの切り替え時、ストリーム従属型サービスに含まれるアプリケーションのうち、切り替え前のサービスに含まれるアプリケーションは終了し、新しいサービスでシグナリングされたアプリケーションが起動される。切り替え前後のサービスに同じアプリケーションが含まれる場合は、動作を継続することも可能とする。これは、AIT中のフラグで制御する。ストリーム従属型サービスに含まれるアプリケーションであるサービスバウンドアプリケーションの詳細は、4.2節に後述する。
[2.3.3.5 受信機による終了]
 受信機は、指定したアプリケーションを受信機機能により終了する。例えば、受信機が起動中のアプリケーション一覧を表示し、視聴者の選択によって指定のアプリケーションを終了させる。
[2.3.3.6 動的なアプリケーション終了]
 アプリケーションの終了を動的に制御するため、アプリケーションの終了を指示するAITのファイルを受信機に送信する。この場合、AITをプッシュ通知(Notification)する。
[2.3.4 複数アプリケーションの起動]
[2.3.4.1 同一サービス内でシグナリングされたアプリケーション]
 受信機は、同一のサービスにおいてAITにリストされたアプリケーションを同時実行させることができる。
[2.3.4.2 AVコンテンツに連動するアプリケーションと独立して動作するアプリケーションの同時起動]
 AVコンテンツに連動するアプリケーションは、ストリーム従属型サービス内でしか起動されない。一方、独立して動作するアプリケーションは、任意のタイミングでAVコンテンツに連動するアプリケーションや独立して動作する他のアプリケーションと同時に起動可能とする。
[2.3.4.3 複数アプリケーション起動時のリソース管理]
 複数のアプリケーションが起動する場合、それらが同じ受信機のリソース(例えばディスプレイ)を必要とする場合がある。受信機は、リソースマネージャなどの仕組みを備えて、適切にリソースを割り振ったり、リソースが使用出来ない場合はアプリケーションの実行をやめたりするなどの動作を行う。
[2.4 アプリケーションのバウンダリ]
[2.4.1 バウンド/アンバウンドの基本的な扱い]
 アプリケーションは編成サービスに紐付いた(対応付けられた)バウンドアプリケーションと紐付かない(対応付けられていない)アンバウンドアプリケーションの2種類がある。バウンドアプリケーションがどの編成サービスと紐付いているかは、当該アプリケーションの起動情報を含んでいるAITがどの編成サービスから得られたかで判定する。
 バウンドアプリケーションは、紐付いている編成サービスを受信しているときに実行可能な状態になる。つまり、当該編成サービスからAITによって起動され、当該編成サービスの受信が終了したとき(受信している編成チャンネルが変更されたとき)には実行が終了する。バウンドアプリケーションから起動された別のアプリケーションもバウンドアプリケーションとして扱う。関連する一連のバウンドアプリケーション群の大本である最初に起動されたアプリケーションが終了したときには、それによって起動された他のアプリケーションも終了する。
 アンバウンドアプリケーションは編成サービスに紐付いていないので、受信している編成サービスを変更してもアプリケーションの実行は継続される。編成サービスからはアプリケーションを起動するためのAITが得られないので、他の手段(例えば、アプリケーションと紐付いているAIT File(ファイル)を、アプリケーションローンチャー等を用いて入手するなど)によって起動情報が受信機に与えられ、起動される。アンバウンドアプリケーションから起動された別のアプリケーションもアンバウンドアプリケーションとして扱う。アプリケーションは、視聴者の操作によって明示的に終了することが基本であるが、受信している編成サービスから全てのアプリケーションを終了させる指示(KILLALL)がAITによって与えられた場合にも終了する。
[2.4.2 アンバウンドアプリケーション固有の扱い]
 アンバウンドアプリケーションは編成サービスと紐付かないが、2.3.2.4節で示すように、仮想的な編成サービス(受信機の起動時に受信機内に生成される)に紐付けることにより、バウンドアプリケーションと同じ起動処理メカニズムが適用できる。
 仮想的な編成サービスの生成方法は受信機の実装依存であり、その編成サービスにどのような識別値を与えるかは受信機実装によって異なる。しかし、アプリケーションファイルを受信機内に蓄積しておいて任意のタイミングでアプリケーションローンチャーから起動できるようにしておく場合、仮想的な編成サービスを識別するIDやアプリケーションファイルの取得先(サービス事業者サーバないしはリポジトリから取得したAITには当該サーバが取得先として記述されているので、受信機内の蓄積領域から取得するように変更する必要がある)などが受信機実装に合うようにAITの内容を受信機が更新する必要がある。
[2.5 アプリケーションの取得方法]
[2.5.1 AITをもとにした取得]
 上記の記述のとおり、全てのアプリケーションの起動情報はAITにより与えられる。
アプリケーションファイルの取得は、AITに含まれるアプリケーションのロケーション情報により指示される。例えば、図3の例ではロケーション情報は、「/ApplicationList/Application/applicationSpecificDescriptor/dvbjDescriptor/location」の階層に記述される(XMLとしてはlocation要素の内容として記述される)。ロケーション情報の記述は、例えば、「http://192.168.11.37/demo.jar」となる。
 上記は、HTTP(Hypertext Transfer Protocol)プロトコルを用いて、demo.jar(Java(登録商標)のアプリケーションアーカイブ)を取得する例である。使用するトランスポートプロトコルや、アプリケーションのパッケージフォーマットについては、後述する。
[2.5.2 アプリケーションのパッケージフォーマット]
 アプリケーションのパッケージフォーマットは、アプリケーションフォーマット(Java(登録商標)やHTML5)などに依存する。受信機は、何らかのひとかたまりになったファイル、もしくはエントリーファイルを取得することによって、アプリケーション起動に必要な一連のファイル(プログラム本体や画像ファイルなど)を取得する。この一連のファイルがアプリケーションファイルである。例えば、アプリケーションファイルには、一連のファイルを圧縮したもの(zipファイル等)、Jarファイル(Java(登録商標)実行環境)、エントリーのHTMLファイル(HTML5実行環境の場合)、独自に規定したエントリーファイルなどのフォーマットが使用される。
[2.5.3 アプリケーションの伝送方法]
 アプリケーションファイルをネットワーク経由で取得する際の伝送方法には、HTTPプロトコルによる取得と、FILEプロトコルによる取得とがある。
 HTTPプロトコルによる取得の場合、GETメソッドにより取得する。AITのロケーションの指定は、「http://~」とする。
 一方、FILEプロトコルによる取得の場合、受信機のローカルに保存された(インストールされた)アプリケーションファイル(アプリケーションプログラム)を指定するときには、AITのロケーションの指定を「file:///~」とする。
[3. インタフェース条件]
[3.1 放送波の放送通信連携サービス制御信号]
 放送波には、2.2.2節で前述したアプリケーション起動情報を送出するメカニズムが必要である。さらに、緊急警報放送時などを想定して、全てのアプリケーションを強制終了させるために、ARIB STD-B23第二部 10.16.3.2節で規定するAITのアプリケーション制御コード(application_control_code)に「KILLALL」を追加する。表1は、追加する制御コード「KILLALL」の意味を示す。
  [表1]
Figure JPOXMLDOC01-appb-I000001
 また、アプリケーションとAVコンテンツの関係からアプリケーションの提示制御を行うために、EIT、AITに記述子を追加する。詳細は4.3節に後述する。
[3.2 放送局サーバ群API]
 図8は、放送通信連携システムにおける事業者間のデータの流れを示す図であり、図9は、放送通信連携システム全体におけるデータの流れを示す図である。
 ここでは、図8に示す、放送局サーバ群とサービス事業者サーバ群のサービス毎のサーバとの間、放送局サーバ群と放送通信連携基盤サーバとの間、及び、放送通信連携基盤サーバとサービス事業者サーバ群のサービス毎のサーバとの間のAPIの規定、図9に示す、受信機制御と放送通信連携基盤サーバとの間、メタデータとサービス毎のサーバとの間のAPIについて述べる。
[3.2.1 API]
 放送局サーバ群を構成する各サーバである放送局サーバと、サービス事業者サーバ群を構成する各サーバであるサービス事業者サーバとの間の通信はREST形式とする。また、放送局サーバとサービス事業者サーバとの間は、提供するサービスに応じてサーバのディレクトリー構成が異なることが予想されるため、APIは双方間で取り決める。放送局サーバ及びサービス事業者サーバのURLの例を以下に示す。
 http://hybridcast.org/{放送局名}/{サーバ名}/{コンテントID}/{管理するデータ}/{ソート方法}/{先頭アイテム},{個数}/?{パラメータ}={値}/
[3.2.2 レコメンドサービス]
 図10は、レコメンドサービスのシーケンスを示す図である。サービス事業者サーバ群と、放送局サーバのインタフェース部との間で使用されるメソッドは、「GET」、「POST」、「PUT」、「DELETE」である。コマンドフォーマットの例を以下に示す。
(1)http://hybridcast.or.jp/{放送局名}/(サーバ名)/{コンテントID}/{管理するデータ}/{ソート方法}/{先頭アイテム},{個数}/
(2)http://hybridcast.or.jp/{放送局名}/(サーバ名)/{視聴者ID}/{管理するデータ}/{ソート方法}/{先頭アイテム},{個数}/
(3)http://hybridcast.or.jp/{放送局名}/(サーバ名)/{レビューID}/{管理するデータ}/{ソート方法}/{先頭アイテム},{個数}/
 また、パラメータには、{放送局名}、{サーバ名}、{コンテントID}、{視聴者ID}、{レビューID}、{管理するデータ}、{ソート方法}、{先頭アイテム}、{個数}等々がある。
[3.2.3 管理対象のデータ]
 管理対象のデータには、コンテンツ情報、ユーザ情報、ユーザ・ジェネレイテッド・コンテンツ情報、デバイス情報、認証情報がある。
 コンテンツ情報は、タイトル、概要、ジャンル、放送日時、放送時間(尺)、映像モード、音声モード、字幕データ、台本、出演者、音楽、制作者、製作会社、著作、推薦番組、動画URI、再生回数、CM、タイムスタンプ情報、等を示すデータを含む。ユーザ情報は、ユーザ(視聴者)の名前、年齢、性別、地域、レビュー書込み数、コメント書込み数、お気に入り、フレンドリスト、再生場所(時刻)、再生終了場所(時刻)、番組視聴履歴等を示すデータを含む。ユーザ・ジェネレイテッド・コンテンツ情報は、コンテンツID、ユーザID、レビュー内容、レビュー書込み時刻、レビュー評価、等を示すデータを含む。デバイス情報は、デバイスIDを含む。認証情報は、認証IDを含む。
[3.3 トランスポートフォーマット]
[3.3.1 通信で扱う映像/音声について]
 通信で扱う映像や音声は、デジタルテレビネットワーク機能仕様 ストリーミング機能仕様書 プロトコル編V1.1(デジタルテレビ情報化研究会)に準拠する。
[3.3.1.1 映像・音声のモノメディアフォーマットとの関連]
 MPEG-2 VideoあるいはH.264/MPEG-4 AVC(Advanced Video Coding)で符号化された映像と、MPEG-1 Audio Layer II、MPEG-2 Audio AACで符号化された音声、および字幕等の多重化には、TTS(Timestamped Transport Stream)形式を使用する。ただし、MPEG2-TS、MMT(MPEG Media Transport)、MP4等も使用可能である。
[3.3.1.2 転送プロトコル関係]
 図11は、転送プロトコルスタックを示す図である。
 ストリーム伝送は、RTP(Real-Time Transport Protocol)/UDP(User Datagram protocol)およびHTTP/TCP(Transmission Control Protocol)を用いる。なお、RTP/UDPを用いる場合、オプションとして、誤り訂正の情報を伝送してもよい。また、HTTP/TCPを用いる場合、HTTPのコネクション、メソッド、ヘッダを利用してストリーム制御を行う。伝送がRTP(Real-time Transport Protocol)で行われる場合、ストリーム制御情報はRTSP(Real Time Streaming Protocol)を用いる。
[3.3.2 字幕関連]
 多言語字幕は、Timed Text Markup Language(W3C(World Wide Web Consortium))に準拠する。なお、同期については別途アプリケーションレベルで実施する。また、各対応フォントはサーバから必要に応じてダウンロードする。例えば、HTTPのペイロードにフォントファイルを載せる。この場合、WebのDynamic Fonts、PFR(PortableFont Resource)を利用する。
 フォントの容量は約5-35MB(メガバイト)程度が望ましい。
[3.4 モノメディアフォーマット]
 放送通信連携サービスにおけるモノメディア符号化は下記に定義されたものを用いる。
[3.4.1 動画]
 動画には、ARIB STD-B32 2.4版第1部3.1節で規定されるMPEG-2 Video方式および同3.2節で規定されるMPEG4-AVC方式が用いられ、同5.1節で規定されるテレビジョンサービスの符号化パラメータの制約条件が適用される。
[3.4.2 音声]
 音声には、MPEG-2 Audioや、PCM(Pulse Code Modulation)(AIFF-C(Audio Interchange File Format Compression))を用いる。
 MPEG-2 Audioの場合、ARIB STD-B32 2.4版第2部3.1節で規定されるMPEG-2 AAC方式が用いられ、同第5章で規定される符号化パラメータの制約条件が適用される。
 PCMの場合、ARIB STD-B24 5.4版第一編第2部6.2節で規定される方式が用いられる。
 付加音には、ARIB STD-B24 5.4版第一編第2部6.4節で規定される方式が用いられる。
[3.4.3 静止画]
 JPEG(Joint Photographic Experts Group)の場合、ARIB STD-B24 
5.4版第一編第2部5.2節で規定される符号化方式が用いられる。
 PNG(Portable Network Graphics:ポータブル・ネットワーク・グラフィックス)の場合、ISO/IEC 15948:2003にて規定される方式が用いられる。これは、W3C Recommendation Portable Network Graphics (PNG) Specification (Second Edition)と同内容である
[3.4.4 文字]
 文字符号化には、ARIB STD-B24 5.4版第一編第2部7.2節で規定される国際符号化文字集合が用いられる。
 文字符号集合には、同7.2.1.1.3節で規定されるBMP(Basic Multilingual Plane)セットが用られ、表7-20が適用される。また、ISO/IEC10646:2003追補5および同追補6が適用される。
 外字には、ARIB STD-B24 5.4版第一編第2部7.2.1.2節で規定される方式またはARIB STD-B23第一部5.2.1.2節で規定される方式などが適用される。
 制御符号には、ARIB STD-B24 5.4版第一編第2部7.2.2.1節で規定されるC0制御符号のうち、APR(CR)、APD(LF)のみが用いられる。その他のC0制御符号およびC1制御符号は用いられない。
 文字符号の変換は、ARIB STD-B24 5.4版第一編第2部付録規定Eに従う。
 上記に規定する文字符号化方式以外の方式で情報が符号化されている場合、送出ないしは受信機内の適切なプロセスにおいて上記の文字符号化方式に変換し、処理を行う。すなわち、他の符号化方式による文字符号をアプリケーションからは直接扱わない。
[3.5 アプリケーションフォーマット]
 受信機上で実行可能なアプリケーションの記述方法を示す。この記述方法により作成されたアプリケーションを実行するための実行環境と、セキュアマネージャとの結合については4章に示す。
[3.5.1 受信機で実行可能なアプリケーションフォーマット]
 受信機で実行可能なアプリケーションの記述方式として、BML(ARIB STD-B24)、ARIB-J(ARIB STD-B23)、HTML5(W3C HTML5
 Working draft - 2011/Jan/13)を規定する。
[3.5.2 BML]
 受信機は、地上デジタル放送運用規定(ARIB TR-B14)またはBSデジタル放送運用規定(ARIB TR-B15)に準ずるBML文書を提示する機能を有する。
 受信機は、地上デジタル放送またはBSデジタル放送で提供されるデータ放送サービスを既存の規格どおりに提示できなくてはならない。ただし、受信機は、放送でデータカルーセル方式によって配信されるBMLコンテンツの提示のみを必須とし、通信でHTTPプロトコルによって提供されるBMLコンテンツ(TR-B14 第三編第2部5.14節、TR-B15 第一部第三編8.14節)の提示は必須としない。
 また、データ放送コンテンツ(BML)を起点として、以下に規定される通信アプリケーションの起動を行うための放送用拡張APIとして、browser.startHybridcastApp()、getAITInfo()を規定する。
 表2は、browser.startHybridcastApp()の規定を示す。browser.startHybridcastApp()は、放送通信連携アプリケーションを起動するAPIである。
  [表2]
Figure JPOXMLDOC01-appb-I000002
 表3は、getAITInfo()の規定を示す。getAITInfo()は、受信中のサービスに含まれる最新のAIT情報を取得するAPIである。
  [表3]
Figure JPOXMLDOC01-appb-I000003
[3.5.3 HTML5]
[3.5.3.1 記述方式]
 受信機は、通信から提供されるプレゼンテーションエンジン型アプリケーションの記述方式としてHTML5をサポートする。JavaScript(登録商標)APIとして、下記のものをサポートする。なお、下記のAPIのうち、W3Cで検討が行われているものにはWorking Draft(WD)またはEditor’s Draft(ED)が含まれる。ただし、放送波で伝送されるデータカルーセルに関連するAPIは必須としない。
(1)System Information API(W3C Working Draft 02 Feb. 2010)(2)WebSocket API(W3C Editor’s Draft 28 Feb. 2011)(3)File API(W3C Working Draft 26 Oct. 2010)(4)Permission for File API, System Information API(Permissions for Device API Access, W3C Working Draft 05 Oct. 2010)(5)Device Description Repository Simple API(W3C Recommendation 05 Dec. 2008)(6)API for Media Resource 1.0(W3C Working Draft 08 June 2010)(7)Web Storage(W3C Working Draft 08 Feb. 2011)(8)Server-Sent Events(W3C Editor’s Draft 28 Feb. 2011)(9)Indexed Database API(W3C Working Draft 19 Aug. 2010)(10)SIアクセスAPI
(11)選局API
(12)印刷
(13)予約
[3.5.3.2 ブラウザ] 受信機のHTML5ブラウザは、JavaScript(登録商標)処理系、Web Workers(W3C Working Draft 08 Feb. 2011)、Widget Interface(W3C Working Draft 3 Feb. 2011)、HTML Canvas2D Context(W3C Editor’s Draft 28 Feb. 2011)の機能を実装する。Web Workersは、マルチタスクをサポートするため、Widget Interfaceは、独立アプリケーションをサポートするため、HTML Canvas 2D Contextは、2次元ベクトルグラフィックスをサポートするために必要である。
[3.5.4 ARIB-J]
 受信機は、通信から提供されるアプリケーション実行エンジン型アプリケーションの記述方式としてARIB-Jをサポートする。また、複数ストリーム間の同期APIとしてDVB Bluebook A153(GEM Media Synchronization API)を用いる。
[3.6 受信機API]
 以下に、HTML5およびARIB-Jで使用可能な受信機APIについて説明する。
[3.6.1 名前空間]
 名前空間とは、サーバ上や受信機内に存在する、映像音声コンテンツ、アプリケーション、モノメディアファイルなど、放送通信連携システムで扱う様々なリソースの位置を特定するための文字列の記述規則である。3.5.2節以降で使用する各種リソースを参照するための名前空間の記法は分類毎に規定する。リソースには、インターネットサーバー上のリソース、アプリケーションキャッシュ上のリソース、放送のリソースがある。インターネットサーバー上のリソースには、VODコンテンツなどのストリームリソースや、アプリケーション、アプリケーションから参照されるその他のリソースなどのファイルリソースがある。放送のリソースには、放送中の番組、過去・未来の番組などのストリームリソースや、モジュール、イベントメッセージなどのカルーセルリソースがある。
[3.6.2 放送通信連携インタフェース]
 放送通信連携インタフェースには、以下のインタフェースがある。
(1)getRunningApplications():実行中のアプリケーションの情報を取得する。getRunningApplicationsの戻り値は、apps[]と、アプリケーション毎のapplication_id及びrunning_levelとを含む。apps[]には、実行中アプリケーションのリストが設定される。application_idには、アプリケーションIDが設定され、アプリケーションが非公式の場合はnullである。running_levelには、実行レベル(認証結果および視聴者設定の状態)が設定される。
 なお、セキュリティ上の観点から、他アプリケーションに関して取得できる情報は制限すべきである。
(2)queryApplicationInfo():指定したアプリケーションの情報を取得する。
(3)getProgramInfo():受信中の放送の情報を取得する。戻り値は、tuner_state、network_id、ts_id、orig_ts_id、service_id、event_id、content_idである。tuner_stateには、受信状態を表す値が設定される。
(4)getEPGInfo():受信中の放送のEIT(+SDT)中の各種情報を取得する。
(5)saveApplicationToCache():サーバ上のアプリケーションファイルをキャッシュに保存する。
(6)queryApplicationInCache():キャッシュ中のアプリケーションファイル(アプリケーションプログラム)を検索する。queryApplicationInCache()の引数は、application_id、getDSMCCModule()、addBroadcastSignalListener()、getListFromHybridcastMenu()である。application_idには、認証機関から発行されたアプリケーションIDが設定される。getDSMCCModule()は、放送波から指定のモジュールを取得する。addBroadcastSignalListener()は、SI、緊急情報、カルーセルおよびイベントメッセージの更新を監視するリスナを登録する。getListFromHybridcastMenu()は、トップメニューアプリケーションのリストを取得する。queryApplicationInCache()の戻り値は、user_apps[]、broadcaster_apps[]、vendor_apps[]である。
(7)addApplicationToHybridcastMenu():トップメニューにアプリケーションを追加する。
(8)getKeyFromBroadcast():放送から限定サーバーアクセスのための鍵情報を取得する。
(9)querySupportedFunction():アプリケーションブラウザの機能を問い合わせる。これは、機能/APIが利用可能かチェックすることを目的として使用される。
[3.6.3 BroadacastSignalListenerインタフェース]
 BroadacastSignalListenerインタフェースは、放送から取得するSI、緊急情報、カルーセル、イベントメッセージを監視するためのリスナーインタフェースである。バウンドアプリケーション実行中に、紐付いている編成サービスが変更された場合にもこのインタフェースのイベントが発生する。
[3.6.4 LocalDatabaseインタフェース]
 LocalDatabaseインタフェースは、視聴者情報を受信機内で保持・管理するためのインタフェースである。視聴者情報は、個人情報などサーバ側に出すべきでない情報であり、視聴者ID、受信機IDなど最低限の情報である。
[3.6.5 同期関連API]
 SynchronizationManagerインタフェースとして、DVB Bluebook A153(GEM Stream Synchronization API)と同様のAPIを導入する。さらに、以下のインタフェースをAPIとして追加する。
(1)getCurrentSTC():現在のSTC(System Time Clock)値を取得する。なお、MPEG 2 Systems規格では、送信側のシステムクロック(STC)をMPEG2トランスポートストリーム中のPCR(Program Clock Reference)信号として多重し配信することで、受信機内部のシステムクロック(STC)が送信側のSTCと同期されるように規定している。
(2)getCurrentPositionInProgram():番組開始からの経過時間を取得する。
(3)delayStreamPresentation():提示中の放送ストリームの遅延提示を開始する。
(4)getCurrentDelay():提示中の放送ストリームの(本来の提示時刻からの)遅延時間量を取得する。
[3.6.6 SecurityExceptionインタフェース]
 アプリケーションが、現在の実行レベルにおいて禁止されている関数呼び出しおよびプロパティ操作をした場合に発生する例外のインタフェースである。ecurityExceptionインタフェースは、上記各APIの呼び出し、あるいは、放送を参照するオブジェクト(HTML5なら<video>、ARIB-Jなら○○Controller)に対する各種操作によって発生する。
[3.7 受信機機能]
 放送通信連携システムの受信機は、受信機機能として、アプリケーションローンチャーを備える。アプリケーションローンチャーは、受信機内に蓄積されたアプリケーションの起動、既知のリポジトリから独立アプリケーションの選択、AITによって起動指示が記述されたアプリケーションのうち、コントロールコードが「PRESENT」のアプリケーションの選択に用いる。
[4. セキュリティ]
[4.1 放送通信連携アプリケーションの管理]
 放送事業者の要件を満たしつつ放送通信連携サービスを普及・活性化させるために、放送事業者およびその関係者だけではなく、幅広いサービス事業者や個人が参入できる枠組みが必要となる。本放送通信連携システムでは、セキュリティの観点からアプリケーションを「公式アプリケーション」と「非公式アプリケーション」に分類し、受信機において双方のアプリケーションを実行可能とする。
 図12は、放送通信連携システムにおけるアプリケーション管理モデルを示す。「公式アプリケーション」は、登録管理者(第三者機関)への事前登録を行うことにより放送通信連携システムの仕様で期待する動作が保証される。「公式アプリケーション」は、登録時にIDと署名が付与され、受信機において2.2節で定義するセキュアマネージャーにより署名が検証され、すべてのAPIへのアクセスが可能となり、放送リソースを利用した番組連動サービスが行えるようになる。また、放送事業者から送出されるAITにより、放送事業者の要件に沿ったきめ細かい提示制御が可能となる。
 一方、「非公式アプリケーション」は、事前の登録は不要であるが、放送通信連携システムの仕様で期待する動作は保証されず、アプリケーションから放送関連のAPIを扱うことはできない。「非公式アプリケーション」はIDと署名が付与されないため、個々のアプリケーションの指定は困難であるが、放送事業者の要件に基づいた提示制限を加えた上で実行させることは可能である。
[4.2 セキュアマネージャーの機能モデル]
 図13は、セキュアマネージャーの機能モデルを示す。セキュアマネージャーは、受信機においてセキュリティを総合的に管理する機能である。
[4.2.1 アプリケーション監視・制御機能]
 受信機において動作するアプリケーションは、アプリケーションファイルの配布の形態により、上述したように、「公式アプリケーション」と「非公式アプリケーション」の2種類に大別される。「公式アプリケーション」と「非公式アプリケーション」は、4.1節に示すようにIDと署名の有無によって区別され、受信機におけるAPIのアクセス範囲や放送事業者からの制御範囲が異なるなど、アプリケーション実行時の動作内容が異なる。アプリケーション監視・制御機能は、公式/非公式の種別の違いを識別し、確実にアプリケーション実行時の動作を制御することを目的とする。
(1)アプリケーション認証:受信機は、実行するすべてのアプリケーションについて、公式または非公式のいずれか、さらに公式であればIDを識別する。公式または非公式の区別は、アプリケーションファイル(アプリケーションプログラム)に付与された署名の有無を確認しこれを検証することによって行う。公式であれば、受信機はさらに、署名に記述されたアプリケーションIDを取得する。アプリケーションの識別は、アプリケーションの取得時、または、起動時に行う。
(2)画面提示制御:4.3節に後述する。
(3)リソースアクセス制御:受信機は、実行中のアプリケーションの放送リソース等のAPIへのアクセス制御を行う。アプリケーションがAPIにアクセスしようとする時に、当該アプリケーションが非公式のアプリケーションであれば、APIの種別によってアクセスを制限する。
 また、アプリケーションがディスプレイへの画面表示APIにアクセスする際には、公式または非公式の種別と、選局中の放送事業者の提示ポリシーに基づき、画面提示制御を実行する。詳細は4.3節に後述する。
(4)リボケーション:アプリケーションのリボケーション機能を備える。
[4.2.2 受信機保護]
 受信機は、視聴者情報保護およびウィルス対策等の保護機能を備える。
[4.3 アプリケーションの画面提示制御]
[4.3.1 画面提示制御の概要]
 放送通信連携サービスでは、放送番組と同時に関連する通信アプリケーションを提示させることにより、放送サービスの利便性を拡張することができる。一方、通信サービスの利用により、受信機の画面上で放送番組と通信アプリケーションが混在して提示されることが想定される。提示方法によっては、放送番組に通信アプリケーションの画面が重なり、放送番組の一意性や作品性が損なわれるだけでなく、緊急地震速報などの緊急性の高い情報が正確に視聴者に伝えられなくなる恐れがある。画面提示制御により、放送通信連携サービスにおいて、放送事業者の意図に基づいたアプリケーションの提示制御を行う。
 図14は、画面提示制御方式の概念を示す図である。画面提示制御方式は、個々の放送番組に対して通信アプリケーションをどのように画面上に提示させるかという放送事業者の提示ポリシーを受信機に反映させることを意図したもので、これをコンテンツの提示制御と呼ぶこととする。コンテンツの提示制御では、編成に応じた番組単位の提示制御、緊急地震速報などの番組中に発生するイベントに対する提示制御、アプリケーション単位の提示制御を実現する。
[4.3.2 画面提示制御の基本動作]
 図15は、画面提示制御の基本動作モデルを示す図である。放送事業者の提示ポリシーを受信機に反映させるために、予め放送事業者が想定した、放送番組に対する通信コンテンツの提示方法を、提示ルールとして受信機で管理する。具体的には、通信コンテンツの提示方法として、重ね合わせの順序や並べ方の違いなどに応じてレベル分けを行い、提示レベル(ポリシーレベル)と提示方法のテーブルを提示ルールとして受信機内に保持する。放送事業者は指定する提示レベルを放送波に多重して伝送し、受信機はその提示レベルと提示ルールを照合し、提示方法を決定する。これにより、放送事業者の提示ポリシーに基づいた提示制御を実現することができる。
[4.3.3 制御情報の伝送・多重方式]
 放送事業者の提示ポリシーを伝送する制御情報のフォーマットに関して、デジタル放送で使用されている番組配列情報を用いる方式として3つの具体例を挙げる。番組単位での画面提示制御として、既存のEIT(イベント情報テーブル:Event Information Table)を用いる方式と、EITを拡張して用いる方式(EIT+)がある。また、サービス(チャンネル)単位での画面提示制御として、放送信号のAITを拡張して用いる方式がある。さらに、番組中にリアルタイムに発生する事象単位での画面提示制御として、番組配列情報以外の放送局から送出される情報を用いる方式がある。以下に、4つの方式の詳細を記載する。
(1)EITの番組ジャンル(EIT):既存のEITのコンテント記述子に記述される番組ジャンルからポリシーレベルを判断する。受信機はそのために、番組ジャンルとポリシーレベルの対応表を管理する。ARIB規格との関連は、ARIB STD-B10 
第2部 6.2.4、付録Hである。
 表4は、番組ジャンルとポリシーレベルの関係の具体例を示す表である。番組ジャンル(program_genre)は、大分類を表す「content_nibble_level1」(0x0~0xF)と、中分類を表す「content_nibble_level2」(0x0~0xF)の2段階で構成される。受信機で管理するテーブルは中分類のジャンルまで対象とし、それぞれポリシーレベルの値を定義する。
  [表4]
Figure JPOXMLDOC01-appb-I000004
(2)EITに新記述子追加(EIT+):EITのイベント情報セクションに新しい記述子を追加し、ポリシー情報を記述する。受信機は、この記述子を解釈し所望の処理を実行することで、番組単位でのポリシーレベルに応じた制御を実現する。ARIB規格との関連は、ARIB TR-B14(第二分冊) 第3部 31.3、ARIB STD-B10 第2編 5.2.7である。
 表5は、イベントセキュリティ記述子の構造を示す表である。EIT+の場合、図15に示すイベントセキュリティ記述子を新規に定義し、EIT内の記述子領域にこのイベントセキュリティ記述子を格納して伝送する。イベントセキュリティ記述子には、ポリシーレベル(policy_level)、アプリケーションID(application_identifier)、制御コード(application_control_code)、優先度(application_priority)、プロトコル識別(protocol_id)、番組関連フラグ(associated_application_flag)を設定する。
  [表5]
Figure JPOXMLDOC01-appb-I000005
 policy_levelは、番組単位でのポリシーレベルを表す。ポリシーレベルは、1~4の値とする。
 application_identifier()は、アプリケーションを識別するための識別子である。表6は、application_identifier()の構造を示す。
  [表6]
Figure JPOXMLDOC01-appb-I000006
 organization_idは、アプリケーションを作成した組織を表し、0x00000063以降の値をとる。application_idは、アプリケーションを識別する番号を表す。application_idは、組織識別内で一意に付与される。
 application_control_codeは、アプリケーション状態を制御する制御コードを規定する。表7は、制御コードの規定を示す。
  [表7]
Figure JPOXMLDOC01-appb-I000007
 application_priorityは、アプリケーション毎のポリシーレベルを示す。アプリケーション毎のポリシーレベルは、サービス内で告知されているアプリケーション間の相対的な優先度を示す。優先度は、1~4の値とする。
 protocol_idは、アプリケーションファイルを伝送するプロトコルを示す。表8は、protocol_idの規定を示す。
  [表8]
Figure JPOXMLDOC01-appb-I000008
 associated_application_flagは、番組に連動するアプリケーションであるか否かを示す。表9は、protocol_idの規定を示す。
  [表9]
Figure JPOXMLDOC01-appb-I000009
(3)AITのテーブル定義および新記述子の追加(AIT+):AITを拡張してポリシー情報を伝送する。受信機は、このテーブルを解釈し所望の処理を実行することで、随時発生するイベントに対してポリシーレベルに応じた制御を実現する。ARIB規格との関連は、ARIB STD-B23 第2部 10.16である。
 表10に、AITのデータ構造を示す。表10に示すAITは、ARIB STD-B23で規定されているAITのデータ構造を拡張したものである。AITには、ポリシーレベル、アプリケーションID、制御コードを記述する。なお、AITはセクション形式で送信され、イベント継続中は常時送信される。アプリケーションIDは、application_identifier()に記述し、制御コードはapplication_control_codeに記述する。
なお、これらの詳細は、(2)EITの拡張で記載したものと同様である。
 さらに、ポリシーレベルを記述するために、新たにセキュリティポリシー記述子を定義し、AITの共通記述子ループに格納して伝送する。
  [表10]
Figure JPOXMLDOC01-appb-I000010
 表11は、新たに定義するセキュリティポリシー記述子の構造を示す。
  [表11]
Figure JPOXMLDOC01-appb-I000011
(4)緊急警報放送および緊急地震速報(EWS/EEW):放送局から送出される緊急情報を用いてポリシーレベルを判断する。受信機においては予め緊急情報とポリシーレベルとの対応はなされているものとし、緊急警報放送であれば、TMCCの緊急警報放送用起動フラグを、緊急地震速報では文字スーパー管理パケットを監視することで、緊急情報の発生と終了が検知され、その際のポリシーレベルを判断することが可能になる。ARIB規格との関連は、ARIB STD-B31 3.15およびARIB STD-B24 第一編 第3部 第9章である。
 なお、上記の(1)~(4)のそれぞれの方式は並行して同時に送出することが可能である。したがって、どの方式で送られたものを優先させてポリシーレベルを決定するかを決めておく必要がある。優先順位は以下の通りである。
EWS/EEW> AIT+ > EIT+ > EIT
 受信機はこの優先順位に基づき、ポリシーレベルを判断することで、放送事業者の意図に基づいた、緊急時の事象を優先させた画面提示制御が可能となる。
[4.3.4 画面提示制御の例]
 図16は、ポリシーレベルに応じた画面提示制御の例を示す。
 番組のポリシーレベルが「1」の場合、公式アプリケーションのアプリケーション画面のアプリケーション画面および非公式アプリケーションのアプリケーション画面の双方とも、放送画面上への重ね合わせが許可される。
 番組のポリシーレベルが「2」の場合、公式アプリケーションのみが放送画面上への重ね合わせが許可され、非公式アプリケーションのアプリケーション画面については、放送画面上への重ね合わせは禁止され、放送画面の外側への表示のみが許可される。
 番組のポリシーレベルが「3」の場合、公式アプリケーションのアプリケーション画面、及び、非公式アプリケーションのアプリケーション画面とも表示が許可されるが、全てのアプリケーション画面について、放送画面上への重ね合わせは禁止され、放送画面の外側への表示のみが許可される。
 ポリシーレベルが「4」の場合、放送画面の全画面表示のみが許可される。
 図17は、緊急地震速報受信時の提示制御の例を示す。番組Aの番組ポリシーレベルが「1」である場合、番組Aの放送時間帯においては、公式アプリケーションのアプリケーション画面、非公式アプリケーションのアプリケーション画面とも放送画面上に重ね合わせて表示される。しかし、受信機は、番組Aの放送時間帯の中でも緊急地震速報が発生している時間帯におけるポリシーレベルは、緊急地震速報のポリシーレベル「4」であると判断する。そのため、受信機は、番組Aの放送時間帯であっても、緊急地震速報が発生している時間帯では、公式アプリケーションのアプリケーション画面、及び、非公式アプリケーションのアプリケーション画面とも、放送画面上への重ね合わせを禁止する。
[上述した放送通信連携システムの一例を適用した本発明の実施形態の説明]
 次に、図1に示す本発明の一実施形態を説明する。
 図18は、本発明の一実施形態による放送通信連携システムの全体構成図である。図18に示すように、本実施形態の放送通信連携システムは、放送局が保有する放送事業者装置1、サービス事業者が保有するサービス事業者サーバ群2、システム管理者が保有するリポジトリサーバ3、及び、視聴者が保有する受信機4を備えて構成される。図18においては、受信機4を1台のみ示しているが、現実には複数台の受信機4が設けられる。
 放送事業者装置1は、放送送出装置11及び放送局サーバ群12を備える。
 放送送出装置11は、図3に示す放送局設備に相当し、番組編成設備、番組送出設備、送信設備等から構成されるデジタル放送用の放送設備である。
 放送送出装置11は、放送関連データ管理部111、信号設定部112及び放送送出部113を備えて構成される。
 放送関連データ管理部111は、各番組の番組セキュリティポリシーデータ、公式アプリケーションのアプリケーションセキュリティーポリシーデータ、その他のポリシーデータなどを管理する。
 番組セキュリティポリシーデータは、番組のポリシーレベルを示すポリシーレベルデータ、番組にバウンドされたアプリケーションのアプリケーションID、番組にバウンドされたアプリケーションに対する制御コードなどを含む。
 アプリケーションセキュリティポリシーデータは、アプリケーションがバウンドされている番組を特定する情報や、アプリケーションのプロトコル識別、ロケーション情報などを含む。ロケーション情報は、アプリケーションの格納位置(格納場所)を示し、例えば、アプリケーションをダウンロード可能な受信機アプリサーバ21やリポジトリサーバ3のURLである。プロトコル識別は、アプリケーションが放送により伝送されたか、通信により伝送されたかを示す。
 なお、公式アプリケーションのみが番組にバウンドされる。
 ポリシーデータは、提示ルールデータとポリシーレベルテーブルを含む。
 提示ルールデータは、ポリシーレベル毎の提示方法を記述したデータである。提示方法は、画面表示方法と音声出力方法を含む。画面表示方法には、例えば、放送画面(番組の映像)のみ表示する、公式アプリケーション及び非公式アプリケーションともアプリケーション画面(アプリケーションの映像)を放送画面に重ねてあるいは放送画面の外に表示する、公式アプリケーションのアプリケーション画面のみ放送画面に重ねて表示し、非公式アプリケーションのアプリケーション画面は放送画面の外に表示する、などの方法がある。音声出力方法には、例えば、放送番組の音声のみを出力する、放送番組の音声と公式アプリケーションまたは非公式アプリケーションの音声を独立にあるいは混合して出力する、などの方法がある。
 ポリシーレベルテーブルは、番組のジャンルに対応したポリシーレベルや、各イベントのポリシーレベルを記述したデータである。イベントとは、例えば、緊急警報信号や緊急地震速報など、番組とは必ずしも連動して発生しない放送の内容である。
 信号設定部112は、放送送出部113が伝送する放送信号に各種データを設定する。
信号設定部112は、放送関連データ管理部111が管理している番組セキュリティポリシーデータやアプリケーションセキュリティーポリシーデータに基づいて、放送信号にAIT、番組のポリシーレベルデータを設定する。信号設定部112は、番組にバウンドされたアプリケーションのAITを独立したESとして放送信号(放送TS)に多重するか、データカルーセルに設定する。あるいは、信号設定部112は、番組にバウンドされたアプリケーションのAITと同等の情報をEITに設定する。また、信号設定部112は、番組のポリシーレベルデータをEIT(表5)、または、AIT(表11)に設定する。なお、番組のジャンルに対応するポリシーレベルを用いる場合には、ポリシーレベルデータを放送信号に設定しなくともよい。また、信号設定部112は、アプリケーションファイルをデータカルーセル等に設定する。また、信号設定部112は、放送関連データ管理部111が管理しているポリシーデータをセクション形式により放送信号に設定するか、エンジニアリングサービスあるいはデータカルーセルに設定する。
 放送送出部113は、デジタル放送の放送信号を伝送する。放送信号は、信号設定部112により設定された情報を含む。
 放送局サーバ群12は、図3に示す放送局サーバ群に相当し、コンテンツ管理サーバ13、コンテンツ配信サーバ16、放送局サービスサーバ17及び通知サーバ18を備えて構成される。
 コンテンツ管理サーバ13は、番組管理サーバ14及びメタデータ管理サーバ15を備えて構成される。番組管理サーバ14は、すでに放送された番組や放送される番組を管理する。メタデータ管理サーバ15は、各番組に関するメタデータを管理する。メタデータは、例えば、番組タイトル、番組ID、番組概要、出演者、放送日時、台本、字幕、解説のデータを含む。
 コンテンツ配信サーバ16は、インターネットなどの通信網9を介して受信機4と接続され、受信機4から要求されたコンテンツのコンテンツデータを配信する。
 放送局サービスサーバ17は、サービス事業者サーバ群2に放送局のサービスのコンテンツデータを送信する。放送局のサービスには、例えば、ソーシャルネットサービス、ブログサービス等がある。
 通知サーバ18は、通信網9を介して受信機4と接続され、放送送出装置11の放送関連データ管理部111から取得した番組セキュリティポリシーデータとアプリケーションセキュリティーポリシーデータとに基づいて、番組にバウンドされたアプリケーションのAIT(図6)及び番組のポリシーレベルデータを受信機4に配信する。また、通知サーバ18は、放送送出装置11の放送関連データ管理部111から取得したポリシーデータを受信機4に配信する。なお、これらの情報の全てまたは一部は、通知サーバ18からの配信を行なわず、放送送出装置11の放送送出部113が放送信号のみで伝送する場合もある。
 サービス事業者サーバ群2は、図3に示すサービス事業者サーバ群に相当し、受信機アプリサーバ21、サービスサーバ22、コンテンツ配信サーバ23及び通知サーバ24を備えて構成される。受信機アプリサーバ21、サービスサーバ22、コンテンツ配信サーバ23及び通知サーバ24は、通信網9を介して受信機4と接続される。
 受信機アプリサーバ21は、各アプリケーションを管理し、受信機4へアプリケーションファイルを配信する。
 サービスサーバ22は、例えば、多言語字幕サーバ、話速変換音声サーバ、ソーシャルTVサーバ、レコメンドサーバ、ブックマークサーバなどであり、受信機4から要求されたサービスのコンテンツデータを配信する。
 コンテンツ配信サーバ23は、例えば、VOD配信サーバ、字幕配信サーバ、マルチビュー配信サーバであり、受信機4から要求されたコンテンツのコンテンツデータを配信する。
 通知サーバ24は、アプリケーションのAIT(図6)を受信機4に送信する。なお、公式アプリケーションの場合、通知サーバ24は、放送送出装置11の放送関連データ管理部111から取得した番組セキュリティポリシーデータやアプリケーションセキュリティーポリシーデータに基づいたAIT(図6)を送信してもよい。
 リポジトリサーバ3は、図3に示すリポジトリに相当し、通信網9を介して受信機4と接続される。リポジトリサーバ3は、サービス事業者が生成したアプリケーションファイル(アプリケーションプログラム)に電子署名を行なうとともに、アプリケーションファイル(アプリケーションプログラム)の電子署名の認証に必要なデータを受信機4に送信する。また、リポジトリサーバ3は、公式アプリケーションの一覧を示すデータや、その公式アプリケーションのロケーション情報を受信機4に送信する。なお、リポジトリサーバ3が電子署名された公式アプリケーションのアプリケーションファイルを受信機4へ送信してもよく、受信機アプリサーバ21がリポジトリサーバ3から電子署名された公式アプリケーションのアプリケーションファイルを受信し、受信機4へ送信してもよい。また、リポジトリサーバ3は、公式アプリケーションのAITを受信機4に送信してもよい。
 また、リポジトリサーバ3は、放送送出装置11の放送関連データ管理部111から受信した番組セキュリティポリシーデータやアプリケーションセキュリティーポリシーデータに基づいて、番組にバウンドされた公式アプリケーションのAIT(図6)を受信機4に送信してもよい。
 受信機4は、図3に示す受信機に相当し、例えば、テレビ受像機、セットトップボックス、パーソナルコンピュータ、携帯端末等のデバイスである。
 図19は、受信機4の内部構成を示す機能ブロック図である。図19に示すように、受信機4は、放送受信部401、分離部402、時計403、第1同期用バッファ404-1、第2同期用バッファ404-2、第1デコーダ405-1、第2デコーダ405-2、データ放送実行部406、映像制御部407、映像表示部408、音声制御部409、音声出力部410、通信入出力部411、アプリケーション実行制御部412、提示制御部413、操作入力部414、選局部415、ローカル情報記憶部416及び外部I/F部417を備えて構成される。
 放送受信部401は、放送信号を受信するチューナである。放送信号は、無線放送信号及び有線放送信号またはいずれか一方である。無線放送信号は、放送局側の送信アンテナが送信した放送電波(地上波)や、衛星が中継する衛星波を、受信アンテナで受信することにより得られる信号である。有線放送信号は、光ケーブルや同軸ケーブル等を介して放送局側から伝送される信号である。放送受信部401は、放送信号を受信して復調し、放送ストリーム(TS)を出力する。
 分離部402は、デマルチプレクサであり、放送受信部401から供給された放送ストリームを、PCR(Program Clock Reference)、映像データ、音声データ、字幕データ、データ放送、PSI(Program Specific Information)/SI(Service Information)、独立エレメンタリストリーム(ES)で送信されたAITなどの各種データに分離する。なお、AITはデータ放送に含まれる場合や、AITと同様の内容がSIを構成するEITに設定される場合もある。また、分離部402は、放送信号からアプリケーションファイルを分離して出力する場合もある。
 通信入出力部411は、通信網9を介した通信によるデータの入出力を行う。通信入出力部411は、通信網9を経由して送信されたAITやアプリケーションファイルをアプリケーション実行制御部412に出力する。また、通信入出力部411は、通信網9を経由して送信された番組のポリシーレベルデータやポリシーデータを提示制御部413へ出力する。また、通信入出力部411は、アプリケーション実行制御部412により実行されるアプリケーションの指示に従って、コンテンツ配信サーバ16やコンテンツ配信サーバ23から配信されるコンテンツデータ、サービスサーバ22から配信されるコンテンツデータを通信網9を経由して受信し、第2同期用バッファ404-2に出力する。
 操作入力部414は、視聴者による操作を受け付けるインタフェースであり、例えば、リモートコントローラ、携帯電話、タブレット端末等から視聴者が入力した情報を受信する受信装置や、キーボード、マウスなどである。操作入力部414は、視聴者が入力したメディア(地上/BS)やチャンネルの選択指示を選局部415に出力する。また、操作入力部414は、放送通信連携サービスの開始や終了の指示、アプリケーションに対する指示をアプリケーション実行制御部412に出力する。
 選局部415は、操作入力部414に入力された操作に従って、放送受信部401において受信するメディアやチャンネルを制御する。
 データ放送実行部406は、デジタル放送信号により送信されたデータ放送アプリケーションを実行し、データ放送の画像(グラフィック)データを映像制御部407へ出力する。データ放送実行部406は、放送通信連携サービスのアプリケーションを起動するためのAPIを備える。データ放送実行部406がデータ放送アプリケーションを実行して、放送通信連携サービスのアプリケーションを起動するAPIが呼び出された場合、データ放送実行部406は、アプリケーションの起動をアプリケーション実行制御部412に指示する。また、データ放送実行部406は、データカルーセルによって送信されたAITやアプリケーションファイルをデータ放送から取得してアプリケーション実行制御部412に出力する。また、データ放送実行部406は、データカルーセルによって送信されたポリシーデータをデータ放送から取得して提示制御部413に出力する。
 アプリケーション実行制御部412は、放送通信連携サービスのアプリケーションを実行する。アプリケーション実行制御部412は、実行しているアプリケーションに従って、コンテンツ配信サーバ16、コンテンツ配信サーバ23、あるいは、サービスサーバ22から受信したコンテンツデータをデコードするように第2デコーダ405-2に指示する。コンテンツデータは、映像データ、音声データの一方または両方を含む。映像データは、例えば、動画、静止画、テキストデータなどである。また、アプリケーション実行制御部412は、実行しているアプリケーションに従って、映像制御部407にグラフィック(映像)データや映像制御指示を出力し、音声制御部409に音声データや音声制御指示を出力する。
 時計403は、タイマーカウンタ値を出力する。時計403は、PCRが示すタイマーカウンタ値により発振器の周波数を調整し、放送送信側と時刻を同期させる。
 第1同期用バッファ404-1は、分離部402から出力される映像データ、音声データ、字幕データを記憶する。映像データ、音声データ、字幕データのエレメンタリーストリーム(ES)から生成されたPES(Packetized Elementary Stream)は、放送ストリーム(TS)を構成するトランスポートパケット(Transport Packet)に分割されて設定される。PESのヘッダには、PTS(提示時刻情報:Presentation Time Stamp)が含まれる。第1同期用バッファ404-1は、分離部402から出力された映像データ、音声データ、字幕データを、第1デコーダ405-1の指示によりPESパケット単位で出力する。
 第2同期用バッファ404-2は、通信入出力部411が受信したコンテンツやサービスのコンテンツデータを記憶する。あるいは、第2同期用バッファ404-2は、操作入力部414により入力された視聴者の指示に従って、分離部402から出力される映像データ、音声データ、字幕データを記憶する。第2同期用バッファ404-2は、記憶しているコンテンツデータあるいは番組の映像データ、音声データ、字幕データを第2デコーダ405-2の指示によりPESパケット単位で出力する。
 第1デコーダ405-1は、時計403から出力された時刻に対応したPTSが設定されている第1同期用バッファ404-1内のPESパケットを特定し、特定したPESパケットからエンコードされた映像データ、音声データ、字幕データを読み出し、読み出したデータをデコードして出力する。
 第2デコーダ405-2は、時計403から出力された時刻に対応するPTSが設定されている第2同期用バッファ404-2内のコンテンツデータあるいは番組のPESパケットを特定し、特定したPESパケットからエンコードされた映像データ、音声データ、字幕データを読み出し、読み出したデータをデコードして出力する。
 提示制御部413は、選局されている番組のポリシーレベルあるいは発生中のイベントのポリシーレベルと、提示ルールデータとに従って提示方法(画面表示方法及び音声出力方法)を決定する。提示制御部413は、決定した画面表示方法により、放送画面、公式アプリケーションのアプリケーション画面、及び、非公式アプリケーションのアプリケーション画面を表示するよう映像制御部407に指示する。さらに、提示制御部413は、決定した音声出力方法により、放送の音声データによる音声、公式アプリケーションの音声データによる音声、及び、非公式アプリケーションの音声データによる音声を出力するよう音声制御部409に指示する。
 映像制御部407は、第1デコーダ405-1から出力された番組の映像データ及び字幕データに基づく放送画面と、第2デコーダ405-2から出力されたコンテンツデータの映像データに基づく公式アプリケーション、非公式アプリケーションのアプリケーション画面とを、提示制御部413またはアプリケーション実行制御部412から指示された画面表示方法に従って映像表示部408に表示させる。また、アプリケーション実行制御部412からアプリケーションの実行によりグラフィック(映像)データが出力される場合、映像制御部407は、提示制御部413またはアプリケーション実行制御部412から指示された画面表示方法に従って、その映像データに基づく表示画面を併せて映像表示部408に表示させる。なお、第2デコーダ405-2からは、他の番組の映像データ及び字幕データが出力される場合もある。
 映像表示部408は、一般的なディスプレイであり、放送およびアプリケーションの画面を表示する。例えば、映像表示部408は、番組の放送画面に、通信網9から受信したコンテンツデータの動画、静止画、テキストや、アプリケーションの実行によってアプリケーション実行制御部412から出力されたグラフィックなどのアプリケーション画面、または、他の番組の放送画面を合成した映像を表示する。
 音声制御部409は、第1デコーダ405-1から出力された番組の音声データに基づく音声と、第2デコーダ405-2から出力されたコンテンツデータの音声データに基づく公式アプリケーションや非公式アプリケーションの音声と、アプリケーションの実行によってアプリケーション実行制御部412から出力された音声データに基づく音声とを、提示制御部413またはアプリケーション実行制御部412より指示された音声出力方法に従って音声出力部410から出力させる。なお、第2デコーダ405-2からは、他の番組の音声データが出力される場合もある。音声出力部410は、一般的なスピーカーあり、放送およびアプリケーションの音声を出力する。
 ローカル情報記憶部416は、ユーザ情報などの各種データを記憶する。
 外部インタフェース部(以下、「外部I/F部」と記載する。)417は、LAN(Local Area Network)などのホームネットワークなどに接続される機器8との間でデータを送受信する。機器8は、受信機4と連携動作する端末であり、例えば、パーソナルコンピュータ、携帯電話、タブレット、スマートフォン、PDAである。
 なお、受信機4がセットトップボックスなどの場合、映像表示部408及び音声出力部410は、受信機4と接続される外部装置とする。
 図20は、アプリケーション実行制御部412の詳細な構成を示すブロック図である。
 図20に示すように、アプリケーション実行制御部412は、アプリケーション記憶部431、アプリケーション認証部432、アプリケーション管理部433、アプリケーション制御部434、アプリケーション実行部435、リソースアクセス制御部438及びリソース制御部439を備える。
 アプリケーション記憶部431は、通信入出力部411が通信網9を介して受信したアプリケーションファイル、あるいは、データ放送実行部406がデータ放送から取得したアプリケーションファイル、または、分離部402が放送信号から分離したアプリケーションファイルを記憶する。アプリケーションファイルは出荷時などに予めアプリケーション記憶部431に記憶されていてもよい。アプリケーション記憶部431は、主記憶装置及びディスク等の補助記憶装置からなり、例えば、アプリケーションファイルはディスクに記憶され、実行時に主記憶装置に読み出される。この場合、オンザフライで実行されるアプリケーションのアプリケーションファイルは、ディスクには記憶されずに主記憶装置のみに記憶され、実行が終了した場合は主記憶装置から削除される。
 アプリケーション認証部432は、リポジトリサーバ3から電子署名の認証に必要なデータを受信し、受信したデータを用いてアプリケーションファイル(アプリケーションプログラム)に付加された電子署名の検証を行う。例えば、アプリケーション認証部432は、リポジトリサーバ3から受信した公開鍵を用いて、電子署名されたアプリケーションファイルを復号する。その結果、所定のデータ列が得られた場合、アプリケーション認証部432は、電子署名の検証が成功したと判断する。アプリケーション認証部432は、電子署名の検証が成功した場合、公式アプリケーションであると判断し、電子署名の検証が不成功である場合、あるいは、電子署名が付加されていない場合、非公式アプリケーションであると判断する。
 アプリケーション管理部433は、アプリケーション実行部435によるアプリケーションの起動または停止の状態、起動しているアプリケーションの出力状況を管理する。出力状況とは、動作中のアプリケーションから画像や音声が出力されているか否かの情報である。アプリケーション管理部433は、提示制御部413からの問い合わせを受け、起動されているアプリケーションの出力状況や、起動されているアプリケーションが公式アプリケーションであるか非公式アプリケーションであるかの応答を返送する。
 アプリケーション制御部434は、番組にバウンドされているアプリケーションに対する制御コードや、操作入力部414により入力されたアプリケーションに対する指示に従って、アプリケーション実行部435におけるアプリケーションの起動や停止などを制御する。また、アプリケーション制御部434は、データ放送実行部406から起動が指示されたアプリケーションの起動をアプリケーション実行部435に指示する。アプリケーション制御部434は、操作入力部414からの入力に従ってチャンネルが変更される場合、変更前のチャンネルの番組にバウンドされているアプリケーションの終了と、変更後のチャンネルの番組にバウンドされているアプリケーションの起動をアプリケーション実行部435に指示する。なお、アプリケーション制御部434は、番組にバウンドされているアプリケーションや、バウンドされているアプリケーションに対する制御コードを、放送信号の独立ESもしくはデータ放送に含まれるAIT、放送信号のEITから得られるAITと同等の情報、または、通信入出力部411を介して通知サーバ18もしくは通知サーバ24から受信したAITから取得する。また、アプリケーション制御部434は、AITに設定されているロケーション情報を宛先としてアプリケーションファイルのダウンロード要求を送信する。受信機4からダウンロード要求を受信したリポジトリサーバ3、または、受信機アプリサーバ21は、アプリケーションファイルを受信機4に配信する。
 アプリケーション実行部435は、受信機API部436及び端末連携API部437を備える。アプリケーション実行部435は、アプリケーション制御部434からの指示に従って、起動が指示されたアプリケーションのアプリケーションプログラムをアプリケーション記憶部431から読み出して実行する。アプリケーション実行部435がアプリケーションプログラムを実行することにより、受信機4上でアプリケーションが動作し、アプリケーション実行部435は通信網9を経由してコンテンツをコンテンツ配信サーバ16やコンテンツ配信サーバ23に要求したり、サービスをサービスサーバ22に要求したりする。また、アプリケーションプログラムを実行することにより、アプリケーション実行部435は、映像制御部407へグラフィックデータや映像制御指示を出力したり、音声制御部409に音声データや音声制御指示を出力したりする。
 受信機API部436は、アプリケーション実行部435がアプリケーションを実行するにあたって受信機4内の各リソースを利用するためのAPIである受信機APIを実行する。受信機API部436が受信機APIを実行することにより、アプリケーション実行部435が実行しているアプリケーションプログラムから受信機4内のリソースが利用可能となる。
 端末連携API部437は、外部I/F部417により通信可能なホームネットワーク上の機器8や、通信網9を介して接続される機器が受信機4の機能を利用するためのAPIである端末連携APIを実行する。端末連携API部437が端末連携APIを実行することにより、ホームネットワークを介して接続される機器8や通信網9を介して接続される機器から受信機4内のリソースが利用可能となる。
 リソース制御部439は、受信機API部436や端末連携API部437から受信機4内のリソースである各機能部へのアクセスを制御する。
 リソースアクセス制御部438は、受信機API部436や端末連携API部437から受信機4内の各機能部へのアクセスを許可するか否かを制御する。リソースアクセス制御部438は、この制御を、受信機API部436や端末連携API部437が実行する各APIの呼び出し元であるアプリケーションが公式アプリケーションであるか非公式アプリケーションであるかに従って行なう。
 図21は、提示制御部413の詳細な構成を示すブロック図である。図21に示すように、提示制御部413は、ポリシーデータ管理部451、ポリシーデータ記憶部452、イベント解釈部453、ポリシーレベル照合部454、イベント制御部455、番組ポリシー記憶部456、ポリシー調停部457及びポリシーレベル記憶部458を備える。
 ポリシーデータ記憶部452は、提示ルールデータ及びポリシーレベルテーブルを含むポリシーデータを記憶する。ポリシーデータ管理部451は、ポリシーデータ記憶部452に記憶されるポリシーデータを管理する。ポリシーデータ管理部451は、ポリシーデータ記憶部452から読み出したポリシーレベルテーブルをポリシーレベル照合部454に出力し、ポリシーデータ記憶部452から読み出した提示ルールデータをポリシー調停部457に出力する。また、ポリシーデータ管理部451は、放送により送信されたポリシーデータを分離部402あるいはデータ放送実行部406から受信し、通信により送信されたポリシーデータを通信入出力部411から受信する。ポリシーデータ管理部451は、ポリシーデータ記憶部452に記憶されているポリシーデータを、放送または通信により送信されたポリシーデータにより更新する。
 イベント解釈部453は、放送受信部401が受信した放送信号や、分離部402が分離したデータ放送や字幕データを解析し、イベントの発生または終了を検出する。イベント解釈部453は、イベントの発生または終了を検出(解釈)すると、その検出したイベントのイベント番号と、発生または終了を示すステータスデータとをポリシーレベル照合部454に出力する。
 ポリシーレベル照合部454は、ポリシーレベルテーブルを参照して、EITにより示される各番組のジャンルに対応したポリシーレベルと、イベント番号により特定されるイベントに対応したポリシーレベルを決定(照合)する。ポリシーレベル照合部454は、分離部402から入力されたSIより取得した番組の放送開始時刻及び放送終了時刻のデータと、当該番組のポリシーレベル(以下、「番組ポリシーレベル」と記載する。)をイベント制御部455に出力する。なお、番組ポリシーレベルがEITに設定されている場合、ポリシーレベル照合部454は、番組の放送開始時刻及び放送終了時刻のデータと、EITから取得した当該番組の番組ポリシーレベルをイベント制御部455に出力する。
また、ポリシーレベル照合部454は、AITから番組ポリシーレベルを取得した場合、取得した番組ポリシーレベルをポリシー調停部457に出力する。また、ポリシーレベル照合部454は、イベント番号に対応して決定したポリシーレベル(以下、「トリガーポリシーレベル」と記載する。)をポリシー調停部457に出力する。
 番組ポリシー記憶部456は、番組開始時刻及び番組終了時刻と、番組ポリシーレベルを対応付けて記憶する。イベント制御部455は、ポリシーレベル照合部454から入力された番組開始時刻及び番組終了時刻のデータと、番組ポリシーレベルとを対応付けて番組ポリシー記憶部456に書き込み、番組ポリシー記憶部456に記憶されているこれらの情報を基に、表示制御を実行する時刻を管理する。イベント制御部455は、番組ポリシー記憶部456に記憶されている番組開始時刻のデータを参照し、実行時刻を通知すべき時刻となったことを検出した場合、実行時刻と、その実行時刻に対応した番組ポリシーレベルをポリシー調停部457に出力する。
 ポリシーレベル記憶部458は、ポリシー調停部457に入力された実行時刻及び番組ポリシーレベルと、トリガーポリシーレベル及びステータスデータを記憶する。ポリシー調停部457は、イベント制御部455から入力された実行時刻及び番組ポリシーレベルと、ポリシーレベル照合部454から入力されたトリガーポリシーレベルとからポリシーレベルを決定する。例えば、トリガーポリシーレベルをポリシーレベルとして決定してもよく、番組ポリシーレベルとトリガーポリシーレベルのうちより高いほうをポリシーレベルとして決定してもよい。
 なお、ポリシーレベル照合部454からAITにより取得した番組ポリシーレベルが入力された場合、ポリシー調停部457は、イベント制御部455から入力された番組ポリシーレベルよりも、ポリシーレベル照合部454から入力された番組ポリシーレベルを優先する。つまり、ポリシー調停部457は、AITより得られた番組ポリシーレベルと、トリガーポリシーレベルとからポリシーレベルを決定する。ポリシー調停部457は、提示ルールデータを参照し、決定したポリシーレベルと、アプリケーション管理部433から取得した動作中のアプリケーションが公式であるか否かの情報や出力状況から、画面表示方法及び音声出力方法(提示方法)を決定する。ポリシー調停部457は、決定した画面表示方法を映像制御部407に出力し、決定した音声出力方法を音声制御部409に出力する。
 以下、図1についてさらに説明する。
 図1において、放送受信部401は、放送信号を受信する。ここで、放送受信部401が受信する放送信号は、AITまたは拡張されたEITなどの各種データを含む。上述したように、AITは、受信機4が実行するアプリケーションの起動を指示する情報として用いられる。また、放送受信部401が受信する放送信号は、所定のパケットにポリシーを含む。
 ここでいう、「ポリシー」は、図24および図25A~図25Dを用いて後述するように、目的データへのアクセス可否の判定基準を示すデータである。このポリシーは、アクセス可否の判定基準を含み、当該判定基準と外部から入力されるデータとを比較し、比較結果に応じてデータへのアクセス可否を判定することを表すデータである。
 ポリシーを含めて送信する所定のパケットとしては、様々なものを用いることができる。例えば、AITおよびEITと異なるパケットにポリシーが含まれるようにしてもよいし、あるいは、AITまたはEITが拡張され、当該拡張されたAITまたは拡張されたEITにポリシーが含まれるようにしてもよい。ポリシーの送信方法については、例えば、DMSS-CCデータカルーセルが用いられる。
 分離部402は、放送受信部401が受信した放送信号から各種データを分離する。特に、分離部402は、放送信号からAITと拡張されたEITとを分離する。さらに、AITおよびEITと異なるパケットにポリシーが含まれる場合、分離部402は、当該ポリシーが含まれるパケットを放送信号から分離する。
 アプリケーション制御部434は、分離部402が分離するAIT、または、通信入出力部からの起動指示に基づいて、アプリケーション実行部435を制御する。特に、アプリケーション制御部434は、AITに基づいて、アプリケーション実行指令をアプリケーション実行部435に出力する。
 外部I/F部417は、端末装置と通信を行って、当該端末装置が受け付ける、ユーザの操作入力を取得する。特に、外部I/F部417は、ユーザ入力データを、端末装置から取得してアプリケーション実行装置435に出力する。また、外部I/F部417は、端末装置と通信を行ってユーザの識別情報を取得する。
 ここでいう「ユーザ入力データ」は、ユーザが端末装置を用いて入力するデータである。ユーザ入力データとしては、例えば、ユーザ名、性別、年齢などがある。例えば、端末装置は、アプリケーション実行装置435が実行するアプリケーションからの要求に応じて、ユーザによって入力されたこれらのデータを外部I/F部417に送信する。
 また、外部I/F部417が取得するユーザの識別情報は、端末装置を用いて受信機4にログインするユーザを識別する情報である。このユーザの識別情報は、ユーザによって端末装置に入力される。あるいは、端末装置の識別情報と、このユーザの識別情報とが対応付けられてローカル情報記憶部412が予め記憶しておいてもよい。
 アプリケーション記憶部431は、各種アプリケーションプログラムを記憶する。このアプリケーションプログラムは、例えば、放送信号のAITに記述された情報を基にして取得され、アプリケーション記憶部431に予め記憶されている。
 アプリケーション実行部435は、アプリケーション制御部434から出力されるアプリケーション起動指令に従って、アプリケーション記憶部431からアプリケーションプログラムを読み出して実行することで、アプリケーションを起動して実行する。
 そして、アプリケーション実行部435は、実行するアプリケーションの処理に応じて、ユーザに関連するデータの保存要求を、リソース制御部439に出力する。
 ここでいう「ユーザに関連するデータ」とは、受信機4のユーザの各々に関連する情報である。このユーザに関連するデータには、上述したユーザ入力データと、アプリケーションがユーザに対応付けて生成するデータとがある。アプリケーションがユーザに対応付けて生成するデータとしては、例えば、クイズ番組と同期して実行されるアプリケーションがユーザに対応付けて生成する、正解率情報や、クイズに正解して得られるポイントの情報などがある。
 アプリケーション実行部435は、端末に関連する情報を書き込む要求をした要求元を表す要求元情報と、ポリシーと、キー情報とを対応付けて、ユーザに関連するデータの保存要求に含めて、リソース制御部439に出力する。
 ここでいう「キー情報」とは、ユーザに関連するデータを読み出す際に検索キーとなる情報である。キー情報としては、例えば、ユーザの属性の項目を示す情報が用いられる。
ユーザの属性の項目を示す情報は、例えば、「氏名」、「性別」、「年齢」等の項目名である。また、例えば、ユーザに関連するデータが、アプリケーションがユーザに対応付けて生成するデータである場合、独自の項目名が用いられてもよい。
 また、要求元情報は、アプリケーションが保存要求をした場合には、当該アプリケーションの提供元の識別情報であり、一方、ユーザ入力を受けた端末装置が保存要求をした場合には、ユーザが要求元であることを示す値「own」である。
 また、アプリケーション実行部435は、放送信号に含まれるアプリケーション起動指令に従ってアプリケーションを起動し、リソース制御部439が読み出したデータを用いてアプリケーションを実行する。
 アプリケーション実行部435が実行するアプリケーションは、例えば、放送受信部401の受信する放送信号に関連して、放送信号から得られるデータに対する処理、あるいは、放送番組の内容に関連する処理を行う。この、放送信号に関連した処理には、放送番組の視聴に関連してアプリケーションが実行するサービスや、放送信号に含まれるメタデータに関連してアプリケーションが実行するサービスや、放送番組の内容に関連してアプリケーションが実行するサービスがある。
 放送番組の視聴に関連してアプリケーションが実行するサービスとして、例えば、番組の視聴に対する年齢制限がある。年齢制限のある番組の視聴に際して、アプリケーション実行部435の実行するアプリケーションは、目的データのうち、ユーザの年齢データに基づいて、ユーザが当該番組を視聴可能か否かを判定する。
 また、メタデータに関連してアプリケーションが実行するサービスとしては、例えば、データ放送で送信される情報のフィルタリングがある。受信機4がデータ放送を受信して各種情報を表示する際、アプリケーション実行部435が実行するアプリケーションは、目的データのうち、例えばユーザの住所情報に基づいて、その地域に関連した情報を選択し、映像表示部408(図19)に表示させる。
 また、放送番組の内容に関連してアプリケーションが実行するサービスとしては、例えば、テレビショッピングにおけるクレジットカード決済がある。テレビショッピングを視聴中のユーザが、受信機4を用いてオンラインでクレジットカード決済を行う際、アプリケーション実行部435が実行するアプリケーションは、目的データのうち、クレジットカード番号を読み出し、読み出したクレジットカード番号を含むクレジットカード決済要求情報を生成し、通信入出力部411を介して、ネットワーク上のクレジットカード決済サーバ装置に送信する。
 ログイン処理部461は、ユーザの操作に従って、当該ユーザのログインおよびログアウトを行う。
 ここでいう「ログイン」は、ローカル情報記憶部416の記憶するログインユーザ情報に、ユーザの識別情報を書き込む処理である。一方、「ログアウト」は、ローカル情報記憶部416の記憶するログインユーザ情報から、ユーザの識別情報を削除する処理である。また、ここでいう「ユーザの識別情報」は、ユーザを一意に識別する情報である。また、ここでいう「ログインユーザ情報」は、ログイン状態であることを示す情報と、ユーザの識別情報とが対応付けられた情報である。
 例えば、ローカル情報記憶部416が、ユーザによって入力された、ユーザの識別情報とパスワードとを対応付けて予め記憶しておく。そして、ログイン処理部461は、ログイン要求を示す操作入力を、ユーザの識別情報およびパスワードと共に端末装置から取得すると、ローカル情報記憶部416を参照してユーザ認証を行う。そして、ログイン処理部461は、端末装置から取得したユーザの識別情報およびパスワードと、ローカル情報記憶部416に記憶されたユーザの識別情報およびパスワードとが一致する場合に、認証が成立すると判定し、一致しない場合には、認証が成立しないと判定する。そして、認証が成立すると判定すると、ログイン処理部461は、端末装置から取得したユーザの識別情報を含むログインユーザ情報をローカル情報記憶部416に書き込む。また、ログイン処理部461は、ログアウト要求を示す操作入力を、ユーザの識別情報と共に端末装置から取得すると、端末装置から取得したユーザの識別情報を含むログインユーザ情報をローカル情報記憶部416から削除する。
 あるいは、各ユーザが端末装置を所持し、端末装置毎に当該端末装置を識別する端末装置識別情報が割り当てられている場合、ログイン処理部461が、パスワードではなく、この端末装置識別情報を用いてログインの認証を行うようにしてもよい。例えば、各ユーザが携帯電話機を所持し、この携帯電話機を端末装置として用いる場合、ローカル情報記憶部416は、ユーザの識別情報と、当該ユーザがログインに用いる携帯電話機のIMSI(International Mobile Subscriber Identity)とを対応付けて予め記憶しておく。このユーザの識別情報とIMSIとは、ユーザが、当該携帯電話機を用いてユーザの識別情報を登録することによって、対応付けられてローカル情報記憶部416に記憶される。
 そして、ログイン処理部461は、携帯電話機から、ログイン要求を示す操作入力を当該携帯電話機のIMSIと共に取得すると、ローカル情報記憶部416を参照してユーザ認証を行う。そして、ログイン処理部461は、携帯電話機から取得したIMSIと、ローカル情報記憶部416に記憶されたIMSIとが一致する場合に、認証が成立すると判定し、一致しない場合には、認証が成立しないと判定する。そして、認証が成立すると判定すると、ログイン処理部461は、携帯電話機から取得したIMSIに対応付けられたユーザの識別情報をローカル情報記憶部416から読み出し、当該ユーザの識別情報を含むログインユーザ情報をローカル情報記憶部に書き込む。また、ログイン処理部461は、携帯電話機から、ログアウト要求を示す操作入力を当該携帯電話機のIMSIと共に取得すると、携帯電話機から取得したIMSIに対応付けられたユーザの識別情報をローカル情報記憶部416から読み出して、当該ユーザの識別情報を含むログインユーザ情報をローカル情報記憶部416から削除する。
 なお、上述したIMSIに代えて、携帯電話機が有する通信インタフェースの物理アドレスを用いるようにしてもよい。
 上述したログインユーザ情報を参照することにより、受信機4は、ログイン状態にあるユーザを示すユーザの識別情報を特定可能となる。これによって、後述するように、アプリケーション実行部435が実行するアプリケーションは、ローカル情報記憶部416が記憶する、ユーザに関連するデータのうち、ログイン状態にあるユーザに対応付けられたものを取得しうる。そして、アプリケーション実行部435が実行するアプリケーションは、取得したユーザに関連するデータを用いて、ユーザ毎に個別のサービスを提供することができる。
 また、ローカル情報記憶部416は、端末装置を用いて受信機4にログインしている状態にあるユーザを示すユーザの識別情報を、上述したログインユーザ情報として記憶する。なお、この端末装置は、ユーザのログイン操作を受け付けて受信機4に出力する装置であればよく、受信機4と端末装置とが一体になっていてもよい。
 利用状態判定部464は、ログインユーザ情報に基づいて、利用状態情報を生成し、アクセス制御部462に出力する。ここでいう「利用状態情報」とは、ログイン状態にあるユーザに応じたユーザの識別情報を示す情報であり、ログインユーザ情報を参照して、ログイン状態にあるユーザが1人の場合(ログインユーザ情報から得られるユーザの識別情報が1つである場合)には、そのユーザの識別情報、または、ログイン状態にあるユーザが1人以外(0人または複数)である場合(ログインユーザ情報から得られるユーザの識別情報がない、あるいは複数である場合)には、ログイン状態にあるユーザが1人以外であることを示す情報(例えば、値「family」)である。
 リソース制御部439は、ログイン状態にあるユーザを示すユーザの識別情報と、ユーザに関連するデータと、キー情報と、要求元情報と、ポリシーとが対応付けられた、ユーザに関連するデータの保存要求を受けると、ユーザの識別情報と、ユーザに関連するデータと、キー情報と、要求元情報と、ポリシーとを対応付けて、ローカル情報記憶部416に書き込む。
 その際、リソース制御部439は、利用状態判定部464から、利用状態情報を取得し、この利用状態情報に応じて書き込む。例えば、リソース制御部439は、利用状態情報が1人のユーザの識別情報を示す場合、当該ユーザの識別情報と、ユーザに関連するデータと、キー情報と、要求元情報と、ポリシーとを対応付けて書き込む。一方、リソース制御部439は、利用状態情報が値「family」を示す場合、この値「family」と、ユーザに関連するデータと、キー情報と、要求元情報と、ポリシーとを対応付けて書き込む。
 また、リソース制御部439は、後述するポリシー判定部463がアクセスを許可した場合に、利用状態判定部464から出力される利用者状態情報に対応するデータをローカル情報記憶部416から読み出す。すなわち、利用者状態情報が1つのユーザの識別情報を示す場合は、当該ユーザの識別情報に対応付けられたデータをローカル情報記憶部416から読み出す。また、利用者状態情報が値「family」示す場合は、「family」に対応付けられた、ユーザに関連するデータをローカル情報記憶部416から読み出す。
 また、リソース制御部439は、アプリケーション実行部435から指定されるキー情報に基づいて、利用状態判定部464から出力される利用者状態情報と当該キー情報との両方に対応する、ユーザに関連するデータを、ローカル情報記憶部416から読み出す。
 ローカル情報記憶部416は、ユーザの識別情報と、当該ユーザに関連するデータと、データへのアクセス可否の判定基準を示すポリシーとを対応付けて記憶する(後述する)。
 また、ローカル情報記憶部416は、ユーザに関連するデータと、ユーザに関連するデータへのアクセス可否の判定基準を示すポリシーとに対して、さらに要求元情報を対応付けて記憶する。
 また、ローカル情報記憶部416は、1つのユーザの識別情報に対して、当該ユーザに関連するデータが複数対応付けられる場合には、ユーザに関連するデータと、当該ユーザに関連するデータへのアクセス可否の判定基準を示すポリシーと、要求元情報と、キー情報とを対応付けて記憶する。特に、ローカル情報記憶部416は、キー情報毎に対応して、ユーザに関連するデータを記憶する。
 アクセス制御部462は、リソース制御部439が行うデータアクセスを制御する。特に、アクセス制御部462は、ユーザに関連するデータの保存要求を受けると、利用状態判定部464から利用状態情報を取得してリソース制御部439に出力する。また、アクセス制御部462は、ユーザに関連するデータの取得要求受けると、利用状態判定部464から利用状態情報を取得してポリシー判定部463に出力する。
 ポリシー判定部463は、利用状態判定部464が生成する利用状態情報が示すユーザの識別情報に対応付けられたポリシーを、ローカル情報記憶部416から読み出し、読み出されたポリシーに基づいて、ユーザの識別情報に対応するデータへのアクセスを許可するか否かを判定する。
 より具体的には、ポリシー判定部463は、読み出したポリシーに基づき、読み出し要求に含まれる識別情報が示すユーザに関連するデータに対応付けられたデータ書込要求元情報と、読出要求を出力したアプリケーションの識別情報とを比較して、一致する場合にアクセスを許可すると判定する。
 また、ポリシー判定部は463、読み出したポリシーに基づき、読み出し要求に含まれる識別情報が示すユーザに関連するデータへのアクセスを許可するか否かを示す操作入力に従って、アクセスを許可するか否かを判定する。
 通信入出力部411は、アプリケーションの起動指示をアプリケーション制御部434に出力する。例えば、通信入出力部411は、通信網9を介してサーバ装置から送信されるアプリケーションの起動指示を受信して、アプリケーション制御部434に出力する。
 次に、本発明の一例においてローカル情報記憶部416の記憶するデータの構造、および、当該データにアクセスする際の受信機4の動作について説明する。
 図22は、ローカル情報記憶部416の記憶するユーザ関連情報のデータ構造を示すデータ構造図である。図22において、項目<usr>の値は、ユーザの識別情報を示す。ローカル情報記憶部416は、ユーザに関連する情報をユーザの識別情報と対応付けて記憶することで、ユーザ毎に、各ユーザに関連する情報を記憶する。
 ログイン状態にあるユーザの識別情報を示す。なお、項目<usr>の値「famly」は、ログイン状態にあるユーザを特定できない状態を示す。上述したように、ログイン状態にあるユーザを特定できない状態とは、例えば、ログイン状態にあるユーザがいない状態、および、ログイン状態にあるユーザが2人以上存在する場合である。
 また、項目<value>には、ユーザ名、性別、年齢など、項目<usr>の値によって識別されるユーザに関連するデータが格納される。以下、項目<value>に格納されているデータを「目的データ」と称する。アプリケーション実行部435は、この目的データを用いてサービスを提供する。
 また、項目<key>には、目的データを特定するためのキー情報が格納される。
 図22に示すように、ローカル情報記憶部416は、目的データを、項目<key>と対応付け、さらに、項目<usr>と対応付けて記憶している。すなわち、ローカル情報記憶部416は、目的データをユーザの識別情報と対応付けて記憶している。
 図23は、アプリケーション実行部435が、その実行するアプリケーションの処理に応じて目的データを取得する際の、受信機4の動作の例を示すシーケンス図である。
 まず、アプリケーション制御部434が、上述のAITを、分離部402または通信入出力部411から取得し(シーケンスS101)、当該AITに従って、「アプリ001」という名称のアプリケーションの起動指令を、アプリケーション実行部435に出力する(シーケンスS102)。そして、アプリケーション実行部435は、アプリケーション制御部434から出力された起動指令に従って、アプリ001を起動して実行する(シーケンスS103)。
 その後、アプリ001における処理に伴って、アプリケーション実行部435は、データ取得要求をアクセス制御部462に出力する(シーケンスS111)。このデータ取得要求は、目的データを要求する信号であり、要求する目的データを特定するための情報として、項目<key>を含む。図23の例では、アプリケーション実行部435は、項目<key>の値「name」をデータ取得要求に含めて出力している。この項目<key>の値「name」は、ローカル情報記憶部416の記憶するユーザ関連情報において、ユーザ名と対応付けられている。
 データ取得要求の出力を受けたアクセス制御部462は、まず、利用状態判定要求を利用状態判定部464に出力する(シーケンスS121)。利用状態判定要求とは、ログイン状態にあるユーザの識別番号を問い合わせる要求である。そして、利用状態判定部464は、当該利用状態判定要求に従って、利用状態情報をアクセス制御部462に出力する(シーケンスS122)。
 この利用状態情報は、ユーザのログイン状態を示す情報である。ここで、受信機4のユーザは、例えば、受信機4の使用開始時にログインし、受信機4の使用終了時にログアウトする。ユーザは、ログインすることによって、ユーザ毎に個別のサービスを受けることができる。ログイン状態にあるユーザが1人の場合は、利用状態情報は、当該ユーザを示すユーザの識別情報を含む。また、ログイン状態にあるユーザがいない場合または2人以上の場合、利用者状態情報は、不特定のユーザを示すユーザの識別情報「family」を含む。
 そして、利用状態判定部464は、利用状態判定要求の出力を受けると、ローカル情報記憶部416がログインユーザ情報を読み出す。ログインユーザ情報が示すユーザの識別情報が1つである場合、利用状態判定部464は、利用状態情報として当該識別情報を出力する。一方、ログインユーザ情報が示すユーザの識別情報がない場合、あるいは、ログインユーザ情報が示すユーザの識別情報が複数ある場合、利用状態判定部464は、値を「family」とする利用状態情報を出力する。この利用状態情報の値「family」は、上述した項目<usr>の値「famly」と同様、ログイン状態にあるユーザを特定できない状態を示す。
 図23に示す例では、1人のユーザがログイン状態になっており、利用状態判定部464は、当該ユーザの識別情報「usr001」をアクセス制御部462に出力している。
 次に、アクセス制御部462は、読出要求をリソース制御部439に出力する(シーケンスS131)。この読出要求は、目的データの読出を要求する信号であり、要求する目的データを特定するための情報として利用状態判定部464から取得した項目<usr>の値と、項目<key>の値とを含む。ここでは、アクセス制御部462は、項目<usr>の値として、利用状態情報の値「usr001」を含み、また、データ取得要求に含まれていた項目<key>の値「name」を含む読出要求を出力している。
 そして、リソース制御部439は、当該読出要求から項目<usr>の値と、項目<key>の値とを読み出し、これらの値に対応付けられている目的データを、ローカル情報記憶部416から読み出す(シーケンスS132)。ここでは、図22に示すように、ローカル情報記憶部416は、目的データ「山田花子」を、項目<usr>の値「usr001」および項目<key>の値「name」と対応付けて記憶している。そこで、リソース制御部439は、目的データ「山田花子」を読み出す。
 そして、リソース制御部439は、読み出した目的データを、アプリケーション実行部435に出力する(シーケンスS133)。
 以上により、アプリケーション実行部435は、外部I/F部417と通信可能なユーザの識別情報に対応付けられた目的データを取得する。ここで、利用状態判定部464がログイン状態にあるユーザを示すユーザの識別情報を取得して、利用状態情報を生成することで、受信機4を使用しているユーザが識別される。また、特定のユーザが受信機4を占有して利用しているか否かを判定することで、個々のユーザに関連するデータにアクセスするか、または受信機4の各ユーザに共通のデータにアクセスするかを制御することができる。従って、アプリケーション実行部435は、受信機4を使用しているユーザに応じたデータを取得することができ、当該データを用いて、受信機4を使用しているユーザに応じたサービスを提供することができる。
 例えば、アプリケーション実行部435がユーザ名「山田花子」を取得した場合、受信機4の具備する表示部が当該ユーザ名を表示することで、ユーザに、自らがログインしているか否かを確認させることができる。ここで、他のユーザがログイン状態にある場合、受信機4が、当該他のユーザの識別情報と対応付けて、ログイン状態にあるユーザに関連する目的データを記憶する誤登録のおそれがある。ユーザ自らがログインしているか否かを確認させることで、かかる誤登録を防止することができる。
 また、年齢制限のある番組の視聴に際して、アプリケーション実行部435が、ユーザの年齢データを取得し、アプリケーション実行部435の実行するアプリケーションが、当該データに基づいて、ユーザが当該番組を視聴可能か否かを判定することができる。
 また、受信機4が情報を表示する際に、受信機4を使用しているユーザに応じて情報をフィルタリングすることもできる。例えば、アプリケーション実行部435が、その実行するアプリケーションの処理において、受信機4の具備する表示画面に広告を表示させる際、アプリケーション実行部435は、図23で説明した方法で、受信機4を使用しているユーザの年齢データや性別データを取得する。そして、アプリケーション実行部435は、表示候補として取得する広告を、ユーザの年齢や性別に基づいてフィルタリングする。
 このように、受信機4が、当該受信機4を使用しているユーザに応じて情報をフィルタリングして提供することで、ユーザにとって有益な情報をより的確に提供し得る。
 なお、ローカル情報記憶部416の記憶するデータを更新する場合も、図23で説明したのと同様、アプリケーション実行部435は、データ取得要求に項目<key>を含めて出力し、リソース制御部439は、当該データ取得要求に含まれる項目<key>の値と、利用状態判定部464が出力する利用状態情報とに基づいて目的データを特定して、データを更新する。
 また、目的データを新たに保存する場合、アプリケーション実行部435は、目的データと、項目<key>とをデータ保存要求に含めて出力する。そして、リソース制御部439は、当該データ保存要求に含まれる項目<key>の値を読み出し、また、利用状態判定部464が出力する利用状態情報を、アクセス制御部462を介して取得する。そして、リソース制御部439は、目的データの値を、この項目<key>の値と、項目<usr>の値としての利用状態情報と対応付けて、ローカル情報記憶部416に書き込む。
 なお、目的データへのアクセスを要求するアプリケーション、あるいは、当該アプリケーションの提供元に応じて、利用可能なデータを制限するようにしてもよい。
 図24は、ローカル情報記憶部416の記憶するユーザ関連情報の、もう1つのデータ構造を示すデータ構造図である。図24に示すデータ構造では、図22で説明したデータ構造に加えて、項目<src>および項目<policy>が追加されている。
 項目<src>には、目的データへのアクセス要求元を示すデータが格納される。項目<src>の値「own」は、ユーザ自身が目的データの格納を要求したことを示す。その他、項目<src>には、目的データの格納を要求したアプリケーションの識別情報、あるいは、当該アプリケーションの提供者の識別情報などが格納される。
 また、項目<policy>には、ポリシーへのリンクとしてポリシー名が格納されている。
 例えば、ポリシーがAITに含まれて送信される場合、放送受信部401が放送信号を受信すると、分離部402が放送信号からAITを分離して、アプリケーション実行制御部412に出力する。そして、アプリケーション実行制御部412は、AITからポリシーを読み出して、ローカル情報記憶部416に書き込む。ポリシーが拡張されたEITに含まれて送信される場合も同様である。
 また、例えば、ポリシー判定部463が、ユーザの識別情報「usr001」と、キー情報「123456」とを出力して、ポリシーと、要求元情報とを要求すると、リソース制御部439は、「usr001」と「123456」とに対応したポリシー名「only_use_policy」に応じたポリシーと、要求元情報「アプリ101」とを、ローカル情報記憶部416から読み出してポリシー判定部463に出力する。
 また、例えば、アプリケーション実行部435が、キー情報「123456」と、アプリケーション提供者の識別情報「アプリ101」とを出力してデータの読出を要求し、ポリシー判定部463が、データの読み出しを許可すると、リソース制御部439は、キー情報「name」と、利用状態判定部464から出力されるユーザの識別情報「usr001」と、に応じた目的データ「山田花子」を、ローカル情報記憶部416から読み出してアプリケーション実行部435に出力する。
 図25A~図25Dは、ローカル情報記憶部416の記憶するポリシー情報のデータ構造を示すデータ構造図である。図25A~図25Dに示すように、ローカル情報記憶部416は、ポリシー名とポリシー本体とが対応付けられたポリシーを記憶している。ローカル情報記憶部416は、ポリシーとして、default_policyと、only_use_policyと、allow_all_policyと、src_or_popup_policyとを記憶している。
 図25Aに示すコードC11は、only_use_policyを示すコードである。
 このonly_use_policyは、目的データの登録を要求したアプリケーションと同一の提供者の提供するアプリケーションのみ、アクセス可能とするポリシーである。
 なお、only_use_Policyが、アプリケーションの登録者に換えてアプリケーションに基づいて判定を行い、目的データの登録を要求したアプリケーションと同一アプリケーションのみ、アクセス可能とするようにしてもよい。
 コードC11において、ポリシー名「only_use_policy」が、コード本体と対応付けられている。コード本体の変数「subject」には、目的データの取得を要求するアプリケーションの提供者の識別情報が格納される。また、変数「src」には、図24で説明した項目<src>に格納されている、目的データの格納を要求したアプリケーションの提供者の識別情報が格納される。
 ポリシー判定部463は、only_use_policyの実行において、目的データの取得を要求するアプリケーションの提供者の識別情報と、目的データの格納を要求したアプリケーションの提供者の識別情報とが一致する場合は、条件「subject =
 src」が満たされたと判定する。そして、ポリシー判定部463は、条件文「if ・・・ then ・・・ else ・・・」における「then」への分岐によって、アクセス可と回答するコード「allow_read」を実行する。これにより、ポリシー判定部463は、アクセス可を示す判定結果をアクセス制御部462に出力する。
 一方、目的データの取得を要求するアプリケーションの提供者の識別情報と、目的データの格納を要求したアプリケーションの提供者の識別情報とが一致しない場合、ポリシー判定部463は、条件「subject = src」が満たされないと判定する。そして、ポリシー判定部463は、条件文「if ・・・ then ・・・ else ・・・」における「else」への分岐によって、アクセス不可と回答するコード「deny_read」を実行する。これにより、ポリシー判定部463は、アクセス不可を示す判定結果をアクセス制御部462に出力する。
 図25Bに示すコードC12は、allow_all_policyを示すコードである。このallow_all_policyは、全てのアクセス要求元についてアクセス可とするポリシーである。
 コードC12において、ポリシー名「allow_all_policy」が、コード本体に対応付けられている。コード本体のコード「allow_read」によって、ポリシー判定部463は、アクセス可を示す判定結果をアクセス制御部462に出力する。
 図25Cに示すコードC13は、src_or_popup_policyを示すコードである。このsrc_or_popup_policyは、まず、アクセス要求元に応じてアクセス可否を判定し、アクセス不可と判定した場合は、目的データへのアクセスを許可するか否かをユーザに問い合わせるポリシーである。
 コードC13において、ポリシー名「src_or_popup_policy」が、コード本体に対応付けられている。コードC11の場合と同様、目的データの格納を要求したアプリケーションの提供者の識別情報とが一致する場合は、条件「subject = src」が満たされ、ポリシー判定部463は、アクセス可を示す判定結果をアクセス制御部462に出力する。
 一方、目的データの取得を要求するアプリケーションの提供者の識別情報と、目的データの格納を要求したアプリケーションの提供者の識別情報とが一致しない場合、ポリシー判定部463は、条件「subject = src」が満たされないと判定する。そして、ポリシー判定部463は、条件文「if ・・・ then ・・・ else if・・・」における「else if」への分岐によって、コード「popup-select」を実行する。このコード「popup-select」は、データへのアクセスを許可するか否かを問い合わせるポップアップウィンドウを端末装置に表示させて、ユーザの選択を取得するコードである。
 コード「popup-select」において、データへのアクセスを許可するユーザ選択を取得すると、ポリシー判定部463は、条件文「else if ・・・ then ・・・ else ・・・」における「then」への分岐によって、アクセス可を回答するコード「allow_read」を実行する。これにより、ポリシー判定部463は、アクセス可を示す判定結果をアクセス制御部462に出力する。
 一方、コード「popup-select」において、データへのアクセスを拒絶するユーザ選択をポリシー判定部463が取得すると、ポリシー判定部463は、条件文「else if ・・・ then ・・・ else ・・・」における「else」への分岐によって、アクセス不可を回答するコード「deny_read」を実行する。これにより、ポリシー判定部463は、アクセス不可を示す判定結果をアクセス制御部462に出力する。
 図25Dに示すコードC14は、default_policyを示すコードである。このdefault_policyは、目的データへのアクセスを許可するか否かをユーザに問い合わせるポリシーである。このdefault_policyの場合、ポリシー判定部463は、例えば目的データの可否を問い合わせるポップアップ画面を端末装置に表示させ、端末装置の受け付けるユーザの選択を取得して、当該ユーザの選択に従ってアクセス可否を判定する。
 コードC13で説明したように、コード「popup-select」は、データへのアクセスを許可するか否かを問い合わせるポップアップウィンドウを端末装置に表示させて、ユーザの選択を取得するコードである。
 コード「popup-select」において、データへのアクセスを許可するユーザ選択をポリシー判定部463が取得すると、ポリシー判定部463は、条件文「if ・・・ then ・・・ else ・・・」における「then」への分岐によって、アクセス可を回答するコード「allow_read」を実行する。これにより、ポリシー判定部463は、アクセス可を示す判定結果をアクセス制御部462に出力する。
 一方、コード「popup-select」において、データへのアクセスを拒絶するユーザ選択をポリシー判定部463が取得すると、ポリシー判定部463は、条件文「if ・・・ then ・・・ else ・・・」における「else」への分岐によって、アクセス不可を回答するコード「deny_read」を実行する。これにより、ポリシー判定部463は、アクセス不可を示す判定結果をアクセス制御部462に出力する。
 図26は、アプリケーション実行部435が、その実行するアプリケーションの処理に応じて目的データを取得する際に、ポリシー判定部463がポリシー判定を行う場合の、受信機4の動作の第1例を示すシーケンス図である。
 まず、アプリケーション制御部434が、上述のAITを、分離部402または通信入出力部411から取得し(シーケンスS201)、当該AITに従って、アプリ002という名称のアプリケーションの起動指令を、アプリケーション実行部435に出力する(シーケンスS202)。そして、アプリケーション実行部435は、アプリケーション制御部434から出力された起動指令に従って、アプリ002を起動して実行する(シーケンスS203)。
 その後、アプリ002における処理に伴って、アプリケーション実行部435は、データ取得要求をアクセス制御部462に出力する(シーケンスS211)。この場合のデータ取得要求は、要求する目的データを特定するための情報として、ステップS111(図23)の場合における、項目<key>に加えて、項目<subject>を含む。この項目<subject>には、アクセス要求元を示す情報が格納されている。ポリシー判定において、データ取得要求元に応じてアクセス可否を決定できるようにするためである。
 図26に示す例では、アプリケーション実行部435は、データ取得要求の項目<subject>にアプリ0002提供者の識別情報を格納し、項目<key>に値「name」を格納して出力している。
 データ取得要求の出力を受けたアクセス制御部462は、まず、利用状態判定要求を利用状態判定部464に出力する(シーケンスS221)。そして、利用状態判定部464は、当該利用状態判定要求に従って、利用状態情報をアクセス制御部462に出力する(シーケンスS222)。図26に示す例ではステップS122(図23)の場合と同様、利用状態判定部464は、ユーザの識別情報「usr001」をアクセス制御部462に出力している。
 次に、アクセス制御部462は、ポリシー判定要求をポリシー判定部463に出力する(シーケンスS231)。このポリシー判定要求は、ポリシー判定部463に対してポリシー判定を要求する信号であり、項目<subject>と、項目<usr>と、項目<key>とを含む。
 ポリシー判定要求の出力を受けたポリシー判定部463は、当該ポリシー判定要求から項目<usr>の値と、項目<key>の値とを読み出し、これらの値を含むポリシー読出要求をリソース制御部439に出力する(シーケンスS232)。このポリシー読出要求は、ローカル情報記憶部416の記憶するポリシーと、ポリシー判定に用いるための項目<src>の値との読出しを要求する信号であり、ポリシーを特定するための情報として、項目<usr>と、項目<key>とを含む。
 そして、リソース制御部439は、当該ポリシー読出要求から項目<usr>の値と、項目<key>の値とを読み出し、これらの値に対応付けられている項目<src>の値とポリシー名とを、ローカル情報記憶部416から読み出す。さらに、リソース制御部439は、読み出したポリシー名に対応付けられているポリシーを、ローカル情報記憶部416から読み出し(シーケンスS233)、読み出したポリシーと項目<src>の値とを、ポリシー判定部463に出力する(シーケンスS234)。図26に示す例では、リソース制御部439は、default_policyと、項目<src>の値「own」とを、ポリシー判定部463に出力している。
 次に、ポリシー判定部463は、リソース制御部439から出力されるポリシーに従ってアクセス可否を判定する(シーケンスS235)。ここでは、ポリシー判定部463は、default_policyに従って、端末装置に問合せのポップアップ画面を表示させ、端末装置が受け付ける選択操作に従って、アクセス可と判定している。そして、ポリシー判定部463は、判定結果をアクセス制御部462に出力する(シーケンスS236)。
 以下、シーケンスS241~S243は、図23のシーケンスS131~S133と同様である。なお、ポリシー判定部463がアクセス不可と判定した場合、アクセス制御部462は、目的データの取得を行わずに、アプリケーション実行部435にエラーコードを出力する。
 図27は、アプリケーション実行部435が、その実行するアプリケーションの処理に応じて目的データを書き込む際に、ポリシー判定部463がポリシー判定を行う場合の、受信機4の動作の例を示すシーケンス図である。
 まず、アプリケーション制御部434が、上述のAITを、分離部402または通信入出力部411から取得し(シーケンスS301)、当該AITに従って、アプリ003という名称のアプリケーションの起動指令を、アプリケーション実行部435に出力する(シーケンスS302)。そして、アプリケーション実行部435は、アプリケーション制御部434から出力された起動指令に従って、アプリ003を起動して実行する(シーケンスS303)。
 その後、アプリ003における処理に伴って、アプリケーション実行部435は、データ保存要求をアクセス制御部462に出力する(シーケンスS311)。このデータ保存要求は、目的データの保存を要求する信号であり、目的データと、当該目的データと対応付けて保存する項目<key>、<src>および<policy>とを含む。
 データ保存要求の出力を受けたアクセス制御部462は、まず、利用状態判定要求を利用状態判定部464に出力する(シーケンスS321)。そして、利用状態判定部464は、当該利用状態判定要求に従って、利用状態情報をアクセス制御部462に出力する(シーケンスS322)。図27に示す例では、利用状態判定部464は、受信機4を使用しているユーザを特定できない状態を示す値「family」をアクセス制御部462に出力している。
 次に、アクセス制御部462は、書込要求をリソース制御部439に出力する(シーケンスS331)。この書込要求は、目的データの書込を要求する信号であり、データ保存要求に含まれる、目的データ、ならびに、当該目的データと対応付けて保存する項目<key>、<src>および<policy>に加えて、利用状態判定部464から取得した値「family」を項目<usr>の値として含む。
 書込要求の出力を受けたリソース制御部439は、当該書込要求に含まれる目的データを各項目に対応付けて、ローカル情報記憶部416に書き込む(シーケンスS332)。
 図28は、シーケンスS332でリソース制御部439がデータを書き込んだ後の、ローカル情報記憶部416が記憶するユーザ関連情報の例を示す図である。図28に示すように、ローカル情報記憶部416は、書込要求に含まれる目的データを、項目<usr>、<key>、<src>および<policy>に対応付けて記憶している。
 データの書込を完了すると、リソース制御部439は、書込に成功したことを示す書込完了通知をアプリケーション実行部435に出力する(シーケンスS333)。
 図29は、アプリケーション実行部435が、その実行するアプリケーションの処理に応じて目的データを取得する際に、ポリシー判定部463がポリシー判定を行う場合の、受信機4の動作の第2例を示すシーケンス図である。
 まず、アプリケーション制御部434が、上述のAITを、分離部402または通信入出力部411から取得し(シーケンスS401)、当該AITに従って、アプリ004という名称のアプリケーションの起動指令を、アプリケーション実行部435に出力する(シーケンスS402)。そして、アプリケーション実行部435は、アプリケーション制御部434から出力された起動指令に従って、アプリ004を起動して実行する(シーケンスS403)。
 その後、アプリ002における処理に伴って、アプリケーション実行部435は、データ取得要求をアクセス制御部462に出力する(シーケンスS411)。図29に示す例では、アプリケーション実行部435は、データ取得要求の項目<subject>にアプリ0004提供者の識別情報を格納し、項目<key>に値「20984721」を格納して出力している。
 データ取得要求の出力を受けたアクセス制御部462は、まず、利用状態判定要求を利用状態判定部464に出力する(シーケンスS421)。そして、利用状態判定部464は、当該利用状態判定要求に従って、利用状態情報をアクセス制御部462に出力する(シーケンスS422)。図29に示す例ではステップS322(図27)の場合と同様、利用状態判定部464は、ユーザの識別情報「family」をアクセス制御部462に出力している。
 次に、アクセス制御部462は、ポリシー判定要求をポリシー判定部463に出力する(シーケンスS431)。ポリシー判定要求の出力を受けたポリシー判定部463は、当該ポリシー判定要求から項目<usr>の値と、項目<key>の値とを読み出し、これらの値を含むポリシー読出要求をリソース制御部439に出力する(シーケンスS432)。
 そして、リソース制御部439は、当該ポリシー読出要求から項目<usr>の値と、項目<key>の値とを読み出し、これらの値に対応付けられている項目<src>の値とポリシー名とを、ローカル情報記憶部416から読み出す。さらに、リソース制御部439は、読み出したポリシー名に対応付けられているポリシーを、ローカル情報記憶部416から読み出し(シーケンスS433)、読み出したポリシーと項目<src>の値とを、ポリシー判定部463に出力する(シーケンスS434)。図29に示す例では、リソース制御部439は、ony_use_policyと、項目<src>の値「family」とを、ポリシー判定部463に出力している。
 次に、ポリシー判定部463は、リソース制御部439から出力されるポリシーに従ってアクセス可否を判定する(シーケンスS435)。ここでは、ポリシー判定部463は、ony_use_policyに従って、ポリシー判定要求に含まれる項目<subject>の値と、リソース制御部439から出力される項目<src>の値とを比較し、両者が異なることから、アクセス不可と判定している。そして、ポリシー判定部463は、判定結果をアクセス制御部462に出力する(シーケンスS436)。
 アクセス不可の判定結果の出力を受けたアクセス制御部462は、ポリシーに基づいてアクセスを拒否されたことを示すエラーコードをアプリケーション実行部435に出力する(シーケンスS441)。
 このように、ポリシー判定部463がポリシー判定を行い、アクセス可と判定された場合のみリソース制御部439が目的データを読み出すことで、目的データにアクセス可能なアクセス要求元を制限することができ、ユーザのプライバシー保護を図ることができる。
 例えば、ローカル情報記憶部4が、クレジットカード番号を記憶しておく。そして、テレビショッピングの放送時など、ユーザがクレジット決済を行おうとする場合に、ユーザが許可するアプリケーションのみがクレジットカード番号を取得できるようにすることで、ユーザがクレジットカード番号を入力する手間を省き、かつ、クレジットカード番号の不正取得を防止し得る。
 以上説明したように、アプリケーション実行部435は、外部I/F部417と通信可能なユーザの識別情報に対応付けられた目的データを取得することで、受信機4を使用しているユーザに応じたデータを取得する。これにより、受信機4は、当該データを用いて、当該受信機4を使用しているユーザ毎に個別のサービスを提供することができる。
 また、ポリシー判定部463がポリシー判定を行い、アクセス可と判定された場合のみリソース制御部439が目的データを読み出すことで、受信機を使用しているユーザに関連するデータへのアクセスを管理してユーザのプライバシー保護を図ることができる。
 また、ローカル情報記憶部416は、目的データとポリシーとに対して、さらにアプリケーションの識別情報を対応付けて記憶し、ポリシー判定部463は、読み出したポリシーに基づき、目的データに対応付けられたアプリケーションの識別情報と、読出要求を出力したアプリケーションの識別情報とを比較して、一致する場合にアクセスを許可する。
 あるいは、ローカル情報記憶部416は、目的データとポリシーとに対して、さらにアプリケーションの提供元の識別情報を対応付けて記憶し、ポリシー判定部463は、読み出したポリシーに基づき、目的データに対応付けられたアプリケーションの提供元の識別情報と、読出要求を出力したアプリケーションの提供元の識別情報とを比較して、一致する場合にアクセスを許可する。
 これによって、受信機4が、アプリケーション毎、あるいは、アプリケーションを提供する事業者毎に、ユーザに関連するデータへのアクセスを許可するか否かを判定して、ユーザのプライバシー保護を図ることができる。
 また、ポリシー判定部463は、目的データへのアクセスを許可するか否を示す操作入力に従って、アクセスを許可するか否かを判定する。これによって、アクセスを許可するか否かの判定に際して、ユーザの意図を直接的に反映させることができる。
 また、ローカル情報記憶部416は、キー情報毎に対応してデータを記憶し、リソース制御部439は、アプリケーション実行部435から指定されるキー情報に基づいて、ユーザの識別情報とキー情報との両方に対応付けられた目的データを読み出す。これによって、リソース制御部439は、ローカル情報記憶部416が1つのユーザの識別情報に対応付けて複数記憶する目的データの中から、所望の目的データを読み出すことができる。
 上述した受信機4のアプリケーション実行制御部412及び提示制御部413は、内部にコンピュータシステムを有している。そして、受信機4のアプリケーション実行制御部412及び提示制御部413の動作の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータシステムが読み出して実行することによって、上記処理が行われる。ここでいうコンピュータシステムとは、CPU及び各種メモリやOS、周辺機器等のハードウェアを含む。
 また、「コンピュータ読み取り可能な記録媒体」とは、非一時的に記憶する機能を有する記憶装置のことをいう。例えば、磁気ディスク、光磁気ディスク、CD-ROM、DVD-ROM、半導体ディスク(SSD)、半導体メモリ等をいうが、必ずしもこれらに限定されるものではない。
 また、「記録媒体」とは、サーバやクライアントとなるコンピュータシステム内部の揮発性メモリのようにDRAMやSRAM等の揮発性媒体を含むが、必ずしもこれらに限定されるものではない。
 さらに「記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の受信・送信装置、転送装置のように、短時間プログラムを保持するものを含むが、必ずしもこれらに限定されるものではない。
 また、このコンピュータプログラムを放送や通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしてもよい。また上記プログラムは、上記処理の一部を実現するためのものであってもよく、さらに前述した処理をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
 本発明は、ユーザ毎に個別のサービスを提供しつつ、受信機を使用しているユーザに関連するデータへのアクセスを管理できる受信機、プログラム及び受信方法などに適用できる。
1…放送事業者装置
11…放送送出装置
111…放送関連データ管理部
112…信号設定部
113…放送送出部
12…放送局サーバ群
13…コンテンツ管理サーバ
14…番組管理サーバ
15…メタデータ管理サーバ
16…コンテンツ配信サーバ
17…放送局サービスサーバ
18…通知サーバ
2…サービス事業者サーバ群
21…受信機アプリサーバ
22…サービスサーバ
23…コンテンツ配信サーバ
24…通知サーバ
3…リポジトリサーバ
4…受信機
401…放送受信部
402…分離部
403…時計
404-1…第1同期用バッファ
404-2…第2同期用バッファ
405-1…第1デコーダ
405-2…第2デコーダ
406…データ放送実行部
407…映像制御部
408…映像表示部
409…音声制御部
410…音声出力部
411…通信入出力部
412…アプリケーション実行制御部
413…提示制御部
414…操作入力部
415…選局部
416…ローカル情報記憶部
417…外部I/F部
431…アプリケーション記憶部
432…アプリケーション認証部
433…アプリケーション管理部
434…アプリケーション制御部
435…アプリケーション実行部
436…受信機API部
437…端末連携API部
438…リソースアクセス制御部
439…リソース制御部
451…ポリシーデータ管理部
452…ポリシーデータ記憶部
453…イベント解釈部
454…ポリシーレベル照合部
455…イベント制御部
456…番組ポリシー記憶部
457…ポリシー調停部
458…ポリシーレベル記憶部
461…ログイン処理部
462…アクセス制御部
463…ポリシー判定部
464…利用状態判定部
9…通信網

Claims (6)

  1.  放送信号を受信する放送受信部と、
     ユーザの識別情報と、当該ユーザに関連するデータと、前記データへのアクセス可否の判定基準を示すポリシーとを対応付けて記憶する関連データ記憶部と、
     端末装置と通信を行ってユーザの識別情報を取得する通信部と、
     前記通信部が取得する前記ユーザの識別情報に基づいて、当該ユーザの識別情報に対応付けられた前記ポリシーを、前記関連データ記憶部から読み出し、読み出された前記ポリシーに基づいて、前記ユーザの識別情報に対応するデータへのアクセスを許可するか否かを判定するポリシー判定部と、
     前記アクセスが許可された場合に、前記ユーザの識別情報に対応するデータを前記関連データ記憶部から読み出すデータ読出部と、
     前記放送信号に含まれるアプリケーション起動指令に従ってアプリケーションを起動し、前記データ読出部が読み出したデータを用いてアプリケーションを実行するアプリケーション実行部と、
     を具備する受信機。
  2.  前記関連データ記憶部は、前記ユーザに関連するデータと、前記ユーザに関連するデータへのアクセス可否の判定基準を示すポリシーとに対して、さらにアプリケーションの識別情報を対応付けて記憶し、
     前記ポリシー判定部は、前記読み出したポリシーに基づき、前記識別情報が示すユーザに関連するデータに対応付けられたアプリケーションの識別情報と、前記読出要求を出力したアプリケーションの識別情報とを比較して、一致する場合にアクセスを許可する請求項1に記載の受信機。
  3.  前記ポリシー判定部は、前記読み出したポリシーに基づき、前記識別情報が示すユーザに関連するデータへのアクセスを許可するか否かを示す操作入力に従って、アクセスを許可するか否かを判定する請求項1に記載の受信機。
  4.  前記関連データ記憶部は、前記キー情報毎に対応してデータを記憶し、
     前記データ読出部は、前記アプリケーション実行部から指定されるキー情報に基づいて、前記ユーザの識別情報と当該キー情報との両方に対応する前記データを読み出す請求項1に記載の受信機。
  5.   受信機に用いられるコンピュータを、
     放送信号を受信する放送受信部、
     ユーザの識別情報と、当該ユーザに関連するデータと、前記データへのアクセス可否の判定基準を示すポリシーとを対応付けて記憶する関連データ記憶部、
     端末装置と通信を行ってユーザの識別情報を取得する通信部、
     前記通信部が取得する前記ユーザの識別情報に基づいて、当該ユーザの識別情報に対応付けられた前記ポリシーを、前記関連データ記憶部から読み出し、読み出された前記ポリシーに基づいて、前記ユーザの識別情報に対応するデータへのアクセスを許可するか否かを判定するポリシー判定部、
     前記アクセスが許可された場合に、前記ユーザの識別情報に対応するデータを前記関連データ記憶部から読み出すデータ読出部、
     前記放送信号に含まれるアプリケーション起動指令に従ってアプリケーションを起動し、前記データ読出部が読み出したデータを用いてアプリケーションを実行するアプリケーション実行部、
     として機能させるプログラム。
  6.  放送信号を受信し、
     ユーザの識別情報と、当該ユーザに関連するデータと、前記データへのアクセス可否の判定基準を示すポリシーとを対応付けて記憶し、
     端末装置と通信を行ってユーザの識別情報を取得し、
     取得した前記ユーザの識別情報に基づいて、当該ユーザの識別情報に対応付けられた前記ポリシーを読み出し、読み出された前記ポリシーに基づいて、前記ユーザの識別情報に対応するデータへのアクセスを許可するか否かを判定し、
     前記アクセスが許可された場合に、前記ユーザの識別情報に対応するデータを読み出し、
     前記放送信号に含まれるアプリケーション起動指令に従ってアプリケーションを起動し、読み出した前記データを用いてアプリケーションを実行する受信方法。
PCT/JP2012/062826 2011-05-20 2012-05-18 受信機、プログラム及び受信方法 WO2012161125A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP12789444.2A EP2712188A4 (en) 2011-05-20 2012-05-18 RECIPIENT, PROGRAM AND RECEIVER PROCEDURE
US14/118,262 US20140344846A1 (en) 2011-05-20 2012-05-18 Receiver, program and receiving method
JP2013516349A JP5986993B2 (ja) 2011-05-20 2012-05-18 受信機及びプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011-114051 2011-05-20
JP2011114051 2011-05-20

Publications (1)

Publication Number Publication Date
WO2012161125A1 true WO2012161125A1 (ja) 2012-11-29

Family

ID=47217202

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/062826 WO2012161125A1 (ja) 2011-05-20 2012-05-18 受信機、プログラム及び受信方法

Country Status (4)

Country Link
US (1) US20140344846A1 (ja)
EP (1) EP2712188A4 (ja)
JP (1) JP5986993B2 (ja)
WO (1) WO2012161125A1 (ja)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015056863A (ja) * 2013-09-13 2015-03-23 日本放送協会 配信システム、配信装置、受信装置およびそれらのプログラム
WO2015163158A1 (ja) * 2014-04-24 2015-10-29 シャープ株式会社 表示装置、及び表示方法
JP2016519809A (ja) * 2013-03-15 2016-07-07 マイクロソフト テクノロジー ライセンシング,エルエルシー ポリシーおよび許可プロファイルの管理
EP3041253A4 (en) * 2013-08-29 2016-08-17 Panasonic Ip Corp America TRANSMITTER, RECEIVER, TRANSMITTER AND RECEIVER
JP2017005595A (ja) * 2015-06-12 2017-01-05 日本テレビ放送網株式会社 視聴サービスシステム及び視聴サービス方法
JP2017527161A (ja) * 2014-07-30 2017-09-14 エントリクス カンパニー、リミテッド クラウドストリーミング基盤放送連動型サービスシステム、放送連動型サービスクライアント装置、トリガーコンテンツ提供サーバー及びこれを利用した方法
JP2017162481A (ja) * 2017-04-04 2017-09-14 Kddi株式会社 端末、アクセス制限方法およびプログラム
JP2018011329A (ja) * 2017-09-04 2018-01-18 日本放送協会 配信装置、およびそのプログラム
JP2018011330A (ja) * 2017-09-04 2018-01-18 日本放送協会 配信装置、受信装置、およびそれらのプログラム
JP2018078383A (ja) * 2016-11-07 2018-05-17 日本放送協会 端末装置及びプログラム
JP2018201219A (ja) * 2013-09-27 2018-12-20 日本放送協会 制御メッセージ生成装置、配信システム、受信装置およびそれらのプログラム
US10547912B2 (en) * 2013-12-05 2020-01-28 Sony Corporation Information processing apparatus, broadcast apparatus, and receiving method
JP2020188423A (ja) * 2019-05-17 2020-11-19 日本放送協会 放送通信連携サービスを実現する受信装置、端末装置及びプログラム

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5961164B2 (ja) * 2011-05-19 2016-08-02 日本放送協会 放送通信連携受信装置及びリソースアクセス制御プログラム
US9374620B2 (en) * 2011-10-21 2016-06-21 Sony Corporation Terminal apparatus, server apparatus, information processing method, program, and interlocked application feed system
FR2995489A1 (fr) * 2012-09-07 2014-03-14 France Telecom Procede et dispositif de suggestion d'applications
JP6109617B2 (ja) * 2013-03-26 2017-04-05 株式会社東芝 情報出力装置、情報操作装置、およびプログラム
JP6323753B2 (ja) 2013-06-14 2018-05-16 サン パテント トラスト 送信方法
CA2917324C (en) * 2013-08-28 2018-06-05 Lg Electronics Inc. Signal transmission device and method for controlling same
WO2016059681A1 (ja) * 2014-10-15 2016-04-21 日立マクセル株式会社 放送受信装置および放送受信方法ならびに放送受信プログラム
KR20160065504A (ko) * 2014-12-01 2016-06-09 엘지전자 주식회사 멀티미디어 디바이스 및 그 제어 방법
JP6403583B2 (ja) * 2015-01-21 2018-10-10 キヤノン株式会社 アップデートされたアプリケーションを配信する配信管理サーバーおよび配信管理方法
CN110225370B (zh) * 2016-01-18 2021-04-02 上海交通大学 一种多媒体内容个性化呈现的时间线控制方法
US10602338B2 (en) * 2017-07-25 2020-03-24 International Business Machines Corporation Emergency authorization to access data on proximate computing devices
US20200028879A1 (en) 2018-07-17 2020-01-23 Microsoft Technology Licensing, Llc Queryless device configuration determination-based techniques for mobile device management
US11184223B2 (en) * 2018-07-31 2021-11-23 Microsoft Technology Licensing, Llc Implementation of compliance settings by a mobile device for compliance with a configuration scenario

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003264748A (ja) * 2002-03-07 2003-09-19 Nec Corp デジタル放送受信機
JP2007135058A (ja) * 2005-11-11 2007-05-31 Nippon Hoso Kyokai <Nhk> コンテンツ提示制御装置及びそのプログラム、並びに、放送用コンテンツ配信装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006107168A1 (en) * 2005-04-08 2006-10-12 Electronics And Telecommunications Research Intitute Tool pack structure and contents execution device
WO2008016611A2 (en) * 2006-07-31 2008-02-07 United Video Properties, Inc. Systems and methods for providing media guidance planners
US20100229194A1 (en) * 2009-03-03 2010-09-09 Sony Corporation System and method for remote control based customization
US8761683B2 (en) * 2009-08-28 2014-06-24 Apple Inc. Electronic device instructions provided using radio signals
US20110072452A1 (en) * 2009-09-23 2011-03-24 Rovi Technologies Corporation Systems and methods for providing automatic parental control activation when a restricted user is detected within range of a device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003264748A (ja) * 2002-03-07 2003-09-19 Nec Corp デジタル放送受信機
JP2007135058A (ja) * 2005-11-11 2007-05-31 Nippon Hoso Kyokai <Nhk> コンテンツ提示制御装置及びそのプログラム、並びに、放送用コンテンツ配信装置

Non-Patent Citations (22)

* Cited by examiner, † Cited by third party
Title
"API for Media Resource 1.0", W3C WORKING DRAFT, 8 June 2010 (2010-06-08)
"ARIB STD-B24", vol. 1
"ARIB STD-B32"
"Data Coding and Transmission Specification for Digital Broadcasting", 16 December 2009, ARIB
"Device Description Repository Simple API", W3C RECOMMENDATION, 5 December 2008 (2008-12-05)
"File API", W3C WORKING DRAFT, 26 October 2010 (2010-10-26)
"Indexed Database API", W3C WORKING DRAFT, 19 August 2010 (2010-08-19)
"Permission for File API, System Information API", W3C WORKING DRAFT, 5 October 2010 (2010-10-05)
"System Information API", W3C WORKING DRAFT, 2 February 2010 (2010-02-02)
"W3C", 28 February 2011, article "Server-Sent Events"
"W3C", 28 February 2011, article "WebSocket API"
"Web Storage", W3C WORKING DRAFT, 8 February 2011 (2011-02-08)
ARIB STD-B10, vol. 2
ARIB STD-B23
ARIB STD-B24, vol. 1
ARIB STD-B31
ARIB TR-B14
ISO/IEC 10646, vol. 5, 6, 2003
KATO HISAKAZU: "R&D, No. 123", September 2010, NHK SCIENCE & TECHNICAL RESEARCH LABORATORIES, article "Toward the Construction of Hybridcast", pages: 56 - 63
TR-B14, vol. 3
TR-B15, vol. 3
YAMAMORI ET AL.: "Access Control Method for Terrestrial Digital Broadcasting and Mobile Communication Convergence", ITE TECHNICAL REPORT, vol. 30, no. 44, 14 September 2006 (2006-09-14), pages 67 - 72, XP008171653 *

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016519809A (ja) * 2013-03-15 2016-07-07 マイクロソフト テクノロジー ライセンシング,エルエルシー ポリシーおよび許可プロファイルの管理
US11765414B2 (en) 2013-08-29 2023-09-19 Panasonic Intellectual Property Corporation Of America Transmitting method, receiving method, transmitting apparatus, and receiving apparatus
EP3876550A1 (en) * 2013-08-29 2021-09-08 Panasonic Intellectual Property Corporation of America Transmission method, receiving method, transmission device, and receiving device
EP3041253A4 (en) * 2013-08-29 2016-08-17 Panasonic Ip Corp America TRANSMITTER, RECEIVER, TRANSMITTER AND RECEIVER
US11082733B2 (en) 2013-08-29 2021-08-03 Panasonic Intellectual Property Corporation Of America Transmitting method, receiving method, transmitting apparatus, and receiving apparatus
JP2015056863A (ja) * 2013-09-13 2015-03-23 日本放送協会 配信システム、配信装置、受信装置およびそれらのプログラム
JP2019062547A (ja) * 2013-09-27 2019-04-18 日本放送協会 制御メッセージ生成装置、配信システム、受信装置およびそれらのプログラム
JP2018201219A (ja) * 2013-09-27 2018-12-20 日本放送協会 制御メッセージ生成装置、配信システム、受信装置およびそれらのプログラム
US10547912B2 (en) * 2013-12-05 2020-01-28 Sony Corporation Information processing apparatus, broadcast apparatus, and receiving method
JP2015211289A (ja) * 2014-04-24 2015-11-24 シャープ株式会社 表示装置、及び表示方法
WO2015163158A1 (ja) * 2014-04-24 2015-10-29 シャープ株式会社 表示装置、及び表示方法
JP2017527161A (ja) * 2014-07-30 2017-09-14 エントリクス カンパニー、リミテッド クラウドストリーミング基盤放送連動型サービスシステム、放送連動型サービスクライアント装置、トリガーコンテンツ提供サーバー及びこれを利用した方法
JP2017005595A (ja) * 2015-06-12 2017-01-05 日本テレビ放送網株式会社 視聴サービスシステム及び視聴サービス方法
JP2018078383A (ja) * 2016-11-07 2018-05-17 日本放送協会 端末装置及びプログラム
JP2017162481A (ja) * 2017-04-04 2017-09-14 Kddi株式会社 端末、アクセス制限方法およびプログラム
JP2018011329A (ja) * 2017-09-04 2018-01-18 日本放送協会 配信装置、およびそのプログラム
JP2018011330A (ja) * 2017-09-04 2018-01-18 日本放送協会 配信装置、受信装置、およびそれらのプログラム
JP2020188423A (ja) * 2019-05-17 2020-11-19 日本放送協会 放送通信連携サービスを実現する受信装置、端末装置及びプログラム
JP7274930B2 (ja) 2019-05-17 2023-05-17 日本放送協会 放送通信連携サービスを実現する受信装置、端末装置及びプログラム

Also Published As

Publication number Publication date
JP5986993B2 (ja) 2016-09-06
EP2712188A1 (en) 2014-03-26
EP2712188A4 (en) 2015-03-11
US20140344846A1 (en) 2014-11-20
JPWO2012161125A1 (ja) 2014-07-31

Similar Documents

Publication Publication Date Title
JP5986993B2 (ja) 受信機及びプログラム
JP6271065B2 (ja) 受信機
WO2012161118A1 (ja) 端末連携システム、受信機及び受信方法
JP5965723B2 (ja) 受信機
JP2013009344A (ja) 受信機
JP5586657B2 (ja) 受信機
JP2013009333A (ja) 受信機及び端末連携システム
JP2012257232A (ja) 受信機およびプログラム
JP2013009343A (ja) 放送通信連携システム
WO2012157718A1 (ja) 受信機および受信方法
JP2013009332A (ja) 受信機
JP6018798B2 (ja) 受信機
JP5965722B2 (ja) 受信機
JP5957291B2 (ja) 受信機
WO2012157767A1 (ja) 受信機および受信方法
JP2012257228A (ja) 受信機
JP5953111B2 (ja) 受信機
JP2013009320A (ja) 受信機
JP5586658B2 (ja) 受信機
JP6037656B2 (ja) 受信機
JP6018797B2 (ja) 受信機
JP2013008355A (ja) 受信機
JP2013009342A (ja) 受信機
JP2012257229A (ja) 受信機
JP2013009322A (ja) 受信機及び放送送出装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12789444

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2013516349

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 14118262

Country of ref document: US

REEP Request for entry into the european phase

Ref document number: 2012789444

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2012789444

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE