(57)【要約】【課題】装置の起動時にアクセス不能なストレージに格納されたWidget（XMLとScriptで構成されたアプリケーション）を管理することが可能なアプリケーション動作制御装置を提供すること。【解決手段】本発明の一実施形態に係るアプリケーション動作制御装置は、XMLとScriptで構成されるアプリケーションを管理する管理手段と、前記管理手段を参照して、外部記憶媒体に格納されると共に少なくとも一時的にアクセス不能となっている第１のアプリケーションに対応したダミーアプリケーションを生成する生成手段と、前記管理手段により管理される、前記ダミーアプリケーション及びアクセス可能な第２のアプリケーションに基づく動作を制御する制御手段とを備えている。【選択図】図２
2010257316.tif 000002
【特許請求の範囲】
【請求項１】
XMLとScriptで構成されるアプリケーションを管理する管理手段と、
前記管理手段を参照して、外部記憶媒体に格納されると共に少なくとも一時的にアクセス不能となっている第１のアプリケーションに対応したダミーアプリケーションを生成する生成手段と、
前記管理手段により管理される、前記ダミーアプリケーション及びアクセス可能な第２のアプリケーションに基づく動作を制御する制御手段と、
を備えたことを特徴とするアプリケーション動作制御装置。
【請求項２】
前記生成手段は、前記外部記憶媒体がアクセス不能となった場合に、前記ダミーアプリケーションを生成すること
を特徴とする請求項１記載のアプリケーション動作制御装置。
【請求項３】
前記ダミーアプリケーションを第１の表示形式のグラフィックで表示するための表示情報を出力し、前記第２のアプリケーションを第２の表示形式のグラフィックで表示するための表示情報を出力するグラフィック処理手段を備えたことを特徴とする請求項１に記載のアプリケーション動作制御装置。
【請求項４】
少なくとも一時的にアクセス不能な前記外部記憶媒体に記憶された前記第１のアプリケーションに対応した前記ダミーアプリケーションに基づき前記第１のアプリケーションに対応したグラフィックを第１の表示形式で表示するための表示情報を出力し、アクセス可能な記憶媒体に記憶された前記第２のアプリケーションに基づき前記第２のアプリケーションに対応したグラフィックを前記第２の表示形式で表示するための表示情報を出力するグラフィック処理手段を備えたことを特徴とする請求項１に記載のアプリケーション動作制御装置。
【請求項５】
前記第１のアプリケーションへのアクセスが可能になった場合に、前記管理手段は、前記ダミーアプリケーションに替えて前記第１のアプリケーションを管理し、
グラフィック処理手段は、前記第１のアプリケーションに対応した前記第１の表示形式のグラフィックを前記第２の表示形式のグラフィックへ変更する、
ことを特徴とする請求項３に記載のアプリケーション動作制御装置。
【請求項６】
前記外部記憶媒体との接続状態を監視する監視手段と、
前記監視手段により前記外部記憶媒体との接続が検出され、前記第１のアプリケーションへのアクセスが可能になった場合に、前記管理手段は、前記ダミーアプリケーションに替えて前記第１のアプリケーションを管理し、
グラフィック処理手段は、前記第１のアプリケーションに対応した前記第１の表示形式のグラフィックを前記第２の表示形式のグラフィックへ変更する、
ことを特徴とする請求項４に記載のアプリケーション動作制御装置。
【請求項７】
前記第１のアプリケーションへのアクセスが不能になった場合に、前記管理手段は、前記第１のアプリケーションに替えて前記ダミーアプリケーションを管理し、
グラフィック処理手段は、前記第１のアプリケーションに対応した前記第２の表示形式のグラフィックを前記第１の表示形式のグラフィックへ変更する、
ことを特徴とする請求項５に記載のアプリケーション動作制御装置。
【請求項８】
前記制御手段は、前記第１の表示形式のグラフィックを介した前記第１のアプリケーションの選択に対応して前記ダミーアプリケーションに基づくエラー処理を実行することを特徴とする請求項３に記載のアプリケーション動作制御装置。
【請求項９】
前記制御手段は、前記第２の表示形式のグラフィックを介した前記第１のアプリケーションの選択に対応して前記第１のアプリケーションに基づく動作を実行することを特徴とする請求項５に記載のアプリケーション動作制御装置。
【請求項１０】
XMLとScriptで構成されるアプリケーションを管理するデータベースを作成し、
前記データベースを参照して、外部記憶媒体に格納されると共に少なくとも一時的にアクセス不能となっている第１のアプリケーションに対応したダミーアプリケーションを生成し、
前記データベースで管理される、前記ダミーアプリケーション及びアクセス可能な第２のアプリケーションに基づく動作を制御する、
ことを特徴とするアプリケーション動作制御方法。
【請求項１１】
放送信号を受信する放送受信手段と、
アプリケーションの動作を制御するアプリケーション動作制御手段と、
前記放送受信手段により受信された前記放送信号に対応した放送コンテンツ、及び前記アプリケーション動作制御手段により制御されるアプリケーションに対応したアプリケーションコンテンツを出力する出力手段と、
を備え、
さらに、前記アプリケーション動作制御手段は、
XMLとScriptで構成されるアプリケーションを管理する管理手段と、
前記管理手段を参照して、外部記憶媒体に格納されると共に少なくとも一時的にアクセス不能となっている第１のアプリケーションに対応したダミーアプリケーションを生成する生成手段と、
前記管理手段により管理される、前記ダミーアプリケーション及びアクセス可能な第２のアプリケーションに基づく動作を制御する制御手段と、
を備えたことを特徴とする放送受信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、XMLとScriptなどで構成されたWidgetと呼ばれるアプリケーションの動作を制御するアプリケーション動作制御装置に関する。
【背景技術】
【０００２】
近年、XMLとScriptなどで構成されたWidgetと呼ばれるインターネットにアクセス可能な小規模アプリケーションに注目が集まっている。Widgetの開発には、Java（登録商標）Script、XML、HTML、又はadobe Flash（登録商標）を利用することができる。また、Widgetは、デジタルテレビ等へ適用することができる。これにより、デジタルテレビ等でWidgetを利用し、ニュース、天気予報、又は株式情報等を視ることができる。このようなWidgetの描画制御に関する技術が開示されている（特許文献１参照）。
【０００３】
Widgetに関する技術として、Widgetを動かすためのWidget Platform (Widget Channel)が知られている。このWidget Platformは、CE機器に搭載されることを前提に作成されており、以下のような特徴を持っている。
【０００４】
（１）Widget Platformは、CE機器が本来表示する情報（例：TV画面）を邪魔しないように、画面の端などにWidgetのGUI（グラフィカルユーザインターフェイス）を表示する。
【０００５】
（２）Widget Platformは、リモートコントローラ等の最小限のキー（十字キーとOKキーとその他いくつかの特殊キー）の操作に対応して、Widgetを制御する。
【０００６】
（３）Widget Platformは、インターネット上のサーバからWidgetをダウンロードする。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００２−２９７２７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、Widget Platformは、上記したようにCE機器に搭載されることを前提に作成されているため、以下がウィークポイントになっている。
【０００９】
（１）外部ストレージにWidgetが格納されるケースを想定していない。
【００１０】
（２）内部に保管されたデータベースを元に、ユーザが利用するWidgetのリストを作成する。
【００１１】
（３）のデータベースは、初回起動時や初期設定に作成される。このデータベースにはWidgetの表示順序も含まれる。つまり、Widget Platformは、装置の起動時にアクセス可能なストレージからWidgetを探し出す。そして、Widget Platformは、探し出したWidgetのリストを作成する。このため、装置の再起動無しで、Widget Platformが、リストを更新することは難しい。
【００１２】
なお、特許文献１に開示された技術でも、上記したウィークポイントを解決することは難しいと考えられる。例えば、特許文献１に開示された技術では、現在アクセス不能なストレージに記憶されたWidgetのGUI等を描画することは難しいと考えられる。
【００１３】
本発明の目的は、装置の起動時にアクセス不能なストレージに格納されたWidget（XMLとScriptで構成されたアプリケーション）を管理することが可能なアプリケーション動作制御装置、アプリケーション動作制御方法、アプリケーション動作制御プログラム、及び放送受信装置を提供することにある。
【課題を解決するための手段】
【００１４】
本発明の一実施形態に係るアプリケーション動作制御装置は、XMLとScriptで構成されるアプリケーションを管理する管理手段と、前記管理手段を参照して、外部記憶媒体に格納されると共に少なくとも一時的にアクセス不能となっている第１のアプリケーションに対応したダミーアプリケーションを生成する生成手段と、前記管理手段により管理される、前記ダミーアプリケーション及びアクセス可能な第２のアプリケーションに基づく動作を制御する制御手段とを備えている。
【００１５】
本発明の一実施形態に係るアプリケーション動作制御方法は、XMLとScriptで構成されるアプリケーションを管理するデータベースを作成し、前記データベースを参照して、外部記憶媒体に格納されると共に少なくとも一時的にアクセス不能となっている第１のアプリケーションに対応したダミーアプリケーションを生成し、前記データベースで管理される、前記ダミーアプリケーション及びアクセス可能な第２のアプリケーションに基づく動作を制御する。
【００１６】
本発明の一実施形態に係る放送受信装置は、放送信号を受信する放送受信手段と、アプリケーションの動作を制御するアプリケーション動作制御手段（Widget Platform 11）と、前記放送受信手段により受信された前記放送信号に対応した放送コンテンツ、及び前記アプリケーション動作制御手段により制御されるアプリケーションに対応したアプリケーションコンテンツを出力する出力手段（Display 15, Speaker 16）とを備え、さらに、前記アプリケーション動作制御手段は、XMLとScriptで構成されるアプリケーションを管理する管理手段と、前記管理手段を参照して、外部記憶媒体に格納されると共に少なくとも一時的にアクセス不能となっている第１のアプリケーション（Game）に対応したダミーアプリケーション（Dummy Widget 1114）を生成する生成手段（Dummy Widget Creator 1123）と、前記管理手段により管理される、前記ダミーアプリケーション及びアクセス可能な第２のアプリケーション（Weather 1111, News 1112, …）に基づく動作を制御する制御手段（Platform Layer 112）と、を備える。
【発明の効果】
【００１７】
本発明によれば、装置の起動時にアクセス不能なストレージに格納されたWidget（XMLとScriptで構成されたアプリケーション）を管理することが可能なアプリケーション動作制御装置、アプリケーション動作制御方法、アプリケーション動作制御プログラム、及び放送受信装置を提供できる。
【図面の簡単な説明】
【００１８】
【図１】本発明の一実施形態に係るWidget Platformを搭載したＴＶ（放送受信装置）の概略構成を示す図である。
【図２】本発明の一実施形態に係るWidget Platformの概略構成を示す図である。
【図３】図１のＴＶに接続可能な外部ストレージ（ＵＳＢ−ＨＤＤ）の一例を示す図である。
【図４】各ストレージに格納されたWidgetに関する情報を管理するためのデータベースの一例を示す図である。
【図５】アクセス可能な外部Pathに属するGame WidgetのGUIを含む各WidgetのGUIの表示例を示す図である。
【図６】アクセス不能な外部Pathに属するGame WidgetのGUIを含む各WidgetのGUIの表示例を示す図である。
【図７】起動処理の一例を示すフローチャートである。
【図８】切断処理の一例を示すフローチャートである。
【図９】接続処理の一例を示すフローチャートである。
【図１０】従来のWidget PlatformによるGUI表示例及び本発明の一実施形態に係るWidget PlatformによるGUI表示例を示す図である。
【図１１】Dummy Widgetの情報（Dummy WidgetのGUI）を表示しないケースの一例を示す図である。
【図１２】Dummy WidgetのGUIが選択された時のエラーメッセージの表示例を示す図である。
【発明を実施するための形態】
【００１９】
以下、図面を参照し、本発明の実施形態について説明する。
【００２０】
Widget Platformを搭載する機器は、Widgetを格納するための不揮発な内部メモリを保持することが義務付けられている。しかし、Widget Platformを搭載する機器は、CE機器であることが多い。コスト的な観点から安価なCE機器は、小容量のメモリしか搭載していないことがある。これに対して、Widgetに対しては容量的な制約は定められておらず、大容量のWidgetが出荷される可能性は低くない。
【００２１】
このため、Widget Platformは、USB-HDDなどの外部ストレージにWidgetが格納されるケースもサポートする必要がある。しかしながら、従来のWidget Platformは、USB-HDDなどの外部ストレージにWidgetが格納されるケースを十分にサポートしていない。そのため、従来のWidget Platformは、以下がウィークポイントになっている。
【００２２】
（１）Widget Platformは、ストレージに格納されたWidgetの情報を取得できるタイミングが、機器の起動時又はログイン時のみである。よって、Widget Platformは、機器の起動時又はログイン時に存在を確認することができないWidgetを実行できない。つまり、Widget Platformは、機器の起動時又はログイン時にアクセスすることができないWidgetを実行できない。また、Widget Platformは、途中で存在しなくなったWidgetを実行しようとしてエラーを起こしてしまうこともある。
【００２３】
（２）Widget Platformは、外部ストレージに格納されたWidgetであることを管理していない。つまり、Widget Platformは、Widgetの格納先が外部ストレージなのか内部ストレージなのかを管理していない。
【００２４】
上記した従来のWidget Platformに対して、本発明の一実施形態に係るWidget Platform（アプリケーション動作制御装置）は、起動時にアクセス不能なWidget（アプリケーション）に対応したDummy Widget（ダミーアプリケーション）を作成する。例えば、Widget Platformは、過去のアクセス履歴に基づき各Widgetのデータベースを生成し、このデータベースに基づき、起動時にアクセス不能な外部ストレージに格納されたWidgetに対応したDummy Widgetを作成する。これにより、Widget Platformは、リスト上で、アクセス不能なWidgetをDummy Widgetとして管理することができる。
【００２５】
さらに、本発明の一実施形態に係るWidget Platformは、外部ストレージの接続検出に基づき、この接続検出をトリガとしてDummy Widgetを実際のWidgetへ置き換える。つまり、Widget Platformは、外部ストレージの接続検出に基づき、外部ストレージの中から、Dummy Widgetに対応する実際のWidgetを検索する。Widget Platformは、外部ストレージの中から、Dummy Widgetに対応する実際のWidgetを見つけると、Dummy Widgetを実際のWidgetへ置き換える。
【００２６】
さらに、本発明の一実施形態に係るWidget Platformは、外部ストレージの切断検出及び過去のアクセス履歴に基づき、実際のWidgetをDummy Widgetへ置き換える。
【００２７】
さらに、本発明の一実施形態に係るWidget Platformは、取り外し可能な外部ストレージに格納された外部WidgetのGUIと取り外し不能な内部ストレージに格納された内部WidgetのGUIとを異なるデザインにする。例えば、外部WidgetのGUIの外枠又は背景色と内部WidgetのGUIの外枠又は背景色とを異なるものにする。さらに、Widget Platformは、接続中の外部ストレージに格納された接続中外部WidgetのGUIと切断中の外部ストレージに格納された切断中外部WidgetのGUIとを異なるデザインにする。
【００２８】
以上により、ユーザは、GUIを見ただけで、このGUIに対応するWidgetが内部Widgetなのか外部Widgetなのかを簡単に認識することができる。また、ユーザは、GUIを見ただけで、このGUIに対応するWidgetが接続中外部Widgetなのか切断中外部Widgetなのかを簡単に認識することができる。
【００２９】
以下、上記概要説明した本発明の一実施形態に係るWidget Platform（通称、Widget Channel）の詳細、及びこのWidget Platformを搭載したＴＶについて説明する。
【００３０】
図１は、本発明の一実施形態に係るWidget Platformを搭載したＴＶ（放送受信装置）の概略構成を示す図である。図１に示すように、ＴＶ１は、Widget Platform１１、ＵＳＢ１２、ＨＤＤ（内部ストレージ）１３、ＣＰＵ１４、ディスプレイ１５、スピーカ１６、イーサネット（登録商標）１７、放送受信モジュール１８を備えている。
【００３１】
Widget Platform１１の概要については上記説明した通りである。ＵＳＢ１２は、例えば図３に示すようなUSB-HDD（外部ストレージ）２と接続するためのバスである。ＨＤＤ１３は、例えば内蔵ＨＤＤである。例えば、ＨＤＤ１３は、図４に示すデータベースと、３つのWidget（Weather Widget１１１１、News Widget１１１２、Setting Widget１１１３）の実体、及びDummy Widget １１１４を格納する。ＣＰＵ１４は、Widget Platform１１と協同してWidgetの動作を制御したり、放送受信モジュール１８による放送の受信、及び受信放送の映像音声出力等を制御したりする。ディスプレイ１５は、受信放送の映像を表示したり、WidgetのGUIを表示したり、Widgetにより提供可能な情報（ニュース、天気予報など）を表示したりする。スピーカ１６は、受信放送の音声を出力する。イーサネット１７は、Widget Platform１１等の制御に基づき、Widget等をダウンロードする。放送受信モジュール１８は、放送信号を受信し、放送信号に対応した放送コンテンツ（映像、音声）をディスプレイ１５及びスピーカ１６へ出力したり、放送コンテンツを録画するためにＨＤＤ１３へ出力したりする。
【００３２】
続いて、以下の４つの仕組みについて説明する。
【００３３】
（１）Widgetの管理データベース
（２）Widgetの構造
（３）起動時又はログイン時の処理
（４）Dummy Widgetの構造
１つ目にWidgetのデータベースについて説明する。図１及び図２に示すように、Widget Platform１１は、Widget Layer１１１、Platform Layer１１２、Device Layer１１３を備え、Widget Layer１１１は、ＨＤＤ１３に格納されたデータベースを管理している。このデータベースは、ユーザがインストールした各Widgetの情報を管理している。例えば、このデータベースは、ＨＤＤ１３に格納されたWeather Widget １１１１、News Widget １１１２、Setting Widget １１１３、及びGame Widget １１１４の情報（図４参照）を管理している。Weather Widget １１１１、News Widget １１１２、Setting Widget １１１３、及びGame Widget １１１４は、XML及びScriptで構成されている。図４に示すように、データベースには、以下の情報が保持されている。
【００３４】
・WidgetのID
・WidgetのName
・WidgetのVersion
・Widgetの保管場所（Path）
・Widgetの識別情報（今回はencrypt）
WidgetのIDは表示位置の情報も兼ねているが、WidgetのIDは表示位置の情報以外の理由で保管される可能性がある。Widget Platform１１は、過去の内部ストレージ及び外部ストレージ等へのアクセス履歴に基づき、内部ストレージ及び外部ストレージ等に格納されたWidgetの保管場所（外部Path）をベータベースへ記録する。
【００３５】
２つ目にWidgetの構造について説明する。Widgetは、以下の３要素で構築される。但し、設定情報は、起動時にチェックされるのみで、実行中の制御には関わらない。
【００３６】
・設定情報（widget.xml & main.TV）
・XML
・Script
設定情報は、基本設定を記述した情報である。XMLは、Widgetの画面の構成要素を記述している。Scriptは、Widgetのアプリケーション部分を記述している。
【００３７】
３つ目に起動時・ログイン時の処理について説明する。Widget Platform１１は、下記のような手順で起動処理を実行する。
【００３８】
（１）データベースの読込む。
【００３９】
（２）データベースのPathにWidgetが搭載されていることを確認する。
【００４０】
（３）各Widgetの設定情報を取得し、Widget Name及びID等を取得する。
【００４１】
（４）PathのWidgetが正しいことを、識別情報を元にチェックする。
【００４２】
（５）ネットワークにアクセスして最新VerのWidgetが存在しないか確認する。
【００４３】
（６）各Widgetに識別子（Appliaction ID）を与え、実行中はこの情報を元に各Widgetを制御する。
【００４４】
（７）各WidgetのXMLファイルを読み出して、画面構造を構築する。
【００４５】
（８）各WidgetのScriptファイルを読み出して、Widgetを起動する。
【００４６】
（９）Platformの準備が完了し、ユーザのWidget操作が可能になる。
【００４７】
４つ目にDummy Widgetの構造について説明する。例えば、Dummy Widgetを構成するXMLは、Dummy WidgetのGUI（外枠）を構築するための情報であり、Dummy Widgetを構成するScriptは、Dummy Widgetと実際のWidgetとの置き換え処理、及びDummy Widgetの呼び出しへの応答処理を記述している。また、Dummy Widgetの識別情報は、実際のWidgetの識別情報となる。以下に、Dummy Widgetの一例を示す。
【００４８】
XML:
<window>
<frame id="snippet0" vOffset="0" hOffset="0" height="155" width="471">
<div height="155" width="471” backgroundColor=”gray”/>
</frame>
</window>
Script:
<?xml version="1.0" encoding="utf-8"?>
<widget>
<script><![CDATA[
widget.onHostEvent = function(a_event) {
switch (a_event.subject) {
case 'request_dummy' :
a_event.result = true;
break;
case 'request_replace' :
eval(a_event.data);
break;
}
}
]]></script>
</widget>
例えば、Widget Platform１１は、上記したDummy Widgetに基づき、ディスプレイ１５上にDummy Widget（実体のないWidget）のGUIを表示することができる。例えば、Dummy WidgetのGUIは灰色で表示され、Dummy Widget 以外のWeather Widget、News Widget、Setting WidgetのGUIは灰色以外の色で表示される。
【００４９】
続いて、Dummy Widgetの生成及びDummy Widgetの役割等について詳細に説明する。上記したように、ＴＶ１は、ＨＤＤ（内部ストレージ）１３を備え、さらに、ＵＳＢ−ＨＤＤ（外部ストレージ）２を接続可能に構成されている。また、例えば、ＨＤＤ１３は、図４に示すデータベースと、図２に示すWeather Widget１１１１、News Widget１１１２、及びSetting Widget１１１３の実体を格納している。そして、図３に示すＵＳＢ−ＨＤＤ２は、Dummy Widget １１１４の実態であるGame Widget１１１４ａを格納している。
【００５０】
下記３つの状況について説明する。
【００５１】
（１）ＵＳＢ−ＨＤＤ２が接続されていない状態でＴＶ１が起動した時の状況Ｓ１
（２）ＴＶ１の起動後で且つ動作中に、ＵＳＢ−ＨＤＤ２が接続された時の状況Ｓ２
（３）ＵＳＢ−ＨＤＤ２が接続された後で且つ動作中に、ＵＳＢ−ＨＤＤ２が切断された時の状況Ｓ３
まず、状況Ｓ１について、図７に示すフローチャートを参照して説明する。図７は、起動処理の一例を示すフローチャートである。
【００５２】
ＴＶ１が起動し、Widget Platform１１が起動すると、Widget Platform１１は、まず図４に示すデータベースをＨＤＤ１３から読み出す（ＳＴ１０１）。Widget Platform１１は、読み出したデータベースを元に、各Widgetの属する各Pathの状況を確認する（ＳＴ１０２）。つまり、Widget Platform１１は、各Widgetの属する各Pathが現在アクセス可能な内部Pathなのか、現在アクセス可能な外部Pathなのか、現在アクセス不能な外部Pathなのかを確認する（ＳＴ１０２）。
【００５３】
現在アクセス可能な内部Pathが存在する場合（ＳＴ１０２、ＹＥＳ）（ＳＴ１０３、ＮＯ）、Widget Platform１１は、現在アクセス可能な内部PathのWidgetの設定情報をデータベースから取得してリストに追加する（ＳＴ１０７）。例えば、Widget Platform１１は、Weather Widget１１１１、News Widget１１１２、及びSetting Widget１１１３の設定情報をデータベースから取得してリストに追加する。
【００５４】
現在アクセス可能な外部Pathが存在する場合（ＳＴ１０２、ＹＥＳ）（ＳＴ１０３、ＹＥＳ）、Widget Platform１１は、アクセス可能な外部Pathに属したWidgetのGUIを表示するための特殊枠線フラグを設定し（ＳＴ１０５）、アクセス可能な外部PathのWidgetの設定情報をデータベースから取得してリストに追加する（ＳＴ１０７）。例えば、リスト上で、外部Pathに属したWidgetのGUIを表示するための特殊枠線フラグと、アクセス可能な外部PathのWidgetの設定情報とが対応付けられる。
【００５５】
アクセス不能な外部Pathが存在する場合（ＳＴ１０２、ＮＯ）（ＳＴ１０４、ＹＥＳ）、Widget Platform１１は、アクセス不能な外部PathのWidget（Game Widget１１１４ａ）に対応したDummy Widgetを生成するためのDummy Widgetフラグ（ＳＴ１０６）をリストに設定し、さらに、アクセス不能な外部PathのWidgetの設定情報をデータベースから取得してリストに追加する（ＳＴ１０７）。例えば、リスト上で、Game Widget１１１４ａに対応したDummy Widgetを生成するためのDummy Widgetフラグと、Game Widget１１１４ａの設定情報とが対応付けられる。
【００５６】
設定情報をリストに追加した後、Widget Platform１１は、リスト上でDummy Widgetフラグの有無を確認する（ＳＴ１０８）。Widget Platform１１は、Dummy Widgetフラグが対応付けられていない設定情報に基づき（ＳＴ１０８、ＹＥＳ）、Widgetの実体であるXMLとSciprtを読出し（ＳＴ１１０）、読み出したXMLとSciprtに基づきWidgetを生成する（ＳＴ１１１）。つまり、Widget Platform１１は、Weather Widget１１１１、News Widget１１１２、Setting Widget１１１３を生成する。Widget Layer１１１は、これらWeather Widget１１１１、News Widget１１１２、Setting Widget１１１３を管理する。
【００５７】
また、Widget Platform１１は、Dummy Widgetフラグが対応付けられた設定情報に基づき（ＳＴ１０８、ＹＥＳ）、Dummy Widgetの生成をDummy Widget Creator１１２３へ指示する。図２に示すように、Widget Platform１１はPlatform Layer１１２を備え、Platform Layer１１２はPlatform API１１２１、Widget Controller１１２２、Dummy Widget Creator１１２３を備える。
【００５８】
上記したDummy Widgetの生成の指示を受けたDummy Widget Creator１１２３は、Dummy Widgetフラグが対応付けられた設定情報に基づき、Dummy Widgetを生成する（ＳＴ１０９）。つまり、Dummy Widget Creator１１２３は、Game Widget１１１４ａに対応したDummy Widget１１１４を生成する。Widget Layer１１１は、このDummy Widget１１１４も管理する。即ち、図２に示すように、Widget Layer１１１は、Weather Widget１１１１、News Widget１１１２、Setting Widget１１１３、及びDummy Widget１１１４を管理する。
【００５９】
Graphic Manager１１３３は、Widget Layer１１１により管理されたWeather Widget１１１１、News Widget１１１２、Setting Widget１１１３、及びDummy Widget１１１４に基づき、これらWidgetのGUIを生成し、ディスプレイ１５へ生成したGUIを出力する。なお、図２に示すように、Widget Platform１１はDevice Layer１１３を備え、Device Layer１１３はMemory Manager１１３１、Network Manager１１３２、Graphic Manager１１３３、Sound Manager１１３４を備える。
【００６０】
例えば、Graphic Manager１１３３は、Weather Widget１１１１のGUIをWeather Widget１１１１を構成するXMLで指定された枠線（例えば黒線）及び背景色（例えば赤）で生成する。同様に、Graphic Manager１１３３は、News Widget１１１２のGUIをNews Widget１１１２を構成するXMLで指定された枠線（例えば黒線）及び背景色（例えば青）で生成する。同様に、Graphic Manager１１３３は、Setting Widget１１１３のGUIをSetting Widget１１１３を構成するXMLで指定された枠線（黒線）及び背景色（例えば緑）で生成する。さらに、Graphic Manager１１３３は、Dummy Widget１１１４のGUIをDummy Widget１１１４を構成するXMLで指定された枠線（灰色）及び背景色（同じく灰色）で生成する（図６参照）。
【００６１】
また、Widget Platform１１は、特殊枠線フラグが対応付けられた設定情報に基づき（ＳＴ１１２、ＹＥＳ）、特殊枠線のGUIの生成をGraphic Manager１１３３へ指示する。特殊枠線のGUIの生成の指示を受けたGraphic Manager１１３３は、特殊枠線フラグが対応付けられた設定情報に基づき、特殊枠線のGUIを生成する（ＳＴ１１３）。つまり、Graphic Manager１１３３は、アクセス可能な外部Pathに属したWidgetのGUIを特殊枠線（例えば赤線）及びこのWidgetを構成するXMLで指定された背景色（例えば黄色）で生成する。
【００６２】
以上により、現在アクセス可能な内部Pathに属したWidgetのGUI（例えば黒色枠で表示されたGUI）と、現在アクセス可能な外部Pathに属したWidgetのGUI（例えば赤色枠で表示されたGUI）と、現在アクセス不能な外部Pathに属したWidgetのGUI（例えば灰色枠で表示されたGUI）とが異なる表示形式になる。これにより、ユーザは、ディスプレイ１５に表示されたGUIを見ただけで、このGUIに対応したWidgetが、現在アクセス可能な内部Pathに属しているのか、現在アクセス可能な外部Pathに属しているのか、或いは現在アクセス不能な外部Pathに属しているのかを識別することができる。
【００６３】
上記した起動処理が完了するとユーザの操作が可能になる。例えば、現在アクセス可能な内部Pathに属したWidgetのGUIが選択されると、Widget Controller１１２２は、このWidgetのScriptの記述に従い動作を制御する。例えば、Weather Widget１１１１のGUIが選択されると、Widget Controller１１２２は、イーサネット１７を介して天気予報の情報を取得し、Graphic Manager１１３３が天気予報をディスプレイ１５の一部に表示する。また、現在アクセス可能な外部Pathに属したWidgetのGUIが選択されると、Widget Controller１１２２は、このWidgetのScriptの記述に従い動作を制御する。さらに、現在アクセス不能な外部Pathに属したWidgetのGUIが選択されると、つまりDummy WidgetのGUIが選択されると、Widget Controller１１２２は、このDummy WidgetのScriptの記述に従い動作を制御する。例えば、Dummy WidgetのGUIが選択されると、Widget Controller１１２２は、このDummy WidgetのScriptの記述に従いエラー処理を実行する（エラーメッセージの表示等を実行する）。
【００６４】
次に、状況Ｓ２について、図９に示すフローチャートを参照して説明する。図９は、接続処理の一例を示すフローチャートである。
【００６５】
上記した起動処理が完了し、リストが生成された状態で、例えば、ＵＳＢ−ＨＤＤ２が接続されると、ＵＳＢ１２は、Memory Manager１１３１にＵＳＢ−ＨＤＤ２の接続をイベントとして知らせる。Memory Manager１１３１は、ＵＳＢ−ＨＤＤ２を適切な位置に取り付け（mount）、ＵＳＢ−ＨＤＤ２を利用可能な状況にする（ＳＴ３０１）（ＳＴ３０２、ＹＥＳ）。そして、Widget Platform１１は、データベースを読出し、読み出したデータベースから各Widgetの設定情報を取得する。或いは、Widget Platform１１は、起動処理で読み出したデータベースから各Widgetの設定情報を取得する。
【００６６】
Widget Platform１１は、接続されたＵＳＢ−ＨＤＤ２がDummy Widget１１１４に対応したGame Widget１１１４ａの保存先であることを確認すると、接続されたＵＳＢ−ＨＤＤ２からGame Widget１１１４ａのファイルを読み出し（ＳＴ３０３）、Dummy Widget１１１４の内容を消去し（ＳＴ３０４）、本来のGame Widget１１１４ａの内容を追加する（ＳＴ３０５）（ＳＴ３０６）。つまり、Dummy Widget１１１４と実際のGame Widget１１１４ａの内容が置き換えられる。
【００６７】
Game Widget１１１４ａの内容の追加の際には、XMLは、parseXMLと呼ばれるXMLの解析の後にappendChildという「現在の表示内容に解析情報を追加する」処理を行う。また、Scriptは、evalと呼ばれる「入力された内容を全て実行する」処理を実行する。また、Widget Platform１１は、アクセス可能な外部Path（ＵＳＢ−ＨＤＤ２）に属したGame Widget１１１４ａのGUIを表示するための特殊枠線フラグを設定する。例えば、リスト上で、Game Widget１１１４ａのGUIを表示するための特殊枠線フラグと、Game Widget１１１４ａの設定情報とが対応付けられる。これにより、Graphic Manager１１３３は、Game Widget１１１４ａのGUIを特殊枠線（例えば赤線）及びこのGame Widget１１１４ａを構成するXMLで指定された背景色で生成する。
【００６８】
その結果、例えば、図５に示すように、各WidgetのGUIが表示される。つまり、現在アクセス可能な内部Pathに属するWeather Widget１１１１、News Widget１１１２、及びSetting Widget１１１３のGUIは、各WidgetのXMLで指定された枠線（例えば黒線）及び背景色で生成され、現在アクセス可能な外部Pathに属するGame Widget１１１４ａのGUIは、特殊枠線（例えば赤線）及びGame Widget１１１４ａのXMLで指定された背景色で生成される。なお、図５では、Weather Widget１１１１が選択中であることが示されており、また各WidgetのGUIの表示とともに放送受信モジュール１８により受信されたコンテンツ（番組）が表示されている。なお、図５に示すように各WidgetのGUIの表示とコンテンツ（番組）の表示とが重なり合わないように表示してもよいし、重なり合って（オーバーレイ）表示してもよい。
【００６９】
次に、状況Ｓ３について、図８に示すフローチャートを参照して説明する。図８は、切断処理の一例を示すフローチャートである。
【００７０】
ＵＳＢ−ＨＤＤ２が取り外されると、ＵＳＢ１２は、Memory Manager１１３１にＵＳＢ−ＨＤＤ２の切断をイベントとして知らせる。Memory Manager１１３１は、ＵＳＢ−ＨＤＤ２を取り外し（dismount）、ＵＳＢ−ＨＤＤ２を利用不能な状況にする（ＳＴ２０１）（ＳＴ２０２、ＹＥＳ）。そして、Widget Platform１１は、データベースを読出し、読み出したデータベースから各Widgetの設定情報を取得する。或いは、Widget Platform１１は、起動処理で読み出したデータベースから各Widgetの設定情報を取得する。
【００７１】
Widget Platform１１は、切断されたＵＳＢ−ＨＤＤ２がアクセス可能な外部pathに対応していたことを確認すると、このアクセス可能な外部pathに属したGame Widget１１１４ａの内容を消去し（ＳＴ２０３）、Game Widget１１１４ａに対応したDummy Widget１１１４の内容を追加する（ＳＴ２０４）。つまり、実際のGame Widget１１１４ａとDummy Widget１１１４の内容が置き換えられる。
【００７２】
Game Widget１１１４ａの内容の消去は、removeChildと呼ばれる「表示内容の消去」処理によって実施する。Scriptの消去は、現在定義済みの関数を同様の関数で置き換えることにより削除できるという、Script特有の機能を利用する。これを実行した後、appendChildとevalを利用することでDummy Widget１１１４の内容を追加する。
【００７３】
その結果、例えば、図６に示すように、各WidgetのGUIが表示される。つまり、現在アクセス可能な内部Pathに属するWeather Widget１１１１、News Widget１１１２、及びSetting Widget１１１３のGUIは、各WidgetのXMLで指定された枠線（例えば黒線）及び背景色で生成され、現在アクセス不能な外部Pathに属するGame Widget１１１４ａのGUI（つまりDummy Widget１１１４のGUI）は、灰色で生成される。
【００７４】
図１０は、従来のWidget PlatformによるGUI表示例及び本発明の一実施形態に係るWidget Platform１１によるGUI表示例を示す図である。
【００７５】
例えば、起動時に、Game Widgetを格納したＵＳＢ−ＨＤＤ２が接続されていない場合、従来のWidget PlatformによるGUI表示には、Game Widgetに関する情報は一切含まれていない。従来のWidget PlatformによるGUI表示には、アクセス可能な内蔵memory（例えば内蔵ＨＤＤ）に格納されたWeather WidgetのGUI、News WidgetのGUI、及びSetting WidgetのGUIが含まれる。これに対して、本発明の一実施形態に係るWidget Platform１１によるGUI表示には、Weather WidgetのGUI（Weather WidgetのXMLの指定色のGUI）、News WidgetのGUI（News WidgetのXMLの指定色のGUI）、及びSetting WidgetのGUI（Setting WidgetのXMLの指定色のGUI）と、Game Widgetに対応したDummy WidgetのGUI（例えば灰色のGUI）とが含まれる。
【００７６】
さらに、起動後に、Game Widgetを格納したＵＳＢ−ＨＤＤ２が接続された場合、従来のWidget PlatformによるGUI表示には、Game Widgetに関する情報は一切反映されない。これに対して、本発明の一実施形態に係るWidget Platform１１によるGUI表示には、Game WidgetのGUI（Game WidgetのXMLの指定色のGUI）が反映される。つまり、Game Widgetに対応したDummy WidgetのGUIがGame WidgetのGUIに置き換えられる。
【００７７】
上記説明では、Dummy WidgetのGUI（例えば灰色のGUI）を表示するケースについて説明したが、Dummy WidgetのGUIを表示しないようにしてもよい。例えば、Widget Platform１１が、リスト上でDummy Widgetフラグを検出しても、Dummy Widgetの生成をDummy Widget Creator１１２３へ指示しなければよい。これにより、Dummy WidgetのGUIの描画処理は実行されず、Dummy WidgetのGUIは表示されないことになる。
【００７８】
また、Dummy WidgetのGUIを表示するケースにおいて、ユーザによるDummy WidgetのGUIの選択操作に対応して、Widget Controller１１２２が、図１２に示すようにエラーメッセージを表示するようにしてもよい。Dummy WidgetのXMLとScriptによりエラーメッセージ表示を実現することができる。これにより、ユーザは、Widgetが実行できない理由、及びWidgetの実行には外部ストレージの接続が必要なことを知ることができる。
【００７９】
以下、本実施形態についてまとめる。
【００８０】
（１）Widget Platform１１は、起動時にデータベースに基づき各Widgetを確認する。つまり、Widget Platform１１は、現在アクセス可能な内部Path（ＨＤＤ１３）に存在しているWidget、現在アクセス可能な外部Path（接続中のＵＳＢ−ＨＤＤ２）に存在しているWidget、及び現在アクセス不能な外部Path（切断中のＵＳＢ−ＨＤＤ２）に存在しているWidgetを確認する。データベースに基づき現在アクセス不能な外部Path（切断中のＵＳＢ−ＨＤＤ２）にWidgetが存在していることが判明した場合、Dummy Widget Creator１１２３は、現在アクセス不能な外部PathのWidgetに対応するDummy Widgetを生成する。Widget Layer１１１は、現在アクセス可能な内部Pathに存在しているWidget、現在アクセス可能な外部Pathに存在しているWidget、現在アクセス不能な外部PathのWidgetに対応するDummy Widgetを一括して管理する。Graphic Manager１１３３は、Widget Layer１１１により管理された全てのWidget（Dummy Widgetも含む）のGUIを生成する。また、Platform Layer１１２は、Widget Layer１１１により管理された全てのWidgetに基づく動作を制御する。例えば、Dummy WidgetのGUIの選択操作に対応して、Platform Layer１１２（Widget Controller１１２２）は、Dummy WidgetのScriptの記述に基づきエラー処理を実行する（エラーメッセージを出力する）。
【００８１】
（２）現在アクセス不能な外部Pathがアクセス可能になった場合、つまりＵＳＢ−ＨＤＤ２が接続された場合、Widget Platform１１（Widget Layer１１１）は、上記したDummy Widgetを実際のWidget（ＵＳＢ−ＨＤＤ２に格納されたWidget）に置き換える。このために、ＵＳＢ−ＨＤＤ２が接続されたことをトリガとして、Widget Platform１１（Widget Layer１１１）は、ＵＳＢ−ＨＤＤ２からWidgetを読込み、Dummy Widgetと読み込んだWidgetとを置き換える。これにより、Graphic Manager１１３３は、現在表示中のDummy WidgetのGUIと読み込んだWidgetのGUIとを置き換える。
【００８２】
（３）現在アクセス可能な外部Pathがアクセス不能になった場合、つまりＵＳＢ−ＨＤＤ２が切断された場合、Widget Platform１１（Widget Layer１１１）は、実際のWidget（ＵＳＢ−ＨＤＤ２に格納されたWidget）をDummy Widgetに置き換える。このために、ＵＳＢ−ＨＤＤ２が切断されたことをトリガとして、Widget Platform１１（Widget Layer１１１）は、読み込んだWidgetとDummy Widgetとを置き換える。これにより、Graphic Manager１１３３は、現在表示中のWidgetのGUIとDummy WidgetのGUIとを置き換える。
【００８３】
（４）Graphic Manager１１３３は、現在アクセス可能な内部PathのWidgetのGUIを、このWidgetのXMLの記述に基づき生成する。つまり、Graphic Manager１１３３は、WidgetのXMLの記述で指定された枠線を使って同じくXMLの記述で指定されたグラフィックを生成する。また、Graphic Manager１１３３は、現在アクセス可能な外部PathのWidgetのGUIを、特殊枠線フラグ及びこのWidgetのXMLの記述に基づき生成する。つまり、Graphic Manager１１３３は、特殊枠線フラグに対応する枠線を使ってWidgetのXMLの記述で指定されたグラフィックを生成する。さらに、Graphic Manager１１３３は、現在アクセス不能な外部PathのWidgetに対応したDummy WidgetのGUIを、Dummy WidgetのXMLの記述に基づき生成する。つまり、Graphic Manager１１３３は、Dummy WidgetのXMLで指定された枠線を使ってDummy WidgetのXMLの記述で指定されたグラフィックを生成する。これにより、現在アクセス可能な内部PathのWidgetのGUI、現在アクセス可能な外部PathのWidgetのGUI、及び現在アクセス不能な外部PathのWidget（つまりDummy Widget）のGUIが異なる表示形式となり、ユーザは、GUIの表示形式からWidgetの状況を簡単に把握することができる。
【００８４】
（５）Dummy Widgetは、以下の機能のうちの少なくとも一つの機能を持つことができる。
【００８５】
Ａ．Dummy WidgetのGUIを外枠のみで表示する。
【００８６】
Ｂ．データベースに記載されたWidgetの内容（例：名前とVersion）をDummy WidgetのGUI中に表示する。
【００８７】
Ｃ．Dummy Widgetであることを示すロゴをDummy WidgetのGUI中に表示する。或いはDummy Widgetであることを示すロゴをDummy WidgetのGUIとして表示する。
【００８８】
Ｄ．Dummy WidgetのGUIの背景色を、このDummy Widgetした実際のWidgetのXMLで指定された背景色と異なる色に設定する。
【００８９】
Ｅ．Dummy WidgetのGUIが選択された時、エラーメッセージを表示する（図１２参照）。例えば、外部ストレージを接続して再度実行して下さいを表示する。
【００９０】
なお、Dummy WidgetのGUIを表示するケースについて説明したが、Dummy Widgetが、Dummy Widgetの情報（Dummy WidgetのGUI等）を表示しない機能を持ってもよい（図１１参照）。
【００９１】
以上により、起動時に接続されていない外部ストレージにWidgetが保管されていた場合でも、現行の処理手順を大きく変えることなく、外部ストレージに保管されたWidgetの情報を提供することができる。例えば、Dummy WidgetのGUI表示により、ユーザは、現在利用できないWidgetがあることを認識できる。さらに、ユーザは、外部ストレージを接続すれば現在利用できないWidgetを利用できることも認識できる。
【００９２】
なお、上記説明では、WidgetのGUI及びDummy WidgetのGUIを表示することを説明したが、Widget及びDummy Widgetの情報であればGUIの表示に限定されるものではない。例えば、Widget及びDummy Widgetのスニペット（snippet）を表示するようにしてもよい。
【００９３】
本実施形態では装置内部に発明を実施する機能（Widget Platform）が予め設定されている場合で説明をしたが、これに限らず同様の機能（アプリケーション動作制御プログラム）をネットワークから装置にダウンロードしても良いし、同様の機能（アプリケーション動作制御プログラム）を記録媒体に記憶させたものを装置にインストールしてもよい。記録媒体としては、ＣＤ−ＲＯＭ、ＤＶＤ等のプログラムを記憶でき、かつ装置が読み取り可能な記録媒体であれば、その形態は何れの形態であっても良い。またこのように予めインストールやダウンロードにより得る機能は装置内部のＯＳ（オペレーティング・システム）等と共働してその機能を実現させるものであってもよい。
【００９４】
なお、本願発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は可能な限り適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。更に、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適当な組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【符号の説明】
【００９５】
１…ＴＶ、１１…Widget Platform、１２…ＵＳＢ、１３…ＨＤＤ（内部ストレージ）、１４…ＣＰＵ、１５…ディスプレイ、１６…スピーカ、１７…イーサネット、１８…放送受信モジュール
【図１】
2010257316.tif 000003
【図２】
2010257316.tif 000004
【図３】
2010257316.tif 000005
【図４】
2010257316.tif 000006
【図５】
2010257316.tif 000007
【図６】
2010257316.tif 000008
【図７】
2010257316.tif 000009
【図８】
2010257316.tif 000010
【図９】
2010257316.tif 000011
【図１０】
2010257316.tif 000012
【図１１】
2010257316.tif 000013
【図１２】
2010257316.tif 000014