(57)【特許請求の範囲】
【請求項１】
合成サービスをユーザ装置へ提供する情報処理システム（１００）であって、
サービスプロバイダ（１３１ａ〜１３１ｎ）により提供されるロー・サービスをそれぞれが規定する複数の記述を取得するように構成されたサービス取得部（３０３）と、
前記ユーザ装置（１２１ａ〜１２１ｎ）がどの種類のデータタイプをサポートするかを含む、前記ユーザ装置の能力情報を取得するように構成された能力情報取得部（３０４）と、
前記ユーザ装置（１２１ａ〜１２１ｎ）の前記取得された能力情報に基づいて、前記ユーザ装置（１２１ａ〜１２１ｎ）によりサポートされる複数のロー・サービスから生成される合成サービスを規定する記述を作成するために前記取得された記述を合成するように構成された合成部（３０６）と、
前記合成サービスを規定する前記作成された記述を前記ユーザ装置（１２１ａ〜１２１ｎ）へ提示するように構成された提示部（３０７）と、
前記ユーザ装置（１２１ａ〜１２１ｎ）から前記合成サービスを求める要求を取得するように構成された要求取得部（４０５）と、
前記要求された合成サービスを規定する前記記述に基づいて、前記要求された合成サービスを構成するロー・サービスを特定するように構成された特定部（４０６）と、
前記要求された合成サービスを構成する前記特定されたロー・サービスから応答を収集し、前記収集された応答に基づいて前記要求された合成サービスの合成応答を作成するように構成された処理部（４０７）と、
前記作成された合成応答を前記ユーザ装置（１２１ａ〜１２１ｎ）へ応答するように構成された応答部（４０８）と、
前記ユーザ装置（１２１ａ〜１２１ｎ）と同一のネットワーク（１２０）に含まれ、前記ユーザ装置（１２１ａ〜１２１ｎ）が利用可能なプロトコルをサポートする中継部（５０３）と
を備え、
前記中継部（５０３）は、前記ユーザ装置（１２１ａ〜１２１ｎ）が前記同一のネットワーク（１２０）内のローカル装置により提供されるサービスとして前記合成サービスを認識できるように、前記ユーザ装置（１２１ａ〜１２１ｎ）が利用可能な前記プロトコルを用いて前記合成サービスの前記記述を前記ユーザ装置（１２１ａ〜１２１ｎ）へ提示する
ことを特徴とする情報処理システム（１００）。
【請求項２】
前記同一のネットワーク（１２０）は相異なるプロトコルをサポートする複数のユーザ装置（１２１ａ〜１２１ｎ）を含み、
前記中継部（５０３）は、前記合成サービスの前記記述を提示するために前記中継部（５０３）がサポートする前記プロトコルをサポートするユーザ装置（１２１ａ〜１２１ｎ）だけに前記合成サービスの前記記述を提示する
ことを特徴とする請求項１に記載の情報処理システム（１００）。
【請求項３】
前記ユーザ装置（１２１ａ〜１２１ｎ）及び前記中継部（５０３）は、ＤＬＮＡ／ＵＰｎＰ、Ｂｏｎｊｏｕｒ／Ｚｅｒｏｃｏｎｆ、Ｂｌｕｅｔｏｏｔｈ、ＺｉｇＢｅｅ及びＩＥＥＥ８０２．１５．４の変型のうちの少なくとも１つの標準に従う通信をサポートするパーソナルネットワーク（１２０）に含まれ、
前記中継部は前記パーソナルネットワークと外部ネットワーク（１１０、１３０）とを接続するゲートウェイとして振る舞う
ことを特徴とする請求項１又は２に記載の情報処理システム（１００）。
【請求項４】
前記ロー・サービスの前記記述は前記サービスプロバイダ（１３１ａ〜１３１ｎ）の代わりに、又は前記サービスプロバイダに加えて、別のユーザ装置により提供されることを特徴とする請求項１乃至３の何れか１項に記載の情報処理システム（１００）。
【請求項５】
合成サービスをユーザ装置へ提供する情報処理方法であって、
サービスプロバイダ（１３１ａ〜１３１ｎ）により提供されるロー・サービスをそれぞれが規定する複数の記述を取得する工程（Ｓ６０１）と、
前記ユーザ装置がどの種類のデータタイプをサポートするかを示す、前記ユーザ装置（１２１ａ〜１２１ｎ）の能力情報を取得する工程（Ｓ６０３）と、
前記ユーザ装置（１２１ａ〜１２１ｎ）の前記取得された能力情報に基づいて、前記ユーザ装置（１２１ａ〜１２１ｎ）によりサポートされる複数のロー・サービスから生成される合成サービスを規定する記述を作成するために前記取得された記述を合成する工程（Ｓ６０８）と、
前記ユーザ装置（１２１ａ〜１２１ｎ）と同一のネットワーク（１２０）に含まれ、前記ユーザ装置（１２１ａ〜１２１ｎ）が利用可能なプロトコルをサポートする中継部（５０３）を介して前記合成サービスを規定する前記作成された記述を前記ユーザ装置（１２１ａ〜１２１ｎ）へ提示する工程（Ｓ６０９）と、
前記ユーザ装置（１２１ａ〜１２１ｎ）から前記合成サービスを求める要求を取得する工程（Ｓ６１４）と、
前記要求された合成サービスを規定する前記記述に基づいて、前記要求された合成サービスを構成するロー・サービスを特定する工程（Ｓ６１５）と、
前記要求された合成サービスを構成する前記特定されたロー・サービスから応答を収集する工程（Ｓ６１６）と、
前記収集された応答に基づいて前記要求された合成サービスの合成応答を作成する工程（Ｓ６１７）と、
前記作成された合成応答を前記ユーザ装置（１２１ａ〜１２１ｎ）へ応答する工程（Ｓ６１８）と
を有し、
前記中継部（５０３）は、前記ユーザ装置（１２１ａ〜１２１ｎ）が前記同一のネットワーク（１２０）内のローカル装置により提供されるサービスとして前記合成サービスを認識できるように、前記ユーザ装置（１２１ａ〜１２１ｎ）が利用可能な前記プロトコルを用いて前記合成サービスの前記記述を前記ユーザ装置（１２１ａ〜１２１ｎ）へ提示する
ことを特徴とする情報処理方法。
【請求項６】
合成サービスをユーザ装置へ提供する情報処理方法をコンピュータに実行させるコンピュータプログラムであって、前記情報処理方法は、
サービスプロバイダ（１３１ａ〜１３１ｎ）により提供されるロー・サービスをそれぞれが規定する複数の記述を取得する工程（Ｓ６０１）と、
前記ユーザ装置がどの種類のデータタイプをサポートするかを示す、前記ユーザ装置（１２１ａ〜１２１ｎ）の能力情報を取得する工程（Ｓ６０３）と、
前記ユーザ装置（１２１ａ〜１２１ｎ）の前記取得された能力情報に基づいて、前記ユーザ装置（１２１ａ〜１２１ｎ）によりサポートされる複数のロー・サービスから生成される合成サービスを規定する記述を作成するために前記取得された記述を合成する工程（Ｓ６０８）と、
前記ユーザ装置（１２１ａ〜１２１ｎ）と同一のネットワーク（１２０）に含まれ、前記ユーザ装置（１２１ａ〜１２１ｎ）が利用可能なプロトコルをサポートする中継部（５０３）を介して前記合成サービスを規定する前記作成された記述を前記ユーザ装置（１２１ａ〜１２１ｎ）へ提示する工程（Ｓ６０９）と、
前記ユーザ装置（１２１ａ〜１２１ｎ）から前記合成サービスを求める要求を取得する工程（Ｓ６１４）と、
前記要求された合成サービスを規定する前記記述に基づいて、前記要求された合成サービスを構成するロー・サービスを特定する工程（Ｓ６１５）と、
前記要求された合成サービスを構成する前記特定されたロー・サービスから応答を収集する工程（Ｓ６１６）と、
前記収集された応答に基づいて前記要求された合成サービスの合成応答を作成する工程（Ｓ６１７）と、
前記作成された合成応答を前記ユーザ装置（１２１ａ〜１２１ｎ）へ応答する工程（Ｓ６１８）と
を有し、
前記中継部（５０３）は、前記ユーザ装置（１２１ａ〜１２１ｎ）が前記同一のネットワーク（１２０）内のローカル装置により提供されるサービスとして前記合成サービスを認識できるように、前記ユーザ装置（１２１ａ〜１２１ｎ）が利用可能な前記プロトコルを用いて前記合成サービスの前記記述を前記ユーザ装置（１２１ａ〜１２１ｎ）へ提示する
ことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は合成サービスを提供する情報処理システムおよび方法に関する。
【背景技術】
【０００２】
今日、人々は様々な種類のＬＡＮ（ローカルエリアネットワーク）技術やＰＡＮ（パーソナルエリアネットワーク）技術により相互接続された複数のデジタル装置を用いる。ＵＰｎＰ（ユニバーサルプラグアンドプレイ、登録商標）およびＤＬＮＡ（デジタルリビングネットワークアライアンス、登録商標）はホームＬＡＮ内のメディア消費に焦点を当てた標準であり、例えばユーザが自身のリビングルーム内のテレビセットの自身のネットワーク接続ストレージ（ＮＡＳ）に格納されたメディアを再生することを可能にする。さらに、人々は通りを歩きながらＬＡＮ技術やＰＡＮ技術によって接続されるようになってきている複数の携帯型装置およびガジェットを有する。同時に、サービスプロバイダやユーザ自身のホームネットワークにより提供され、ＷＡＮ（ワイドエリアネットワーク）技術を通じてアクセス可能な多くのサービスがインターネット上で利用可能である。多くのビデオ共有サイトがインターネット上で利用可能である。また、多くのインターネットラジオ局が利用可能であり、ポッドキャストサイトは整形式メタデータとともにオーディオおよびビデオを提供する。
【０００３】
人々はＬＡＮ接続を介して接続された複数の装置の自身のパーソナルネットワーク（ＰＮ）を作成し始めており、自身のＰＮを通じて様々なサービスを用いるが、ＰＮ装置でのＷＡＮサービスの使用にはなおも多くの課題がある。
【０００４】
複数の小さなサービスによって合成される目標のサービスを作成するサービス合成がこの分野で現在話題になっている。ウェブサービス、そのフロー合成および実行の仕様を形式化する複数のＸＭＬベースの標準がある。例えば、ＷＳＤＬ（ウェブサービス記述言語）はウェブサービスを表現するために用いられ、ＢＰＥＬ４ＷＳ（ウェブサービスのためのビジネスプロセス実行言語）は合成フローを記述するために用いられる。しかしながら、検討されるメディア装置は自身の目標のユースケースに従って制限された能力を有し、それ故インターネットで利用可能なすべてのサービス、プロトコル、またはメディアタイプをサポートするわけではない。これらは自身の仕様で定義された制限されている動作およびメディアタイプをサポートするだけであり、通常はＰＣのように簡単に拡張できない。従って、ユーザは特定の装置上で限られたサービス集合を享受できるだけである。例えば、ＭＰＥＧ２ビデオフォーマットだけをサポートする装置は、Ｈ．２６４フォーマットだけでビデオを配布するサービスプロバイダにより提供されるビデオコンテンツを再生できない。このような場合に、装置がビデオをともかく再生できるように、トランスコードが適用されうる。しかしながら、ユーザはトランスコードを行うためのスキル、ツール、および計算機能力を必要とし、または外部サービスプロバイダが当該動作を実行しなければならない。このようなトランスコードサービスの一例は、ＯＭＡ  ＳＴＩ（スタンダードトランスコードインタフェース）である。この場合に、装置はサービスプロバイダからのビデオコンテンツへ即座にアクセスできず、トランスコードが事前に適用されなければならない。サービス合成はコンテンツサービスとトランスコーダサービスとで構成されるサービスを作成できてもよい。しかしながら、サービス合成は通常、個別の装置集合に対して実行されず、それ故、合成サービスはそれぞれすべての装置に常に適するとは限らない。
【０００５】
さらに、装置は、当該装置と同じプロトコル集合をサポートするサービスとだけ通信できる。例えば、ＵＰｎＰ装置は、やはりＵＰｎＰプロトコルをサポートする他の装置と通信するように設計されるが、ＵＰｎＰ装置は通常、他のプロトコルを用いて通信できない。異なるプロトコル集合を用いて通信する装置およびサービスとともにＵＰｎＰ装置を用いるために、相異なるプロトコル領域間のプロトコルゲートウェイが必要となる。
【０００６】
ウェブサービスとＵＰｎＰ装置との間のこのようなプロトコル変換・ブリッジ機能は先行技術に見られる。例えば、特許文献１は、ウェブサービス関連機能を直接にインストールすることなく、ウェブサービスを通じてホームネットワーク装置が外部装置へホームネットワーク装置サービスを提供できる技術を提案する。特許文献２は、ＵＰｎＰディスカバリに準拠した情報装置とウェブベースディスカバリに準拠した情報装置とを含む情報処理装置とを提案する。特許文献３は、ＵＰｎＰ対応装置をＢｌｕｅｔｏｏｔｈ（登録商標）対応装置に接続するためのプロキシブリッジを提案する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】米国特許出願公開第２００７／００８３６１８号明細書
【特許文献２】米国特許出願公開第２００５／０２１０１５５号明細書
【特許文献３】国際公開第２００７／１４０９８１号
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、先行技術は静的かつ個別の技術集合に対処するだけであり、これらのいずれも提供されるサービスの要件および特性と、目標の装置のアクセス・能力情報との間のギャップを解決する包括的な方法を提供しない。
【課題を解決するための手段】
【０００９】
本発明の合成サービスをユーザ装置へ提供する情報処理システムが提供される。本システムは、サービスプロバイダにより提供されるロー・サービスをそれぞれが規定する複数の記述を取得するように構成されたサービス取得部と、前記ユーザ装置がどの種類のデータタイプをサポートするかを含む、前記ユーザ装置の能力情報を取得するように構成された能力情報取得部と、前記ユーザ装置の前記取得された能力情報に基づいて、前記ユーザ装置によりサポートされる複数のロー・サービスから生成される合成サービスを規定する記述を作成するために前記取得された記述を合成するように構成された合成部と、前記合成サービスを規定する前記作成された記述を前記ユーザ装置へ提示するように構成された提示部と、前記ユーザ装置から前記合成サービスを求める要求を取得するように構成された要求取得部と、前記要求された合成サービスを規定する前記記述に基づいて、前記要求された合成サービスを構成するロー・サービスを特定するように構成された特定部と、前記要求された合成サービスを構成する前記特定されたロー・サービスから応答を収集し、前記収集された応答に基づいて前記要求された合成サービスの合成応答を作成するように構成された処理部と、前記作成された合成応答を前記ユーザ装置へ応答するように構成された応答部とを含む。
【００１０】
本発明の更なる特徴は添付の図面を参照する以下の例示の実施形態の記載から明らかになるだろう。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態に従う情報処理システム１００を含む環境の例示の概観を説明する図である。
【図２】本発明の実施形態に従うＰＮＡＳ１１３の例示のブロック図を説明する図である。
【図３】本発明の実施形態に従うＳＩＧＥ１１１の例示のブロック図を説明する図である。
【図４】本発明の実施形態に従うＳＥＣＥ１１２の例示のブロック図を説明する図である。
【図５】本発明の実施形態に従うＶＤＩ１２２の例示のブロック図を説明する図である。
【図６】本発明の実施形態に従う情報処理システム１００の全体動作の例を説明する図である。
【図７】本発明の実施形態に従うＳＬ３１１の例を説明する図である。
【図８】本発明の実施形態に従うＤＬ３１２の例を説明する図である。
【図９】本発明の実施形態に従うＳＤＰＬ３１３の例を説明する図である。
【発明を実施するための形態】
【００１２】
本発明の実施形態が以下に添付の図面を参照しつつ説明される。以下に説明される各実施形態は総括的なものからより個別のものまでの様々な概念を理解するのに役立つ。本発明の技術的範囲は特許請求の範囲により規定され、以下に説明される各実施形態によって限定されないことが理解されるべきである。さらに、実施形態に説明される特徴のすべての組合せが本発明にとって常に不可欠であるとは限らない。
【００１３】
図１は本発明の実施形態に従う情報処理システム１００を含む環境の例示の概観を説明する。環境は３つのネットワーク、すなわちＩＭＳ（ＩＰマルチメディアサブシステム）環境１１０、パーソナルネットワーク１２０、およびインターネット１３０を含む。
【００１４】
ＩＭＳ環境１１０は事業者によって管理される。パーソナルネットワーク１２０はユーザが個人的に作成するネットワークであり、例えばホームネットワークや車内ネットワークである。パーソナルネットワーク１２０は１つ以上のユーザ装置１２１ａ〜１２１ｎ、例えばテレビ、ゲーム機、ホームＮＡＳなどを含む。パーソナルネットワーク１２０はさらに複数のユーザＬＡＮおよびユーザＰＡＮを含んでもよい。インターネット１３０は誰もがアクセスできるネットワークであり、１つ以上のサービスプロバイダ（ＳＰ）１３１ａ〜１３１ｎを含む。サービスプロバイダ１３１ａ〜１３１ｎのそれぞれはいくつかのサービスを提供する。以降において、サービスプロバイダ１３１ａ〜１３１ｎにより提供されるサービスは「ロー・サービス（raw service）」と呼ばれる。この実施形態において、パーソナルネットワーク１２０はＤＬＮＡネットワークであると想定される。しかしながら、パーソナルネットワークは以下の標準、すなわちＤＬＮＡ／ＵＰｎＰ、Ｂｏｎｊｏｕｒ（登録商標）／ゼロコンフ、Ｂｌｕｅｔｏｏｔｈ、ＺｉｇＢｅｅ（登録商標）、およびＩＥＥＥ８０２．１５．４の変型のうちの１つ以上に従う通信をサポートしてもよい。ＢｏｎｊｏｕｒはＰＡＮにおけるオーディオ再生を含む装置間のディスカバリおよび通信のために用いられてもよい。ＺｉｇＢｅｅおよびＩＥＥＥ８０２．１５．４の変型は例えばホームオートメーションシナリオについてのセンサおよびアクチュエータ装置のために用いられてもよい。
【００１５】
情報処理システム１００は３つの機能的装置、すなわちＳＩＧＥ（サービス情報生成エンジン）１１１、ＳＥＣＥ（サービス実行調整エンジン）１１２、およびＶＤＩ（仮想装置インスタンス化器）１１２を備え、ユーザ装置１２１ａ〜１２１ｎのそれぞれに対して個別に適合された仮想装置を提供する。この実施形態によれば、ＳＩＧＥ１１１およびＳＥＣＥ１１２はＩＭＳ環境１１０に含まれ、ＶＤＩ１２２はパーソナルネットワーク１２０に含まれる。各仮想装置は、ユーザ装置１２１ａ〜１２１ｎの能力、および場合によってはユーザ装置１２１ａ〜１２１ｎのユーザの嗜好を考慮に入れてロー・サービスの集合を合成することによって作成される。ＳＩＧＥ１１１は仮想化されるロー・サービスに関する情報を収集し、収集した情報に基づいて装置記述を作成する。ＳＥＣＥ１１２はユーザ装置１２１ａ〜１２１ｎから仮想装置への要求を受信し、要求を処理し、ロー・サービスからの対応する応答をユーザ装置１２１ａ〜１２１ｎへ返す。
【００１６】
ＳＩＧＥ１１１およびＳＥＣＥ１１２に加えて、ＵＰｎＰのような装置ディスカバリ・制御のためにパーソナルネットワーク１２０の内部で用いられるように設計されたプロトコルの場合に、パーソナルネットワーク１２０において仮想装置がインスタンス化される必要がある。従って、情報処理システム１００はＶＤＩ１２２を含んでもよい。ＶＤＩ１２２はパーソナルネットワーク１２０内に存在し、ＳＩＧＥ１１１により生成された装置記述に基づいて仮想装置をインスタンス化する。パーソナルネットワーク１２０内のユーザ装置１２１ａ〜１２１ｎは、あたかも仮想装置がパーソナルネットワーク１２０内に存在するかのように、ＶＤＩ１２１によりインスタンス化された仮想装置を通じてＳＥＣＥ１１２と通信できる。インターネット１３０に含まれてもよいユーザ装置がＳＩＧＥ１１１およびＳＥＣＥ１１２と直接に通信できるならば、ユーザ装置はＶＤＩ１２２を用いなくてもよい。
【００１７】
パーソナルネットワーク１２０はまた、ＩＧ（ＩＭＳゲートウェイ）１２３およびＲＧｗ（宅内ゲートウェイ）１２４を含む。ＩＧ１２３はＩＭＳ環境１１０とパーソナルネットワーク１２０との間のアプリケーション層ゲートウェイ装置である。ＲＧｗ１２４はパーソナルネットワーク１２０と外部ネットワークとの間の接続層ゲートウェイ装置である。ユーザ装置１２１ａ〜１２１ｎとＩＭＳ環境１１０との間のメッセージの搬送および認証はＩＧによって仲介され、ＩＭＳ環境１１０により提供されるセキュリティ機構によって保護される。
【００１８】
ＩＭＳ環境１１０はまた、ＰＮＡＳ（パーソナルネットワークアプリケーションサーバ）１１３を含み、ＰＮＡＳ１１３はパーソナルネットワーク１２０に関する情報の開示を可能にするＩＭＳイネーブラである。ＰＮＡＳ１１３はユーザ装置１２１ａ〜１２１ｎに関するアクセス・制御情報をＳＩＧＥ１１１に開示することによってユーザ装置１２１ａ〜１２１ｎとＳＩＧＥ１１１との間の壁を低くするのに役立つ。基本原理では、ＩＧ１２３がパーソナルネットワーク１２０内のユーザ装置１２１ａ〜１２１ｎを発見し、装置の情報をＰＮＡＳ１１３へ開示し、ＰＮＡＳ１１３がパーソナルネットワーク１２０の装置の情報を集約してＳＩＧＥ１１１およびＳＥＣＥ１１２へ提供する。
【００１９】
ＳＩＧＥ１１１はＰＮＡＳ１１３からフェッチした情報を利用して、仮想装置の記述である仮想装置記述を生成する。仮想装置記述はＶＤＩ１２２へ供給され、ＶＤＩ１２２は記述に基づいてパーソナルネットワーク１２０内の仮想装置をインスタンス化する。ＳＥＣＥ１１２はＶＤＩ１２２を通じてユーザ装置から要求を受け付け、ＳＩＧＥ１１１により作成された仮想装置記述に従ってロー・サービスを呼び出し、ＶＤＩ１２２を介してユーザ装置１２１ａ〜１２１ｎへ合成応答を返す。
【００２０】
各仮想装置はサービス集合についてのエントリーポイントとして動作し、仮想装置は必要な場合にプロトコルを変換するので、この実施形態に従う情報処理システム１００は、ユーザ装置１２１ａ〜１２１ｎのそれぞれが本来サポートするサービスよりも多様且つ複雑な合成サービスにユーザ装置１２１ａ〜１２１ｎのそれぞれがアクセスすることを可能にする。
【００２１】
情報処理システム１００の動作の高レベルの説明は以下の通りである。利用可能なサービスの記述がＳＩＧＥ１１１へ供給され、ＳＩＧＥ１１１はパーソナルネットワーク１２０内のユーザ装置１２１ａ〜１２１ｎの能力を考慮しつつ、仮想装置記述を作成する。各仮想装置記述について、ＶＤＩ１２２は仮想装置記述に基づいて仮想装置をインスタンス化する。ユーザ装置１２１ａ〜１２１ｎは他の通常のローカル装置と同じ方法でパーソナルネットワーク１２０内の仮想装置と通信する。ＶＤＩ１２２はユーザ装置１２１ａ〜１２１ｎからの要求をＳＥＣＥ１１２へリダイレクトする。ＳＥＣＥ１１２は関与するサービスを呼び出し、応答を受信して合成し、ＶＤＩ１２２を介して、要求したユーザ装置へ合成応答を返す。
【００２２】
ここで、この実施形態の３つの基本的なユースケースが説明される。第１ユースケースは自動メディア適応である。サービスプロバイダ１３１ａがロー・サービスとしてＶｏＤサービスを提供し、サービスプロバイダ１３１ｂが別のロー・サービスとしてトランスコードサービスを提供することを想定する。パーソナルネットワーク１２０のユーザは、サービスプロバイダ１３１ａにより提供されるビデオコーデックをサポートしないユーザ装置としてＤＭＰ（デジタルメディアプレーヤ）装置を有する。ＳＩＧＥ１１１はサービスプロバイダ１３１ａにより提供されるＶｏＤサービスを仮想ＤＭＳ（デジタルメディアサーバ）装置として仮想化する。ＰＮＡＳ１１３はユーザのＤＭＰ装置に関する情報を管理する。
【００２３】
ユーザはＤＭＰ装置をオンにして、ＳＰ１−ＶｏＤをＤＭＳ装置として見つける。ユーザはＳＰ１−ＶｏＤサービスを仮想化している仮想ＤＭＳ装置をローカルＤＭＳ装置と同じ方法で選ぶ。ＤＭＰ装置はＳＰ１−ＶｏＤ上のコンテンツリストを示し、これを通じて閲覧し、検索できる。ユーザはローカルＤＭＳ装置を用いる場合と同じ方法で再生するコンテンツを選ぶ。要求はＳＥＣＥ１１２のより受信され、サービスプロバイダ１３１ａ、１３１ｂが呼び出され、ＶｏＤサービス上のトランスコードされたコンテンツがＤＭＰ装置へ配信される。ユーザはトランスコードの必要性を知ることなく、メディアコンテンツを楽しめる。
【００２４】
第２ユースケースは写真共有サイトからスライドショーを作成することである。サービスプロバイダ１３１ａが写真共有を提供し、サービスプロバイダ１３１ｂがアップロードされた写真からスライドショーを作成し、動画ファイルを返すことを想定する。ユーザはリッチスライドショー機能を有しないＤＭＰ装置を有する。ＳＩＧＥ１１１は、サービスプロバイダ１３１ｂにより作成されたスライドショーを示す仮想ＤＭＳ装置を作成する。
【００２５】
ユーザはＤＭＰ装置をオンにして、仮想ＤＭＳ装置を見つける。ユーザはローカルＤＭＳ装置と同じ方法で仮想ＤＭＳ装置を選ぶ。ＤＭＰ装置は「サービスプロバイダ１３１ａ上の写真のスライドショー」を表示し、ユーザはこれを選ぶ。要求はＳＥＣＥ１１２により受信され、サービスプロバイダ１３１ａ、１３１ｂが呼び出され、リッチスライドショー動画がＤＭＰ装置へ返される。ＤＭＰ装置がオンライン写真サイトアクセスまたはリッチスライドショーをサポートしなくとも、ユーザはウェブサイト上のリッチスライドショーを楽しめる。
【００２６】
第３ユースケースはビデオアップロードである。サービスプロバイダ１３１ａがビデオ公開サービスを提供することを想定する。ユーザはビデオ公開サービスへアップロードしたいコンテンツを有するが、コンテンツはＤＭＳ装置上にあり、コンテンツのメディア形式はビデオ公開サービスにより受け入れられない。ＳＩＧＥ１１１はサービスプロバイダ１３１ａを仮想ＤＭＲ（デジタルメディアレンダラ）装置および仮想ＤＭＳ装置として仮想化する。
【００２７】
ユーザは自身のＤＭＣ（デジタルメディアコントローラ）装置をオンにして、サービスプロバイダ１３１ａへアップロードしたい自身のＤＭＳ装置上のコンテンツを見つける。ユーザはコンテンツを選び、ＤＭＣ装置上のメニューから仮想ＤＭＲ装置での再生を選択する。要求はＳＥＣＥ１１２により受信され、サービスプロバイダが呼び出され、コンテンツのトランスコード版がサービスプロバイダ１３１ａへアップロードされる。ここで、ユーザはコンテンツがサービスプロバイダ１３１ａにアップロードされたことを確認できる。
【００２８】
図２はこの実施形態に従うＰＮＡＳ１１３の例示のブロック図を説明する。言及されたように、ＰＮＡＳ１１３はパーソナルネットワーク１２０に関する情報を管理するＩＭＳイネーブラである。ＰＮＡＳ１１３はＣＰＵ２０１と、メモリ２０２と、ＤＢ管理部２０３とを備える。ＰＮＡＳ１１３はさらに、４つのデータベース、すなわちサービスＤＢ２０４と、装置ＤＢ２０５と、ユーザ嗜好ＤＢ２０６と、サービス合成規則ＤＢ２０７とを含む。
【００２９】
ＣＰＵ２０１はＰＮＡＳ１１３の全体の動作を制御する。メモリ２０２はＰＮＡＳ１１３の動作のために用いられるコンピュータプログラムおよびデータを格納する。ＤＢ管理部２０３はＤＢを管理する。サービスＤＢ２０４はサービスプロバイダ１３１ａ〜１３１ｎが提供するロー・サービス情報を格納し、サービスプロバイダ１３１ａ〜１３１ｎの能力を含む。ＤＢ管理部２０３はサービスプロバイダ１３１ａ〜１３１ｎからロー・サービス情報を取得し、ロー・サービス情報をサービスＤＢ２０４へ入力する。サービスプロバイダ１３１ａ〜１３１ｎとＩＭＳ事業者との間のＳＬＡにおいて手動で行われるように、ロー・サービスはＷＳＤＬまたは同等のもので記述されてもよいし、ＤＢ管理部２０３はＲＳＳ（ＲＤＦサイトサマリ）またはその同等のものとして実装されうるサー０ビスプロバイダ１３１ａ〜１３１ｎからのサービス告知を購読する。ＰＮＡＳ１１３のＰＮＡＳ運用者はＤＢ管理部２０３を用いてロー・サービス情報を手動で管理してもよい。ＤＢ管理部２０３はサービスＤＢ２０４の更新をＳＩＧＥ１１１へ通知してもよい。
【００３０】
装置ＤＢ２０５はパーソナルネットワーク１２０内のユーザ装置１２１ａ〜１２１ｎの情報を記述する装置記述を格納する。ＤＢ管理部２０３はＩＧ１２３の関連するＩＭＰＵとともに装置記述を入力してもよい。よって、パーソナルネットワーク１２０内の装置の情報はＩＭＰＵをキーとして用いて問い合わせされうる。ＤＢ管理部２０３は装置ＤＢ２０５の更新をＳＩＧＥ１１１へ通知してもよい。
【００３１】
ＰＮＡＳ１１３はＩＧ１２３と連携して、ユーザ装置１２１ａ〜１２１ｎの能力情報および装置記述を取得する。ＩＧ１２３はパーソナルネットワーク１２０へＭサーチメッセージを送信する。パーソナルネットワーク１２０内のユーザ装置１２１ａ〜１２１ｎはＩＧ１２３からのＭサーチに応答する。ＩＧ１２３はＭサーチへ応答したユーザ装置１２１ａ〜１２１ｎから装置記述をフェッチする。ＩＧ１２３は適切なＵＰｎＰメッセージを発行することによって、見つかったユーザ装置１２１ａ〜１２１ｎの能力を検出し、これらの能力情報および装置記述をＤＢ管理部２０３へアップロードする。
【００３２】
ユーザ嗜好ＤＢ２０６はパーソナルネットワーク１２０を管理するユーザの嗜好の情報を記述するユーザ嗜好を格納する。ユーザはＤＢ管理部２０３を用いて自身の嗜好をユーザ嗜好ＤＢ２０６へ登録してもよい。ＤＢ管理部２０３はユーザ嗜好ＤＢ２０６の更新をＳＩＧＥ１１１へ通知してもよい。
【００３３】
サービス合成規則ＤＢ２０７はロー・サービスを合成するための規則を格納する。ＰＮＡＳ１１３の運用者はＤＢ管理部２０３を用いてサービス合成規則ＤＢ２０７へ規則を登録してもよい。合成規則はサービスと装置との可能な組合せを合成部３０６が判定できるようにする基本規則であり、例えばトランスコードサービスはメディアストリーミングサービスと組み合わされることができ、合成の結果は新たなメディアストリーミングサービスである。合成規則はまた、ロー・サービスの明示的な集合からなる合成サービスを記述する明示的な規則を含んでもよい。ＤＢ管理部２０３はサービス合成規則ＤＢ２０７の更新をＳＩＧＥ１１１へ通知してもよい。
【００３４】
図３はこの実施形態に従うＳＩＧＥ１１１の例示のブロック図を示す。言及されたように、ＳＩＧＥ１１１は利用可能なロー・サービスの情報を収集し、当該情報に基づいて装置記述を作成する。ＳＩＧＥ１１１は、ＣＰＵ３０１と、メモリ３０２と、サービス取得部３０３と、能力情報取得部３０４と、嗜好取得部３０５と、合成部３０６と、提示部３０７とを備える。嗜好取得部３０５はオプションである。
【００３５】
ＣＰＵ３０１はＳＩＧＥ１１１の全体の動作を制御する。メモリ３０２はＳＩＧＥ１１１の動作に用いられるコンピュータプログラムおよびデータを格納する。ＳＩＧＥ１１１が仮想装置を作成するために、ＳＩＧＥ１１１は利用可能なロー・サービスのリスト、ユーザ装置１２１ａ〜１２１ｎ、サービス合成規則、および場合によってはユーザ嗜好の情報を取得する。ＰＮＡＳ１１３がサービスＤＢ２０４、装置ＤＢ２０５、ユーザ嗜好ＤＢ２０６、およびサービス合成規則ＤＢ２０７を有するので、ＰＮＡＳ１１３はＰＮＡＳ１１３のＡＰＩを通じて必要な情報を提供できる。
【００３６】
サービス取得部３０３はサービスプロバイダ１３１により提供されるロー・サービスをそれぞれが規定する複数の記述を取得する。サービス取得部３０３はＩＭＳ環境１１０により提供されるロー・サービスをそれぞれが規定する１つ以上の記述を取得してもよい。能力情報取得部３０４はユーザ装置１２１ａ〜１２１ｎの能力情報を取得する。能力情報は、どの種類のデータタイプをユーザ装置１２１がサポートするかを含む。能力情報は他の能力、例えば画面サイズ、ステレオ／モノラルなどを含んでもよい。ユーザ装置１２１ａ〜１２１ｎの能力情報はユーザとＩＭＳ環境１１０の事業者との間の信頼関係に基づいてユーザ装置１２１ａ〜１２１ｎのユーザにより開示されてもよい。合成部３０６は取得された記述を合成して、ユーザ装置１２１ａ〜１２１ｎの取得された能力情報に基づいてユーザ装置１２１ａ〜１２１ｎによりサポートされる複数のロー・サービスから生成される合成サービスを規定する記述を作成する。提示部３０７は合成サービスを規定する作成された記述をユーザ装置１２１ａ〜１２１ｎへ提示する。メモリ３０２はＳＬ（サービスリスト）３１１と、ＤＬ（装置リスト）３１２と、ＳＤＰＬ（サービス装置ペアリスト）３１３とを含み、これらは詳細に後述される。
【００３７】
図４はこの実施形態に従うＳＥＣＥ１１２の例示のブロック図を説明する。ＳＥＣＥ１１２は、ＣＰＵ４０１と、メモリ４０２と、サービス合成エンジン４０３と、エージェント４０４とを備える。
【００３８】
ＣＰＵ４０１はＳＥＣＥ１１２の全体の動作を制御する。メモリ４０２はＳＥＣＥ１１２の動作に用いされるコンピュータプログラムおよびデータを格納する。サービス記述および合成フロー記述は標準化された形式であるので、サービス合成エンジン４０３はサービス合成技術の既存のイネーブラによって実現されてもよい。この実施形態では、サービス合成エンジン４０３は要求取得部４０５と、特定部４０６と、処理部４０７とを含む。要求取得部４０５はユーザ装置１２１ａ〜１２１ｎから直接的にまたは間接的に合成サービスを求める要求を取得する。特定部４０６は、要求された合成サービスを規定する記述に基づいて、要求された合成サービスを構成するロー・サービスを特定する。ユーザ装置１２１ａ〜１２１ｎからの合成サービスを求める要求は、ＩＭＳ環境１１０により提供されるＡＡＡ機構を利用して認証、認可、およびアカウンティングされてもよい。処理部４０７は、要求された合成サービスを構成する特定されたロー・サービスからの応答を収集し、収集された応答に基づいて、要求された合成サービスの合成応答を作成する。
【００３９】
さらに、ＳＥＣＥ１１２はユーザ装置１２１ａ〜１２１ｎからＵＰｎＰ要求を受信し、これらへ応答を送信する。サービス集合は装置として仮想化されているので、ＳＥＣＥ１１２は各サービス集合について相異なるコンテキストを管理する。従って、ＳＥＣＥ１１２は各サービス集合に対するエージェント４０４を含み、それに当該特定のサービス集合のための要求および応答を処理させる。すなわち、各エージェント４０４は基本的にＵＰｎＰ装置またはＤＬＮＡ装置として動作し、通常の装置の処理と同じ方法でＵＰｎＰアクションおよびイベント購読を処理する。エージェント４０４は応答部４０８を含む。応答部４０８は作成された合成応答をユーザ装置１２１ａ〜１２１ｎへ応答する。
【００４０】
図５はこの実施形態に従うＶＤＩ１２２の例示のブロック図を説明する。ＶＤＩ１２２はユーザの各パーソナルネットワーク１２０内に存在し、パーソナルネットワーク１２０内のユーザ装置１２１ａ〜１２１ｎがサービスにアクセスできるようにパーソナルネットワーク１２０において仮想装置をインスタンス化する。ＶＤＩ１２２はパーソナルネットワーク１２０内のＩＧ１２３、ＲＧｗ１２４、または他の装置に統合されてもよい。ＶＤＩ１２２は、ＣＰＵ５０１と、メモリ５０２と、中継部５０３とを備える。ＣＰＵ５０１はＶＤＩ１２２の全体の動作を制御する。メモリ５０２はＶＤＩ１２２の動作に用いられるコンピュータプログラムおよびデータを格納する。中継部５０３はユーザ装置１２１ａ〜１２１ｎとＳＩＧＥ１１１およびＳＥＣＥ１１２との間の要求および応答を中継する。中継部５０３は必要な場合に、ユーザ装置１２１ａ〜１２１ｎがＳＩＧＥ１１１およびＳＥＣＥ１１２と通信できるように、プロトコルを変換する。
【００４１】
図６はこの実施形態に従う情報処理システム１００の全体動作の例を説明する。これらの動作を処理するために各装置に含まれるＣＰＵが各装置のメモリに格納されたコンピュータプログラムを実行する。
【００４２】
始めに、情報処理システム１００は、ステップＳ６０１からステップＳ６０８の動作を実行することによって、仮想装置を準備する。仮想装置の準備は２段階に分類される。１つの段階は、特定のサービス集合に対して通常は１回行われる汎用サービスの準備である。他方の段階は、各パーソナルネットワークについて個別に行われるユーザ別サービスの仮想化である。
【００４３】
汎用サービスの準備の段階が説明される。ステップＳ６０１で、サービス取得部３０３はＰＮＡＳ１１３内のサービスＤＢ２０４からロー・サービス情報を取得する。記載されたように、サービスＤＢ２０４はサービスプロバイダ１３１ａ〜１３１ｎにより提供されるロー・サービス記述を格納する。サービス取得部３０３はＳＩＰ  ＳＵＢＳＣＲＩＢＥまたは同等のものによってサービスＤＢ２０４を購読して、ロー・サービスの更新を検出してもよい。ステップＳ６０２で、合成部３０６はロー・サービスの取得されたサービス記述に基づいてＳＬ３１１を生成する。
【００４４】
図７はこの実施形態に従うＳＬ３１１の例を説明する。ＳＬ３１１はロー・サービスおよび合成サービスのリストである。ＳＬ３１１内のロー・サービスはステップＳ６０１で取得されたサービスである。図７のＳＬ３１１において、サービス「Ｓ１」、「Ｓ２」、「Ｓ３」、「Ｓ４」、および「Ｓ５」がロー・サービスである。ＳＬ３１１内の合成サービスはＳＬ３１１内のロー・サービスから生成されるサービスである。図７のＳＬ３１１において、サービス「Ｓ６」が合成サービスである。「サービスＩＤ」７０１はサービスのそれぞれに一意に割り当てられた識別情報を表す。「サービス名」７０２はサービスのそれぞれに割り当てられた名称を表す。「能力」７０３はサービスのそれぞれがどの種類のデータタイプをサポートするかを表す。「装置クラス」７０４はサービスのそれぞれがＤＬＮＡのどのクラスに対応するかを表す。複数のロー・サービスが合成される合成サービスもＳＬ３１１内のサービスとして列挙されることに留意されたい。例えば、サービス「Ｓ６」はサービス「Ｓ３」、「Ｓ５」で構成される。合成サービスの場合に、（例えばＢＰＥＬ４ＷＳで書かれた）合成フロー記述もサービスＤＢ２０４に格納され、サービス取得部３０３は関与するサービスのサービス記述だけでなく合成フロー記述も取得する。合成フロー記述は合成サービスを生成するためにどのようにロー・サービスを合成するかを記述する。ＳＬ３１１の各エントリーはサービス記述およびフロー合成記述への参照を有する。
【００４５】
合成部３０６はサービスクラスに基づいてＳＬ３１１内のサービスを分類し、サービス合成規則ＤＢ２０７に格納されたサービス合成規則に従ってＵＰｎＰにおける装置クラスにサービスを対応付ける。例えば、ＶｏＤサービスはＤＭＳに対応付けられる。例えばトランスコードサービスのようにＤＬＮＡ／ＵＰｎＰ装置クラスに直接に対応付けられないサービスが存在してもよい。
【００４６】
次に、図６を参照しつつ、ユーザ別サービスの仮想化の段階が説明される。この段階は各パーソナルネットワーク１２０について実行される。ステップＳ６０３で、能力情報取得部３０４はユーザ装置１２１ａ〜１２１ｎの能力情報を取得する。能力情報取得部３０４はＳＩＰ  ＳＵＢＳＣＲＩＢＥまたは同等のものによって装置ＤＢ２０５を購読して、能力情報の更新を検出してもよい。ステップＳ６０３でまた、嗜好取得部３０５がＰＮＡＳ１１３内のユーザ嗜好ＤＢ２０６からユーザ嗜好を取得してもよい。嗜好取得部３０５はＳＩＰ  ＳＵＢＳＣＲＩＢＥまたは同等のものによってユーザ嗜好ＤＢ２０６を購読して、ユーザ嗜好の更新を検出してもよい。
【００４７】
ステップＳ６０４で、合成部３０６は、ユーザ装置１２１ａ〜１２１ｎの取得された能力情報に基づいてＤＬ３１２を作成する。図８はこの実施形態に従うＤＬ３１２の例を説明する。ＤＬ３１２はパーソナルネットワーク１２０内のユーザ装置１２１ａ〜１２１ｎのリストである。「装置ＩＤ」８０１はユーザ装置１２１ａ〜１２１ｎのそれぞれに一意に割り当てられた識別情報を表す。「装置名」８０２はユーザ装置１２１ａ〜１２１ｎのそれぞれに割り当てられた名称を表す。「能力」８０３はユーザ装置のそれぞれがどの種類のデータタイプをサポートするかを表す。「装置クラス」８０４はユーザ装置１２１ａ〜１２１ｎのそれぞれがどのＤＬＮＡ装置クラスに対応するかを表す。
【００４８】
ステップＳ６０５で、合成部３０６はＳＤＰＬ３１３を作成する。ＳＤＰＬ３１３は取り得るサービスと装置とのペアのリストであり、対象の装置がペアになったサービスを消費することを可能にするために必要な仮想装置を作成するのに用いられる補足情報を有する。図９はこの実施形態に従うＳＤＰＬ３１３の例を説明する。「サービスＩＤ」９０１はＳＬ３１１内の「サービスＩＤ」７０１に対応する。「装置ＩＤ」９０２はＤＬ３１２内の「装置ＩＤ」８０１に対応する。「必要な仮想装置」９０３は仮想装置が振る舞うＤＬＮＡ装置クラスを表す。「呼び出されるサービス」９０４は当該サービスに呼び出されるロー・サービス（群）を表す。すなわち、サービスがロー・サービスであるならば、「呼び出されるサービス」９０４はロー・サービスそのものになる。他方で、サービスが合成サービスであるならば、「呼び出されるサービス」９０４は合成サービスに含まれるロー・サービスである。ＳＤＰＬ３１３を作成するために、３つの動作が実行される。
【００４９】
第１動作において、合成部３０６は、例えば嗜好取得部３０５がステップＳ６０３でユーザ嗜好を取得したならば、好まれないサービスを除外し、特定のサービスを合成することによって、ユーザ嗜好を適用してもよい。任意のサービス合成規則がユーザにより特定されているならば、合成部３０６はサービス合成規則を適用してもよい。新たな合成サービスが見つかったならば、合成部３０６は新たな合成サービスをＳＬ３１１へ入れてもよく、可能ならばＤＬＮＡ／ＵＰｎＰ装置クラスへ対応付けてもよい。
【００５０】
第２動作において、合成部３０６はＳＬ３１１とＤＬ３１２とを比較し、装置クラスに基づいてサービスと装置との間の取り得る対応付けを判定する。例えば、ＤＭＲとＤＭＳとは取り得るサービス／装置ペアとして対応付けされるが、ＵＰｎＰ  ＩＧＤとＤＭＳとのペアは無視される。１つのサービスが複数のユーザ装置に対応付けられてもよい。合成部３０６は各サービスについての消費装置にユーザ嗜好を適用してもよく、すなわちサービスとユーザ装置との間の望まれない組合せを除外してもよく、このような望まれない組合せはＳＤＰＬ３１３から外される。
【００５１】
第３動作で、ＳＤＰＬ３１３内の各エントリーについて、合成部３０６はサービスの能力と対象のユーザ装置の能力とが一致するかを判定する。対象のユーザ装置の能力とサービスの能力とが一致するならば、次のステップへ進む。そうでなければ、合成部３０６はＳＬ３１１を調べ、対象の装置がサービスを消費できるようにサービスを対象の装置へ適応するサービス（群）を探す。メディアストリーミングサービスについて、ＩＭＳコアにおけるＭＲＦ（メディアリソース機能）も、適用されるロー・サービスとしてみなされる。
【００５２】
このような適応サービスの有効な集合が見つかったならば、サービス集合を呼び出す（例えばＢＰＥＬ４ＷＳで書かれた）合成フロー記述が作成され、エントリーに関連付けられる。合成サービスの場合に、記述は既存のものに付加される。そうでない場合に、合成部３０６はサービスとユーザ装置とを対にすることをあきらめ、ＳＤＰＬ３１３からエントリーを削除する。ＰＮＡＳ１１３内のＤＢの１つの更新が検出された場合に、合成部３０６はＳＤＰＬ３１３を再作成または更新してもよい。
【００５３】
ステップＳ６０６で、ＳＤＰＬ３１３内の各エントリーについて、合成部３０６は当該特定のサービス集合のために動作するエージェント４０４を作成するようにＳＥＣＥ１１２へエージェント作成要求を発行する。要求は関与するロー・サービスのサービス記述、合成フロー記述、および対象のユーザ装置の能力を含む。合成部３０６は同様にＳＤＰＬ３１３をＳＥＣＥ１１２へ送信する。同一の特定のサービス集合について動作するエージェント４０４がＳＥＣＥ１１２内に既に存在するならば、エージェント４０４は再利用される。
【００５４】
ステップＳ６０７で、エージェント４０４は、コントロール、イベント、および当該サービス集合について動作するエージェント４０４を指すＳＣＰＤ（service control protocol declaration、サービス制御プロトコル宣言）ＵＲＬを返す。これらのＵＲＬはＵＰｎＰ標準における制御メッセージのためのエントリーポイントである。ＳＥＣＥ１１２はサービス集合とそれらの記述、フロー合成記述、および対象の装置の能力を含むエージェント作成要求を合成部６０６から受信する。ＳＥＣＥ１１２は特定のサービス集合のために動作するエージェント４０４が既に存在するかを判定する。存在するならば、ＳＥＣＥ１１２は、コントロール、イベント、および見つかったエージェント４０４のＳＣＰＤ  ＵＲＬを合成部３０６へ返す。そうでなければ、ＳＥＣＥ１１２は要求で与えられたパラメータを有する新たなエージェント４０４を作成し、新たに作成されたコントロール、イベント、および合成サービスのＳＣＰＤ  ＵＲＬを合成部３０６へ返す。
【００５５】
エージェント４０４はサービス合成エンジン４０３へサービス記述とフロー合成記述とを登録し、そのエントリーポイント、例えば要求ＵＲＩを取得する。エージェント４０４は必要ならばサービスの準備を実行、例えばエージェント４０４がメディアサーバとして動作する場合に関与するサービスに関するコンテンツリストをフェッチする。見て取れるように、担当するエージェント４０４が特定のサービス集合のために既に動作していてる場合にエージェントの準備が省略されてもよく、エージェント４０４は当該サービス集合を要求するユーザにより共有されてもよい。これは、性能およびコストの観点からいくつかの利点を有し、例えばフェッチされたコンテンツが将来の要求のためにキャッシュされうる。
【００５６】
ステップＳ６０８で、提示部３０７は新たなＵＵＩＤ（ユニバーサル一意識別子）を有する仮想装置記述を作成する。より具体的に、提示部３０７は以下の動作を実行する。提示部３０７はＳＤＰＬ３１３から対象の仮想装置に適する装置記述のテンプレートをロードし、記述内のコントロール、イベント、およびＳＣＰＤ  ＵＲＬをエージェント４０４から返されたもので上書きする。これはＶＤＩ１２２内の中継部５０３へ対応するエージェント４０４のＵＲＬを伝えるために行われる。これに代えて、この情報は、ＶＤＩ１２２によってのみ読み出される追加のＸＭＬノードとして装置記述に追加されうる。提示部３０７は仮想装置が作成される対象のユーザ装置への記述を追加する。仮想装置記述はＳＤＰＬ３１３へ格納される。ロー・サービス（群）を呼び出すためにＳＥＣＥ１１２が必要とする追加の情報も仮想装置記述とともにＳＤＰＬ３１３へ格納される。追加の情報は関与するサービスを読み出すための命令、サービスクラスなどを含み、フロー記述言語、例えばＢＰＥＬ４ＷＳで記述されてもよい。
【００５７】
次に、情報処理システム１００はステップＳ６０９からステップＳ６１１の動作を実行することによってＶＤＩ１２２内に仮想装置を作成する。ステップＳ６０９で、中継部５０３はＳＩＧＥ１１１から仮想装置の装置記述をダウンロードする。ステップＳ６０９は提示部３０７からのＳＤＰＬ３１３の更新の通知によって引き起こされてもよい。これに代えて、提示部３０７は例えばＴＲ−０６９によって装置記述を中継部５０３へプッシュしてもよい。この場合に、ＳＩＧＥ１１１からのＳＤＰＬ３１３の更新の通知はプッシュ要求によって置き換わる。
【００５８】
ステップＳ６１０で、ＳＩＧＥ１１１からダウンロードされた各装置記述について、中継部５０３はダウンロードされた装置記述を用いて仮想装置を作成する。パーソナルネットワーク１２０内の他の装置から、インスタンスはＳＩＧＥ１１１からダウンロードされた装置記述を有する装置として見える。中継部５０３は、自身の内部使用のために仮想装置記述に書かれたエージェント４０４のコントロール、イベント、およびＳＣＰＤ  ＵＲＬを格納する。当該情報は、ローカル装置からの要求を中継部５０３がどこへ転送すべきかを判定するために用いられる。仮想装置のために一意のコントロール、イベント、およびＳＣＰＤ  ＵＲＬが作成され、装置記述内のこれらのＵＲＬは、パーソナルネットワーク１２０内のユーザ装置１２１ａ〜１２１ｎからの要求が仮想装置を通るように、パーソナルネットワーク１２０内のユーザ装置１２１ａ〜１２１ｎへ送信される前に上書きされる。
【００５９】
ステップＳ６１１で、中継部５０３によって作成された各仮想装置は、中継部５０３により作成された仮想装置（群）をパーソナルネットワーク１２０内のユーザ装置１２１ａ〜１２１ｎが見つけられるように、パーソナルネットワーク１２０へＳＳＤＰ  ＮＯＴＩＦＹメッセージを送出する。これに代えて、仮想装置は、仮想装置が作成された対象のユーザ装置からのＭサーチを待ってもよく、対象のユーザ装置だけに応答する。対象のユーザ装置はまた、ＳＩＧＥ１１１からロードされた仮想装置記述に記述され、ＶＤＩ１２２は例えばディスカバリメッセージを無視して対象の装置以外の装置へエラーメッセージを返すことによって、仮想装置の可視性を対象の装置に制限するように構成されうることに留意されたい。このようにして、パーソナルネットワーク１２０のユーザは各消費装置について適切な仮想装置を探す必要がない。
【００６０】
最後に、情報処理システム１００はステップＳ６１２からステップＳ６１９の動作を実行することによって、ロー・サービスまたは合成サービスであるサービスをユーザ装置１２１ａ〜１２１ｎへ提供する。ステップＳ６１２で、中継部５０３はパーソナルネットワーク１２０内のユーザ装置１２１から要求を受信する。
【００６１】
ステップＳ６１３で、中継部５０３は要求が対応するエージェント４０４からの入来コネクションを期待するか、パーソナルネットワーク１２０の外側に存在する他のノード、例えばパーソナルネットワーク１２０内の装置へのイベント通知およびメディア要求であるかを判定する。そうであるならば、中継部５０３は入来コネクションを期待する装置へのポートマッピングを追加し、ＲＧｗ１２４の外部ＩＰアドレスおよびマッピングされたポート番号によって要求内のＵＲＬを上書きするようにＲＧｗ１２４へ要求する。ＲＧｗ１２４がＵＰｎＰ  ＩＧＤプロファイルをサポートすることが想定される。
【００６２】
ステップＳ６１４で、中継部５０３は対応するエージェント４０４へ要求をリダイレクトする。これに代えて、中継部５０３が例えば以前にキャッシュされたＳＥＣＥ１１２からの応答に基づいて、自身で要求に応答できる場合に、中継部５０３は自身で応答を作成してもよい。要求取得部４０５は中継部５０３から仮想サービスを求める要求を取得する。ステップＳ６１５で、特定部４０６はＳＤＰＬ３１３に基づいて仮想サービスで呼び出されるロー・サービスを特定する。
【００６３】
ステップＳ６１６で、処理部４０７は特定されたロー・サービスから応答を収集する。仮想サービスがロー・サービスである場合に、処理部４０７はロー・サービスを実行する。仮想サービスが合成サービスである場合に、処理部４０７はステップＳ６１５で特定されたロー・サービスを実行する。
【００６４】
ステップＳ６１６で、エージェント４０４は基本的にＵＰｎＰ装置またはＤＬＮＡ装置として動作し、通常の装置が行うのと同じ方法でＵＰｎＰアクションおよびイベント購読を扱う。しかしながら、特別な対応が必要になりうる複数のアクションが存在する。このようなアクションの代表的なものが以下に説明される。
【００６５】
特別な対応が必要になりうる代表的なＵＰｎＰは以下の通りである。提供されるサービスに依存して他のものも存在しうるだろうが、上述のユースケースを実現するために必要になりうるものに焦点をあてる。
【００６６】
第１アクションは仮想ＤＭＳ装置上のＢＲＯＷＳＥおよびＳＥＡＲＣＨである。これらのアクションが呼び出される場合に、エージェント４０４は利用可能なコンテンツリストを入手し、適切なメタデータを有するリストを返すために外部サービスへアクセスする。まず、エージェント４０４は実際のコンテンツリストを有するサービスを呼び出し、コンテンツリストを内部のコンテンツディレクトリサービス（ＣＤＳ）へ供給する。次に、エージェント４０４は結果に依存してＢＲＯＷＳＥまたはＳＥＡＲＣＨを実行し、結果のＸＭＬ（ＤＩＤＬ−Ｌｉｔｅ）文書における＜ｒｅｓ＞ノードを以下のように上書きする。要求側装置が合成サービスへ向けられうるように値（コンテンツＵＲＬ）が上書きされる必要があり、トランスコードサービス（群）が呼び出されるならば、最終的に適用されるトランスコードサービスの出力メディアタイプのものにｐｒｏｔｏｃｏｌＩｎｆｏ属性が上書きされる。最後に、エージェント４０４は修正されたメタデータとともにアクション結果を返す。
【００６７】
第２アクションは仮想ＤＭＳ装置および仮想ＤＭＲ装置の両方におけるＧｅｔＰｒｏｔｏｃｏｌＩｎｆｏである。アクションが呼び出される場合に、エージェント４０４はトランスコードサービス（群）を適用後にだけ利用可能なタイプを含むメディアタイプのリストを返す必要がある。リストは対象の装置が受け入れることができる少なくとも１つのメディアタイプを含むべきである。なぜなら、ＳＩＧＥ１１１はこれを考慮に入れてサービス集合を構成したからである。
【００６８】
ステップＳ６１７で、処理部４０７は要求された仮想サービスの応答を作成する。要求された仮想サービスがロー・サービスである場合に、処理部４０７は要求された仮想サービスの応答としてロー・サービスからの応答を採用する。要求された仮想サービスが合成サービスである場合に、処理部４０７は特定されたロー・サービスから収集された応答に基づいて合成応答を作成する。
【００６９】
ステップＳ６１８で、応答部４０８は作成された応答を中継部５０３へ応答する。ステップＳ６１９で、中継部５０３は合成応答をユーザ装置１２１へリダイレクトする。
【００７０】
これらの動作中に、ＶＤＩ１２２は以下のシャットダウン段階を実行してもよい。各仮想装置は、仮想装置が何らかの理由で破壊された場合、例えば仮想サービスが対応するロー・サービス（群）が停止した場合または仮想装置が動作するプラットフォームがシャットダウンしている場合に、パーソナルネットワーク１２０へＳＳＤＰ  ＢＹＥメッセージを送出する。
【００７１】
１つの実施形態が上述されてきたが、他の実施形態も存在しうる。外部ノードがＰＮＡＳ１１３内の必要な情報を読み出せるようにＰＮＡＳ１１３のＡＰＩが規定されているならば、ＳＩＧＥ１１１の各ユニットは別々のノードに配置されてもよい。ＳＩＧＥ１１１内の各ユニットは、パーソナルネットワーク１２０内、例えばＩＧ１２３内に配置されてもよい。パーソナルネットワーク１２０全体についての装置情報が必要ではない場合、例えばＬＡＮだけに興味がある場合に、このような配置はオプションになりうる。
【００７２】
ＶＤＩ１２２内の各ユニットは、パーソナルネットワーク１２０内の装置、例えばＰＣと十分に通信できる限り、物理的に別々に配置されてもよい。この場合に、ＶＤＩ１２２がＳＩＧＥ１１１およびＳＥＣＥ１１２と通信するための適切なインタフェースが必要になる。ＳＩＰがＶＤＩ１２２とＩＧ１２３との間のインタフェースであってもよく、ＩＧ１２３はＳＩＧＥ１１１およびＳＥＣＥ１１２との通信を仲介してもよい。
【００７３】
ＳＥＣＥ１１２内の各ユニットはＩＭＳ環境１１０内またはパーソナルネットワーク１２０内のいずれに存在してもよい。なぜなら、ＶＤＩ１１２がパーソナルネットワーク１２０とＳＥＣＥ１１２との間の通信を仲介するからである。最初の要求と最後の応答とだけがユーザのアクセスリンクを通るので、性能の観点からは、ＳＥＣＥ１１２をＩＭＳ環境１１０内の配置することが有利である。さらに、エージェント４０４が複数のユーザで共有されうるので、既に処理されたデータをキャッシュすることによって、性能が向上し、コストが低減しうる。
【００７４】
しかしながら、少数のユーザがエージェント４０４を共有する場合に、ＩＭＳ環境１１０内にＳＥＣＥ１１２を配置することによって、不十分なコスト・性能比となりうる。それだけでなく、拡張性の問題も引き起こしうる。このような場合に、ＳＥＣＥ１１２をパーソナルネットワーク内に配置することは所定の利点を有しうる。
【００７５】
ユーザ装置はインターネット１３０に含まれてもよい。ユーザ装置はプロトコルを変換せずにＳＩＧＥ１１１およびＳＥＣＥ１１２と通信できる場合に、ユーザ装置とＳＩＧＥ１１１およびＳＥＣＥ１１２とはＶＤＩ１１２なしに通信してもよい。
【００７６】
上述の実施形態は、外部のサービスプロバイダ１３１ａ〜１３１ｎからのロー・サービスがパーソナルネットワークへ配信されることが想定されてきたが、、ＰＮ‐ＰＮ間通信、すなわちパーソナルネットワークとのサービスの配信が展開されてもよい。ＰＮ‐ＰＮ間通信への本発明のこのような実施形態が以下に記される。
【００７７】
外部サービスをＰＮへ配信するのと同じ原理を用いて、本発明はＰＮへまたはＰＮからのサービスを配信できる。これだけではなく、そのように行う外部のサービスプロバイダを関与させることもできる。ＰＮ内のユーザ装置はＰＮＡＳ１１３によって取得されうるので、ＳＩＧＥ１１１もユーザ装置およびこれらの能力を取得できる。従って、サービスまたは装置合成ルールがＳＩＧＥ１１１へ入力されるならば、ＰＮ内の装置を別のＰＮ内の装置へ相互接続させることを可能にする仮想装置を作成できる。これは以下の複数の機能を可能にする。
【００７８】
リモートアクセス。この実施形態により、ユーザは自身の装置を他の装置とリモートで共有でき、例えばユーザは、自身の友人が自身のパーソナルネットワークへ接続することを要求せずに、自身の友人が自身のＤＭＳ装置へアクセスすることを可能にしてもよい。
【００７９】
能力マッチング。装置能力が一致しない場合に、ＳＰ‐ＰＮ間の場合と同じようにＰＮ‐ＰＮ間において外部のサービスプロバイダが関与されてもよく、例えばトランスコードサービスが適用されうる。これは、ＰＮ‐ＰＮ装置通信を試みる場合にユーザが能力問題に悩まされることを解放するだろう。
【００８０】
相異なるプロトコル領域のブリッジ。この実施形態は相異なるプロトコル領域をブリッジまたは相互接続するために用いられてもよく、例えばＶＤＩ１２２において適切な変換機構が実装されるならば、非ＵＰｎＰ装置を仮想ＵＰｎＰ装置として開示できる。例えばＢｌｕｅｔｏｏｔｈおよびＵＰｎＰについてのこのような機構が見つかる。非メディアサービスを制御するためにメディア消費装置の使用でさえも考慮されてもよく、ＺｉｇＢｅｅにより接続されたセンサおよびアクチュエータすなわちＤＬＮＡネットワーク内の仮想ＤＭＳのアイテムとして仮想化することによって、ＤＬＮＡネットワーク内のＤＭＰがセンサから情報を入手して仮想ＤＭＳを通じてアクチュエータを制御することが可能になる。このような仮想化はまた、合成ルールＤＢがそれを記述するルールを有する場合に行われてもよい。
【００８１】
本発明のＰＮ‐ＰＮ間通信に適用するために、サービス合成ルールおよびアクセス制御ルールがＳＩＧＥ１１１へ供給される。同様に、ＰＮＡＳ１１３のユーザ嗜好ＤＢ２０６がこのような情報を保有するために用いられてもよい。 
【００８２】
本発明に従う１つの実施形態は複数のロー・サービスを合成し、サービス集合を装置として開示する。複数のロー・サービスを合成することによって、本実施形態は限られた能力を有する装置が世界中で利用可能なより広いサービス集合にアクセスすることを可能にする。ＰＣと比較して装置に新たな機能を追加することは難しいので、ＰＣへサービスを配信する場合よりもこの利点の価値が高まる。
【００８３】
さらに、１つの実施形態の利点は関与する３つの当事者すべてに利益を提供するだろう。外部のＳＰについて、１つの実施形態はそれらが自身の能力を向上するためにコストを費やすことなく、幅広い消費者装置の集合へ自身のサービスを配信することを可能にする。事業者について、１つの実施形態は既存の外部サービスを合成することによって、自身の顧客のために価値が負荷されたサービスを合成する能力を与える。これは、事業者が自身のサービスを実装するためのコストを費やす必要がないことを意味する。これらはまた、場合によっては一部の費用、例えば管理費用およびトランスコード費用を外部のＳＰへ課金する機会を取得する。ユーザについて、１つの実施形態は、彼らがＰＣの前に座ることなく幅広い範囲のサービスへアクセスすることを可能にし、彼らがコーデックやファイル形式のような互換性問題について煩わされる必要はないだろう。
【００８４】
さらに、１つの実施形態はサービス仮想化を可能にする点でいくつかの利点を有する。仮想装置はＳＩＧＥ１１１からの対象の装置情報を参照することによって、自身のパートナー装置を対象の装置へ制限できる。この機能のおかげで、ユーザは各消費装置について適切な仮想装置を探す必要がない。エージェント４０４はサービス集合について作成され、同じサービス集合へアクセスするもので共有されてもよい。これは、性能およびコストの観点からいくつかの利点を有する。例えば、トランスコードは時間および処理能力の点で負荷の大きな動作であるので、ネットワーク側で実行し、できるだけ多くのユーザで出力を共有することが効率的である。これはまた、エネルギー消費を低減する可能性を有するだろう。
【００８５】
さらに、本発明は同じ原理を用いてＰＮを開示するため、例えばＰＮ‐ＷＡＮ間通信やＰＮ‐ＰＮ間通信に適用されうる。これは、将来、より重要になるだろうユーザに生成されたコンテンツおよび装置の共有を加速し、この場合に事業者が関与するので、これらはこれから利益を得る機会を有する。
【００８６】
本発明は例示の実施形態を参照しつつ説明されてきたが、本発明は開示された例示の実施形態に限定されないことが理解されるべきである。添付の特許請求の範囲はこのようなすべての変形ならびに均等な構造および機能を包含するように、最も広い解釈が与えられるべきである。
【図１】
0005345697.tif 000002
【図２】
0005345697.tif 000003
【図３】
0005345697.tif 000004
【図４】
0005345697.tif 000005
【図５】
0005345697.tif 000006
【図６】
0005345697.tif 000007
【図７】
0005345697.tif 000008
【図８】
0005345697.tif 000009
【図９】
0005345697.tif 000010