説明

メッセージングによる省略検索語に対する検索の有効化

データの検索、特に、メッセージングシステム、例えば、テキストメッセージングシステムを通じた複数の省略検索条件に基づく検索に関する技術を提供する。本発明は、問合せにおける省略検索語の使用を可能にするために部分インデックス作成を使用して検索問合せを処理するためのシステム及び方法である。モバイルデバイスは、ネットワーク上で検索要求(例えば、テキストメッセージ)をサーバに送信する。検索要求語は、特徴識別子の部分集合を含み、かつ部分インデックスとして作用することができる。検索要求は、付加的なコンテキスト含むことができる(例えば、レストラン又は交通手段のような望ましいサービス、又は付加的な地理的情報を指示するために)。サーバは、検索語を1つ又はそれよりも多くの地理的場所のような暫定検索結果に適合させ、次に、暫定結果に関する情報をモバイルデバイスに提供する。データベースの又はデータベースの1つ又はそれよりも多くのテーブル(例えば、地理的エリアに対する)の部分インデックス作成は、適合場所又はサービスの平均数、最大数、又は中間数に対して最小語サイズ(例えば、文字の最小数)を均衡化するように調節することができる。

【発明の詳細な説明】
【技術分野】
【0001】
関連出願への相互参照
本出願は、本明細書においてその全内容が引用により組み込まれている2007年11月30日出願の米国特許出願番号第11/948,873号からの優先権を主張するものである。
【0002】
本発明は、一般的に、データの検索に関し、より具体的に、網羅的ではないが、メッセージングシステム、例えば、テキストメッセージングシステムを通じた複数の省略検索条件に基づく検索に関する。
【背景技術】
【0003】
我々の日常生活に影響を及ぼす著しい変化が「インターネット」に起こっている。例えば、今日の社会では、モバイルコンピュータデバイスが、益々一般的になっている。携帯情報端末及びセルラー電話などのような多くのモバイルコンピュータデバイスは、ボイスメッセージ、電子メール、及びテキストメッセージなどを伝えるために、並びに「インターネット」を通じて情報を検索するために利用することができる。バス、列車、又は船でも、売買業者、レストラン、音楽、又はビジネスなどを検索するためにモバイルデバイスを使用している人を見るのは珍しいことではない。
【0004】
しかし、ユーザに関係のある情報に対する検索問合せを実行することは、依然として面倒である。多くの場合に、ユーザは、関連のある検索結果を取得するために、いくつかの検索問合せを実行するか又は不便なことに大量のデータを入力すべきである場合がある。無関係な検索結果は、ユーザが捜しているものを見つける可能性が低いことを意味し、これは、次に、ユーザから利益を得る売買業者又は他の企業に対する失われた機会へと変換されるであろう。従って、多くの企業は、検索結果をユーザに対してより便利で関係のあるものにするための新しい方法を求めている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】米国特許出願番号第11/948,873号
【発明の概要】
【発明が解決しようとする課題】
【0006】
検索結果は、データ入力、出力、及び/又は通信機能が制限された電子デバイスではユーザが取得及び/又は評価することが困難である可能性がある。例えば、一部の携帯電話は、制限されたキーパッド、小さな画面、及び/又はテキストメッセージング機能しか持たない。このようなデバイスは、「ショートメッセージサービス(SMS)」メッセージのようなショートテキストメッセージの処理に制限される場合がある。より高機能のデバイスによってさえも、ユーザが手動でブラウザを開き、検索サービスにナビゲートし、検索語を提出し、列挙された検索結果内を前や後ろに移動するのは、一般的に時間を消費する作業である。すなわち、これらの問題及びその他に関して本発明が作られたのである。
【課題を解決するための手段】
【0007】
以下の図面を参照して本発明の非制限的及び非網羅的な実施形態を説明する。図面では、同じ参照番号は、他に特に規定がなければ様々な図を通して同じ部分を指すものとする。
【0008】
本発明をより良く理解するために、添付図面に関連して読まれるものである以下の「発明を実施するための形態」を参照されたい。
【図面の簡単な説明】
【0009】
【図1】本発明を実施することができる環境の一実施形態を示すシステム図である。
【図2】本発明を実施するシステムに含めることができるモバイルデバイスの一実施形態を示す図である。
【図3】本発明を実施するシステムに含めることができるネットワークデバイスの一実施形態を示す図である。
【図4】メッセージングシステムを通じて検索結果を取得するための全体的な処理の一実施形態を概略で示す論理流れ図である。
【図5】メッセージングシステムを通じて検索結果を取得するための別の実施形態を概略で示す論理流れ図である。
【図6】メッセージ検索語の省略形を判断するための例示的な処理の論理流れ図である。
【発明を実施するための形態】
【0010】
ここで、本明細書の一部を形成し、例示的に本発明を実施することができる特定の例示的な実施形態を示す添付の図面を参照して、本発明を以下に更に詳しく説明する。しかし、本発明は、多くの異なる形式で具現化することができ、以下に示す実施形態に制限されると解釈すべきではなく、逆に、これらの実施形態は、本発明の開示が完全で完成されたものになるように提供され、本発明の範囲を当業者に十分に伝えるものである。とりわけ、本発明は、方法又はデバイスとして具現化することができる。従って、本発明は、完全にハードウエアの実施形態、完全にソフトウエアの実施形態、又はソフトウエア及びハードウエアの態様を結合した実施形態の形式を取ることができる。以下の詳細説明は、従って、制限の意味で捉えるべきではない。
【0011】
本明細書及び特許請求の範囲を通して、以下の語は、関連上他に明確に指示されない限り、本明細書に明示的に関連付けられる意味を有する。本明細書で使用される「一実施形態では」という句は、可能性はあるが、必ずしも同じ実施形態を指すものではない。更に、本明細書で使用される「別の実施形態では」という句は、可能性はあるが、必ずしも異なる実施形態を指すものではない。従って、以下に説明するように、本発明の様々な実施形態は、本発明の範囲又は精神から逸脱することなく容易に結合することができる。
【0012】
更に、本明細書で使用される時の「又は」という語は、包含的な「or」演算子であり、関連上他に明確に指示されない限り、「及び/又は」という語に同等である。「基づいて」という語は、網羅的ではなく、関連上他に明確に指示されない限り、説明されていない付加的なファクタに基づくことを考慮している。更に、明細書を通して「a」、「an」、及び「the」の意味は、複数の参照を含む。「in」の意味は、「in」及び「on」を含む。
【0013】
本発明の例示的な実施形態は、問合せにおける省略された検索語の使用を可能にするために部分的なインデックス作成を使用したテキストメッセージを通じて提出された検索語を処理するためのシステム及び方法に関する。モバイルデバイスは、例えば、SMSショートコードのようなSMSコードを使用して、検索要求(例えば、テキストメッセージ)をネットワーク上でサーバに送信する。検索要求は、部分集合又は省略された検索語を含む。例えば、ある要素のサービス又は他の特徴を検索するために、モバイルデバイスのユーザは、省略された語又はその要素に関連付けられた名称特徴の一部分によって要素を指示することができる。サーバは、省略された語を対応する名称に適合させ(例えば、部分的なインデックス作成を使用して)、名称特徴を特徴に関連付けられた要素に適合させ、次に、要素に関する情報をモバイルデバイスに提供する。
【0014】
例えば、要素が地理的場所であり、要求されるサービスが、バス及び/又は列車のような公共の地上交通手段である場合、特徴は、地理的場所を(例えば、固有に)定義又は識別する交差道路又は他の目印とすることができる。検索への応答は、交差道路によって指示された交差点又は領域の近くのバス停、及びバス停に停まるバスのスケジュールを含むことができる。省略された検索語は、通りの名前の一部分、例えば、通りの名前の最初の文字又は子音とすることができる。従って、サーバは、省略された語を通りの名前に適合させ、名前を備えた通りを地理的場所に適合又はマップし、次に、応答SMSメッセージにおいてその地理的場所に関する要求される情報をユーザのモバイルデバイスに提供する。
【0015】
検索問合せに応答してサーバによって提供される情報は、例えば、最も近いバス停のスケジュール、検索要求に指定されたタイプの料理に最も近いレストラン(及び任意的に、検索要求に指定された時間に開いているか又は開く予定、又は検索要求が送信された時間の近くに開いている/開く予定のレストラン)、検索要求の省略された検索語によって示唆された俳優及び/又はタイトルを有する映画の最寄りの映画館及び上映時間などの1つ又はそれよりも多くを含むことができる。従って、例示的な実施形態では、省略された語は、部分的なインデックスとして作用する。データベースのテーブルの部分インデックス作成(例えば、地理的エリアに対する)は、適合場所又はサービスの平均数、最大数、又は中間数に対して、最小語サイズ(例えば、文字の最小数)を均衡させるように調節することができる。更に、複合インデックス(例えば、1つよりも多いデータ値サブスクリプトを有するインデックス、又は1つよりも多いフィールドに対するデータを記憶するインデックス)は、例えば、検索処理を更に高速化するために使用することができる。複合インデックス作成又はインデックスは、複数の部分インデックス、複数の全インデックス、又はこれらのあらゆる組合せを使用することができる。
【0016】
検索要求は、例えば、レストラン又は交通手段のような要求されるサービス、又は市外局番又は郵便番号のような付加的な地理的情報、又は現在又は未来の時間などを指示するために、検索に焦点を合わせるか又はそれを有効にするための付加的なコンテキスト情報を含むことができる(黙示的に又は明示的に)。関連項目の1つ又はそれよりも多くの部分集合又は名前の省略形として付加的なコンテキストを提供することができ、及び/又は問合せが送信されるSMSコードに付加的なコンテキストを潜在させることができる。
【0017】
コンテキストは、テキストメッセージが送信されるSMSコード又はショートコードによって黙示的に提供される。言い換えると、SMSコードは、要求されるサービス又は情報のタイプを指示又は表すことができる。例えば、所定のSMSショートコードに関連付けられたサーバ又はデータベースは、サービスの特定の種類、例えば、地理エリア内のバスルート及びバス停に対するバススケジュールを提供することを専門にすることができる。従って、検索問合せが、そのSMSショートコードに向けられている場合、検索語は、地理的場所、及び任意的に、最も近いバス停に関するバス情報を提供しなくてはならない1日のうちの時間を識別するために使用することができる。別の例では、SMSショートコードが、「インターネット」映画データベースIMDB.com(登録商標)に対するものである場合、検索が映画及び/又は俳優に関することが理解されるであろう。
【0018】
コンテキスト情報は、検索問合せの他の特徴から集めることができる。例えば、問合せが送信又は受信した時間をコンテキスト情報とすることができ、それによって戻されるバススケジュールは、検索問合せ時間の近くの時間窓内に入るようにスケジュールされたバスを有する近くのバス停を示す。
【0019】
モバイルデバイスに関連付けられたコンテキスト情報は、検索を精緻化するために使用することができる。例えば、モバイルデバイスがモバイル電話である場合、モバイル電話に関連付けられた電話番号の市外局番は、地理的特徴又は目印を検索するために地理的領域を識別するために使用することができる。モバイル電話と通信する携帯電話タワー/基地局又はセルの公知の場所は、検索を精緻化するために使用することができ、例えば、検索問合せの一部として自動的に提供される。検索問合せが送信された時間はまた、例えば、要求されるサービスの態様が時間に依存する場合に、検索を精緻化するためにコンテキスト情報として使用することができる。
【0020】
例示的な実施形態では、省略された検索語は、地理的場所を示すが、他の実施形態は、映画俳優に関する経歴情報のような地理的でない情報の検索を可能にすることができる。サーバによって照合された要素は、地理的場所に無関係とされ、例えば、省略された検索語は、俳優、作家、又は他の種類の個人を識別する部分インデックスとすることができ、付加的なコンテキスト情報は、ユーザが要求する情報のタイプ、例えば、その俳優が主役を演じた映画又はその作家によって書かれた本のリストなどを更に指示することができる。
【0021】
例示的な実施形態では、複数のヒットの検索結果が閾値を超えた場合、検索問合せに対する暫定的な応答は、検索を狭める又は絞るために付加的なコンテキスト又はパラメータ情報に対する要求を含むことができる。暫定的な応答は、例えば、検索エンジンの要求に対してユーザの応答と共に戻されたオリジナルの検索問合せを識別するコードを含むことができる。
【0022】
例示的な作動環境
図1は、本発明を実施することができる環境の一実施形態の構成要素を示している。本発明を実施するために構成要素の全てを必要とするのではなく、構成要素の配置及びタイプにおける変形は、本発明の精神又は範囲から逸脱することなく実行することができる。図示のように、図1のシステム100は、クライアントとネットワークデバイス又はサーバ間の通信を可能にするネットワークを含む。ネットワーク105は、1つ又はそれよりも多くのローカルエリアネットワーク(LAN)及び/又はワイドエリアネットワーク(WAN)を含むことができる。無線ネットワーク110は、LAN、WAN、又は電話ネットワークなどを含むことができる。システム100は、汎用クライアントデバイス101、モバイルクライアントデバイス102−104、検索サーバ106、及びコンテンツサーバ107を含む。
【0023】
モバイルデバイス102−103の一実施形態は、図2と共に以下に更に詳しく説明する。しかし、一般的に、モバイルデバイス102−104は、ネットワーク105又は無線ネットワーク110などのようなネットワーク上でメッセージを受信及び送信することができるあらゆる携帯式コンピュータデバイスを仮想的に含むことができる。モバイルデバイス102−104は、携帯式として構成されるクライアントデバイスとして一般的に説明することができる。従って、モバイルデバイス102−104は、別のコンピュータデバイスに接続して情報を受信することができるあらゆる携帯式コンピュータデバイスを仮想的に含むことができる。このようなデバイスは、セルラー電話、スマートフォン、ディスプレイポケットベル、無線周波数(RF)デバイス、赤外線(IR)デバイス、「携帯情報端末(PDA)」、手持ち式コンピュータ、ラップトップコンピュータ、ウェアラブルコンピュータ、タブレットコンピュータ、及び上述のデバイスの1つ又はそれよりも多くを結合した統合デバイスなどのような携帯式デバイスを含む。従って、モバイルデバイス102−104は、一般的に、機能及び特徴において変動する。例えば、携帯電話は、数字キーパッド及び文字だけを表示することができる数行の白黒LCDディスプレイを有することができる。このようなモバイルデバイスは、制限されたサイズのテキストメッセージをユーザが送信及び受信することを可能にするメッセージングクライアントを含むことができるが、ユーザは、長いメッセージ、グラフィック、画像、又は他のコンテンツを送信又は受信することができない場合がある。
【0024】
別の例では、ウェブ対応モバイルデバイスは、タッチセンサ式スクリーン、スタイラス、及び文字とグラフィックの両方を表示することができる数行のカラーLCDディスプレイを有することができる。ウェブ対応モバイルデバイスは、ウェブページ、ウェブベースのメッセージなどを受信及び送信するように構成されているメッセージングクライアント及びブラウザアプリケーションを含むことができる。ブラウザアプリケーションは、無線アプリケーションプロトコルメッセージ(WAP)などを含むあらゆるウェブベース言語を仮想的に利用して、グラフィック、テキスト、及びマルチメディアなどを受信及び表示するように構成することができる。一実施形態では、ブラウザアプリケーションは、メッセージを表示及び送信するために、「手持ち式デバイスマークアップ言語(HDML)」、「無線マークアップ言語(WML)」、WMLScript、Java(登録商標)Script、「汎用マークアップ言語(SMGL)」、「ハイパーテキストマークアップ言語(HTML)」、及び「eXtensibleマークアップ言語(XML)」などを利用することができる。一実施形態では、モバイルデバイスのユーザは、検索問合せ及び検索結果を含むテキストメッセージを交換するために、ブラウザアプリケーションを利用することができる。ユーザは、1つ又はそれよりも多くのテキストメッセージで識別された付加的な検索結果コンテンツにアクセスするためにブラウザアプリケーションを利用することができる。
【0025】
モバイルデバイス102−104及びクライアントデバイス101は、タイプ、機能、及び名前などを含むそれ自体を識別する情報を提供するように構成されている少なくとも1つのクライアントアプリケーションを含むことができる。一実施形態では、モバイルデバイス102−104は、電話番号、「モバイル識別番号(MIN)」、「電子シリアル番号(ESN)」、又は他のモバイルデバイス識別子を含む様々な機構のいずれかを通じて固有にそれ自体を識別することができる。情報は、モバイルデバイスを利用することができるコンテンツフォーマットを指示することができる。これらの情報は、検索サーバ106、クライアントデバイス101、又は他のコンピュータデバイスに送信されるメッセージ又は同様のもので提供することができる。
【0026】
一実施形態では、モバイルデバイス102−104及びクライアントデバイス101は、別のコンピュータデバイスに物理的場所を提供することができる。しかし、一実施形態では、モバイルデバイス102−104は、緯度及び経度のような座標などに関する物理的場所情報を提供することができる。しかし、モバイルデバイス102−104は、例えば、セルタワーアドレス、MACアドレス、IPアドレス、モバイルデバイスに関連付けられた電話番号の市外局番を含むデバイスの物理的場所、デバイス101−104が、メンバ又は参加者などであるワイドエリアネットワーク又はローカルエリアネットワークの物理的場所を判断するために利用することができる他の情報を提供することができる。このような場所情報は、別のメッセージ(例えば、サービスに対するモバイルデバイスからの問合せ又は要求)の一部として、又は上述の組合せとして送信される別々のメッセージで提供することができる。一実施形態では、物理的場所情報は、オンデマンドで、又は期間(例えば、繰返しの満了時に定期的に又は変更可能な期間)、又はイベントなどに基づいて提供することができる。
【0027】
モバイルデバイス102−104及びクライアントデバイス101は、検索サーバ106のような別のコンピュータデバイスによって管理されるエンドユーザアカウントにエンドユーザがログインすることを可能にするクライアントアプリケーションを含むように更に構成することができる。このようなエンドユーザアカウントは、例えば、SMSメッセージ、IMメッセージ、電子メールを送信/受信、選択されたウェブページにアクセス、ソーシャルネットワーキング活動に参加、検索問合せを実行などのことをエンドユーザが実行することができるように構成することができる。しかし、検索問合せの実行、様々なソーシャルネットワーキング活動への参加などは、エンドユーザアカウントにログインすることなく実行することができる。
【0028】
クライアントデバイス101は、検索問合せ情報、場所情報、又はソーシャルネットワーキング情報などを含む情報を送信及び受信するために、ネットワーク上で通信することができるあらゆるコンピュータデバイスを仮想的に含むことができる。このようなデバイスのセットは、パーソナルコンピュータ、マルチプロセッサシステム、マイクロプロセッサベース又はプログラマブル消費者電子機器、又はネットワークPCなどのような有線又は無線通信媒体を使用して一般的に接続するデバイスを含むことができる。クライアントデバイス101は、モバイルデバイス102−104又は他のクライアントデバイスによるテキストメッセージを送信又は受信するためのメッセージングシステム及び/又はインタフェースを含むことができる。
【0029】
無線ネットワーク110は、モバイルデバイス102−104及びその構成要素をネットワーク105に連結するように構成されている。無線ネットワーク110は、独立型アドホックネットワークなどに更にオーバーレイすることができる様々な無線サブネットワークのいずれかを含むことができ、モバイルデバイス102−104のためのインフラストラクチャー指定の接続を提供する。このようなサブネットワークは、セルラーネットワーク、メッシュネットワーク、及び無線LAN(WLAN)ネットワークなどを含むことができる。
【0030】
無線ネットワーク110は、端末、ゲートウェイ、ルータ、及び無線ラジオリンクによって接続した同様のもの、他の自律システムを更に含むことができる。これらのコネクタは、自由に及びランダムに動き、任意にそれ自体を組織するように構成することができ、それによって無線ネットワーク110のトポロジーを迅速に変更することができる。
【0031】
無線ネットワーク110は、更に、テキストメッセージングだけを可能にするデータ通信を含む複数のアクセス技術ボイス又はデータ通信を利用することができる。技術は、セルラーシステムのための第2(2G)、第3(3G)世代無線アクセス、WLAN、及び「無線ルータ(WR)」メッシュなどを含むことができる。2G、3G、及び将来のアクセスネットワークのようなアクセス技術は、移動性の様々な程度を備えたモバイルデバイス102−104のようなモバイルデバイスに対するワイドエリア受信可能範囲を達成することができる。例えば、無線ネットワーク110は、「モバイル通信のための地球規模システム(GSM)」、汎用パケット無線サービス(GPRS)」、「拡張データGSM環境(EDGE)」、及び「広帯域符号分割多元接続(WCDMA)」などのような無線ネットワークアクセスを通じた無線接続を達成することができる。本質的に、無線ネットワーク110は、モバイルデバイス102−104及び別のコンピュータデバイス、ネットワークなどの間でそれによって情報を移動させることのできるあらゆる無線通信機構を仮想的に含むことができる。
【0032】
ネットワーク105は、検索サーバ106及びその構成要素をモバイルデバイス102−104、クライアントデバイス101を含む他のコンピュータデバイスに連結し、無線ネットワーク110を通じてモバイルデバイス102−104に連結するように構成されている。ネットワーク105は、1つの電子デバイスから別の電子デバイスに情報を伝達するためのコンピュータ可読媒体のあらゆる形式を利用することができる。ネットワーク105は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)に加えて「インターネット」、ユニバーサルシリアルバス(USB)ポートを通じてなどの直接接続、コンピュータ可読媒体の他の形式、又はこれらのあらゆる組合せを含むことができる。異なるアーキテクチャ及びプロトコルに基づくものを含むLANの相互接続したセットでは、ルータが、LAN間のリンクとして働き、一方から他方にメッセージを送信することを可能にする。LAN内の通信リンクは、一般的に、ツイストペア線又は同軸ケーブルを含み、ネットワーク間の通信リンクは、アナログ電話回線、T1、T2、T3、及びT4を含む全部又は部分専用デジタル回線、「統合サービスデジタル網(ISDN)」、「デジタル加入者回線(DSL)」、衛星リンクを含む無線リンク、又は当業者に公知の他の通信リンクを利用することができる。更に、リモートコンピュータ及び他の関係のある電子デバイスは、モデム及び一時電話リンクを通じてLAN又はWANのいずれかに遠隔に接続することができる。本質的に、ネットワーク105は、検索サーバ106、クライアントデバイス101、及び他のコンピュータデバイス間をそれによって情報が移動することを可能にするあらゆる通信方法を含む。
【0033】
更に、通信媒体は、一般的に、コンピュータ可読命令、データ構造、プログラムモジュール、又は搬送波、データ信号、又は他の搬送機構のような変調データ信号における他のデータを具現化し、あらゆる情報配信媒体を含む。「変調データ信号」及び「搬送波信号」という語は、その特徴セットの1つ又はそれよりも多くを有するか、又は情報、命令、及びデータなどを信号に符号化するような方法で変更されている信号を含む。一例として、通信媒体は、ツイスト対、同軸ケーブル、光ファイバ、導波路、及び他の有線媒体のような有線媒体、及び音響、RF、赤外線、及び他の無線媒体のような無線媒体を含む。コンピュータ可読命令、データ構造、プログラムモジュール、又は他のデータは、固定とすることができ、又は様々な記憶媒体、例えば、「読取専用メモリ」、「ランダムアクセスメモリ」、「動的ランダムアクセスメモリ」、キャッシュメモリ、フロッピー(登録商標)ディスク又は磁気テープのような磁気記憶媒体、DVD、CD、フラッシュメモリ、その他に記憶することができる。上述の変調データ信号及び搬送波信号は、固定とすることができ、又はこれらの記憶媒体に記憶することができる。
【0034】
検索サーバ106の一実施形態は、図3に関して以下に更に詳しく説明する。しかし、簡略には、検索サーバ106は、データ検索、フィルタリング、仕分け、及び他のデータ管理オペレーションを可能にするためにネットワーク105に接続することができるあらゆるコンピュータデバイスを含むことができる。検索サーバ106は、コンテンツを提供する段階及び許可によってユーザオンライン行動を追跡する段階を含むネットワークポータル情報及び/又はサービスを提供することができる。検索サーバ106は、更に、ソーシャルネットワーキング情報の凝集及び管理を可能にすることができる。検索サーバ106として機能することができるデバイスは、パーソナルコンピュータデスクトップコンピュータ、マルチプロセッサシステム、マイクロプロセッサベース又はプログラマブル消費者電子機器、ネットワークPC、及びサーバなどを含む。
【0035】
図1は、検索サーバ106を単一のコンピュータデバイスとして示しているが、本発明は、これに制限されない。例えば、検索サーバ106の1つ又はそれよりも多くの機能は、1つ又はそれよりも多くの別々のコンピュータデバイスにわたって分散させることができる。例えば、検索、検索結果、SMSメッセージ、「インスタントメッセージング(IM)」セッション、電子メールメッセージの管理、コンタクト情報のシェアリング、行動情報の収集、ソーシャルネットワーキング情報の凝集化及び/又は仕分けなどのことは、本発明の範囲又は精神から逸脱することなく複数のコンピュータデバイスによって実行することができる。
【0036】
コンテンツサーバ107は、モバイルデバイス102−104及び/又はクライアント101で使用することができる様々なコンテンツ及び/又は他のデータを表している。このようなコンテンツは、テキストコンテンツ、ウェブコンテンツ、オーディオコンテンツ、ビデオコンテンツ、又はFTPデータなどを含むことができる。データサービスは、以下に限定されるものではないが、SMS、IMサービス、電子メールサービス、サービス、ウェブサービス、第三者サービス、オーディオサービス、ビデオサービス、VOIPサービス、カレンダーサービス、又はフォトサービスなどを含むことができる。更に、コンテンツサーバ107によって提供されるコンテンツ及び/又はサービスに関する情報は、検索問合せに結果を提供するために利用することができる。
【0037】
コンテンツサーバ107として機能することができるデバイスは、パーソナルコンピュータデスクトップコンピュータ、マルチプロセッサシステム、マイクロプロセッサベース又はプログラマブル消費者電子機器、ネットワークPC、及びサーバなどを含む。
【0038】
本発明の実施形態では、検索問合せは、デバイス102、103、104、101のいずれかから処理のために検索サーバ106に送信される。検索サーバ106は、検索されるデータベースを含むことができ、又は要求される情報を包含している場合がある適切なリモートデータベースを識別することができる。例えば、データベースは、コンテンツサーバ107のような異なるリモートサーバに位置することができるか又はそれによってアクセスすることができ、この場合、検索サーバ106は、データベースに問い合わせ、次に、元の問合せを送信したデバイスに情報を戻すためにコンテンツサーバ107と通信することができる。問合せ側デバイスへの応答は、検索サーバ106から送信されるか、又はコンテンツサーバ107から問合せ側デバイスに直接送信される。検索問合せが、SMS(ショートメッセージサービス)を通じて特定のSMSショートコード(例えば、特定の及び/又は一般的なデータベース又はサービスに関連付けることができる)に送信される例示的な実施形態では、モバイルデバイスは、バックエンドサービスによってSMSゲートウェイを通じて通信することができるサーバと直接又は間接的に通信することができ、データベースに(例えば、SMSメッセージ内又は共に供給された部分インデックス語及びコンテキスト情報を使用して)アクセスすることができ、次に、チェーンを通じて検索結果を戻すことができる。例えば、検索サーバ106は、バックエンドサービスなどを通じてSMSゲートウェイと通信するサーバとすることができる。
【0039】
例示的なモバイルクライアント環境
図2は、本発明を実施するシステムに含むことができるモバイルデバイス200の一実施形態を示している。モバイルデバイス200は、図2に示すものよりも多いか又は少ない構成要素を含むことができる。しかし、図示の構成要素は、本発明を実施するための例示的な実施形態を開示するのに十分である。モバイルデバイス200は、例えば、図1のモバイルデバイス102−104の少なくとも1つの一実施形態を表すことができる。
【0040】
図2に示すように、モバイルデバイス200は、バス224を通じて大容量メモリ230と通信する中央演算処理装置(CPU)222を含む。モバイルデバイス200は、電源226、1つ又はそれよりも多くのネットワークインタフェース250、オーディオインタフェース252、ディスプレイ254、キーパッド256、照明器258、入力/出力インタフェース260、触覚インタフェース262、及び任意的な全地球測位システム(GPS)受信機264を含む。電源226は、モバイルデバイス200に電力を供給する。給電するために再充電可能又は再充電不能バッテリを使用することができる。電力は、バッテリを補足及び/又は再充電するACアダプタ又は給電ドッキングクレードルのような外部電源によって供給される。
【0041】
モバイルデバイス200は、基地局(図示せず)又は別のコンピュータデバイスと直接に任意的に通信することができる。ネットワークインタフェース250は、モバイルデバイス200を1つ又はそれよりも多くのネットワークに連結するための回路を含み、以下に限定されるものではないが、モバイル通信のための地球規模システム(GSM)、符号分割多元接続(CDMA)、時分割多元接続(TDMA)、GPRS、SMS、WAP、ユーザデータグラムプロトコル(UDP)、送信制御プロトコル/「インターネット」プロトコル(TCP/IP)、汎用パケット無線サービス、超広帯域(UWB)、「マイクロ波アクセスのためのIEEE 802.16世界規模相互運用性(WiMax)」、SIP/RTP、又は様々な他の無線通信プロトコルのいずれかを含む1つ又はそれよりも多くの通信プロトコル及び技術による使用に対して構成されている。ネットワークインタフェース250は、時には、送受信機、送受信デバイス、又はネットワークインタフェースカード(NIC)として公知である。
【0042】
オーディオインタフェース252は、人間の肉声の音のようなオーディオ信号を生成及び受信するように構成されている。例えば、オーディオインタフェース252は、他者との遠隔通信を可能にする及び/又は何らかのアクションに対してオーディオ肯定応答を生成するために、スピーカ及びマイクロフォン(図示せず)に連結することができる。ディスプレイ254は、液晶ディスプレイ(LCD)、ガスプラズマ、発光ダイオード(LED)、又はコンピュータデバイスと共に使用されるディスプレイのあらゆる他のタイプとすることができる。ディスプレイ254は、スタイラス又は人間の手の指のような物体から入力を受信するように構成されたタッチセンサ式スクリーンを含むことができる。
【0043】
キーパッド256は、ユーザからの入力を受信するように構成されたあらゆる入力デバイスを含むことができる。例えば、キーパッド256は、プッシュボタン数字ダイヤルパッドを含むことができる。キーパッド256は、キーボード、又は画像を撮影及び送信することに関連付けられた指令ボタンを含むことができる。照明器258は、ステータス指示を提供する及び/又は光を提供することができる。照明器258は、時間の特定の期間又はイベントに応答してアクティブのままにしておくことができる。例えば、照明器258がアクティブである場合、キーパッド256上のボタンを背面照明することができ、クライアントデバイスが給電されている間はオンに留まることができる。照明器258は、別のクライアントデバイスにダイヤルするなどの特定のアクションが実行された場合、様々なパターンでこれらのボタンを背面照明することができる。照明器258は、クライアントデバイスの透明又は半透明のケース内に位置した光源をアクションに応答して照明させることができる。別の実施形態では、照明器258は、内蔵カメラ(図示せず)のためのフラッシュを含むことができる。
【0044】
モバイルデバイス200は、ヘッドセット、又は図2に示されていない他の入力又は出力デバイスのような外部デバイスと通信するための入力/出力インタフェース260を含む。入力/出力インタフェース260は、USB、赤外線、又はBluetooth(登録商標)などのような1つ又はそれよりも多くの通信技術を利用することができる。触覚インタフェース262は、クライアントデバイスのユーザに触覚フィードバックを提供するように構成されている。例えば、触覚インタフェースは、コンピュータデバイスの別のユーザが呼び出している場合に特定の方法でモバイルデバイス200を振動させるために利用することができる。
【0045】
任意的なGPS送受信機264は、地球の表面上のモバイルデバイス200の物理座標を判断することができ、一般的に、緯度及び経度値として場所を出力する。GPS送受信機264は、以下に限定されるものではないが、三角測量、支援GPS(AGPS)、「拡張観測時間差(E−OTD)」、セル識別子(CI)、サービスエリア識別子(SAI)、拡張タイミングアドバンス(ETA)、基地局サブシステム(BSS)、又は同様のものを含む他の地球規模位置決め機構を利用することができ、地球の表面上のモバイルデバイス200の物理的場所を判断することができる。様々な状況下で、GPS送受信機264は、モバイルデバイス200に対してミリメートル以内で物理的場所を判断することができ、他の場合では、判断された物理的場所は、メートル又はかなり大きな距離内のようなあまり正確でない場合がある。しかし、一実施形態では、モバイルデバイスは、他の構成要素を通じて、例えば、MACアドレス又はIPアドレスなどを含むデバイスの物理的場所を判断するために利用することができる他の情報を提供することができる。
【0046】
大容量メモリ230は、RAM232、ROM234、及び他の記憶手段を含む。大容量メモリ230は、コンピュータ可読命令、データ構造、プログラムモジュール又は他のデータのような情報の記憶のためのコンピュータ記憶媒体の別の例を例示している。大容量メモリ230は、モバイルデバイス200の低レベルオペレーションを制御するための基本入力/出力システム(BIOS)240を記憶する。大容量メモリは、モバイルデバイス200の他のオペレーションを制御するためのオペレーティングシステム241を記憶することができる。この構成要素が、「Windows Mobile(登録商標)」、又はSymbian(登録商標)オペレーティングシステムのような専用クライアント通信オペレーティングシステム、又はUNIX(登録商標)又はLINUX(登録商標)のあるバージョンのような汎用オペレーティングシステムを含むことができることが認められるであろう。オペレーティングシステムは、Javaアプリケーションプログラムを通じてハードウエア構成要素及び/又はオペレーティングシステムオペレーションの制御を可能にするJava仮想機械モジュールを含むことができ、又はこれにインタフェースで接続することができる。
【0047】
メモリ230は、特に、アプリケーション242及び/又は他のデータを記憶するために、モバイルデバイス200によって利用される1つ又はそれよりも多くのデータストレージ244を更に含む。例えば、データストレージ244は、モバイルデバイス200の様々な機能を説明する情報を記憶するために利用することができる。情報は、次に、通信中にメッセージの一部又はヘッダの一部として送信されること又は要求時に送信されることなどを含む様々なイベントのいずれかに基づいて別のデバイスに提供される。更に、データストレージ244は、検索データ、ユーザプリファレンス、アドレスブック、バディリスト、別名、又はソーシャルネットワーキング情報などを記憶するために利用することができる。情報の少なくとも一部は、モバイルデバイス200内のディスクドライブ又は他の記憶媒体(図示せず)に記憶することができる。
【0048】
アプリケーション242は、モバイルデバイス200によって実行された場合に、コンタクトマネージャ、タスクマネージャ、カレンダー、ゲーム、VOIPアプリケーション、トランスコーダ、データベースプログラム、ワードプロセッシングプログラム、セキュリティアプリケーション、及びスプレッドシートプログラムなどを含む複数のサービスを提供するコンピュータ実行可能命令を含むことができる。アプリケーション242は、一般的に、モバイルデバイス200にメッセージ(例えば、SMS、MMS、IM、電子メール、及び/又は他のメッセージ)、オーディオ、ビデオ、送信、受信、及び/又はそうでなければ処理させるメッセージングクライアント243を含み、別のクライアントデバイスの別のユーザとの遠隔通信を可能にする。
【0049】
アプリケーションプログラムの別の例は、あらゆるウェブベースの言語を実質的に利用してグラフィック、テキスト、及びマルチメディアなどを受信及び表示するように構成さされたあらゆるアプリケーションを実質的に含むことができるブラウザ245を含む。一実施形態では、ブラウザアプリケーションは、メッセージを表示及び送信するために「手持ち式デバイスマークアップ言語(HDML)」、「無線マークアップ言語(WML)」、WMLScript、JavaScript、「標準的汎用マークアップ言語(SMGL)」、「ハイパーテキストマークアップ言語(HTML)」、及び「eXtensibleマークアップ言語(XML)」などを利用することができる。しかし、様々な他のウェブベース言語のいずれも利用することができる。
【0050】
一実施形態では、メッセージングクライアント243又はブラウザ245は、図1の検索サーバ106及び/又はコンテンツサーバ107を通じて利用可能な検索アプリケーションへのアクセスを可能にするように構成することができる。一実施形態では、モバイルデバイス200のユーザは、検索結果を取得する場合に使用する様々な検索語を検索アプリケーションに入力することができる。モバイルデバイス200は、場所情報、又はその物理的場所を判断する場合に使用可能な情報を提供することができる。このような情報は、一実施形態では、検索問合せを自動的に(例えば、ユーザ入力に対して透過的に)修正するために使用可能である。
【0051】
例示的な実施形態によると、1、2、3、又はそれよりも多くの省略された検索語及び任意的に付加的なコンテキスト情報を包含しているテキスト検索問合せは、SMSを通じて専用又は汎用SMSショートコードに送信されるか(例えば、メッセージングクライアント243を通じて)、又は代替的に、例えば、ブラウザ245を含むモバイルデバイス200のあらゆる他の通信アプリケーション及び対応するプロトコルを通じてデータベースに提供される。
【0052】
例示的なサーバ環境
図3は、本発明の一実施形態によるネットワークデバイスの一実施形態を示している。ネットワークデバイス300は、図示のものより多くの構成要素を含むことができる。しかし、図示の構成要素は、本発明を実施するための例示的な実施形態を開示するのに十分である。ネットワークデバイス300は、例えば、図1の検索サーバ106及び/又はコンテンツサーバ107を表すことができる。
【0053】
ネットワークデバイス300は、バス322を通じて全てが互いに通信する中央演算処理装置312、ビデオディスプレイアダプタ314、及び大容量メモリを含む。大容量メモリは、一般的に、RAM316、ROM332、及びハードディスクドライブ328、テープドライブ、光ドライブ、及び/又はフロッピーディスクドライブのような1つ又はそれよりも多くの永久大容量記憶デバイスを含む。大容量メモリは、ネットワークデバイス300のオペレーションを制御するためのオペレーティングシステム320を記憶する。あらゆる汎用オペレーティングシステムを利用することができる。基本入力/出力システム(BIOS)318は、ネットワークデバイス300の低レベルオペレーションを制御するために提供される。図3に示すように、ネットワークデバイス300は、TCP/IPプロトコルを含む様々な通信プロトコルと共に使用するように構成されているネットワークインタフェースユニット310を通じて「インターネット」又はある他の通信ネットワークと通信することができる。ネットワークインタフェースユニット310は、時には、送受信機、送受信デバイス、又はネットワークインタフェースカード(NIC)として公知である。
【0054】
上述の大容量メモリは、コンピュータ可読媒体の別のタイプ、すなわち、コンピュータ記憶媒体を示している。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、又は他のデータのような情報の記憶のためのあらゆる方法又は技術に実施される揮発性、不揮発性、取外し可能、及び取外し不能媒体を含むことができる。コンピュータ記憶媒体の例は、RAM、ROM、EEPROM、フラッシュメモリ又は他のメモリ技術、CD−ROM、デジタル多機能ディスク(DVD)又は他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ又は他の磁気記憶デバイス、又は要求される情報を記憶するために使用することができ、コンピュータデバイスによってアクセス可能なあらゆる他の媒体を含む。
【0055】
大容量メモリは、プログラムコード及びデータを記憶する。1つ又はそれよりも多くのアプリケーション350が、大容量メモリにロードされ、オペレーティングシステム320で実行される。アプリケーションプログラムの例は、SMSメッセージサーバ、IMメッセージサーバ、電子メールサーバ、トランスコーダ、スケジューラー、カレンダー、データベースプログラム、ワードプロセッシングプログラム、HTTPプログラム、カスタマイズ可能ユーザインタフェースプログラム、IPSecアプリケーション、暗号化プログラム、セキュリティプログラム、VPNプログラム、及びアカウント管理などを含むことができる。検索モジュール352は、アプリケーション350内のアプリケーションプログラムとして又は別のアプリケーションとして含まれる。
【0056】
検索モジュール352は、クライアントデバイスから検索語を受信し、他の検索パラメータを判断し、データソースの検索を実行し、検索結果を提供し、更に他の検索に関係のあるオペレーションを実行するように構成されている。検索モジュール352は、以下に説明するものにほぼ類似した処理を利用することができる。
【0057】
大容量メモリは、例えば、ネットワークデバイス300が、図1に示すコンテンツサーバ107のように実行することができ、又はコンテンツサーバ107の機能を実行することができるようにコンテンツサーバソフトウエア356を含むことができる(例えば、アプリケーション350内のアプリケーションプログラム又は別のアプリケーションとして)。大容量メモリは、例えば、ネットワークデバイスが、図1に示すクライアントデバイス101のように実行することができ、又はクライアントデバイス101の機能を実行することができるようにクライアントモジュール358を含むことができる。
【0058】
一般化オペレーション
本明細書に説明するように、例示的な実施形態は、問合せにおいて省略された検索語を使用することができるように、部分インデックス作成を使用したテキストメッセージを通じて提出された検索問合せを処理するためのシステム及び方法に関する。更に、複合インデックス(例えば、1つよりも多いデータ値サブスクリプトを有するインデックス、又は1つよりも多いフィールドに対するデータを記憶するインデックス)は、例えば、検索処理の速度を更に上げるために使用することができる。複合インデックス作成又はインデックスは、複数の部分インデックス、複数全インデックス、又はこれらのあらゆる組合せを使用することができる。
【0059】
以下に及び本明細書の他の箇所に様々に説明する機能は、図1−3に示されている装置を使用して実行することができ、図4に示されて以下に更に説明する例示的な処理において様々に実施される。
【0060】
例示的な実施形態では、モバイルデバイス102、103、104、又はクライアントデバイス101のようなデバイスは、例えば、SMSショートコードのようなSMSコードを使用して、ネットワーク(例えば、105、110)を通じて検索要求(例えば、テキストメッセージ)をサーバ(例えば、サーバ106)に送信する。検索要求は、部分集合又は省略された検索語を含み、検索要求又はテキストメッセージが送信されるSMSコードは、検索の要求される物体を指示する。検索要求は、SMSとは異なるタイプの通信サービス又はプロトコルに関連付けられたショートコードに付加的に又は代わりに送信される(及び/又は含む)ことになる。
【0061】
検索要求は、テキストメッセージ、「ショートメッセージサービス(SMS)」メッセージ、「インスタントメッセージ(IM)」、「マルチメディアメッセージングサービス(MMS)」、「無線アクセスプロトコル」又は「無線アプリケーションプロトコル(WAP)」、又は受信され対応するテキスト又は英数字に処理されるスピーチ等々の形式にすることができ、及び/又はこれらを通じて伝達される。
【0062】
例示的な実施形態では、サービス又は要素の他の特徴を検索するために、モバイルデバイスのユーザは、要素に関連付けられた省略語又は名称特徴の一部分によって要素を指示することができる。サーバは、省略語をデータベースにおける対応する名前に適合させ(例えば、部分インデックス作成及び任意的に複合インデックス作成をデータベースのテーブルに適用することにより)、名付けられた特徴を特徴に関連付けられた要素に適合させ、次に、要素に関する情報をモバイルデバイスに提供する。例示的な実施形態では、部分インデックス作成を実行するためのSQL(構造化照会言語)機能は、データベースとのアソシエーションにおいて使用される。従って、例示的な実施形態では、省略された語は、部分インデックスとして作用する。
【0063】
例示的な実施形態では、3つの文字は、省略語の長さであるか、又はサーバが検索を実行するために使用する検索語の最初の文字の数である。少なくとも検索が不成功であると見なされるか又はあまりにも多くのヒットを有するまで、ユーザによって入力された付加的な文字は無視されることになり、この場合、サーバは、付加的な文字の1つ又はそれよりも多くを使用して再度検索し、例えば、最初の4文字を使用して今回再度検索することができる。例示的な実施形態では、いくつかのヒットにおける検索結果が閾値を超えた場合、検索問合せへの暫定的な応答は、検索を狭める又は絞るために付加的なコンテキスト又はパラメータ情報に対する要求を含むことができる。この要求された付加的な情報は、付加的なパラメータ又は検索語とすることができ、及び/又は以前に提出された検索語に添付された付加的な情報、例えば、通りの名前のより多くの文字とすることができる。暫定的な応答は、例えば、検索エンジンを助けるために、検索エンジンの要求へのユーザの応答と共に戻された時のオリジナルの検索問合せを識別するコードを含むことができる。
【0064】
3文字以外の長さは、例えば、検索問合せにおけるパラメータの数(パラメータの大きな数は、パラメータの全てに関連付けられる全パラメータ名及び対応する要素、例えば、地理的場所を識別するのに、各パラメータにおけるいくつかの文字が必要であることを意味する可能性がある)、及びデータベースの複雑さ及び範囲に応答して、検索問合せにおける省略された語の1つ又はそれよりも多くに対して使用又は指定される。例えば、検索が、通りの名前を含み、問い合わせられているデータベースが、大きな都市又は複数の都市を含む場合、ユーザが省略された検索語を通じて表そうとする場所を正確に識別するために、より多くの情報(省略された検索語のパラメータのよりも大きな数及び/又はより大きい最小長さ)が必要である。
【0065】
例示的な実施形態によると、データベースの部分インデックス作成(例えば、地理的エリアに対するデータベースのテーブルの部分インデックス作成)は、適合場所又はサービスの平均数、最大数、又は中間数に対して最小語サイズ(例えば、文字の最小数)を均衡化するように調節することができる。例えば、地理的に索引付けされたデータベースでは、異なる語の特定の数(例えば、省略された通りの名前を表す2又は3語)が、語の各セットに対する固有の(又は未知/無効)地理的場所を生じるまで増加させることができる。これは、地理的場所のサイズ(例えば、通りの角、ブロック、隣接するブロックのセット、都市区域、都市、その他)及び/又は固有でない地理的場所のゼロでない数又はデータベース内の単一の検索問合せに対して発生する場合がある最大ヒット(例えば、単一の検索問合せから3以内のヒット又は異なる場所を結果として生じる)を拡張又は狭めるように調節することができる。部分インデックス作成に対するより小さなインデックス/より短い省略形は、数少ないリソースしか必要としないより小さなデータベースフットプリントをもたらすことができるが、これは、複数のヒット又は検索結果内で仕分け又は選択すべきであるユーザに対する不便さを相殺することができる。
【0066】
特定的な実施例では、サンフランシスコのカップルが、シーフードレストランで食事するために町の異なる部分までバスに乗りたいとする。彼らの1人は、彼らが「Geary Boulevard」と「Arguello Boulevard」の角にいることに気が付き、彼女の携帯電話を起動し、「gea arg」(各通りの名前の最初の3文字)を包含するテキストメッセージを作成し、このメッセージは、サンフランシスコバスルートのデータベースを有するサーバに対するSMSショートコードに送信される。サーバは、携帯電話ユーザが近くのバス停の場所を要求していることをSMSショートコードによって黙示的に知り、ユーザが、メッセージの現在の時間を含む時間窓に対するバス停のスケジュール情報(例えば、メッセージの時間から先の30分まで、又は30分以内に到着するスケジュールのものがない場合に最初のバスが到着するまで)を要求していることをデフォルトによって仮定する。ユーザは、始まる窓の時間、例えば、「7pm」を指示するために、数字に加えてam又はpmを指示することができ、窓の要求される時間スパン(例えば、分又は時間を指示するための「70m」又は「1h」)を備えた指定に続けるか又は進むことができる。ユーザは、別の近くの交差道路又は郵便番号を指示することができる。例えば、「Stanyan Street」が近くにある場合、それによって検索問合せは、「gea arg sta」、又は「gea arg94143」とすることができる。例示的な実施形態では、省略された語は、単に、最初の子音とすることができ、語を混合することができ(母音と一緒のもの、母音なしのもの)、例えば、Geary、Arguello、及びStanyanを示すために「gea arg stn」とする。一部の実施形態では、サーバは、検索語における母音を単純に無視することができ、及び/又は子音だけを入力(又は再入力)するようにユーザに指示することができる。
【0067】
付加的な情報は、例えば、ユーザが外国の都市を訪れている旅行者であり、都市の市外局番とは異なる市外局番を有する携帯電話を使用している場合、他の仮定の情報を無効にすることができ、検索問合せにおいて外国の都市のローカル市外局番を指定することは、ユーザが携帯電話のホーム都市ではなく外国の都市を検索していることをサーバに知らせることができる。サーバの応答は、例えば、1つ又はそれよりも多くの近くのバス停の場所、各バス停までの距離及び/又は推定される歩行時間、基本的な方向、及び各バス停に対するバススケジュール/目的地情報を含むことができる。情報は、バス停毎に順序付けられ、バス停は、次のバスの到着時間毎に、又はバス停までの距離毎に、又は両方の要素の加重組合せ毎に応答メッセージにおいて順序付けられる。
【0068】
バスルート情報を除いた他の事柄、例えば、料理の特定のタイプ又は種類を提供する最も近いレストラン、近くの劇場及び対応する映画/上映時間、その他が分類される。一部の実施形態では、省略された検索語は、地理的場所を指示するが、他の実施形態は、映画俳優に関する経歴情報のような地理的でない情報の検索を可能にする。サーバによって適合された要素は、地理的場所に無関係のものであり、例えば、省略された検索語は、俳優、作家、又は他の種類の個人を識別する部分インデックスとすることができ、付加的なコンテキスト情報は、ユーザが要求する情報のタイプ、例えば、その俳優が主演した映画又はその作家によって書かれた本、その他のリストを更に指示することができる。
【0069】
本明細書に説明するように、検索要求は、検索を狭めるか又は有効にするために、例えば、レストラン又は交通手段のような要求されるサービスを指示するために付加的なコンテキスト情報を含むことができる(暗黙的に又は明示的に)。付加的な地理的情報は、電話市外局番、郵便番号、都市名、地理的目印(場所又は場所の近くにある名前を備えた公園、埠頭、区域、モール、店又は他の企業、その他)のような全部又は省略された形式で(又は二者択一的に)提供される。現在又は未来の時間、及び/又は時間窓又は間隔が、付加的に又は代わりに提供される。付加的なコンテキストは、全部に名前を付けられるか、又は関連項目の名前の1つ又はそれよりも多くの部分集合又は省略形として提供され、及び/又は問合せが送信されるSMSコードに暗黙的に示されている。検索問合せが送信された時間は、例えば、要求されるサービスの態様が時間依存である場合に、検索を精緻化するためのコンテキスト情報として使用される。例えば、問合せが送信又は受信した時間は、コンテキスト情報になり、それによって戻されたバススケジュールは、検索問合せ時間の近くの時間窓内に来るようにスケジュールされたバスを有する近くのバス停を指示するか、又は特定の映画を上映する近くの劇場に対する問合せは、問合せが送信された時間以前に始まる上映時間をフィルタで除くことができる。
【0070】
コンテキストは、テキストメッセージが送信されるSMSコード又はショートコードによって暗黙的に提供される。言い換えると、SMSコードは、要求されるサービス又は情報のタイプを指示又は表すことができる。例えば、所定のSMSショートコードに関連付けられたサーバ又はデータベースは、サービスの特定の種類、例えば、バスルートに対するバススケジュール及び地理的エリア内のバス停を提供すること専用にすることができる。従って、検索問合せが、そのSMSショートコードに向けられた場合、検索語は、最も近くのバス停に関するバス情報が提供される地理的場所及び任意的に1日の時間を識別するために使用することができる。別の例では、SMSショートコードが、「インターネット」ムービーデータベースIMDB.com(登録商標)向けである場合、検索は、映画及び/又は俳優に関することを理解することができるであろう。
【0071】
モバイルデバイスに関連付けられ、検索問合せにおいてテキストとしてユーザによって入力されていないコンテキスト情報は、検索を精緻化するために使用することができる。例えば、モバイルデバイスがモバイル電話である場合、モバイル電話に関連付けられた電話番号の市外局番は、地理的特徴又は目印を検索する地理的領域を識別するために使用することができる。モバイル電話と通信する携帯電話タワー/基地局又はセルの公知の場所は、検索を精緻化するために使用することができ、例えば、検索問合せの一部として自動的に提供される。
【0072】
図4は、本発明のある一定の態様の作動を示し、本明細書に説明する本発明の様々な態様及び特徴を包含する例示的な処理450の論理流れ図を示している。制御が開始され、ブロック452に移り、ここで、サーバは、クライアントデバイス(デスクトップデバイス、又は携帯電話、ラップトップコンピュータ、Blackberry(登録商標)などのようなモバイルデバイスとすることができる)から、例えば、通りの名前の最初の3文字のような省略された検索語を含むことができる1つ又はそれよりも多くの検索語を含む検索要求メッセージを受信する。サーバは、コンテキスト情報を検索語に関連付ける。コンテキスト情報は、検索問合せにおける郵便番号、付加的な通りの名前からの文字、又は市外局番のような検索問合せの一部とすることができる。コンテキスト情報は、物理的場所の識別を助けることができ、又はユーザが要求するサービスのタイプ又は品質又は他の特徴を指示する情報、例えば、公共交通機関の機会に対する時間又は時間窓、又はレストランの料理の要求されるタイプを含むことができる。コンテキスト情報は暗黙的とすることができ、例えば、問合せを送信しているモバイルデバイスに関連付けられた市外局番とすることができ、モバイルデバイスから無線信号を受信する無線通信タワーの場所は、問合せが送信又はアドレス指定されるSMSコード又はショートコードなどに関連付けることができる。
【0073】
ブロック452から、制御はブロック454に進み、ここで、検索要求メッセージにおける検索語の省略形が判断される。検索語は、検索要求における省略された形式とすることができ、例えば、検索語は、通りの名前の最初の3文字、又は通りの名前の最初の3つの子音又は通りの名前のあらゆる部分集合から構成することができる。従って、サーバは、検索語が既に省略された形式であることを認識することによって省略形を判断することができる。例示的な実施形態では、サーバは、検索語の一部を無視することにより、例えば、検索語における母音を無視するか又は検索語における最後の文字、例えば、5文字の検索語における最後の2つの文字を無視することにより、検索語の省略形を追加的に又は代替的に判断することができる。例えば、「geary」は、「gea」又は「gry」に省略化することができる。判断された省略形は、本明細書に説明するように部分インデックスとすることができる。
【0074】
ブロック454から、制御はブロック456に進み、ここで、1つ又はそれよりも多くの暫定結果が、判断された省略形及びコンテキスト情報に適切に基づいて決定又は識別される。省略語又は省略された検索語は、暫定結果を指示するために部分インデックスとして作用することができる。例えば、省略された検索語及びコンテキスト情報が通りの名前を示す場合、1つ又はそれよりも多くの地理的場所が、対応する通りの組合せによって識別又は定められる。一部の都市又は場所が、同じ名前を有する複数の通りを有し、省略された検索語が、複数の異なる通りに関連付けられる場合がある(例えば、「gea」は、仮定の状況では、「Geary Boulevard」及び「Geary Road」の両方、又は「Gearhead Alley」に対応する可能性がある)。従って、暫定結果が、省略された検索語及び任意的にコンテキスト情報に基づいて識別される複数のヒット又は要素を含むことができる場合がある。
【0075】
制御は、ブロック456からブロック458に進む。ブロック458では、暫定結果及びコンテキスト情報に基づく結果が、モバイル又はクライアントデバイスに提供される。コンテキスト情報は、結果のタイプを示すことができる。例えば、コンテキスト情報が、特定のサービス(サンフランシスコのバスルート及びスケジュールなど)に関連付けられたデータベースのSMSショートコードである場合、結果は、検索要求メッセージにおいて検索語によって識別又は関連付けられるか又は識別された地理的場所で利用可能なサービス(例えば、地理的場所の近くのバス停及びバス到着/出発時刻)を示すことができる。
【0076】
ブロック458から、制御はブロック460に進み、ここで、処理は、例えば、ブロック452に戻ることによって又は他の機能に進むことによって続行される。
【0077】
図5は、例えば、図4のブロック456の後又はこれと同時の例示的な実施形態で提供される付加的な特徴又は機能を示している。例えば、図4のブロック458は、図5に示すシーケンスで置換することができる。代わりに、ブロック568の結果は、ブロック560の要求を含むことができる。
【0078】
図5のブロック558に示すように、暫定的な検索結果(ブロック456で決定された)におけるヒット又は要素の数が閾値、例えば、所定の閾値を超えるか否かの判断が行われる。例えば、暫定結果が3つよりも多い異なる別々の地理的場所(この実施例での閾値は3である)を示す場合、サーバは、検索を狭めるためにクライアントデバイスから付加的な情報を要求することができ、それによってより有用な結果をクライアントデバイス(例えば、モバイルデバイス)に提供することができる。従って、ブロック558における判断が否定的である場合、制御はブロック570に進み、ここで、処理は、例えば、ブロック458に戻ることによって又は他の機能に進むことによって続行される。
【0079】
ブロック558での判断が肯定的である場合、制御はブロック560に進み、ここで、サーバは、付加的な情報、例えば、1つ又はそれよりも多くの付加的な検索語又はコンテキスト情報に対する要求をクライアントデバイス又はモバイルデバイスに送信する。例示的な実施形態では、ブロック458における結果は、これらの要求を含むことができる。
【0080】
制御は、ブロック560からブロック562に進み、ここで、サーバは、1つ又はそれよりも多くの付加的な検索語又は付加的なコンテキスト情報のような付加的な情報を受信する。制御は、ブロック562からブロック564、ブロック564からブロック566に進み、ここで、第2の暫定結果が、ブロック456と殆ど同じ方法で決定されるが、この場合には、付加的な情報を考慮に入れる。ブロック566から制御はブロック568に進み、ここで、結果がモバイルデバイスに提供され、結果は、ブロック458に関して上述したものと類似の方法で、他の暫定結果及び関連付けられたコンテキスト情報(例えば、最初に受信したコンテキスト情報、及び任意的にブロック560の問合せに応答して受信した付加的なコンテキスト情報)に基づいている。
【0081】
図6は、図4のブロック454の例示的な実施を示している。図6に示すように、ブロック602で、検索語における文字の数が閾値を超えたか否かの判断が行われる。本明細書の他の箇所に要約されているように、この閾値は、例えば、3とすることができるが、3よりも小さい又は大きい値とすることもできる。閾値は、あらゆる文字の数を表すことができ、又は例えば子音、数字、又は母音、他の文字の特定の種類の数を表すことができる。ブロック602で、数が閾値を超えないと判断された場合、制御はブロック604に進み、ここで、検索語が既に省略された形式であるという判断が行われる。ブロック604から制御はブロック608に進み、ここで、処理は、例えば、図4のブロック456に続くか、又は評価される検索語が存在する場合はブロック602に戻るか、又は別の処理又は機能に続く。
【0082】
ブロック602で、検索語における文字の数(又はある一定のタイプの文字の数)が閾値を超えたと判断された場合、制御はブロック606に進み、ここで、検索語が省略される。ブロック606からブロック608に制御は進み、ここで、処理は、例えば、図4のブロック456に続き、又は評価される検索語がまだ存在する場合はブロック602に戻るか、又は別の処理又は機能に続く。
【0083】
ブロック606で、検索語は、例えば、語における最初の閾値数の文字に続くあらゆる文字を単純に省くことによって(例えば、閾値が3である場合、「geary」が「gea」に省略される)又は語における最後の閾値数の文字より前のあらゆる文字を省くことによって(例えば、「geary」が「ary」に省略される)省略化することができる。代替的に、検索語は、検索語からのある一定のタイプの文字を検索語の最初から又は検索語の最後から省くことによって(例えば、「stinson」が「ison」又は「stion」になり、ここである一定のタイプは子音であり、閾値は3である)又はある一定のタイプの全ての文字を省くことによって省略化することができる。省略技術は、例えば、ある一定のタイプの全ての文字を省き、次に、閾値を超えるあらゆる残りの文字も省くことにより、省略を実行するために様々に結合することができる(例えば、「stinson」が「stnsn」になり、「stn」又は「nsn」になり、ここでタイプは母音であり、閾値は3である)。以下に限定されるものではないが、利用可能な言語、及び/又は文化又は現地で一般的に受け入れられる省略形と識別された語を置換する段階を含む省略形の他の方法又は技術を使用することができる(例えば、「boulevard」が「blvd」に省略され、又は「limited」が「ltd」に、「pounds」が「lbs」に省略される等々)。
【0084】
例示的な実施形態では、図6の処理は、検索要求メッセージにおける各検索語に応用することができる。代替的に、図6の処理は、例えば、検索語の閾値数を超えないまで、例えば、最初の4検索語まで検索要求メッセージのコンテンツの一部にのみ適用することができるが、検索要求メッセージに存在する場合があるあらゆる付加的な検索語には適用できない。4よりも小さいか又は大きい他の閾値を使用することができる。
【0085】
流れ図に図示の各ブロック及び流れ図に図示のブロックの組合せは、コンピュータプログラム命令によって実行することができることが理解されるであろう。これらのプログラム命令は、機械を製造するためにプロセッサに提供され、それによってプロセッサで実行される命令は、流れ図ブロック又は複数のブロックに指定されたアクションを実行するための手段を生成する。コンピュータプログラム命令は、プロセッサで実行される命令が流れ図ブロック又は複数のブロックに指示されたアクションを実行するための段階を提供するようにコンピュータ実行処理を生成する一連の作動段階をプロセッサによって実行させるためにプロセッサによって実行することができる。コンピュータプログラム命令は、流れ図のブロックに示す作動段階の少なくとも一部を並行して実行させることができる。更に、段階の一部は、マルチプロセッサコンピュータシステムにおいて生じる場合がある1つよりも多いプロセッサにわたって実行することができる。更に、流れ図に図示の1つ又はそれよりも多くのブロック又はブロックの組合せは、他のブロック又はブロックの組合せと同時に実行することができ、又は本発明の範囲又は精神から逸脱することなく示されたものとは異なるシーケンスでも実行することができる。
【0086】
従って、流れ図に図示のブロックは、指示されたアクションを実行するための手段の組合せ、指示されたアクションを実行するための段階の組合せ、及び指示されたアクションを実行するためのプログラム命令手段をサポートする。流れ図に図示の各ブロック及び流れ図に図示のブロックの組合せは、指示されたアクション又は段階、又は特殊用途ハードウエア及びコンピュータ命令の組合せを実行する特殊用途ハードウエアベースシステムによって実行することができることも理解されるであろう。
【0087】
以上の明細書、実施例、及びデータは、本発明の構成物の製造及びその使用の完全な説明を提供するものである。本発明の多くの実施形態は、本発明の精神及び範囲から逸脱することなく作ることができるので、本発明は、以下に添付の特許請求の範囲にあるものとする。
【符号の説明】
【0088】
100 本発明のシステム
101 汎用クライアントデバイス
106 検索サーバ
107 コンテンツサーバ
110 無線ネットワーク

