(57)【要約】【課題】  場所または地域に関係する情報を提供する方法、システム、および装置を実現する。【解決手段】  文字列がアプリケーションプログラムに入力されると、その文字列が１つまたは複数の場所または地域に関係するかどうかを判定するために文字列が解析される。文字列が場所または地域に関係する場合、文字列はその場所または地域に関係する付加情報に関連づけられる。アクションのリストを提供し、各アクションがその付加情報の選択を可能にしてもよい。一実施形態では、地図、電話エリアコードあるいは時間変換情報を選択し表示できる。他の実施形態では、特定国に関係する通貨換算を選択し表示できる。【選択図】  図４
2006092514.tif 000002
【特許請求の範囲】
【請求項１】
電子文書を作成し編集するシステムにおいて場所に関係する情報を発見する方法であって、
前記電子文書内に含まれる文字列が場所に関係するかどうかを判定し、
前記文字列が場所に関係すると判定される場合、該場所に関係する情報を識別する実行可能なアクションのリストに前記文字列を関連づけ、
前記アクションのリストから特定のアクションの選択を受け取り、
前記特定のアクションの選択に基づいて、前記場所に関係する選択された情報の表示を生成する
ことを特徴とする場所に関係する情報を発見する方法。
【請求項２】
前記文字列が前記場所の名称を特定することを特徴とする請求項１に記載の方法。
【請求項３】
前記場所に関係する情報が、前記場所に関係する電話エリアコードを特定し、前記選択された情報の表示が該電話エリアコードの表示を含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記場所に関係する情報が、前記場所の地図を含み、前記選択された情報の表示が前記場所の地図の表示を含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記場所に関係する情報が、通貨換算結果を含み、前記選択された情報の表示が該結果の表示を含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記場所に関係する情報が、追加的場所のリストを含み、該追加的場所が前記場所と地理的関係を有することを特徴とする請求項１に記載の方法。
【請求項７】
前記方法がさらに、
前記追加的場所のリストから特定の追加的場所の選択を受け取り、
前記特定の追加的場所に関係する情報を識別する実行可能な第２のアクションのリストに前記特定の追加的場所の選択を関連づけ、
前記第２のアクションのリストの表示を生成する
ことを特徴とする請求項６に記載の方法。
【請求項８】
コンピュータによって実行される時に、請求項１に記載の方法を該コンピュータに実行させるコンピュータ可読命令を備えたことを特徴とするコンピュータ可読媒体。
【請求項９】
請求項１に記載の方法を実行することが可能であることを特徴とするコンピュータで制御された装置。
【請求項１０】
電子文書を作成し編集するシステムにおいて場所に関係する情報を発見する方法であって、
前記電子文書内に含まれる文字列が場所に関係するかどうかを判定し、
前記文字列が場所に関係すると判定される場合、項目のリストに前記文字列を関連づけ、該項目のリストは前記場所に関係する情報へのリンクを提供し、１つまたは複数の前記項目が前記場所に関係する付加情報を直接表示する
ことを特徴とする場所に関係する情報を発見する方法。
【請求項１１】
前記文字列が前記場所の名称を特定することを特徴とする請求項１０に記載の方法。
【請求項１２】
前記付加情報が前記場所に関係する電話エリアコードを含むことを特徴とする請求項１０に記載の方法。
【請求項１３】
前記付加情報が通貨換算結果を含むことを特徴とする請求項１０に記載の方法。
【請求項１４】
前記付加情報が追加的場所のリストを含み、該追加的場所が前記場所と地理的関係を有することを特徴とする請求項１０に記載の方法。
【請求項１５】
コンピュータによって実行される時に、請求項１０に記載の方法を該コンピュータに実行させるコンピュータ可読命令を備えたことを特徴とするコンピュータ可読媒体。
【請求項１６】
請求項１０に記載の方法を実行することが可能であることを特徴とするコンピュータで制御された装置。
【請求項１７】
電子文書を作成および編集し場所に関係する情報を発見するシステムにおいて、
前記電子文書内に含まれる文字列が場所に関係するかどうかを判定する手段と、
前記文字列が場所に関係すると判定される場合、該場所に関係する情報を識別する実行可能なアクションのリストに前記文字列を関連づける手段と、
前記アクションのリストから特定のアクションの選択を受け取る手段と、
前記特定のアクションの選択に基づいて、前記場所に関係する選択された情報の表示を生成する手段と
を備えたことを特徴とする場所に関係する情報を発見するシステム。
【請求項１８】
前記文字列が前記場所の名称を特定することを特徴とする請求項１７に記載のシステム。
【請求項１９】
前記場所に関係する情報が、前記場所に関係する電話エリアコードを特定し、前記選択された情報の表示が該電話エリアコードの表示を含むことを特徴とする請求項１７に記載のシステム。
【請求項２０】
前記場所に関係する情報が、前記場所の地図を含み、前記選択された情報の表示が前記場所の地図の表示を含むことを特徴とする請求項１７に記載のシステム。
【請求項２１】
前記場所に関係する情報が、通貨換算結果を含み、前記選択された情報の表示が該結果の表示を含むことを特徴とする請求項１７に記載のシステム。
【請求項２２】
前記場所に関係する情報が、追加的場所のリストを含み、該追加的場所が前記場所と地理的関係を有することを特徴とする請求項１７に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はソフトウェアアプリケーションに関する。より詳細には、本発明の実施形態は、意味的にラベル付けされた文字列（意味ラベル付き文字列）の発見に基づいて場所または地域に関係する情報を処理し表示するソフトウェアアプリケーションに関する。
【背景技術】
【０００２】
多くの現実世界の場面において、ユーザが、例えばテキスト文書、スプレッドシート（集計表）、電子メール等の文書（ドキュメント）に現れる人物、企業、住所等に関する付加情報にアクセスできれば望ましいことがある。米国ワシントン州レドモンド（Redmond）のＭｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎ（マイクロソフト社）によって開発されたＳｍａｒｔＴａｇ（登録商標）技術は、このようなコンテクスト情報（contextual information）を文書に付加し、それにアクセスするためのメカニズムを提供する。あるコンフィグレーション(設定)では、破線やその他のタイプのビジュアルインジケータが特定の文字列の下に置かれ、その文字列がスマートタグ（すなわち、そのテキスト部分に関連するコンテクスト情報）を有することを示す。ＳｍａｒｔＴａｇ（登録商標）技術は、関連するコンテクスト情報のセットが利用可能なあらかじめ選択された文字列がないかどうかについて文書を調べるリコグナイザ（認識部）を含む。コンテクスト情報は、ダイナミックリンクライブラリ（ＤＬＬ）やその他のデータストアに記憶される。そしてリコグナイザは、認識した文字列にこのコンテクスト情報をアタッチ（張り付け）する。また、ＳｍａｒｔＴａｇ（登録商標）技術は、スマートタグアクションのメニューを表示する追加グラフィックも提供する。ＳｍａｒｔＴａｇ（登録商標）技術は、認識文字列に関連するコンテクスト情報を処理して認識文字列に関してユーザがとり得るアクションを提供するアクションハンドラを含む。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
この例は、テキスト文書の認識文字列に基づくスマートタグを例示しているが、スマートタグは、株式ティッカーシンボルのようなある特定のタイプのデータに限定される場合がある。このような実施態様は、異なるタイプのデータを扱うユーザにとっては有効でない。そこで、ＳｍａｒｔＴａｇ（登録商標）技術を異なるタイプのターゲット情報に適用することが引き続き必要とされている。
【課題を解決するための手段】
【０００４】
本発明の実施形態は、場所または地域に関係する情報を取得し表示する方法、システム、および装置を提供することによって、上記の課題を解決する。文字列がアプリケーションプログラムに入力されると、その文字列が１つまたは複数の場所または地域に関係するかどうかを判定するために、文字列が解析される。文字列が場所または地域に関係する場合には、文字列はその場所または地域に関係する付加情報に関連づけられる。アクションのリストを提供して、各アクションがその付加情報の選択を可能にしてもよい。一実施形態では、地図、電話エリアコード、通貨レート、観光情報、空港情報、あるいは時間変換情報を選択し表示できる。他の実施形態では、特定国に関係する通貨の換算（転換）を選択し表示できる。
【発明を実施するための最良の形態】
【０００５】
上記で概説したように、本発明の実施形態は、場所または地域に関係する情報を取得し表示する方法、システム、装置、およびコンピュータ可読媒体を提供する。以下の詳細な説明では添付図面を参照する。添付図面は、詳細な説明の一部をなし、具体的な実施形態あるいは実施例を実例として示す。本発明の技術思想および範囲から逸脱することなく、これらの実施形態を組み合わせること、他の実施形態を利用すること、および構成上の変更をすることが可能である。したがって、以下の詳細な説明は限定的な意味で解釈すべきでなく、本発明の範囲は、添付の特許請求の範囲およびその均等物によって定められる。
【０００６】
図面において、複数の図を通じて同一番号は同一要素を表す。以下、図面を参照して、本発明および例示的オペレーティング環境の諸態様について説明する。図１および以下の説明は、本発明が実施され得る好適なコンピューティング環境の簡単な概説を行うことを意図している。本発明は、パーソナルコンピュータ上のオペレーティングシステム上で動作するアプリケーションプログラムとともに実行されるプログラムモジュールとの一般的関連で説明されるが、当業者には認識されるように、本発明は、他のプログラムモジュールとの組合せにおいても実施し得る。本発明の種々の実施形態を実施するための例示的なオペレーティング環境およびソフトウェアアーキテクチャのさらなる態様が、「文字列に意味ラベルを付け、意味ラベル付き文字列に基づいてアクションを提供する方法およびシステム（Method and System for Semantically Labeling Strings and Providing Actions Based on Semantically Labeled Strings）」と題する米国特許出願第０９／５８８，４１１号に記載されており、これは参照により明確に本明細書に援用される。
【０００７】
一般的に、プログラムモジュールは、特定のタスクを実行し、または特定の抽象データ型を実装するルーチン、プログラム、コンポーネント、データ構造、およびその他のタイプの構造を含む。さらに、当業者には理解されるように、本発明は、ハンドヘルド装置、マルチプロセッサシステム、マイクロプロセッサ方式の電子機器またはプログラム可能な消費者電子機器、ミニコンピュータ、メインフレームコンピュータ等の他のコンピュータシステム構成を用いて実施してもよい。また、本発明は、通信ネットワークを通じてリンクされたリモート処理装置によってタスクが実行されるような分散コンピューティング環境で実施してもよい。分散コンピューティング環境では、プログラムモジュールはローカルおよびリモートの両方のメモリ記憶装置に配置され得る。
【０００８】
図１を参照して、本発明の種々の実施形態を実施するパーソナルコンピュータ２のための例示的なコンピュータアーキテクチャについて説明する。図１に示すコンピュータアーキテクチャは従来型のパーソナルコンピュータを例示しており、これは中央処理ユニット４（「ＣＰＵ」）、ランダムアクセスメモリ８（「ＲＡＭ」）および読み出し専用メモリ（「ＲＯＭ」）１０を含むシステムメモリ６、ならびにメモリをＣＰＵ４に結合するシステムバス１２を含む。起動中等にコンピュータ内の要素間で情報を転送するのに役立つ基本ルーチンを含む基本入出力システムがＲＯＭ１０に記憶されている。また、パーソナルコンピュータ２は、オペレーティングシステム１６、アプリケーションプログラム２０５等のアプリケーションプログラム、およびデータを記憶する大容量記憶装置１４を含む。
【０００９】
大容量記憶装置１４は、バス１２に接続された大容量ストレージコントローラ（図示せず）を通じてＣＰＵ４に接続される。大容量記憶装置１４およびそれに関連するコンピュータ可読媒体は、パーソナルコンピュータ２のための不揮発性ストレージを提供する。本明細書に含まれるコンピュータ可読媒体の説明はハードディスクやＣＤ−ＲＯＭドライブのような大容量記憶装置に言及しているが、コンピュータ可読媒体は、パーソナルコンピュータ２からアクセスできるいかなる利用可能な媒体であってもよいことが当業者には理解されるはずである。
【００１０】
例として、限定ではないが、コンピュータ可読媒体としては、コンピュータ記憶媒体および通信媒体が挙げられる。コンピュータ記憶媒体としては、コンピュータ可読命令、データ構造、プログラムモジュールまたはその他のデータのような情報を記憶するための任意の方法または技術で実現される揮発性および不揮発性、リムーバブル（取り外し可能）および非リムーバブル（取り外し不能）の媒体がある。コンピュータ記憶媒体には、以下のものに限定されないが、ＲＡＭ、ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ等の固体メモリ技術、ＣＤ−ＲＯＭ、ＤＶＤ等の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ等の磁気記憶装置、またはその他、目的の情報を記憶するために使用可能でありコンピュータからアクセス可能な任意の媒体がある。
【００１１】
本発明の種々の実施形態によれば、パーソナルコンピュータ２は、インターネットのような、ＴＣＰ／ＩＰネットワーク１８を通じてのリモートコンピュータへの論理コネクションを用いたネットワーク環境で動作してもよい。パーソナルコンピュータ２は、バス１２に接続されたネットワークインタフェースユニット２０を通じてＴＣＰ／ＩＰネットワーク１８に接続してもよい。なお、ネットワークインタフェースユニット２０は、他のタイプのネットワークおよびリモートコンピュータシステムに接続するために利用されてもよいことが理解されるべきである。また、パーソナルコンピュータ２は、キーボードやマウス（図示せず）等のいくつかの装置から入力を受け取り処理するための入出力コントローラ２２も含み得る。同様に、入出力コントローラ２２は、ディスプレイスクリーン、プリンタ、またはその他のタイプの出力装置への出力を提供してもよい。
【００１２】
上記で簡単に言及したように、オペレーティングシステム１６等の複数のプログラムモジュールおよびデータファイルが、パーソナルコンピュータ２の大容量記憶装置１４およびＲＡＭ８に記憶され得る。オペレーティングシステム１６としては、米国ワシントン州レドモンドのＭｉｃｒｏｓｏｆｔ  ＣｏｒｐｏｒａｔｉｏｎのＷＩＮＤＯＷＳ（登録商標）  ＸＰオペレーティングシステムのような、ネットワーク接続されたパーソナルコンピュータの動作を制御するのに好適なオペレーティングシステムがある。大容量記憶装置１４およびＲＡＭ８は、１つまたは複数のアプリケーションプログラムを記憶してもよい。特に、大容量記憶装置１４およびＲＡＭ８は、電子文書２４を作成し編集するためのアプリケーションプログラム２０５を記憶することができる。例えば、アプリケーションプログラム２０５はワードプロセッサアプリケーションプログラムを含み、電子文書２４はワードプロセッサ文書を含み得る。また、アプリケーションプログラム２０５はスプレッドシートアプリケーションプログラムを含み、電子文書２４はスプレッドシートを含んでもよい。同様に、アプリケーションプログラム２０５は電子メールアプリケーションプログラムを含み、電子文書２４は電子メールメッセージを含んでもよい。他のタイプの電子文書を作成し編集するためのアプリケーションプログラムもまた、本発明の種々の実施形態とともに使用可能である。
【００１３】
本発明の実施形態は、電子文書２４内で記述または参照された場所に関係する情報を提供するアプリケーションプログラム２０５とともに使用するためのプログラムモジュールを提供する。本発明の実施形態は他のソフトウェア構造とともに実施してもよいと理解されるが、本発明の例示的実施形態は、リコグナイザプラグイン２２０およびアクションプラグイン２２５を提供する。以下でさらに詳細に説明するように、リコグナイザプラグイン２２０は、場所に関連する文字列を認識する。説明の目的上、場所に関連する文字列は、地理的位置あるいは任意の他のタイプのエリアへの任意の参照を含み得る。場所に関連する文字列としては、都市名、州、国、省、県、郡、区等が挙げられる。他の例では、場所に関連するテキスト文字列としては、住居、会社、あるいはその他の任意の実体の名称が挙げられる。そして、リコグナイザプラグイン２２０は、アクションプラグイン２２５による使用のために、この情報をアプリケーションプログラム２０５に渡す。アクションプラグイン２２５は、場所に関係する付加情報を表示するために、認識された文字列に対するアクションを実行する。
【００１４】
本発明の種々の実施形態によれば、アクションプラグイン２２５は、所与の文字列に対して実行し得るアクションのリストを生成してもよい。このプロセスの一部として、アクションプラグイン２２５は、アプリケーションプログラム２０５またはオペレーティングシステム１６の言語設定２６を問い合わせてもよい。言語設定２６は、現在のユーザインタフェース言語を指定する。その場合、アクションのリストは、現在のユーザインタフェース言語で作成され得る。さらに、アクションプラグイン２２５は、表示設定ファイル２８を参照することにより、すべての有効な言語で使用可能な各ソースユニット名ごとに、および、現在のユーザインタフェース言語で使用可能な各ソースユニット名ごとに、アクションメニュー項目を生成してもよい。リコグナイザプラグイン２２０およびアクションプラグイン２２５の動作に関して、表示設定ファイル２８および言語設定２６の使用法を含めて、以下でさらに詳細に説明する。
【００１５】
上記で簡単に説明したように、表示設定ファイル２８は、リコグナイザプラグイン２２０およびアクションプラグイン２２５の両方によって利用される。特に、リコグナイザプラグイン２２０は、表示設定ファイル２８の各部を利用してテキスト文字列内で認識される場所名またはその他のデータを判定し、アクションプラグイン２２５は、表示設定ファイル２８を利用して、ユーザに提示すべきアクションメニューを作成し、場所に関係する付加情報の表示を実際に実行する。表示設定ファイル２８は、本発明を実施するための１つの手段として示されているが、当業者には理解されるように、場所に関係する付加情報は、サーバ、クライアントプログラム、ユーザがカスタマイズ可能なフォーム、あるいはその他の任意のデータソースのような他のソースから取得することも可能である。
【００１６】
一例として、表示設定ファイル２８は、ソース名を格納し得るいくつかのフィールドを含み、各ソース名は場所に関係し得る。上記のように、ソース名としては、都市名、州、国、省、県、郡、区等が挙げられる。以下でさらに詳細に説明するように、リコグナイザプラグイン２２０は、ソース名フィールドに格納されたテキストまたはデータを用いて場所を識別する。また、表示設定ファイル２８は、各ソース名フィールドで参照される場所に関係する付加情報を含んでもよく、またはその付加情報へのポインタもしくはリンクを有してもよい。例えば、各場所に関係する付加情報としては、地図へのリンク、実際の地図、電話エリアコード、および、それぞれの場所に関係するその他の任意のタイプの情報が挙げられる。これらのフィールドは、本発明が異なる言語で動作することを可能にするためのロケール識別番号を含んでもよい。また、表示設定ファイル２８は、通貨換算や、その他のタイプの変換、例えばマイルとキロメートル、インチとセンチメートル、およびその他の計量単位の間の変換のために用いられるデータを含んでもよい。なお、表示設定ファイル２８のこれらの例示的なフィールドは、本発明を実施する際に関係し得るデータのタイプの単なる説明のための例に過ぎないことが理解されるべきである。
【００１７】
次に図２を参照して、本発明の種々の実施形態とともに使用するための例示的なソフトウェアアーキテクチャについて説明する。図２に示すアーキテクチャは、ワードプロセッサアプリケーションプログラム、電子メールアプリケーションプログラム、スプレッドシートアプリケーションプログラム、または電子文書を作成し編集するためのその他のタイプのアプリケーションプログラムのような、アプリケーションプログラム２０５を含む。また、アプリケーションプログラム２０５は、ウェブブラウザも含み得る。アプリケーションプログラム２０５は、リコグナイザダイナミックリンクライブラリ（「ＤＬＬ」）２１０およびアクションＤＬＬ２１５と通信することができる。以下でさらに詳細に説明するように、リコグナイザＤＬＬ２１０は１つまたは複数のリコグナイザプラグイン２２０Ａ〜２２０Ｎを制御し、アクションＤＬＬ２１５は１つまたは複数のアクションプラグイン２２５Ａ〜２２５Ｎを制御する。
【００１８】
本発明の一実施形態によれば、リコグナイザプラグイン２２０Ａ〜２２０Ｎおよびアクションプラグイン２２５Ａ〜２２５Ｎはオートメーションサーバである。オートメーションサーバは、米国ワシントン州レドモンドのＭｉｃｒｏｓｏｆｔ  ＣｏｒｐｏｒａｔｉｏｎのＷＩＮＤＯＷＳ（登録商標）  ＸＰオペレーティングシステム上で動作するプログラムに組み込まれ、あるいはそのような既存のプログラムに機能を追加する周知のソフトウェアコンポーネントである。オートメーションサーバは、さまざまなコンピュータ言語で書くことができ、プログラムを再コンパイルすることを必要とせずに実行時にプログラムとの連携およびその解除が可能である。
【００１９】
リコグナイザＤＬＬ２１０は、アプリケーションプログラム２０５によって編集されている電子文書から個別のリコグナイザプラグイン２２０Ａ〜２２０Ｎへのテキスト文字列の分配を処理する。リコグナイザプラグイン２２０Ａ〜２２０Ｎは、ワードプロセッサ文書やスプレッドシート文書のような電子文書内の特定の文字列を認識する。リコグナイザプラグイン２２０Ａ〜２２０Ｎは、アプリケーションプログラムモジュール２０５とともにパッケージングされてもよく、あるいは、対象となる特定の文字列を認識するためにサードパーティによって書かれてもよい。一般に、リコグナイザＤＬＬ２１０は、単一パラグラフまたはセル値増分としてリコグナイザプラグイン２２０Ａ〜２２０Ｎに文字列を渡す。しかし、文字列は、他のサイズおよびフォーマットでリコグナイザプラグイン２２０Ａ〜２２０Ｎに渡されてもよい。
【００２０】
ある特定の文字列を、意味情報を含むものと認識することの一部として、リコグナイザプラグイン２２０Ａ〜２２０Ｎは、どの文字列がラベル付けされるべきか、およびそれらがどのようにラベル付けされるべきかを判定する。リコグナイザＤＬＬ２１０は、種々のリコグナイザプラグイン２２０からのこれらの結果を受け取った後、アプリケーションプログラム２０５へ意味カテゴリを送る。本発明の実際的な一実施形態によれば、リコグナイザプラグイン２２０が、表示設定ファイル２８または他の記憶装置に記憶された文字列を認識するために提供される。リコグナイザプラグイン２２０は、文字列を認識した後、文字列の長さや最初の文字のＡＳＣＩＩコードのようなその文字列を記述する情報を返すことができる。
【００２１】
なお、リコグナイザプラグイン２２０Ａ〜２２０Ｎのそれぞれが別個に実行されることが理解されるべきである。リコグナイザＤＬＬ２１０は、異なるリコグナイザプラグイン２２０Ａ〜２２０Ｎが異なる時刻に結果を返すことによる非同期性の処理を担当する。これにより、種々のタイプのデータを１つの文字列内で認識でき、それぞれの意味ラベル付き文字列ごとに異なるアクションを提供できる。文字列内の特定の語句を認識するためのリコグナイザプラグイン２２０の動作については、図４に関して以下でさらに詳細に説明する。
【００２２】
リコグナイザプラグイン２２０Ａ〜２２０Ｎによって文字列がラベル付けされた後、表示設定ファイル２８からの情報を含み得るスキーマ情報が、アプリケーションプログラムモジュール２０５に送られる。その後、アプリケーションプログラムモジュール２０５のユーザは、認識された文字列に対して、スキーマ情報に関連するアクションを実行できる。アクションＤＬＬ２１５は、アクションを実行するために、実行されるアクションプラグイン２２５Ａ〜２２５Ｎを管理する。リコグナイザプラグイン２２０Ａ〜２２０Ｎと同様に、アクションプラグイン２２５Ａ〜２２５Ｎは、アプリケーションプログラムモジュール２０５とともにパッケージングされてもよく、あるいは、対象となる特定のアクションを実行するためにサードパーティによって書かれてもよい。アクションプラグイン２２５Ａ〜２２５Ｎは、文字列に関連するスキーマ情報に基づいてユーザに提示される可能なアクションを提供する。以下でさらに詳細に説明するように、ユーザに提供されるアクションのリストは、各スキーマタイプごとに動的に生成される。そして、この情報がアプリケーションプログラム２０５に提供され、アプリケーションプログラム２０５は、文字列が選択された時にユーザに対してアクションのリストを表示する。
【００２３】
アクションのリストからアクションが選択された後、アクションＤＬＬ２１５は、適当なアクションプラグイン２２５Ａ〜２２５Ｎを管理し、アクションプラグインとアプリケーションプログラムモジュール２０５の間で必要な情報をやりとりすることにより、アクションプラグインが目的のアクションを実行できるようにする。一般に、アプリケーションプログラムモジュール２０５は、アクションＤＬＬ２１５に、ユーザが選択したアクションを呼び出すためのオートメーション要求を送る。以下でさらに詳細に説明するように、アクションプラグイン２２５の一実施形態は、認識された文字列で参照される場所または地域に関係する付加情報を提供する。
【００２４】
次に、図３Ａおよび図３Ｂを参照して、本発明の種々の実施形態によって提供される例示的なユーザインタフェースについて説明する。図３Ａに示すように、文字列３２が、ユーザによってアプリケーションプログラム２０５にタイプ入力され得る。この例では、文字列は、「Ｆｒａｎｃｅ」（フランス）という語を綴った文字を有する。ユーザが文字列を提供すると、文字列はリコグナイザプラグイン２２０に提供される。リコグナイザプラグイン２２０は、語「Ｆｒａｎｃｅ」のような文字列内に含まれる文字の組合せを認識する。この例では、語「Ｆｒａｎｃｅ」が表示設定ファイル２８内にあるとする。語「Ｆｒａｎｃｅ」が表示設定ファイル２８内にあるので、文字列３２に対して、リコグナイザプラグイン２２０によって識別される関連する名前があるであろう。したがって、アプリケーションプログラムモジュール２０５は、文字列３２に対してアクションを実行し得るという指示をユーザに提供する。この指示は、文字列３２を強調表示することによって、あるいは文字列３２の近くにユーザインタフェース指示３４を提供することによって、ユーザに提供できる。図３Ａに示した例示的実施形態では、ユーザインタフェース指示３４は、プルダウンメニュー機能を有するアイコンとして示されている。
【００２５】
文字列３２またはユーザインタフェース指示３４がユーザによって選択されると、アクションのリストが表示される。このアクションリストは、文字列３２に対して実行し得るアクションのリストに対応する１つまたは複数のメニュー項目を有するドロップダウンメニュー３６を含んでもよい。本発明の一実施形態によれば、ドロップダウンメニュー３６の内容は、文字列３２内で記述または参照された場所に関係するアクションを提供する。図３Ａに示した例では、第１のアクション４４Ａは、ユーザがフランスに関する付加情報を閲覧することを可能にする。この第１のアクション４４Ａは、選択されると、アプリケーションプログラム２０５において付加情報を表示してもよいし、ウェブブラウザアプリケーションでの閲覧に適したウェブページあるいはその他の任意のユーザインタフェースへのリンクを提供してもよい。また、図３Ａに示したように、第２のアクション４４Ｂは、フランスに関するタイムゾーン（時間帯）情報を表示し、第３のアクション４４Ｃは、フランスに関する電話発呼コード情報を表示する。電話発呼コード情報は、インターネット上の他のサーバから、あるいはローカルまたはリモートのデータベースのようなその他の任意の好適なソースから収集された情報に基づくことができる。
【００２６】
第４のアクション４４Ｄは、通貨換算の計算のための付加処理を呼び出してもよい。通貨換算のためのプロセスおよび方法は、「意味ラベル付き文字列に基づいて計量システム間で数値を変換する方法、システム、および装置（Method, System, And Apparatus For Converting Numbers Between Measurement Systems Based Upon Semantically Labeled Strings）」と題する米国特許出願第１０／１４０，５４４号にさらに記載されており、その内容は参照により明確に本明細書に援用される。概説すれば、システムは、文字列３２に記述されたエリアに固有の通貨を判定した後、通貨換算値を計算する。通貨換算は、為替サーバのようなインターネット上の他のサーバから、あるいはローカルコンピュータのようなその他の任意の好適なソースから収集された情報に基づくことができる。
【００２７】
図３Ａおよび図３Ｂに示したように、第５のアクション４４Ｅの選択時に、地図情報が表示されてもよい。本実施形態では、実際の地図、地理的配置を記述する情報、またはその他の任意の同様の情報がユーザに対して表示され得る。一緒に表示され得る他の情報として、運転方向、地形、地理または場所に関係するその他の任意の同様の情報がある。第５のアクション４４Ｅが選択されると、図３Ｂに示されている地図４０が、データソースから取得され、アプリケーションプログラム２０５またはその他の任意の好適なユーザインタフェースにおいてユーザに対して表示され得る。当業者には理解されるように、データソースは、インターネット上のサーバやローカルデータベース等の任意の好適なコンピューティングソースであってもよく、地図情報は、ウェブブラウザアプリケーションあるいはその他の任意のユーザインタフェースに表示されてもよい。
【００２８】
上記の特徴に加えて、アクションのリストは、文字列３２に記述された場所に関係する（例えば、その場所の近くまたはその中の）他の場所の名称を含んでもよい。例えば、図３Ａにおけるアクションリストは、フランスに関係のある他の場所、すなわちボルドー（Bordeaux）、パリ（Paris）、およびストラスブール（Strasbourg）に対する場所メニューオプション４４Ｆを表示している。このような実施形態では、これらのメニューオプション４４Ｆのそれぞれが、それぞれのリストされたエリアごとにメニュー項目の追加セットを生成するように構成される。例えば、ボルドー（Bordeaux）のメニューオプションが選択された場合、ボルドーに関する地図、電話発呼コード等の情報を示すためのメニューオプションのリストが生成され得る。前述の特徴と同様に、この情報は、表示設定ファイル２８またはその他の任意のネットワーク接続されたデータソースに由来してもよい。
【００２９】
次に図４を参照して、アプリケーションプログラム２０５において新たな文字列の入力を処理するための例示的なルーチン４００について説明する。ルーチン４００はブロック４０２から開始される。ブロック４０２で、ユーザが電子文書に新たなパラグラフを入力したり、前に入力したパラグラフを編集したりすると、アプリケーションプログラム２０５は新たな文字列を受け取る。ブロック４０２から、ルーチン４００はブロック４０４に進み、アプリケーションプログラム２０５は、この新規文字列をリコグナイザＤＬＬ２１０に渡す。前述のように、リコグナイザＤＬＬ２１０は、アプリケーションプログラム２０５と通信し、リコグナイザプラグイン２２０Ａ〜２２０Ｎによって実行される必要のあるジョブを管理し、リコグナイザプラグイン２２０Ａ〜２２０Ｎから結果を受け取り、認識された文字列に対する前述のスキーマ情報のような情報をアプリケーションプログラムモジュール２０５に送ることを担当する。なお、本発明の一実施形態では、ブロック４０４ではパラグラフがリコグナイザＤＬＬ２１０に渡されると理解されたい。しかし、代替実施形態として、センテンス、スプレッドシートセルの内容、文書のセクション、文書全体等がリコグナイザＤＬＬ２１０に渡されてもよい。すなわち、本発明の実施形態は、リコグナイザＤＬＬ２１０にパラグラフを渡すことのみに限定されないことが理解されるべきである。
【００３０】
ブロック４０４から、ルーチン４００はブロック４０６に進み、リコグナイザＤＬＬ２１０は文字列をリコグナイザプラグイン２２０Ａ〜２２０Ｎに渡す。次に、ルーチン４００はブロック４０８に進み、文字列内のキーワードまたは文字を認識するためにリコグナイザプラグインがパラグラフに対して実行される。前述のように、本発明のこの実施形態は、表示設定ファイル２８あるいはローカルコンピュータまたはリモートコンピュータに記憶された他の同様のファイルのようなデータソースに記憶された語句とのテキスト照合を行う。文字列のテキストとデータソース内の１つまたは複数の語句との間に一致があると判定された場合、プロセスのこの部分の結果が記憶される。
【００３１】
ブロック４１０で、リコグナイザプラグイン２２０からの結果がリコグナイザＤＬＬ２１０で受け取られる。次に、ルーチン４００はブロック４１２に進み、リコグナイザＤＬＬ２１０は、文字列がリコグナイザプラグイン２２０Ａ〜２２０Ｎへ送信された後でパラグラフが編集されたかどうかを判定する。パラグラフが編集されている場合、ルーチン４００はブロック４０４に戻り、編集された文字列がリコグナイザＤＬＬ２１０に渡される。パラグラフが編集されていない場合、ルーチン４００はブロック４１４に進み、リコグナイザＤＬＬ２１０は、リコグナイザプラグイン２２０から受け取った結果をアプリケーションプログラム２０５に送り、そこで、ルーチン４００の結果および認識文字列に関係する付加情報が前述のように表示される。そして、ルーチン４００はブロック４１６に進み、終了する。
【００３２】
以上に基づいて、本発明の種々の実施形態は、所定の文字列を識別し場所に関係する情報を提供するための方法、システム、装置、およびコンピュータ可読媒体を提供することが当業者には理解されるはずである。上記の明細書、実施例およびデータは、本発明の構成の製造法および使用法の完全な記述を提供する。本発明の技術思想および技術範囲から逸脱することなく本発明の多くの実施形態が可能であり、本発明は添付の特許請求の範囲に存する。
【図面の簡単な説明】
【００３３】
【図１】本発明の実施形態のための例示的オペレーティング環境を提供するパーソナルコンピュータのアーキテクチャを示すブロック図である。
【図２】本発明の種々の実施形態による、テキスト文字列を認識し、ラベル付けし、認識した文字列に対してアクションを実行するためのソフトウェアアーキテクチャを示すブロック図である。
【図３Ａ】本発明の種々の実施形態により提供される、認識したテキスト文字列に対するアクションメニューを含む画面表示を示す画面図である。
【図３Ｂ】本発明の種々の実施形態により提供される、認識したテキスト文字列に対するアクションメニューを含む画面表示を示す画面図である。
【図４】本発明の実際的な一実施形態によるアプリケーションプログラムにおいて提供される文字列入力を処理するための例示的ルーチンを示す流れ図である。
【符号の説明】
【００３４】
２  パーソナルコンピュータ
４  中央処理ユニット（ＣＰＵ）
６  システムメモリ
８  ランダムアクセスメモリ（ＲＡＭ）
１０  読み出し専用メモリ（ＲＯＭ）
１２  システムバス
１４  大容量記憶装置
１６  オペレーティングシステム
１８  ＴＣＰ／ＩＰネットワーク
２０  ネットワークインタフェースユニット
２２  入出力コントローラ
２４  電子文書
２６  言語設定
２８  表示設定ファイル
２０５  アプリケーションプログラム
２１０  リコグナイザＤＬＬ
２１５  アクションＤＬＬ
２２０  リコグナイザプラグイン
２２５  アクションプラグイン
３２  文字列
３４  ユーザインタフェース指示
３６  ドロップダウンメニュー
４０  地図
４４Ａ  第１のアクション
４４Ｂ  第２のアクション
４４Ｃ  第３のアクション
４４Ｄ  第４のアクション
４４Ｅ  第５のアクション
４４Ｆ  場所メニューオプション
【図１】
2006092514.tif 000003
【図２】
2006092514.tif 000004
【図３Ａ】
2006092514.tif 000005
【図３Ｂ】
2006092514.tif 000006
【図４】
2006092514.tif 000007
【外国語明細書】
2006092514000001.pdf