(57)【要約】データ管理サーバがなくても、ユーザにとって最適なＵＩを提供するＵＩ制御装置は、ＵＩプログラムを記憶しているＵＩ記憶部（２０７）と、それらＵＩプログラムの一覧を示すＵＩ一覧を記憶するＵＩ一覧記憶部（２０３）と、リモート機器が記憶しているＵＩプログラムの一覧を取得し、ＵＩ一覧記憶部（２０３）に追加して登録するＵＩ一覧取得部（２０２）と、ユーザからＵＩの要求を受け付ける要求受付部（２０４）と、受け付けたＵＩに対応するＵＩプログラムを、ＵＩ一覧に登録されたＵＩプログラムの中から選択するＵＩ選択部（２０５）と、選択されたＵＩプログラムがＵＩ記憶部（２０７）に記憶されているか否かを判断し、記憶されていると判断した場合に、ＵＩ記憶部（２０７）からＵＩプログラムを読み出すＵＩ取得部（２０６）と、取得されたＵＩプログラムを実行することで、ユーザに情報を提示する表示部（２０８）とを備える。
2009090872.tif 000002
【特許請求の範囲】
【請求項１】
機器に備えられ、ユーザ・インタフェースの機能を実現するユーザ・インタフェース制御装置であって、
前記機器に対するユーザからの指示に対応した機能を実現するためのプログラムであるＵＩプログラムを記憶しているＵＩ記憶部と、
前記ＵＩ記憶部に記憶されているＵＩプログラムの一覧を示す情報であるＵＩ一覧を記憶しているＵＩ一覧記憶部と、
前記機器と通信路で接続されたリモート機器から、当該リモート機器が記憶しているＵＩプログラムの一覧を取得し、前記ＵＩ一覧記憶部に記憶されているＵＩ一覧に追加して登録するＵＩ一覧取得部と、
ユーザから、ユーザ・インタフェースを利用したい旨の要求を受け付ける要求受付部と、
前記ＵＩ一覧記憶部に記憶されているＵＩ一覧を参照することにより、前記要求受付部が受け付けたユーザ・インタフェースに対応するＵＩプログラムを、前記ＵＩ一覧に登録されたＵＩプログラムの中から選択するＵＩ選択部と、
前記ＵＩ選択部が選択したＵＩプログラムが前記ＵＩ記憶部に記憶されているか否かを判断し、前記ＵＩ記憶部に記憶されていると判断した場合に、前記ＵＩ記憶部から前記ＵＩプログラムを読み出して取得するＵＩ取得部と、
前記ＵＩ取得部で取得されたＵＩプログラムを実行することで、前記ユーザに情報を提示する表示部と
を備えるユーザ・インタフェース制御装置。
【請求項２】
前記ＵＩ取得部は、前記ＵＩ選択部が選択したＵＩプログラムが前記ＵＩ記憶部に記憶されていないと判断した場合に、前記リモート機器から前記通信路を介して当該ＵＩプログラムを取得し、
前記表示部は、前記ＵＩ取得部が前記リモート機器から取得したＵＩプログラムを実行する
請求項１記載のユーザ・インタフェース制御装置。
【請求項３】
さらに、前記リモート機器が前記通信路に接続された旨の通知を受け取る通知受付部を備え、
前記ＵＩ一覧取得部は、前記通知受付部が前記通知を受け付けた場合に、前記リモート機器から、当該リモート機器が記憶しているＵＩプログラムの一覧を取得する
請求項１記載のユーザ・インタフェース制御装置。
【請求項４】
前記ＵＩ一覧では、当該ＵＩ一覧が示すＵＩプログラムごとに、当該ＵＩプログラムによって実現される機能が対応づけられ、
前記ＵＩ選択部は、前記ＵＩ一覧に、前記要求受付部が受け付けたユーザ・インタフェースの機能を実現するＵＩプログラムが複数個登録されている場合には、前記複数個のＵＩプログラムの中から、最適なＵＩプログラムを選択する
請求項１記載のユーザ・インタフェース制御装置。
【請求項５】
前記ＵＩ一覧では、当該ＵＩ一覧が示すＵＩプログラムごとに、当該ＵＩプログラムの選択に関する優先度が対応づけられ、
前記ＵＩ選択部は、前記ＵＩ一覧における前記優先度を参照することで、前記複数個のＵＩプログラムの中から、最適なＵＩプログラムを選択する
請求項４記載のユーザ・インタフェース制御装置。
【請求項６】
前記ＵＩ一覧では、当該ＵＩ一覧が示すＵＩプログラムごとに、当該ＵＩプログラムの置き場所を示すアドレスが対応づけられ、
前記ＵＩ取得部は、前記ＵＩ一覧における前記アドレスを参照することで、前記ＵＩ選択部が選択したＵＩプログラムに対応づけられた前記アドレスが示す置き場所から、前記ＵＩプログラムを取得する
請求項１記載のユーザ・インタフェース制御装置。
【請求項７】
さらに、
前記ＵＩ取得部で取得されたＵＩプログラムを解析することで、当該ＵＩプログラムが実行された場合に必要となる画像データ、映像データ及び音声データの少なくとも一つであるリソースを特定するリソース解析部と、
前記リソース解析部で特定されたリソースを、前記機器又は前記リモート機器から取得するリソース取得部とを備え、
前記表示部は、前記ＵＩプログラムを実行したときに、前記リソース取得部で取得されたリソースを提示する
請求項１記載のユーザ・インタフェース制御装置。
【請求項８】
さらに、
前記ＵＩ記憶部に記憶されているＵＩプログラムで必要とされるリソースを記憶しているリソース記憶部と、
リソースの取得先として、前記機器及び前記リモート機器のいずれを優先するかを示す情報である優先度を記憶しているリソース優先度記憶部とを備え、
前記リソース取得部は、前記リソース優先度記憶部に記憶されている優先度に従って、前記機器又は前記リモート機器から前記リソースを取得する
請求項７記載のユーザ・インタフェース制御装置。
【請求項９】
前記ＵＩ取得部は、前記ＵＩ選択部が選択したＵＩプログラムが前記ＵＩ記憶部に記憶されていないと判断した場合に、当該ＵＩプログラムの実行を前記リモート機器に委譲するＵＩ委譲部を有する
請求項１記載のユーザ・インタフェース制御装置。
【請求項１０】
前記ＵＩ委譲部は、委譲した前記ＵＩプログラムによる処理結果を前記リモート機器から受け取り、
前記表示部は、前記ＵＩ委譲部が受け取った前記処理結果を提示する
請求項９記載のユーザ・インタフェース制御装置。
【請求項１１】
前記ＵＩプログラムは、仮想マシンで実行されるプログラム、又は、スクリプト言語で記述されたプログラムであり、
前記機器及び前記リモート機器は、前記仮想マシン、又は、前記スクリプト言語用のインタプリタを備える
請求項１記載のユーザ・インタフェース制御装置。
【請求項１２】
通信路で接続された複数の電子機器から構成される通信システムであって、
前記複数の電子機器のそれぞれは、請求項１記載のユーザ・インタフェース制御装置を備える
ことを特徴とする通信システム。
【請求項１３】
機器に備えられ、前記機器に対するユーザからの指示に対応した機能を実現するためのプログラムであるＵＩプログラムを記憶しているＵＩ記憶部と、前記ＵＩ記憶部に記憶されているＵＩプログラムの一覧を示す情報であるＵＩ一覧を記憶しているＵＩ一覧記憶部とを有するユーザ・インタフェース制御装置によるユーザ・インタフェース制御方法であって、
前記機器と通信路で接続されたリモート機器から、当該リモート機器が記憶しているＵＩプログラムの一覧を取得し、前記ＵＩ一覧記憶部に記憶されているＵＩ一覧に追加して登録するＵＩ一覧取得ステップと、
ユーザから、ユーザ・インタフェースを利用したい旨の要求を受け付ける要求受付ステップと、
前記ＵＩ一覧記憶部に記憶されているＵＩ一覧を参照することにより、前記要求受付ステップが受け付けたユーザ・インタフェースに対応するＵＩプログラムを、前記ＵＩ一覧に登録されたＵＩプログラムの中から選択するＵＩ選択ステップと、
前記ＵＩ選択ステップで選択したＵＩプログラムが前記ＵＩ記憶部に記憶されているか否かを判断し、前記ＵＩ記憶部に記憶されていると判断した場合に、前記ＵＩ記憶部から前記ＵＩプログラムを読み出して取得するＵＩ取得ステップと、
前記ＵＩ取得ステップで取得されたＵＩプログラムを実行することで、前記ユーザに情報を提示する表示ステップと
を含むユーザ・インタフェース制御方法。
【請求項１４】
請求項２記載のユーザ・インタフェース制御装置のためのプログラムであって、
請求項１３記載のステップをコンピュータに実行させるプログラム。
【請求項１５】
機器に備えられ、ユーザ・インタフェースの機能を実現するユーザ・インタフェース制御装置のための集積回路であって、
前記機器に対するユーザからの指示に対応した機能を実現するためのプログラムであるＵＩプログラムを記憶しているＵＩ記憶部と、
前記ＵＩ記憶部に記憶されているＵＩプログラムの一覧を示す情報であるＵＩ一覧を記憶しているＵＩ一覧記憶部と、
前記機器と通信路で接続されたリモート機器から、当該リモート機器が記憶しているＵＩプログラムの一覧を取得し、前記ＵＩ一覧記憶部に記憶されているＵＩ一覧に追加して登録するＵＩ一覧取得部と、
ユーザから、ユーザ・インタフェースを利用したい旨の要求を受け付ける要求受付部と、
前記ＵＩ一覧記憶部に記憶されているＵＩ一覧を参照することにより、前記要求受付部が受け付けたユーザ・インタフェースに対応するＵＩプログラムを、前記ＵＩ一覧に登録されたＵＩプログラムの中から選択するＵＩ選択部と、
前記ＵＩ選択部が選択したＵＩプログラムが前記ＵＩ記憶部に記憶されているか否かを判断し、前記ＵＩ記憶部に記憶されていると判断した場合に、前記ＵＩ記憶部から前記ＵＩプログラムを読み出して取得するＵＩ取得部と、
前記ＵＩ取得部で取得されたＵＩプログラムを実行することで、前記ユーザに情報を提示する表示部と
を備える集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機器同士が連携することにより、ユーザにとって最適なユーザ・インタフェース（以下、「ＵＩ」ともいう）を提供することを可能とするＵＩ制御装置、ＵＩ制御方法、ＵＩ制御プログラム、ＵＩ制御プログラムを記録した記録媒体、ＵＩ制御集積回路に関するものである。
【背景技術】
【０００２】
ＵＩ制御装置の従来技術としては、データ管理サーバでユーザ所有の家電の機種、更新状況等を一元管理し、ネットワークに接続可能な家電にインストールされる更新データを提供する技術がある。【０００３】
そして、このような従来の技術としては、例えば特許文献１に記載されたものが知られている。
【特許文献１】特開２００４−３４１８８０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来技術においては、ＵＩの更新をするためにはネットワークに接続されたデータ管理サーバが必要となるので、ＵＩの更新をする場合には、データ管理サーバを介さなければならない。したがって、データ管理サーバがないと、ユーザにとって最適なＵＩを提供することができないという課題を有している。【０００５】
本発明は上記従来の課題を解決するものであり、データ管理サーバがなくても、ユーザにとって最適なＵＩを提供することを可能とするＵＩ制御装置等を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明のＵＩ制御装置は、機器に備えられ、ユーザ・インタフェースの機能を実現するユーザ・インタフェース制御装置であって、前記機器に対するユーザからの指示に対応した機能を実現するためのプログラムであるＵＩプログラムを記憶しているＵＩ記憶部と、前記ＵＩ記憶部に記憶されているＵＩプログラムの一覧を示す情報であるＵＩ一覧を記憶しているＵＩ一覧記憶部と、前記機器と通信路で接続されたリモート機器から、当該リモート機器が記憶しているＵＩプログラムの一覧を取得し、前記ＵＩ一覧記憶部に記憶されているＵＩ一覧に追加して登録するＵＩ一覧取得部と、ユーザから、ユーザ・インタフェースを利用したい旨の要求を受け付ける要求受付部と、前記ＵＩ一覧記憶部に記憶されているＵＩ一覧を参照することにより、前記要求受付部が受け付けたユーザ・インタフェースに対応するＵＩプログラムを、前記ＵＩ一覧に登録されたＵＩプログラムの中から選択するＵＩ選択部と、前記ＵＩ選択部が選択したＵＩプログラムが前記ＵＩ記憶部に記憶されているか否かを判断し、前記ＵＩ記憶部に記憶されていると判断した場合に、前記ＵＩ記憶部から前記ＵＩプログラムを読み出して取得するＵＩ取得部と、前記ＵＩ取得部で取得されたＵＩプログラムを実行することで、前記ユーザに情報を提示する表示部とを備える。【０００７】
ここで、前記ＵＩ取得部は、前記ＵＩ選択部が選択したＵＩプログラムが前記ＵＩ記憶部に記憶されていないと判断した場合に、前記リモート機器から前記通信路を介して当該ＵＩプログラムを取得し、前記表示部は、前記ＵＩ取得部が前記リモート機器から取得したＵＩプログラムを実行する構成としてもよい。【０００８】
あるいは、前記ＵＩ取得部は、前記ＵＩ選択部が選択したＵＩプログラムが前記ＵＩ記憶部に記憶されていないと判断した場合に、当該ＵＩプログラムの実行を前記リモート機器に委譲するＵＩ委譲部を有する構成としてもよい。【０００９】
本構成によって、データ管理サーバがなくても、リモート機器からＵＩプログラムを取得して実行する、あるいは、リモート機器にＵＩプログラムの実行を委譲するので、機器同士が連携することによってＵＩの更新等をし、ユーザにとって最適なＵＩを提供することが可能となるという効果が得られる。
【発明の効果】
【００１０】
本発明のＵＩ制御装置によれば、データ管理サーバがなくても、機器同士が連携することによってＵＩの更新等をし、ユーザにとって最適なＵＩを提供することが可能となるという効果が得られる。【００１１】
本発明により、機器のユーザ・インタフェースが向上され、特に、家庭内ネットワークの普及によって機器同士の連携が可能になってきた今日における実用的価値は極めて高い。
【図面の簡単な説明】
【００１２】
【図１】図１は、本発明の実施の形態１におけるＵＩ制御装置を含む機器に関するネットワーク構成図である。
【図２】図２は、本発明の実施の形態１におけるＵＩ制御装置の図である。
【図３】図３は、本発明の実施の形態１におけるＵＩ一覧が記憶されるまでのフローチャートである。
【図４】図４は、本発明の実施の形態１におけるＵＩプログラムの実行に基づく情報が表示されるまでのフローチャートである。
【図５】図５（ａ）は本発明の実施の形態１における機器ＡのＵＩ一覧を示した図であり、図５（ｂ）は本発明の実施の形態１における機器ＢのＵＩ一覧を示した図である。
【図６】図６は、本発明の実施の形態１における機器が記憶しているＵＩ一覧情報を示した図である。
【図７】図７は、本発明の実施の形態１における機器が記憶しているＵＩに関する情報の図である。
【図８】図８は、本発明の実施の形態２におけるＵＩ制御装置の図である。
【図９】図９は、本発明の実施の形態２におけるリソース優先度が記憶されるまでのフローチャートである。
【図１０】図１０は、本発明の実施の形態２におけるＵＩプログラムの実行に基づく情報が表示されるまでのフローチャートである。
【図１１】図１１は、本発明の実施の形態２におけるＵＩプログラムの一例を示した図である。
【図１２】図１２（ａ）は本発明の実施の形態２における機器Ａが記憶している写真リソースを表示したときの表示画面を示した図であり、図１２（ｂ）は本発明の実施の形態２における機器Ｂが記憶している写真リソースを表示したときの表示画面を示した図である。
【図１３】図１３は、本発明の実施の形態２におけるリソース優先度記憶部に記憶された設定情報の一例を示す図である。
【図１４】図１４は、本発明の実施の形態３におけるＵＩ制御装置の図である。
【図１５】図１５は、本発明の実施の形態３におけるＵＩプログラムの実行に基づく情報が表示されるまでのフローチャートである。
【図１６】図１６は、本発明の実施の形態３におけるＵＩ委譲をする場合の操作画面の一例を示した図である。
【図１７】図１７は、本発明の実施の形態４におけるＵＩ制御装置の図である。
【符号の説明】
【００１３】
１００    家庭内ネットワーク
１０１    ＵＩ制御装置を保持する自機器
１１０    外部ネットワーク
１２０    リモート機器
２００、８００、１３００、１６００    ＵＩ制御装置
２０１    通知受付部
２０２    ＵＩ一覧取得部
２０３    ＵＩ一覧記憶部
２０４、１６０３    要求受付部
２０５    ＵＩ選択部
２０６、２０６ａ    ＵＩ取得部
２０７    ＵＩ記憶部
２０８、８０６、１６０８    表示部
２１０    ユーザ
５００    機器ＡのＵＩ一覧
５０１〜５０５    ＵＩ一覧
５１０    機器ＢのＵＩ一覧
６００    機器Ａが記憶しているＵＩ一覧
６０１〜６０５    ＵＩ一覧
７００    機器Ａが記憶しているＵＩに関する情報の一例
７１０    機器Ａが記憶しているＵＩプログラムの一例
８０１    リソース優先度設定部
８０２    リソース優先度記憶部
８０３    ＵＩ解析部
８０４    リソース取得部
８０５    リソース記憶部
１１００    ＵＩプログラム
１１０１    ｆｕｎｃｔｉｏｎ  ｌｏａｄＢｏｄｙという関数の具体的な内容
１１０２    ｆｕｎｃｔｉｏｎ  ｌｏａｄＢｏｄｙという関数の具体的な処理の内容
１１０３    ｆｕｎｃｔｉｏｎ  ｌｏａｄＢｏｄｙという関数
１１０４    写真を表示するためのＨＴＭＬ要素
１２００、１２１０    画面表示例
１２０１、１２１１    画像リソース
１３０１    ＵＩ委譲部
１３０２    一時記憶部
１５００    ＴＶ
１５０１    プレイヤ
１５０２    携帯電話
１５１０    プレイヤ操作画面
１５１１    携帯電話操作画面
１５１２〜１５１５    文字編集画面
１６０１    機能一覧取得部
１６０２    機能一覧記憶部
１６０４    機能アクセス検知部
１６０５    機能選択部
１６０６    機能結果取得部
１６０７    機能記憶部
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施の形態におけるＵＩ制御装置について、図面を参照しながら説明する。なお、ＵＩは、個々のＵＩに対応するＵＩプログラムによって実現される。ここでいうＵＩプログラムとは、機器に対するユーザからの指示に対応した機能を実現するためのプログラムであり、ユーザに対する情報の表示様式や、ユーザのデータ入力方式を規定したプログラム等をいう。例えば、Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ（登録商標）に代表されるＨＴＭＬブラウザ等のプログラムであってもよいし、Ｊａｖａ（登録商標)等の仮想マシンで実行される実行形式又はスクリプト形式のプログラムであってもよいし、写真表示機能や文字編集機能、通話表示機能等のプログラムであってもよい。【００１５】
（実施の形態１）
まず、本発明の実施の形態１におけるＵＩ制御装置について説明する。【００１６】
図１は実施の形態１のＵＩ制御装置に関するネットワーク構成図である。家庭内ネットワーク１００は、ＵＩ制御装置を保持する自機器１０１を有するネットワークであり、無線ネットワークや有線ネットワークで実現される。自機器１０１は、ＴＶ、レコーダ、プレイヤ、携帯電話、固定電話、プリンター、ＦＡＸ、ＰＤＡ、ＰＣ、デジタルカメラ、冷蔵庫、電子レンジ、洗濯機などの機器である。リモート機器１２０も同様で、ＴＶ、レコーダ、プレイヤ、携帯電話、固定電話、プリンター、ＦＡＸ、ＰＤＡ、ＰＣ、デジタルカメラ、冷蔵庫、電子レンジ、洗濯機などの機器である。【００１７】
家庭内ネットワーク１００は、外部ネットワーク１１０経由で、リモート機器１２０と繋がっている。そして、自機器１０１とリモート機器１２０とが連携して、自機器１０１のＵＩを更新等する。また、リモート機器１２０は、家庭内ネットワーク１００に存在する機器でもよい。この場合は、自機器１０１と家庭内ネットワーク１００に存在するリモート機器１２０とが連携して、自機器１０１のＵＩの更新等の処理を行うことになる。【００１８】
以上のように構成されたＵＩ制御装置について、以下、その動作を説明する。図２は実施の形態１におけるＵＩ制御装置２００の構成図である。このＵＩ制御装置は、上述したＴＶ等の機器に備えられ、ユーザ・インタフェースの機能を実現する装置であって、通知受付部２０１、ＵＩ一覧取得部２０２、ＵＩ一覧記憶部２０３、要求受付部２０４、ＵＩ選択部２０５、ＵＩ取得部２０６、ＵＩ記憶部２０７及び表示部２０８を備える。なお、本図には、リモート機器１２０及びユーザ２１０も併せて図示されている。【００１９】
通知受付部２０１は、ネットワーク・インタフェース・カード等であり、リモート機器１２０から通知を受け取る。この通知は、リモート機器１２０が外部ネットワーク１１０を通じて、または直接、家庭内ネットワーク１００に参加した場合に、リモート機器１２０が家庭内ネットワーク１００に参加したことを示す旨の通知である。なお、この通知は、家庭内ネットワーク１００に存在する機器全てに対して行われてもよい。【００２０】
ＵＩ記憶部２０７は、本ＵＩ制御装置２００を備える機器に対するユーザからの指示に対応した機能を実現する各種ＵＩプログラムを記憶している不揮発性のメモリ等である。【００２１】
ＵＩ一覧記憶部２０３は、ＵＩ記憶部２０７に記憶されているＵＩプログラムの一覧を示す情報であるＵＩ一覧を記憶している不揮発性のメモリ等である。【００２２】
ＵＩ一覧取得部２０２は、リモート機器１２０から、リモート機器１２０が保持するＵＩプログラムの一覧（ＵＩ一覧）を取得する。参加するリモート機器１２０が複数あれば、全ての機器からＵＩプログラムの一覧（ＵＩ一覧）を取得してもよい。その後、取得したＵＩ一覧をＵＩ一覧記憶部２０３に記憶する。【００２３】
要求受付部２０４は、ユーザ２１０からＵＩを利用したいという要求等の指示を受け付ける操作ボタン等である。【００２４】
ＵＩ選択部２０５は、ＵＩ一覧記憶部２０３に記憶されているＵＩ一覧の中から、ユーザ２１０が利用したい最適なＵＩプログラムを選択する。【００２５】
ＵＩ取得部２０６は、最適なＵＩプログラムを取得する。具体的には、このＵＩ取得部２０６は、ＵＩ選択部２０５が選択した最適なＵＩプログラムがＵＩ記憶部２０７に記憶されているか否かを判断し、ＵＩ記憶部２０７に記憶されていると判断した場合に、ＵＩ記憶部２０７から、そのＵＩプログラムを読み出し、一方、ＵＩ選択部２０５が選択したＵＩプログラムがＵＩ記憶部２０７に記憶されていないと判断した場合に、リモート機器１２０から家庭内ネットワーク１００を介して当該ＵＩプログラムを取得し、ＵＩ記憶部２０７に、取得してきたＵＩプログラムを記憶する。【００２６】
表示部２０８は、ＵＩプログラムを実行する仮想マシン等の実行エンジンとＬＣＤディスプレイ等の表示画面を有し、ＵＩ取得部２０６が取得したＵＩプログラムを実行することで、ユーザ２１０に対して、ＵＩ（ＵＩプログラムの実行に基づく情報）を画面に表示する。【００２７】
なお、通知受付部２０１、ＵＩ一覧取得部２０２、要求受付部２０４、ＵＩ選択部２０５、ＵＩ取得部２０６、表示部２０８等の各処理部は、ＣＰＵ、ＲＯＭ、ＲＡＭ等のメモリ、通信インタフェース等のハードウェアを備えるコンピュータ環境において実行されるプログラムによって実現されてもよいし、専用の電子回路等のハードウェアによって実現されてもよい。他の実施の形態についても同様である。【００２８】
図３は、リモート機器１２０が家庭内ネットワーク１００に参加してから、ＵＩ一覧が記憶されるまでの処理のフローである。【００２９】
処理が開始され（Ｓ３００）、リモート機器１２０が外部ネットワーク１１０を通じて、または直接、家庭内ネットワーク１００に参加した場合に、通知受付部２０１は、リモート機器１２０から参加通知を受け付ける（Ｓ３０１）。この通知を受けた通知受付部２０１は、ＵＩ一覧取得部２０２にＵＩ一覧を取得するように指示する。ＵＩ一覧取得部２０２は、通知受付部２０１から指示があった場合に、リモート機器１２０からＵＩ一覧を取得する（Ｓ３０２）。その後、取得したＵＩ一覧をＵＩ一覧記憶部２０３に記憶して（Ｓ３０３）、処理を終了する（Ｓ３０４）。【００３０】
ここで、具体的な処理例のフローを図３、図５、図６を用いて示す。なお、この説明では、自機器１０１を機器Ａとし、リモート機器１２０を機器Ｂとしている。また、機器Ａは、図５（ａ）の行５０１に対応するＵＩプログラムと行５０２に対応するＵＩプログラムを持っており、図５（ａ）に示される機器ＡのＵＩ一覧５００がＵＩ一覧記憶部２０３に記憶されているものとする。また、機器Ｂは、図５（ｂ）の行５０３、行５０４、行５０５に対応するＵＩプログラムを持っており、図５（ｂ）に示される機器ＢのＵＩ一覧５１０を持っているものとする。【００３１】
図５（ａ）及び（ｂ）に示す「機器名」は、機器の名前が格納される。今回は、自機器１０１が機器Ａで、リモート機器１２０が機器Ｂとしているので、“機器Ａ”と“機器Ｂ”とが記載されている。「カテゴリ」は、機器がどのようなカテゴリに属するものかを示す。機器Ａは“レコーダ”で、機器Ｂは“携帯電話”である。「機能」は、それぞれの機器が利用できるＵＩの機能を示す。機器Ａは写真表示機能と、文字編集機能を有し、機器Ｂは写真表示機能と文字編集機能、通話表示機能を有している。「アドレス」は、該当する機能（ＵＩプログラム）にアクセスするための情報（ＵＩプログラムの置き場所）を示す。機器Ａの写真表示機能にアクセスしたい場合は、ｈｔｔｐ：／／Ａ／ｐｈｏｔｏＵＩ．ｈｔｍｌにアクセスすればよいことになる。「バージョン」は、該当する機能を持つＵＩプログラムのバージョンを示す。機器Ａの写真表示機能を持つＵＩプログラムのバージョンは００００１となっている。「ユーザビリティ」は、使いやすさを示す。機器Ａの写真表示機能を持つＵＩプログラムのユーザビリティはＡであり、使いやすいことを示している。なお、これらの項目は、予めＵＩ一覧内に含まれていてもよいし、ユーザ２１０によって設定ができるようにしておいてもよい。【００３２】
機器Ｂが外部ネットワーク１１０を通じて、または直接、家庭内ネットワーク１００に参加した場合に、機器Ａは、機器Ｂから参加通知を受け付ける（Ｓ３０１）。参加通知を受けた機器Ａは、機器Ｂから、機器ＢのＵＩ一覧を取得する（Ｓ３０２）。そして、取得したＵＩ一覧を記憶することで、自分が保持していたＵＩ一覧と、いま取得したＵＩ一覧とをマージする（Ｓ３０３）。機器Ａが記憶している、マージ後のＵＩ一覧の一例が図６である。機器Ａが記憶しているＵＩ一覧６００は、図５（ａ）の機器ＡのＵＩ一覧５００と図５（ｂ）の機器ＢのＵＩ一覧５１０を合わせた形になっているが、機器Ａが機器ＢからＵＩ一覧を取得した場合に、必要な項目だけで構成するように編集しても良い。【００３３】
図４は、ユーザ２１０からＵＩを利用したい旨の要求があってから、ＵＩ（ＵＩプログラムの実行に基づく情報）が表示されるまでの処理のフローである。処理が開始され（Ｓ４００）、要求受付部２０４が、ユーザ２１０からＵＩを利用したい旨のＵＩ要求を受け付けると（Ｓ４０１）、要求受付部２０４は、ＵＩ選択部２０５に最適なＵＩプログラムを選択するよう指示をする。ＵＩ選択部２０５は、要求受付部２０４からの指示を受けると、ＵＩ一覧記憶部２０３に記憶されているＵＩ一覧の中から、ユーザ２１０が利用したい最適なＵＩプログラムを選択する（Ｓ４０２）。【００３４】
選択する場合の基準は、何でもよく、例えば、同じカテゴリであるリモート機器１２０を優先してもよいし、バージョンを優先してもよい。カテゴリを優先する場合は、カテゴリを元に検索を行い、バージョンを優先する場合は、バージョンを元に検索を行う。また、使いやすさを優先する場合は、ユーザビリティを元に検索を行う。また、ＵＩ一覧記憶部２０３に記憶されているＵＩ一覧には、ＵＩプログラムが保持する機能に関する情報が入っていて、これを元に選択してもよい。また、最適なＵＩプログラムはＵＩ一覧に存在する情報を組み合わせて決定されてもよい。検索した結果は複数あってもよく、複数の中からユーザ２１０がどのＵＩを利用するか選択できてもよい。つまり、ＵＩ一覧を構成する「カテゴリ」、「バージョン」、「ユーザビリティ」の少なくとも一つが、複数個のＵＩプログラムの中から最適なＵＩプログラムを選択するための優先度として利用される。【００３５】
なお、自機器１０１のＵＩプログラムとリモート機器１２０のＵＩプログラムとが同時に使えない場合は、その旨を自機器１０１に通知し、自機器１０１が記憶しているＵＩ一覧に反映させてもよい。この場合、自機器１０１が、同時に使えないＵＩプログラムを最適なＵＩプログラムとして選択したときは、その次に最適なＵＩプログラムを順次、検索していくようにしてもよい。【００３６】
さらに、最適なＵＩプログラムを選択した場合であっても、そのＵＩ（ＵＩプログラムの実行に基づく情報）を表示するために必要となるソフトウェアやハードウェアで実現される表示機能が存在しない場合や、操作するための操作機能が存在しない場合は、次に最適なＵＩプログラムを順次、検索していくようにしてもよい。ハードウェアで実現される表示機能が存在しない場合は、ソフトウェアで表示機能を代用することができれば、最適なＵＩプログラムとして選択してもよい。また、最適なＵＩプログラムを検索するための指標として、ＵＩプログラムの利用頻度、画面のサイズやコンテンツサイズ、画面遷移元との整合性を示す情報（バージョンやテーマ）などを利用してもよい。そして、最適なＵＩプログラムを選択したら、最適なＵＩプログラムが存在しているアドレスをＵＩ取得部２０６に通知する。【００３７】
その後、ＵＩ選択部２０５は、選択したＵＩプログラムのアドレスをＵＩ取得部２０６に通知する。そして、ＵＩ取得部２０６は、ＵＩ選択部２０５から通知を受けると、ＵＩ選択部２０５から受け取ったアドレスを用いて、ＵＩ選択部２０５が選択したＵＩプログラムがＵＩ記憶部２０７に存在するか否かを確認する（Ｓ４０３）。ＵＩ記憶部２０７に該当するＵＩプログラムが存在すれば（Ｓ４０３：Ｙｅｓ）、ＵＩ記憶部２０７からＵＩプログラムを取得する（Ｓ４０４）。一方、ＵＩ記憶部２０７に最適なＵＩプログラムが存在しなければ（Ｓ４０３：Ｎｏ）、ＵＩ選択部２０５から受け取ったアドレスを元に、リモート機器１２０から該当するＵＩプログラムを取得し（Ｓ４０５）、取得したＵＩプログラムをＵＩ記憶部２０７に記憶する（Ｓ４０６）。その後、ＵＩ取得部２０６は、表示部２０８に取得したＵＩ（ＵＩプログラムの実行に基づく情報）を表示するよう指示をし、指示を受けた表示部２０８は、ＵＩ取得部２０６が取得したＵＩ（ＵＩプログラムの実行に基づく情報）を画面に表示し（Ｓ４０７）、処理が終了する（Ｓ４０８）。なお、ＵＩ記憶部２０７には、ＵＩプログラムではなく、リモート機器１２０から取得したＵＩプログラムのアドレスを記憶しておいてもよい。この場合は、再度、ユーザ２１０からＵＩの要求があった場合に、このアドレスを再利用してリモート機器１２０へアクセスし、ＵＩプログラムを取得することができる。【００３８】
ここで、具体的な処理例のフローを図４、図６、図７を用いて示す。なお、この説明でも同様に、自機器１０１を機器Ａとし、リモート機器１２０を機器Ｂとしている。さらに、機器Ｂは既に家庭内ネットワーク１００に参加しており、図６の機器Ａが記憶しているＵＩ一覧６００が既に機器ＡのＵＩ一覧記憶部２０３に記憶されていて、未だユーザ２１０からＵＩ要求がされていない状況を想定している。さらに、当然、機器Ａは、図５（ａ）の行５０１に対応するＵＩプログラムと５０２に対応するＵＩプログラムをＵＩ記憶部２０７に記憶している。【００３９】
この場合に、機器Ａがユーザ２１０から写真表示機能というＵＩを利用したいというＵＩ要求を受け付けたとする（Ｓ４０１）。この場合、機器Ａは、図６の機器Ａが記憶しているＵＩ一覧６００の中から、最適な写真表示機能を持つＵＩプログラムを選択する（Ｓ４０２）。【００４０】
ここでは、バージョンを優先する場合の具体的な例を説明する。機器Ａは、機器Ａが記憶しているＵＩ一覧６００の中から、写真表示機能を持つＵＩプログラムを検索する。写真表示機能に合致するのは、行６０１に対応するＵＩプログラムと行６０３に対応するＵＩプログラムである。次に、行６０１に対応するＵＩプログラムと行６０３に対応するＵＩプログラムに対してバージョンで検索を行う。今回は、行６０３に対応するＵＩプログラムの方が行６０１に対応するＵＩプログラムよりバージョンが高いので、最適なＵＩプログラムとして、行６０３に対応するＵＩプログラムを選択する。【００４１】
行６０３に対応するＵＩプログラムは、機器Ｂにあり、まだＵＩ記憶部２０７に記憶されていないので（Ｓ４０３：Ｎｏ）、機器Ｂから行６０３に対応するＵＩプログラムを取得する（Ｓ４０５）。選択した行６０３に対応するＵＩプログラムを機器Ｂから取得する場合には、選択した行６０３に対応するＵＩプログラムのアドレス「ｈｔｔｐ：／／Ｂ／ｐｈｏｔｏＵＩ．ｈｔｍｌ」を用いて行う。なお、ここではＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）を利用しているが、機器を特定できるアドレスであれば、プロトコルはＨＴＴＰに限らない。そして、取得した行６０３に対応するＵＩプログラムをＵＩ記憶部２０７に記憶する（Ｓ４０６）。【００４２】
図７は、機器Ａが機器ＢからＵＩプログラムを取得した後におけるＵＩ記憶部２０７の一例を示す図であり、ここでは、機器Ａが記憶しているＵＩプログラム７１０と、それらのＵＩプログラム７１０に関する情報７００の一例を示している。機器Ａが記憶しているＵＩプログラム７１０に関する情報７００には、機器Ａが元から持っている図５（ａ）の行５０１に対応するＵＩプログラム７１０ａ、行５０２に対応するＵＩプログラム７１０ｂに加えて、図５（ｂ）に示される機器Ｂから取得した行５０３に対応するＵＩプログラム７１０ｃが追加されている。なお、今回の具体例ではバージョンを元に検索しているので、バージョン情報も記憶されているが、ユーザビリティ等その他の情報を追加してもよい。また、ＵＩ記憶部２０７には、ＵＩプログラムとアドレスに関する情報のみを記憶していてもよいし、アドレスのみ記憶していてもよい。【００４３】
その後、機器Ａは、取得した行６０３に対応するＵＩ（ＵＩプログラムの実行に基づく情報）を表示し（Ｓ４０７）、処理が終了する（Ｓ４０８）。【００４４】
本実施の形態によれば、データ管理サーバがなくても、機器同士が連携することによって、リモート機器から必要なＵＩプログラムが取得されて実行されるので、ユーザにとって最適なＵＩを提供することが可能となるという効果を奏する。【００４５】
（実施の形態２）
次に、本発明の実施の形態２におけるＵＩ制御装置について説明する。【００４６】
本発明の実施の形態２におけるＵＩ制御装置８００は、例えば、写真表示機能を有するＵＩプログラムをリモート機器１２０とやりとりする場合に、リモート機器１２０に存在する写真等のリソースをユーザ２１０が利用したい場合がある。また、そのリソースがＵＩ（ＵＩプログラムの実行に基づく情報）を表示するために利用されるものである場合に、ユーザ２１０がリモート機器１２０で表示されるＵＩ（ＵＩプログラムの実行に基づく情報）と同じような表示をしたいと思ったときには、このリソースを利用する必要がある。【００４７】
さらに、例えば、Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ（登録商標）に代表されるＨＴＭＬブラウザ等のＵＩプログラムをリモート機器１２０とやりとりする場合、通常だと、リモート機器１２０からＵＩプログラムを取得したときは、特別な指定がない限りは、リモート機器１２０に存在するリソースを用いて表示が行われることになる。【００４８】
上記のような場合に、リモート機器１２０が有するリソースを利用できるようにすれば、リモート機器１２０上でＵＩを操作したかのように動作させることも可能となる。【００４９】
したがって、本発明の実施の形態２におけるＵＩ制御装置８００は、リモート機器１２０が有するリソースを利用できるようにして、リモート機器１２０上でＵＩを操作したかのように動作させることを目的とする。【００５０】
ここで、リソースとは、なお、ＵＩプログラムが実行された場合に必要となる画像データ、映像データ及び音声データの少なくとも一つであり、例えば、写真、ビデオ、音楽のようなＡＶコンテンツをいう。また、リソースは、ＡＶコンテンツだけでなく、ユーザ２１０の操作履歴など、その機器にしか存在しないような情報であってもよい。【００５１】
以下、本発明の実施の形態２におけるＵＩ制御装置８００について、図面を参照しながら説明する。【００５２】
図８は、実施の形態２におけるＵＩ制御装置８００の構成を示す図である。このＵＩ制御装置８００は、上述したＴＶ等の機器に備えられ、ユーザ・インタフェースの機能を実現する装置であって、通知受付部２０１、ＵＩ一覧取得部２０２、ＵＩ一覧記憶部２０３、要求受付部２０４、ＵＩ選択部２０５、ＵＩ取得部２０６、ＵＩ記憶部２０７、リソース優先度設定部８０１、リソース優先度記憶部８０２、ＵＩ解析部８０３、リソース取得部８０４、リソース記憶部８０５及び表示部８０６を備える。なお、本図には、リモート機器１２０及びユーザ２１０も併せて図示されている。【００５３】
実施の形態２において、実施の形態１と同様の部分については同一符号を付し、その詳細な説明は省略する。実施の形態２と実施の形態１との相違点は、リソース優先度設定部８０１、リソース優先度記憶部８０２、ＵＩ解析部８０３、リソース取得部８０４、リソース記憶部８０５、表示部８０６である。【００５４】
リソース優先度設定部８０１は、自機器１０１が保持するリソースか、リモート機器１２０が保持するリソースのどちらを優先して利用するかを設定（つまり、決定）する。なお、予めリソースの優先度は決めておいても良い。また、ＵＩプログラムを取得したリモート機器１２０に存在するリソースを利用することを設定できてもよいし、ＵＩプログラムを取得したリモート機器１２０に関係なく、その他の機器を含めて、その中から最適なリソースを利用することを設定できてもよい。【００５５】
リソース優先度記憶部８０２は、リソース優先度設定部８０１で設定した情報を記憶するメモリ等である。【００５６】
ＵＩ解析部８０３は、ＵＩ取得部２０６が取得したＵＩプログラムを解析し、必要なリソース情報を取得する。そして、リソース取得部８０４にリソースを取得するように指示する。その後、リソース取得部８０４から受け取ったリソースを用いて、ＵＩ（ＵＩプログラムの実行に基づく情報）を再表示するように表示部８０６に指示する。【００５７】
リソース取得部８０４は、ＵＩ解析部８０３から受け取ったリソース情報と、リソース優先度記憶部８０２に記憶されているリソース優先度とを用いて、表示部８０６で表示させるリソースを取得する。【００５８】
リソース記憶部８０５は、リソースを記憶する。【００５９】
表示部８０６は、実施の形態１における表示部２０８の機能に加えて、リソース取得部８０４が取得したリソースを表示する機能を有する。【００６０】
図９は、リソース優先度が記憶されるまでの処理のフローである。【００６１】
処理が開始され（Ｓ９００）、ユーザ２１０がリソース優先度設定部８０１に対してリソースの設定を行った場合、リソース優先度設定部８０１はリソース優先度の設定を行う（Ｓ９０１）。そして、リソース優先度設定部８０１は、ユーザ２１０が設定したリソース優先度をリソース優先度記憶部８０２に記憶して（Ｓ９０２）、処理を終了する（Ｓ９０３）。【００６２】
図１０は、ＵＩ解析部８０３がＵＩ取得部２０６からＵＩプログラムを取得してから、ＵＩ（ＵＩプログラムの実行に基づく情報）が表示されるまでのフローである。【００６３】
処理が開始され（Ｓ１０００）、ＵＩ解析部８０３が、ＵＩ取得部２０６からＵＩプログラムを取得すると（Ｓ１００１）、取得したＵＩプログラムを解析する（Ｓ１００２）。解析処理の詳細は後述する。そして、取得したＵＩプログラムを解析して、必要なリソースの情報を取得する（Ｓ１００３）。例えば、リソースの情報から写真リソースを利用する必要があると判断した場合は、ＵＩ解析部８０３は、リソース取得部８０４に、その写真リソースの取得を要求する。ＵＩ解析部８０３から要求を受けたリソース取得部８０４は、リソース優先度記憶部８０２から、自機器１０１とリモート機器１２０のどちらのリソースを優先して取得するかを示す設定情報を取得する（Ｓ１００３）。リソース取得部８０４は、取得した設定情報を用いて、自機器１０１が保持するリソースか、リモート機器１２０が保持するリソースのどちらを優先して利用するかを確認する（Ｓ１００５）。そして、自機器１０１のリソースを優先して利用する場合（Ｓ１００５：Ｎｏ）は、リソース取得部８０４は、リソース記憶部８０５からリソースを取得する（Ｓ１００６）。リモート機器１２０のリソースを優先する場合（Ｓ１００５：Ｙｅｓ）、リソース記憶部８０５に該当するリソースと同じ名前のリソースがあるか否かを確認する（Ｓ１００７）。リソース記憶部８０５に該当するリソースと同じ名前のリソースがない場合（Ｓ１００７：Ｎｏ）、ＵＩプログラムを取得したリモート機器１２０から該当するリソースを取得し（Ｓ１００８）、リソース記憶部８０５に記憶する（Ｓ１００９）。リソース記憶部８０５に該当するリソースと同じ名前のリソースがある場合（Ｓ１００７：Ｙｅｓ）、ＵＩプログラムを取得したリモート機器１２０からリソースを取得する（Ｓ１０１０）。その後、取得したＵＩプログラムとリソースを用いてＵＩ（ＵＩプログラムの実行に基づく情報）を表示し（Ｓ１０１１）、処理が終了する（Ｓ１０１２）。【００６４】
図１１は、取得したＵＩプログラム１１００の一例を示している。ステートメント１１０３は、ＵＩプログラム１１００全てが読み込まれた際に呼び出されるｆｕｎｃｔｉｏｎ  ｌｏａｄＢｏｄｙという関数を示す。ステートメント１１０４は写真を表示するためのＨＴＭＬ要素を示す。ステートメント１１０１は、呼び出されるｆｕｎｃｔｉｏｎ  ｌｏａｄＢｏｄｙという関数の内容を示す。ステートメント１１０２は、その関数の中身であり、“ｐｈｏｔｏ１”というＩＤの付いたＨＴＭＬ要素１１０４に対して、“Ａ．ｊｐｇ”という写真を表示させるための処理を定義している。【００６５】
図１２は、機器Ａが保持する画像リソース１２０１をＵＩ表示した画面表示例１２００（図１２（ａ））と、機器Ｂが保持する画像リソース１２１１をＵＩ表示した画面表示例１２１０（図１２（ｂ））を示している。【００６６】
ここで、リモート機器１２０から図１１に示すＵＩプログラムを取得した場合であって、既にリソース記憶部８０５に同じ名前のリソースがある場合を説明する。なお、自機器１０１を機器Ａとし、リモート機器１２０を機器Ｂとしている。この場合、ＵＩ解析部８０３は、ＵＩ取得部２０６からＵＩプログラムを取得し（Ｓ１００１）、取得したＵＩプログラムを解析する（Ｓ１００２）。そして、必要なリソースが“Ａ．ｊｐｇ”であることを示すリソース情報を取得し（Ｓ１００３）、設定情報を取得する（Ｓ１００４）。さらに、リソース優先度記憶部８０２に記憶されている設定情報が、図１３に示されるように、自機器１０１のリソースを優先するように設定されている場合は（Ｓ１００５：Ｎｏ）、リソース取得部８０４は、リソース記憶部８０５から“Ａ．ｊｐｇ”を取得し（Ｓ１００６）、表示部８０６は、図１３（ａ）に示される画面表示例１２００のように、機器Ａの“Ａ．ｊｐｇ”を用いたＵＩ表示する（Ｓ１０１１）。リソース優先度記憶部８０２に記憶されている設定情報がリモート機器１２０のリソースを優先するよう設定されている場合には（Ｓ１００５：Ｙｅｓ）、今回、リソース記憶部８０５に該当するリソースと同じ名前のリソースがある状況を想定しているので（Ｓ１００７：Ｙｅｓ）、リソース取得部８０４は、リモート機器１２０から“Ａ．ｊｐｇ”を取得し（Ｓ１０１０）、表示部８０６は、図１３（ｂ）に示される画面表示例１２１０のように、機器Ｂの“Ａ．ｊｐｇ”を用いたＵＩ表示する（Ｓ１０１１）。【００６７】
このように、本願発明によれば、リソース優先度の設定によって、リモート機器１２０が有するリソースを利用できるようになるので、リモート機器１２０上でＵＩを操作したかのように動作させることが可能となる。例えば、Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ（登録商標）に代表されるＨＴＭＬブラウザ等のＵＩプログラムをリモート機器１２０とやりとりする場合、通常だと、リモート機器１２０からＵＩプログラムを取得したときは、特別な指定がない限りは、リモート機器１２０に存在するリソースを用いて表示が行われることになるが、本実施の形態では、リモート機器１２０が有するリソースを利用できるようになるので、リモート機器１２０上でＵＩを操作したかのように動作させることが可能となる。【００６８】
（実施の形態３）
次に、本発明の実施の形態３におけるＵＩ制御装置について説明する。【００６９】
本発明の実施の形態３におけるＵＩ制御装置１３００は、リモート機器１２０のＵＩの方が自機器１０１のＵＩと比較して利便性が良い場合には、利便性の高いリモート機器１２０のＵＩを利用できるようにしたものである。以下、本発明の実施の形態３におけるＵＩ制御装置１３００について、図面を参照しながら説明する。【００７０】
図１４は、実施の形態３におけるＵＩ制御装置１３００の構成を示す図である。このＵＩ制御装置１３００は、上述したＴＶ等の機器に備えられ、ユーザ・インタフェースの機能を実現する装置であって、通知受付部２０１、ＵＩ一覧取得部２０２、ＵＩ一覧記憶部２０３、要求受付部２０４、ＵＩ選択部２０５、ＵＩ取得部２０６ａ、ＵＩ記憶部２０７、一時記憶部１３０２及び表示部２０８を備える。なお、本図には、リモート機器１２０及びユーザ２１０も併せて図示されている。【００７１】
実施の形態３において、実施の形態１と同様の部分については同一符号を付し、その詳細な説明は省略する。実施の形態３と実施の形態１との相違点は、ＵＩ取得部２０６ａが実施の形態１におけるＵＩ取得部２０６の機能に加えてＵＩ委譲部１３０１を有する点と、一時記憶部１３０２である。【００７２】
ＵＩ委譲部１３０１は、ＵＩの委譲処理を行う。具体的には、このＵＩ委譲部１３０１は、ＵＩ選択部２０５が選択したＵＩプログラムがＵＩ記憶部２０７に記憶されていないとＵＩ取得部２０６ａが判断した場合に、当該ＵＩプログラムの実行をリモート機器に委譲する。【００７３】
一時記憶部１３０２は、ＵＩ委譲部１３０１が要求受付部２０４からＵＩ選択部２０５を介して受け取った入力結果を一時的に記憶しておくメモリ等である。【００７４】
図１５は、ＵＩ選択部２０５から最適なＵＩプログラムの通知を受けてから、ＵＩ（ＵＩプログラムの実行に基づく情報）が表示されるまでのフローである。処理が開始され（Ｓ１４００）、ＵＩ取得部２０６ａがＵＩ選択部２０５から最適なＵＩプログラムの通知を受けると（Ｓ１４０１）、ＵＩ記憶部２０７にＵＩ選択部２０５が選択したＵＩプログラムが記憶されているか否かを確認する（Ｓ１４０２）。そして、ＵＩ記憶部２０７にＵＩ選択部２０５が選択したＵＩプログラムが記憶されていれば（Ｓ１４０２：Ｙｅｓ）、そのＵＩプログラムをＵＩ記憶部２０７から取得する（Ｓ１４０３）。一方、ＵＩ記憶部２０７にＵＩ選択部２０５が選択したＵＩプログラムが記憶されていなければ（Ｓ１４０２：Ｎｏ）、ＵＩ委譲部１３０１は、リモート機器１２０が保持するＵＩプログラムをリモート機器１２０上で起動させる（Ｓ１４０４）。そして、ＵＩ委譲部１３０１は、ユーザ２１０が要求受付部２０４で入力した結果を受け取ると（Ｓ１４０５）、その入力結果を一時記憶部１３０２に記憶しておく。そして、あるタイミングで、一時記憶部１３０２に記憶されている入力結果をリモート機器１２０に通知する（Ｓ１４０６）。このタイミングはユーザ２１０が設定できるようにしてもよいし、予めＵＩ制御装置１３００が決めておいてもよい。また、ＵＩプログラムが文字編集ＵＩである場合には、このタイミングは、入力した文字を変換するときでもよいし、一文字毎に変換したときでもよい。そして、ＵＩ委譲部１３０１は、リモート機器１２０が処理した処理結果を受け取る（Ｓ１４０７）。その後、ＵＩ委譲部１３０１は表示部２０８に表示するように指示し、指示を受け取った表示部２０８はＵＩ表示（Ｓ１４０８）し、処理が終了する（Ｓ１４０９）。【００７５】
例えば、ユーザ２１０から要求受付部２０４に対して文字編集ＵＩを利用したいという要求が発生したとする。この場合、要求受付部２０４は、ＵＩ選択部２０５に対して、ユーザ２１０にとって最適な文字編集ＵＩプログラムを選択するよう指示する。ここで、指示を受けたＵＩ選択部２０５は、アドレス「ｈｔｔｐ：／／Ｂ／ｆｅｐＵＩ．ｈｔｍｌ」に相当する文字編集ＵＩプログラムを選択したとする。この場合、ＵＩ取得部２０６ａは、ＵＩ選択部２０５から指示を受けると、ＵＩ記憶部２０７を参照し、アドレス「ｈｔｔｐ：／／Ｂ／ｆｅｐＵＩ．ｈｔｍｌ」に相当する文字編集ＵＩプログラムが記憶されているか否かを確認する。記憶されていればそのＵＩ（ＵＩプログラムの実行に基づく情報）を表示するように表示部２０８に指示するが、記憶されていなければ、ＵＩ委譲部１３０１は、リモート機器１２０に対して、アドレス「ｈｔｔｐ：／／Ｂ／ｆｅｐＵＩ．ｈｔｍｌ」に相当する文字編集ＵＩプログラムの起動を依頼する。その後、ユーザ２１０が要求受付部２０４で文字を入力した場合には、その入力結果がリモート機器１２０の文字編集ＵＩプログラムに反映される。いつリモート機器１２０の文字編集ＵＩプログラムに反映させるかを示すタイミングは、一文字毎でもよいし、ユーザ２１０が文字を変換したときでもよい。リモート機器１２０の文字編集ＵＩプログラムへの文字入力を完了させた場合、リモート機器１２０の文字編集ＵＩプログラムで処理された結果は、ＵＩ委譲部１３０１へ通知される。ＵＩ委譲部１３０１は、その処理結果を表示部２０８に通知し、通知を受けた表示部２０８はＵＩ表示をする。【００７６】
このように、本願発明によれば、ユーザ２１０はリモート機器１２０の文字編集ＵＩを利用することができるので、ＵＩプログラムをダウンロードするのが面倒だと感じる場合やＵＩプログラムをダウンロードする記憶領域が不足している場合等でも、ユーザ２１０にとって最適なＵＩプログラムを用いて動作させることが可能となる。【００７７】
なお、ユーザ２１０が直接、リモート機器１２０の文字編集ＵＩプログラムを起動できるようにしてもよい。また、ＵＩ委譲部１３０１は、委譲したＵＩプログラムの利用が中断（他の操作を実行、ネットワーク切断、電池切れなど）したことを検知でき、それをユーザ２１０に通知できるようにしてもよい。【００７８】
図１６を用いて、ＵＩ委譲をする場合の操作画面の例を具体的に説明する。図１６のＴＶ１５００は、プレイヤ１５０１と接続されており、プレイヤ１５０１の表示に関する出力を表示する。プレイヤ１５０１は、自機器の一例であり、ＢＤやＤＶＤ、ＣＤといったメディアを再生する機器である。携帯電話１５０２は、リモート機器の一例であり、プレイヤ１５０１と同じ家庭内ネットワーク１００上に存在する。プレイヤ操作画面１５１０は、プレイヤ１５０１における文字編集時の操作画面を示す。携帯電話操作画面１５１１は、携帯電話１５０２における文字編集時の操作画面を示す。文字編集画面１５１２は、ユーザ２１０から、プレイヤ１５０１に対して、タイトル編集などの文字入力要求が発生した場合（操作手順１）の画面である。ここでは、本来であれば、プレイヤ１５０１に対して行うべき文字編集の操作が、携帯電話１５０２で行われている例が示されている。【００７９】
ＵＩ委譲部１３０１経由で、携帯電話１５０２上の文字編集画面の起動（文字編集画面１５１３）を行う場合（操作手順２）、文字編集画面１５１２の画面上には、ＵＩ委譲部１３０１がどの機器へ画面を委譲したのかが示されてもよい。文字編集画面１５１４では、携帯電話１５０２の文字編集のＵＩプログラムを利用して、ユーザ２１０が文字を入力する。ユーザ２１０の文字編集の入力が完了した場合（操作手順３）は、ＵＩ委譲部１３０１に文字入力の結果を返す。プレイヤ１５０１は、携帯電話１５０２で入力された文字入力結果をプレイヤ１５０１の結果として反映する（文字編集画面１５１５）。その際、画面への反映だけでなく、プレイヤ１５０１が保持する文字入力辞書データベースへ、今回の結果が反映されてもよい。【００８０】
なお、図１６では、文字入力の例で説明したが、この場合に限らない。あるＤＶＤレコーダで、映像を録画し、録画した結果をＤＶＤプレイヤへ送りつけ、ＤＶＤプレイヤに録画した結果を保存できてもよい。【００８１】
このように、本願発明によれば、リモート機器１２０のＵＩの方が自機器１０１のＵＩと比較して利便性が良い場合であっても、ユーザ２１０は利便性の高いリモート機器１２０のＵＩが利用できるため、ＵＩプログラムをダウンロードするのが面倒だと感じる場合やＵＩプログラムをダウンロードする記憶領域が不足している場合等でも、ユーザ２１０にとって最適なＵＩプログラムを用いて動作させることが可能となる。【００８２】
（実施の形態４）
次に、本発明の実施の形態４におけるＵＩ制御装置について説明する。【００８３】
以下、本発明の実施の形態４におけるＵＩ制御装置１６００について、図面を参照しながら説明する。本実施の形態４は、実施の形態３におけるＵＩプログラムを「機能」に置き換えたものに相当する。ここで、「機能」とは、ＵＩ制御装置が備えられる機器が備える機能をいい、具体的には、ＵＩプログラムだけでなく、機器の機能を発揮するためのプログラム及びデータである。【００８４】
図１７は、実施の形態４におけるＵＩ制御装置１６００の構成を示す図である。このＵＩ制御装置１６００は、上述したＴＶ等の機器に備えられ、各種機能を実現する装置であって、通知受付部２０１、機能一覧取得部１６０１、機能一覧記憶部１６０２、要求受付部１６０３、機能アクセス検知部１６０４、機能選択部１６０５、機能結果取得部１６０６、機能記憶部１６０７及び表示部１６０８を備える。なお、本図には、リモート機器１２０及びユーザ２１０も併せて図示されている。【００８５】
実施の形態４において、実施の形態１と同様の部分については同一符号を付し、その詳細な説明は省略する。実施の形態４と実施の形態１との相違点は、機能一覧取得部１６０１、機能一覧記憶部１６０２、要求受付部１６０３、機能アクセス検知部１６０４、機能選択部１６０５、機能結果取得部１６０６、機能記憶部１６０７、表示部１６０８である。【００８６】
なお、実施の形態４においての機能とは、ＤＶＤレコーダにおける番組予約機能、動画解析機能、文字編集機能などのリモート機器１２０を制御するための機能や、ハードウェアへのアクセスによる機能などをいう。【００８７】
図１７の機能一覧取得部１６０１は、リモート機器１２０から機能の一覧を取得する。参加するリモート機器１２０が複数あれば、全ての機器から機能の一覧を取得してもよい。その後、取得した機能一覧を機能一覧記憶部１６０２に記憶する。機能一覧記憶部１６０２は、機能の一覧とその機能が存在しているアドレスを記憶している。要求受付部１６０３は、ユーザ２１０からＵＩの要求を受け付けると、機能アクセス検知部１６０４に処理をするように通知する。通知を受けた機能アクセス検知部１６０４は、ユーザ２１０が要求したＵＩが、自機器１０１またはリモート機器１２０が保持する機能にアクセスしたか否かを検知する。機能アクセス検知部１６０４は、ＵＩが機能にアクセスしたことを検知したら、機能選択部１６０５に処理をするように通知する。【００８８】
例えば、ユーザ２１０から要求受付部１６０３に対して、ＡというＵＩを利用したいという要求が発生したとする。この場合には、機能アクセス検知部１６０４は、ＡというＵＩが、自機器１０１やリモート機器１２０が保持する機能へアクセスしたことを検知した場合には、機能選択部１６０５に対して、ユーザ２１０にとって最適な機能の選択をするように通知することになる。【００８９】
通知を受けた機能選択部１６０５は、機能一覧記憶部１６０２に記憶されている機能一覧の中から、ユーザ２１０が利用したい最適な機能を有する機器のアドレスを選択する。このアドレスは、ＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）でもよいし、機器を特定できるアドレスであれば、プロトコルはＨＴＴＰに限らない。【００９０】
その後、そのアドレスを機能結果取得部１６０６に通知する。通知を受けた機能結果取得部１６０６は、機能選択部１６０５から通知されたアドレスをもとに、機能記憶部１６０７に、機能選択部１６０５が選択した機能があるか否かを確認する。機能選択部１６０５が選択した機能が機能記憶部１６０７にあれば、その機能を実行した結果を取得する。機能選択部１６０５が選択した機能が機能記憶部１６０７になければ、リモート機器１２０にその機能を実行させ、その実行結果をリモート機器１２０から取得する。その後、表示部１６０８に表示するよう通知をする。通知を受けた表示部１６０８は、実行結果を表示する。【００９１】
なお、自機器１０１が保持する機能かリモート機器１２０が保持する機能のどちらを優先して利用するかを示した機能の優先度を用いてもよい。ここでいうリモート機器１２０とは、ＵＩを取得したリモート機器１２０であってもよいし、ＵＩを取得したリモート機器１２０に関係なく、最適な機能を持つ機器であってもよい。そして、この機能の優先度は、予め決めておいても良いし、ユーザ２１０が設定できるようにしてもよい。【００９２】
このような場合に、機能結果取得部１６０６は、機能選択部１６０５が選択した機能のアドレスを受け取ると、機能の優先度を用いて、どちらの機器から機能の結果を取得するかを確認する。自機器１０１の方が高ければ、機能記憶部１６０７から機能を取得し、その実行結果を取得する。また、リモート機器１２０の方が高ければ、リモート機器１２０にその機能を実行させ、その実行結果をリモート機器１２０から取得することになる。【００９３】
本実施の形態によれば、データ管理サーバがなくても、機器同士が連携することによって、リモート機器から必要な機能が取得されて実行されるので、ユーザにとって最適な機能を提供することが可能となるという効果を奏する。【００９４】
なお、本実施の形態４は、実施の形態３におけるＵＩプログラムを「機能」に置き換えたものに相当したが、本発明は、これに限定されず、実施の形態１及び２おけるＵＩプログラムを「機能」に置き換えたものとして実現してもよい。【００９５】
以上、本発明に係るＵＩ制御装置について、実施の形態１〜４に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではない。本発明の主旨を逸脱しない範囲で各実施の形態における構成要素を任意に組み合わせて実現される形態や、各実施の形態に対して当業者が思いつく各種変形を施して得られる形態も、本発明に含まれる。【００９６】
また、本発明は、上記実施の形態１〜４におけるＵＩ制御装置として実現されるだけでなく、ＵＩ制御方法として実現してもよいし、ＵＩ制御プログラムやＵＩ制御プログラムを記録した記録媒体として実現してもよい。【００９７】
さらに、単一の半導体基板に作り込んだＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）等の集積回路として構成されてもよい。そのときに、１チップの集積回路として実現する構成要素としては、各実施の形態における全ての構成要素であってもよいし、その一部であってもよいし、このＵＩ制御装置が備えられる機器の構成要素も含まれてもよい。たとえば、実施の形態１であれば、通知受付部２０１、ＵＩ一覧取得部２０２、ＵＩ一覧記憶部２０３、要求受付部２０４、ＵＩ選択部２０５、ＵＩ取得部２０６、ＵＩ記憶部２０７、及び、表示部２０８のうちディスプレイを除く部分を１チップの集積回路として実現してもよい。
【産業上の利用可能性】
【００９８】
本発明のＵＩ制御装置、ＵＩ制御方法、ＵＩ制御方法を用いたコンピュータプログラム及びそのコンピュータプログラムを記録した記録媒体、ＵＩ制御集積回路は、データ管理サーバがなくても、機器同士が連携することによって、ユーザにとって最適なＵＩを提供できるという効果を有し、ＴＶ、レコーダ、プレイヤ、携帯電話、固定電話、プリンター、ＦＡＸ、ＰＤＡ、ＰＣ、デジタルカメラ、冷蔵庫、電子レンジ、洗濯機などの機器に用いられるものとして有用である。
【図１】
2009090872.tif 000003
【図２】
2009090872.tif 000004
【図３】
2009090872.tif 000005
【図４】
2009090872.tif 000006
【図５】
2009090872.tif 000007
【図６】
2009090872.tif 000008
【図７】
2009090872.tif 000009
【図８】
2009090872.tif 000010
【図９】
2009090872.tif 000011
【図１０】
2009090872.tif 000012
【図１１】
2009090872.tif 000013
【図１２】
2009090872.tif 000014
【図１３】
2009090872.tif 000015
【図１４】
2009090872.tif 000016
【図１５】
2009090872.tif 000017
【図１６】
2009090872.tif 000018
【図１７】
2009090872.tif 000019
【手続補正書】
【提出日】平成21年4月22日(2009.4.22)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ユーザ・インタフェース制御装置であって、
前記ユーザ・インタフェース制御装置に記憶されているＵＩプログラムの一覧を示す情報であるＵＩ一覧に、前記ユーザ・インタフェース制御装置と通信路で接続されたリモート機器に記憶されているＵＩプログラムの一覧を追加するＵＩ一覧取得部と、
追加された前記ＵＩ一覧の中からユーザによって選択されたＵＩプログラムが前記ユーザ・インタフェース制御装置に記憶されていない場合に、前記リモート機器から、選択された前記ＵＩプログラムを取得するＵＩ取得部と、
取得された前記ＵＩプログラムを実行して、前記ユーザ・インタフェース制御装置又は前記ユーザ・インタフェース制御装置を備える機器の画面にユーザ・インタフェースを表示する表示部と
を備えるユーザ・インタフェース制御装置。
【請求項２】
前記ユーザ・インタフェース制御装置はさらに、ＵＩ記憶部と、ＵＩ一覧記憶部と、要求受付部と、ＵＩ選択部とを備え、
前記ＵＩプログラムは、ユーザからの指示に対応した機能を実現するためのプログラムであり、
前記ＵＩ記憶部は、前記ＵＩプログラムを記憶しており、
前記ＵＩ一覧記憶部は、前記ＵＩ一覧を記憶しており、
前記要求受付部は、ユーザから、利用したいユーザ・インタフェースの要求を受け付け、
前記ＵＩ選択部は、受け付けられた前記ユーザ・インタフェースに対応するＵＩプログラムを、前記ＵＩ一覧に登録されたＵＩプログラムの中から選択する
請求項１記載のユーザ・インタフェース制御装置。
【請求項３】
さらに、前記リモート機器が前記通信路に接続された旨の通知を受け取る通知受付部を備え、
前記ＵＩ一覧取得部は、前記通知受付部が前記通知を受け付けた場合に、前記リモート機器から、当該リモート機器が記憶しているＵＩプログラムの一覧を取得する
請求項１記載のユーザ・インタフェース制御装置。
【請求項４】
前記ＵＩ一覧では、当該ＵＩ一覧が示すＵＩプログラムごとに、当該ＵＩプログラムによって実現される機能が対応づけられ、
前記ＵＩ選択部は、前記ＵＩ一覧に、前記要求受付部が受け付けたユーザ・インタフェースの機能を実現するＵＩプログラムが複数個登録されている場合には、前記複数個のＵＩプログラムの中から、最適なＵＩプログラムを選択する
請求項１記載のユーザ・インタフェース制御装置。
【請求項５】
前記ＵＩ一覧では、当該ＵＩ一覧が示すＵＩプログラムごとに、当該ＵＩプログラムの選択に関する優先度が対応づけられ、
前記ＵＩ選択部は、前記ＵＩ一覧における前記優先度を参照することで、前記複数個のＵＩプログラムの中から、最適なＵＩプログラムを選択する
請求項４記載のユーザ・インタフェース制御装置。
【請求項６】
前記ＵＩ一覧では、当該ＵＩ一覧が示すＵＩプログラムごとに、当該ＵＩプログラムの置き場所を示すアドレスが対応づけられ、
前記ＵＩ取得部は、前記ＵＩ一覧における前記アドレスを参照することで、前記ＵＩ選択部が選択したＵＩプログラムに対応づけられた前記アドレスが示す置き場所から、前記ＵＩプログラムを取得する
請求項１記載のユーザ・インタフェース制御装置。
【請求項７】
さらに、
前記ＵＩ取得部で取得されたＵＩプログラムを解析することで、当該ＵＩプログラムが実行された場合に必要となる画像データ、映像データ及び音声データの少なくとも一つであるリソースを特定するリソース解析部と、
前記リソース解析部で特定されたリソースを、前記機器又は前記リモート機器から取得するリソース取得部とを備え、
前記表示部は、前記ＵＩプログラムを実行したときに、前記リソース取得部で取得されたリソースを提示する
請求項１記載のユーザ・インタフェース制御装置。
【請求項８】
さらに、
前記ＵＩ記憶部に記憶されているＵＩプログラムで必要とされるリソースを記憶しているリソース記憶部と、
リソースの取得先として、前記機器及び前記リモート機器のいずれを優先するかを示す情報である優先度を記憶しているリソース優先度記憶部とを備え、
前記リソース取得部は、前記リソース優先度記憶部に記憶されている優先度に従って、前記機器又は前記リモート機器から前記リソースを取得する
請求項７記載のユーザ・インタフェース制御装置。
【請求項９】
前記ＵＩ取得部は、前記ＵＩ選択部が選択したＵＩプログラムが前記ＵＩ記憶部に記憶されていないと判断した場合に、当該ＵＩプログラムの実行を前記リモート機器に委譲するＵＩ委譲部を有する
請求項１記載のユーザ・インタフェース制御装置。
【請求項１０】
前記ＵＩ委譲部は、委譲した前記ＵＩプログラムによる処理結果を前記リモート機器から受け取り、
前記表示部は、前記ＵＩ委譲部が受け取った前記処理結果を提示する
請求項９記載のユーザ・インタフェース制御装置。
【請求項１１】
前記ＵＩプログラムは、仮想マシンで実行されるプログラム、又は、スクリプト言語で記述されたプログラムであり、
前記機器及び前記リモート機器は、前記仮想マシン、又は、前記スクリプト言語用のインタプリタを備える
請求項１記載のユーザ・インタフェース制御装置。
【請求項１２】
通信路で接続された複数の電子機器から構成される通信システムであって、
前記複数の電子機器のそれぞれは、請求項１記載のユーザ・インタフェース制御装置を備える
ことを特徴とする通信システム。
【請求項１３】
ユーザ・インタフェース制御方法であって、
ユーザ・インタフェース制御装置に記憶されているＵＩプログラムの一覧を示す情報であるＵＩ一覧に、前記ユーザ・インタフェース制御装置と通信路で接続されたリモート機器に記憶されているＵＩプログラムの一覧を追加するＵＩ一覧取得ステップと、
追加された前記ＵＩ一覧の中からユーザによって選択されたＵＩプログラムが前記ユーザ・インタフェース制御装置に記憶されていない場合に、前記リモート機器から、選択された前記ＵＩプログラムを取得するＵＩ取得ステップと、
取得された前記ＵＩプログラムを実行して、前記ユーザ・インタフェース制御装置又は前記ユーザ・インタフェース制御装置を備える機器の画面にユーザ・インタフェースを表示する表示ステップと
を含むユーザ・インタフェース制御方法。
【請求項１４】
ユーザ・インタフェース制御装置に実行させるプログラムであって、
請求項１３記載のステップをコンピュータに実行させるプログラム。
【請求項１５】
ユーザ・インタフェース制御装置に用いられる集積回路であって、
前記ユーザ・インタフェース制御装置に記憶されているＵＩプログラムの一覧を示す情報であるＵＩ一覧に、前記ユーザ・インタフェース制御装置と通信路で接続されたリモート機器に記憶されているＵＩプログラムの一覧を追加するＵＩ一覧取得部と、
追加された前記ＵＩ一覧の中からユーザによって選択されたＵＩプログラムが前記ユーザ・インタフェース制御装置に記憶されていない場合に、前記リモート機器から、選択された前記ＵＩプログラムを取得するＵＩ取得部と、
取得された前記ＵＩプログラムを実行して、前記ユーザ・インタフェース制御装置又は前記ユーザ・インタフェース制御装置を備える機器の画面にユーザ・インタフェースを表示する表示部と
を備える集積回路。
【手続補正書】
【提出日】平成22年7月14日(2010.7.14)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機器同士が連携することにより、ユーザにとって最適なユーザ・インタフェース（以下、「ＵＩ」ともいう）を提供することを可能とするＵＩ制御装置、ＵＩ制御方法、ＵＩ制御プログラム、ＵＩ制御プログラムを記録した記録媒体、ＵＩ制御集積回路に関するものである。
【背景技術】
【０００２】
ＵＩ制御装置の従来技術としては、データ管理サーバでユーザ所有の家電の機種、更新状況等を一元管理し、ネットワークに接続可能な家電にインストールされる更新データを提供する技術がある。
【０００３】
そして、このような従来の技術としては、例えば特許文献１に記載されたものが知られている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−３４１８８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来技術においては、ＵＩの更新をするためにはネットワークに接続されたデータ管理サーバが必要となるので、ＵＩの更新をする場合には、データ管理サーバを介さなければならない。したがって、データ管理サーバがないと、ユーザにとって最適なＵＩを提供することができないという課題を有している。
【０００６】
本発明は上記従来の課題を解決するものであり、データ管理サーバがなくても、ユーザにとって最適なＵＩを提供することを可能とするＵＩ制御装置等を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明のＵＩ制御装置は、機器に備えられ、ユーザ・インタフェースの機能を実現するユーザ・インタフェース制御装置であって、前記機器に対するユーザからの指示に対応した機能を実現するためのプログラムであるＵＩプログラムを記憶しているＵＩ記憶部と、前記ＵＩ記憶部に記憶されているＵＩプログラムの一覧を示す情報であるＵＩ一覧を記憶しているＵＩ一覧記憶部と、前記機器と通信路で接続されたリモート機器から、当該リモート機器が記憶しているＵＩプログラムの一覧を取得し、前記ＵＩ一覧記憶部に記憶されているＵＩ一覧に追加して登録するＵＩ一覧取得部と、ユーザから、ユーザ・インタフェースを利用したい旨の要求を受け付ける要求受付部と、前記ＵＩ一覧記憶部に記憶されているＵＩ一覧を参照することにより、前記要求受付部が受け付けたユーザ・インタフェースに対応するＵＩプログラムを、前記ＵＩ一覧に登録されたＵＩプログラムの中から選択するＵＩ選択部と、前記ＵＩ選択部が選択したＵＩプログラムが前記ＵＩ記憶部に記憶されているか否かを判断し、前記ＵＩ記憶部に記憶されていると判断した場合に、前記ＵＩ記憶部から前記ＵＩプログラムを読み出して取得するＵＩ取得部と、前記ＵＩ取得部で取得されたＵＩプログラムを実行することで、前記ユーザに情報を提示する表示部とを備える。
【０００８】
ここで、前記ＵＩ取得部は、前記ＵＩ選択部が選択したＵＩプログラムが前記ＵＩ記憶部に記憶されていないと判断した場合に、前記リモート機器から前記通信路を介して当該ＵＩプログラムを取得し、前記表示部は、前記ＵＩ取得部が前記リモート機器から取得したＵＩプログラムを実行する構成としてもよい。
【０００９】
あるいは、前記ＵＩ取得部は、前記ＵＩ選択部が選択したＵＩプログラムが前記ＵＩ記憶部に記憶されていないと判断した場合に、当該ＵＩプログラムの実行を前記リモート機器に委譲するＵＩ委譲部を有する構成としてもよい。
【００１０】
本構成によって、データ管理サーバがなくても、リモート機器からＵＩプログラムを取得して実行する、あるいは、リモート機器にＵＩプログラムの実行を委譲するので、機器同士が連携することによってＵＩの更新等をし、ユーザにとって最適なＵＩを提供することが可能となるという効果が得られる。
【発明の効果】
【００１１】
本発明のＵＩ制御装置によれば、データ管理サーバがなくても、機器同士が連携することによってＵＩの更新等をし、ユーザにとって最適なＵＩを提供することが可能となるという効果が得られる。
【００１２】
本発明により、機器のユーザ・インタフェースが向上され、特に、家庭内ネットワークの普及によって機器同士の連携が可能になってきた今日における実用的価値は極めて高い。
【図面の簡単な説明】
【００１３】
【図１】図１は、本発明の実施の形態１におけるＵＩ制御装置を含む機器に関するネットワーク構成図である。
【図２】図２は、本発明の実施の形態１におけるＵＩ制御装置の図である。
【図３】図３は、本発明の実施の形態１におけるＵＩ一覧が記憶されるまでのフローチャートである。
【図４】図４は、本発明の実施の形態１におけるＵＩプログラムの実行に基づく情報が表示されるまでのフローチャートである。
【図５】図５（ａ）は本発明の実施の形態１における機器ＡのＵＩ一覧を示した図であり、図５（ｂ）は本発明の実施の形態１における機器ＢのＵＩ一覧を示した図である。
【図６】図６は、本発明の実施の形態１における機器が記憶しているＵＩ一覧情報を示した図である。
【図７】図７は、本発明の実施の形態１における機器が記憶しているＵＩに関する情報の図である。
【図８】図８は、本発明の実施の形態２におけるＵＩ制御装置の図である。
【図９】図９は、本発明の実施の形態２におけるリソース優先度が記憶されるまでのフローチャートである。
【図１０】図１０は、本発明の実施の形態２におけるＵＩプログラムの実行に基づく情報が表示されるまでのフローチャートである。
【図１１】図１１は、本発明の実施の形態２におけるＵＩプログラムの一例を示した図である。
【図１２】図１２（ａ）は本発明の実施の形態２における機器Ａが記憶している写真リソースを表示したときの表示画面を示した図であり、図１２（ｂ）は本発明の実施の形態２における機器Ｂが記憶している写真リソースを表示したときの表示画面を示した図である。
【図１３】図１３は、本発明の実施の形態２におけるリソース優先度記憶部に記憶された設定情報の一例を示す図である。
【図１４】図１４は、本発明の実施の形態３におけるＵＩ制御装置の図である。
【図１５】図１５は、本発明の実施の形態３におけるＵＩプログラムの実行に基づく情報が表示されるまでのフローチャートである。
【図１６】図１６は、本発明の実施の形態３におけるＵＩ委譲をする場合の操作画面の一例を示した図である。
【図１７】図１７は、本発明の実施の形態４におけるＵＩ制御装置の図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態におけるＵＩ制御装置について、図面を参照しながら説明する。なお、ＵＩは、個々のＵＩに対応するＵＩプログラムによって実現される。ここでいうＵＩプログラムとは、機器に対するユーザからの指示に対応した機能を実現するためのプログラムであり、ユーザに対する情報の表示様式や、ユーザのデータ入力方式を規定したプログラム等をいう。例えば、Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ（登録商標）に代表されるＨＴＭＬブラウザ等のプログラムであってもよいし、Ｊａｖａ（登録商標)等の仮想マシンで実行される実行形式又はスクリプト形式のプログラムであってもよいし、写真表示機能や文字編集機能、通話表示機能等のプログラムであってもよい。
【００１５】
（実施の形態１）
まず、本発明の実施の形態１におけるＵＩ制御装置について説明する。
【００１６】
図１は実施の形態１のＵＩ制御装置に関するネットワーク構成図である。家庭内ネットワーク１００は、ＵＩ制御装置を保持する自機器１０１を有するネットワークであり、無線ネットワークや有線ネットワークで実現される。自機器１０１は、ＴＶ、レコーダ、プレイヤ、携帯電話、固定電話、プリンター、ＦＡＸ、ＰＤＡ、ＰＣ、デジタルカメラ、冷蔵庫、電子レンジ、洗濯機などの機器である。リモート機器１２０も同様で、ＴＶ、レコーダ、プレイヤ、携帯電話、固定電話、プリンター、ＦＡＸ、ＰＤＡ、ＰＣ、デジタルカメラ、冷蔵庫、電子レンジ、洗濯機などの機器である。
【００１７】
家庭内ネットワーク１００は、外部ネットワーク１１０経由で、リモート機器１２０と繋がっている。そして、自機器１０１とリモート機器１２０とが連携して、自機器１０１のＵＩを更新等する。また、リモート機器１２０は、家庭内ネットワーク１００に存在する機器でもよい。この場合は、自機器１０１と家庭内ネットワーク１００に存在するリモート機器１２０とが連携して、自機器１０１のＵＩの更新等の処理を行うことになる。
【００１８】
以上のように構成されたＵＩ制御装置について、以下、その動作を説明する。図２は実施の形態１におけるＵＩ制御装置２００の構成図である。このＵＩ制御装置は、上述したＴＶ等の機器に備えられ、ユーザ・インタフェースの機能を実現する装置であって、通知受付部２０１、ＵＩ一覧取得部２０２、ＵＩ一覧記憶部２０３、要求受付部２０４、ＵＩ選択部２０５、ＵＩ取得部２０６、ＵＩ記憶部２０７及び表示部２０８を備える。なお、本図には、リモート機器１２０及びユーザ２１０も併せて図示されている。
【００１９】
通知受付部２０１は、ネットワーク・インタフェース・カード等であり、リモート機器１２０から通知を受け取る。この通知は、リモート機器１２０が外部ネットワーク１１０を通じて、または直接、家庭内ネットワーク１００に参加した場合に、リモート機器１２０が家庭内ネットワーク１００に参加したことを示す旨の通知である。なお、この通知は、家庭内ネットワーク１００に存在する機器全てに対して行われてもよい。
【００２０】
ＵＩ記憶部２０７は、本ＵＩ制御装置２００を備える機器に対するユーザからの指示に対応した機能を実現する各種ＵＩプログラムを記憶している不揮発性のメモリ等である。
【００２１】
ＵＩ一覧記憶部２０３は、ＵＩ記憶部２０７に記憶されているＵＩプログラムの一覧を示す情報であるＵＩ一覧を記憶している不揮発性のメモリ等である。
【００２２】
ＵＩ一覧取得部２０２は、リモート機器１２０から、リモート機器１２０が保持するＵＩプログラムの一覧（ＵＩ一覧）を取得する。参加するリモート機器１２０が複数あれば、全ての機器からＵＩプログラムの一覧（ＵＩ一覧）を取得してもよい。その後、取得したＵＩ一覧をＵＩ一覧記憶部２０３に記憶する。
【００２３】
要求受付部２０４は、ユーザ２１０からＵＩを利用したいという要求等の指示を受け付ける操作ボタン等である。
【００２４】
ＵＩ選択部２０５は、ＵＩ一覧記憶部２０３に記憶されているＵＩ一覧の中から、ユーザ２１０が利用したい最適なＵＩプログラムを選択する。
【００２５】
ＵＩ取得部２０６は、最適なＵＩプログラムを取得する。具体的には、このＵＩ取得部２０６は、ＵＩ選択部２０５が選択した最適なＵＩプログラムがＵＩ記憶部２０７に記憶されているか否かを判断し、ＵＩ記憶部２０７に記憶されていると判断した場合に、ＵＩ記憶部２０７から、そのＵＩプログラムを読み出し、一方、ＵＩ選択部２０５が選択したＵＩプログラムがＵＩ記憶部２０７に記憶されていないと判断した場合に、リモート機器１２０から家庭内ネットワーク１００を介して当該ＵＩプログラムを取得し、ＵＩ記憶部２０７に、取得してきたＵＩプログラムを記憶する。
【００２６】
表示部２０８は、ＵＩプログラムを実行する仮想マシン等の実行エンジンとＬＣＤディスプレイ等の表示画面を有し、ＵＩ取得部２０６が取得したＵＩプログラムを実行することで、ユーザ２１０に対して、ＵＩ（ＵＩプログラムの実行に基づく情報）を画面に表示する。
【００２７】
なお、通知受付部２０１、ＵＩ一覧取得部２０２、要求受付部２０４、ＵＩ選択部２０５、ＵＩ取得部２０６、表示部２０８等の各処理部は、ＣＰＵ、ＲＯＭ、ＲＡＭ等のメモリ、通信インタフェース等のハードウェアを備えるコンピュータ環境において実行されるプログラムによって実現されてもよいし、専用の電子回路等のハードウェアによって実現されてもよい。他の実施の形態についても同様である。
【００２８】
図３は、リモート機器１２０が家庭内ネットワーク１００に参加してから、ＵＩ一覧が記憶されるまでの処理のフローである。
【００２９】
処理が開始され（Ｓ３００）、リモート機器１２０が外部ネットワーク１１０を通じて、または直接、家庭内ネットワーク１００に参加した場合に、通知受付部２０１は、リモート機器１２０から参加通知を受け付ける（Ｓ３０１）。この通知を受けた通知受付部２０１は、ＵＩ一覧取得部２０２にＵＩ一覧を取得するように指示する。ＵＩ一覧取得部２０２は、通知受付部２０１から指示があった場合に、リモート機器１２０からＵＩ一覧を取得する（Ｓ３０２）。その後、取得したＵＩ一覧をＵＩ一覧記憶部２０３に記憶して（Ｓ３０３）、処理を終了する（Ｓ３０４）。
【００３０】
ここで、具体的な処理例のフローを図３、図５、図６を用いて示す。なお、この説明では、自機器１０１を機器Ａとし、リモート機器１２０を機器Ｂとしている。また、機器Ａは、図５（ａ）の行５０１に対応するＵＩプログラムと行５０２に対応するＵＩプログラムを持っており、図５（ａ）に示される機器ＡのＵＩ一覧５００がＵＩ一覧記憶部２０３に記憶されているものとする。また、機器Ｂは、図５（ｂ）の行５０３、行５０４、行５０５に対応するＵＩプログラムを持っており、図５（ｂ）に示される機器ＢのＵＩ一覧５１０を持っているものとする。
【００３１】
図５（ａ）及び（ｂ）に示す「機器名」は、機器の名前が格納される。今回は、自機器１０１が機器Ａで、リモート機器１２０が機器Ｂとしているので、“機器Ａ”と“機器Ｂ”とが記載されている。「カテゴリ」は、機器がどのようなカテゴリに属するものかを示す。機器Ａは“レコーダ”で、機器Ｂは“携帯電話”である。「機能」は、それぞれの機器が利用できるＵＩの機能を示す。機器Ａは写真表示機能と、文字編集機能を有し、機器Ｂは写真表示機能と文字編集機能、通話表示機能を有している。「アドレス」は、該当する機能（ＵＩプログラム）にアクセスするための情報（ＵＩプログラムの置き場所）を示す。機器Ａの写真表示機能にアクセスしたい場合は、ｈｔｔｐ：／／Ａ／ｐｈｏｔｏＵＩ．ｈｔｍｌにアクセスすればよいことになる。「バージョン」は、該当する機能を持つＵＩプログラムのバージョンを示す。機器Ａの写真表示機能を持つＵＩプログラムのバージョンは００００１となっている。「ユーザビリティ」は、使いやすさを示す。機器Ａの写真表示機能を持つＵＩプログラムのユーザビリティはＡであり、使いやすいことを示している。なお、これらの項目は、予めＵＩ一覧内に含まれていてもよいし、ユーザ２１０によって設定ができるようにしておいてもよい。
【００３２】
機器Ｂが外部ネットワーク１１０を通じて、または直接、家庭内ネットワーク１００に参加した場合に、機器Ａは、機器Ｂから参加通知を受け付ける（Ｓ３０１）。参加通知を受けた機器Ａは、機器Ｂから、機器ＢのＵＩ一覧を取得する（Ｓ３０２）。そして、取得したＵＩ一覧を記憶することで、自分が保持していたＵＩ一覧と、いま取得したＵＩ一覧とをマージする（Ｓ３０３）。機器Ａが記憶している、マージ後のＵＩ一覧の一例が図６である。機器Ａが記憶しているＵＩ一覧６００は、図５（ａ）の機器ＡのＵＩ一覧５００と図５（ｂ）の機器ＢのＵＩ一覧５１０を合わせた形になっているが、機器Ａが機器ＢからＵＩ一覧を取得した場合に、必要な項目だけで構成するように編集しても良い。
【００３３】
図４は、ユーザ２１０からＵＩを利用したい旨の要求があってから、ＵＩ（ＵＩプログラムの実行に基づく情報）が表示されるまでの処理のフローである。処理が開始され（Ｓ４００）、要求受付部２０４が、ユーザ２１０からＵＩを利用したい旨のＵＩ要求を受け付けると（Ｓ４０１）、要求受付部２０４は、ＵＩ選択部２０５に最適なＵＩプログラムを選択するよう指示をする。ＵＩ選択部２０５は、要求受付部２０４からの指示を受けると、ＵＩ一覧記憶部２０３に記憶されているＵＩ一覧の中から、ユーザ２１０が利用したい最適なＵＩプログラムを選択する（Ｓ４０２）。
【００３４】
選択する場合の基準は、何でもよく、例えば、同じカテゴリであるリモート機器１２０を優先してもよいし、バージョンを優先してもよい。カテゴリを優先する場合は、カテゴリを元に検索を行い、バージョンを優先する場合は、バージョンを元に検索を行う。また、使いやすさを優先する場合は、ユーザビリティを元に検索を行う。また、ＵＩ一覧記憶部２０３に記憶されているＵＩ一覧には、ＵＩプログラムが保持する機能に関する情報が入っていて、これを元に選択してもよい。また、最適なＵＩプログラムはＵＩ一覧に存在する情報を組み合わせて決定されてもよい。検索した結果は複数あってもよく、複数の中からユーザ２１０がどのＵＩを利用するか選択できてもよい。つまり、ＵＩ一覧を構成する「カテゴリ」、「バージョン」、「ユーザビリティ」の少なくとも一つが、複数個のＵＩプログラムの中から最適なＵＩプログラムを選択するための優先度として利用される。
【００３５】
なお、自機器１０１のＵＩプログラムとリモート機器１２０のＵＩプログラムとが同時に使えない場合は、その旨を自機器１０１に通知し、自機器１０１が記憶しているＵＩ一覧に反映させてもよい。この場合、自機器１０１が、同時に使えないＵＩプログラムを最適なＵＩプログラムとして選択したときは、その次に最適なＵＩプログラムを順次、検索していくようにしてもよい。
【００３６】
さらに、最適なＵＩプログラムを選択した場合であっても、そのＵＩ（ＵＩプログラムの実行に基づく情報）を表示するために必要となるソフトウェアやハードウェアで実現される表示機能が存在しない場合や、操作するための操作機能が存在しない場合は、次に最適なＵＩプログラムを順次、検索していくようにしてもよい。ハードウェアで実現される表示機能が存在しない場合は、ソフトウェアで表示機能を代用することができれば、最適なＵＩプログラムとして選択してもよい。また、最適なＵＩプログラムを検索するための指標として、ＵＩプログラムの利用頻度、画面のサイズやコンテンツサイズ、画面遷移元との整合性を示す情報（バージョンやテーマ）などを利用してもよい。そして、最適なＵＩプログラムを選択したら、最適なＵＩプログラムが存在しているアドレスをＵＩ取得部２０６に通知する。
【００３７】
その後、ＵＩ選択部２０５は、選択したＵＩプログラムのアドレスをＵＩ取得部２０６に通知する。そして、ＵＩ取得部２０６は、ＵＩ選択部２０５から通知を受けると、ＵＩ選択部２０５から受け取ったアドレスを用いて、ＵＩ選択部２０５が選択したＵＩプログラムがＵＩ記憶部２０７に存在するか否かを確認する（Ｓ４０３）。ＵＩ記憶部２０７に該当するＵＩプログラムが存在すれば（Ｓ４０３：Ｙｅｓ）、ＵＩ記憶部２０７からＵＩプログラムを取得する（Ｓ４０４）。一方、ＵＩ記憶部２０７に最適なＵＩプログラムが存在しなければ（Ｓ４０３：Ｎｏ）、ＵＩ選択部２０５から受け取ったアドレスを元に、リモート機器１２０から該当するＵＩプログラムを取得し（Ｓ４０５）、取得したＵＩプログラムをＵＩ記憶部２０７に記憶する（Ｓ４０６）。その後、ＵＩ取得部２０６は、表示部２０８に取得したＵＩ（ＵＩプログラムの実行に基づく情報）を表示するよう指示をし、指示を受けた表示部２０８は、ＵＩ取得部２０６が取得したＵＩ（ＵＩプログラムの実行に基づく情報）を画面に表示し（Ｓ４０７）、処理が終了する（Ｓ４０８）。なお、ＵＩ記憶部２０７には、ＵＩプログラムではなく、リモート機器１２０から取得したＵＩプログラムのアドレスを記憶しておいてもよい。この場合は、再度、ユーザ２１０からＵＩの要求があった場合に、このアドレスを再利用してリモート機器１２０へアクセスし、ＵＩプログラムを取得することができる。
【００３８】
ここで、具体的な処理例のフローを図４、図６、図７を用いて示す。なお、この説明でも同様に、自機器１０１を機器Ａとし、リモート機器１２０を機器Ｂとしている。さらに、機器Ｂは既に家庭内ネットワーク１００に参加しており、図６の機器Ａが記憶しているＵＩ一覧６００が既に機器ＡのＵＩ一覧記憶部２０３に記憶されていて、未だユーザ２１０からＵＩ要求がされていない状況を想定している。さらに、当然、機器Ａは、図５（ａ）の行５０１に対応するＵＩプログラムと５０２に対応するＵＩプログラムをＵＩ記憶部２０７に記憶している。
【００３９】
この場合に、機器Ａがユーザ２１０から写真表示機能というＵＩを利用したいというＵＩ要求を受け付けたとする（Ｓ４０１）。この場合、機器Ａは、図６の機器Ａが記憶しているＵＩ一覧６００の中から、最適な写真表示機能を持つＵＩプログラムを選択する（Ｓ４０２）。
【００４０】
ここでは、バージョンを優先する場合の具体的な例を説明する。機器Ａは、機器Ａが記憶しているＵＩ一覧６００の中から、写真表示機能を持つＵＩプログラムを検索する。写真表示機能に合致するのは、行６０１に対応するＵＩプログラムと行６０３に対応するＵＩプログラムである。次に、行６０１に対応するＵＩプログラムと行６０３に対応するＵＩプログラムに対してバージョンで検索を行う。今回は、行６０３に対応するＵＩプログラムの方が行６０１に対応するＵＩプログラムよりバージョンが高いので、最適なＵＩプログラムとして、行６０３に対応するＵＩプログラムを選択する。
【００４１】
行６０３に対応するＵＩプログラムは、機器Ｂにあり、まだＵＩ記憶部２０７に記憶されていないので（Ｓ４０３：Ｎｏ）、機器Ｂから行６０３に対応するＵＩプログラムを取得する（Ｓ４０５）。選択した行６０３に対応するＵＩプログラムを機器Ｂから取得する場合には、選択した行６０３に対応するＵＩプログラムのアドレス「ｈｔｔｐ：／／Ｂ／ｐｈｏｔｏＵＩ．ｈｔｍｌ」を用いて行う。なお、ここではＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）を利用しているが、機器を特定できるアドレスであれば、プロトコルはＨＴＴＰに限らない。そして、取得した行６０３に対応するＵＩプログラムをＵＩ記憶部２０７に記憶する（Ｓ４０６）。
【００４２】
図７は、機器Ａが機器ＢからＵＩプログラムを取得した後におけるＵＩ記憶部２０７の一例を示す図であり、ここでは、機器Ａが記憶しているＵＩプログラム７１０と、それらのＵＩプログラム７１０に関する情報７００の一例を示している。機器Ａが記憶しているＵＩプログラム７１０に関する情報７００には、機器Ａが元から持っている図５（ａ）の行５０１に対応するＵＩプログラム７１０ａ、行５０２に対応するＵＩプログラム７１０ｂに加えて、図５（ｂ）に示される機器Ｂから取得した行５０３に対応するＵＩプログラム７１０ｃが追加されている。なお、今回の具体例ではバージョンを元に検索しているので、バージョン情報も記憶されているが、ユーザビリティ等その他の情報を追加してもよい。また、ＵＩ記憶部２０７には、ＵＩプログラムとアドレスに関する情報のみを記憶していてもよいし、アドレスのみ記憶していてもよい。
【００４３】
その後、機器Ａは、取得した行６０３に対応するＵＩ（ＵＩプログラムの実行に基づく情報）を表示し（Ｓ４０７）、処理が終了する（Ｓ４０８）。
【００４４】
本実施の形態によれば、データ管理サーバがなくても、機器同士が連携することによって、リモート機器から必要なＵＩプログラムが取得されて実行されるので、ユーザにとって最適なＵＩを提供することが可能となるという効果を奏する。
【００４５】
（実施の形態２）
次に、本発明の実施の形態２におけるＵＩ制御装置について説明する。
【００４６】
本発明の実施の形態２におけるＵＩ制御装置８００は、例えば、写真表示機能を有するＵＩプログラムをリモート機器１２０とやりとりする場合に、リモート機器１２０に存在する写真等のリソースをユーザ２１０が利用したい場合がある。また、そのリソースがＵＩ（ＵＩプログラムの実行に基づく情報）を表示するために利用されるものである場合に、ユーザ２１０がリモート機器１２０で表示されるＵＩ（ＵＩプログラムの実行に基づく情報）と同じような表示をしたいと思ったときには、このリソースを利用する必要がある。
【００４７】
さらに、例えば、Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ（登録商標）に代表されるＨＴＭＬブラウザ等のＵＩプログラムをリモート機器１２０とやりとりする場合、通常だと、リモート機器１２０からＵＩプログラムを取得したときは、特別な指定がない限りは、リモート機器１２０に存在するリソースを用いて表示が行われることになる。
【００４８】
上記のような場合に、リモート機器１２０が有するリソースを利用できるようにすれば、リモート機器１２０上でＵＩを操作したかのように動作させることも可能となる。
【００４９】
したがって、本発明の実施の形態２におけるＵＩ制御装置８００は、リモート機器１２０が有するリソースを利用できるようにして、リモート機器１２０上でＵＩを操作したかのように動作させることを目的とする。
【００５０】
ここで、リソースとは、なお、ＵＩプログラムが実行された場合に必要となる画像データ、映像データ及び音声データの少なくとも一つであり、例えば、写真、ビデオ、音楽のようなＡＶコンテンツをいう。また、リソースは、ＡＶコンテンツだけでなく、ユーザ２１０の操作履歴など、その機器にしか存在しないような情報であってもよい。
【００５１】
以下、本発明の実施の形態２におけるＵＩ制御装置８００について、図面を参照しながら説明する。
【００５２】
図８は、実施の形態２におけるＵＩ制御装置８００の構成を示す図である。このＵＩ制御装置８００は、上述したＴＶ等の機器に備えられ、ユーザ・インタフェースの機能を実現する装置であって、通知受付部２０１、ＵＩ一覧取得部２０２、ＵＩ一覧記憶部２０３、要求受付部２０４、ＵＩ選択部２０５、ＵＩ取得部２０６、ＵＩ記憶部２０７、リソース優先度設定部８０１、リソース優先度記憶部８０２、ＵＩ解析部８０３、リソース取得部８０４、リソース記憶部８０５及び表示部８０６を備える。なお、本図には、リモート機器１２０及びユーザ２１０も併せて図示されている。
【００５３】
実施の形態２において、実施の形態１と同様の部分については同一符号を付し、その詳細な説明は省略する。実施の形態２と実施の形態１との相違点は、リソース優先度設定部８０１、リソース優先度記憶部８０２、ＵＩ解析部８０３、リソース取得部８０４、リソース記憶部８０５、表示部８０６である。
【００５４】
リソース優先度設定部８０１は、自機器１０１が保持するリソースか、リモート機器１２０が保持するリソースのどちらを優先して利用するかを設定（つまり、決定）する。なお、予めリソースの優先度は決めておいても良い。また、ＵＩプログラムを取得したリモート機器１２０に存在するリソースを利用することを設定できてもよいし、ＵＩプログラムを取得したリモート機器１２０に関係なく、その他の機器を含めて、その中から最適なリソースを利用することを設定できてもよい。
【００５５】
リソース優先度記憶部８０２は、リソース優先度設定部８０１で設定した情報を記憶するメモリ等である。
【００５６】
ＵＩ解析部８０３は、ＵＩ取得部２０６が取得したＵＩプログラムを解析し、必要なリソース情報を取得する。そして、リソース取得部８０４にリソースを取得するように指示する。その後、リソース取得部８０４から受け取ったリソースを用いて、ＵＩ（ＵＩプログラムの実行に基づく情報）を再表示するように表示部８０６に指示する。
【００５７】
リソース取得部８０４は、ＵＩ解析部８０３から受け取ったリソース情報と、リソース優先度記憶部８０２に記憶されているリソース優先度とを用いて、表示部８０６で表示させるリソースを取得する。
【００５８】
リソース記憶部８０５は、リソースを記憶する。
【００５９】
表示部８０６は、実施の形態１における表示部２０８の機能に加えて、リソース取得部８０４が取得したリソースを表示する機能を有する。
【００６０】
図９は、リソース優先度が記憶されるまでの処理のフローである。
【００６１】
処理が開始され（Ｓ９００）、ユーザ２１０がリソース優先度設定部８０１に対してリソースの設定を行った場合、リソース優先度設定部８０１はリソース優先度の設定を行う（Ｓ９０１）。そして、リソース優先度設定部８０１は、ユーザ２１０が設定したリソース優先度をリソース優先度記憶部８０２に記憶して（Ｓ９０２）、処理を終了する（Ｓ９０３）。
【００６２】
図１０は、ＵＩ解析部８０３がＵＩ取得部２０６からＵＩプログラムを取得してから、ＵＩ（ＵＩプログラムの実行に基づく情報）が表示されるまでのフローである。
【００６３】
処理が開始され（Ｓ１０００）、ＵＩ解析部８０３が、ＵＩ取得部２０６からＵＩプログラムを取得すると（Ｓ１００１）、取得したＵＩプログラムを解析する（Ｓ１００２）。解析処理の詳細は後述する。そして、取得したＵＩプログラムを解析して、必要なリソースの情報を取得する（Ｓ１００３）。例えば、リソースの情報から写真リソースを利用する必要があると判断した場合は、ＵＩ解析部８０３は、リソース取得部８０４に、その写真リソースの取得を要求する。ＵＩ解析部８０３から要求を受けたリソース取得部８０４は、リソース優先度記憶部８０２から、自機器１０１とリモート機器１２０のどちらのリソースを優先して取得するかを示す設定情報を取得する（Ｓ１００３）。リソース取得部８０４は、取得した設定情報を用いて、自機器１０１が保持するリソースか、リモート機器１２０が保持するリソースのどちらを優先して利用するかを確認する（Ｓ１００５）。そして、自機器１０１のリソースを優先して利用する場合（Ｓ１００５：Ｎｏ）は、リソース取得部８０４は、リソース記憶部８０５からリソースを取得する（Ｓ１００６）。リモート機器１２０のリソースを優先する場合（Ｓ１００５：Ｙｅｓ）、リソース記憶部８０５に該当するリソースと同じ名前のリソースがあるか否かを確認する（Ｓ１００７）。リソース記憶部８０５に該当するリソースと同じ名前のリソースがない場合（Ｓ１００７：Ｎｏ）、ＵＩプログラムを取得したリモート機器１２０から該当するリソースを取得し（Ｓ１００８）、リソース記憶部８０５に記憶する（Ｓ１００９）。リソース記憶部８０５に該当するリソースと同じ名前のリソースがある場合（Ｓ１００７：Ｙｅｓ）、ＵＩプログラムを取得したリモート機器１２０からリソースを取得する（Ｓ１０１０）。その後、取得したＵＩプログラムとリソースを用いてＵＩ（ＵＩプログラムの実行に基づく情報）を表示し（Ｓ１０１１）、処理が終了する（Ｓ１０１２）。
【００６４】
図１１は、取得したＵＩプログラム１１００の一例を示している。ステートメント１１０３は、ＵＩプログラム１１００全てが読み込まれた際に呼び出されるｆｕｎｃｔｉｏｎ  ｌｏａｄＢｏｄｙという関数を示す。ステートメント１１０４は写真を表示するためのＨＴＭＬ要素を示す。ステートメント１１０１は、呼び出されるｆｕｎｃｔｉｏｎ  ｌｏａｄＢｏｄｙという関数の内容を示す。ステートメント１１０２は、その関数の中身であり、“ｐｈｏｔｏ１”というＩＤの付いたＨＴＭＬ要素１１０４に対して、“Ａ．ｊｐｇ”という写真を表示させるための処理を定義している。
【００６５】
図１２は、機器Ａが保持する画像リソース１２０１をＵＩ表示した画面表示例１２００（図１２（ａ））と、機器Ｂが保持する画像リソース１２１１をＵＩ表示した画面表示例１２１０（図１２（ｂ））を示している。
【００６６】
ここで、リモート機器１２０から図１１に示すＵＩプログラムを取得した場合であって、既にリソース記憶部８０５に同じ名前のリソースがある場合を説明する。なお、自機器１０１を機器Ａとし、リモート機器１２０を機器Ｂとしている。この場合、ＵＩ解析部８０３は、ＵＩ取得部２０６からＵＩプログラムを取得し（Ｓ１００１）、取得したＵＩプログラムを解析する（Ｓ１００２）。そして、必要なリソースが“Ａ．ｊｐｇ”であることを示すリソース情報を取得し（Ｓ１００３）、設定情報を取得する（Ｓ１００４）。さらに、リソース優先度記憶部８０２に記憶されている設定情報が、図１３に示されるように、自機器１０１のリソースを優先するように設定されている場合は（Ｓ１００５：Ｎｏ）、リソース取得部８０４は、リソース記憶部８０５から“Ａ．ｊｐｇ”を取得し（Ｓ１００６）、表示部８０６は、図１３（ａ）に示される画面表示例１２００のように、機器Ａの“Ａ．ｊｐｇ”を用いたＵＩ表示する（Ｓ１０１１）。リソース優先度記憶部８０２に記憶されている設定情報がリモート機器１２０のリソースを優先するよう設定されている場合には（Ｓ１００５：Ｙｅｓ）、今回、リソース記憶部８０５に該当するリソースと同じ名前のリソースがある状況を想定しているので（Ｓ１００７：Ｙｅｓ）、リソース取得部８０４は、リモート機器１２０から“Ａ．ｊｐｇ”を取得し（Ｓ１０１０）、表示部８０６は、図１３（ｂ）に示される画面表示例１２１０のように、機器Ｂの“Ａ．ｊｐｇ”を用いたＵＩ表示する（Ｓ１０１１）。
【００６７】
このように、本願発明によれば、リソース優先度の設定によって、リモート機器１２０が有するリソースを利用できるようになるので、リモート機器１２０上でＵＩを操作したかのように動作させることが可能となる。例えば、Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ（登録商標）に代表されるＨＴＭＬブラウザ等のＵＩプログラムをリモート機器１２０とやりとりする場合、通常だと、リモート機器１２０からＵＩプログラムを取得したときは、特別な指定がない限りは、リモート機器１２０に存在するリソースを用いて表示が行われることになるが、本実施の形態では、リモート機器１２０が有するリソースを利用できるようになるので、リモート機器１２０上でＵＩを操作したかのように動作させることが可能となる。
【００６８】
（実施の形態３）
次に、本発明の実施の形態３におけるＵＩ制御装置について説明する。
【００６９】
本発明の実施の形態３におけるＵＩ制御装置１３００は、リモート機器１２０のＵＩの方が自機器１０１のＵＩと比較して利便性が良い場合には、利便性の高いリモート機器１２０のＵＩを利用できるようにしたものである。以下、本発明の実施の形態３におけるＵＩ制御装置１３００について、図面を参照しながら説明する。
【００７０】
図１４は、実施の形態３におけるＵＩ制御装置１３００の構成を示す図である。このＵＩ制御装置１３００は、上述したＴＶ等の機器に備えられ、ユーザ・インタフェースの機能を実現する装置であって、通知受付部２０１、ＵＩ一覧取得部２０２、ＵＩ一覧記憶部２０３、要求受付部２０４、ＵＩ選択部２０５、ＵＩ取得部２０６ａ、ＵＩ記憶部２０７、一時記憶部１３０２及び表示部２０８を備える。なお、本図には、リモート機器１２０及びユーザ２１０も併せて図示されている。
【００７１】
実施の形態３において、実施の形態１と同様の部分については同一符号を付し、その詳細な説明は省略する。実施の形態３と実施の形態１との相違点は、ＵＩ取得部２０６ａが実施の形態１におけるＵＩ取得部２０６の機能に加えてＵＩ委譲部１３０１を有する点と、一時記憶部１３０２である。
【００７２】
ＵＩ委譲部１３０１は、ＵＩの委譲処理を行う。具体的には、このＵＩ委譲部１３０１は、ＵＩ選択部２０５が選択したＵＩプログラムがＵＩ記憶部２０７に記憶されていないとＵＩ取得部２０６ａが判断した場合に、当該ＵＩプログラムの実行をリモート機器に委譲する。
【００７３】
一時記憶部１３０２は、ＵＩ委譲部１３０１が要求受付部２０４からＵＩ選択部２０５を介して受け取った入力結果を一時的に記憶しておくメモリ等である。
【００７４】
図１５は、ＵＩ選択部２０５から最適なＵＩプログラムの通知を受けてから、ＵＩ（ＵＩプログラムの実行に基づく情報）が表示されるまでのフローである。処理が開始され（Ｓ１４００）、ＵＩ取得部２０６ａがＵＩ選択部２０５から最適なＵＩプログラムの通知を受けると（Ｓ１４０１）、ＵＩ記憶部２０７にＵＩ選択部２０５が選択したＵＩプログラムが記憶されているか否かを確認する（Ｓ１４０２）。そして、ＵＩ記憶部２０７にＵＩ選択部２０５が選択したＵＩプログラムが記憶されていれば（Ｓ１４０２：Ｙｅｓ）、そのＵＩプログラムをＵＩ記憶部２０７から取得する（Ｓ１４０３）。一方、ＵＩ記憶部２０７にＵＩ選択部２０５が選択したＵＩプログラムが記憶されていなければ（Ｓ１４０２：Ｎｏ）、ＵＩ委譲部１３０１は、リモート機器１２０が保持するＵＩプログラムをリモート機器１２０上で起動させる（Ｓ１４０４）。そして、ＵＩ委譲部１３０１は、ユーザ２１０が要求受付部２０４で入力した結果を受け取ると（Ｓ１４０５）、その入力結果を一時記憶部１３０２に記憶しておく。そして、あるタイミングで、一時記憶部１３０２に記憶されている入力結果をリモート機器１２０に通知する（Ｓ１４０６）。このタイミングはユーザ２１０が設定できるようにしてもよいし、予めＵＩ制御装置１３００が決めておいてもよい。また、ＵＩプログラムが文字編集ＵＩである場合には、このタイミングは、入力した文字を変換するときでもよいし、一文字毎に変換したときでもよい。そして、ＵＩ委譲部１３０１は、リモート機器１２０が処理した処理結果を受け取る（Ｓ１４０７）。その後、ＵＩ委譲部１３０１は表示部２０８に表示するように指示し、指示を受け取った表示部２０８はＵＩ表示（Ｓ１４０８）し、処理が終了する（Ｓ１４０９）。
【００７５】
例えば、ユーザ２１０から要求受付部２０４に対して文字編集ＵＩを利用したいという要求が発生したとする。この場合、要求受付部２０４は、ＵＩ選択部２０５に対して、ユーザ２１０にとって最適な文字編集ＵＩプログラムを選択するよう指示する。ここで、指示を受けたＵＩ選択部２０５は、アドレス「ｈｔｔｐ：／／Ｂ／ｆｅｐＵＩ．ｈｔｍｌ」に相当する文字編集ＵＩプログラムを選択したとする。この場合、ＵＩ取得部２０６ａは、ＵＩ選択部２０５から指示を受けると、ＵＩ記憶部２０７を参照し、アドレス「ｈｔｔｐ：／／Ｂ／ｆｅｐＵＩ．ｈｔｍｌ」に相当する文字編集ＵＩプログラムが記憶されているか否かを確認する。記憶されていればそのＵＩ（ＵＩプログラムの実行に基づく情報）を表示するように表示部２０８に指示するが、記憶されていなければ、ＵＩ委譲部１３０１は、リモート機器１２０に対して、アドレス「ｈｔｔｐ：／／Ｂ／ｆｅｐＵＩ．ｈｔｍｌ」に相当する文字編集ＵＩプログラムの起動を依頼する。その後、ユーザ２１０が要求受付部２０４で文字を入力した場合には、その入力結果がリモート機器１２０の文字編集ＵＩプログラムに反映される。いつリモート機器１２０の文字編集ＵＩプログラムに反映させるかを示すタイミングは、一文字毎でもよいし、ユーザ２１０が文字を変換したときでもよい。リモート機器１２０の文字編集ＵＩプログラムへの文字入力を完了させた場合、リモート機器１２０の文字編集ＵＩプログラムで処理された結果は、ＵＩ委譲部１３０１へ通知される。ＵＩ委譲部１３０１は、その処理結果を表示部２０８に通知し、通知を受けた表示部２０８はＵＩ表示をする。
【００７６】
このように、本願発明によれば、ユーザ２１０はリモート機器１２０の文字編集ＵＩを利用することができるので、ＵＩプログラムをダウンロードするのが面倒だと感じる場合やＵＩプログラムをダウンロードする記憶領域が不足している場合等でも、ユーザ２１０にとって最適なＵＩプログラムを用いて動作させることが可能となる。
【００７７】
なお、ユーザ２１０が直接、リモート機器１２０の文字編集ＵＩプログラムを起動できるようにしてもよい。また、ＵＩ委譲部１３０１は、委譲したＵＩプログラムの利用が中断（他の操作を実行、ネットワーク切断、電池切れなど）したことを検知でき、それをユーザ２１０に通知できるようにしてもよい。
【００７８】
図１６を用いて、ＵＩ委譲をする場合の操作画面の例を具体的に説明する。図１６のＴＶ１５００は、プレイヤ１５０１と接続されており、プレイヤ１５０１の表示に関する出力を表示する。プレイヤ１５０１は、自機器の一例であり、ＢＤやＤＶＤ、ＣＤといったメディアを再生する機器である。携帯電話１５０２は、リモート機器の一例であり、プレイヤ１５０１と同じ家庭内ネットワーク１００上に存在する。プレイヤ操作画面１５１０は、プレイヤ１５０１における文字編集時の操作画面を示す。携帯電話操作画面１５１１は、携帯電話１５０２における文字編集時の操作画面を示す。文字編集画面１５１２は、ユーザ２１０から、プレイヤ１５０１に対して、タイトル編集などの文字入力要求が発生した場合（操作手順１）の画面である。ここでは、本来であれば、プレイヤ１５０１に対して行うべき文字編集の操作が、携帯電話１５０２で行われている例が示されている。
【００７９】
ＵＩ委譲部１３０１経由で、携帯電話１５０２上の文字編集画面の起動（文字編集画面１５１３）を行う場合（操作手順２）、文字編集画面１５１２の画面上には、ＵＩ委譲部１３０１がどの機器へ画面を委譲したのかが示されてもよい。文字編集画面１５１４では、携帯電話１５０２の文字編集のＵＩプログラムを利用して、ユーザ２１０が文字を入力する。ユーザ２１０の文字編集の入力が完了した場合（操作手順３）は、ＵＩ委譲部１３０１に文字入力の結果を返す。プレイヤ１５０１は、携帯電話１５０２で入力された文字入力結果をプレイヤ１５０１の結果として反映する（文字編集画面１５１５）。その際、画面への反映だけでなく、プレイヤ１５０１が保持する文字入力辞書データベースへ、今回の結果が反映されてもよい。
【００８０】
なお、図１６では、文字入力の例で説明したが、この場合に限らない。あるＤＶＤレコーダで、映像を録画し、録画した結果をＤＶＤプレイヤへ送りつけ、ＤＶＤプレイヤに録画した結果を保存できてもよい。
【００８１】
このように、本願発明によれば、リモート機器１２０のＵＩの方が自機器１０１のＵＩと比較して利便性が良い場合であっても、ユーザ２１０は利便性の高いリモート機器１２０のＵＩが利用できるため、ＵＩプログラムをダウンロードするのが面倒だと感じる場合やＵＩプログラムをダウンロードする記憶領域が不足している場合等でも、ユーザ２１０にとって最適なＵＩプログラムを用いて動作させることが可能となる。
【００８２】
（実施の形態４）
次に、本発明の実施の形態４におけるＵＩ制御装置について説明する。
【００８３】
以下、本発明の実施の形態４におけるＵＩ制御装置１６００について、図面を参照しながら説明する。本実施の形態４は、実施の形態３におけるＵＩプログラムを「機能」に置き換えたものに相当する。ここで、「機能」とは、ＵＩ制御装置が備えられる機器が備える機能をいい、具体的には、ＵＩプログラムだけでなく、機器の機能を発揮するためのプログラム及びデータである。
【００８４】
図１７は、実施の形態４におけるＵＩ制御装置１６００の構成を示す図である。このＵＩ制御装置１６００は、上述したＴＶ等の機器に備えられ、各種機能を実現する装置であって、通知受付部２０１、機能一覧取得部１６０１、機能一覧記憶部１６０２、要求受付部１６０３、機能アクセス検知部１６０４、機能選択部１６０５、機能結果取得部１６０６、機能記憶部１６０７及び表示部１６０８を備える。なお、本図には、リモート機器１２０及びユーザ２１０も併せて図示されている。
【００８５】
実施の形態４において、実施の形態１と同様の部分については同一符号を付し、その詳細な説明は省略する。実施の形態４と実施の形態１との相違点は、機能一覧取得部１６０１、機能一覧記憶部１６０２、要求受付部１６０３、機能アクセス検知部１６０４、機能選択部１６０５、機能結果取得部１６０６、機能記憶部１６０７、表示部１６０８である。
【００８６】
なお、実施の形態４においての機能とは、ＤＶＤレコーダにおける番組予約機能、動画解析機能、文字編集機能などのリモート機器１２０を制御するための機能や、ハードウェアへのアクセスによる機能などをいう。
【００８７】
図１７の機能一覧取得部１６０１は、リモート機器１２０から機能の一覧を取得する。参加するリモート機器１２０が複数あれば、全ての機器から機能の一覧を取得してもよい。その後、取得した機能一覧を機能一覧記憶部１６０２に記憶する。機能一覧記憶部１６０２は、機能の一覧とその機能が存在しているアドレスを記憶している。要求受付部１６０３は、ユーザ２１０からＵＩの要求を受け付けると、機能アクセス検知部１６０４に処理をするように通知する。通知を受けた機能アクセス検知部１６０４は、ユーザ２１０が要求したＵＩが、自機器１０１またはリモート機器１２０が保持する機能にアクセスしたか否かを検知する。機能アクセス検知部１６０４は、ＵＩが機能にアクセスしたことを検知したら、機能選択部１６０５に処理をするように通知する。
【００８８】
例えば、ユーザ２１０から要求受付部１６０３に対して、ＡというＵＩを利用したいという要求が発生したとする。この場合には、機能アクセス検知部１６０４は、ＡというＵＩが、自機器１０１やリモート機器１２０が保持する機能へアクセスしたことを検知した場合には、機能選択部１６０５に対して、ユーザ２１０にとって最適な機能の選択をするように通知することになる。
【００８９】
通知を受けた機能選択部１６０５は、機能一覧記憶部１６０２に記憶されている機能一覧の中から、ユーザ２１０が利用したい最適な機能を有する機器のアドレスを選択する。このアドレスは、ＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）でもよいし、機器を特定できるアドレスであれば、プロトコルはＨＴＴＰに限らない。
【００９０】
その後、そのアドレスを機能結果取得部１６０６に通知する。通知を受けた機能結果取得部１６０６は、機能選択部１６０５から通知されたアドレスをもとに、機能記憶部１６０７に、機能選択部１６０５が選択した機能があるか否かを確認する。機能選択部１６０５が選択した機能が機能記憶部１６０７にあれば、その機能を実行した結果を取得する。機能選択部１６０５が選択した機能が機能記憶部１６０７になければ、リモート機器１２０にその機能を実行させ、その実行結果をリモート機器１２０から取得する。その後、表示部１６０８に表示するよう通知をする。通知を受けた表示部１６０８は、実行結果を表示する。
【００９１】
なお、自機器１０１が保持する機能かリモート機器１２０が保持する機能のどちらを優先して利用するかを示した機能の優先度を用いてもよい。ここでいうリモート機器１２０とは、ＵＩを取得したリモート機器１２０であってもよいし、ＵＩを取得したリモート機器１２０に関係なく、最適な機能を持つ機器であってもよい。そして、この機能の優先度は、予め決めておいても良いし、ユーザ２１０が設定できるようにしてもよい。
【００９２】
このような場合に、機能結果取得部１６０６は、機能選択部１６０５が選択した機能のアドレスを受け取ると、機能の優先度を用いて、どちらの機器から機能の結果を取得するかを確認する。自機器１０１の方が高ければ、機能記憶部１６０７から機能を取得し、その実行結果を取得する。また、リモート機器１２０の方が高ければ、リモート機器１２０にその機能を実行させ、その実行結果をリモート機器１２０から取得することになる。
【００９３】
本実施の形態によれば、データ管理サーバがなくても、機器同士が連携することによって、リモート機器から必要な機能が取得されて実行されるので、ユーザにとって最適な機能を提供することが可能となるという効果を奏する。
【００９４】
なお、本実施の形態４は、実施の形態３におけるＵＩプログラムを「機能」に置き換えたものに相当したが、本発明は、これに限定されず、実施の形態１及び２おけるＵＩプログラムを「機能」に置き換えたものとして実現してもよい。
【００９５】
以上、本発明に係るＵＩ制御装置について、実施の形態１〜４に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではない。本発明の主旨を逸脱しない範囲で各実施の形態における構成要素を任意に組み合わせて実現される形態や、各実施の形態に対して当業者が思いつく各種変形を施して得られる形態も、本発明に含まれる。
【００９６】
また、本発明は、上記実施の形態１〜４におけるＵＩ制御装置として実現されるだけでなく、ＵＩ制御方法として実現してもよいし、ＵＩ制御プログラムやＵＩ制御プログラムを記録した記録媒体として実現してもよい。
【００９７】
さらに、単一の半導体基板に作り込んだＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）等の集積回路として構成されてもよい。そのときに、１チップの集積回路として実現する構成要素としては、各実施の形態における全ての構成要素であってもよいし、その一部であってもよいし、このＵＩ制御装置が備えられる機器の構成要素も含まれてもよい。たとえば、実施の形態１であれば、通知受付部２０１、ＵＩ一覧取得部２０２、ＵＩ一覧記憶部２０３、要求受付部２０４、ＵＩ選択部２０５、ＵＩ取得部２０６、ＵＩ記憶部２０７、及び、表示部２０８のうちディスプレイを除く部分を１チップの集積回路として実現してもよい。
【産業上の利用可能性】
【００９８】
本発明のＵＩ制御装置、ＵＩ制御方法、ＵＩ制御方法を用いたコンピュータプログラム及びそのコンピュータプログラムを記録した記録媒体、ＵＩ制御集積回路は、データ管理サーバがなくても、機器同士が連携することによって、ユーザにとって最適なＵＩを提供できるという効果を有し、ＴＶ、レコーダ、プレイヤ、携帯電話、固定電話、プリンター、ＦＡＸ、ＰＤＡ、ＰＣ、デジタルカメラ、冷蔵庫、電子レンジ、洗濯機などの機器に用いられるものとして有用である。
【符号の説明】
【００９９】
１００    家庭内ネットワーク
１０１    ＵＩ制御装置を保持する自機器
１１０    外部ネットワーク
１２０    リモート機器
２００、８００、１３００、１６００    ＵＩ制御装置
２０１    通知受付部
２０２    ＵＩ一覧取得部
２０３    ＵＩ一覧記憶部
２０４、１６０３    要求受付部
２０５    ＵＩ選択部
２０６、２０６ａ    ＵＩ取得部
２０７    ＵＩ記憶部
２０８、８０６、１６０８    表示部
２１０    ユーザ
５００    機器ＡのＵＩ一覧
５０１〜５０５    ＵＩ一覧
５１０    機器ＢのＵＩ一覧
６００    機器Ａが記憶しているＵＩ一覧
６０１〜６０５    ＵＩ一覧
７００    機器Ａが記憶しているＵＩに関する情報の一例
７１０    機器Ａが記憶しているＵＩプログラムの一例
８０１    リソース優先度設定部
８０２    リソース優先度記憶部
８０３    ＵＩ解析部
８０４    リソース取得部
８０５    リソース記憶部
１１００    ＵＩプログラム
１１０１    ｆｕｎｃｔｉｏｎ  ｌｏａｄＢｏｄｙという関数の具体的な内容
１１０２    ｆｕｎｃｔｉｏｎ  ｌｏａｄＢｏｄｙという関数の具体的な処理の内容
１１０３    ｆｕｎｃｔｉｏｎ  ｌｏａｄＢｏｄｙという関数
１１０４    写真を表示するためのＨＴＭＬ要素
１２００、１２１０    画面表示例
１２０１、１２１１    画像リソース
１３０１    ＵＩ委譲部
１３０２    一時記憶部
１５００    ＴＶ
１５０１    プレイヤ
１５０２    携帯電話
１５１０    プレイヤ操作画面
１５１１    携帯電話操作画面
１５１２〜１５１５    文字編集画面
１６０１    機能一覧取得部
１６０２    機能一覧記憶部
１６０４    機能アクセス検知部
１６０５    機能選択部
１６０６    機能結果取得部
１６０７    機能記憶部
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ユーザ・インタフェース制御装置であって、
前記ユーザ・インタフェース制御装置に記憶されているＵＩプログラムの一覧を示す情報であるＵＩ一覧に、前記ユーザ・インタフェース制御装置と通信路で接続されたリモート機器に記憶されているＵＩプログラムの一覧を追加するＵＩ一覧取得部と、
追加された前記ＵＩ一覧の中からユーザによって選択されたＵＩプログラムが前記ユーザ・インタフェース制御装置に記憶されていない場合に、前記リモート機器から、選択された前記ＵＩプログラムを取得するＵＩ取得部と、
取得された前記ＵＩプログラムを実行して、前記ユーザ・インタフェース制御装置又は前記ユーザ・インタフェース制御装置を備える機器の画面にユーザ・インタフェースを表示する表示部と
を備えるユーザ・インタフェース制御装置。
【請求項２】
前記ユーザ・インタフェース制御装置はさらに、ＵＩ記憶部と、ＵＩ一覧記憶部と、要求受付部と、ＵＩ選択部とを備え、
前記ＵＩプログラムは、ユーザからの指示に対応した機能を実現するためのプログラムであり、
前記ＵＩ記憶部は、前記ＵＩプログラムを記憶しており、
前記ＵＩ一覧記憶部は、前記ＵＩ一覧を記憶しており、
前記要求受付部は、ユーザから、利用したいユーザ・インタフェースの要求を受け付け、
前記ＵＩ選択部は、受け付けられた前記ユーザ・インタフェースに対応するＵＩプログラムを、前記ＵＩ一覧に登録されたＵＩプログラムの中から選択する
請求項１記載のユーザ・インタフェース制御装置。
【請求項３】
さらに、前記リモート機器が前記通信路に接続された旨の通知を受け取る通知受付部を備え、
前記ＵＩ一覧取得部は、前記通知受付部が前記通知を受け付けた場合に、前記リモート機器から、当該リモート機器が記憶しているＵＩプログラムの一覧を取得する
請求項１記載のユーザ・インタフェース制御装置。
【請求項４】
前記ＵＩ一覧では、当該ＵＩ一覧が示すＵＩプログラムごとに、当該ＵＩプログラムによって実現される機能が対応づけられ、
前記ＵＩ選択部は、前記ＵＩ一覧に、前記要求受付部が受け付けたユーザ・インタフェースの機能を実現するＵＩプログラムが複数個登録されている場合には、前記複数個のＵＩプログラムの中から、最適なＵＩプログラムを選択する
請求項１記載のユーザ・インタフェース制御装置。
【請求項５】
前記ＵＩ一覧では、当該ＵＩ一覧が示すＵＩプログラムごとに、当該ＵＩプログラムの選択に関する優先度が対応づけられ、
前記ＵＩ選択部は、前記ＵＩ一覧における前記優先度を参照することで、前記複数個のＵＩプログラムの中から、最適なＵＩプログラムを選択する
請求項４記載のユーザ・インタフェース制御装置。
【請求項６】
前記ＵＩ一覧では、当該ＵＩ一覧が示すＵＩプログラムごとに、当該ＵＩプログラムの置き場所を示すアドレスが対応づけられ、
前記ＵＩ取得部は、前記ＵＩ一覧における前記アドレスを参照することで、前記ＵＩ選択部が選択したＵＩプログラムに対応づけられた前記アドレスが示す置き場所から、前記ＵＩプログラムを取得する
請求項１記載のユーザ・インタフェース制御装置。
【請求項７】
さらに、
前記ＵＩ取得部で取得されたＵＩプログラムを解析することで、当該ＵＩプログラムが実行された場合に必要となる画像データ、映像データ及び音声データの少なくとも一つであるリソースを特定するリソース解析部と、
前記リソース解析部で特定されたリソースを、前記機器又は前記リモート機器から取得するリソース取得部とを備え、
前記表示部は、前記ＵＩプログラムを実行したときに、前記リソース取得部で取得されたリソースを提示する
請求項１記載のユーザ・インタフェース制御装置。
【請求項８】
さらに、
前記ＵＩ記憶部に記憶されているＵＩプログラムで必要とされるリソースを記憶しているリソース記憶部と、
リソースの取得先として、前記機器及び前記リモート機器のいずれを優先するかを示す情報である優先度を記憶しているリソース優先度記憶部とを備え、
前記リソース取得部は、前記リソース優先度記憶部に記憶されている優先度に従って、前記機器又は前記リモート機器から前記リソースを取得する
請求項７記載のユーザ・インタフェース制御装置。
【請求項９】
前記ＵＩ取得部は、前記ＵＩ選択部が選択したＵＩプログラムが前記ＵＩ記憶部に記憶されていないと判断した場合に、当該ＵＩプログラムの実行を前記リモート機器に委譲するＵＩ委譲部を有する
請求項１記載のユーザ・インタフェース制御装置。
【請求項１０】
前記ＵＩ委譲部は、委譲した前記ＵＩプログラムによる処理結果を前記リモート機器から受け取り、
前記表示部は、前記ＵＩ委譲部が受け取った前記処理結果を提示する
請求項９記載のユーザ・インタフェース制御装置。
【請求項１１】
前記ＵＩプログラムは、仮想マシンで実行されるプログラム、又は、スクリプト言語で記述されたプログラムであり、
前記機器及び前記リモート機器は、前記仮想マシン、又は、前記スクリプト言語用のインタプリタを備える
請求項１記載のユーザ・インタフェース制御装置。
【請求項１２】
通信路で接続された複数の電子機器から構成される通信システムであって、
前記複数の電子機器のそれぞれは、請求項１記載のユーザ・インタフェース制御装置を備える
ことを特徴とする通信システム。
【請求項１３】
ユーザ・インタフェース制御方法であって、
ユーザ・インタフェース制御装置に記憶されているＵＩプログラムの一覧を示す情報であるＵＩ一覧に、前記ユーザ・インタフェース制御装置と通信路で接続されたリモート機器に記憶されているＵＩプログラムの一覧を追加するＵＩ一覧取得ステップと、
追加された前記ＵＩ一覧の中からユーザによって選択されたＵＩプログラムが前記ユーザ・インタフェース制御装置に記憶されていない場合に、前記リモート機器から、選択された前記ＵＩプログラムを取得するＵＩ取得ステップと、
取得された前記ＵＩプログラムを実行して、前記ユーザ・インタフェース制御装置又は前記ユーザ・インタフェース制御装置を備える機器の画面にユーザ・インタフェースを表示する表示ステップと
を含むユーザ・インタフェース制御方法。
【請求項１４】
ユーザ・インタフェース制御装置に実行させるプログラムであって、
請求項１３記載のステップをコンピュータに実行させるプログラム。
【請求項１５】
ユーザ・インタフェース制御装置に用いられる集積回路であって、
前記ユーザ・インタフェース制御装置に記憶されているＵＩプログラムの一覧を示す情報であるＵＩ一覧に、前記ユーザ・インタフェース制御装置と通信路で接続されたリモート機器に記憶されているＵＩプログラムの一覧を追加するＵＩ一覧取得部と、
追加された前記ＵＩ一覧の中からユーザによって選択されたＵＩプログラムが前記ユーザ・インタフェース制御装置に記憶されていない場合に、前記リモート機器から、選択された前記ＵＩプログラムを取得するＵＩ取得部と、
取得された前記ＵＩプログラムを実行して、前記ユーザ・インタフェース制御装置又は前記ユーザ・インタフェース制御装置を備える機器の画面にユーザ・インタフェースを表示する表示部と
を備える集積回路。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2009090872.tif 000020
【図２】
2009090872.tif 000021
【図３】
2009090872.tif 000022
【図４】
2009090872.tif 000023
【図５】
2009090872.tif 000024
【図６】
2009090872.tif 000025
【図７】
2009090872.tif 000026
【図８】
2009090872.tif 000027
【図９】
2009090872.tif 000028
【図１０】
2009090872.tif 000029
【図１１】
2009090872.tif 000030
【図１２】
2009090872.tif 000031
【図１３】
2009090872.tif 000032
【図１４】
2009090872.tif 000033
【図１５】
2009090872.tif 000034
【図１６】
2009090872.tif 000035
【図１７】
2009090872.tif 000036
【国際調査報告】
2009090872.tif 000037
2009090872.tif 000038
2009090872.tif 000039
2009090872.tif 000040