【特許請求の範囲】
【請求項1】
ネットワーク上で検索を実行する方法であって、
少なくとも1つの検索語を含む検索要求メッセージをモバイルデバイスから、コンテキスト情報を該少なくとも1つの検索語に関連付けるサーバに送信する段階と、
部分インデックスとして作用する前記少なくとも1つの検索語の省略形を判断する段階と、
少なくとも前記部分インデックスによって索引付けされた暫定結果を決定する段階と、
少なくとも前記暫定結果及び前記コンテキスト情報に基づいて結果を前記モバイルデバイスに提供する段階と、
を含むことを特徴とする方法。
【請求項2】
前記暫定結果は、地理的場所を含むことを特徴とする請求項1に記載の方法。
【請求項3】
前記コンテキスト情報は、前記モバイルデバイスに提供される前記結果のタイプを指定し、
前記タイプは、レストランの料理の特徴又は交通スケジュール情報の少なくとも一方を含む、
ことを特徴とする請求項1に記載の方法。
【請求項4】
前記検索要求テキストメッセージは、サービスのタイプに関連付けられたショートコードを含み、
前記モバイルデバイスに提供される前記結果は、前記サービスのタイプに関連付けられた地理的場所を示す、
ことを特徴とする請求項1に記載の方法。
【請求項5】
前記コンテキスト情報は、前記モバイルデバイスに関連付けられた電話番号の市外局番を含むことを特徴とする請求項1に記載の方法。
【請求項6】
前記暫定結果が閾値を超えるか否かを判断する段階と、
前記判断する段階が、前記暫定の閾値が前記閾値を超えることを示した場合に、少なくとも第2の検索語を要求する段階と、
前記モバイルデバイスから少なくとも前記第2の検索語を受信する段階と、
第2の部分インデックスとして作用する前記少なくとも第2の検索語の第2省略形を判断する段階と、
少なくとも前記部分インデックス及び前記第2の部分インデックスによって索引付けされた第2の暫定結果を決定する段階と、
少なくとも前記第2の暫定結果及び前記コンテキスト情報に基づいて前記結果を前記モバイルデバイスに提供する段階と、
を含むことを特徴とする請求項1に記載の方法。
【請求項7】
少なくとも1つの検索語を含む検索問合せをモバイルデバイスから受信して、コンテキスト情報を該少なくとも1つの検索語に関連付ける段階と、
部分インデックスとして作用する前記少なくとも1つの検索語の省略形を判断する段階と、
少なくとも前記部分インデックスによって索引付けされた暫定結果を決定する段階と、
少なくとも前記暫定結果及び前記コンテキスト情報に基づいて結果を前記モバイルデバイスに提供する段階と、
をコンピュータに実行させるための命令、
を含むことを特徴とするコンピュータ可読記憶媒体。
【請求項8】
前記暫定結果は、複数の地理場所を含み、
コンピュータ可読記憶媒体が、選択される少なくとも1つの地理的場所と前記モバイルデバイスの判断された地理的場所との間の地理的距離に基づいて、前記複数の地理的場所の少なくとも1つを前記コンピュータに選択させるための命令を含み、
前記結果は、前記選択された少なくとも1つの地理的場所に関する情報を含む、
ことを特徴とする請求項7に記載のコンピュータ可読記憶媒体。
【請求項9】
前記検索問合せは、ショートコードを含むことを特徴とする請求項7に記載の媒体。
【請求項10】
前記暫定結果が閾値を超えたか否かを判断する段階と、
前記判断する段階が、前記暫定の閾値が前記閾値を超えることを示した場合に、少なくとも第2の検索語を要求する段階と、
第2の部分インデックスとして作用する前記少なくとも第2の検索語の第2省略形を判断する段階と、
少なくとも前記部分インデックス及び前記第2の部分インデックスによって索引付けされた第2の暫定結果を決定する段階と、
少なくとも前記第2の暫定結果及び前記コンテキスト情報に基づいて結果を前記モバイルデバイスに提供する段階と、
を前記コンピュータに実行させるための命令、
を含むことを特徴とする請求項7に記載の媒体。
【請求項11】
ネットワーク上でモバイルデバイスからの検索要求メッセージに応答するように配置されたネットワークデバイスであって、
ネットワーク上でデータを送信及び受信するための送受信機と、
検索要求メッセージにおける少なくとも1つの検索語を識別して、コンテキスト情報を該少なくとも1つの検索語に関連付け、
部分インデックスとして作用する前記少なくとも1つの検索語の省略形を判断し、
少なくとも前記部分インデックスによって索引付けされた暫定結果を決定し、
少なくとも前記暫定結果及び前記コンテキスト情報に基づいて結果をモバイルデバイスに提供する、
ように構成されたプロセッサと、
を含むことを特徴とするネットワークデバイス。
【請求項12】
前記暫定結果は、地理的場所を含むことを特徴とする請求項11に記載のネットワークデバイス。
【請求項13】
前記コンテキスト情報は、前記モバイルデバイスに提供される前記結果のタイプを指定することを特徴とする請求項11に記載のネットワークデバイス。
【請求項14】
前記検索要求メッセージは、サービスのタイプに関連付けられたショートコードを含み、前記モバイルデバイスに提供される前記結果は、該サービスのタイプに関連付けられた地理的場所を示すことを特徴とする請求項11に記載のネットワークデバイス。
【請求項15】
前記検索要求メッセージは、前記モバイルデバイスに関連付けられた電話市外局番を含むことを特徴とする請求項11に記載のネットワークデバイス。
【請求項16】
ネットワーク上で検索を管理するように作動するシステムであって、
ネットワーク上で検索要求メッセージを送信し、この問合せに応答した検索結果を受信するように構成されたモバイルデバイスと、
前記検索要求メッセージを受信し、
前記検索要求メッセージにおける少なくとも1つの検索語を識別して、コンテキスト情報を該少なくとも1つの検索語に関連付け、
部分インデックスとして作用する前記少なくとも1つの検索語の省略形を判断し、
少なくとも前記部分インデックスによって索引付けされた暫定結果を決定し、
少なくとも前記暫定結果及び前記コンテキスト情報に基づいて結果を前記モバイルデバイスに提供する、
ように構成されたネットワークデバイスと、
を含むことを特徴とするシステム。
【請求項17】
前記ネットワークデバイスは、
前記暫定結果が閾値を超えたか否かを判断し、
前記判断が、前記暫定の閾値が前記閾値を超えることを示した場合に、少なくとも第2の検索語を要求し、
第2の部分インデックスとして作用する前記少なくとも第2の検索語の省略形を判断し、
少なくとも前記部分インデックス及び前記第2の部分インデックスによって索引付けされた第2の暫定結果を決定し、かつ
少なくとも前記第2の暫定結果及び前記コンテキスト情報に基づいて結果を前記モバイルデバイスに提供する、
ように構成される、
ことを特徴とする請求項16に記載のシステム。
【請求項18】
前記検索要求メッセージは、前記モバイルデバイスに関連付けられた電話市外局番を含むことを特徴とする請求項16に記載のシステム。
【請求項19】
前記検索要求メッセージは、前記コンテキスト情報を含み、該コンテキスト情報は、前記モバイルデバイスに提供される前記結果のタイプ又は地理的特徴を示すことを特徴とする請求項16に記載のシステム。
【請求項20】
前記検索要求メッセージは、サービスのタイプに関連付けられたショートコードを含み、
前記モバイルデバイスに提供される前記結果は、前記サービスの前記タイプに関連付けられた地理的場所を示す、
ことを特徴とする請求項16に記載のシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公表番号】特表2011−509444(P2011−509444A)
【公表日】平成23年3月24日(2011.3.24)
【国際特許分類】
【出願番号】特願2010−536043(P2010−536043)
【出願日】平成20年10月31日(2008.10.31)
【国際出願番号】PCT/US2008/082085
【国際公開番号】WO2009/070413
【国際公開日】平成21年6月4日(2009.6.4)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.GSM
【出願人】(501438485)ヤフー! インコーポレイテッド (200)
【Fターム(参考)】