(57)【特許請求の範囲】
【請求項１】
アプリケーションをＮＦＣ対応デバイスにインストールする方法であって、
−ＮＦＣ対応デバイスにおいて、対象アプリケーションと関連付けられたTargetIDを含むGeneric Controlレコードを発信元デバイスから受信するステップと、
−少なくとも１つのTargetIDが、前記少なくとも１つのTargetIDと関連付けられた前記対象アプリケーションに対する少なくとも１つのインストールファイルをダウンロードできる少なくとも１つの対象ＵＲＩと関連付けられているルックアップテーブルに、前記TargetIDを入力として提供することにより、前記受信したGenericControlレコードの前記TargetIDと関連付けられた少なくとも１つの対象ＵＲＩを前記ルックアップテーブルから検索するステップと、
−前記検索した対象ＵＲＩから前記対象アプリケーションに対する少なくとも１つのインストールファイルを前記ＮＦＣ対応デバイスにダウンロードするステップと、
−前記少なくとも１つのインストールファイルを使用して前記ＮＦＣ対応デバイスに前記対象アプリケーションをインストールするステップとを有することを特徴とする方法。
【請求項２】
前記ルックアップテーブルの前記少なくとも１つのTargetIDは複数の対象ＵＲＩと関連付けられ、前記複数の対象ＵＲＩのうち少なくとも１つの対象ＵＲＩは、少なくとも１つのインストールファイルが前記対象ＵＲＩからダウンロード可能である前記対象アプリケーション及び前記少なくとも１つのインストールファイル自体の少なくともいずれかを記述するアプリケーション関連情報と関連付けられ、前記少なくとも１つの対象ＵＲＩを検索する前記ステップは、
−前記ＮＦＣ対応デバイス及び前記ＮＦＣ対応デバイスのユーザの少なくともいずれかに関するコンテキスト情報を入力として前記ルックアップテーブルに提供し、前記コンテキスト情報と前記アプリケーション関連情報との一致を判断することを可能にするステップと、
−少なくとも所定程度前記コンテキスト情報に一致することが判明したアプリケーション関連情報と関連付けられる少なくとも１つの対象ＵＲＩを前記ルックアップテーブルから検索するステップとを含む請求項１に記載の方法。
【請求項３】
前記ルックアップテーブルは、ルックアップサーバ又は前記ルックアップサーバが通信可能に接続可能であるノードに格納されたサーバ側ルックアップテーブルを含む請求項２に記載の方法。
【請求項４】
前記ＮＦＣ対応デバイス及び前記ＮＦＣ対応デバイスの前記ユーザの少なくともいずれかに関するコンテキスト情報を入力として前記ルックアップテーブルに提供する前記ステップは、
−前記ＮＦＣ対応デバイス及び前記ＮＦＣ対応デバイスの前記ユーザの少なくともいずれかに関するコンテキスト情報を前記ＮＦＣ対応デバイス内のレジスタから検索するステップと、
−前記サーバ側ルックアップテーブルに対する入力として使用されるように、前記ＮＦＣ対応デバイスから前記ルックアップサーバに前記コンテキスト情報を送出するステップとを含む請求項３に記載の方法。
【請求項５】
前記ＮＦＣ対応デバイスは、ネットワークに接続されたユーザデバイス及び前記ユーザデバイスのユーザの少なくともいずれかに関するコンテキスト情報をネットワークノードが登録する前記ネットワークに接続され、前記ＮＦＣ対応デバイス及び前記ＮＦＣ対応デバイスの前記ユーザの少なくともいずれかに関する前記コンテキスト情報を入力として前記ルックアップテーブルに提供する前記ステップは、前記サーバ側ルックアップテーブルに対する入力として使用されるように前記ネットワークノードから前記ルックアップサーバに前記コンテキスト情報を送出するステップを含む請求項３又は４に記載の方法。
【請求項６】
前記ルックアップテーブルは、前記ＮＦＣ対応デバイスに格納されたクライアント側ルックアップテーブルを更に含み、前記方法は、
−前記ＮＦＣ対応デバイスにおいて、前記サーバ側ルックアップテーブルから前記ルックアップサーバにより検索されたTargetID及びそれらと関連付けられた対象ＵＲＩを、前記ルックアップサーバから受信するステップと、
−前記受信したTargetID及びそれらの関連付けられた対象ＵＲＩを挿入することにより前記クライアント側ルックアップテーブルを更新するステップとを含む請求項３から５のいずれか１項に記載の方法。
【請求項７】
前記TargetID及びそれらの関連付けられた対象ＵＲＩを受信する前記ステップの前には、
−前記ＮＦＣ対応デバイス及び前記ＮＦＣ対応デバイスの前記ユーザの少なくともいずれかに関するコンテキスト情報を含む更新要求を、前記ＮＦＣ対応デバイスから前記ルックアップサーバに送出するステップと、
−前記コンテキスト情報を前記サーバ側ルックアップテーブルの前記アプリケーション関連情報とマッチングすることにより、前記ＮＦＣ対応デバイスへ送出されるTargetID及び対象ＵＲＩを前記ルックアップサーバにおいて選択するステップと、
−前記選択したTargetID及びそれらの関連付けられた対象ＵＲＩを前記ルックアップサーバから前記ＮＦＣ対応デバイスに送出するステップとを含む請求項６に記載の方法。
【請求項８】
ネットワークに接続されたユーザデバイスに関するコンテキスト情報をネットワークノードが登録する前記ネットワークに対して前記ＮＦＣ対応デバイスが接続される場合に、前記TargetID及びそれらの関連付けられた対象ＵＲＩを受信する前記ステップの前には、
−前記ルックアップサーバにおいて、前記ＮＦＣ対応デバイス及び前記ＮＦＣ対応デバイスの前記ユーザの少なくともいずれかに関するコンテキスト情報を前記ネットワークノードから受信するステップと、
−前記ルックアップサーバにおいて、前記コンテキスト情報を前記ルックアップテーブルの前記アプリケーション関連情報とマッチングすることにより前記ＮＦＣ対応デバイスに送出されるTargetID及び対象ＵＲＩを選択するステップと、
−前記選択したTargetID及びそれらの関連付けられた対象ＵＲＩを前記ルックアップサーバから前記ＮＦＣ対応デバイスに送出するステップとを含む請求項６又は７に記載の方法。
【請求項９】
前記受信したGeneric Controlレコードの前記TargetIDと関連付けられた前記少なくとも１つの対象ＵＲＩを検索する前記ステップは、
−最初に前記TargetIDを入力として提供することにより前記クライアント側ルックアップテーブルから前記少なくとも１つの対象ＵＲＩを検索し、前記TargetIDと関連付けられた対象ＵＲＩが前記クライアント側ルックアップテーブルに存在しない場合は、
−前記ＮＦＣ対応デバイスから前記ルックアップサーバに前記TargetIDを含むルックアップ要求を送出し、それに応答して前記ルックアップサーバから前記対象ＵＲＩを受信することにより前記サーバ側ルックアップテーブルから前記少なくとも１つの対象ＵＲＩを検索するステップを含む請求項６から８のいずれか１項に記載の方法。
【請求項１０】
−前記少なくとも１つの対象ＵＲＩと関連付けられた前記アプリケーション関連情報を前記ルックアップテーブルから検索するステップと、
−前記対象ＵＲＩをホストするダウンロードサーバから、前記対象アプリケーション及び前記少なくとも１つの対象アプリケーションインストールファイルの少なくともいずれかを記述するアプリケーション関連情報を検索するステップと、
−前記ルックアップテーブルから検索された前記アプリケーション関連情報を前記ダウンロードサーバから受信された前記アプリケーション関連情報と比較するステップとを更に含み、
前記少なくとも１つのインストールファイルをダウンロードする前記ステップは、前記ルックアップテーブルから検索された前記アプリケーション関連情報が前記ダウンロードサーバから検索された前記アプリケーション関連情報に所定程度一致する場合に実行される請求項２から９のいずれか１項に記載の方法。
【請求項１１】
−前記少なくとも１つの対象ＵＲＩと関連付けられた前記アプリケーション関連情報を前記ルックアップテーブルから検索するステップと、
−前記ＮＦＣ対応デバイスの前記ユーザが前記対象ＵＲＩから前記少なくとも１つのインストールファイルをダウンロードしたいかを判定できるように、前記ＮＦＣ対応デバイスにおいて前記ユーザに対して前記アプリケーション関連情報を表示するステップとを更に含み、
前記少なくとも１つのインストールファイルをダウンロードする前記ステップは、前記ユーザが前記少なくとも１つのインストールファイルをダウンロードしたいことを示す、ユーザによりトリガされたイベントを、前記ＮＦＣ対応デバイスにおいて検出した時に実行される請求項２から９のいずれか１項に記載の方法。
【請求項１２】
ＮＦＣ対応デバイスであり、
−対象アプリケーションと関連付けられたTargetIDを含むGeneric Controlレコードを発信元デバイスから受信するように構成されたＮＦＣ通信ユニットと、
−前記ＮＦＣ対応デバイスが接続可能であるネットワークのノードに対してデータを送受信するように構成されたネットワーク通信ユニットと、
−アプリケーションを前記ＮＦＣ対応デバイスにインストールするように構成されたアプリケーションインストーラ機能と、
−少なくとも１つのTargetIDが前記少なくとも１つのTargetIDと関連付けられた前記対象アプリケーションに対する少なくとも１つのインストールファイルをダウンロードできる少なくとも１つの対象ＵＲＩと関連付けられるルックアップテーブルから、前記TargetIDを入力として提供することにより、前記受信したGenericControlレコードの前記TargetIDと関連付けられた少なくとも１つの対象ＵＲＩを前記ルックアップテーブルから検索するように構成されたアプリケーションディスカバラ機能と、
−前記検索された対象ＵＲＩから前記対象アプリケーションに対する少なくとも１つのインストールファイルをダウンロードするように構成されたアプリケーションダウンローダ機能とを備え、
前記アプリケーションインストーラ機能は、前記少なくとも１つのダウンロードされたインストールファイルを使用して前記対象アプリケーションを前記ＮＦＣ対応デバイスにインストールするように構成されることを特徴とするＮＦＣ対応デバイス。
【請求項１３】
前記ルックアップテーブルの前記少なくとも１つのTargetIDは複数の対象ＵＲＩと関連付けられ、前記複数の対象ＵＲＩのうち少なくとも１つの対象ＵＲＩは、少なくとも１つのインストールファイルが前記対象ＵＲＩからダウンロード可能である前記対象アプリケーション及び前記少なくとも１つのインストールファイル自体の少なくともいずれかを記述するアプリケーション関連情報と関連付けられ、前記アプリケーションディスカバラ機能は、
前記ＮＦＣ対応デバイス及び前記ＮＦＣ対応デバイスのユーザの少なくともいずれかに関するコンテキスト情報を前記ＮＦＣ対応デバイス内のレジスタから検索し、
前記コンテキスト情報を入力として前記ルックアップテーブルに提供して前記コンテキスト情報と前記アプリケーション関連情報とのマッチングを判断することを可能にし、
少なくとも所定程度前記コンテキスト情報に一致することが判明したアプリケーション関連情報と関連付けられた少なくとも１つの対象ＵＲＩを前記ルックアップテーブルから検索するように構成される請求項１２に記載のＮＦＣ対応デバイス。
【請求項１４】
前記ルックアップテーブルは、ルックアップサーバ又は前記ルックアップサーバが通信可能に接続可能であるノードに格納されたサーバ側ルックアップテーブルを含み、前記アプリケーションディスカバラ機能は、前記ＮＦＣ対応デバイスから前記ルックアップサーバに前記コンテキスト情報を送出することにより前記コンテキスト情報を前記サーバ側ルックアップテーブルに入力として提供するように構成される請求項１３に記載のＮＦＣ対応デバイス。
【請求項１５】
前記ルックアップテーブルは、ルックアップサーバ又は前記ルックアップサーバが通信可能に接続可能であるノードに格納されたサーバ側ルックアップテーブル及び前記ＮＦＣ対応デバイスに格納されたクライアント側ルックアップテーブルの双方を含み、前記ＮＦＣ対応デバイスは、TargetID及びそれらと関連付けられた対象ＵＲＩを前記ルックアップサーバから受信するように構成され、前記アプリケーションディスカバラ機能は、前記受信したTargetID及びそれらの関連付けられた対象ＵＲＩを挿入することにより前記クライアント側ルックアップテーブルを更新するように構成される請求項１３に記載のＮＦＣ対応デバイス。
【請求項１６】
前記アプリケーションディスカバラ機能は、
前記ＮＦＣ対応デバイス及び前記ＮＦＣ対応デバイスの前記ユーザの少なくともいずれかに関する前記コンテキスト情報を含む更新要求を前記ルックアップサーバに送出し、前記コンテキスト情報を前記サーバ側ルックアップテーブルの前記アプリケーション関連情報とマッチングすることにより前記ルックアップサーバが前記ＮＦＣ対応デバイスへ送出されるTargetID及び対象ＵＲＩを選択できるようにし、
前記更新要求に応答してTargetID及びそれらと関連付けられた対象ＵＲＩを前記ルックアップサーバから受信し、
前記更新要求に応答して受信された前記TargetID及びそれらの関連付けられた対象ＵＲＩを挿入することにより前記クライアント側ルックアップテーブルを更新するように構成される請求項１５に記載のＮＦＣ対応デバイス。
【請求項１７】
前記アプリケーションディスカバラ機能は、最初に前記クライアント側ルックアップテーブルから前記受信したGeneric Controlレコードの前記TargetIDと関連付けられた前記少なくとも１つの対象ＵＲＩを検索し、前記受信したGeneric Controlレコードの前記TargetIDと関連付けられた対象ＵＲＩが前記クライアント側ルックアップテーブルに存在しない場合は、前記ルックアップサーバに前記TargetIDを含むルックアップ要求を送出し、それに応答して前記ルックアップサーバから前記少なくとも１つの対象ＵＲＩを受信することにより前記少なくとも１つの対象ＵＲＩを検索するように構成される請求項１５又は１６に記載のＮＦＣ対応デバイス。
【請求項１８】
前記アプリケーションディスカバラ機能は、前記少なくとも１つの対象ＵＲＩと関連付けられた前記アプリケーション関連情報を前記ルックアップテーブルから検索するように構成され、前記アプリケーションダウンローダ機能は、前記対象ＵＲＩをホストするダウンロードサーバから前記対象アプリケーション及び前記少なくとも１つの対象アプリケーションインストールファイルの少なくともいずれかを記述するアプリケーション関連情報を検索し、前記ルックアップテーブルから検索された前記アプリケーション関連情報を前記ダウンロードサーバから検索された前記アプリケーション関連情報と比較し、前記ルックアップテーブルから検索された前記アプリケーション関連情報が前記ダウンロードサーバから検索された前記アプリケーション関連情報に所定程度一致する場合に前記ダウンロードサーバから前記少なくとも１つの対象アプリケーションインストールファイルをダウンロードするように構成される請求項１３から１７のいずれか１項に記載のＮＦＣ対応デバイス。
【請求項１９】
前記アプリケーションディスカバラ機能は、前記少なくとも１つの対象ＵＲＩと関連付けられた前記アプリケーション関連情報を前記ルックアップテーブルから検索するように構成され、前記ＮＦＣ対応デバイスは、前記ＮＦＣ対応デバイスの前記ユーザが前記対象ＵＲＩから前記少なくとも１つのインストールファイルをダウンロードしたいかを判定できるように前記ユーザに対して前記アプリケーション関連情報を表示するように構成され、前記アプリケーションダウンローダ機能は、前記ユーザが前記少なくとも１つのインストールファイルをダウンロードしたいことを示すユーザによりトリガされたイベントが前記ＮＦＣ対応デバイスにおいて発生した場合に前記少なくとも１つのインストールファイルをダウンロードするように構成される請求項１３から１７のいずれか１項に記載のＮＦＣ対応デバイス。
【請求項２０】
コンピュータ可読コード手段を含むコンピュータプログラムであって、
前記コンピュータ可読コード手段は、対象アプリケーションと関連付けられたTargetIDを含むGeneric Controlレコードを発信元デバイスから受信したＮＦＣ対応デバイスにおいて実行された時に前記ＮＦＣ対応デバイスに
−少なくとも１つのTargetIDが前記少なくとも１つのTargetIDと関連付けられた前記対象アプリケーションに対する少なくとも１つのインストールファイルをダウンロードできる少なくとも１つの対象ＵＲＩと関連付けられるルックアップテーブルに、前記TargetIDを入力として提供することにより、前記受信したGenericControlレコードのTargetIDと関連付けられた少なくとも１つの対象ＵＲＩを前記ルックアップテーブルから検索させ、
−前記検索された対象ＵＲＩから前記対象アプリケーションに対する少なくとも１つのインストールファイルをダウンロードさせることを特徴とするコンピュータプログラム。
【請求項２１】
請求項２０に記載のコンピュータプログラムが格納されたコンピュータ可読媒体。
【請求項２２】
コンピュータ可読コード手段を含むコンピュータプログラムであって、
前記コンピュータ可読コード手段は、対象アプリケーションと関連付けられたTargetIDを含むルックアップ要求をＮＦＣ対応デバイスから受信したサーバコンピュータにおいて実行された場合に前記サーバコンピュータに
−少なくとも１つのTargetIDが前記少なくとも１つのTargetIDと関連付けられた前記対象アプリケーションに対する少なくとも１つのインストールファイルをダウンロードできる少なくとも１つの対象ＵＲＩと関連付けられるルックアップテーブルから、前記受信したルックアップ要求の前記TargetIDと関連付けられた少なくとも１つの対象ＵＲＩを検索させ、
−前記少なくとも１つの検索された対象ＵＲＩを前記ＮＦＣ対応デバイスに送出させることを特徴とするコンピュータプログラム。
【請求項２３】
前記ルックアップ要求は、前記ＮＦＣ対応デバイス及び前記ＮＦＣ対応デバイスのユーザの少なくともいずれかに関するコンテキスト情報を含み、前記ルックアップテーブルの前記少なくとも１つのTargetIDは複数の対象ＵＲＩと関連付けられ、前記複数の対象ＵＲＩのうち少なくとも１つの対象ＵＲＩは、少なくとも１つのインストールファイルが前記対象ＵＲＩからダウンロード可能である前記対象アプリケーション及び前記少なくとも１つのインストールファイル自体の少なくともいずれかに関するアプリケーション関連情報と関連付けられ、前記コンピュータプログラムは、前記コンテキスト情報を前記ルックアップテーブルの前記アプリケーション関連情報とマッチングすることにより前記ＮＦＣ対応デバイスに送出する対象ＵＲＩを前記サーバコンピュータに選択させるように構成される請求項２２に記載のコンピュータプログラム。
【請求項２４】
サーバノードが接続可能なネットワークのノードに対してデータを送受信するように構成されたネットワーク通信ユニットと、コンピュータプログラム構成要素を格納するコンピュータ可読媒体と、前記コンピュータプログラム構成要素を実行する処理手段とを備えたサーバノードであって、前記コンピュータ可読媒体は請求項２２又は２３に記載のコンピュータプログラムを格納することを特徴とするサーバノード。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、近距離無線通信（ＮＦＣ）の分野に関し、特に、ＮＦＣ対応デバイスにアプリケーションをインストールする方法に関する。
【背景技術】
【０００２】
近距離無線通信（ＮＦＣ）は、送信機及び／又は受信機を含むＮＦＣ通信モジュールを備えた電子デバイスが短距離で互いに通信することを可能にする高周波（ＲＦ）技術である。ＮＦＣ通信に適応された電子デバイスは、ＮＦＣ対応デバイスと呼ばれることが多い。
【０００３】
今日、ＮＦＣ技術は、主に電子デバイスへの接続、デジタルコンテンツへのアクセス、特定の構内への受付制御及び非接触トランザクションの実行を行うのに使用される。例えばＮＦＣは、ホームオフィスシステムの無線構成要素や携帯電話にヘッドセットを接続したり、ＲＦタグを埋め込まれた「スマート」ポスターを読み取ったり、ＮＦＣ対応携帯電話を使用してチケット、アクセス又は他の製品に対する支払いを行ったりするために使用される。
【０００４】
ＮＦＣフォーラムは、ＮＦＣ対応デバイス間の相互運用性及びＮＦＣアプリケーション開発のフレームワークを提供することにより、コンシューマエレクトロニクス、移動デバイス及びＰＣにおいてＮＦＣ技術を使用することを推進する団体である。ＮＦＣフォーラムは、相互運用性のためにＮＦＣデバイスアーキテクチャ及びプロトコルを規定する標準仕様を策定する。
【０００５】
ＮＦＣフォーラムは、ＮＦＣ通信を介して別のＮＦＣ対応デバイス、タグ又はカード（発信元デバイス）からＮＦＣ対応デバイス（宛先デバイス）に対してあらゆる特定の動作を要求する方法を提供するためにGeneric Control Record Type Definition（Generic Control RTD）と呼ばれるメッセージフォーマット定義を指定している。Generic Control RTDの１つの目的は、ＮＦＣアプリケーション／サービスプロバイダが非互換性の問題を引き起こし、ＮＦＣ対応デバイスの複雑さを増加するような、独自のレコード型を作成すると、種々のメッセージフォーマットに対処するように構成される必要があるため、それを回避することである。
【０００６】
Generic Controlレコードは、Targetレコード、Actionレコード及びDataレコードを含む。一般にTarget識別子と呼ばれるTargetレコードのコンテンツは、Dataレコードに含まれたデータを処理する機能又はアプリケーションを識別する。Target識別子により識別された機能／アプリケーションは、本明細書においてはTarget識別子の対象アプリケーションと呼ばれる。Actionレコードのコンテンツは、Dataレコードのデータに適用される所望の動作を対象アプリケーションに対して指定する。従って、Generic Controlレコードが宛先デバイスにより受信された場合、宛先デバイスは受信したGeneric ControlレコードのTarget識別子の対象アプリケーションを開始する。
【０００７】
Generic Control RTDは、宛先デバイスが受信したGeneric ControlレコードのTarget識別子の対象アプリケーションを識別できること及び対象アプリケーションが宛先デバイスにインストールされることを仮定する。仕様によると、宛先デバイスが要求された対象アプリケーションを識別できないか又は見つけられない場合、デバイスはGeneric Controlレコードを単純に無視することになる。
【０００８】
実際には、これにより、ＮＦＣ対応デバイスが他のＮＦＣ対応デバイスと通信できないか又はGeneric Controlレコードを受信するタグ又はカードを解釈できないため大きな問題が生じ得るだろう。これらの問題により、エンドユーザが必要なアプリケーション又は特定のＮＦＣサービスを使用するのに必要なアプリケーションの取得方法を知らないために利用可能なＮＦＣサービスの恩恵を受けられない可能性があるため、ＮＦＣ技術の採用が遅れるか又は採用されないこともあるだろう。更にこの仕様の制約により、新しいサービスを使用するのに必要なアプリケーションを全ての潜在的なエンドユーザに配信することが困難であるため、ＮＦＣサービスプロバイダにとって問題が生じる。従って、ＮＦＣサービスプロバイダは新しいＮＦＣサービスを市場に出す際に問題を経験し、ＮＦＣ技術の採用を更に遅らせる。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明は、ＮＦＣ対応デバイスの機能性をいかにして向上するかという課題に対処する。
【課題を解決するための手段】
【００１０】
本発明は、ＮＦＣ対応携帯電話等のＮＦＣ対応デバイスにアプリケーションをインストールする方法に関する。方法は、
−ＮＦＣ対応デバイスにおいて、対象アプリケーションと関連付けられたTarget識別子（TargetID）を含むGeneric Controlレコードを発信元デバイスから受信するステップと、
−少なくとも１つのTargetIDが少なくとも１つのTargetIDと関連付けられた対象アプリケーションに対する少なくとも１つのインストールファイルをダウンロードできる少なくとも１つの対象ＵＲＩ、例えばＵＲＬ、と関連付けられるルックアップテーブルに、このTargetIDを入力として提供することにより、受信したGeneric ControlレコードのTargetIDと関連付けられた少なくとも１つの対象ＵＲＩをそのルックアップテーブルから検索するステップと、
−検索した対象ＵＲＩから対象アプリケーションに対する少なくとも１つのインストールファイルをＮＦＣ対応デバイスにダウンロードするステップと、
−少なくとも１つのインストールファイルを使用してＮＦＣ対応デバイスに対象アプリケーションをインストールするステップとを有する。
【００１１】
方法は、ＮＦＣ対応デバイス（宛先デバイス）がタグ、カード又は別のＮＦＣ対応デバイス等の発信元デバイスからGeneric Controlレコードを受信した時に必要とされる対象アプリケーションをＮＦＣ対応デバイスにインストールすることを可能にする。未知のアプリケーション又は機能性を対象とするGeneric Controlレコードを単に無視するのではなく、Generic Controlレコードのデータを処理するためにＮＦＣ対応デバイスにより必要とされるアプリケーション／機能性が検索され、デバイスにインストールされる。従って、ユーザは、必要とされるアプリケーション又はそれをインストールする方法を知らなくても、特定のＮＦＣサービスを使用するのに必要とされるアプリケーションを取得できる。
【００１２】
方法により、エンドユーザはエンドユーザのＮＦＣ対応デバイスが発信元デバイスから受信したデータを理解できないことを体験する回数が少なくとも減少するため、ユーザが知覚するＮＦＣサービスの品質が向上される。更に、方法により、新しいＮＦＣサービスを使用するのに必要なアプリケーションを配信する問題が解決されるか又は少なくとも軽減されるため、新しいＮＦＣサービスの開発は促進される。エンドユーザが新しいサービスの恩恵を受けるために発信元デバイスの近傍に自身のＮＦＣ対応デバイスを持っていった場合、サービスプロバイダがサービスを使用するのに必要なアプリケーションをＮＦＣ対応デバイスに能動的に配信する必要なく、そのアプリケーションはＮＦＣ対応デバイスに自動的に又はほぼ自動的にインストールされる。新しいＮＦＣサービスを市場に導入する時にサービスプロバイダにより要求されることは、サービスで使用される発信元デバイスが特定のTargetIDを含むGeneric Controlレコードを送信し、新しいサービスを使用するのに必要なアプリケーションに対する１つ以上のインストールファイルをダウンロードできる対象ＵＲＩと共にそのTargetIDをルックアップテーブルに登録するように構成されることを確認することである。
【００１３】
本発明の１つの態様によると、ルックアップテーブルの少なくとも１つのTargetIDは複数の対象ＵＲＩと関連付けられ、複数の対象ＵＲＩのうち少なくとも１つの対象ＵＲＩは、少なくとも１つのインストールファイルが対象ＵＲＩからダウンロード可能である対象アプリケーション及び／又は少なくとも１つのインストールファイル自体を記述するアプリケーション関連情報と関連付けられる。この場合、少なくとも１つの対象ＵＲＩを検索するステップは：
−ＮＦＣ対応デバイス及び／又はＮＦＣ対応デバイスのユーザに関するコンテキスト情報を入力としてルックアップテーブルに提供し、コンテキスト情報とアプリケーション関連情報とのマッチング判断を行なうことを可能にするステップと、
−少なくとも所定程度コンテキスト情報に一致することが判明したアプリケーション関連情報と関連付けられる少なくとも１つの対象ＵＲＩをルックアップテーブルから検索するステップとを含むのが有利である。
【００１４】
同一のTargetIDと関連付けられた対象アプリケーション又は対象アプリケーションバージョンがいくつか存在する場合、この特徴により、最適なアプリケーション又はアプリケーションバージョンがＮＦＣ対応デバイス及び／又はＮＦＣ対応デバイスのユーザに関するコンテキスト情報に基づいてＮＦＣ対応デバイスにインストールされる。例えばコンテキスト情報は、スウェーデン語がユーザの好ましい言語であることを示す情報を含んでもよく、この情報は、ＮＦＣ対応デバイスにより例えば事前に設定されたユーザ設定から検索される。受信したGeneric ControlレコードのTargetIDと関連付けられた対象ＵＲＩのうちいずれかのアプリケーション関連情報が、対象ＵＲＩからダウンロード可能な対象アプリケーション／対象アプリケーションバージョンがスウェーデン語をサポートすることを示す場合、特定の対象アプリケーション／対象アプリケーションバージョンをダウンロードできる対象ＵＲＩがルックアップテーブルから検索される。
【００１５】
本発明の１つの態様によると、ルックアップテーブルは、本明細書では、ルックアップサーバと呼ばれるネットワークノード又はルックアップサーバが通信可能に接続される別のネットワークノード、に格納されたサーバ側ルックアップテーブルを含む。この場合、ＮＦＣ対応デバイスにより受信されたGeneric ControlレコードのTargetIDは、ＮＦＣ対応デバイスからルックアップサーバにTargetIDを含むルックアップ要求を送信することにより、入力としてルックアップサーバに提供される。更に、ＮＦＣ対応デバイス及び／又はＮＦＣ対応デバイスのユーザに関するコンテキスト情報を入力としてルックアップテーブルに提供するステップは、この場合、ＮＦＣ対応デバイス内の内部レジスタからコンテキスト情報を検索するステップと、そのコンテキスト情報を別個の送信で又はルックアップ要求に含んでＮＦＣ対応デバイスからルックアップサーバに送出するステップとを含むことができる。
【００１６】
しかし、ルックアップサーバ又はルックアップサーバが通信可能に接続される別のネットワークノードにルックアップテーブルが常駐する場合、ＮＦＣ対応デバイス及び／又はＮＦＣ対応デバイスのユーザに関するコンテキスト情報とルックアップテーブルのアプリケーション関連情報とのマッチング判断をすることを可能にする他の方法が存在する。例えばネットワークに接続されたユーザデバイス及び／又はそれらユーザデバイスのユーザに関するコンテキスト情報をネットワークノードが登録するようなネットワークに対してＮＦＣ対応デバイスが接続される場合、コンテキスト情報をサーバ側ルックアップテーブルに入力として提供するステップは、このネットワークノードからルックアップサーバにコンテキスト情報を送出することにより実行される。ユーザデバイス及び／又はそれらのユーザに関するコンテキスト情報を登録するように構成されたそのようなネットワークノードは、以下においてコンテキストブローカノードと呼ばれる。
【００１７】
本発明の別の態様によると、ルックアップテーブルは、上述したようなサーバ側ルックアップテーブルと、ＮＦＣ対応デバイスに格納されたローカルのクライアント側ルックアップテーブルとの双方を含み、この場合、未知のTargetIDの対象ＵＲＩはクライアント側ルックアップテーブルからＮＦＣ対応デバイスにより検索される。これは、ＮＦＣ対応デバイスがルックアップ要求をルックアップサーバに送出することによって必要な対象アプリケーションをダウンロードできるＵＲＩを外部で調査する必要がなく、それによりユーザデバイスからルックアップサーバへのアプリンクの帯域幅が節約されるという利点を有する。
【００１８】
クライアント側ルックアップテーブルは、ＮＦＣ対応デバイスにおいてルックアップサーバから受信された、TargetID及びそれらと関連付けられた対象ＵＲＩ、を挿入することにより更新されるのが好ましい。TargetID及び対象ＵＲＩは、サーバ側ルックアップテーブルからルックアップサーバにより検索されたものである。また、サーバ側ルックアップテーブルの各対象ＵＲＩと関連付けられたアプリケーション関連情報は、TargetID／対象ＵＲＩの対と共にクライアント側ルックアップテーブルに挿入されるようにルックアップサーバからＮＦＣ対応デバイスに送出されるのが好ましい。
【００１９】
クライアント側ルックアップテーブルの更新は、更新要求をルックアップサーバに送出することによりＮＦＣ対応デバイス自体により開始される。ＮＦＣ対応デバイス及び／又はＮＦＣ対応デバイスのユーザに関するコンテキスト情報は、ルックアップサーバがそのコンテキスト情報をサーバ側ルックアップテーブルの各対象ＵＲＩと関連付けられたアプリケーション関連情報とマッチングすることによりＮＦＣ対応デバイスに返す情報を判定できるようにするために更新要求に含まれるのが好ましい。
【００２０】
しかし、クライアント側ルックアップテーブルの更新は、TargetID／対象ＵＲＩの対及び好ましくはそれらの対の対象ＵＲＩと関連付けられた追加のアプリケーション関連情報をルックアップサーバから宛先デバイスにプッシュすることにより実行される。上述したように、ルックアップサーバは、ＮＦＣ対応デバイスが接続されるネットワーク中のコンテキストブローカノード又はネットワークに接続可能なコンテキストブローカノードに通信可能に接続されてもよい。この場合、上述したように、ルックアップサーバがコンテキスト情報とアプリケーション関連情報とのマッチングを判断することによりＮＦＣ対応デバイスにプッシュする情報を判定するようにするために、ＮＦＣ対応デバイスに関するコンテキスト情報はルックアップサーバによりコンテキストブローカノードから受信される。
【００２１】
ＮＦＣ対応デバイスがルックアップサーバから受信された情報により更新されるクライアント側ルックアップテーブルを含む場合、ルックアップサーバは、格納されるTargetID／対象ＵＲＩの対を認識するためにクライアント側ルックアップテーブルのコピーを格納するように構成されるのが好ましい。これは、ルックアップサーバがクライアント側ルックアップテーブルに既に格納されているTargetID／対象ＵＲＩの対を宛先デバイスに繰り返し送信しないようにするために有用である。
【００２２】
更に、ＮＦＣ対応デバイスがローカルのクライアント側ルックアップテーブルを含むか否かに関わらず、ルックアップサーバは、対象ＵＲＬを送信できる各ＮＦＣ対応デバイスに対するユーザプロファイルを格納するように構成される。そのようなユーザプロファイルは、ＮＦＣ対応デバイスに格納されたローカルのクライアント側ルックアップテーブルのコピー、ＮＦＣ対応デバイスに現在インストールされているアプリケーションに関する情報、並びにＮＦＣ対応デバイス及び／又はＮＦＣ対応デバイスのユーザに関するコンテキスト情報を含み得る。上述したように、コンテキスト情報は、ＮＦＣ対応デバイス自体又はコンテキストブローカノードからルックアップサーバにより検索される。ユーザプロファイルは、特定のＮＦＣ対応デバイスに送出されるべき対象ＵＲＩを選択する時にルックアップサーバにより使用される。
【００２３】
本発明は、対象アプリケーションと関連付けられたTargetIDを含むGeneric Controlレコードを発信元デバイスから受信するように構成されたＮＦＣ通信ユニットを備えるＮＦＣ対応携帯電話等のＮＦＣ対応デバイスに関する。ＮＦＣ対応デバイスは、デバイスが接続可能であるネットワークのノードに対してデータを送受信するように構成されたネットワーク通信モジュールと、アプリケーションをデバイスにインストールするように構成されたアプリケーションインストーラ機能とを更に備える。ＮＦＣ対応デバイスは、
−少なくとも１つのTargetIDが少なくとも１つのTargetIDと関連付けられた対象アプリケーションに対する少なくとも１つのインストールファイルをダウンロードできる少なくとも１つの対象ＵＲＩ、例えばＵＲＬ、と関連付けられるルックアップテーブルに、TargetIDを入力として提供することにより、受信したGeneric ControlレコードのTargetIDと関連付けられた少なくとも１つの対象ＵＲＩをそのルックアップテーブルから検索するように構成されたアプリケーションディスカバラ機能と、
−検索された対象ＵＲＩから対象アプリケーションに対する少なくとも１つのインストールファイルをダウンロードするように構成されたアプリケーションダウンローダ機能とを更に備え、
アプリケーションインストーラ機能が少なくとも１つのダウンロードされたインストールファイルを使用して対象アプリケーションをＮＦＣ対応デバイスにインストールするように構成されることを特徴とする。
【００２４】
従って、ＮＦＣ対応デバイスは、アプリケーションがデバイスにまだインストールされていない場合に受信したGeneric Controlレコードのデータを処理するのに必要なアプリケーションを検索し且つインストールできる。
【００２５】
更に本発明は、ＮＦＣ対応デバイスに対するコンピュータプログラムに関する。このコンピュータプログラムは、対象アプリケーションと関連付けられたTargetIDを含むGeneric Controlレコードを発信元デバイスから受信したＮＦＣ対応デバイスにおいて実行された場合にＮＦＣ対応デバイスに以下の動作を実行させるコンピュータ可読コード手段を含む。
−少なくとも１つのTargetIDが少なくとも１つのTargetIDと関連付けられた対象アプリケーションに対する少なくとも１つのインストールファイルをダウンロードできる少なくとも１つの対象ＵＲＩと関連付けられるルックアップテーブルに、Targetを入力として提供することにより、受信したGeneric ControlレコードのTargetIDと関連付けられた少なくとも１つの対象ＵＲＩをそのルックアップテーブルから検索し、
−検索された対象ＵＲＩから対象アプリケーションに対する少なくとも１つのインストールファイルをダウンロードする。
【００２６】
更に本発明は、上述したＮＦＣ対応デバイスに対するコンピュータプログラム及びコンピュータプログラムが格納されるコンピュータ可読媒体を含むコンピュータプログラム製品に関する。
【００２７】
また、本発明は、本明細書ではルックアップサーバと呼ばれるサーバノードに対するコンピュータプログラムに関する。このコンピュータプログラムは、対象アプリケーションと関連付けられたTargetIDを含むルックアップ要求をＮＦＣ対応デバイスから受信したサーバコンピュータにおいて実行された場合に、サーバコンピュータが、
−少なくとも１つのTargetIDが少なくとも１つのTargetIDと関連付けられた対象アプリケーションに対する少なくとも１つのインストールファイルをダウンロードできる少なくとも１つの対象ＵＲＩと関連付けられるルックアップテーブルから、受信したルックアップ要求のTargetIDと関連付けられた少なくとも１つの対象ＵＲＩを検索し、
−少なくとも１つの検索された対象ＵＲＩをＮＦＣ対応デバイスに送出するようにするコンピュータ可読コード手段を含む。
【００２８】
更に本発明は、サーバノードが接続可能なネットワークのノードに対してデータを送受信するように構成されたネットワーク通信ユニットを備えるサーバノードに関する。サーバノードは、コンピュータプログラム構成要素を格納するコンピュータ可読媒体と、コンピュータプログラム構成要素を実行する処理手段とを更に備える。サーバノードは、コンピュータ可読媒体が上述したルックアップサーバコンピュータプログラムを格納し、それによりサーバノードをルックアップサーバにすることを特徴とする。
【００２９】
本発明に係る方法、装置及びコンピュータプログラムの更に有利な特徴については、以下の詳細な説明及び添付の請求の範囲において説明する。
【図面の簡単な説明】
【００３０】
本発明の目的、利点及び効果、並びに特徴については、添付の図面と共に以下の本発明の例示的な実施形態の詳細な説明を読むことにより更に容易に理解されるだろう。
【図１Ａ】図１Ａは、Generic Control Record Type Definition（Generic Control RTD）において近距離無線通信（ＮＦＣ）フォーラムにより規定されるようなGeneric Controlレコードの構造を示す図である。
【図１Ｂ】図１Ｂは、ＮＦＣフォーラムにより規定されるような従来技術に従うＲＨＡ（Record Handling Architecture）を示す図である。
【図２】図２は、本発明の例示的な一実施形態に係る拡張ＲＨＡを示す図である。
【図３】図３は、例示的な一実施形態に従って本発明を実現するシステムを示す図である。
【図４】図４は、本発明の例示的な一実施形態に従って図３に示したシステムの種々のシステム構成要素が通信するように構成される方法を示す信号方式を示す図である。
【図５】図５は、別の例示的な実施形態に従って本発明を実現するシステムを示す図である。
【図６】図６は、例示的な一実施形態に従って図５に示したシステムの種々のシステム構成要素が通信するように構成される方法を示す信号方式を示す図である。
【図７】図７は、本発明に係る方法の例示的な一実施形態を示すフローチャートである。
【発明を実施するための形態】
【００３１】
図１Ａは、Generic Control  RTDにおいてＮＦＣフォーラムにより規定されるようなGeneric Controlレコード１の構造を示す。
【００３２】
Generic Controlレコードは、ＮＤＥＦ（ＮＦＣデータ交換フォーマット）メッセージの一例である。Generic Controlレコードペイロードのコンテンツは、構成バイト、並びにTargetレコード、Actionレコード及びDataレコードの型のいくつかのＮＦＥＦサブレコードから構成される。その結果、Generic Controlレコード１は以下の構成要素を含む。
−残りのペイロードを処理する方法を判定するのを助長するためにいくつかのプロファイルを指定するための構成バイト。
−Generic Controlレコード１に含まれたデータを処理するアプリケーション又は機能を識別するためのTargetレコード３。データを処理するアプリケーション又は機能は、一般にTarget識別子４と呼ばれるTargetレコード３のパラメータにより規定される。このパラメータは、本明細書においてはTargetID４と呼ばれ、TargetID４により識別されるアプリケーション／機能は、そのTargetIDの対象アプリケーションと呼ばれる。
−対象アプリケーションによりデータに適用される所望の動作を指定するためのActionレコード５。
−対象アプリケーションにより処理されるデータを指定するためのDataレコード７。
【００３３】
図１Ｂは、ＮＦＣフォーラムにより規定されるような従来技術に従うＲＨＡ（Record Handling Architecture）９を示す。ＲＨＡ９は、宛先デバイスにより実現されるべきであり、Generic Controlレコード１においてTargetID４により示された適切な対象アプリケーションを開始するために使用される。レコード型がＮＤＥＦパーサ（NDEF Parser）により識別されると、レコードデータはレコードディスパッチャ（Record Dispatcher）に転送され、レコードディスパッチャはレコードを処理するハンドラを判定する。データと対応するアプリケーション（又は機能）との間の関連付けがハンドラにより解決された後、アプリケーションランチャ１１は関連付けられたアプリケーションを開始し、必要に応じてDataレコード７のデータをアプリケーションに配信する。データレコードを処理すべきハンドラはレコード型に依存する。ＭＩＭＥ（多目的インターネットメール拡張）ハンドラはＭＩＭＥ型レコードに対して使用され、RTDハンドラ１３はＮＦＣフォーラムグローバル型レコードに対して使用される。
【００３４】
図２は、本発明に係る「Extended Record Handling Architecture」（Ｅ−ＲＨＡ）１５を示す。Ｅ−ＲＨＡ１５は、アプリケーションディスカバラ（Application Discoverer）機能１７及びアプリケーションダウンローダ（Application Downloader）機能１９を含む。これらの機能１７、１９はルックアップサービスを提供し、それにより、受信したGeneric Controlレコード１のTargetID４の対象アプリケーションが宛先デバイスにインストールされていない場合に宛先デバイスはそれを見つけてダウンロードできる。Ｅ−ＲＨＡ１５はバックエンド解決サービスを提供し、それにより、宛先デバイスは、以前では宛先デバイスにより解釈不可能であるとみなされ、無視されたGeneric Controlレコード１で受信されたデータを処理するのに必要な機能性を検索できる。
【００３５】
RTDハンドラ１３は、受信したGeneric Controlレコード１のTargetID４により示された対象アプリケーションを見つけられない場合、アプリケーションディスカバラ１７を開始する。適切な対象アプリケーションを見つけるために、アプリケーションディスカバラ１７は、アプリケーションのレジスタを保持し且つアプリケーションがＵＲＬ（ユニフォームリソースロケータ）等のＵＲＩ（統一資源識別子）及びTargetID４を関連付けて格納することによりホストされる１つ又はいくつかのルックアップテーブルを使用する。TargetIDと関連付けられた各ＵＲＩから、TargetID４の対象アプリケーションの１つ又はいくつかのインストールファイルがダウンロードされる。そのようなルックアップテーブルにおけるTargetID４と関連付けられ且つTargetID４の対象アプリケーションに対する１つ又はいくつかのインストールファイルをホストしているとされるＵＲＩは、以下においてTargetIDの対象ＵＲＩと呼ばれる。受信したGeneric ControlレコードのTargetID４の対象ＵＲＩがアプリケーションディスカバラ１７によりルックアップテーブルから検索されると、アプリケーションダウンローダ１９は検索した対象ＵＲＩから対象アプリケーションインストールファイルをダウンロードする。対象アプリケーションは、宛先デバイスにおいて利用可能ないずれかのネイティブデバイスインストールプログラムを更に使用してインストールされ且つアプリケーションランチャ１１により開始される。
【００３６】
図３は、本発明の一実施形態に従ってＮＦＣ対応デバイスが受信したGeneric Controlレコード１のTargetID４のまだインストールされていない対象アプリケーションをインストールできるようにする提案されたルックアップサービスを実現するための例示的なシステム２１Ａを示す。
【００３７】
図３において、システム２１Ａは、この例示的な例においてはＮＦＣタグである発信元デバイス２３を含むと考えられる。発信元デバイス２３は、たとえば携帯電話、パーソナルデジタルアシスタント（ＰＤＡ）又はＮＦＣをサポートする高周波（ＲＦ）回路網を備えた従来のコンピュータ等のＮＦＣ対応デバイス又はＮＦＣカードである。
【００３８】
システム２１Ａは、以下の説明において宛先デバイスと呼ばれるＮＦＣ対応携帯電話の形態でＮＦＣ対応デバイス２５を更に含む。しかし、宛先デバイスは、上述のいずれの種類のＮＦＣ対応デバイスであってもよい。宛先デバイスは、ＮＦＣフォーラム標準（ＩＳＯ１８０９２、ＩＳＯ１４４４３Ａ及び／又は１４４４３Ｂ）に従って他のＮＦＣデバイスとの通信をサポートするＮＦＣ通信ユニット２６を含む。ＮＦＣ通信ユニット２６は、宛先デバイスが近傍のＮＦＣデバイスからGeneric Controlレコード１を受信することのみを可能にするＮＦＣ受信機ユニットであってもよく、あるいは、宛先デバイスが近傍のＮＦＣデバイスに対してGeneric Controlレコード１を送受信することを可能にするＮＦＣ送受信機であってもよい。
【００３９】
宛先デバイスは、通信ユニット２７Ａを更に含み、通信ユニット２７Ａは、データの有線送信及び／又は受信、あるいは無線送信及び／又は受信をするように構成されたいかなる通信手段を含んでもよい。例えばネットワーク通信ユニット２７Ａは、有線又は無線（例えば、ＩＥＥＥ８０２．１１ｘ）Ｅｔｈｅｒｎｅｔ（登録商標）接続を介するインターネットへの接続をサポートするＥｔｈｅｒｎｅｔモジュール、Ｂｌｕｅｔｏｏｔｈ送受信機モジュール、赤外線送受信機モジュール、ＧＰＳ（全地球測位システム）受信機等を含むことができる。宛先デバイスがＮＦＣ対応携帯電話であるこの例示的な例において、ネットワーク通信ユニット２７Ａは、ＧＳＭ（汎ヨーロッパデジタル移動通信システム）、ＷｉＭａｘ（Worldwide Interoperability for Microwave Access）、ＵＭＴＳ（ユニバーサル移動通信システム）又はＬＴＥ／ＳＡＥ（Long Term Evolution/System Architecture Evolution）ネットワーク等の移動通信ネットワークと通信するＲＦ（高周波）回路網を更に含む。この場合、宛先デバイスは移動通信ネットワークを介してもインターネットにアクセスできる。
【００４０】
宛先デバイスは、コンピュータプログラム構成要素の形態で図２に示したＥ−ＲＨＡ１５のアプリケーション／機能を格納するコンピュータ可読媒体２８を更に含む。これらのコンピュータプログラム構成要素の一部、すなわちRTDハンドラ１３、アプリケーションランチャ１１、アプリケーションディスカバラ１７及びアプリケーションダウンローダ１９は、コンピュータ可読媒体２８の一部を図示する破線の矩形で示される。また、ネイティブデバイスインストールプログラム、或いは、アプリケーションダウンローダ１９によりダウンロードされた対象アプリケーションをインストールするように特に開発されたアプリケーションインストーラ機能とすることができるアプリケーションインストーラ機能２９を表すコンピュータプログラム構成要素２９が、コンピュータ可読媒体２８に格納されている様子が示されている。
【００４１】
コンピュータ可読媒体２８は、宛先デバイス及び／又は宛先デバイスのユーザに関するコンテキスト情報３２のレジスタ３０Ａを更に格納する。以下に更に詳細に説明するように、アプリケーションディスカバラ１７により使用されたルックアップテーブルが受信したGeneric Controlレコード１のTargetID４と関連付けられた２つ以上の対象ＵＲＩを格納する場合、この情報３２は、ルックアップテーブルから最適な対象アプリケーションのインストールファイルをホストする対象ＵＲＩを検索するために使用される。宛先デバイスにおいて利用可能であるか又は宛先デバイスにより取得可能である宛先デバイス及び／又は宛先デバイスのユーザに関するあらゆる情報がこの目的のために使用可能である。この例示的な実施形態において、レジスタ３０Ａのコンテキスト情報３２は、宛先デバイスの現在地を示す位置情報、宛先デバイスのユーザの好ましい言語及び宛先デバイスの空き（利用可能な）記憶空間を含む。位置情報は、通信ユニット２７Ａに含まれたＧＰＳ受信機から取得されたＧＰＳ座標であってもよいが、携帯電話が現在接続されている１つ以上のＲＢＳ（無線基地局）の１つ以上のセルＩＤであってもよい。従来技術においては既知であるように、そのようなセルＩＤは、携帯電話の地理的位置を示す位置情報に変換可能である。宛先デバイスのユーザの好ましい言語は、一般に宛先デバイスを設定する時にユーザにより設定されるが、デバイスにインストールされたアプリケーションの言語設定、デバイスに格納された連絡先リストの住所等に基づいて宛先デバイスにより「推測」されてもよい。現在利用可能な記憶空間及び他のデバイス別情報は、メモリ管理機能等の種々のネイティブデバイス管理機能から取得されてもよい。共通のレジスタ３０Ａに格納されるものとして図示されているが、宛先デバイス及び／又は宛先デバイスのユーザに関するコンテキスト情報３２は宛先デバイスの種々のアプリケーション及び／又は種々のデバイス管理機能により提供されてもよく、従ってレジスタ３０Ａは宛先デバイス内の種々のアプリケーション／機能により管理される別個のレジスタを含む「分散レジスタ」であってもよいことが理解されるべきである。従って、本明細書において宛先デバイス及び／又は宛先デバイスのユーザに関するコンテキスト情報３２がレジスタ３０Ａから検索されることを述べる場合、この検索は全ての利用可能なコンテキスト情報を格納する単一のレジスタから情報を検索することに限定されず、宛先デバイスのＧＰＳ受信機、宛先デバイスのメモリ管理機能、宛先デバイスの連絡先リスト又は他のあらゆるアプリケーション／機能からコンテキスト情報を直接検索することにより検索が行われてもよいことが理解されるべきである。
【００４２】
コンピュータ可読媒体２８は、ＲＯＭ（読み出し専用メモリ）又はフラッシュメモリ等の従来技術において既知のいかなるデジタル記憶媒体であってもよい。宛先デバイスは、コンピュータ可読媒体２８に格納されたコンピュータプログラム構成要素１１、１３、１７、１９、２９を実行するためのマイクロプロセッサ等の処理手段３１を更に含む。宛先デバイスは、この場合は宛先デバイス１９のユーザが対話することを可能にするグラフィカルユーザインタフェース（ＧＵＩ）であるユーザインタフェース３３を更に含む。
【００４３】
システム２１Ａは、ルックアップサーバ３５を更に含み、ルックアップサーバ３５は、ルックアップサーバ３５が接続されたネットワークの宛先デバイス及び他のノードと通信することを可能にする通信手段を含むネットワーク通信ユニット２７Ｂを備える。一般に通信ユニット２７Ｂは、有線又は無線Ｅｔｈｅｒｎｅｔ接続を介するインターネットへの接続をサポートするＥｔｈｅｒｎｅｔモジュールを含む。ルックアップサーバ３５は、コンピュータプログラム構成要素の形態でルックアップ機能３９Ａを格納する従来のハードディスクドライブ等のコンピュータ可読媒体３７を更に含む。ルックアップサーバ３５は、ルックアップ機能３９Ａを実行するためのマイクロプロセッサ等の処理手段４１を更に含む。
【００４４】
宛先デバイスがTargetID４を含むGeneric Controlレコード１を発信元デバイス２３から受信した場合、RTDハンドラ１３は宛先デバイスにおいて利用可能な（インストールされる）アプリケーションの中からTargetID４の対象アプリケーションを探索する。RTDハンドラが対象アプリケーションを見つけられない場合又はRTDハンドラがTargetID４に基づいて対象アプリケーションを識別できない場合、RTDハンドラはアプリケーションディスカバラ１７を開始する。アプリケーションディスカバラ１７は、好適なネットワーク接続を使用してルックアップサーバ３５に接続し、受信したGeneric Controlレコード１のTargetID４と関連付けられたアプリケーションに関してルックアップサーバ３５に問い合わせる。本実施形態において、これは、例えばTargetID４を引数として有する単純なＨＴＴＰ  ＧＥＴ又はＰＯＳＴ要求を使用してルックアップサーバ３５のルックアップ機能３９Ａを呼び出すことによりアプリケーションディスカバラ１７により達成される。宛先デバイスからルックアップサーバ３５に送出された要求は、以下においてルックアップ要求と呼ばれる。更にルックアップ要求は、宛先デバイス及び／又は宛先デバイスのユーザに関するコンテキスト情報３２を含んでもよい。以下に説明するように、ルックアップ機能３９Ａがルックアップ要求のTargetID４の対象ＵＲＩを２つ以上見つけた場合、コンテキスト情報３２は、最適な対象アプリケーション又は対象アプリケーションバージョンのインストールファイルをホストする対象ＵＲＩを宛先デバイスに返すためにルックアップ機能３９Ａにより使用される。
【００４５】
ルックアップサーバ３５は、ＳＱＬデータベーステーブル等のルックアップテーブル４５Ａをコンピュータ可読媒体４４に格納する少なくとも１つのアプリケーションデータベースサーバ４３に通信可能に接続され、ＮＦＣ対応デバイス用の種々のアプリケーションをダウンロードできる場所を常時監視する。ルックアップテーブル４５Ａは、対象ＵＲＩと関連付けられたTargetID４の対象アプリケーションに対するインストールファイルをダウンロードできる種々の対象ＵＲＩ（「Target  ａｐｐ  ＵＲＬ」）と関連付けられた種々のTargetID４（「TargetID」）を格納する。
【００４６】
以下においてルックアップテーブル４５Ａの対象ＵＲＩがＵＲＬであると仮定されるが、対象ＵＲＩは、宛先デバイスが特定のTargetID４の対象アプリケーションを見つけ且つダウンロードできる場所を指し示すいかなる種類のリソースロケータ識別子であってもよいことが理解されるべきである。例えば対象ＵＲＩは、ＨＴＴＰアドレス、ＦＴＰアドレス及び／又はＳＩＰ（セッション開始プロトコル）ＵＲＩであってもよい。
【００４７】
ルックアップテーブル４５Ａの各TargetID４は、少なくとも１つの対象ＵＲＬと関連付けられるのが好ましいが必須ではない。ルックアップテーブル４５Ａは、対象ＵＲＬからダウンロード可能な対象アプリケーション／対象アプリケーションバージョン及び／又は対象アプリケーションインストールファイルを記述する情報（「Ａｐｐ  ｉｎｆｏ」）と各対象ＵＲＬとを更に関連付けてもよい。対象アプリケーションを記述するそのような情報は、以下においてアプリケーション関連情報と呼ばれる。例えばアプリケーション関連情報は、アプリケーション名、アプリケーションが対象とするオペレーティングシステムに関する情報、アプリケーションが使用／サポートする言語、アプリケーションが対象とする地理的場所、アプリケーションが必要とする記憶空間、アプリケーションが証明書により署名されたか否か、対象アプリケーションの発売元及び／又は開発者の名前、アプリケーションのフリーテキスト記述、対象アプリケーションインストールファイルのファイルサイズ、対象アプリケーションインストールファイルのファイルタイプ等を含んでもよい。
【００４８】
ルックアップテーブル４５Ａは、例示的な本実施形態においてアプリケーションデータベースサーバ４３の形態の別個のサーバノードに格納されるが、ルックアップサーバ３５自体にローカルに格納されてもよく、あるいはルックアップサーバ３５が接続される複数のデータベースサーバ間で分散されてもよいことは言うまでもない。更にアプリケーションデータベースサーバ４３は、ルックアップサーバ３５と同一の物理サーバに常駐するＶＤＳ（仮想専用サーバ）であってもよい。
【００４９】
ルックアップ機能３９Ａは、宛先デバイスのアプリケーションディスカバラ１７からTargetID４を含むルックアップ要求を受信した場合、アプリケーションデータベースサーバ４３にデータベースクエリを送出して、TargetID４の対象ＵＲＬ及び各ＵＲＬと関連付けられたアプリケーション関連情報を返すようにアプリケーションデータベースサーバに要求する。データベースクエリに応答してアプリケーションデータベースサーバ４３によりルックアップサーバ３５に返された対象ＵＲＬ及び各ＵＲＬのアプリケーション関連情報は、特定のTargetIDに対する未処理のマッチング結果を構成すると言える。本発明の１つの態様によると、ルックアップサーバ３５のルックアップ機能３９Ａは、宛先デバイスのユーザが各対象ＵＲＬのアプリケーション関連情報に基づいてダウンロードしたい対象アプリケーション及び宛先デバイスの接続すべき対象ＵＲＬを選択できるように、その未処理のマッチング結果を宛先デバイスに単純に転送するように構成される。これは、例えば宛先デバイスにインストールされたウェブブラウザを使用して受信したマッチング結果をユーザに対して表示することによりアプリケーションディスカバラ１７により達成される。
【００５０】
本発明の別の態様によると、ルックアップ機能３９Ａは、各対象ＵＲＬと関連付けられたアプリケーション関連情報をルックアップ要求に含まれたユーザ／宛先デバイスのコンテキスト情報３２とマッチングすることにより未処理のマッチング結果の対象ＵＲＬを評価するように構成される。対象ＵＲＬの評価は、事実上、インストールファイルが対象ＵＲＬ及び／又はインストールファイル自体からダウンロード可能である対象アプリケーションの評価であること、並びに評価は、対象アプリケーション及び／又は対象アプリケーションに対するインストールファイルが宛先デバイス及び宛先デバイスの構成と互換性を有する尤度及び／又は対象アプリケーションが対象アプリケーションにより提供されたサービスに関するユーザの要件を満たす尤度の基準として考えられることが理解されるべきである。例えば関連付けられたアプリケーション関連情報によると、未処理のマッチング結果が、一方がスウェーデン語をサポートし且つ他方がサポートしない同等の対象アプリケーションバージョンをホストすると考えられる２つの対象ＵＲＬを含む場合、ルックアップ機能３９Ａは、スウェーデン語がユーザの好ましい言語であることをユーザ／宛先デバイスに関するコンテキスト情報が示す場合にスウェーデン語をサポートするバージョンをダウンロードできる対象ＵＲＬをより高く評価するように構成される。ルックアップ機能３９Ａは、例えば設定された未処理のマッチング結果から低い評価を有する対象ＵＲＬを除去し且つ評価によりソートされたリスト中の残りの対象ＵＲＬを順序づけることにより対象ＵＲＬの評価に基づいて未処理のマッチング結果を改善するように構成される。改善されたマッチング結果は、宛先デバイスのユーザが各対象ＵＲＬのアプリケーション関連情報及び／又は評価に基づいてダウンロードしたい対象アプリケーションを選択できるようにルックアップ機能３９Ａにより宛先デバイスに返される。未処理のマッチング結果の対象ＵＲＬがルックアップ要求に含まれたユーザ／宛先デバイスに関するコンテキスト情報３２を各対象ＵＲＬと関連付けられたアプリケーション関連情報とマッチングすることにより評価されるようにする評価機能性は、アプリケーションデータベースサーバ４３に常駐してもよく、この場合、ルックアップサーバ３５のルックアップ機能３９Ａは、アプリケーションデータベースサーバ４３に送信されたデータベースクエリにコンテキスト情報３２を含ませるように構成される。
【００５１】
一般にシステム２１Ａは、複数のアプリケーションダウンロードサーバ４７を含むが、１つのみを図示する。アプリケーションダウンロードサーバ４７は、ルックアップテーブル４５Ａに格納された対象ＵＲＬをホストするあらゆるサーバであり、従って、ルックアップテーブル４５Ａにおいて対象ＵＲＬが関連付けられるTargetID４の対象アプリケーションをインストールするのに必要な１つ以上のファイルを格納するとされるサーバである。アプリケーションダウンロードサーバ４７は、個人の家に配置され且つ単一のＮＦＣアプリケーションを格納する小さなホームサーバからＮＦＣアプリケーションの開発専門の企業のサーバルームに配置され且つ多くのＮＦＣアプリケーションを格納する大きなサーバまでどんなサーバであってもよい。アプリケーションサーバ４７は、対象アプリケーションに対する少なくとも１つのインストールファイル５１が格納されるコンピュータ可読媒体４９を含むものとして図示される。本明細書において、対象アプリケーションの１つ以上のインストールファイルは、正式なインストール手順を最初に実行して又は実行する必要なく、対象アプリケーションが宛先デバイスにダウンロードされた時にそこで実行されることを可能にするあらゆる１つ以上のファイルとして解釈されるべきである。
【００５２】
宛先デバイスのユーザが例えば宛先デバイスのウェブブラウザに表示されたリンクをクリックし且つ対象ＵＲＬに誘導することにより対象ＵＲＬを選択して対象アプリケーションをダウンロードする場合、アプリケーションディスカバラ１７はアプリケーションダウンローダ１９を開始し、選択された対象ＵＲＬを提出する。アプリケーションダウンローダ１９は、対象ＵＲＬを読み取り、好適な接続を使用して対象ＵＲＬをホストするアプリケーションダウンロードサーバ４７に対するネットワーク接続を開始する。アプリケーションダウンローダ１９は、アプリケーションダウンロードサーバ４７にダウンロード要求を送信し、そこから対象アプリケーションインストールファイル５１をダウンロードする。
【００５３】
アプリケーションダウンローダ１９は、アプリケーションダウンロードサーバ４７が有効な対象アプリケーション／対象アプリケーションバージョンをホストしていることをチェックするように構成されてもよい。これは、ルックアップ要求に応答してルックアップサーバ３５から宛先デバイスにより受信されたアプリケーション関連情報を対象アプリケーション／対象アプリケーションバージョン及び／又は対象インストールアプリケーションファイルに関する情報とマッチングすることにより達成されてもよい。これらの情報は、アプリケーションダウンロードサーバ４７に別個に格納されてもよく且つ／又は対象アプリケーションインストールファイル５１から直接導出可能であってもよい。アプリケーションダウンローダ１９は、アプリケーションダウンロードサーバ４７からこの情報を検索し、ルックアップサーバ３５から受信したアプリケーション関連情報と比較するように構成される。これらの情報が互いに一致する場合、例えば対象アプリケーションファイルサイズ及び対象アプリケーションの発売元が双方の情報に従って同一である場合、アプリケーションダウンローダ１９は対象アプリケーションインストールファイル５１をダウンロードする。しかし、それらの情報がある側面で異なる場合、アプリケーションダウンローダ１９は、ダウンロード手順を中止するように構成されるか、あるいは例えば検出された情報の差分に基づいてダウンロードしたいか又は中止したいかを選択するようにユーザに要求するメッセージを表示することによりインストールファイル５１を依然としてダウンロードしたいかをユーザに問い合わせるように構成される。
【００５４】
対象アプリケーションインストールファイル５１が宛先デバイスにダウンロードされた場合、アプリケーションダウンローダ１７はインストール機能２９を開始し、ダウンロードされたインストールファイル５１を使用して対象アプリケーションをインストールするように命令する。上述したように、一般にインストール機能２９は、既に宛先デバイスに存在している汎用インストーラ又は専用インストーラと呼ばれることもある従来のインストールプログラムである。しかし、インストール機能２９は、アプリケーションダウンローダ１９がダウンロードされたインストールファイル５１自体を使用して対象アプリケーションをインストールすることを可能にするアプリケーションダウンローダ１９に含まれたインストール機能であってもよい。対象アプリケーションが宛先デバイスにインストールされた場合、インストール機能２９はRTDハンドラ１３に通知し、RTDハンドラ１３は、対象アプリケーションがDataレコード７のデータコンテンツに対してActionレコード５で要求された動作を実行できるように、新しくインストールされた対象アプリケーションを開始し且つ受信したGeneric Controlレコード１のActionレコード５及びDataレコード７のコンテンツを対象アプリケーションに配布するようにアプリケーションランチャ１１に警告できる。
【００５５】
必要なＮＦＣアプリケーションをＮＦＣ対応デバイスにインストールする提案された原理は、新しいＮＦＣサービスを使用するのに必要なアプリケーションを配信する問題を解決するか又は少なくとも軽減する。新しいＮＦＣサービスを市場に導入する時にサービスプロバイダにより要求されることは、サービスで使用される発信元デバイスが特定のTargetIDを含むGeneric Controlレコードを送信し且つ新しいサービスを使用するのに必要なアプリケーションに対する１つ以上のインストールファイルをダウンロードできる対象ＵＲＩと共にそのTargetIDをルックアップテーブルに登録するように構成されることを確認することである。サービスプロバイダは、アプリケーション及び／又はインストールファイルを記述するアプリケーション関連情報をルックアップテーブル４５Ａに提出するのが好ましいが必須ではない。本発明の１つの態様によると、新しいアプリケーションの登録は、新しいアプリケーションのTargetID、対象ＵＲＬ及びアプリケーション関連情報をルックアップサーバ３５に送出することによりＮＦＣサービスプロバイダにより実行される。ルックアップサーバ３５は、情報をルックアップテーブル４５に挿入し且つ挿入した時にサービスプロバイダに通知するように構成される。ルックアップサーバ３５とアプリケーションダウンロードサーバ４７との間の破線の双方向の矢印は、１つ以上のインストールファイル５１がアプリケーションダウンロードサーバ４７からダウンロード可能である対象アプリケーションの登録を示す。この場合、新しいアプリケーションの登録は、新しいアプリケーションに対するインストールファイルを格納するサーバコンピュータから実行されると仮定される。登録は、インストールファイルを実際に格納するコンピュータ／デバイスとは別のコンピュータ／デバイスから実行可能であることは言うまでもない。
【００５６】
従来技術において既知であるように、アプリケーションは、必ずしも正式なインストール手順を実行することによりインストールされる必要はない。場合によっては、アプリケーションは、アプリケーションを構成する１つ以上のデータファイルをデバイスの所望の場所に単にコピーすることによりデバイスにインストールされる。従って、本明細書において少なくとも１つの対象アプリケーションインストールファイル５１と呼ばれるものが実際の対象アプリケーションを構成する場合があることが理解されるべきである。そのような場合、ファイル５１をダウンロードした後に追加のインストール手順が必要とされず、対象アプリケーションをインストールするステップは少なくとも１つの対象インストールファイル５１をダウンロードすることにより実行される。
【００５７】
従来技術において既知であるように、アプリケーションは、ユーザ（クライアント）デバイスにインストールされたクライアント側アプリケーション及びユーザデバイスが接続されるネットワークのサーバノードにインストールされたサーバ側アプリケーションを含む分散アプリケーションであってもよい。本明細書において、対象アプリケーションがＮＦＣ対応デバイスにインストールされることを示す場合、これは、ＮＦＣ対応デバイスにインストールされた対象アプリケーション（の一部）が対象アプリケーションの唯一の部分であることを必ずしも意味しないことが理解されるべきである。これは、小さなクライアント側アプリケーションのみがデバイスにインストールされる一方、対象アプリケーションの一部又は主な部分がデバイスの接続可能なネットワークノードに常駐することを意味することもある。例えば対象アプリケーションのインストールファイル５１がダウンロードされるアプリケーションダウンロードサーバ４７は、対象アプリケーションのサーバ側部分をホストしてもよい。ダウンロードされ且つインストールされる必要のある対象アプリケーションのクライアント側部分は、クライアント側アプリケーションに事前にプログラムされるＵＲＬに接続し且つDataレコード７のデータコンテンツをＵＲＬパラメータとして添付することにより、受信したGeneric Controlレコード１のDataレコード７のデータコンテンツを対象アプリケーションのサーバ側部分に転送する小さな単純な機能であってもよい。
【００５８】
図４は、本発明の例示的な実施形態に従って図３に示したシステムの種々のシステム構成要素が上述した手順を実行するように構成される方法を示す信号方式を示す。図４を説明する際、先に説明した図面を同時に参照する。
【００５９】
ステップＳ４０１：発信元デバイス２３は、TargetID４を含むGeneric Controlレコード１を宛先デバイスに送信し、Generic Controlレコードは、宛先デバイスのRTDハンドラ１３により読み取られる。ここで、受信したGeneric Controlレコード１のTargetID４は宛先デバイスに存在しない対象アプリケーションと関連付けられると仮定する。
【００６０】
ステップＳ４０２：RTDハンドラ１３がTargetID４と関連付けられるアプリケーションを何も見つけられないため、このステップにおいてアプリケーションディスカバラ１７を開始する。
【００６１】
ステップＳ４０３：アプリケーションディスカバラ１７は、TargetID４を含むルックアップ要求をルックアップサーバ３５に送信し、ルックアップ要求は、ルックアップサーバ３５のルックアップ機能３９Ａにより処理される。本実施形態において、アプリケーションディスカバラ１７は、上述したように内部レジスタ３０Ａから検索された宛先デバイス及び／又は宛先デバイスのユーザに関するコンテキスト情報３２をルックアップ要求に含めるように構成される。例えば、ルックアップ要求は以下のようなものである。
www.lookupfunctionX.com?targetID=271＆positionX=2223344＆positionY=233444＆language=swedish
【００６２】
ステップＳ４０４：ルックアップサーバ３５のルックアップ機能３９Ａは、ルックアップテーブル４５Ａを格納するアプリケーションデータベースサーバ４３に対して受信したルックアップ要求のTargetID４を含むデータベース要求を送信する。
【００６３】
ステップＳ４０５：ルックアップテーブル４５Ａをホストするアプリケーションデータベースサーバ４３は、データベース要求に含まれたTargetID４と関連付けられた対象ＵＲＬを見つけるためにルックアップテーブル４５Ａを探索する。
【００６４】
ステップＳ４０６：TargetID４と関連付けられた対象ＵＲＬは、データベース要求に応答してルックアップサーバ３５に返される。この応答は、上述したように、初期ルックアップ要求の未処理のマッチング結果を構成するものと言える。本実施形態において、ルックアップテーブル４５Ａの対象ＵＲＬは、１つ以上のインストールファイル５１が対象ＵＲＬからダウンロード可能である対象アプリケーションを記述し且つ／又は１つ以上のインストールファイル自体を記述するアプリケーション関連情報と関連付けられると仮定される。このアプリケーション関連情報は、データベース要求に対する応答にも含まれるため、未処理のマッチング結果の一部としてルックアップサーバ３５に返される。
【００６５】
ステップＳ４０７：ルックアップサーバ３５のルックアップ機能３９Ａは、各対象ＵＲＬと関連付けられたアプリケーション関連情報をルックアップ要求に含まれたユーザ／宛先デバイスのコンテキスト情報３２とマッチングすることにより未処理のマッチング結果の対象ＵＲＬを評価する。ルックアップ機能３９Ａは、低い評価を有する対象ＵＲＬを除去し、評価によりソートされたリスト中の残りの対象ＵＲＬ及び関連するアプリケーション関連情報をソートする。このリストは、上述したように、初期ルックアップ要求の改善されたマッチング結果を構成するものと言える。
【００６６】
ステップＳ４０８：ルックアップサーバ３５のルックアップ機能３９Ａは、ステップＳ４０３で受信したルックアップ要求に応答して宛先デバイスのアプリケーションディスカバラ１７に改善されたマッチング結果を送信する。
【００６７】
ステップＳ４０９：アプリケーションディスカバラ１７は、宛先デバイスのＧＵＩ３３に改善されたマッチング結果を転送し、ＧＵＩ３３は、適切な方法で、例えば１つ以上のインストールファイルが各対象ＵＲＬからダウンロード可能である対象アプリケーションの名前、各対象ＵＲＬの評価及び各対象ＵＲＬと関連付けられたアプリケーション関連情報を含むリストの形式で結果を表示することによりデバイスのユーザに結果を提示する。上述したように、このリストは、例えば宛先デバイスにインストールされた標準的なウェブブラウザを使用して表示されてもよい。
【００６８】
ステップＳ４１０：このステップにおいて、宛先デバイスのユーザは、ダウンロードしたい対象アプリケーションを指示する（すなわち、宛先デバイスが接続すべき対象ＵＲＬを指示する）。これは、宛先デバイスのユーザインタフェース及び宛先デバイスに含まれるか又は接続されるユーザ入力手段に依存して多くの種々の方法で達成されてもよい。例えば、ユーザに対して表示されたリスト中の種々の対象アプリケーションの名前は、各対象ＵＲＬに誘導するハイパーリンクであってもよく、この場合、ユーザは、宛先デバイスのタッチスクリーン又はキーパッドを使用して選択した対象アプリケーションの名前を「クリック」することによりダウンロードする対象アプリケーションを指示してもよい。
【００６９】
ステップＳ４１１：対象ＵＲＬは、アプリケーションディスカバラ１７に返される。
【００７０】
ステップＳ４１２：アプリケーションディスカバラ１７は、対象ＵＲＬ及び例示的な本実施形態においては指示された対象ＵＲＬと関連付けられたアプリケーション関連情報の一部又は全てをアプリケーションダウンローダ１９に提出する。
【００７１】
ステップＳ４１３：アプリケーションダウンローダ１９は、アプリケーションダウンロードサーバ４７と接続し、サーバ４７が有効な対象アプリケーションのインストールファイルを実際にホストしているかをチェックする。これは、好適なネットワーク接続を使用してアプリケーション妥当性検査要求をサーバ４７に送信することによりアプリケーションダウンローダ１９により達成され、対象アプリケーション及び／又は対象アプリケーションインストールファイルを記述するあらゆる入手可能なアプリケーション関連情報を返すようにサーバ４７に要求する。そのような情報は、アプリケーションダウンロードサーバ４７のレジスタに別個に格納されてもよく、あるいは対象アプリケーションインストールファイルから導出可能であってもよい。例えばアプリケーション妥当性検査要求は、対象アプリケーションの発売元、対象アプリケーションのファイルサイズ及び／又は対象アプリケーションインストールファイル等を検証するあらゆる証明書を返すようにサーバ４７に要求してもよい。
【００７２】
ステップＳ４１４：入手可能である場合、アプリケーションダウンロードサーバ４７は、アプリケーション妥当性検査要求においてアプリケーションダウンローダ１９により要求されたアプリケーション関連情報を検索する。
【００７３】
ステップＳ４１５：アプリケーションダウンロードサーバ４７は、アプリケーション妥当性検査要求に応答して要求されたアプリケーション関連情報をアプリケーションダウンローダ１９に返す。
【００７４】
ステップＳ４１６：アプリケーションダウンローダ１９は、アプリケーションダウンロードサーバ４７から受信したアプリケーション関連情報をルックアップテーブル４５Ａの対象ＵＲＬと関連付けられたアプリケーション関連情報と比較し、それらの情報が互いに対応するかをチェックする。この例において、アプリケーションダウンロードサーバ４７からのアプリケーション関連情報はルックアップテーブル４５Ａからのアプリケーション関連情報と一致するため、アプリケーションダウンローダ１９は、１つ以上のインストールファイル５１が対象ＵＲＬからダウンロード可能なアプリケーションが、所望の対象アプリケーションであることを検証できると仮定される。
【００７５】
ステップＳ４１７：アプリケーションダウンローダ１９は、ダウンロード要求をアプリケーションダウンロードサーバ４７に送信して、対象アプリケーションインストールファイル５１をダウンロードする許可を要求する。
【００７６】
ステップＳ４１８：アプリケーションダウンロードサーバ４７は、コンピュータ可読記憶手段４９から対象アプリケーションインストールファイル５１を検索する。
【００７７】
ステップＳ４１９：アプリケーションダウンロードサーバ４７は、対象アプリケーションインストールファイル５１を宛先デバイスに送信する。
【００７８】
ステップＳ４２０：ダウンロードが完了すると、アプリケーションダウンローダ１９は、ダウンロードしたインストールファイル５１を使用して対象アプリケーションを宛先デバイスにインストールするようにインストール機能２９に命令する。
【００７９】
ステップＳ４２１：インストール機能２９は、ダウンロードしたインストールファイル５１を使用して対象アプリケーションをインストールする。
【００８０】
ステップＳ４２２：インストール機能２９は、対象アプリケーションのインストールが完了したことをRTDハンドラ１３に通知する。
【００８１】
ステップＳ４２３：RTDハンドラ１３は、新しくインストールされた対象アプリケーションを開始し、ステップＳ４０１で受信したGeneric Controlレコード１に含まれたDataレコード７のコンテンツ及びActionレコード５のコンテンツが存在する場合にはそのコンテンツを対象アプリケーションに配布するようにアプリケーションランチャ１１に命令する。
【００８２】
ステップＳ４２４：アプリケーションランチャ１１は、新しくインストールされた対象アプリケーションがDataレコード７のコンテンツに対してActionレコード５により要求された動作を実行できるように、対象アプリケーションを開始し、Generic Controlレコード１に含まれたDataレコード７のコンテンツ及びActionレコード５のコンテンツを対象アプリケーションに配布する。
【００８３】
図４に示された信号方式は単なる例示であり、手順を多少高度化するために説明したステップのいくつかは除去され、他のステップが追加され得ることが理解されるべきである。例えば手順は、エンドユーザがダウンロードする対象アプリケーションを選択できるようにするステップＳ４０９〜Ｓ４１１を省略することにより完全に自動化される。また、当業者にはよく理解されるように、ルックアップテーブル４５Ａ及びアプリケーションダウンロードサーバ４７にアプリケーション関連情報を格納することは、セキュリティ上の理由から利点を有するが、本発明の概念の最も単純な実現例において必要不可欠なことではない。ルックアップテーブル４５Ａは、TargetID４及びそれと関連付けられた対象ＵＲＬのみから構成されてもよく、この場合、アプリケーションディスカバラ１７は、アプリケーション関連情報とマッチングされる宛先デバイス及び／又は宛先デバイスのユーザに関するあらゆるコンテキスト情報３２を検索できる必要はない。この場合、アプリケーションディスカバラ１７は、受信したGeneric Controlレコード１のTargetID４のみをルックアップ機能３９Ａに送出するように構成され、ルックアップ機能３９Ａは、ルックアップテーブル４５ＡからTargetID４と関連付けられた対象ＵＲＬを検索し、前記対象ＵＲＬをアプリケーションディスカバラ１７に返す。アプリケーションダウンローダ１９は、対象ＵＲＬに接続し、対象アプリケーションの妥当性を検証せずに対象アプリケーションインストールファイルをダウンロードする。この時、対象アプリケーションは宛先デバイスにインストールされる。本発明の簡略化された実施形態において、ステップＳ４０７、Ｓ４０９〜Ｓ４１１及びＳ４１３〜Ｓ４１６のいずれか又は全てが省略可能であることが上述から理解されるべきである。
【００８４】
別の態様によると、例えばステップＳ４１６で実行される対象アプリケーションの妥当性検査にユーザを参加させることにより、エンドユーザがインストール手順に参加することが更に促進される。例えば、これはルックアップテーブル４５Ａから検索されたアプリケーション関連情報及びユーザデバイスのウェブブラウザにおいてアプリケーションダウンロードサーバ４７から検索されたアプリケーション関連情報の双方を表示することにより達成され、アプリケーションダウンロードサーバ４７からダウンロードできる対象アプリケーションが「正確な」対象アプリケーションであるとユーザが所定の情報に基づいて考えた場合にボタンをクリックすることにより対象アプリケーションのダウンロードを手動で開始させる。更にエンドユーザは、ダウンロードされた対象アプリケーションがステップＳ４２１の実行前にインストールされるべきであるか及び／又は対象アプリケーションがステップＳ４２４の実行前に開始されるべきであるかを問い合わされる。
【００８５】
図５は、本発明の別の実施形態に従って提案されたルックアップサービスを実現する例示的なシステム２１Ｂを示す。図３及び図５において同一の図中符号により示されるシステム構成要素は、特に指定がない限り同一の技術的特徴を有する同一の構成要素である。
【００８６】
図５のシステム２１Ｂは、宛先デバイスが内部ルックアップテーブル４５Ｂを含むものとして図示される点において図３のシステムとは部分的に異なる。内部ルックアップテーブル４５Ｂは、アプリケーションデータベースサーバ４７に常駐する外部ルックアップテーブル４５ＡのようにTargetIDと関連付けられた対象アプリケーションに対する１つ又はいくつかのインストールファイル５１をダウンロードできる対象ＵＲＬ及びTargetID４を格納する。クライアント側ルックアップテーブル４５Ｂにおいて、各対象ＵＲＬは、上述したように、１つ以上のインストールファイル５１が対象ＵＲＬからダウンロード可能である対象アプリケーションを記述し且つ／又は１つ以上のインストールファイル５１自体を記述するアプリケーション関連情報と関連付けられるとして図示される。内部ルックアップテーブル４５Ｂは、以下においてクライアント側ルックアップテーブル４５Ｂと呼ばれ、ルックアップサーバ３５又はルックアップサーバ３５が通信可能に接続されるいずれかのアプリケーションデータベースサーバ４３に常駐するルックアップテーブルは、サーバ側ルックアップテーブル４５Ａと呼ばれる。ここで、ルックアップサーバ３５に常駐する（サーバ側）ルックアップ機能３９Ａがサーバ側ルックアップテーブル４５Ａからデータを検索する役割を果たすのと同様に、宛先デバイスのアプリケーションディスカバラ１７はクライアント側ルックアップテーブル４５Ｂからデータを検索するクライアント側ルックアップ機能３９Ｂを含む。上述したように、２つ以上の対象ＵＲＬが特定のTargetIDに対して検索された場合、サーバ側ルックアップ機能３９Ａは、各対象ＵＲＬと関連付けられたアプリケーション関連情報を宛先デバイス及び／又はそのユーザのコンテキスト情報３２とマッチングすることにより対象ＵＲＬを評価するように構成されてもよい。本実施形態において、クライアント側ルックアップ機能３９Ｂは、各対象ＵＲＬと関連付けられたアプリケーション関連情報と宛先デバイス及び／又は宛先デバイスのユーザのコンテキスト情報３２とに基づいてクライアント側ルックアップテーブル４５Ｂ及び／又はサーバ側ルックアップテーブル４５Ａから検索された対象ＵＲＬを評価するための同一の又は対応する機能性を含む。以下に更に詳細に説明するように、ルックアップサーバがコンテキストブローカノード５７からそのような情報を受信するように構成される場合、コンテキスト情報３２は、クライアント側ルックアップ機能３９Ｂにより宛先デバイスの内部レジスタ３０Ａ及び／又はルックアップサーバ３５から直接検索される。アプリケーションディスカバラ１７は、クライアント側ルックアップテーブル４５Ｂが宛先デバイスに含まれない場合でもサーバ側ルックアップテーブル４５Ａから検索された対象ＵＲＬを評価する機能性を含むことができることが理解されるべきである。これは、ルックアップサーバ３５に対する作業負荷を低減するという利点を有するが、宛先デバイスの複雑さを増加するという欠点を有する可能性がある。
【００８７】
ローカルのクライアント側ルックアップテーブル４５Ｂを宛先デバイスに格納することにより、アプリケーションディスカバラ１７は、外部で調査する必要なく、すなわちルックアップ要求をルックアップサーバ３５に送信する必要なく、受信したGeneric Controlレコード１のTargetID４の対象ＵＲＬを検索できてもよい。しかし、これは、受信したGeneric Controlレコード１のTargetID４がクライアント側ルックアップテーブル４５Ｂにリストされ、少なくとも１つの対象ＵＲＬと関連付けられることを必要とすることは言うまでもない。従って、クライアント側ルックアップテーブル４５Ｂは、将来宛先デバイスにより受信されるGeneric Controlレコード１で発生する可能性が最も高く、適切な対象アプリケーションが宛先デバイスにまだインストールされていないTargetIDを少なくとも格納することが重要である。あるいは、換言すると、クライアント側ルックアップテーブル４５Ｂは、将来宛先デバイスのユーザにより要求される可能性が高いＮＦＣサービスを使用するために宛先デバイスにインストールされる必要があるがまだインストールされていない対象アプリケーションに対応するTargetIDを少なくとも格納することが重要である。従って、システム２１Ｂは、近い将来エンドユーザにより要求される可能性の高いＮＦＣサービスを予測し且つそれに従ってクライアント側ルックアップテーブル４５Ｂを更新する機能性を含むことが重要である。
【００８８】
アプリケーションディスカバラ１７は、ルックアップサーバ３５から宛先デバイスにより受信されたTargetID及び対象ＵＲＬを挿入することによりクライアント側ルックアップテーブル４５Ｂを更新するように構成され、TargetID及び対象ＵＲＬは、ルックアップサーバ３５により１つ又はいくつかのサーバ側ルックアップテーブル４５Ａから検索される。宛先デバイスに送出されるべきTargetID及び対象ＵＲＬは、宛先デバイス及び／又は宛先デバイスのユーザに関するコンテキスト情報３２とサーバ側ルックアップテーブル４５Ａの対象ＵＲＬと関連付けられたアプリケーション関連情報とに基づいて判定される。
【００８９】
例示的な第１の実施形態によると、クライアント側ルックアップテーブル４５Ｂを更新する手順は、内部レジスタ３０Ａから検索されたコンテキスト情報３２を含む更新要求をルックアップサーバ３５のルックアップ機能３９Ａに送信することによりアプリケーションディスカバラ１７により開始される。例えばアプリケーションディスカバラ１７は、定期的に、ボタン押下イベント等のユーザによりトリガされたイベントが発生した時に、あるいはレジスタ３０Ａのコンテキスト情報３２に対して重要な変更があった時に、そのような更新要求をルックアップサーバ３５に送信するように構成されてる。その結果、ルックアップ機能３９Ａは、更新要求中のコンテキスト情報３２を利用可能なサーバ側ルックアップテーブル４５Ａに格納されたアプリケーション関連情報と比較し、コンテキスト情報と一致するアプリケーション関連情報と関連付けられた対象ＵＲＬ及びTargetIDを検索する。アプリケーション関連情報も検索されるのが好ましい。これは、サーバ側ルックアップテーブル４５Ａを格納するアプリケーションデータベースサーバ４３に、引数としてコンテキスト情報を有するデータベース要求を送信することにより、ルックアップ機能３９Ａにより達成される。上述したように、更新要求に含まれるコンテキスト情報３２は、宛先デバイス及び／又は宛先デバイスのユーザに関するあらゆる情報、例えば宛先デバイスのＧＰＳ受信機により提供された位置情報を含むことができる。宛先デバイスが例えばＳｔｏｃｋｈｏｌｍ，Ｓｗｅｄｅｎに配置されることをそのような位置情報が示す場合、ルックアップ機能３９Ａは、対象ＵＲＬからダウンロード可能な対象アプリケーションがＳｔｏｃｋｈｏｌｍで提供されるＮＦＣサービス、例えばＳｔｏｃｋｈｏｌｍ市内の公共交通会社により提供される切符販売サービスに対して使用されることを示すアプリケーション関連情報と対象ＵＲＬとが関連付けられるTargetID／対象ＵＲＬの対の全てを検索できる。検索されたTargetID／対象ＵＲＬの対及び好ましくは各対と関連付けられたアプリケーション関連情報は、更新要求に応答してルックアップ機能３９Ａによりアプリケーションディスカバラ１７に返される。この時、アプリケーションディスカバラ１７は、受信した情報によりクライアント側ルックアップテーブル４５Ｂを更新する。
【００９０】
例示的な第２の実施形態によると、クライアント側ルックアップテーブル４５Ｂを更新する手順は、アプリケーションディスカバラ１７により開始されず、サーバ側ルックアップテーブル４５Ａから検索されたTargetID／対象ＵＲＬの対及び好ましくは各対と関連付けられたアプリケーション関連情報を宛先デバイスにプッシュすることによりルックアップサーバ３５により開始される。宛先デバイスが更新をトリガする第１の実施形態と比較すると、本実施形態において、ルックアップサーバ３５は、更新が可能である時にのみ、すなわちクライアント側ルックアップテーブル４５Ｂにまだ格納されていないTargetID／対象ＵＲＬの対がサーバ側ルックアップテーブル４５Ａにおいて入手可能である時にのみ更新メッセージを送出するように構成されるため、潜在的に且つ実際にトラフィック量は少なくなる。この例において、アプリケーションディスカバラ１７は、プッシュされた情報を受信し且つそれを挿入することによりクライアント側ルックアップテーブル４５Ｂを更新するように構成される。
【００９１】
ルックアップサーバ３５が宛先デバイス及び／又は宛先デバイスのユーザに関するコンテキスト情報３２を宛先デバイスから受信せずにそのようなコンテキスト情報３２に基づいて宛先デバイスにプッシュするTargetID／対象ＵＲＬの対を選択するために、ルックアップサーバ３５は、本明細書ではコンテキストブローカノード５７と呼ばれるネットワークノード５７からそのような情報３２を受信するように構成される。コンテキストブローカノード５７は、宛先デバイスが接続されるか又は接続されてもよいネットワークに配置されるか又は少なくともネットワークに接続可能である。宛先デバイスがＮＦＣ対応携帯電話である本実施形態において、コンテキストブローカノード５７はＧＳＭ、ＵＭＴＳ又はＬＴＥ／ＳＡＥネットワーク等の移動通信ネットワークに接続される。コンテキストブローカノード５７は、移動通信ネットワークの無線基地局５５及び／又は他のノードからユーザデバイス及び／又はそのユーザに関するコンテキスト情報を検索する。例えばコンテキストブローカノード５７は、宛先デバイスが接続される無線基地局５５のセルＩＤを無線基地局５５から検索し、その一方で移動通信ネットワークのＲＡＮ（無線アクセスネットワーク）又はコアネットワークに対処するＯＳＳ（オペレーションサポートシステム）、あるいは無線基地局５５自体から無線基地局の地理的位置を受信することにより、例えば宛先デバイスである特定のユーザデバイスに関する位置情報を検索できる。これにより、コンテキストブローカノード５７は、宛先デバイスに関する位置情報をルックアップサーバ３５に提供できる。しかし、例えば宛先デバイスの設定及びユーザ設定、宛先デバイスの連絡先リスト等であるネットワークにおいて入手可能なあらゆるコンテキスト情報は、コンテキストブローカノード５７により検索され、ルックアップサーバ３５に転送される。各ユーザデバイスに関するコンテキスト情報は、コンテキストブローカノード５７のレジスタ３０Ｂに格納され、レジスタ３０Ｂは、宛先デバイスのコンテキスト情報３２に対する内部レジスタ３０Ａのネットワークバージョンであると言える。
【００９２】
コンテキストブローカノードの使用は、宛先デバイスが移動通信ネットワークに接続される場合に限定されないことが理解されるべきである。ルックアップサーバ３５は、いくつかの種々のネットワークのコンテキストブローカノードから、例えば宛先デバイスがＷｉ−Ｆｉホットスポット等を介して接続可能なＷＭＮ（無線メッシュネットワーク）の第２のコンテキストブローカノード（不図示）から、宛先デバイスに関するコンテキスト情報を受信するように構成される。宛先デバイス及び／又は宛先デバイスのユーザに関するコンテキスト情報をルックアップサーバ３５に提供するためにコンテキストブローカノード５７を使用することは、宛先デバイスが更新可能なクライアント側ルックアップテーブル４５Ｂを含む場合に限定されず、図３を参照して上述した例にも適用可能である。
【００９３】
コンテキストブローカは、宛先デバイス及び／又はその環境に関する情報を与えることのできる他のネットワークにも接続可能である。例えばコンテキストブローカノードは、例えばセルＩＤに基づく位置決め情報と比較して宛先デバイスの位置に関して更に細かい情報を与えることのできるローカル位置決めネットワーク、あるいは例えば宛先デバイス近傍の温度に関する情報を与える他のセンサネットワークに接続可能である。
【００９４】
ルックアップサーバ３５から宛先デバイスに更新情報をプッシュする手順は、宛先デバイスから更新要求を送信することにより更新手順を開始する手順と組み合わせ可能であることは言うまでもない。また、クライアント側ルックアップサーバ４５Ｂを更新するためにプッシュ技術に類似する技術が使用可能である。例えば、しばしばロングポーリングと呼ばれる技術が使用される。この場合、宛先デバイスは、ルックアップサーバ３５に更新要求を送出するように構成され、その一方で、ルックアップサーバ３５は、宛先デバイスにとって有用であると考えられる新しい情報がサーバ側ルックアップテーブル４５Ａにおいて入手可能である時にのみ要求に応答するように構成される。
【００９５】
宛先デバイスがルックアップサーバ３５から受信した情報により更新されるクライアント側ルックアップテーブル４５Ｂを含む場合、ルックアップサーバは、格納されるTargetID／対象ＵＲＬの対を認識するためにクライアント側ルックアップテーブルのコピーを格納するように構成されるのが好ましい。これは、ルックアップサーバ３５がクライアント側ルックアップテーブル４５Ｂに既に格納されているTargetID／対象ＵＲＬの対を宛先デバイスに繰り返し送信しないようにするために有用である。ルックアップサーバ３５は、新しいTargetID／対象ＵＲＬの対が宛先デバイスに送出される度にクライアント側ルックアップテーブル４５Ｂのコピーを更新するように構成され、且つ／あるいは宛先デバイスは、更新要求をルックアップサーバ３５に送信する時にクライアント側ルックアップテーブル４５Ｂに格納されたTargetID／対象ＵＲＬの対を含めるように構成される。この時、ルックアップサーバ３５は、ルックアップ要求に含まれた全てのTargetID／対象ＵＲＬの対がクライアント側ルックアップテーブルのコピーにも格納されていることをチェックできる。
【００９６】
更に、宛先デバイスがローカルのクライアント側ルックアップテーブル４５Ｂを含むか否かに関わらず、ルックアップサーバ３５は、宛先デバイス及び宛先デバイスが対象ＵＲＬを送信できる全ての他のＮＦＣ対応デバイスに対して各ユーザプロファイルを格納するように構成される。ユーザプロファイルは、各ＮＦＣ対応デバイスに格納されたローカルのクライアント側ルックアップテーブルのコピー、各ＮＦＣ対応デバイスにインストールされるアプリケーションに関する情報、並びにＮＦＣ対応デバイス及び／又はＮＦＣ対応デバイスのユーザに関するコンテキスト情報を含み得る。上述したように、そのようなコンテキスト情報は、ＮＦＣ対応デバイス自体から、あるいはＮＦＣ対応デバイスが接続されるか又は接続されてもよいネットワーク中の１つ又はいくつかのコンテキストブローカノード５７から、ルックアップサーバ３５により検索される。ルックアップサーバ３５は、ユーザプロファイルの情報に基づいて種々のＮＦＣ対応デバイスに送出するTargetID／対象ＵＲＬの対を選択するように構成される。更に、例えば各ＮＦＣ対応デバイス及び／又はそのユーザに関するコンテキスト情報に含まれた連絡先情報に基づいて、ルックアップサーバ３５は、互いに知っていると考えられるユーザに属するＮＦＣ対応デバイスのユーザプロファイルを対にするように構成される。これにより、ルックアップサーバ３５は、エンドユーザ間のソーシャルネットワークに対応するユーザプロファイルネットワークを作成するように種々のユーザプロファイルを互いにリンクできる。これは、ルックアップサーバ３５が特定のエンドユーザの友人のＮＦＣ対応デバイスにインストールされたアプリケーションに基づいてそのエンドユーザのＮＦＣ対応デバイスに送出するべきTargetID／対象ＵＲＬの対を判定できるという利点を有する。エンドユーザの友人の多くが特定のＮＦＣサービスを使用する場合、そのエンドユーザが近い将来このサービスを要求する絶好の機会があることが見込まれ、この要求はルックアップサーバ３５により予測される。上述したように、この特徴は、未処理のマッチング結果のTargetID／対象ＵＲＬの対を評価する時、及び／又は、格納された内部クライアント側ルックアップテーブルを更新するためにＮＦＣ対応デバイスに送出されるべきTargetID／対象ＵＲＬの対を選択する時にルックアップサーバ３５により使用される。
【００９７】
宛先デバイスがクライアント側ルックアップテーブル４５Ｂを含む場合、アプリケーションディスカバラ１７は、最初に、受信したTargetIDと関連付けられた対象ＵＲＬを見つけるためにクライアント側ルックアップ機能３９Ｂにクライアント側ルックアップテーブル４５Ｂを探索させることにより、受信したGeneric Controlレコード１のTargetID４の対象ＵＲＬをクライアント側ルックアップテーブル４５Ｂから検索しようとするように構成される。受信したTargetID４と関連付けられた対象ＵＲＬが見つけられない場合、アプリケーションディスカバラ１７は、ルックアップ要求をルックアップサーバ３５に送出することにより受信したTargetID４を入力としてサーバ側ルックアップテーブル４５Ａに提供するように構成される。ルックアップサーバ３５は、TargetID４の対象ＵＲＬをサーバ側ルックアップテーブル４５Ａから検索できる。
【００９８】
図６は、図５に示したシステムのシステム構成要素が上述した処理を実行するように構成される方法を示す信号方式を示す。
【００９９】
ステップＳ６０１及びＳ６０２は、図４のステップＳ４０１及びＳ４０２に対応する。
【０１００】
ステップＳ６０３において、アプリケーションディスカバラ１７のクライアント側ルックアップ機能３９Ｂは、データベース要求において、受信したGeneric ControlレコードのTargetIDをクライアント側ルックアップテーブル４５Ｂに入力として提供する。
【０１０１】
ステップＳ６０４において、TargetIDの対象ＵＲＬの探索は、クライアント側ルックアップテーブル４５Ｂを考察することにより実行される。この場合、探索は成功しないと仮定される。
【０１０２】
ステップＳ６０５において、探索の結果は、データベース要求に応答してアプリケーションディスカバラ１７のクライアント側ルックアップ機能３９Ｂに返される。対象ＵＲＬがステップＳ６０４において見つけられた場合、対象ＵＲＬ及びオプションとして関連付けられたあらゆるアプリケーション関連情報が応答に含まれ、この時、実行される次のステップはステップＳ６１１である。しかし、対象ＵＲＬが見つけられなかったことを応答が示す場合、この例示的な例において仮定されたようにステップＳ６０６に進む。
【０１０３】
ステップＳ６０６〜Ｓ６２７は、１つの例外以外はステップＳ４０３〜Ｓ４２４に対応する。本実施形態においても、ステップＳ６０９においてサーバ側ルックアップテーブル４５Ａからルックアップサーバに返された未処理のマッチング結果は複数の対象ＵＲＬを含むと仮定される。各対象ＵＲＬは、１つ以上のインストールファイル５１が対象ＵＲＬからダウンロード可能である対象アプリケーションを記述し且つ／又は１つ以上のインストールファイル５１自体を記述するアプリケーション関連情報と関連付けられる。しかし、本実施形態において、未処理のマッチング結果は、ルックアップサーバ３５のサーバ側ルックアップ機能３９Ａにより改善されない。その代わり、未処理のマッチング結果は、ステップＳ６１０において宛先デバイスのアプリケーションディスカバラ１７に直接返され、未処理のマッチング結果の改善（対象ＵＲＬの評価、ソート及び除去）は、ステップＳ６１１においてアプリケーションディスカバラ１７のクライアント側ルックアップ機能３９Ｂにより実行される。ステップＳ６０４において、TargetIDの複数の対象ＵＲＬがクライアント側ルックアップテーブル４５Ａにおいて見つけられた場合、同一の処理が実行されている。
【０１０４】
図７は、本発明に係る方法の基本的で例示的な実施形態を示すフローチャートである。
【０１０５】
ステップＳ７０１：宛先デバイスのRTDハンドラ１３は、最近受信したGeneric Controlレコード１に含まれたTargetID４を受信する。
【０１０６】
ステップＳ７０２：RTDハンドラ１３は、TargetID４の対象アプリケーションを識別しようとする。対象アプリケーションが見つけられた場合、ステップＳ７０３に進み、対象アプリケーションが開始される。対象アプリケーションが見つけられなかった場合、ステップＳ７０４に進む。
【０１０７】
ステップＳ７０４：アプリケーションディスカバラ１７が開始される。
【０１０８】
ステップＳ７０５：利用可能な１つ以上のルックアップテーブル４５Ａ、４５Ｂは、TargetID４の少なくとも１つの対象ＵＲＬを得るために考察される。
【０１０９】
ステップＳ７０６：TargetID４の対象ＵＲＬがルックアップテーブル４５Ａ、４５Ｂにおいて見つけられなかった場合、ステップＳ７０７に進み、エンドユーザすなわち宛先デバイスのユーザは、対象ＵＲＬが存在しないことを示す探索結果が通知される。しかし、TargetID４の少なくとも１つの対象ＵＲＬがルックアップテーブル４５Ａ、４５Ｂにおいて見つけられた場合、ステップＳ７０８において、エンドユーザは、対象ＵＲＬが見つけられたことを通知され、その後ステップＳ７０９に進む。
【０１１０】
ステップＳ７０９：エンドユーザは、対象ＵＲＬから対象アプリケーションに対するインストールファイルをダウンロードしたいかを問い合わせされる。ステップＳ７０６において２つ以上の対象ＵＲＬが見つけられた場合、エンドユーザは、入手可能な対象アプリケーション又は対象アプリケーションバージョンのうちダウンロードしたいものを更に問い合わせされる。エンドユーザが入手可能な対象アプリケーション／対象アプリケーションバージョンのいずれもダウンロードしたくない場合、ステップＳ７１０に進み、エンドユーザは、受信したGeneric Controlレコード１が処理されないこと、すなわち換言すると、宛先デバイスがGeneric Controlレコード１を送出したいずれの発信元デバイスから受信した情報も理解できないことを通知される。しかし、エンドユーザが対象アプリケーション／特定の対象アプリケーションバージョンをダウンロードすることを選択した場合、ステップＳ７１１に進む。
【０１１１】
Ｓ７１１：アプリケーションダウンローダ１９が開始される。
【０１１２】
Ｓ７１２：アプリケーションダウンローダ１９は選択された対象ＵＲＬに接続し、対象アプリケーションに対するインストールファイル５１がダウンロードされる。
【０１１３】
Ｓ７１３：対象アプリケーションは、ダウンロードされたインストールファイル５１を使用して宛先デバイスにインストールされる。
【０１１４】
Ｓ７１４：RTDハンドラ１３は、対象アプリケーションが宛先デバイスにインストールされ且つ開始される準備が整っていることを通知される。
【図１Ａ】
0005296221.tif 000002
【図１Ｂ】
0005296221.tif 000003
【図２】
0005296221.tif 000004
【図４】
0005296221.tif 000005
【図６】
0005296221.tif 000006
【図３】
0005296221.tif 000007
【図５】
0005296221.tif 000008
【図７】
0005296221.tif 000009