一般に、例示され、記載された実施形態は、位置固有のコンテンツを提供するようアクセス制御ゲートウェイに要求することなく、こうしたコンテンツを、分散サーバ・ネットワーク(インターネットなど)に接続されているパーソナル・コンピューティング装置PCDに提供するための方法、システム、およびコンピュータ・プログラム製品を提供する。位置固有(およびユーザ固有)のコンテンツ/サービスは、位置識別子およびコンテンツ取得LICRサーバの位置データベースおよび位置検索ユーティリティを使用することによって、クライアント−サーバ・アーキテクチャによって提供される。具体的には、PCD上で実行されるユーティリティは、PCD位置パラメータをLICRサーバに提供し、LICRサーバは、位置検索エンジン/機能、および位置コンテンツ取得エンジン/機能(いずれもLICRユーティリティ内)を備えており、位置固有およびユーザ固有のコンテンツをPCDに提供することによって応答する。
PCDは、図3に示されているものなど、分散サーバ・ネットワークにおいて、(図6に示されているような)LICRユーティリティを実装する事前にプログラムされた(および事前に識別された)LICRサーバから位置固有のコンテンツ/サービスを別々に取得するよう構成されている。固有の機能的特性は、図4A、4Bによって示されるものなど、顧客のパーソナル・コンピューティング装置PCD例、および図5によって示されるものなど、LICRサーバ例によって実行される1つまたは複数のユーティリティによって提供される。
本発明の実施形態例の以下の詳細な説明において、本発明が実施され得る特定の実施形態例について、当業者が本発明を実施することができるほど十分詳しく説明する。他の実施形態を使用することができること、および本発明の精神または範囲から逸脱することなく、論理的、構造的、プログラム的、機械的、電気的、および他の変更を加えることができることを理解されたい。したがって、以下の詳細な説明は、限定的な意味にとられるものではなく、本発明の範囲は、添付の特許請求の範囲によってのみ定義される。
図の説明の中で、類似の要素には、前の図のものと類似の名前および参照番号が付されている。後の図で、要素を異なる状況でまたは異なる機能と共に使用する場合、この要素には、図面番号を表す異なる先頭番号が付される(例えば、図1では1xx、図2では2xx)。要素に付される特定の数字は、単に説明を助けるために提供されているにすぎず、本発明の制限(構造的または機能的)を含意するものではない。
特定の構成要素、装置、および/またはパラメータ名の使用は、例示にすぎず、本発明の制限を含意するものではないことを理解されたい。したがって、本発明は、様々な学術用語/専門用語を、本明細書における構成要素/装置/パラメータを説明するために制限なく使用して実装され得る。本明細書で使用される各用語は、その用語が使用される文脈を考慮して、最も広い解釈が提供されるものとする。例えば、本明細書で使用される場合、位置固有のコンテンツとは、PCDに近接する地理的な位置内に存在する建物、会社、通り、人物、装置、サービス、ストア/ショップなどに関連する任意のタイプの情報を指す。その時、近接は、LICRサーバによって、または場合によってはPCDのユーザによって、PCDの位置および/またはネットワークへのPCDのアクセス・ポイントの位置から定義された距離(例えば3マイル)以内として定義される。
次に図を参照すると、図3は、実施形態例による、PCD310または携帯電話350によって表されるクライアントを含むクライアント−サーバ・ネットワーク例を示す。ネットワーク300は、ネットワーク・バックボーン(またはインフラストラクチャ)312を含み、ネットワーク・バックボーンには、LICRサーバ315、およびそのうちのWebサーバ305が示されている分散された複数のWebサーバが結合されている。
ネットワーク300は、分散サーバ・システムを表す。ネットワーク・インフラストラクチャ312は、有線ネットワーク、無線ネットワーク、または有線および無線ネットワークの組み合わせを含み得る。例えば、ネットワーク・インフラストラクチャ312は、複数のWebサーバ(305)のそれぞれを接続する標準「有線」Ethernet(登録商標)ネットワークとすることができる。ネットワーク・インフラストラクチャ312は、IEEE802.11または他の無線プロトコルに基づく無線ネットワークとすることもできる。ネットワーク・インフラストラクチャ312は、インターネット325に接続された状態で示されている。ネットワーク・インフラストラクチャ312は、インターネット325の一部を形成し得る、または他のネットワーク、例えば他のローカル・エリア・ネットワークや広域ネットワークなど、例えばインターネット325に結合することができることを理解されたい。
後述するように、LICRサーバ315は、ISPを介してインターネット325に直接接続されるか、Webサーバのアクセス・ポイント・ゲートウェイ307を介して間接的に接続されるかにかかわらず、ネットワーク300に接続された任意のPCD310からアクセス可能である。さらに、LICRサーバ315は、次いでネットワーク300に接続される無線ネットワーク360を介して接続された任意の移動通信装置(セルラー式電話)350からもアクセス可能である。移動通信装置350は、無線通信を基地局(アンテナ355および移動局コントローラMSC357を有する)に送信し、基地局は、無線ネットワーク350を介してその無線通信を中継する。LICRサーバ315は、ネットワーク300に接続されたPCDによる要求によって取得され得る位置固有のコンテンツ/サービス/情報の主要供給源である。LICRサーバ315は、関連のデータベース370を有し、このデータベースは、記載した実施形態の様々なサーバレベルの機能を実行するために使用される位置固有のコンテンツおよび他の情報/データを格納する。
図示されているように、ネットワーク300は、Webサーバ305に関連付けられており、PCD310が接続されているネットワーク配信ユニット(network distribution unit:NDU)またはアクセス装置307を含む。PCD310は、無線および/または有線接続を介してアクセス装置307に接続され得る。可能な無線接続の例には、CDMA、FDMA、およびTDMA(すべて多元接続方式)などがある。これらのアクセス装置によって、パーソナル・コンピューティング装置PCDを有するモバイル・ユーザは、インターネット・アクセスなどのネットワーク・サービス、または分散ネットワークのサーバにホストされた他のWebでサービス提供可能なコンテンツへのアクセス権を得ることができる。
アクセス装置は、802.11無線Ethernet(登録商標)プロトコル(「WiFi」)またはハードワイヤードEthernet(登録商標)接続ポートを実装する無線アクセス・ポイントとして提供され得る。複数のアクセス装置(NDU)307は、PCDが異なる複数の場所からネットワーク、および主にインターネット325に接続できるように、空港、大量輸送交通機関の駅、ショッピング・モール、レストラン、および他の会社、例えば事務所、法律事務所、小売店、ホテルなど様々な施設に広範に分散され得ることを理解されたい。各アクセス装置は、関連のIPアドレスおよび/または媒体アクセス制御MACアドレスを有する。
1つまたは複数のインターネット・サービス・プロバイダISP330または一般のコンテンツ・プロバイダも、(その地域のNDUを介して)インターネット325への直接アクセスをPCD310Bに提供することができる。ISP330は、インターネット125に直接結合されるネットワーク・サーバである。ISP330は、サービス・プロバイダに対応して、様々な商品、情報、および/またはサービスを提供するよう構成/プログラムされた1つまたは複数のサーバを含み得る。ISP300の各NDUも、関連のIPアドレスおよび/またはMACアドレスを有する。
ネットワーク300は、例えば、PCD310から提供された地理的情報(例えば、GPS情報)によって示されるものなど、PCD310の既知の地理的な位置に少なくとも一部分基づいて、接続されたPCD310および/または電話350に情報および/またはサービスを提供することができる。特に、NDU/アクセス・ポイント307の位置に主に依存する以前の実装とは異なり、ネットワーク300の地理/位置ベースのサービスは、PCDが、初期接続プロセス中、既知のアクセス・ポイント307に接続したとき、Webサーバ305によって提供され得る位置ベースの情報に関係なく、またはそれに加えて、PCD310(または電話350)の新しい構成およびLICRサーバ315の使用によって提供される。
次に図4Aを参照すると、PCD310の1つとして動作し得るデータ処理システム例が示されている。本明細書で使用される場合、PCDという用語は、ポータブル・コンピュータなどのコンピュータ・システム、個人用デジタル補助装置PDA、インターネット・アプライアンス、ゲーム装置、セルラー式電話、デジタル無線電話などの通信装置、または他の有線または無線の装置を含めて、任意の1つの、または様々なタイプの装置を意味する。簡潔にするために、システムは、一般にPCD310と記載され、PCD310内の特定の用途の機能は、PCD310のプロセッサ上で実行されるソフトウェア・プログラム(コード)によって決定される。図4AにおけるPCDの構成は、一般に、コンピュータ・ベースの装置に適用される。図4Bは、PCDがセルラー式電話などの移動通信装置であるときのPCDの異なる構成を示している。
図4Aによって示されるように、PCD310は、システム・バス(相互接続)415を介してメモリ420および入/出力(I/O)コントローラ430に結合されている中央処理装置410を含む。I/Oコントローラ430は、そのうちのポインティング装置(マウス)432、キーボード434、およびディスプレイ436が示されている様々な入力装置および出力装置の制御ポイントとして動作する。これらI/O装置によって、以下に記載されているように、PCD310のユーザは、入力を行い、位置情報の要求に応答し、位置固有のコンテンツ(その地域の地図を含めて)を閲覧することができる。
また、システム・バス415には、ネットワーク・インターフェイス・コントローラNIC450および(任意選択で)衛星利用測位システムGPS受信機455も結合されている。NIC450によって、PCD310は、アクセス・ポイント307および/またはISP330を介して、サーバ・ネットワーク312またはインターネット325に接続することができる(図3)。実装に応じて、NIC450は、無線装置または有線装置とすることができる。GPS受信機455は、PCD310の地理的な位置(またはGPS位置)のリアルタイムの決定を可能にする。後述するように、一実施形態では、この位置が実行中のユーティリティに提供され、このユーティリティは、PCDがネットワーク300、または具体的にはインターネット325に接続されると、この位置を、PCDから送信される位置パラメータの一部として転送する。
PCD310は、他のストレージ460も含み、これは、システム・バス415に結合されている状態で示されている。記載された実施形態によれば、ストレージ460は、メモリ420にロードされ、PCD310によるプログラムおよび/またはユーティリティの実行に/実行の間使用される命令/コード/データを含む。特に、ストレージ460は、GPS位置456、PCD識別子(ID)457、およびPCD(またはNDU)のIPアドレス458およびMACアドレス459を格納し、そのデータは、位置固有のコンテンツの取得を初期化/トリガするために、LICRサーバに送信される位置パラメータの一部として使用される。
PCD310の上述したハードウェア構成要素に加えて、本発明の機能的特性のいくつかは、PCD310のCPU410上で実行されるソフトウェア構成要素(すなわち、機能プログラム・コードまたはユーティリティ)を介して提供される。したがって、示されているように、メモリ420内には、(a)ネットワーク接続および通信のためのインターネット・プロトコルIPパラメータを提供するオペレーティング・システム421、(b)PCD310が、ハイパーテキスト転送プロトコル(http)、高安全性http(secure http:https)、ファイル転送プロトコルFTP、ユニバーサル・データ・プロトコル(universal data protocol:udp)、および/または他の業界標準プロトコルを使用して、インターネット325からコンテンツにアクセスし、コンテンツを取得することができるブラウザ423、(c)位置固有のコンテンツ取得LSCRユーティリティ425、および(d)マッピング・ユーティリティ427を含むいくつかのソフトウェア構成要素またはユーティリティがある。この2つのユーティリティの後者および関連の機能的特性については、以下でより詳しく説明する。
上述したように、OS421は、PCD310の一般的な操作を可能にするための様々な動作パラメータを提供する。OS421は、Webブラウザ423と共に、ネットワーク・アクセス、およびネットワークを介した情報の転送に必要なIP(およびHTTP)機能を提供する。この2つの構成要素は、(a)AP(307)を介したサーバ305への接続、またはISP330を介したインターネット325への接続がPCD310によって確立される、および(b)アクセス・プロセスおよび他の一般的なWebブラウザ処理の認証、ログイン、および他の機能的特性が可能にされる/提供される、様々なプロセスをさらに可能にする。
実装において、上記の4つのソフトウェア構成要素によってサポートされている新しいプロセスの多くは、コードの単一の実行を介したシームレスな操作として提供される。また、本発明の説明を簡潔にするために、また好ましい一実施形態として、本明細書に記載されている様々な機能を実行するコード集合体、および/または実施形態例の記載された特徴(LSCRユーティリティ425およびマッピング・ユーティリティ427のすべての機能を含む)を、以下、まとめてLSCRユーティリティ425と呼ぶ。したがって、LSCRユーティリティ(またはその実行)への言及は、PCD310で行われる実施形態例によって提供される位置固有のコンテンツ取得機能の全範囲をカバーする。本明細書で記載されているように、LSCRユーティリティ425は、Webブラウザ機能へのアップグレードとして、PCD310にダウンロードされ、Webブラウザの動作/実行中、シームレスに稼働され、機能する。
LSCRユーティリティ425は、CPU410上で実行され、以下の図8の説明の中で示され、説明される一連の機能プロセスを提供する。一般に、LSCRユーティリティ425は、(1)LICRサーバがそこからアクセス可能なネットワークへのPCDの初期接続を検出する方法機能と、(2)PCDの位置パラメータを生成し、LICRサーバに送信する方法機能と、(3)位置固有のコンテンツ/情報/サービスを受信し、PCDのWebブラウザに提供する方法機能と、(4)LICRサーバから要求されると、(PCD位置パラメータに加えて)追加の位置識別情報を入力するよう指示する方法機能とを提供する。他の機能も、本明細書および図8のフローチャート内に記載されているようにサポートされる。
図4Bは、本発明の以下の記載された実施形態による、位置ベースのアプリケーションを可能にするのに必要な機能で構成される通信装置例(350)のブロック図である。実施形態例によれば、通信装置350は、セルラー式/携帯電話である。しかし、本発明の機能は、他のタイプの通信装置に適用可能であり、通信装置350の携帯電話としての例示およびその説明は、単に例示のために提供されるにすぎないことを理解されたい。例えば、通信装置は、個人用デジタル補助装置PDA、Blackberry(商標)、Ipod(登録商標)、iPhone(登録商標)、または位置ベースのコンテンツ取得および表示をサポートするための機能を備える他の類似の携帯装置とすることができる。同様に、携帯装置として示されているが、通信装置350は、図4AのPCD310のものと同じ機能を備える固定式のもの(例えばデスクトップ電話、車載用自動車電話など)とすることもできる。
ここで再度図4Bを参照すると、通信装置350は、メモリ421に接続されており、通信装置350の通信操作を制御する中央コントローラ405を含む。こうした操作の中には、音声およびデータ信号の生成、送信、受信、および復号が含まれる。図示されているように、コントローラ405は、アナログおよび/またはデジタル信号の受信および送信を処理するデジタル信号プロセッサDSP406を含む。コントローラ405は、通信装置350の全機能を制御するプログラム可能マイクロプロセッサ407も含む。個別の構成要素として示されているが、両方の構成要素によって提供される両方の機能は、単一の構成要素に統合されてもよいことを理解されたい。両方の構成要素の機能は、通信装置350の音声通信(およびデュアル・チャネル適応ノイズ消去)機能を提供するために、必要に応じて協調して動作することをさらに理解されたい。
通信装置350は、入力装置も含み、そのうちのキーパッド437およびマイクロフォン(mic)431がコントローラ405に接続されている状態で示されている。さらに、通信装置350は、スピーカ433およびオプションのディスプレイ435を含む出力装置を含み、これらもコントローラ405に接続されている。記載の入力装置および出力装置によって、ユーザは、通信装置350とインターフェイスをとることができる。
上記の構成要素に加えて、通信装置350は、アンテナ475に接続されているトランシーバ470をさらに含む。トランシーバ470は、アンテナ475との組み合わせで、通信装置350がワイヤレス無線周波数RF信号を通信装置350との間で送受信できるようにする。トランシーバ470は、RF信号を生成し、解読/変換するRF変調器/復調器回路(図示せず)を含む。
通信装置350は、GSM電話とすることができ、加入者識別モジュールSIMカード・アダプタ461を含み得る。SIMカード・アダプタ461は、SIMカード465をコントローラ405に結合する。SIMカード465は、そのSIMカード465が関連付けられている特定のユーザの固有のユーザ・プロファイル・データを格納するための記憶装置として使用することができる。好ましい実施形態において、通信装置350は、デュアル・モード装置であり、無線セルラー通信、および無線IP(インターネット・プロトコル)通信を介して通信することができる。通信装置350が使用されるとき、ネットワークへの接続は、数ある中でも、セルラー、デジタル、または赤外線通信技術を使用する無線通信を介して完了され得る。
図4Bに記載されているハードウェアは、実装に応じて変わり得ることを、当業者であれば理解されよう。したがって、示された例は、単に例示のためのものであり、本発明に関して、構造的な制限を含意するものではない。
図4AのPCD310と同様に、上記のハードウェア構成要素に加えて、通信装置350のいくつかの機能および本発明の固有の特徴は、メモリ421内に格納され、コントローラ405内のマイクロプロセッサ407(またはDSP406)によって実行されるプログラム可能なコードまたはロジックとして提供され得る。記載された実施形態の機能的特性をまとめて提供するコードおよび/またはロジックの組み合わせは、本明細書では、図4Aを参照して上述したLSCRユーティリティ425と呼ばれる。
図5は、一実施形態によるLICRサーバ例を示す。上述したように、システムは、一般に、位置識別子およびコンテンツ取得LICRサーバ315と記載され、LICRサーバ315内の特定の用途の機能は、サーバ315のプロセッサ上で実行されるソフトウェア・プログラム(コード)によって決定される。一実施形態では、LICRサーバは、標準サーバ機能を備えるネットワーク上の標準サーバであり、LICRユーティリティでプログラムされており、代替実施形態では、LICRサーバは、LICRユーティリティの固有の機能を提供するために、ネットワークに追加された専用のサーバである。
図示されるように、サーバ315は、システム・バス(相互接続)515を介してメモリ520および入/出力(I/O)コントローラ530に結合されている中央処理装置510を含む。I/Oコントローラ530は、一般にI/O装置535と表される様々な入力装置および出力装置の制御ポイントとして動作する。こうしたI/O装置によって、LICRサーバ315の管理者は、サーバ315の永続ストレージ(570)に格納されているサービス提供可能なコンテンツおよび/または他の情報を(ローカルに)ロードし、かつ/または変更することができる。
サーバ315は、他のストレージ570も含み、これは、システム・バス515に結合されている状態で示されている。記載した実施形態によれば、ストレージ570は、IP−位置データベース572(PCDがネットワークに接続するポイントの既知のLPアドレスに基づいた固有の地理的な位置の検索を可能にする)、媒体アクセス制御MACデータベース573(NDU307のMACアドレスを使用して、ユーザの位置を検索する)、ユーザ・プロファイル・データベース574(PCDのユーザがPCDに戻されることを望むコンテンツのタイプ/カテゴリのユーザ選好および選択の設定を可能にする)、および位置コンテンツ・データベース576(PCDの位置および/またはユーザ選好に基づいてPCDに選択的に戻され得る、複数のユーザ位置にわたって使用可能な選択可能なコンテンツの一般的なリストを提供する)を含む、いくつかのデータベースを含む。実施形態例は、ローカルに接続されたストレージ570を提供する。しかし、ストレージ570、および例示として、様々なデータベース(572、574、576)は、他の実施形態において、サーバ315から離れて(場合によってネットワークを介してアクセス可能に)配置され得る。
これらのデータベースは、本明細書に記載されているサーバレベルの位置固有の特徴を完了するために、サーバ315によって使用される特定の情報を提供する。一実施形態において、例えば、ユーザ・プロファイル・データベース574は、ユーザのPCDから取得され、それに戻される、一般のコンテンツからの位置固有のコンテンツのタイプの選好を決定するために使用される、(LICRサーバ315に登録され得る)ユーザの個人情報を維持する。個人情報の例には、それだけには限定されないが、名前、オンライン名/識別、住所、電話番号および電子メールアドレスなどの連絡先情報、日課表、家族、趣味/活動、スポーツ、過去の購入歴、消費性向、購入の好み、ホテルの好み、レストランの好み、レンタカーの好み、銀行、会員資格(例えば、航空優待会員)、協会、過去の活動などの情報が含まれる。次いで、こうした様々な個人情報のうちの1つまたは複数は、特定の位置にあるユーザのPCDに戻される位置固有のコンテンツの検索をフィルタ処理するために使用され得る。
システム・バス515には、ネットワーク・インターフェイス・コントローラNIC550も結合されており、それによってサーバ315は、ネットワーク(例えばネットワーク312またはインターネット325)を介して他の装置(PCD310など)に接続し、それと通信する。
サーバ315の上述したハードウェア(およびデータベース・タイプの)構成要素に加えて、本発明の機能的特性のいくつかは、サーバ315のCPU510上で実行されるソフトウェア構成要素(すなわち、機能プログラム・コードまたはユーティリティ)を介して提供される。したがって、示されているように、メモリ520内には、(a)ネットワーク接続および通信のためのインターネット・プロトコルIPパラメータを提供するオペレーティング・システム521、(b)サーバ315がネットワーク・サーバとして動作し、ネットワーク300(図3)を介してPCDと通信することができるネットワーク・サーバ・プロトコル523、(c)位置識別およびコンテンツ取得LICRユーティリティ525、および(d)地図生成ユーティリティ527を含む他のいくつかのソフトウェア構成要素またはユーティリティがある。代替実施形態では、地図生成ユーティリティ527の機能を、個別のユーティリティとしてではなく、LICRユーティリティ525内に設けることができる。この実施形態は、本明細書に記載されるものである。
上述したように、OS521は、サーバ315の一般的な操作を可能にするための様々な動作パラメータを提供する。OS521は、サーバ・プロトコル523と共に、ネットワーク・アクセス、および様々なネットワークを介した情報の転送に必要なIP(およびHTTP)機能を提供する。これら2つの構成要素は、LICRユーティリティ525と共に、(a)PCDの位置を識別するために、位置識別情報がPCD(310)から受信され、サーバ315によって評価される、および(b)おそらく認証、ログイン、および/または他の稼働機能の後、位置固有のコンテンツ/サービスがサーバ315からPCD310に提供される、様々なプロセスを可能にする。
実装において、上記の4つのソフトウェア構成要素によってサポートされている新しいプロセスの多くは、コードの単一の実行を介したシームレスな操作として提供される。本発明の説明を簡潔にするために、また代替実施形態として、本明細書に記載されている様々なサーバレベルの機能、および/または実施形態例の記載された特徴を実行するコード集合体を、以下、LICRユーティリティ525と呼ぶ。したがって、LICRユーティリティ(またはその実行)への言及は、実施形態例によって提供される、LICRサーバ315で行われる機能の全範囲をカバーする。LICRユーティリティ525は、CPU510上で実行され、以下の図9のフローチャートの説明の中で示され、説明される一連の機能プロセスを提供する。一般に、LICRユーティリティ525は、(1)ネットワークを介して接続されるPCDからPCD位置パラメータを受信する方法機能と、(2)受信された位置情報からPCDの位置を識別する方法機能と、(3)PCDに関連付けられている顧客プロファイル(または選好)を取得する方法機能と、(4)顧客の選好に関連する識別された位置に関連付けられている固有のコンテンツを取得する方法機能と、(5)PCDに関して、サービスの固有の位置および他のコンテンツを示す地図を生成する方法機能と、(6)固有の位置ベースのコンテンツ(およびその関連の地図)をPCDに転送する方法機能とを提供する。追加の機能をLICRユーティリティ525によって提供することもでき、その一部は、図9のフローチャート内に記載されている。
図6は、PCD310内のアプリケーション(すなわち、LSCRユーティリティ425)と、LICRサーバ315の構成要素、すなわち位置識別構成要素525Aおよびアプリケーション・サーバ構成要素525B(すなわち、LICRユーティリティ525の機能)との間の情報交換例を示す。図示されているように、PCD310は、取得された位置固有のコンテンツおよび位置識別パラメータを格納するためのローカル・データ・キャッシュ(ストレージ460)も含む。構成要素525Aおよび525Bは、2つのタイプの情報データベース、すなわち、顧客情報(またはプロファイル)データベース(574)および位置情報(またはコンテンツ)データベース(576)のうちの一方に接続し、そこから情報を取得する。PCD構成要素とLICRサーバ構成要素との間のこの情報の対話/交換によって、本明細書に記載されている実施形態の機能的特性が可能になる。
PCD310(図4)およびサーバ315(図5)の上記の構成、および図6に示されている両方の装置の機能構成要素の相互接続により、固有のアクセス・ポイント、ゲートウェイ、またはアクセスWebサーバを必要とすることなく、LICRサーバ315から取得された情報を使用して、位置固有のコンテンツがPCD310に提供される。すなわち、本発明の記載された様々な実施形態は、アクセス・ポイント・ゲートウェイ(図1)における初期接続プロセス中のみ、位置ベースのコンテンツを提供することの制限を回避/克服する。記載された実施形態によれば、位置固有のサービスを提供するアプリケーション/ユーティリティ(425)は、アクセス・ゲートウェイ上ではなく、PCD上に配置される。エンジン/ユーティリティは、スタンドアロン・クライアント・プログラムとすることができ、代替実装形態では、エンジン/ユーティリティは、Java(登録商標)、Flash、Active−Xプラグイン、または類似のWebブラウザ・プラグイン技術を使用したブラウザ・プラグインとすることができる。
インターネット(またはLICRサーバがアクセス可能なネットワーク)への接続後、ユーティリティ(425)は、アクセス・ポイントのIPアドレスを取得し、LICRサーバ315と通信する。一実施形態によれば、ユーティリティは、PCD310のローカル・データ・キャッシュ(460)に格納されている装置のIPアドレス、装置/ユーザ識別(ID)、およびプロファイル(選好)など、PCD位置パラメータを伝える。LICRサーバ315は、位置情報(例えばネットワーク/インターネットへのPCD接続のIPアドレスなど)を検査し、サーバの位置情報データベース(572)において、既知の位置に対するその位置情報(IPアドレス)の検索を行う。LICRサーバ315は、顧客情報データベース574にもアクセスする。
次にフローチャートを参照すると、図7は、一実施形態による、本発明のPCDレベルのプロセスが実施される方法を示す。次いで図9は、本発明のサーバレベルのプロセスが実施される方法を示す。具体的には、明確な「新しい」ユーティリティがプロセスを制御することなく、本発明を実施する(すなわち、既存のアプリケーションまたはユーティリティへの強化を介して実施する)ことができるが、図7および図9によって示されているプロセスは、それぞれLSCRユーティリティ425およびLICRユーティリティ525によって完了されるとみなされる。図8を参照すると、本実施形態に従って、LICRサーバ315がそれを介してアクセス可能であることがわかっているネットワーク(300)にPCD310が結合されていることをPCD310のWebブラウザが検出したときはいつでも、LSCRユーティリティ425は、PCD310上で実行される。LIBCユーティリティは、PCDがLICRサーバに、位置固有のコンテンツの要求、またはPCDの位置パラメータの受信の単なる通知を送信するときはいつでも実行される。図7および図9に示されている方法は、図3〜6に示されている構成要素/装置を参照して記載され得るが、これは単に便宜上であり、方法を実施するとき、代替構成要素/装置、および/またはその構成を使用することができることを理解されたい。
図7のPCDレベルのプロセスは、ブロック701で開始し、ブロック703に進み、そこでPCDがネットワークに接続し、NDUなどのアクセス位置/装置からIPおよび/またはMACアドレス情報を取得する。代替実装形態では、NDUのIP/MACアドレスは、PCD内に格納され、PCDがアクセス位置を変更するにつれて更新される。LSCRユーティリティは、(おそらく、PCDにおいてWebブラウザが開かれると)稼働され、ブロック705に示されるように、PCD位置パラメータをLICRサーバに送信する。LSCRユーティリティは、ネットワーク上のLICRサーバのIPアドレスで事前にプログラムされている。したがって、ネットワーク接続が検出されると、PCD位置パラメータ(数ある中でも、ネットワークへの接続ポイントのIPアドレス、NDU307のMACアドレス、PCDのGPS座標、PCDのIPアドレス、PCDユーザ・プロファイル/選好のうちの1つまたは複数を含む)は、自動的にそのIPアドレスに送信される。
上述したように、PCD位置は、PCDがネットワーク/インターネットに接続するアクセス・ポイントのIPアドレスによって決定され得る。LSCRユーティリティに位置(例えば地理的)情報が提供されると、アプリケーションは、その情報を、位置ベースのサービスを提供するLICRサーバ315に送信することができる。
一実施形態において、PCDによって受信された位置情報は、変換されるRFC−1918プライベート・アドレスである。これが行われると、LSCRユーティリティ内の検索エンジンは、アクセス位置のWAN IPアドレスを検査する。IPアドレスがパブリック・アドレスである場合、LSCRユーティリティ(PCDアプリケーション)は、サブネットを検査し(例えばARPを介して)、位置についてのIPブロック情報をLICRサーバに送信する。さらに、NDU307のMACアドレスは、MAC−位置データベース573における検索のために送信され、または位置コンテンツ・データベース576におけるローカル・キャッシュ検出に使用される。
PCD位置パラメータの送信後、ステップ707で、LICRサーバから、PCDの位置についての追加の位置情報の要求が受信されたかどうかの決定が行われる。こうした要求が受信されると、ユーティリティは、ブロック717で、LICRサーバがPCDの位置を決定することができるための固有の位置情報のPCDユーザによる入力についてのプロンプトを生成する。一実施形態において、ユーザは、検出された/デフォルトのパラメータに、ユーザにとって興味のありそうな異なる位置の位置ID(例えば、ユーザがその位置に到着し、位置固有のコンテンツを取得するために、その位置でネットワーク/インターネット接続を確立するまで待ちたくない場合、ユーザが向かっている宛先など)をオーバーライドすることができる。
ブロック717から、ブロック719で、要求された位置情報が受信されたかどうかについての次の決定が行われる。情報が受信されていない(場合によっては、事前に設定されたタイムアウト期間内)場合、プロセスは、位置固有のコンテンツが取得されることなく、端末ブロック721で終了する。要求された情報が受信された場合、プロセスはブロック705に戻り、入力された情報がLICRサーバに送信される。
決定ブロック707に戻って、追加の情報についての要求が受信されないと仮定すると、ブロック709で、LICRサーバから位置固有のコンテンツが受信されたかどうかについての次の決定が行われる。情報が受信されていない(場合によっては、事前に設定されたタイムアウト期間内)場合、プロセスは、位置固有のコンテンツが取得されることなく、ブロック721で終了する。しかし、情報が受信されたと仮定すると、受信された情報は、ブロック711に示されるように、Webブラウザ上に出力される。ブロック713で、受信された位置情報についての地図生成機能が提供/使用可能にされたかどうかについての決定が行われる。地図生成機能が提供され/使用可能にされた場合、ブロック715に示されるように、周囲の位置における関連の情報(例えばサーバ)の地図が生成され、表示される。次いで、プロセスは、ブロック721で終了する。
上述したように、LICRサーバから戻された位置固有の情報は、図8の地図800などの地図を含み得る。地図800は、サーバのマッピング・ユーティリティ427またはPCDのマッピング・ユーティリティ527のうちの一方によって作成され、提供される。前者の実装において、情報が提供され、次いでマッピング・ユーティリティ427は、情報を地図800上に表す。地図800内の情報は、PCDおよびPCDの位置の初期識別後の異なるときに提示される時宜を得た情報として、詳細に提示され得る。
一例として、図8は、PCD位置810が「me」と示されている地図800を提供する。PCD位置810の周囲には、レストラン(チリ)835、喫茶店(スターバックス)840、郵便局845、およびジム850を含めて、通りおよび会社/サービスが区分されている。また、特定のユーザ(ユーザのスクリーン・ネームによって示される)がネットワークに接続される他のアプリケーション・タイプの例を提供するアイコンも示されている。こうしたアプリケーション・アイコンには、Nintendo815、AOL IM820、およびSkype825などがある。
提供されているように、マッピング機能によって、他のユーザの位置が、その地域の地図または図上に表示され、示されるようにすることができる。この機能は、例えば、インターネットベースのゲーム狂が、インターネットに接続し、ブロック下で、または異なる場所で、誰かとゲームしているかどうかを知りたいゲームに使用することができる。LICRサーバは、現在接続されているPCDおよび対応するPCDの位置についての情報を格納し、相対的な位置が提供されるように、その情報をPCDに戻す。例えば、ゲーム狂は、接続され、プレイする用意ができている人が近傍に何人いるかをブラウズすることができる。別の例として、ユーザは、チャット・プログラムまたはVOIPサービス、例えばSkype(商標)などを使用している場合、ある人物がユーザの近隣で接続されているかどうかを確かめ、顔を突き合わせての会議の手配をすることを望む場合がある。他の例では、PCDユーザは、AOL IM、Microsoft Messenger、Jabberなどのインスタント・メッセージングを使用して、位置内の他のどのユーザがオンラインであるかを見ることに興味がある場合もある。
さらに別の実施形態において、LICRサーバから提供された情報は、PCD(またはユーザ)および関連のユーザ・アプリケーションのリストを提供する表を含み得る。以下の表1は、LICRサーバによってPCDに提供され得る情報の表の一例を示す。表によって示されるように、提供される情報の中には、距離、ユーザ、市、およびアプリケーション・タイプがある。あるいは、図8によって示されるように、様々なユーザ位置、スクリーン・ネーム、およびアプリケーション・タイプを含む、より精巧な地図を表示することができる。
次に図9を参照すると、サーバレベルのプロセスがブロック901で開始し、ブロック903に進み、そこでLICRサーバがPCDからPCD位置パラメータを受信する。ブロック905で、サーバは、受信したPCD位置パラメータを使用して、IP−位置データベース572(図5)からIPアドレス(またはGPS座標)、またはMAC−位置データベース573からMACアドレスに一致する位置を検索する。PCDから提供された情報に応じて、位置検索プロセスを完了するのに必要な追加の処理がいくつかあり得る。ブロック907で、ユーティリティは、一致する位置が検出されたかどうかを決定し、検出されない場合、ブロック909で示されるように、追加の位置情報データについての要求/信号を生成し、PCDに送信する。
したがって、一実装形態において、LICRサーバ上のLICRユーティリティは、IPアドレスを使用して、後述するようにIPアドレス情報を位置データベース(572)内の既知の位置情報と照合することによって、位置情報を検索する。次いで、LICRサーバ315は、LSCRユーティリティがPCDを使用している顧客の地理的位置がわかるように、位置情報をLSCRユーティリティに戻し、この情報は、PCDローカル・キャッシュに格納される。
位置情報編集ツールは、ユーザ・プロファイル情報(例えば選好)を最初に埋め、編集するのを助け、PCD(および/またはNDU)位置情報を更新するためのLSCRおよび/またはLICRユーティリティの関数として、PCDユーザに提供される。IPアドレスは、時間が経つにつれていくつかの位置に変わり得るため、システムおよび方法は、IP−位置情報および/またはMAC−位置情報で初期データベースを埋め、IPアドレスが変更されているかどうかを検出し、情報が誤っている場合、IP−位置情報および/またはMAC−位置情報を編集することができなければならない。
チェックを容易にするために、インターネットへの接続のためのNDU(またはアクセス・ポイント)のマシン(MAC)アドレスおよび/またはIPアドレスを、LICRサーバに送信することができる。MACアドレスのMAC−位置データベース内の位置との一致は、情報をチェックするために使用することができる。GPS情報など他の情報がPCDで使用可能である場合、この情報も送信し、前の入力と比較することができる。MAC/IPマッピングまたはGPS情報が位置データベース内の前の入力と一致しない場合、位置情報をチェックし、その情報を訂正するために、位置データベースにおいて、エラーがトリガされ得る。したがって、PCDのユーザからのその情報についてのプロンプトをトリガするために、信号が生成され、要求側PCDに戻される。次いでPCDユーザは、位置情報による応答を提供し、あるいは、PCDがGPS受信機および/または他の位置検出機構を有している場合、ユーティリティは、位置情報によりこうした要求に動的に応答することができ、この位置情報は、次いでLICRサーバによって位置情報と共に受信されるIPアドレスおよび/またはMACアドレスと照合される。この照合は、次いで、LICRサーバのデータベースのうちの適切な1つに更新として格納される。ユーザ入力が提供されると、入力は、数ある情報の中でも、位置の周辺内の通りの住所、郵便番号、会社名(McDonaldなど)、興味のありそうなポイントなど、特定の情報を含み得る。したがって、ユーザは、特定の位置におけるユーザ自身または他のユーザによる関連する位置固有の情報を後で取得するために、LICRサーバのデータベースを(サイト情報で)埋めるのを助けることができる。
一実施形態において、位置固有のデータの最初の組、およびIP−位置およびMAC−位置情報(例えばNDUについての)は、位置データベース内に提供され、位置データベースは、位置データベース内の情報のその後の(または定期的な)更新、およびそれへの追加も受信する。また、ユーザ・プロファイルは、LSCRユーティリティがPCD上で実行されるとき、PCDユーザによってユーザ・プロファイル・データベース内に埋め込まれる。データベースが、位置固有の情報、ユーザ・プロファイル、ならびに新しいおよび更新された位置識別パラメータ(IPアドレスの一致およびMACアドレスの一致)でどんどん埋められるにつれて、PCDおよび/またはLICRサーバのより正確な位置固有およびユーザ固有の情報を提供する能力は高まる。
位置を編集/更新する能力に加えて、LICRユーティリティは、PCDユーザがユーザ・プロファイル・データベース574(図5)内でユーザ・プロファイルをセットアップし、変更/維持することができる機能も提供する。このデータベース(574)内で、ユーザは、「バスケットボール」、「ピザ」、「ジャズ」などを好きであることの表示などの選好を含めて、プロファイルを入力することができる。これら固有の選好の入力は、広告、特別なイベント、または興味のありそうなその地域のポイントがユーザに向けられるのを可能にする。また、ユーザは、オンライン識別(ニックネーム、スクリーン・ネーム、または「ハンドル」)を使用することを望む場合があり、この場合、こうした識別データは、例えば図8の地図によって示されるように、位置情報内に表示される。さらに、ユーザは、様々なアプリケーションまたはプロトコルについて、ユーザが他者から可視であるかどうかについての選好を入力することができ、またユーザは、異なるアプリケーションについて異なるオンライン識別を有していてもよく、または、全員ではなく、他のユーザのある選択群のみに各自のオンライン・プレゼンスを示すことを選択することもできる。これらの特徴は、ユーザがユーザ・プロファイル・マネージャ機能を実行するLSCRユーティリティおよび/またはLICRユーティリティを使用することによって変更することができる。したがって、識別された位置における一般の全コンテンツのリストを受信するだけではなく、一実施形態では、LICRサーバの顧客情報のデータベース(ユーザ・プロファイル・データベース574)に送信され、PCDユーザに無関係の、または望まれていないコンテンツをフィルタ処理するための情報を、顧客がPCDで入力できるようにしている。
別の実施形態において、LSCRユーティリティは、LICRサーバから取得する特定のタイプのコンテンツについてのクエリのリアルタイム入力をサポートすることができる。このように提供され得る、顧客が望むサービスの例には、その地域の広告、その地域の地図、その地域の連絡先情報、その地域の会社、その地域の天気、その地域の興味のありそうなポイントなどがある。顧客が「近くのATM機を表示」などのクエリを入力できるように、この情報に、その地域の会社またはサービスを提供することができ、LICRサーバは、PCDに対して、位置、住所、および距離のリストで応答することができる。この情報は、PCDがある位置を基準とした位置を示す便利な地図または図(図8によって提供されるような)に表示することができる。
次に図9を参照すると、一致する位置が検出された場合、ユーティリティは、ブロック911に示されるように、(ユーザ・プロファイル・データベース574から)顧客プロファイルおよび(位置コンテンツ・データベース576から)対応する位置コンテンツを取得する。ブロック913に示されるように、ユーティリティは、顧客の選好(およびプロファイル内の他の情報)をコンテンツのより大きい集合と照合し、顧客プロファイル内の情報に基づいて、位置コンテンツのより大きい集合から適切な位置コンテンツを選択する。一実施形態において、PCD(またはPCDユーザ)は、事前にLICRサーバに登録し、PCDのユーザによって興味のあるコンテンツのタイプ(すなわち選好)についての特定の情報を提供する。こうした選好は、顧客プロファイル内に格納され、ユーザのログイン名、および/またはPCDのMACアドレスまたは他の一意のIDによって識別される。一実装は、PCDにおけるLSCRユーティリティのセットアップ中、ユーザの選好がPCDで入力されることを伴い得る。次いで、取得されたより大きい1組の位置固有の情報をフィルタ処理し、関連の(ユーザが望む)コンテンツのみをPCDに戻すために、この情報は、LICRサーバのPCD位置パラメータ内に転送され得る。
フローチャートに戻って、位置固有のコンテンツが識別され、位置コンテンツ・データベースから選択/取得され、フィルタ処理(適宜)されると、LICRユーティリティは、ブロック915に示されるように、コンテンツをPCD(またはPCD IPアドレス)に送信する。特に、情報は、PCDのディスプレイ上のWebブラウザ内に表示されるHTTP情報として転送され得る。次いでこのプロセスは、ブロック917で終了する。
上記のフローチャートにおいて、コンピュータ可読コードがコンピューティング装置上で実行されるときに一連のステップが実行されるように、方法のうちの1つまたは複数がコンピュータ可読コードを含むコンピュータ可読媒体に組み込まれる。一部の実装形態において、本発明の精神および範囲から逸脱することなく、方法のいくつかのステップが結合され、同時に、または異なる順序で実行され、場合によっては省略される。したがって、方法のステップは、特定の順序で記載され、示されているが、ステップの特定の順序の使用は、本発明のどんな制限も含意しないものとする。本発明の精神または範囲から逸脱することなく、ステップの順序に関して、変更を加えることができる。したがって、特定の順序の使用は、限定的な意味にとられるものではなく、本発明の範囲は、添付の特許請求の範囲によってのみ定義される。
様々な分散位置でインターネットに接続する顧客に提供されることが望ましい位置ベースのサービスが数多くある。こうしたサービスは、広告、道案内、特別奉仕品、コンテンツ、通信援助、その地域での支払い、および類似のサービスなどを含み得る。記載された実施形態の位置ベースのサービスは、アクセス制御ゲートウェイとの任意の対話を必要とすることなく、LICRサーバ(位置識別機能および位置コンテンツ取得機能を有する)と通信することができるPCDに依存する。したがって、上述した実施形態により提供されるように、位置固有の情報は、ISPおよびアクセス制御ゲートウェイに関係なく、PCDに提供される。実施形態は、アクセスのタイプまたは方法に関係なく、インターネット・アクセスを有する任意の位置に、位置ベースのサービスを提供できるようにするシステムおよび方法を提供する。上記の説明は、本発明の新しい特徴を実施するための実施形態例を提供する。上述した実施形態例への変形および変更を加えて、代替の実施形態も可能である。
したがって、上記で開示された実施形態は、位置固有のコンテンツを提供するようアクセス制御ゲートウェイに要求することなく、こうしたコンテンツを、分散サーバ・ネットワーク(インターネットなど)に接続されているパーソナル・コンピューティング装置PCDに提供するためのコンピューティング装置、コンピューティング装置内で実行する方法、およびコンピュータ・プログラム製品を提供する。位置固有(およびユーザ固有)のコンテンツ/サービスは、位置識別子およびコンテンツ取得LICRサーバの位置データベースおよび位置検索ユーティリティを使用することによって、クライアント−サーバ・アーキテクチャによって提供される。具体的には、PCD上で実行されるユーティリティは、PCD位置パラメータをLICRサーバに提供し、LICRサーバは、位置検索エンジン/機能、および位置コンテンツ取得エンジン/機能(いずれもLICRユーティリティ内)を備えており、位置固有およびユーザ固有のコンテンツをPCDに提供することによって応答する。
一実施形態において、コンピューティング装置は、アクセス装置を介したコンピューティング装置のネットワークへの接続を検出する位置固有のコンテンツ取得LSCRユーティリティを実行し、位置IDがネットワーク配信ユニットNDUのインターネット・プロトコルIPアドレスおよび媒体アクセス制御MACアドレスのうちの一方である場合、コンピューティング装置がネットワークに接続するNDUの位置識別子(ID)を取得する機能と、位置IDを1つまたは複数の位置パラメータのうちの1つとして提供する機能と、IP−位置データベースおよびMAC−位置データベースのうちの一方にアクセスすることによって、コンピューティング装置の現在の位置を決定するために、LICRサーバによって位置IDが使用される場合、1つまたは複数の位置パラメータを、ネットワーク上の事前に定義された位置識別子およびコンテンツ取得LICRサーバに関連付けられているネットワーク・アドレスに自動的に送信する機能と、送信された位置パラメータのうちの1つによって識別された位置に関連するコンテンツを有する応答を受信する機能と、応答内のコンテンツから位置固有の情報を提供する機能とを提供する。
一実施形態において、LSCRユーティリティは、データ処理装置によるネットワークへのアクセスを可能にするアクセス装置のアドレスを位置IPと識別する機能と、アドレスがRFC−1918プライベート・アドレスであるとき、コンピューティング装置の現在の位置を決定するために、IPアドレスがLICRサーバにおけるIPアドレス対位置データベース内で一致している場合、アドレスをIPアドレスに変換する機能と、アドレスがパブリック・アドレスであるとき、IPブロック情報について、アドレス解決プロトコルARPを介してサブネットを検査する機能と、IPブロック情報を位置IDとしてLICRサーバに送信する機能とをさらに提供する。
LICRサーバは、本発明のサーバ側の特徴を可能にする。LICRサーバは、プロセッサと、位置固有のデータを有し、プロセッサによってアクセス可能な1つまたは複数のデータベースへのアクセスと、サーバ側の機能を実行するために、プロセッサによって実行される固有のコードを含むLICR(サーバ)ユーティリティとを含む。これらの機能は、1つまたは複数の位置パラメータがコンピューティング装置のネットワーク・アクセス位置のインターネット・プロトコルIPアドレスおよび媒体アクセス制御MACのうちの少なくとも一方を含む場合、ネットワークを介して接続されるコンピューティング装置から1つまたは複数の位置パラメータを受信することと、IP−位置データベースおよびMAC−位置データベースのうちの一方にアクセスすることによって、1つまたは複数の位置パラメータからコンピューティング装置の位置を決定することと、一般に複数の位置に関連付けられているコンテンツのデータベースから位置に対応する位置固有のコンテンツを取得することと、位置固有のコンテンツをコンピューティング装置に転送することとを含む。
別の実施形態では、LICRサーバ・ユーティリティは、コンピューティング装置の位置に対応する位置IDについて、位置パラメータを構文解析し、位置IDがIPアドレスおよびMACアドレスのうちの一方である場合、位置IDを、それぞれ対応する位置に関連付けられている位置IDのデータベース内の複数の位置IDと比較するためのコードをさらに含み、比較することが、(a)位置IDがIPアドレスである場合、位置IDをIP−位置データベース内のIPアドレスと比較すること、および(b)位置IDがMACアドレスである場合、位置IDをMAC−位置データベース内のMACアドレスと比較することのうちの一方を含む。位置IDの一致が位置IDのデータベース内で検出された場合、ユーティリティは、コンピューティング装置の位置として対応する位置をさらに取得し、1つまたは複数の位置パラメータからコンピューティング装置の位置を決定できない場合、ユーティリティは、追加の位置ID情報についての要求を生成し、コンピューティング装置に要求を送信する。
本発明の実施形態におけるプロセスは、ソフトウェア、ファームウェア、またはハードウェアの任意の組み合わせを使用して実施することができることをさらに理解されたい。本発明をソフトウェアで実施する予備のステップとして、プログラミング・コード(ソフトウェアまたはファームウェア)は、一般に、固定式(ハード)ドライブ、ディスケット、光ディスク、磁気テープなど1つまたは複数の機械可読記憶媒体、ROM、PROM、SRAM、DRAM、フラッシュメモリなどの半導体メモリに格納され、それによって本発明による製品を作る。プログラミング・コードを含む製品は、記憶装置から直接コードを実行することによって、記憶装置からのコードをハードディスク、RAMなど別の記憶装置にコピーすることによって、またはデジタルおよびアナログ通信リンクなどの送信タイプ媒体を使用してリモート実行のためのコードを送信することによって使用される。本発明の方法は、本発明によるコードを含む1つまたは複数の機械可読記憶装置を、それに含まれるコードを実行するのに適切な処理ハードウェアと組み合わせることによって実施することができる。本発明を実施するための装置は、本発明に従って符号化されたプログラムへのネットワーク・アクセスを含むまたは有する1つまたは複数の処理装置およびストレージ・システムとすることができる。
したがって、本発明の実施形態例は、インストールされた(または実行された)ソフトウェアを備える十分に機能的なコンピュータ(サーバ)システムの文脈で記載されているが、本発明の実施形態例のソフトウェア態様は、様々な形のプログラム製品として配布することができること、および本発明の実施形態例は、配布を実際に行うために使用される特定のタイプの媒体にかかわらず、等しく適用されることを当業者であれば理解されることが重要である。一例として、媒体のタイプの包括的なリストには、フロッピー(登録商標)・ディスク、親指ドライブ、ハードディスク・ドライブ、CD−ROM、DVDなどの記録可能タイプ(有形)の媒体、ならびにデジタルおよびアナログ通信リンクなどの送信タイプの媒体がある。
本発明は、実施形態例を参照して記載されてきたが、様々な変更を加えることができること、および本発明の範囲から逸脱することなく、その要素の代わりに均等物を使用することができることを当業者であれば理解されたい。さらに、本発明の本質的な範囲から逸脱することなく、その特定のシステム、装置、または構成要素を本発明の教示に適合させるために、多くの変更を加えることができる。したがって、本発明は、本発明を実行するために開示された特定の実施形態に限定されるのではなく、添付の特許請求の範囲内に含まれるすべての実施形態を含むものとする。さらに、第1、第2などの用語の使用は、任意の順序または重要度を示すものではなく、第1、第2などの用語は、ある要素と別の要素とを区別するために使用される。
本発明は、特に、好ましい実施形態を参照して示され、記載されてきたが、本発明の精神および範囲から逸脱することなく、形態および詳細における様々な変更を加えることができることを当業者であれば理解されたい。