JP2009531791A - 検索ベースのアプリケーション開発フレームワーク - Google Patents

検索ベースのアプリケーション開発フレームワーク Download PDF

Info

Publication number
JP2009531791A
JP2009531791A JP2009503211A JP2009503211A JP2009531791A JP 2009531791 A JP2009531791 A JP 2009531791A JP 2009503211 A JP2009503211 A JP 2009503211A JP 2009503211 A JP2009503211 A JP 2009503211A JP 2009531791 A JP2009531791 A JP 2009531791A
Authority
JP
Japan
Prior art keywords
search
application
query
engine
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2009503211A
Other languages
English (en)
Other versions
JP5129804B2 (ja
Inventor
ワン,アンピン
ラム,デイビッド・チュエン・チ
ダブホールカル,エイビナッシュ
Original Assignee
オラクル・インターナショナル・コーポレイション
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オラクル・インターナショナル・コーポレイション filed Critical オラクル・インターナショナル・コーポレイション
Publication of JP2009531791A publication Critical patent/JP2009531791A/ja
Application granted granted Critical
Publication of JP5129804B2 publication Critical patent/JP5129804B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

トランザクションのアプリケーションを検索するための意味論的インターフェイスを与える検索フレームワークを作成するための方法が開示される。この発明の1つの局面によると、少なくとも1つのトランザクションのアプリケーションを検索可能にするための方法は、トランザクションのアプリケーションに関連付けられる正規オブジェクトを作成するステップと、トランザクションアプリケーションに関連付けられるデータに索引を付けるステップとを含む。この方法はまた、正規オブジェクトに関連付けられる情報を用いて索引格納部を作成するステップも含む。索引格納部は、索引を付けられたデータに関連付けられる。最後に、意味論的エンジンが索引格納部にインターフェイス接続される。

Description

発明の背景
発明の分野
この発明は一般に、アプリケーションを検索可能にすることに関する。特に、この発明は、ユーザがエンタープライズアプリケーションを検索でき、検索の結果を用いてアクションを実行できるようにするフレームワークに関する。
関連技術の説明
ネットワークの使用が拡大するにつれ、エンタープライズアプリケーションの使用がいっそう普及しつつある。エンタープライズアプリケーションは一般に、ネットワーク内の多数のユーザにサービスを同時に提供する能力を有するサーバでホストされているソフトウェアアプリケーションである。しばしば、エンタープライズアプリケーションはビジネス関連機能を実行するのに好適である。ビジネス関連機能は、顧客情報の追跡、会計、および製造スケジューリングを含み得るが、これらに限定されない。
しばしば、エンタープライズアプリケーションに保持され得るかまたはそうでなければ関連付けられる情報などの情報を検索することが望まれる。一例として、エンタープライズアプリケーションはその内部に、オーストラリアのXYZ銀行などの特定の銀行の顧客担当の名前に関する情報を含み得る。「オーストラリアのXYZ銀行の顧客担当は誰?」などの質問またはクエリに答えるのに、答が得られる可能性がある方法は一般に3つある。図1は、エンタープライズアプリケーションに関連付けられる情報に対して作られ得るクエリの図表示である。クライアント118または要求側が、エンタープライズアプリケーション110に含まれ得る情報114に関するクエリに対する答を望む場合、クライアント118は自然言語クエリ130を作成し得る。自然言語クエリ130は、人間などの、情報114へのアクセスを有する可能性のあるエンティティ122に対して作られ得る。エンティティ122はエンタープライズアプリケーション110内の情報114へのアクセスを有し得るか、またはエンティティ122は他の手段によって情報114へのアクセスを有し得る。自然言語クエリ130の作成は比較的易しいことがあるが、エンティティ122が情報114へのアクセスを有するとは限らない。したがって、自然言語クエリ130に対する答がエンティティ122から容易に得られるとは限らない。クライアント118は、1つより多いエンティティにクエリを出してからでないと答を得られないかもしれない。したがって、人間などのアクセスを有するエンティティ122を介してクエリを出すことは、しばしば非効率的で費用がかかる。
エンタープライズアプリケーション110が情報114などのデータを保持しているため、クライアント118は、エンタープライズアプリケーション110内の情報114にアクセスするSQLまたは形式ベースのクエリ134を作成し得る。一般に、エンタープライズアプリケーション110内の情報114には、エンタープライズアプリケーション110の開発者が情報114をクライアント118または他のユーザに入手可能にする場合にしかアクセスできない。情報114はエンタープライズアプリケーション110内に低レベルで保持されているかもしれないため、入手可能な情報114にアクセスするためのSQLまたは形式ベースのクエリ134の作成は困難である。エンタープライズアプリケーション110の内部構造は複雑であり得、しばしば所有権を有し得る。多くの場合、クライアント118は、エンタープライズアプリケーション110に関する訓練コースを
受講してからでないとSQLまたは形式ベースのクエリ134をうまく作成できないことがある。SQLまたは形式ベースのクエリ134の作成は多大な開発努力を必要とし得る。したがって、情報114はSQLまたは形式ベースのクエリ134に基づいてうまく得られる可能性があるが、SQLまたは形式ベースのクエリ134の作成に関連付けられる工程は複雑で時間がかかり得る。
情報114を突き止めるため、キーワードベースのクエリ138がクライアント118によって検索エンジン126に入力され得る。情報114がオーストラリアのXYZ銀行の顧客担当の名前である場合、キーワードベースのクエリ138は単語「会計」、「主任」、「XYZ」、および「オーストラリア」を含み得る。情報114がアクセス可能である場合、検索エンジン126の使用は比較的迅速で効率的であり得る。しかし、情報114が検索エンジン126には入手可能でないと判明した場合、すなわち、情報114が、検索エンジン126にアクセス可能な文書、ファイル、またはアプリケーションに含まれていない場合は、クライアント118はキーワードベースのクエリ138に対する満足のいく結果を得ることができないであろう。情報114はまた、トランザクションのテーブル、すなわち、閲覧用の記述フィールドを含むが検索用に索引を付けられていないテーブルに格納されている場合も、入手不可能であり得る。検索エンジン126は実質的に、クライアント118が読むことができる検索結果を提示することしかできない。換言すれば、キーワードベースのクエリ138に対する結果がクライアント118に提示されるとき、その結果は、クライアント118が読むことができるが一般に多大な開発努力なしではその結果に対して動作することができないよう提示される。
自然言語クエリ130およびキーワードベースのクエリ138は、クライアント118が情報114を得ることができるようにする際に効果的であり得るが、自然言語クエリ130は非効率であり得、また自然言語クエリ130およびキーワードベースのクエリ138は、たとえば情報114がエンティティ122および検索エンジン126には入手不可能であるときなどに、クライアント118に情報114を与えるとは限らない。さらに、情報114は、情報114を用いるエンタープライズアプリケーション110から実質的に直接に得られない場合は正確ではないかもしれない。一般に、クライアント118は、エンタープライズアプリケーション110を介して正確な情報114へのアクセスをうまく得ることができる。そのような情報114は、少なくともエンタープライズアプリケーション110と同じくらい正確である。しかし、上述のように、SQLまたは形式ベースのクエリ134の形成は典型的に複雑である。
したがって、必要とされているのは、エンタープライズアプリケーションに保持される情報を容易に検索可能にする方法および装置である。すなわち、望まれているのは、ユーザが正確な情報を求めて、構造化された態様でエンタープライズアプリケーションを検索できるようにするシステムである。
発明の要約
この発明は、トランザクションのアプリケーションを検索するための意味論的インターフェイスを与える検索フレームワークに関する。この発明の1つの局面によると、少なくとも1つのトランザクションのアプリケーションを検索可能にするための方法は、トランザクションのアプリケーションに関連付けられる正規オブジェクトを作成するステップと、トランザクションアプリケーションに関連付けられるデータに索引を付けるステップとを含む。この方法はまた、正規オブジェクトに関連付けられる情報を用いて索引格納部を作成するステップも含む。索引格納部は、索引を付けられたデータに関連付けられる。最後に、意味論的エンジンが索引格納部にインターフェイス接続される。
1つの実施例では、クエリが第1のフォーマットで意味論的エンジンに与えられる。そのような実施例では、意味論的エンジンは、クエリを第1のフォーマットから、検索エンジンに関連付けられる第2のフォーマットに翻訳し、その後、検索エンジンを用いて索引格納部がアクセスされる。
アプリケーションを検索するために意味論的または他の情報を使用可能にする検索ベースのアプリケーションのための開発フレームワークにより、アプリケーションに関連付けられるデータを比較的効率的に得ることができる。そのような開発フレームワークは実質的にどのような検索エンジンも利用できるため、検索エンジンの性能を高めることができる。一般に、開発フレームワークは、アプリケーションに保持される情報に検索エンジンがアクセスできるようにするインターフェイスを含み、エンドユーザにこの情報を与え、エンドユーザはその後、この情報に対して直接にアクションを実行し得る。インターフェイスと、自然言語ベースの文字列から、アプリケーションを検索するために用いられ得る文字列にクエリを翻訳するための意味論的エンジンとを含むツールキットを与えることによって、開発者は、比較的少ない開発努力でアプリケーションを検索可能にする全体的なシステムを作成することができる。
この発明の別の局面によると、少なくとも1つのアプリケーションを検索可能にするためのフレームワークは、インターフェイスと、プラグ接続可能な検索エンジンと、実行時間マネージャとを含む。インターフェイスは、クエリを第1のフォーマットから第2のフォーマットに翻訳し、アプリケーションに関する正規ビジネスオブジェクトに関連付けられる。検索エンジンはクエリに応答してアプリケーションを検索し、実行時間マネージャは、検索エンジンをアプリケーションにインターフェイス接続し、クエリの結果を表示させる。1つの実施例では、アプリケーションはエンタープライズアプリケーション、トランザクションのアプリケーション、またはトランザクションのエンタープライズアプリケーションである。
別の実施例では、開発者が設計者を用いて、正規オブジェクト、それらのカテゴリ、およびオブジェクトについての意味論的定義を含むメタデータを作成し得る。インターフェイスは、ユーザインターフェイスレンダリング部、アクションコントローラ、および意味論的エンジンを含み得る。そのような実施例では、実行時間マネージャは検索エンジンと対話してクローリング、索引付け、および監視を実行し得る。
この発明のさらに別の局面に従って、アプリケーションに関連付けられる情報を要求するクエリを処理するための方法は、アプリケーションに関連付けられる正規ビジネスオブジェクトを選択するステップと、クエリに関連付けられる情報を用いて検索を実行するステップとを含む。検索は、正規ビジネスオブジェクトに関連付けられる。検索を実行するステップは、アプリケーションに関連付けられる情報を含む索引格納部を利用するステップを含む。この方法はまた、索引格納部から検索の結果を得るステップも含む。1つの実施例では、結果は、アプリケーションへの直接アクセスを可能にするウェブリンクである。
本発明のこれらおよび他の特徴および利点が、同一または同様の構造には同一の参照番号が付される添付の図面に関連して以下の説明を検討すると容易に入手可能で明らかになるであろう。
特定的な実施例の説明
以下の説明では、データベースアプリケーションなどのソフトウェアアプリケーションについてプラットフォーム上のサブシステムを試験する実施例を参照して本発明が説明さ
れる。しかし、本発明の実施例はいずれの特定のアーキテクチャ、環境、アプリケーション、または実現例にも限定されない。たとえば、実施例はネットワークデータベースアプリケーションを参照して説明されるが、本発明は有利にはどのようなソフトウェアアプリケーションにも適用され得る。したがって、以下の実施例の説明は例示のためであり、限定のためではない。
エンタープライズアプリケーションに関連付けられる非構造化または非道徳的(demoralized)データの検索は、一般にエンドユーザには容易に入手可能ではない。いくつかの検索アプリケーションが入手可能であるが、それらの検索アプリケーションは一般に、エンドユーザの側で多大な開発努力を費やさないと、特定的なエンタープライズアプリケーションを検索できない。
自然言語クエリを与えるエンドユーザがトランザクションのアプリケーションを検索できるよう、既存の検索エンジンを増強し、既存の検索エンジンを組込んだフレームワークを作成すれば、エンドユーザがエンタープライズアプリケーションを比較的効率的に検索できるであろう。1つの実施例では、特定のエンタープライズアプリケーションを既存の検索エンジンを組込んだフレームワークにインターフェイス接続するために必要なソフトウェアモジュールを開発するために用いられ得るツールキットが開発者に与えられ得る。このツールキットを用いて、エンタープライズアプリケーションまたはトランザクションのアプリケーションを検索するために用いられ得る検索ベースのアプリケーションを開発することができる。そのようなツールキットを用いることにより、高性能検索エンジンの機能性を高めて、開発者の側における多大な開発努力を実質的に必要とせずに、どのような数のエンタープライズまたはトランザクションのアプリケーションも検索できるようになる。
検索エンジンとエンタープライズアプリケーションとの間に接合点を作成すれば、エンドユーザがそれに対して動作し得る情報を得ることができる。さらに、多くの異なる種類の情報の検索が実現され得る。一例として、トランザクションの記録、作業項目、プログラミングバグ、および他のビジネス関連要素の検索が正確に実行され得る。
図2は、この発明の実施例に従った、検索エンジンとアプリケーションとの間のインターフェイスがアプリケーションを検索可能にするシステムのブロック図表示である。検索エンジン204は、実質的にどのような好適な検索エンジンであってもよく、インターフェイス208を通じてアプリケーション212を検索するために用いられ得る。アプリケーション212はトランザクションのアプリケーション、すなわちトランザクションを利用するアプリケーションなどのエンタープライズアプリケーションであり得るが、アプリケーション212は大きく異なり得ることを認識すべきである。1つの実施例では、検索エンジン204は、カリフォルニア州、レッドウッド・ショアーズ(Redwood Shores, California)のオラクル・コーポレイション(Oracle Corporation)から入手可能なApache
Lucene、またはOracle Text検索エンジンなどのSQL検索エンジン、オープンソースベースの検索エンジンであり得る。
インターフェイス208は、検索エンジン204を介して作られるクエリが、そのクエリと有効に一致する結果を求めてアプリケーション212を検索できるようにするよう構成される。すなわち、インターフェイス208は、アプリケーション212に関連付けられる、たとえば含まれる情報を検索エンジン204が検索できるよう、検索エンジン204とアプリケーション212との間の接合として有効に作用する。一例として、アプリケーション212は、顧客情報が関連のデータベースに格納されるアプリケーションを含み得る。インターフェイス208は、検索エンジン204および「カリフォルニアのXYZ銀行のジョン・ドウ(John Doe)の口座の顧客担当は誰?」などのクエリを用いて顧客情
報を求めてそのアプリケーションを検索できるようにし得る。
一般に、協働してアプリケーションを検索可能にする検索エンジンおよびインターフェイスを含む全体的なフレームワークは、クエリを受け、クエリに対する応答を与えるよう構成され得る。図3は、この発明の実施例に従った、クライアントが複数のアプリケーションを検索できるようにするフレームワークのブロック図表示である。フレームワーク310は一般に、クライアント302がフレームワーク310にクエリを入力するとアプリケーション312を検索可能にするために必要な機能を含む。アプリケーション312はトランザクションのアプリケーションであり得る一方で、フレームワーク310に入力されるクエリは、フレームワーク310に関連付けられる意味論的アプリケーション(図示せず)内に実現され得る。フレームワーク310はクエリを、たとえば自然言語からフレームワーク310に含まれる検索エンジン(図示せず)が理解するクエリに翻訳し、その後、翻訳されたクエリに基づいて検索アプリケーション312に一般に翻訳し得る。翻訳されたクエリからのいずれの結果も、フレームワーク310を用いてクライアント302に提示され得る。
クエリの結果が提示されるとき、その結果は、クライアント302に関連付けられる計算システムの表示画面に表示され得る。1つの実施例では、表示画面は、クエリが入力および表示される検索領域、およびクエリに基づいて検索が実行された後に結果が表示される結果領域を含み得る。図4を参照して、クエリを入力するためのユーザインターフェイス、および表示結果に関連付けられるユーザインターフェイスを与える1つの表示窓が、この発明の実施例に従って説明される。表示窓400は、ウェブベースのアプリケーション用のブラウザウインドウであってもよく、クエリ領域402および結果領域406を含む。クエリ領域402は、たとえばユーザがキーボード入力を用いることによって検索文字列が入力され得るフィールド410を含む。フィールド410は、テキスト入力を受けるのに好適であると示されているが、他の方法を用いて投入されてもよいことを認識すべきである。他の方法は、プルダウンまたはポップアップメニューを用いて入力を与えることを含むが、これらに限定されない。
検索文字列がフィールド410に入力されると、入力ボタン412を押すかクリックするかして検索を開始することができる。入力ボタン412を押すと一般に、図3のフレームワーク310などのフレームワークを有効に呼び出すプロセスが始まり、検索文字列に関連付けられる答を求めて少なくとも1つのアプリケーションを検索する。検索が完了すると、結果414a−cが結果領域406内に表示され得る。3つの結果414a−cが示されているが、クエリに対する結果414a−cの数は大きく異なり得ることを認識すべきである。
結果414a−cは、検索されるいずれかのアプリケーションから生じ得る。示されるように、結果414aおよび結果414bはアプリケーション「A」に関連付けられる一方で、結果414cはアプリケーション「B」に関連付けられる。説明される実施例では、結果414a−cは、選択され得、選択されると自身が関連付けられるアプリケーションについての表示窓を開き得るリンクである。一例として、結果414aが選択された場合、アプリケーション「A」に関連付けられる表示窓が開き得、アプリケーション「A」内に見つけられるようなクエリの結果を表示する。
結果414a−cは、それぞれ関連のアクションボタン416a−cを有し得る。しかし、すべての結果414a−cが関連のアクションボタン416a−cを一般に有するとは限らないことを認識すべきである。アクションボタン416a−cを選択することによって、対応する結果414a−cに関してアクションが実行され得る。1つの実施例では、アクションボタン416a−cを選択すると、ユーザは、表示窓400が関連付けられ
る意味論的アプリケーションからトランザクションのアプリケーションに再び導かれ得る。たとえば、フィールド410に入力される検索文字列が仕事内容に関する検索についてのものである場合は、結果414a−cは、その仕事内容と一致する求人を含み得る。そのような場合、アクションボタン416a−cは、選択されると、ユーザが関連のトランザクションのアプリケーションを用いてその求人に応募することになるボタンであってもよく、たとえば、アクションボタン416aをクリックすると、結果414aに関連付けられる求人にユーザが応募することになり得る。
フィールド410は、異なる検索カテゴリに関連付けられる検索文字列を受けることができる。1つの実施例では、検索カテゴリは人物検索カテゴリ、作業リスト検索カテゴリ、および統合リポジトリ検索カテゴリを含み得る。人物検索カテゴリは、クライアントまたはユーザが、顧客または顧客担当情報が商業コミュニティモデルのデータベースに格納されるビジネスアプリケーション内の顧客または顧客担当などの人物を検索できるようにし得る。人物検索については、結果414a−cは顧客担当の名前を含み得る。作業リスト検索カテゴリは、クライアントまたはユーザが、ビジネス処理の結果として組織内で割当てられる個人的なアクション項目を検索できるようにし得る。作業リスト検索については、結果414a−cはユーザについての作業のリストまたはアクション項目を含み得る。統合リポジトリ検索カテゴリは、クライアントまたはユーザが、さまざまなサードパーティプログラムまたはアプリケーションを統合するために用いられ得るアプリケーションプログラミングインターフェイス(API)を突き止めることができるようにし得る。統合リポジトリ検索については、結果414a−cはサードパーティ統合者に入手可能なAPIのリストであり得る。
図3のフレームワーク310のようなフレームワークを与えるため、実質的に標準的な検索エンジンが組込まれ得る。アプリケーションをフレームワークに統合するためのツールキットが、開発者が用いるために与えられ得る。ツールキット内には、カスタムモジュールを開発するために開発者が使用するためのAPIとともに、検索カテゴリを管理するためのユーザインターフェイスが与えられ得る。そのようなツールキットはまた、検索エンジンをフレームワークにインターフェイス接続可能にする実行時間マネージャも与え得る。開発者は一般に、このツールキットを用いて検索カテゴリを定義し得る。図5Aは、この発明の実施例に従った、検索ベースのアプリケーションアーキテクチャに関連付けられる構成要素のブロック図表示である。アーキテクチャ500は、全体的な検索ツールキットであると考えることができ、検索エンジン504を利用する。アーキテクチャ500は、カテゴリ検索を実行可能にするよう構成される。検索エンジン504はプラグ接続可能であり、APIを有する実質的にどのような検索エンジンであってもよい。一般に、検索エンジン504は、検索エンジン504がクローラー506、索引エンジン508、クエリエンジン510、およびスコアラー512などの構成要素を内部でインターフェイス接続可能にするという意味で、プラグ接続可能である。
クローラー506は、当業者によって理解され得るように、ソースをクロールするよう構成される。クローラー506は、1つの実施例では、たとえば検索されるべきエンタープライズアプリケーションおよび/またはトランザクションのアプリケーションのような実質的にすべてのアプリケーション554をクロールする機能を与える。正規ビジネスオブジェクト定義についての検索可能文書の構成、および実行時間アプリケーションデータの構成は、クローラーを用いて発生する。Java(登録商標) Database Connectivity(JDBC)APIは、クローラー506が基づき得る標準的なSQLデータベースアクセスインターフェイスである。
索引エンジン508は一般に、クローラー506によって構成された検索可能文書に索引を付け、索引格納部558をクエリエンジン510に露出するよう構成される。索引格
納部558は、索引が格納される場所である。索引格納部558に関連付けられるセキュリティ設定などの設定は、実行時間マネージャ516によって管理され得る。実行時間マネージャ516はまた、たとえばクローリングが計画され得、索引格納部558が設定され得るように、検索を実行時間で管理可能にするよう構成される。
クエリエンジン510は、クエリビルダーであると考えることができ、予めクロールされた索引格納部558内で検索を実行するためにアーキテクチャ500内で用いられるソフトウェアモジュールである。クエリエンジン510は、メタデータマネージャ520を介してメタデータリポジトリ524から得られるメタデータを用いて、ユーザが入力したクエリを、検索エンジン504が理解するクエリから索引格納部558が理解するクエリに有効に変換する。メタデータリポジトリ524は実質的にすべてのメタデータを格納し、またオブジェクトカテゴリおよび意味論的定義を格納する。メタデータマネージャ520はメタデータを管理し、検索カテゴリを作成、修正、および削除するためのユーザインターフェイスを与える。1つの実施例では、ビジネスオブジェクトがメタデータリポジトリ524に格納され得る一方で、検索カテゴリがメタデータマネージャ520によって格納される。
スコアラー512はレーティング機能を与える。検索エンジン504は一般にスコア付け機能を有するが、スコアラー512を用いて、検索エンジン504に含まれるスコア付け機能を増強または変更することができる。一般に、各スコアラー512は特定の検索カテゴリに関連付けられてもよく、特定の結果がクエリとどの程度一致するかに関する情報を与え得る。
検索エンジン504と通信しているインターフェイス構成要素528は、意味論的エンジン530、ユーザインターフェイスレンダリング部532、およびアクションコントローラ534を含む。意味論的エンジン530は、ユーザクエリを、検索エンジン504が理解するクエリに翻訳するよう構成されるクエリビルダーである。すなわち、意味論的エンジン530は、メタデータリポジトリ524に格納されるメタデータに基づいてクエリを変換し得る。1つの実施例では、意味論的エンジン530は、自然言語ベースのクエリを検索エンジン特定クエリに翻訳する。一例として、「誰がジェーン・ドウ(Jane Doe)に報告するか?」というユーザクエリは、適切なフィールドに割当てられる意味論的情報に基づいて″mgrFirstname:Jane, mgrLastname:Doe″などの検索エンジン特定クエリに翻訳され得る。
ユーザインターフェイスレンダリング部532は、クエリまたは検索の結果を表示可能にするよう構成される。すなわち、ユーザインターフェイスレンダリング部532は、所与の検索カテゴリのユーザインターフェイス表現を生成可能にし、ユーザに表現可能にする。1つのユーザインターフェイスレンダリング部532は、テーブルに結果を表示するよう構成され得る。一般に、ユーザインターフェイスレンダリング部532は、所与の種類の正規ビジネスオブジェクトに割当てられ得る。
アクションコントローラ534は、結果ページに表示されるユーザインターフェイス事象を、1つの実施例ではサービスビーン542であり得るサービスインターフェイス内に定義されるビジネスアクションに翻訳するよう構成される。すなわち、アクションコントローラ534は、サービスビーン542を呼び出すことによって検索関連ビジネス論理を実行する事象マネージャである。サービスインターフェイス542は、ビジネス論理が有効に保持される構成要素である。サービスインターフェイス542は検索カテゴリに対して登録され得る。1つの実施例では、サービスインターフェイス542は3種類のサービス、すなわちリストサービス、エンティティサービス、およびアクションサービスを含む。そのようなサービスはツールキットであると考えることができる。リストサービスは、
検索カテゴリによって定義されるエンティティのリストに対して実行され得、一次キーのリストによって同定され得る。エンティティサービスは、ビジネスオブジェクトの特定のエンティティに対して実行され得る。たとえば、クエリの結果が、各々が一次キーによって同定される結果のリストとしてユーザに提示され得る。これらの結果に対して実行され得るビジネスアクションまたはアクションサービスは、結果を保存すること、結果が求人であれば特定の仕事に応募すること、および特定の属性に基づいて結果をソートすることを含み得るが、これらに限定されない。アクションサービスは、1つの実施例では、ユーザインターフェイスアクションにリンクされ得るサービスである。
ユーザインターフェイステンプレート538は、サービスビーン542がアクションコントローラ534によって呼び出されることを可能にするスニペット、たとえばハイパーテキストマーク付言語(HTML)スニペットである。一例として、テンプレート538を用いて、ユーザインターフェイスレンダリング部532に関連付けられるコードを実質的に変化させることなくユーザインターフェイスをカスタマイズすることができる。図5Bに関して以下に説明されるように、ユーザインターフェイステンプレート538を利用して、検索結果またはアクション形式のためのダイナミックHTML(DHTML)ユーザインターフェイスを表現することができる。
アーキテクチャ500はまた、アプリケーションセキュリティモジュール546および国際化モジュール550にも関連付けられ得る。アプリケーションセキュリティモジュール546は、たとえばサービスインターフェイスまたはサービスビーン542などのツールキットと対話して、アーキテクチャ500に関連付けられるセキュリティ要件を有効に実施する。アプリケーションセキュリティモジュール546は、検索カテゴリに基づいてセキュリティポリシーを定義し得、索引エンジン508およびクエリエンジン510を含むがこれらに限定されないアーキテクチャ500の構成要素によって用いられ得る。国際化モジュール550を用いて、検索を複数の言語で利用可能にすることができる。
さまざまな外部構成要素がアーキテクチャ500にインターフェイス接続され得る。図5Bに示されるように、全体的なアーキテクチャ500は、実行時間マネージャ516を用いて検索を実行時間で管理するモニタまたはアドミニストレータ592を含み得る。設計者または開発者588は、メタデータリポジトリ524に格納される検索カテゴリを定義し得る。検索カテゴリは、検索エンジン504が検索を実行するために用い得るアーティファクトをカプセル化し、顧客およびタスクなどのカテゴリを含み得るが、これらに限定されない。DHTMLユーザインターフェイス580は、ユーザインターフェイスレンダリング部532へのユーザ入力を与える。カリフォルニア州、レッドウッド・ショアーズのオラクル・コーポレイションから入手可能なJDeveloperなどのツール584は、サービス指向型アプリケーションを構築するための統合開発環境を与える。すなわち、ツール584は、ユーザインターフェイステンプレート538およびサービスインターフェイス542を作成および修正可能にする。
上述のように、エンドユーザがアプリケーションを検索するために自然言語検索文字列を入力できるようにすれば、検索ベースのアプリケーションフレームワークの活用性が増す。検索エンジンをエンタープライズアプリケーションと用いるために組込可能にする全体的なインターフェイスの一部として意味論的エンジンおよび意味論的アプリケーションを用いることにより、全体的なアーキテクチャに機能が与えられる。図6を参照して、検索ベースのアプリケーションとエンタープライズアプリケーションとの間のインターフェイスがこの発明の実施例に従って説明される。フレームワーク600は、1つの実施例ではトランザクションのアプリケーションであり得るエンタープライズアプリケーション634を含む。アプリケーション634は、アプリケーション634が用いる情報を格納するデータベース630に関連付けられる。サービスビーン638などのサービスインター
フェイスはビジネス論理を含み、アプリケーション634が、意味論的アプリケーション602および検索エンジン626を含む検索ベースのアプリケーションによってアクセスされることを可能にする。
意味論的アプリケーション602は、図5Aに関して上で説明されたレンダリングエンジン614、メタデータ格納部610、および意味論的エンジン606を用いて、検索エンジン626を有効に呼び出してアプリケーション634を検索する。たとえば購入注文などの正規オブジェクトは一般に、特定の実現例に拘束されない正規ビジネスオブジェクトカテゴリ622に関連付けられるビジネスオブジェクトである。しばしば、ある種類の分類法が正規オブジェクトに適用されて、正規ビジネスオブジェクトカテゴリ622が形成され得る。検索用に索引を付けられ、構造化データを含む意味論的アプリケーション602は、アプリケーション634と実質的に並列に動作すると考えることができる。1つの実施例では、意味論的アプリケーション602はアプリケーション634を有効にラップして(wrap)記述する。
ユーザインターフェイス618は、リッチウェブユーザインターフェイス618であってもよく、検索文字列などを検索ベースのアプリケーションに入力可能にする。リッチウェブユーザインターフェイス618は、ビジネスアクションがクエリの結果に容易に関連付けられることを可能にする。アプリケーション634は形式またはHTMLベースのユーザインターフェイス642と関連付けられ、これは、クエリの結果を表示可能にし、それに対して動作することを可能にする。
ミドルウェア650は、カリフォルニア州、レッドウッド・ショアーズのオラクル・コーポレイションから入手可能なFusion Middlewareであってもよく、管理能力および展開プラットフォームを技術プラットフォームに有効に集約する。一般に、ミドルウェア650は、実質的にどのような開発ツール(図示せず)も、どのようなエンタープライズアプリケーション634も、およびどのような検索エンジン626もフレームワーク600に統合可能にする。すなわち、ミドルウェア650は、フレームワーク600の構成要素を容易に交換可能にする。ミドルウェア650は、異なるツール、アプリケーション、または検索エンジンをフレームワーク600に組込可能にする実質的にどのようなミドルウェアであってもよいことを認識すべきである。換言すれば、エンタープライズソフトウェアを設計して走らせるためのプラットフォームを与えるどのようなミドルウェア650も、Fusion Middlewareの代わりに用いられ得る。
アプリケーション基礎646は、アプリケーションを構築可能にするよう構成される。すなわち、アプリケーション基礎646は、その上にトランザクションのアプリケーションなどのアプリケーションが構築され得る基礎を与え、その中でアプリケーションが走り得るアプリケーション文脈を与える。1つの実施例では、アプリケーション基礎646は、アプリケーションセキュリティ、ログ取り、およびエラー処理を含み得るがこれらに限定されない一般的なサービスを提供する。一般に、意味論的アプリケーション602はアプリケーション基礎646の上に展開され得、アプリケーション基礎646内に与えられるアプリケーション文脈を共有し得る。
図7は、この発明の実施例に従った、アプリケーションをフレームワークに統合する1つの方法を図示するプロセスフロー図である。エンタープライズアプリケーションなどのアプリケーションを、そのアプリケーションに対する検索を実行可能にするフレームワークに統合するプロセス700は、フレームワークがエンタープライズアプリケーションにインターフェイス接続されるステップ704で開始する。フレームワークがエンタープライズアプリケーションにインターフェイス接続されると、ステップ708において、エンタープライズアプリケーションに適切なサービスインターフェイスまたはサービスビーン
が作成される。サービスビーンは、フレームワークを用いてエンタープライズアプリケーションにアクセスできるようにアクションを定義可能にする。
適切なサービスインターフェイスまたはビーンが作成されると、ステップ712において、正規ビジネスオブジェクトが作成される。正規ビジネスオブジェクトはデータを定義するよう構成され、データベースまたはメタデータリポジトリなどのリポジトリに格納され得る。ステップ716において、データベースまたはJava(登録商標)クラスに格納されるオブジェクト属性が、ステップ712において作成された正規ビジネスオブジェクトに対応付けられる。ステップ720において、正規ビジネスオブジェクトに対して取られるべきアクションが割当てられる。アクションの割当ては、検索エンジンを正規ビジネスオブジェクトに割当てることを含み得る。
ステップ720から、プロセスフローはステップ724に移り、ここで正規ビジネスオブジェクトが意味論的に記述される。次に、ステップ728において、検索エンジンのクローラーを用いて正規ビジネスオブジェクトに索引を付け得る。正規ビジネスオブジェクトの索引付けは、エンタープライズアプリケーションからデータを取ることを含み得る。正規ビジネスオブジェクトに索引が付けられた後、ステップ732において、検索エンジンを用いて索引格納部が検索され得る。正規ビジネスオブジェクトの意味論的記述が検索エンジンによって用いられて、クエリを構築する。索引格納部が検索されると、エンタープライズアプリケーションをフレームワークに統合するプロセスは完了する。
図8を参照して、ユーザによって与えられる検索文字列の処理が説明される。図8は、この発明の実施例に従った、ユーザが与えるクエリを処理する1つの方法を図示するプロセスフロー図である。ユーザが与えるクエリを処理するプロセス800は、検索カテゴリが同定されるステップ804で開始する。換言すれば、メタデータリポジトリに格納される正規ビジネスオブジェクトが、検索に用いるために選択される。正規ビジネスオブジェクトが選択された後、ステップ808において検索文字列が入力される。1つの実施例では、意味論的エンジンが、意味論的定義に基づいて、検索文字列が所与のカテゴリに関係していると判断し得る。こうして、意味論的エンジンは、特定の検索文字列を特定の正規オブジェクトに関係付け得る。一例として、文字列「誰がジョン・ドウを雇うか?」を含む検索文字列が、意味論的エンジンによって、従業者である正規オブジェクトに関係付けられ得る。
ステップ808において入力される検索文字列は典型的に、ユーザによって入力される。検索文字列が入力されると、ステップ812において、その検索文字列を用いて検索が実行される。検索の実行は、検索文字列を検索エンジンが理解するフォーマットに有効に翻訳し、次にそのフォーマットを、そこから結果が得られるべき索引格納部が理解する別のフォーマットに翻訳することを含む。
ステップ816において、索引格納部から検索の結果が得られる。索引格納部内の結果は典型的に、検索中のアプリケーションから得られることを認識すべきである。ステップ820において、結果が次にクリックされるかまたはそうでなければ選択されて、結果が関連付けられるアプリケーションへのアクセスをユーザに与える。ユーザによってアプリケーションが入力された後、ユーザが与えるクエリを処理するプロセスは完了する。
図9を参照して、トランザクションのアプリケーションを検索可能にする検索ベースのアプリケーションフレームワークを設定および使用するプロセスが、この発明の実施例に従って説明される。検索ベースのアプリケーションフレームワークを実現するプロセスは、設計者924または開発者が、たとえばトランザクションのアプリケーションなどのアプリケーション928を検査するときに開始する。アプリケーション928を検査して、
アプリケーション928内のどの情報が検索に利用可能であるべきかが判断され得る。設計者924は、アプリケーション928を検査した後、検索に利用可能であるべき正規ビジネスオブジェクトカテゴリ916を作成するか、またはこれに注釈を付ける。正規ビジネスオブジェクトカテゴリ916の作成は一般に、正規ビジネスオブジェクトの作成を伴う。
正規ビジネスオブジェクトが作成されると、プラグ接続可能な検索エンジンの一部であり得るクローラー920がアプリケーション928に索引を付けて、アプリケーション928を検索可能にする。このクローリングプロセスは、クローラー920が、正規ビジネスオブジェクトの検索アーティファクトを用いて、所与の正規ビジネスオブジェクトカテゴリ916についての索引を作成できるようにする。これらの索引は次に、クローラー920によって索引格納部912に格納される。
ユーザがアプリケーション928を検索することを望む場合、ユーザはフレームワーク900のユーザインターフェイス904を用いて、たとえば自然言語クエリなどのクエリを入力し得る。意味論的エンジン908が、正規ビジネスオブジェクトカテゴリ916を用いて索引格納部912を検索する。1つの実施例では、意味論的エンジン908は、検索エンジン(図示せず)を通じて索引格納部912を有効に間接に検索し得る。意味論的エンジン908は、索引格納部912を用いて適切な索引が見つかると、クエリをアプリケーション928に再び導き得る。クエリがアプリケーション928に再び導かれる前に、クエリは典型的に、まず検索エンジンが理解するフォーマットに、次にアプリケーション928が理解するフォーマットに変換されることを認識すべきである。
検索ベースのアプリケーション開発フレームワークは一般に、データベース管理システムに関して実現され得る。1つの好適なデータベース管理システムアーキテクチャは、図10に示される3層のアーキテクチャである。データベース管理システムの中心には、データベース963を格納する中央格納部961またはリポジトリがある。データベース963は典型的に1つ以上のハードドライブに格納され、典型的により大きなコンピュータシステムの一部である。情報はさまざまなフォーマットでデータベース963に格納され得、リレーショナルデータベース管理システムは、情報を格納するためのテーブルに大きく依存している。データベースサーバ965は、データベース963と対話するプログラムのインスタンスである。データベースサーバ965の各インスタンスは、数ある特徴の中で特に、独立してデータベース963にクエリを出し、情報を格納し得る。
場合によっては、データベースサーバ965は、グラフィカルユーザインターフェイスなどの使いやすいインターフェイスを含まないことがある。したがって、少なくとも1つのアプリケーションサーバ967が、データベースサーバ965にユーザインターフェイスを与え得る。一例として、アプリケーションサーバ967は、インターネットまたはいずれかの他のネットワーク内のウェブアプリケーションサーバであり得る。アプリケーションサーバ967は、データベースサーバ965を通じてデータベース963にアクセスするための使いやすいメカニズムを与え得る。ウェブブラウザ969を利用して、アプリケーションサーバ967にアクセスすることができる。
図11は、本発明の実施例を実現するコンピュータシステム内に存在し得る構成要素のブロック図を示す。コンピュータシステム971は、オペレーティングシステムを含むコンピュータプログラムからの命令を実行するプロセッサ973を含む。プロセッサ973を利用して、意味論的エンジンをたとえば走らせることができる。プロセッサ973は典型的にメモリキャッシュを有するが、プロセッサ973は、命令またはコンピュータコードおよびデータを格納し得るメモリ975を利用してもよい。
固定格納部977はコンピュータプログラムおよびデータを格納し得る。固定格納部977は典型的に永続的であり、メモリ975と比べて格納量が多い。データベースのための共通の固定格納部977は複数のハードドライブであるが、固定格納部977はどのような好適な構成要素であってもよいことを理解すべきである。着脱式格納部979は、自身に格納されるコンピュータプログラムおよび/またはデータに移動性を与える。着脱式格納部979は、フロッピー(登録商標)ディスク、テープ、CD/ROM、DVD、フラッシュメモリ装置などを含み得るが、これらに限定されない。
メモリ973、固定格納部977および着脱式格納部979は、本発明を実現するコンピュータコードまたはコード装置、本発明で用いるためのデータなどを組込んだコンピュータプログラムを格納および抽出するために利用され得るコンピュータ読取可能な記憶媒体の例を与える。また、たとえばインターネットを含むネットワーク内で、搬送波で具体化されるデータ信号も、コンピュータ読取可能な記憶媒体であり得る。入力装置981は、ユーザがコンピュータシステム971にインターフェイス接続できるようにする。入力装置981はキーボード、マウス、ボタン、ダイヤル、またはいずれかの他の好適な入力メカニズムであり得る。出力装置983は一般に、システム971がユーザに出力を与えることができるようにする。出力装置983は、モニタ、表示画面、LED、プリンタ、または実質的に如何なる他の出力メカニズムも含むが、これらに限定されない。
ネットワークインターフェイス985は典型的に、システム971が、ネットワークインターフェイス985が接続されるネットワークにインターフェイス接続できるようにする。コンピュータシステム971のシステムバスアーキテクチャが矢印987によって表わされる。図11に示される構成要素は、多くのコンピュータシステムにおいて見い出され得る。しかし、構成要素は、この発明の思想または範囲から逸脱することなく追加され、削除され、組合せられ得る。たとえば、固定格納部977は、ネットワーク接続を通じてアクセスされるファイルサーバであってもよい。したがって、図11は例示のためであり限定のためではない。
この発明の2,3の実施例しか説明されなかったが、この発明は、この発明の思想または範囲から逸脱することなく多くの他の特定的な形態で具体化され得ることを理解すべきである。一例として、検索エンジンはこの発明のアーキテクチャに関してプラグ接続可能であると説明された。しかし、検索エンジンは代わりにアーキテクチャの固定または統合部分であってもよい。
トランザクションのアプリケーションであるエンタープライズアプリケーションが、検索ベースのアプリケーションフレームワークを用いて検索されるのに好適であると説明されたが、検索されるアプリケーションはトランザクションのエンタープライズアプリケーションであることに限定されない。たとえば、トランザクションのアプリケーションではないエンタープライズアプリケーション、またはエンタープライズアプリケーションではないトランザクションのアプリケーションが検索され得る。
フレームワークにフィルタを含ませて、検索またはクエリに対して得られたより多くの結果をさらに検索可能にしてもよい。たとえば、最初のクエリがデータベース開発のフィールド内で求職を検索した場合、フィルタを適用して、特定の会社に関連付けられるすべての職を除去したり、特定の基本給を指定したりしてもよい。
フレームワークの構成要素は一般に、ソフトウェアモジュールである、またはコンピュータコード装置を用いて作成されたモジュールであると説明された。1つの実施例では、フレームワークの構成要素は、この発明の思想または範囲から逸脱することなくハードウェアモジュールとソフトウェアモジュールとの組合せとして、または実質的にハードウェ
アモジュールのみとしてさえ実現され得る。
サービスビーンなどのサービスインターフェイスは一般に、検索ベースのアプリケーションフレームワークをサポートするアーキテクチャに含まれていると説明された。上述のように、サービスビーンは、オブジェクトに適用されるべきアクションを表わす。サービスを定義および提供する他のメカニズムがサービスビーンの代わりに実現されてもよい。代替的に、そこから検索結果が得られるアプリケーションを用いるアクションが望まれていない実施例については、サービスビーンは検索ベースのアプリケーションフレームワークに含まれているとは限らないことを認識すべきである。
検索は、一旦ユーザが検索ベースのアプリケーションを用いて検索を実行すると、その検索を実行するために入力されたテキストが将来のアクセスのために保存されるよう、保存され得る。同様に、検索の結果は、ユーザが別の検索を実行することなくその検索結果に容易にアクセスできるよう保存され得る。
一般に、この発明の方法に関連付けられるステップは大きく異なり得る。ステップは、この発明の思想または範囲から逸脱することなく追加され、削除され、変更され、組合せられ、順序変えされ得る。一例として、クエリに対する応答が得られると発生し得るアクションとして、結果をクリックし、検索されたアプリケーションを入力することが説明されたが、一組の応答に対して取られるアクションは大きく異なり得る。1つの実施例では、カスタムアクションが、対応する正規ビジネスオブジェクトに割当てられる。カスタムアクションが、対応する正規ビジネスオブジェクトに割当てられる。カスタムアクションは、意味論的アプリケーションまたは意味論的アプリケーションが拘束されるトランザクションのアプリケーションへの移行のためのアクションを含み得るが、これらに限定されない。したがって、本発明の例は例示的に考慮されるべきであり、限定的に考慮されるべきではなく、本発明は本明細書中で与えられる詳細に限定されず、添付の請求項の範囲内で修正され得る。
エンタープライズアプリケーションに関連付けられる情報に対して作られるクエリの図表示である。 この発明の実施例に従った、検索エンジンとアプリケーションとの間のインターフェイスがアプリケーションを検索可能にするシステムのブロック図表示である。 この発明の実施例に従った、クライアントが複数のアプリケーションを検索できるようにするフレームワークのブロック図表示である。 この発明の実施例に従った、アクションが取られることを可能にする検索クエリ領域および結果領域を有する表示窓の図表示である。 この発明の実施例に従った、アプリケーションを検索可能にする基本ソフトウェアアーキテクチャのブロック図表示である。 この発明の実施例に従った、示されるようにこれもまたソフトウェアアーキテクチャに含まれ得る拡張部を有するソフトウェアアーキテクチャ、すなわち図5Aのソフトウェアアーキテクチャ500のブロック図表示である。 この発明の実施例に従った、トランザクションのアプリケーションにインターフェイス接続する検索ベースのアプリケーションの図表示である。 この発明の実施例に従った、アプリケーションをフレームワークに統合する1つの方法を図示するプロセスフロー図である。 この発明の実施例に従った、クエリを処理する1つの方法を図示するプロセスフロー図である。 この発明の実施例に従った、検索可能なアプリケーションがフレームワーク内にインターフェイス接続されて検索に利用可能になると発生するアクションを示すフローのブロック図表示である。 データベース管理システムアーキテクチャのブロック図表示である。 この発明の実施例に関連して利用され得る計算システムのブロック図表示である。

Claims (12)

  1. 少なくとも1つのトランザクションのアプリケーションを検索可能にするための方法であって、
    前記少なくとも1つのトランザクションのアプリケーションに関連付けられる正規オブジェクトを作成するステップと、
    前記少なくとも1つのトランザクションのアプリケーションに関連付けられるデータに索引を付けるステップと、
    前記正規オブジェクトに関連付けられる情報を用いて索引格納部を作成するステップとを備え、前記索引格納部は、索引を付けられた前記データに関連付けられ、前記方法はさらに、
    意味論エンジンを前記索引格納部にインターフェイス接続するステップを備える、方法。
  2. 前記意味論エンジンにクエリを与えるステップをさらに含み、前記クエリは第1のフォーマットを有し、前記意味論エンジンは、前記クエリを前記第1のフォーマットから第2のフォーマットに翻訳するよう構成され、前記第2のフォーマットは検索エンジンに関連付けられており、前記方法はさらに、
    前記検索エンジンを用いて前記索引格納部にアクセスするステップを含む、請求項1に記載の方法。
  3. 前記第2のフォーマットを有する前記クエリに関連付けられる結果が、前記索引格納部内に示されているかどうかを判断するステップをさらに含む、請求項2に記載の方法。
  4. 前記少なくとも1つのトランザクションのアプリケーションから、前記結果に関連付けられる情報を得るステップと、
    前記情報を表示するステップとをさらに含み、前記情報を表示するステップは、前記情報に対するアクションを実行可能にするステップを含む、請求項3に記載の方法。
  5. 前記正規オブジェクトをメタデータ格納部に格納するステップをさらに含む、請求項1に記載の方法。
  6. 前記データに索引を付けるステップは、前記データをクロールするステップを含む、請求項1に記載の方法。
  7. 検索エンジンを、前記意味論エンジンおよび少なくとも1つの前記アプリケーションにインターフェイス接続するステップをさらに含む、請求項1に記載の方法。
  8. 前記検索エンジンを、前記意味論エンジンおよび少なくとも1つの前記アプリケーションにインターフェイス接続するステップは、スコアラー、クローラー、索引エンジン、およびクエリエンジンを、前記検索エンジンに与えるステップを含む、請求項7に記載の方法。
  9. アプリケーションに関連付けられる情報を要求するよう構成されるクエリを処理するための方法であって、
    正規ビジネスオブジェクトを選択するステップを備え、前記正規ビジネスオブジェクトは前記アプリケーションに関連付けられており、前記方法はさらに、
    前記クエリに関連付けられる情報を用いて検索を実行するステップを備え、前記検索は前記正規ビジネスオブジェクトに関連付けられており、前記検索を実行するステップは、前記アプリケーションに関連付けられる情報を含む索引格納部を利用するステップを含み
    、前記方法はさらに、
    前記索引格納部から前記検索の結果を得るステップを備える、方法。
  10. 前記検索の前記結果を用いて前記アプリケーションにアクセスするステップをさらに含む、請求項9に記載の方法。
  11. 前記検索の前記結果が表示され、
    前記検索の前記結果を用いて前記アプリケーションにアクセスするステップは、表示された前記結果を用いて前記アプリケーションにアクセスするステップを含む、請求項10に記載の方法。
  12. ユーザインターフェイスディスプレイに前記情報を入力するステップをさらに含み、
    前記索引格納部から前記検索の前記結果を得るステップは、前記ユーザインターフェイスディスプレイに前記結果を表示するステップを含む、請求項9に記載の方法。
JP2009503211A 2006-03-27 2007-03-27 検索ベースのアプリケーション開発フレームワーク Active JP5129804B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/277,585 US7689580B2 (en) 2006-03-27 2006-03-27 Search based application development framework
US11/277,585 2006-03-27
PCT/US2007/065005 WO2007121050A1 (en) 2006-03-27 2007-03-27 Search-based application development framework

Publications (2)

Publication Number Publication Date
JP2009531791A true JP2009531791A (ja) 2009-09-03
JP5129804B2 JP5129804B2 (ja) 2013-01-30

Family

ID=38335739

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009503211A Active JP5129804B2 (ja) 2006-03-27 2007-03-27 検索ベースのアプリケーション開発フレームワーク

Country Status (7)

Country Link
US (1) US7689580B2 (ja)
EP (1) EP1999660A1 (ja)
JP (1) JP5129804B2 (ja)
CN (1) CN101454779B (ja)
AU (1) AU2007238453A1 (ja)
CA (1) CA2647584C (ja)
WO (1) WO2007121050A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013546062A (ja) * 2010-10-21 2013-12-26 ヒューレット−パッカード デベロップメント カンパニー エル.ピー. モバイルコンピューティングデバイスを用いた複数のデータソースの検索
JP2016521398A (ja) * 2013-03-15 2016-07-21 ベウラワークス,エルエルシー. ナリッジ取込および発見システム

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8024235B2 (en) 2006-06-21 2011-09-20 Microsoft Corporation Automatic search functionality within business applications
US7752207B2 (en) * 2007-05-01 2010-07-06 Oracle International Corporation Crawlable applications
US8504555B2 (en) 2008-06-25 2013-08-06 Microsoft Corporation Search techniques for rich internet applications
US8219572B2 (en) 2008-08-29 2012-07-10 Oracle International Corporation System and method for searching enterprise application data
US8296317B2 (en) * 2008-09-15 2012-10-23 Oracle International Corporation Searchable object network
US8335778B2 (en) * 2008-09-17 2012-12-18 Oracle International Corporation System and method for semantic search in an enterprise application
US8140556B2 (en) * 2009-01-20 2012-03-20 Oracle International Corporation Techniques for automated generation of queries for querying ontologies
US8214401B2 (en) * 2009-02-26 2012-07-03 Oracle International Corporation Techniques for automated generation of ontologies for enterprise applications
US20110191330A1 (en) * 2010-02-04 2011-08-04 Veveo, Inc. Method of and System for Enhanced Content Discovery Based on Network and Device Access Behavior
US10713312B2 (en) 2010-06-11 2020-07-14 Doat Media Ltd. System and method for context-launching of applications
US9665647B2 (en) * 2010-06-11 2017-05-30 Doat Media Ltd. System and method for indexing mobile applications
WO2012034537A1 (zh) 2010-09-17 2012-03-22 百度在线网络技术(北京)有限公司 一种在线应用系统及其实现方法
US8527451B2 (en) 2011-03-17 2013-09-03 Sap Ag Business semantic network build
US20120239381A1 (en) 2011-03-17 2012-09-20 Sap Ag Semantic phrase suggestion engine
US8725760B2 (en) 2011-05-31 2014-05-13 Sap Ag Semantic terminology importer
US8825630B2 (en) * 2011-08-09 2014-09-02 Sap Ag Method and system for generic enterprise search adapter queries
US8935230B2 (en) 2011-08-25 2015-01-13 Sap Se Self-learning semantic search engine
US8745021B2 (en) 2011-10-18 2014-06-03 International Business Machines Corporation Transformation of complex data source result sets to normalized sets for manipulation and presentation
US9286337B2 (en) * 2012-03-12 2016-03-15 Oracle International Corporation System and method for supporting heterogeneous solutions and management with an enterprise crawl and search framework
US9152674B2 (en) * 2012-04-27 2015-10-06 Quixey, Inc. Performing application searches
US9201938B2 (en) * 2012-05-21 2015-12-01 Sap Se Parameter driven data format conversion in client/server architectures
US9552414B2 (en) 2012-05-22 2017-01-24 Quixey, Inc. Dynamic filtering in application search
US9372884B2 (en) * 2012-06-14 2016-06-21 Microsoft Technology Licensing, Llc Extensible data query scenario definition and consumption
US9268462B2 (en) * 2012-08-14 2016-02-23 Google Inc. External action suggestions in search results
US9600351B2 (en) 2012-12-14 2017-03-21 Microsoft Technology Licensing, Llc Inversion-of-control component service models for virtual environments
US9300986B2 (en) * 2013-03-15 2016-03-29 Apple Inc. Media system with canonical architecture for integrating media productions from different content providers
US9495444B2 (en) * 2014-02-07 2016-11-15 Quixey, Inc. Rules-based generation of search results
US10395295B2 (en) * 2014-03-27 2019-08-27 GroupBy Inc. Incremental partial text searching in ecommerce
US20160034542A1 (en) * 2014-07-30 2016-02-04 Microsoft Corporation Integrating various search and relevance providers in transactional search
US9208200B1 (en) * 2014-11-01 2015-12-08 Veeva Systems Inc. System and method for reporting multiple objects in enterprise content management
US11244007B2 (en) 2019-04-16 2022-02-08 International Business Machines Corporation Automatic adaption of a search configuration
US11403354B2 (en) 2019-04-16 2022-08-02 International Business Machines Corporation Managing search queries of a search service
US11210352B2 (en) 2019-04-16 2021-12-28 International Business Machines Corporation Automatic check of search configuration changes
US11436214B2 (en) 2019-04-16 2022-09-06 International Business Machines Corporation Preventing search fraud
US10956430B2 (en) 2019-04-16 2021-03-23 International Business Machines Corporation User-driven adaptation of rankings of navigation elements
US11403356B2 (en) 2019-04-16 2022-08-02 International Business Machines Corporation Personalizing a search of a search service
US11176134B2 (en) 2019-04-16 2021-11-16 International Business Machines Corporation Navigation paths between content items
CN113641761A (zh) * 2021-08-20 2021-11-12 北京达佳互联信息技术有限公司 数据同步方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020091702A1 (en) * 2000-11-16 2002-07-11 Ward Mullins Dynamic object-driven database manipulation and mapping system
WO2005103956A1 (en) * 2004-04-02 2005-11-03 Microsoft Corporation Adapter framework for line-of-business application integration

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6094649A (en) * 1997-12-22 2000-07-25 Partnet, Inc. Keyword searches of structured databases
US6393423B1 (en) * 1999-04-08 2002-05-21 James Francis Goedken Apparatus and methods for electronic information exchange
US6968332B1 (en) * 2000-05-25 2005-11-22 Microsoft Corporation Facility for highlighting documents accessed through search or browsing
US7801912B2 (en) * 2005-12-29 2010-09-21 Amazon Technologies, Inc. Method and apparatus for a searchable data service

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020091702A1 (en) * 2000-11-16 2002-07-11 Ward Mullins Dynamic object-driven database manipulation and mapping system
WO2005103956A1 (en) * 2004-04-02 2005-11-03 Microsoft Corporation Adapter framework for line-of-business application integration
JP2007531157A (ja) * 2004-04-02 2007-11-01 マイクロソフト コーポレーション 基幹業務アプリケーション統合のためのアダプタフレームワーク

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
CSND200401534016; 進藤達也: '全文検索技術と業務システムへの応用' JAVA PRESS 第35巻, 20040415, p.125-133, (株)技術評論社 *
CSNG200500571005; 田中洋平、外1名: 'OWLの制限付き継承を利用したユビキタスコンピューティング環境におけるサービス構成方法' 電子情報通信学会技術研究報告(AI2004-12〜18) 第104巻,第233号, 20040722, p.23-28, 社団法人電子情報通信学会 *
JPN6009043102; 進藤達也: '全文検索技術と業務システムへの応用' JAVA PRESS 第35巻, 20040415, p.125-133, (株)技術評論社 *
JPN6009043302; Shankar Pasupathy、外2名: 'Making enterprise storage more search-friendly' Proc. of the 20th ACM symp. on OS principles , 2005, p.1,2 *
JPN6012023655; 田中洋平、外1名: 'OWLの制限付き継承を利用したユビキタスコンピューティング環境におけるサービス構成方法' 電子情報通信学会技術研究報告(AI2004-12〜18) 第104巻,第233号, 20040722, p.23-28, 社団法人電子情報通信学会 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013546062A (ja) * 2010-10-21 2013-12-26 ヒューレット−パッカード デベロップメント カンパニー エル.ピー. モバイルコンピューティングデバイスを用いた複数のデータソースの検索
JP2016521398A (ja) * 2013-03-15 2016-07-21 ベウラワークス,エルエルシー. ナリッジ取込および発見システム
JP2021064392A (ja) * 2013-03-15 2021-04-22 ベウラワークス,エルエルシー. データ取り込みおよび該データへのユーザアクセス促進システムおよび方法
JP7086166B2 (ja) 2013-03-15 2022-06-17 ベウラワークス,エルエルシー. データ取り込みおよび該データへのユーザアクセス促進システムおよび方法

Also Published As

Publication number Publication date
US7689580B2 (en) 2010-03-30
US20070226242A1 (en) 2007-09-27
EP1999660A1 (en) 2008-12-10
CN101454779B (zh) 2014-06-11
WO2007121050A1 (en) 2007-10-25
CA2647584A1 (en) 2007-10-25
AU2007238453A1 (en) 2007-10-25
CA2647584C (en) 2014-12-09
CN101454779A (zh) 2009-06-10
JP5129804B2 (ja) 2013-01-30

Similar Documents

Publication Publication Date Title
JP5129804B2 (ja) 検索ベースのアプリケーション開発フレームワーク
US8645905B2 (en) Development artifact searching in an integrated development environment
US8296311B2 (en) Solution search for software support
US9305100B2 (en) Object oriented data and metadata based search
US9405780B2 (en) System and method for providing a global universal search box for the use with an enterprise crawl and search framework
US8935277B2 (en) Context-aware question answering system
US7089235B2 (en) Method for restricting queryable data in an abstract database
US9384489B2 (en) Population selection framework, systems and methods
EP3942425A1 (en) Natural language based processing of data stored across heterogeneous data sources
US7480648B2 (en) Research rapidity and efficiency improvement by analysis of research artifact similarity
CN101114294A (zh) 自助式智能垂直搜索方法
US6795832B2 (en) Rule based compatibility module
US20110238653A1 (en) Parsing and indexing dynamic reports
JP5927886B2 (ja) クエリシステム及びコンピュータプログラム
JP2013114393A (ja) 情報検索装置およびプログラム
JP3565117B2 (ja) 複数異種情報源アクセス方法及びクライアント装置及び複数異種情報源アクセスプログラムを格納した記憶媒体
US20230214430A1 (en) Dynamically decide data operations based on information type to satisfy business user need
Guerrero et al. Microsoft SQL Server 2000 programming by example
Quan Problem-resolution dissemination

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120515

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120604

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120828

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120925

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121030

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121102

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5129804

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151109

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250