(57)【要約】  トランザクションのアプリケーションを検索するための意味論的インターフェイスを与える検索フレームワークを作成するための方法が開示される。この発明の１つの局面によると、少なくとも１つのトランザクションのアプリケーションを検索可能にするための方法は、トランザクションのアプリケーションに関連付けられる正規オブジェクトを作成するステップと、トランザクションアプリケーションに関連付けられるデータに索引を付けるステップとを含む。この方法はまた、正規オブジェクトに関連付けられる情報を用いて索引格納部を作成するステップも含む。索引格納部は、索引を付けられたデータに関連付けられる。最後に、意味論的エンジンが索引格納部にインターフェイス接続される。【特許請求の範囲】
【請求項１】
少なくとも１つのトランザクションのアプリケーションを検索可能にするための方法であって、
前記少なくとも１つのトランザクションのアプリケーションに関連付けられる正規オブジェクトを作成するステップと、
前記少なくとも１つのトランザクションのアプリケーションに関連付けられるデータに索引を付けるステップと、
前記正規オブジェクトに関連付けられる情報を用いて索引格納部を作成するステップとを備え、前記索引格納部は、索引を付けられた前記データに関連付けられ、前記方法はさらに、
意味論エンジンを前記索引格納部にインターフェイス接続するステップを備える、方法。
【請求項２】
前記意味論エンジンにクエリを与えるステップをさらに含み、前記クエリは第１のフォーマットを有し、前記意味論エンジンは、前記クエリを前記第１のフォーマットから第２のフォーマットに翻訳するよう構成され、前記第２のフォーマットは検索エンジンに関連付けられており、前記方法はさらに、
前記検索エンジンを用いて前記索引格納部にアクセスするステップを含む、請求項１に記載の方法。
【請求項３】
前記第２のフォーマットを有する前記クエリに関連付けられる結果が、前記索引格納部内に示されているかどうかを判断するステップをさらに含む、請求項２に記載の方法。
【請求項４】
前記少なくとも１つのトランザクションのアプリケーションから、前記結果に関連付けられる情報を得るステップと、
前記情報を表示するステップとをさらに含み、前記情報を表示するステップは、前記情報に対するアクションを実行可能にするステップを含む、請求項３に記載の方法。
【請求項５】
前記正規オブジェクトをメタデータ格納部に格納するステップをさらに含む、請求項１に記載の方法。
【請求項６】
前記データに索引を付けるステップは、前記データをクロールするステップを含む、請求項１に記載の方法。
【請求項７】
検索エンジンを、前記意味論エンジンおよび少なくとも１つの前記アプリケーションにインターフェイス接続するステップをさらに含む、請求項１に記載の方法。
【請求項８】
前記検索エンジンを、前記意味論エンジンおよび少なくとも１つの前記アプリケーションにインターフェイス接続するステップは、スコアラー、クローラー、索引エンジン、およびクエリエンジンを、前記検索エンジンに与えるステップを含む、請求項７に記載の方法。
【請求項９】
アプリケーションに関連付けられる情報を要求するよう構成されるクエリを処理するための方法であって、
正規ビジネスオブジェクトを選択するステップを備え、前記正規ビジネスオブジェクトは前記アプリケーションに関連付けられており、前記方法はさらに、
前記クエリに関連付けられる情報を用いて検索を実行するステップを備え、前記検索は前記正規ビジネスオブジェクトに関連付けられており、前記検索を実行するステップは、前記アプリケーションに関連付けられる情報を含む索引格納部を利用するステップを含み
、前記方法はさらに、
前記索引格納部から前記検索の結果を得るステップを備える、方法。
【請求項１０】
前記検索の前記結果を用いて前記アプリケーションにアクセスするステップをさらに含む、請求項９に記載の方法。
【請求項１１】
前記検索の前記結果が表示され、
前記検索の前記結果を用いて前記アプリケーションにアクセスするステップは、表示された前記結果を用いて前記アプリケーションにアクセスするステップを含む、請求項１０に記載の方法。
【請求項１２】
ユーザインターフェイスディスプレイに前記情報を入力するステップをさらに含み、
前記索引格納部から前記検索の前記結果を得るステップは、前記ユーザインターフェイスディスプレイに前記結果を表示するステップを含む、請求項９に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
発明の背景
発明の分野
この発明は一般に、アプリケーションを検索可能にすることに関する。特に、この発明は、ユーザがエンタープライズアプリケーションを検索でき、検索の結果を用いてアクションを実行できるようにするフレームワークに関する。
【背景技術】
【０００２】
関連技術の説明
ネットワークの使用が拡大するにつれ、エンタープライズアプリケーションの使用がいっそう普及しつつある。エンタープライズアプリケーションは一般に、ネットワーク内の多数のユーザにサービスを同時に提供する能力を有するサーバでホストされているソフトウェアアプリケーションである。しばしば、エンタープライズアプリケーションはビジネス関連機能を実行するのに好適である。ビジネス関連機能は、顧客情報の追跡、会計、および製造スケジューリングを含み得るが、これらに限定されない。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しばしば、エンタープライズアプリケーションに保持され得るかまたはそうでなければ関連付けられる情報などの情報を検索することが望まれる。一例として、エンタープライズアプリケーションはその内部に、オーストラリアのＸＹＺ銀行などの特定の銀行の顧客担当の名前に関する情報を含み得る。「オーストラリアのＸＹＺ銀行の顧客担当は誰？」などの質問またはクエリに答えるのに、答が得られる可能性がある方法は一般に３つある。図１は、エンタープライズアプリケーションに関連付けられる情報に対して作られ得るクエリの図表示である。クライアント１１８または要求側が、エンタープライズアプリケーション１１０に含まれ得る情報１１４に関するクエリに対する答を望む場合、クライアント１１８は自然言語クエリ１３０を作成し得る。自然言語クエリ１３０は、人間などの、情報１１４へのアクセスを有する可能性のあるエンティティ１２２に対して作られ得る。エンティティ１２２はエンタープライズアプリケーション１１０内の情報１１４へのアクセスを有し得るか、またはエンティティ１２２は他の手段によって情報１１４へのアクセスを有し得る。自然言語クエリ１３０の作成は比較的易しいことがあるが、エンティティ１２２が情報１１４へのアクセスを有するとは限らない。したがって、自然言語クエリ１３０に対する答がエンティティ１２２から容易に得られるとは限らない。クライアント１１８は、１つより多いエンティティにクエリを出してからでないと答を得られないかもしれない。したがって、人間などのアクセスを有するエンティティ１２２を介してクエリを出すことは、しばしば非効率的で費用がかかる。
【０００４】
エンタープライズアプリケーション１１０が情報１１４などのデータを保持しているため、クライアント１１８は、エンタープライズアプリケーション１１０内の情報１１４にアクセスするＳＱＬまたは形式ベースのクエリ１３４を作成し得る。一般に、エンタープライズアプリケーション１１０内の情報１１４には、エンタープライズアプリケーション１１０の開発者が情報１１４をクライアント１１８または他のユーザに入手可能にする場合にしかアクセスできない。情報１１４はエンタープライズアプリケーション１１０内に低レベルで保持されているかもしれないため、入手可能な情報１１４にアクセスするためのＳＱＬまたは形式ベースのクエリ１３４の作成は困難である。エンタープライズアプリケーション１１０の内部構造は複雑であり得、しばしば所有権を有し得る。多くの場合、クライアント１１８は、エンタープライズアプリケーション１１０に関する訓練コースを
受講してからでないとＳＱＬまたは形式ベースのクエリ１３４をうまく作成できないことがある。ＳＱＬまたは形式ベースのクエリ１３４の作成は多大な開発努力を必要とし得る。したがって、情報１１４はＳＱＬまたは形式ベースのクエリ１３４に基づいてうまく得られる可能性があるが、ＳＱＬまたは形式ベースのクエリ１３４の作成に関連付けられる工程は複雑で時間がかかり得る。
【０００５】
情報１１４を突き止めるため、キーワードベースのクエリ１３８がクライアント１１８によって検索エンジン１２６に入力され得る。情報１１４がオーストラリアのＸＹＺ銀行の顧客担当の名前である場合、キーワードベースのクエリ１３８は単語「会計」、「主任」、「ＸＹＺ」、および「オーストラリア」を含み得る。情報１１４がアクセス可能である場合、検索エンジン１２６の使用は比較的迅速で効率的であり得る。しかし、情報１１４が検索エンジン１２６には入手可能でないと判明した場合、すなわち、情報１１４が、検索エンジン１２６にアクセス可能な文書、ファイル、またはアプリケーションに含まれていない場合は、クライアント１１８はキーワードベースのクエリ１３８に対する満足のいく結果を得ることができないであろう。情報１１４はまた、トランザクションのテーブル、すなわち、閲覧用の記述フィールドを含むが検索用に索引を付けられていないテーブルに格納されている場合も、入手不可能であり得る。検索エンジン１２６は実質的に、クライアント１１８が読むことができる検索結果を提示することしかできない。換言すれば、キーワードベースのクエリ１３８に対する結果がクライアント１１８に提示されるとき、その結果は、クライアント１１８が読むことができるが一般に多大な開発努力なしではその結果に対して動作することができないよう提示される。
【０００６】
自然言語クエリ１３０およびキーワードベースのクエリ１３８は、クライアント１１８が情報１１４を得ることができるようにする際に効果的であり得るが、自然言語クエリ１３０は非効率であり得、また自然言語クエリ１３０およびキーワードベースのクエリ１３８は、たとえば情報１１４がエンティティ１２２および検索エンジン１２６には入手不可能であるときなどに、クライアント１１８に情報１１４を与えるとは限らない。さらに、情報１１４は、情報１１４を用いるエンタープライズアプリケーション１１０から実質的に直接に得られない場合は正確ではないかもしれない。一般に、クライアント１１８は、エンタープライズアプリケーション１１０を介して正確な情報１１４へのアクセスをうまく得ることができる。そのような情報１１４は、少なくともエンタープライズアプリケーション１１０と同じくらい正確である。しかし、上述のように、ＳＱＬまたは形式ベースのクエリ１３４の形成は典型的に複雑である。
【０００７】
したがって、必要とされているのは、エンタープライズアプリケーションに保持される情報を容易に検索可能にする方法および装置である。すなわち、望まれているのは、ユーザが正確な情報を求めて、構造化された態様でエンタープライズアプリケーションを検索できるようにするシステムである。
【課題を解決するための手段】
【０００８】
発明の要約
この発明は、トランザクションのアプリケーションを検索するための意味論的インターフェイスを与える検索フレームワークに関する。この発明の１つの局面によると、少なくとも１つのトランザクションのアプリケーションを検索可能にするための方法は、トランザクションのアプリケーションに関連付けられる正規オブジェクトを作成するステップと、トランザクションアプリケーションに関連付けられるデータに索引を付けるステップとを含む。この方法はまた、正規オブジェクトに関連付けられる情報を用いて索引格納部を作成するステップも含む。索引格納部は、索引を付けられたデータに関連付けられる。最後に、意味論的エンジンが索引格納部にインターフェイス接続される。
【０００９】
１つの実施例では、クエリが第１のフォーマットで意味論的エンジンに与えられる。そのような実施例では、意味論的エンジンは、クエリを第１のフォーマットから、検索エンジンに関連付けられる第２のフォーマットに翻訳し、その後、検索エンジンを用いて索引格納部がアクセスされる。
【００１０】
アプリケーションを検索するために意味論的または他の情報を使用可能にする検索ベースのアプリケーションのための開発フレームワークにより、アプリケーションに関連付けられるデータを比較的効率的に得ることができる。そのような開発フレームワークは実質的にどのような検索エンジンも利用できるため、検索エンジンの性能を高めることができる。一般に、開発フレームワークは、アプリケーションに保持される情報に検索エンジンがアクセスできるようにするインターフェイスを含み、エンドユーザにこの情報を与え、エンドユーザはその後、この情報に対して直接にアクションを実行し得る。インターフェイスと、自然言語ベースの文字列から、アプリケーションを検索するために用いられ得る文字列にクエリを翻訳するための意味論的エンジンとを含むツールキットを与えることによって、開発者は、比較的少ない開発努力でアプリケーションを検索可能にする全体的なシステムを作成することができる。
【００１１】
この発明の別の局面によると、少なくとも１つのアプリケーションを検索可能にするためのフレームワークは、インターフェイスと、プラグ接続可能な検索エンジンと、実行時間マネージャとを含む。インターフェイスは、クエリを第１のフォーマットから第２のフォーマットに翻訳し、アプリケーションに関する正規ビジネスオブジェクトに関連付けられる。検索エンジンはクエリに応答してアプリケーションを検索し、実行時間マネージャは、検索エンジンをアプリケーションにインターフェイス接続し、クエリの結果を表示させる。１つの実施例では、アプリケーションはエンタープライズアプリケーション、トランザクションのアプリケーション、またはトランザクションのエンタープライズアプリケーションである。
【００１２】
別の実施例では、開発者が設計者を用いて、正規オブジェクト、それらのカテゴリ、およびオブジェクトについての意味論的定義を含むメタデータを作成し得る。インターフェイスは、ユーザインターフェイスレンダリング部、アクションコントローラ、および意味論的エンジンを含み得る。そのような実施例では、実行時間マネージャは検索エンジンと対話してクローリング、索引付け、および監視を実行し得る。
【００１３】
この発明のさらに別の局面に従って、アプリケーションに関連付けられる情報を要求するクエリを処理するための方法は、アプリケーションに関連付けられる正規ビジネスオブジェクトを選択するステップと、クエリに関連付けられる情報を用いて検索を実行するステップとを含む。検索は、正規ビジネスオブジェクトに関連付けられる。検索を実行するステップは、アプリケーションに関連付けられる情報を含む索引格納部を利用するステップを含む。この方法はまた、索引格納部から検索の結果を得るステップも含む。１つの実施例では、結果は、アプリケーションへの直接アクセスを可能にするウェブリンクである。
【００１４】
本発明のこれらおよび他の特徴および利点が、同一または同様の構造には同一の参照番号が付される添付の図面に関連して以下の説明を検討すると容易に入手可能で明らかになるであろう。
【発明を実施するための最良の形態】
【００１５】
特定的な実施例の説明
以下の説明では、データベースアプリケーションなどのソフトウェアアプリケーションについてプラットフォーム上のサブシステムを試験する実施例を参照して本発明が説明さ
れる。しかし、本発明の実施例はいずれの特定のアーキテクチャ、環境、アプリケーション、または実現例にも限定されない。たとえば、実施例はネットワークデータベースアプリケーションを参照して説明されるが、本発明は有利にはどのようなソフトウェアアプリケーションにも適用され得る。したがって、以下の実施例の説明は例示のためであり、限定のためではない。
【００１６】
エンタープライズアプリケーションに関連付けられる非構造化または非道徳的（demoralized）データの検索は、一般にエンドユーザには容易に入手可能ではない。いくつかの検索アプリケーションが入手可能であるが、それらの検索アプリケーションは一般に、エンドユーザの側で多大な開発努力を費やさないと、特定的なエンタープライズアプリケーションを検索できない。
【００１７】
自然言語クエリを与えるエンドユーザがトランザクションのアプリケーションを検索できるよう、既存の検索エンジンを増強し、既存の検索エンジンを組込んだフレームワークを作成すれば、エンドユーザがエンタープライズアプリケーションを比較的効率的に検索できるであろう。１つの実施例では、特定のエンタープライズアプリケーションを既存の検索エンジンを組込んだフレームワークにインターフェイス接続するために必要なソフトウェアモジュールを開発するために用いられ得るツールキットが開発者に与えられ得る。このツールキットを用いて、エンタープライズアプリケーションまたはトランザクションのアプリケーションを検索するために用いられ得る検索ベースのアプリケーションを開発することができる。そのようなツールキットを用いることにより、高性能検索エンジンの機能性を高めて、開発者の側における多大な開発努力を実質的に必要とせずに、どのような数のエンタープライズまたはトランザクションのアプリケーションも検索できるようになる。
【００１８】
検索エンジンとエンタープライズアプリケーションとの間に接合点を作成すれば、エンドユーザがそれに対して動作し得る情報を得ることができる。さらに、多くの異なる種類の情報の検索が実現され得る。一例として、トランザクションの記録、作業項目、プログラミングバグ、および他のビジネス関連要素の検索が正確に実行され得る。
【００１９】
図２は、この発明の実施例に従った、検索エンジンとアプリケーションとの間のインターフェイスがアプリケーションを検索可能にするシステムのブロック図表示である。検索エンジン２０４は、実質的にどのような好適な検索エンジンであってもよく、インターフェイス２０８を通じてアプリケーション２１２を検索するために用いられ得る。アプリケーション２１２はトランザクションのアプリケーション、すなわちトランザクションを利用するアプリケーションなどのエンタープライズアプリケーションであり得るが、アプリケーション２１２は大きく異なり得ることを認識すべきである。１つの実施例では、検索エンジン２０４は、カリフォルニア州、レッドウッド・ショアーズ（Redwood Shores, California）のオラクル・コーポレイション（Oracle Corporation）から入手可能なApache
Lucene、またはOracle Text検索エンジンなどのＳＱＬ検索エンジン、オープンソースベースの検索エンジンであり得る。
【００２０】
インターフェイス２０８は、検索エンジン２０４を介して作られるクエリが、そのクエリと有効に一致する結果を求めてアプリケーション２１２を検索できるようにするよう構成される。すなわち、インターフェイス２０８は、アプリケーション２１２に関連付けられる、たとえば含まれる情報を検索エンジン２０４が検索できるよう、検索エンジン２０４とアプリケーション２１２との間の接合として有効に作用する。一例として、アプリケーション２１２は、顧客情報が関連のデータベースに格納されるアプリケーションを含み得る。インターフェイス２０８は、検索エンジン２０４および「カリフォルニアのＸＹＺ銀行のジョン・ドウ（John Doe）の口座の顧客担当は誰？」などのクエリを用いて顧客情
報を求めてそのアプリケーションを検索できるようにし得る。
【００２１】
一般に、協働してアプリケーションを検索可能にする検索エンジンおよびインターフェイスを含む全体的なフレームワークは、クエリを受け、クエリに対する応答を与えるよう構成され得る。図３は、この発明の実施例に従った、クライアントが複数のアプリケーションを検索できるようにするフレームワークのブロック図表示である。フレームワーク３１０は一般に、クライアント３０２がフレームワーク３１０にクエリを入力するとアプリケーション３１２を検索可能にするために必要な機能を含む。アプリケーション３１２はトランザクションのアプリケーションであり得る一方で、フレームワーク３１０に入力されるクエリは、フレームワーク３１０に関連付けられる意味論的アプリケーション（図示せず）内に実現され得る。フレームワーク３１０はクエリを、たとえば自然言語からフレームワーク３１０に含まれる検索エンジン（図示せず）が理解するクエリに翻訳し、その後、翻訳されたクエリに基づいて検索アプリケーション３１２に一般に翻訳し得る。翻訳されたクエリからのいずれの結果も、フレームワーク３１０を用いてクライアント３０２に提示され得る。
【００２２】
クエリの結果が提示されるとき、その結果は、クライアント３０２に関連付けられる計算システムの表示画面に表示され得る。１つの実施例では、表示画面は、クエリが入力および表示される検索領域、およびクエリに基づいて検索が実行された後に結果が表示される結果領域を含み得る。図４を参照して、クエリを入力するためのユーザインターフェイス、および表示結果に関連付けられるユーザインターフェイスを与える１つの表示窓が、この発明の実施例に従って説明される。表示窓４００は、ウェブベースのアプリケーション用のブラウザウインドウであってもよく、クエリ領域４０２および結果領域４０６を含む。クエリ領域４０２は、たとえばユーザがキーボード入力を用いることによって検索文字列が入力され得るフィールド４１０を含む。フィールド４１０は、テキスト入力を受けるのに好適であると示されているが、他の方法を用いて投入されてもよいことを認識すべきである。他の方法は、プルダウンまたはポップアップメニューを用いて入力を与えることを含むが、これらに限定されない。
【００２３】
検索文字列がフィールド４１０に入力されると、入力ボタン４１２を押すかクリックするかして検索を開始することができる。入力ボタン４１２を押すと一般に、図３のフレームワーク３１０などのフレームワークを有効に呼び出すプロセスが始まり、検索文字列に関連付けられる答を求めて少なくとも１つのアプリケーションを検索する。検索が完了すると、結果４１４ａ−ｃが結果領域４０６内に表示され得る。３つの結果４１４ａ−ｃが示されているが、クエリに対する結果４１４ａ−ｃの数は大きく異なり得ることを認識すべきである。
【００２４】
結果４１４ａ−ｃは、検索されるいずれかのアプリケーションから生じ得る。示されるように、結果４１４ａおよび結果４１４ｂはアプリケーション「Ａ」に関連付けられる一方で、結果４１４ｃはアプリケーション「Ｂ」に関連付けられる。説明される実施例では、結果４１４ａ−ｃは、選択され得、選択されると自身が関連付けられるアプリケーションについての表示窓を開き得るリンクである。一例として、結果４１４ａが選択された場合、アプリケーション「Ａ」に関連付けられる表示窓が開き得、アプリケーション「Ａ」内に見つけられるようなクエリの結果を表示する。
【００２５】
結果４１４ａ−ｃは、それぞれ関連のアクションボタン４１６ａ−ｃを有し得る。しかし、すべての結果４１４ａ−ｃが関連のアクションボタン４１６ａ−ｃを一般に有するとは限らないことを認識すべきである。アクションボタン４１６ａ−ｃを選択することによって、対応する結果４１４ａ−ｃに関してアクションが実行され得る。１つの実施例では、アクションボタン４１６ａ−ｃを選択すると、ユーザは、表示窓４００が関連付けられ
る意味論的アプリケーションからトランザクションのアプリケーションに再び導かれ得る。たとえば、フィールド４１０に入力される検索文字列が仕事内容に関する検索についてのものである場合は、結果４１４ａ−ｃは、その仕事内容と一致する求人を含み得る。そのような場合、アクションボタン４１６ａ−ｃは、選択されると、ユーザが関連のトランザクションのアプリケーションを用いてその求人に応募することになるボタンであってもよく、たとえば、アクションボタン４１６ａをクリックすると、結果４１４ａに関連付けられる求人にユーザが応募することになり得る。
【００２６】
フィールド４１０は、異なる検索カテゴリに関連付けられる検索文字列を受けることができる。１つの実施例では、検索カテゴリは人物検索カテゴリ、作業リスト検索カテゴリ、および統合リポジトリ検索カテゴリを含み得る。人物検索カテゴリは、クライアントまたはユーザが、顧客または顧客担当情報が商業コミュニティモデルのデータベースに格納されるビジネスアプリケーション内の顧客または顧客担当などの人物を検索できるようにし得る。人物検索については、結果４１４ａ−ｃは顧客担当の名前を含み得る。作業リスト検索カテゴリは、クライアントまたはユーザが、ビジネス処理の結果として組織内で割当てられる個人的なアクション項目を検索できるようにし得る。作業リスト検索については、結果４１４ａ−ｃはユーザについての作業のリストまたはアクション項目を含み得る。統合リポジトリ検索カテゴリは、クライアントまたはユーザが、さまざまなサードパーティプログラムまたはアプリケーションを統合するために用いられ得るアプリケーションプログラミングインターフェイス（ＡＰＩ）を突き止めることができるようにし得る。統合リポジトリ検索については、結果４１４ａ−ｃはサードパーティ統合者に入手可能なＡＰＩのリストであり得る。
【００２７】
図３のフレームワーク３１０のようなフレームワークを与えるため、実質的に標準的な検索エンジンが組込まれ得る。アプリケーションをフレームワークに統合するためのツールキットが、開発者が用いるために与えられ得る。ツールキット内には、カスタムモジュールを開発するために開発者が使用するためのＡＰＩとともに、検索カテゴリを管理するためのユーザインターフェイスが与えられ得る。そのようなツールキットはまた、検索エンジンをフレームワークにインターフェイス接続可能にする実行時間マネージャも与え得る。開発者は一般に、このツールキットを用いて検索カテゴリを定義し得る。図５Ａは、この発明の実施例に従った、検索ベースのアプリケーションアーキテクチャに関連付けられる構成要素のブロック図表示である。アーキテクチャ５００は、全体的な検索ツールキットであると考えることができ、検索エンジン５０４を利用する。アーキテクチャ５００は、カテゴリ検索を実行可能にするよう構成される。検索エンジン５０４はプラグ接続可能であり、ＡＰＩを有する実質的にどのような検索エンジンであってもよい。一般に、検索エンジン５０４は、検索エンジン５０４がクローラー５０６、索引エンジン５０８、クエリエンジン５１０、およびスコアラー５１２などの構成要素を内部でインターフェイス接続可能にするという意味で、プラグ接続可能である。
【００２８】
クローラー５０６は、当業者によって理解され得るように、ソースをクロールするよう構成される。クローラー５０６は、１つの実施例では、たとえば検索されるべきエンタープライズアプリケーションおよび／またはトランザクションのアプリケーションのような実質的にすべてのアプリケーション５５４をクロールする機能を与える。正規ビジネスオブジェクト定義についての検索可能文書の構成、および実行時間アプリケーションデータの構成は、クローラーを用いて発生する。Java（登録商標） Database Connectivity（JDBC）ＡＰＩは、クローラー５０６が基づき得る標準的なＳＱＬデータベースアクセスインターフェイスである。
【００２９】
索引エンジン５０８は一般に、クローラー５０６によって構成された検索可能文書に索引を付け、索引格納部５５８をクエリエンジン５１０に露出するよう構成される。索引格
納部５５８は、索引が格納される場所である。索引格納部５５８に関連付けられるセキュリティ設定などの設定は、実行時間マネージャ５１６によって管理され得る。実行時間マネージャ５１６はまた、たとえばクローリングが計画され得、索引格納部５５８が設定され得るように、検索を実行時間で管理可能にするよう構成される。
【００３０】
クエリエンジン５１０は、クエリビルダーであると考えることができ、予めクロールされた索引格納部５５８内で検索を実行するためにアーキテクチャ５００内で用いられるソフトウェアモジュールである。クエリエンジン５１０は、メタデータマネージャ５２０を介してメタデータリポジトリ５２４から得られるメタデータを用いて、ユーザが入力したクエリを、検索エンジン５０４が理解するクエリから索引格納部５５８が理解するクエリに有効に変換する。メタデータリポジトリ５２４は実質的にすべてのメタデータを格納し、またオブジェクトカテゴリおよび意味論的定義を格納する。メタデータマネージャ５２０はメタデータを管理し、検索カテゴリを作成、修正、および削除するためのユーザインターフェイスを与える。１つの実施例では、ビジネスオブジェクトがメタデータリポジトリ５２４に格納され得る一方で、検索カテゴリがメタデータマネージャ５２０によって格納される。
【００３１】
スコアラー５１２はレーティング機能を与える。検索エンジン５０４は一般にスコア付け機能を有するが、スコアラー５１２を用いて、検索エンジン５０４に含まれるスコア付け機能を増強または変更することができる。一般に、各スコアラー５１２は特定の検索カテゴリに関連付けられてもよく、特定の結果がクエリとどの程度一致するかに関する情報を与え得る。
【００３２】
検索エンジン５０４と通信しているインターフェイス構成要素５２８は、意味論的エンジン５３０、ユーザインターフェイスレンダリング部５３２、およびアクションコントローラ５３４を含む。意味論的エンジン５３０は、ユーザクエリを、検索エンジン５０４が理解するクエリに翻訳するよう構成されるクエリビルダーである。すなわち、意味論的エンジン５３０は、メタデータリポジトリ５２４に格納されるメタデータに基づいてクエリを変換し得る。１つの実施例では、意味論的エンジン５３０は、自然言語ベースのクエリを検索エンジン特定クエリに翻訳する。一例として、「誰がジェーン・ドウ（Jane Doe）に報告するか？」というユーザクエリは、適切なフィールドに割当てられる意味論的情報に基づいて″mgrFirstname:Jane, mgrLastname:Doe″などの検索エンジン特定クエリに翻訳され得る。
【００３３】
ユーザインターフェイスレンダリング部５３２は、クエリまたは検索の結果を表示可能にするよう構成される。すなわち、ユーザインターフェイスレンダリング部５３２は、所与の検索カテゴリのユーザインターフェイス表現を生成可能にし、ユーザに表現可能にする。１つのユーザインターフェイスレンダリング部５３２は、テーブルに結果を表示するよう構成され得る。一般に、ユーザインターフェイスレンダリング部５３２は、所与の種類の正規ビジネスオブジェクトに割当てられ得る。
【００３４】
アクションコントローラ５３４は、結果ページに表示されるユーザインターフェイス事象を、１つの実施例ではサービスビーン５４２であり得るサービスインターフェイス内に定義されるビジネスアクションに翻訳するよう構成される。すなわち、アクションコントローラ５３４は、サービスビーン５４２を呼び出すことによって検索関連ビジネス論理を実行する事象マネージャである。サービスインターフェイス５４２は、ビジネス論理が有効に保持される構成要素である。サービスインターフェイス５４２は検索カテゴリに対して登録され得る。１つの実施例では、サービスインターフェイス５４２は３種類のサービス、すなわちリストサービス、エンティティサービス、およびアクションサービスを含む。そのようなサービスはツールキットであると考えることができる。リストサービスは、
検索カテゴリによって定義されるエンティティのリストに対して実行され得、一次キーのリストによって同定され得る。エンティティサービスは、ビジネスオブジェクトの特定のエンティティに対して実行され得る。たとえば、クエリの結果が、各々が一次キーによって同定される結果のリストとしてユーザに提示され得る。これらの結果に対して実行され得るビジネスアクションまたはアクションサービスは、結果を保存すること、結果が求人であれば特定の仕事に応募すること、および特定の属性に基づいて結果をソートすることを含み得るが、これらに限定されない。アクションサービスは、１つの実施例では、ユーザインターフェイスアクションにリンクされ得るサービスである。
【００３５】
ユーザインターフェイステンプレート５３８は、サービスビーン５４２がアクションコントローラ５３４によって呼び出されることを可能にするスニペット、たとえばハイパーテキストマーク付言語（ＨＴＭＬ）スニペットである。一例として、テンプレート５３８を用いて、ユーザインターフェイスレンダリング部５３２に関連付けられるコードを実質的に変化させることなくユーザインターフェイスをカスタマイズすることができる。図５Ｂに関して以下に説明されるように、ユーザインターフェイステンプレート５３８を利用して、検索結果またはアクション形式のためのダイナミックＨＴＭＬ（ＤＨＴＭＬ）ユーザインターフェイスを表現することができる。
【００３６】
アーキテクチャ５００はまた、アプリケーションセキュリティモジュール５４６および国際化モジュール５５０にも関連付けられ得る。アプリケーションセキュリティモジュール５４６は、たとえばサービスインターフェイスまたはサービスビーン５４２などのツールキットと対話して、アーキテクチャ５００に関連付けられるセキュリティ要件を有効に実施する。アプリケーションセキュリティモジュール５４６は、検索カテゴリに基づいてセキュリティポリシーを定義し得、索引エンジン５０８およびクエリエンジン５１０を含むがこれらに限定されないアーキテクチャ５００の構成要素によって用いられ得る。国際化モジュール５５０を用いて、検索を複数の言語で利用可能にすることができる。
【００３７】
さまざまな外部構成要素がアーキテクチャ５００にインターフェイス接続され得る。図５Ｂに示されるように、全体的なアーキテクチャ５００は、実行時間マネージャ５１６を用いて検索を実行時間で管理するモニタまたはアドミニストレータ５９２を含み得る。設計者または開発者５８８は、メタデータリポジトリ５２４に格納される検索カテゴリを定義し得る。検索カテゴリは、検索エンジン５０４が検索を実行するために用い得るアーティファクトをカプセル化し、顧客およびタスクなどのカテゴリを含み得るが、これらに限定されない。ＤＨＴＭＬユーザインターフェイス５８０は、ユーザインターフェイスレンダリング部５３２へのユーザ入力を与える。カリフォルニア州、レッドウッド・ショアーズのオラクル・コーポレイションから入手可能なJDeveloperなどのツール５８４は、サービス指向型アプリケーションを構築するための統合開発環境を与える。すなわち、ツール５８４は、ユーザインターフェイステンプレート５３８およびサービスインターフェイス５４２を作成および修正可能にする。
【００３８】
上述のように、エンドユーザがアプリケーションを検索するために自然言語検索文字列を入力できるようにすれば、検索ベースのアプリケーションフレームワークの活用性が増す。検索エンジンをエンタープライズアプリケーションと用いるために組込可能にする全体的なインターフェイスの一部として意味論的エンジンおよび意味論的アプリケーションを用いることにより、全体的なアーキテクチャに機能が与えられる。図６を参照して、検索ベースのアプリケーションとエンタープライズアプリケーションとの間のインターフェイスがこの発明の実施例に従って説明される。フレームワーク６００は、１つの実施例ではトランザクションのアプリケーションであり得るエンタープライズアプリケーション６３４を含む。アプリケーション６３４は、アプリケーション６３４が用いる情報を格納するデータベース６３０に関連付けられる。サービスビーン６３８などのサービスインター
フェイスはビジネス論理を含み、アプリケーション６３４が、意味論的アプリケーション６０２および検索エンジン６２６を含む検索ベースのアプリケーションによってアクセスされることを可能にする。
【００３９】
意味論的アプリケーション６０２は、図５Ａに関して上で説明されたレンダリングエンジン６１４、メタデータ格納部６１０、および意味論的エンジン６０６を用いて、検索エンジン６２６を有効に呼び出してアプリケーション６３４を検索する。たとえば購入注文などの正規オブジェクトは一般に、特定の実現例に拘束されない正規ビジネスオブジェクトカテゴリ６２２に関連付けられるビジネスオブジェクトである。しばしば、ある種類の分類法が正規オブジェクトに適用されて、正規ビジネスオブジェクトカテゴリ６２２が形成され得る。検索用に索引を付けられ、構造化データを含む意味論的アプリケーション６０２は、アプリケーション６３４と実質的に並列に動作すると考えることができる。１つの実施例では、意味論的アプリケーション６０２はアプリケーション６３４を有効にラップして（wrap）記述する。
【００４０】
ユーザインターフェイス６１８は、リッチウェブユーザインターフェイス６１８であってもよく、検索文字列などを検索ベースのアプリケーションに入力可能にする。リッチウェブユーザインターフェイス６１８は、ビジネスアクションがクエリの結果に容易に関連付けられることを可能にする。アプリケーション６３４は形式またはＨＴＭＬベースのユーザインターフェイス６４２と関連付けられ、これは、クエリの結果を表示可能にし、それに対して動作することを可能にする。
【００４１】
ミドルウェア６５０は、カリフォルニア州、レッドウッド・ショアーズのオラクル・コーポレイションから入手可能なFusion Middlewareであってもよく、管理能力および展開プラットフォームを技術プラットフォームに有効に集約する。一般に、ミドルウェア６５０は、実質的にどのような開発ツール（図示せず）も、どのようなエンタープライズアプリケーション６３４も、およびどのような検索エンジン６２６もフレームワーク６００に統合可能にする。すなわち、ミドルウェア６５０は、フレームワーク６００の構成要素を容易に交換可能にする。ミドルウェア６５０は、異なるツール、アプリケーション、または検索エンジンをフレームワーク６００に組込可能にする実質的にどのようなミドルウェアであってもよいことを認識すべきである。換言すれば、エンタープライズソフトウェアを設計して走らせるためのプラットフォームを与えるどのようなミドルウェア６５０も、Fusion Middlewareの代わりに用いられ得る。
【００４２】
アプリケーション基礎６４６は、アプリケーションを構築可能にするよう構成される。すなわち、アプリケーション基礎６４６は、その上にトランザクションのアプリケーションなどのアプリケーションが構築され得る基礎を与え、その中でアプリケーションが走り得るアプリケーション文脈を与える。１つの実施例では、アプリケーション基礎６４６は、アプリケーションセキュリティ、ログ取り、およびエラー処理を含み得るがこれらに限定されない一般的なサービスを提供する。一般に、意味論的アプリケーション６０２はアプリケーション基礎６４６の上に展開され得、アプリケーション基礎６４６内に与えられるアプリケーション文脈を共有し得る。
【００４３】
図７は、この発明の実施例に従った、アプリケーションをフレームワークに統合する１つの方法を図示するプロセスフロー図である。エンタープライズアプリケーションなどのアプリケーションを、そのアプリケーションに対する検索を実行可能にするフレームワークに統合するプロセス７００は、フレームワークがエンタープライズアプリケーションにインターフェイス接続されるステップ７０４で開始する。フレームワークがエンタープライズアプリケーションにインターフェイス接続されると、ステップ７０８において、エンタープライズアプリケーションに適切なサービスインターフェイスまたはサービスビーン
が作成される。サービスビーンは、フレームワークを用いてエンタープライズアプリケーションにアクセスできるようにアクションを定義可能にする。
【００４４】
適切なサービスインターフェイスまたはビーンが作成されると、ステップ７１２において、正規ビジネスオブジェクトが作成される。正規ビジネスオブジェクトはデータを定義するよう構成され、データベースまたはメタデータリポジトリなどのリポジトリに格納され得る。ステップ７１６において、データベースまたはJava(登録商標）クラスに格納されるオブジェクト属性が、ステップ７１２において作成された正規ビジネスオブジェクトに対応付けられる。ステップ７２０において、正規ビジネスオブジェクトに対して取られるべきアクションが割当てられる。アクションの割当ては、検索エンジンを正規ビジネスオブジェクトに割当てることを含み得る。
【００４５】
ステップ７２０から、プロセスフローはステップ７２４に移り、ここで正規ビジネスオブジェクトが意味論的に記述される。次に、ステップ７２８において、検索エンジンのクローラーを用いて正規ビジネスオブジェクトに索引を付け得る。正規ビジネスオブジェクトの索引付けは、エンタープライズアプリケーションからデータを取ることを含み得る。正規ビジネスオブジェクトに索引が付けられた後、ステップ７３２において、検索エンジンを用いて索引格納部が検索され得る。正規ビジネスオブジェクトの意味論的記述が検索エンジンによって用いられて、クエリを構築する。索引格納部が検索されると、エンタープライズアプリケーションをフレームワークに統合するプロセスは完了する。
【００４６】
図８を参照して、ユーザによって与えられる検索文字列の処理が説明される。図８は、この発明の実施例に従った、ユーザが与えるクエリを処理する１つの方法を図示するプロセスフロー図である。ユーザが与えるクエリを処理するプロセス８００は、検索カテゴリが同定されるステップ８０４で開始する。換言すれば、メタデータリポジトリに格納される正規ビジネスオブジェクトが、検索に用いるために選択される。正規ビジネスオブジェクトが選択された後、ステップ８０８において検索文字列が入力される。１つの実施例では、意味論的エンジンが、意味論的定義に基づいて、検索文字列が所与のカテゴリに関係していると判断し得る。こうして、意味論的エンジンは、特定の検索文字列を特定の正規オブジェクトに関係付け得る。一例として、文字列「誰がジョン・ドウを雇うか？」を含む検索文字列が、意味論的エンジンによって、従業者である正規オブジェクトに関係付けられ得る。
【００４７】
ステップ８０８において入力される検索文字列は典型的に、ユーザによって入力される。検索文字列が入力されると、ステップ８１２において、その検索文字列を用いて検索が実行される。検索の実行は、検索文字列を検索エンジンが理解するフォーマットに有効に翻訳し、次にそのフォーマットを、そこから結果が得られるべき索引格納部が理解する別のフォーマットに翻訳することを含む。
【００４８】
ステップ８１６において、索引格納部から検索の結果が得られる。索引格納部内の結果は典型的に、検索中のアプリケーションから得られることを認識すべきである。ステップ８２０において、結果が次にクリックされるかまたはそうでなければ選択されて、結果が関連付けられるアプリケーションへのアクセスをユーザに与える。ユーザによってアプリケーションが入力された後、ユーザが与えるクエリを処理するプロセスは完了する。
【００４９】
図９を参照して、トランザクションのアプリケーションを検索可能にする検索ベースのアプリケーションフレームワークを設定および使用するプロセスが、この発明の実施例に従って説明される。検索ベースのアプリケーションフレームワークを実現するプロセスは、設計者９２４または開発者が、たとえばトランザクションのアプリケーションなどのアプリケーション９２８を検査するときに開始する。アプリケーション９２８を検査して、
アプリケーション９２８内のどの情報が検索に利用可能であるべきかが判断され得る。設計者９２４は、アプリケーション９２８を検査した後、検索に利用可能であるべき正規ビジネスオブジェクトカテゴリ９１６を作成するか、またはこれに注釈を付ける。正規ビジネスオブジェクトカテゴリ９１６の作成は一般に、正規ビジネスオブジェクトの作成を伴う。
【００５０】
正規ビジネスオブジェクトが作成されると、プラグ接続可能な検索エンジンの一部であり得るクローラー９２０がアプリケーション９２８に索引を付けて、アプリケーション９２８を検索可能にする。このクローリングプロセスは、クローラー９２０が、正規ビジネスオブジェクトの検索アーティファクトを用いて、所与の正規ビジネスオブジェクトカテゴリ９１６についての索引を作成できるようにする。これらの索引は次に、クローラー９２０によって索引格納部９１２に格納される。
【００５１】
ユーザがアプリケーション９２８を検索することを望む場合、ユーザはフレームワーク９００のユーザインターフェイス９０４を用いて、たとえば自然言語クエリなどのクエリを入力し得る。意味論的エンジン９０８が、正規ビジネスオブジェクトカテゴリ９１６を用いて索引格納部９１２を検索する。１つの実施例では、意味論的エンジン９０８は、検索エンジン（図示せず）を通じて索引格納部９１２を有効に間接に検索し得る。意味論的エンジン９０８は、索引格納部９１２を用いて適切な索引が見つかると、クエリをアプリケーション９２８に再び導き得る。クエリがアプリケーション９２８に再び導かれる前に、クエリは典型的に、まず検索エンジンが理解するフォーマットに、次にアプリケーション９２８が理解するフォーマットに変換されることを認識すべきである。
【００５２】
検索ベースのアプリケーション開発フレームワークは一般に、データベース管理システムに関して実現され得る。１つの好適なデータベース管理システムアーキテクチャは、図１０に示される３層のアーキテクチャである。データベース管理システムの中心には、データベース９６３を格納する中央格納部９６１またはリポジトリがある。データベース９６３は典型的に１つ以上のハードドライブに格納され、典型的により大きなコンピュータシステムの一部である。情報はさまざまなフォーマットでデータベース９６３に格納され得、リレーショナルデータベース管理システムは、情報を格納するためのテーブルに大きく依存している。データベースサーバ９６５は、データベース９６３と対話するプログラムのインスタンスである。データベースサーバ９６５の各インスタンスは、数ある特徴の中で特に、独立してデータベース９６３にクエリを出し、情報を格納し得る。
【００５３】
場合によっては、データベースサーバ９６５は、グラフィカルユーザインターフェイスなどの使いやすいインターフェイスを含まないことがある。したがって、少なくとも１つのアプリケーションサーバ９６７が、データベースサーバ９６５にユーザインターフェイスを与え得る。一例として、アプリケーションサーバ９６７は、インターネットまたはいずれかの他のネットワーク内のウェブアプリケーションサーバであり得る。アプリケーションサーバ９６７は、データベースサーバ９６５を通じてデータベース９６３にアクセスするための使いやすいメカニズムを与え得る。ウェブブラウザ９６９を利用して、アプリケーションサーバ９６７にアクセスすることができる。
【００５４】
図１１は、本発明の実施例を実現するコンピュータシステム内に存在し得る構成要素のブロック図を示す。コンピュータシステム９７１は、オペレーティングシステムを含むコンピュータプログラムからの命令を実行するプロセッサ９７３を含む。プロセッサ９７３を利用して、意味論的エンジンをたとえば走らせることができる。プロセッサ９７３は典型的にメモリキャッシュを有するが、プロセッサ９７３は、命令またはコンピュータコードおよびデータを格納し得るメモリ９７５を利用してもよい。
【００５５】
固定格納部９７７はコンピュータプログラムおよびデータを格納し得る。固定格納部９７７は典型的に永続的であり、メモリ９７５と比べて格納量が多い。データベースのための共通の固定格納部９７７は複数のハードドライブであるが、固定格納部９７７はどのような好適な構成要素であってもよいことを理解すべきである。着脱式格納部９７９は、自身に格納されるコンピュータプログラムおよび／またはデータに移動性を与える。着脱式格納部９７９は、フロッピー（登録商標）ディスク、テープ、ＣＤ／ＲＯＭ、ＤＶＤ、フラッシュメモリ装置などを含み得るが、これらに限定されない。
【００５６】
メモリ９７３、固定格納部９７７および着脱式格納部９７９は、本発明を実現するコンピュータコードまたはコード装置、本発明で用いるためのデータなどを組込んだコンピュータプログラムを格納および抽出するために利用され得るコンピュータ読取可能な記憶媒体の例を与える。また、たとえばインターネットを含むネットワーク内で、搬送波で具体化されるデータ信号も、コンピュータ読取可能な記憶媒体であり得る。入力装置９８１は、ユーザがコンピュータシステム９７１にインターフェイス接続できるようにする。入力装置９８１はキーボード、マウス、ボタン、ダイヤル、またはいずれかの他の好適な入力メカニズムであり得る。出力装置９８３は一般に、システム９７１がユーザに出力を与えることができるようにする。出力装置９８３は、モニタ、表示画面、ＬＥＤ、プリンタ、または実質的に如何なる他の出力メカニズムも含むが、これらに限定されない。
【００５７】
ネットワークインターフェイス９８５は典型的に、システム９７１が、ネットワークインターフェイス９８５が接続されるネットワークにインターフェイス接続できるようにする。コンピュータシステム９７１のシステムバスアーキテクチャが矢印９８７によって表わされる。図１１に示される構成要素は、多くのコンピュータシステムにおいて見い出され得る。しかし、構成要素は、この発明の思想または範囲から逸脱することなく追加され、削除され、組合せられ得る。たとえば、固定格納部９７７は、ネットワーク接続を通じてアクセスされるファイルサーバであってもよい。したがって、図１１は例示のためであり限定のためではない。
【００５８】
この発明の２，３の実施例しか説明されなかったが、この発明は、この発明の思想または範囲から逸脱することなく多くの他の特定的な形態で具体化され得ることを理解すべきである。一例として、検索エンジンはこの発明のアーキテクチャに関してプラグ接続可能であると説明された。しかし、検索エンジンは代わりにアーキテクチャの固定または統合部分であってもよい。
【００５９】
トランザクションのアプリケーションであるエンタープライズアプリケーションが、検索ベースのアプリケーションフレームワークを用いて検索されるのに好適であると説明されたが、検索されるアプリケーションはトランザクションのエンタープライズアプリケーションであることに限定されない。たとえば、トランザクションのアプリケーションではないエンタープライズアプリケーション、またはエンタープライズアプリケーションではないトランザクションのアプリケーションが検索され得る。
【００６０】
フレームワークにフィルタを含ませて、検索またはクエリに対して得られたより多くの結果をさらに検索可能にしてもよい。たとえば、最初のクエリがデータベース開発のフィールド内で求職を検索した場合、フィルタを適用して、特定の会社に関連付けられるすべての職を除去したり、特定の基本給を指定したりしてもよい。
【００６１】
フレームワークの構成要素は一般に、ソフトウェアモジュールである、またはコンピュータコード装置を用いて作成されたモジュールであると説明された。１つの実施例では、フレームワークの構成要素は、この発明の思想または範囲から逸脱することなくハードウェアモジュールとソフトウェアモジュールとの組合せとして、または実質的にハードウェ
アモジュールのみとしてさえ実現され得る。
【００６２】
サービスビーンなどのサービスインターフェイスは一般に、検索ベースのアプリケーションフレームワークをサポートするアーキテクチャに含まれていると説明された。上述のように、サービスビーンは、オブジェクトに適用されるべきアクションを表わす。サービスを定義および提供する他のメカニズムがサービスビーンの代わりに実現されてもよい。代替的に、そこから検索結果が得られるアプリケーションを用いるアクションが望まれていない実施例については、サービスビーンは検索ベースのアプリケーションフレームワークに含まれているとは限らないことを認識すべきである。
【００６３】
検索は、一旦ユーザが検索ベースのアプリケーションを用いて検索を実行すると、その検索を実行するために入力されたテキストが将来のアクセスのために保存されるよう、保存され得る。同様に、検索の結果は、ユーザが別の検索を実行することなくその検索結果に容易にアクセスできるよう保存され得る。
【００６４】
一般に、この発明の方法に関連付けられるステップは大きく異なり得る。ステップは、この発明の思想または範囲から逸脱することなく追加され、削除され、変更され、組合せられ、順序変えされ得る。一例として、クエリに対する応答が得られると発生し得るアクションとして、結果をクリックし、検索されたアプリケーションを入力することが説明されたが、一組の応答に対して取られるアクションは大きく異なり得る。１つの実施例では、カスタムアクションが、対応する正規ビジネスオブジェクトに割当てられる。カスタムアクションが、対応する正規ビジネスオブジェクトに割当てられる。カスタムアクションは、意味論的アプリケーションまたは意味論的アプリケーションが拘束されるトランザクションのアプリケーションへの移行のためのアクションを含み得るが、これらに限定されない。したがって、本発明の例は例示的に考慮されるべきであり、限定的に考慮されるべきではなく、本発明は本明細書中で与えられる詳細に限定されず、添付の請求項の範囲内で修正され得る。
【図面の簡単な説明】
【００６５】
【図１】エンタープライズアプリケーションに関連付けられる情報に対して作られるクエリの図表示である。
【図２】この発明の実施例に従った、検索エンジンとアプリケーションとの間のインターフェイスがアプリケーションを検索可能にするシステムのブロック図表示である。
【図３】この発明の実施例に従った、クライアントが複数のアプリケーションを検索できるようにするフレームワークのブロック図表示である。
【図４】この発明の実施例に従った、アクションが取られることを可能にする検索クエリ領域および結果領域を有する表示窓の図表示である。
【図５Ａ】この発明の実施例に従った、アプリケーションを検索可能にする基本ソフトウェアアーキテクチャのブロック図表示である。
【図５Ｂ】この発明の実施例に従った、示されるようにこれもまたソフトウェアアーキテクチャに含まれ得る拡張部を有するソフトウェアアーキテクチャ、すなわち図５Ａのソフトウェアアーキテクチャ５００のブロック図表示である。
【図６】この発明の実施例に従った、トランザクションのアプリケーションにインターフェイス接続する検索ベースのアプリケーションの図表示である。
【図７】この発明の実施例に従った、アプリケーションをフレームワークに統合する１つの方法を図示するプロセスフロー図である。
【図８】この発明の実施例に従った、クエリを処理する１つの方法を図示するプロセスフロー図である。
【図９】この発明の実施例に従った、検索可能なアプリケーションがフレームワーク内にインターフェイス接続されて検索に利用可能になると発生するアクションを示すフローのブロック図表示である。
【図１０】データベース管理システムアーキテクチャのブロック図表示である。
【図１１】この発明の実施例に関連して利用され得る計算システムのブロック図表示である。
【図１】
2009531791.tif 000002
【図２】
2009531791.tif 000003
【図３】
2009531791.tif 000004
【図４】
2009531791.tif 000005
【図５Ａ】
2009531791.tif 000006
【図５Ｂ】
2009531791.tif 000007
【図６】
2009531791.tif 000008
【図７】
2009531791.tif 000009
【図８】
2009531791.tif 000010
【図９】
2009531791.tif 000011
【図１０】
2009531791.tif 000012
【図１１】
2009531791.tif 000013
【国際調査報告】
2009531791.tif 000014
2009531791.tif 000015