(57)【特許請求の範囲】
【請求項１】
プロセス制御の検索結果を表示するための方法であって、
検索インタフェースが、検索パラメータを受信することと、
検索エンジンが、フィールド機器により送信されたデータに基づいてプロセス制御システム内のコントローラによって生成される実行時データに対応する制御パラメータを複数含むインデックスにおいて、前記検索パラメータに一致する制御パラメータを検索することと、
レンダラが、前記検索された制御パラメータを、パネルに表示するために、レンダリングすることと、
を含む方法であって、
前記インデックスには、前記実行時データと前記実行時データに対応する制御パラメータとが記憶されている、
方法。
【請求項２】
前記検索インタフェースが、表示コンテキストを決定することを更に含み、
前記表示コンテキストが、前記表示コンテキストと、少なくとも１つのタイプのアプリケーション、前記アプリケーションで表示されるデータタイプ、または前記一致する制御パラメータのデータタイプとの照合によって決定される、請求項１に記載の方法。
【請求項３】
データマネージャが、前記実行時データを、前記インデックスに格納する、請求項１又は請求項２に記載の方法。
【請求項４】
前記インデックスには、ソース情報が記憶されており、
前記方法は、
前記検索エンジンが、前記インデックスで、前記検索パラメータに対応するソース情報を検索して、一致したソース情報を形成することと、
前記レンダラが、前記一致したソース情報を、表示するために、レンダリングを行うことと、
をさらに含み、
前記ソース情報が、構成情報、履歴アーカイブ情報、アラーム情報、イベント情報、またはプロセス制御ヘルプドキュメントの少なくとも１つを含む、
請求項１に記載の方法。
【請求項５】
前記検索インタフェースが、アプリケーションでユーザに関連するフィルタ条件を受信することと、
検索フィルタが、前記一致した制御パラメータを前記フィルタ条件に基づき解析することと、
前記レンダラが、前記一致した制御パラメータから解析された前記制御パラメータを前記検索結果として前記アプリケーションで表示するためにレンダリングすることと、
をさらに含む、請求項１〜請求項４の何れか１項に記載の方法。
【請求項６】
前記フィルタ条件が、前記ユーザの職務権限、前記ユーザに関連する制御の範囲、前記ユーザのセキュリティアクセス、前記ユーザに付与されている特権、または前記ユーザに関連する識別子の少なくとも１つを含む、請求項５に記載の方法。
【請求項７】
プロセス制御の検索結果を表示するための装置であって、
検索パラメータを受信する検索インタフェースと、
フィールド機器により送信されたデータに基づいてプロセス制御システム内のコントローラによって生成される実行時データに対応する制御パラメータを複数含むインデックスにおいて、前記検索パラメータに一致する制御パラメータを検索する検索エンジンと、
前記検索された制御パラメータを、パネルに表示するために、レンダリングするレンダラと、
を備える装置であって、
前記インデックスには、前記実行時データと前記実行時データに対応する制御パラメータとが記憶されている、
装置。
【請求項８】
表示コンテキストを決定するプロセッサを更に含み、
前記表示コンテキストが、前記表示コンテキストと、少なくとも１つのタイプのアプリケーション、前記アプリケーションで表示されるデータタイプ、または一致した制御パラメータのデータタイプとの照合によって決定される、請求項７に記載の装置。
【請求項９】
機械可読命令を格納する記憶媒体であって、
前記機械可読命令が、実行される時に、機械に、少なくとも、
検索インタフェースを介して検索パラメータを受信させ、
フィールド機器により送信されたデータに基づいてプロセス制御システム内のコントローラによって生成される実行時データに対応する制御パラメータを複数含むインデックスにおいて、前記検索パラメータに一致する制御パラメータを検索させ、
前記検索された制御パラメータを、パネルに表示するために、レンダリングさせるものであり、
前記インデックスには、前記実行時データと前記実行時データに対応する制御パラメータとが記憶されている、
記憶媒体。
【請求項１０】
前記機械可読命令が、実行される時に、前記機械に対して、表示コンテキストを決定させることを更に含み、
前記表示コンテキストが、前記表示コンテキストと、少なくとも１つのタイプのアプリケーション、前記アプリケーションで表示されるデータタイプ、または前記一致する制御パラメータのデータタイプとの照合によって決定される、請求項９に記載の記憶媒体。
【請求項１１】
前記機械可読命令が、実行される時に、前記機械に、前記実行時データを前記インデックスに格納させる、
請求項９又は請求項１０に記載の記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般に、プロセス制御システムに関し、より詳細には、プロセス制御の検索結果を管理するための方法および装置に関する。
【背景技術】
【０００２】
化学、石油または他のプロセスで使用されるような、プロセス制御システムは、通常、少なくとも１つのホストまたはオペレータワークステーション、およびアナログ、デジタルまたはアナログ／デジタル複合バスを経由した１つ以上のフィールド機器に通信で結合されている１つ以上のプロセスコントローラと入力／出力（Ｉ／Ｏ）機器を備える。フィールド機器は、例えば、バルブ、バルブポジショナ、スイッチおよびトランスミッタ（例えば、温度センサ、圧力センサおよび流量センサ）であり得、バルブの開閉およびプロセス制御パラメータの計測など、プロセス内でプロセス制御機能を実行する。コントローラは、フィールド機器によって行われたプロセス計測を示す信号を受信し、この情報を処理して制御ルーチンを実行し、プロセスの操作を制御するために、バスまたは他の通信回線を経由してフィールド機器に送信される制御信号を生成する。このように、コントローラは、通信でフィールド機器に結合しているバスおよび／または他の通信回線を介し、フィールド機器を用いて、制御ストラテジまたはルーチンを実行および統合する。
【０００３】
フィールド機器およびコントローラからの情報は、オペレータがプロセスに関して所望の機能を実行できるようにするため、オペレータワークステーション（例えば、プロセッサベースシステム）によって実行される実行時データとして、１つ以上のアプリケーション（すなわち、ルーチン、プログラムなど）で利用可能にされ得る。これらの機能のいくつかは、プロセスの現在の状態の表示（例えば、グラフィカルユーザインタフェースによって）、プロセスの評価、プロセスの操作の変更（例えば、視覚的に表現したオブジェクト図によって）などを含み得る。多くのプロセス制御システムは、１つ以上のアプリケーションステーションも含む。通常、これらのアプリケーションステーションは、パーソナルコンピュータ、ワークステーション、またはコントローラ、オペレータワークステーション、およびローカル・エリア・ネットワーク（ＬＡＮ）を介したプロセス制御システム内の他のシステムと通信で結合された同様のものを用いて実装される。各アプリケーションステーションは、プロセス制御システム内で、キャンペーン管理機能、保守管理機能、バーチャル制御機能、診断機能、リアルタイムモニタリング機能、安全関連機能、構成機能などを実行する１つ以上のストラテジ、ルーチン、またはアプリケーションを実行し得る。
【０００４】
また、アプリケーションステーションおよび／またはオペレータワークステーションは、プロセスドキュメンテーション、イベント情報、アラーム情報、および／またはプロセス制御システムの様々な態様を記述するヘルプファイルにアクセスし得る。これら様々な種類の情報のそれぞれは、別個のデータベースに格納され得る。ある状況では、データベースで所望のドキュメントおよび／または情報を検索するために、オペレータによって検索機能が使用され得る。しかし、異なる種類のドキュメントが、プロセス制御システム内の異なる場所および／またはデータベースに格納されているため、オペレータは、あるトピック、フィールド機器、および／または情報の種類に関する情報について、複数のデータベースを検索する必要があり得る。
【発明の概要】
【課題を解決するための手段】
【０００５】
プロセス制御の検索結果を管理するための方法および装置の例について説明する。一例を挙げれば、方法は、アプリケーション経由でユーザから検索パラメータを受信して、その検索パラメータに関連した検索結果を表示すること、そのアプリケーションに基づいて表示コンテキストを決定すること、および検索インデックスでその検索パラメータに一致する制御パラメータを検索して１組の一致した制御パラメータを形成することを含み、そこで、その検索インデックスは、プロセス制御システム内のコントローラによって生成される実行時データに対応する制御パラメータを含む。その方法例は、その１組の一致した制御パラメータを、そのアプリケーションで、決定された表示コンテキストに基づき、検索結果として表示するためのレンダリングすることも含む。
【０００６】
装置例は、検索インデックスで、アプリケーションから受信した検索パラメータに一致する制御パラメータを検索する検索エンジンを含み、そこで、その検索インデックスは、プロセス制御システム内のコントローラによって生成される実行時データに対応する制御パラメータを含む。検索エンジン例はまた、一致する制御パラメータを検索結果として送信もする。
【図面の簡単な説明】
【０００７】
【図１】検索インタフェース例およびインデックスマネージャ例を含む、プロセス制御システム例を示すブロック図である。
【図２】図１の検索インタフェース例およびインデックスマネージャ例の機能ブロック図である。
【図３】図１および図２の検索インタフェース例によって提供される検索結果を表示する図１のユーザインタフェース例を示す。
【図４】図１および図２の検索インタフェース例によって提供される検索結果を表示する図１のユーザインタフェース例を示す。
【図５】図１および図２の検索インタフェース例によって提供されるコンテキスト内検索結果を表示する図１のユーザインタフェース例を示す。
【図６】ユーザのタイプに基づきコンテキスト内検索結果を表示する図１のユーザインタフェース例を示す。
【図７】ユーザのタイプに基づきコンテキスト内検索結果を表示する図１のユーザインタフェース例を示す。
【図８】図１および図２の検索インタフェース例によって提供される機能ブロックの検索結果を表示する図１のユーザインタフェース例を示す。
【図９Ａ】図１および／または図２の検索インタフェースおよび／またはインデックスマネージャの実装に使用され得る方法例の流れ図である。
【図９Ｂ】図１および／または図２の検索インタフェースおよび／またはインデックスマネージャの実装に使用され得る方法例の流れ図である。
【図１０】図１および／または図２の検索インタフェースおよび／またはインデックスマネージャの実装に使用され得る方法例の流れ図である。
【図１１Ａ】図１および／または図２の検索インタフェースおよび／またはインデックスマネージャの実装に使用され得る方法例の流れ図である。
【図１１Ｂ】図１および／または図２の検索インタフェースおよび／またはインデックスマネージャの実装に使用され得る方法例の流れ図である。
【図１２】本明細書で説明する方法および装置の例の実装に使用され得るプロセッサシステム例のブロック図である。
【発明を実施するための形態】
【０００８】
以下で、数あるコンポーネントの中でとりわけ、ハードウェア上で実行されるソフトウェアおよび／またはファームウェアを含めて、方法および装置の例について説明するが、これらの例は単に事例に過ぎず、限定として見なされるべきものでないことに注意されたい。例えば、ハードウェア、ソフトウェア、およびファームウェアコンポーネントのいずれかまたは全ては、ハードウェアのみ、ソフトウェアのみ、またはハードウェアとソフトウェアの任意の組み合わせで実施され得ると考えられる。従って、以下で方法および装置の例について説明するが、当業者は、提供される例はかかる方法および装置を実装するための唯一の方法ではないことを容易に理解されるであろう。例えば、方法および装置の例は、プロセス制御の検索結果の管理に関連して説明されるが、その方法および装置の例はより広く適用可能であり、任意の自動化システム、バッチ処理システム、製造システム、産業用制御システム、安全計装システムなどに対して、検索結果を管理するために実施され得る。
【０００９】
プロセス制御システムは、一般に、制御システム内に設置されているフィールド機器を管理するルーチン、制御ストラテジ、および／またはアルゴリズムを操作するコントローラを含む。フィールド機器は、例えば、バルブ、バルブポジショナ、スイッチおよびトランスミッタであり得、バルブの開閉およびプロセス制御パラメータの計測などのプロセス制御機能を実行し得る。フィールド機器の管理に加えて、コントローラは、そのフィールド機器から受信したデータに基づき実行時データを生成する。いくつかの例では、コントローラは、フィールド機器から受信したデータに基づき、ルーチンおよび／もしくはアルゴリズムを介して、実行時データを計算するか、ならびに／またはそうでない場合は、実行時データを決定する。その実行時データは、プロセス値、統計値、アラーム、モニタリング情報、プロセス動向情報、診断情報、フィールド機器状態情報、および／またはフィールド機器からのメッセージを含み得る。
【００１０】
コントローラは、オペレータがプロセス制御システムを管理できるように、実行時データをワークステーション上で稼働しているアプリケーションに送信する。実行時データを管理するために、既存のプロセス制御システムは制御パラメータ（例えば、制御変数）を定義して、実行時データの定義を提供する。このようにして、アプリケーションは、対応する実行時データを表示するために、１つ以上のグラフィック表現された制御パラメータを参照し得る。例えば、ＰＵＭＰ０１制御パラメータは、ポンプの出力に対して定義され得る。コントローラは、ポンプからの出力を値の形（例えば、データ）で受信し、その値を実行時データを生成するためにルーチンで処理して、その実行時データをＰＵＭＰ０１制御パラメータに格納する。グラフ、チャート、および／または他のグラフィック表現は、ＰＵＭＰ０１制御パラメータを参照して、そのポンプの出力値を表示し得る。
【００１１】
実行時データの管理に加えて、プロセス制御システムは、ソース情報（例えば、制御ドキュメンテーション）を管理する。ソース情報は、例えば、プロセス制御システムの態様、フィールド機器命令、コントローラの操作、ベストプラクティス、履歴アーカイブ情報、トラブルシューティング手順、安全プラクティス、アプリケーション操作命令、アラーム情報、イベント情報、および／またはヘルプファイルを記述する。ソース情報および実行時データは、まとめてプロセス制御情報として参照される。
【００１２】
プロセス制御情報は、プロセス制御システムにローカルなデータベースに格納され得る。プロセス制御情報は、情報のタイプに基づいて、異なるデータベースにも格納され得る。例えば、安全プラクティスのソース情報は、安全関連のデータベースに格納され得るが、一方、フィールド機器の実行時データは、デバイス実行時データのデータベースに格納され得る。同様のタイプのドキュメントおよび情報を同一データベースに整理して格納することにより、プロセス制御システムの設計者は、そのドキュメントアクセスおよび管理を最適化しておよび／または、ドキュメント管理の指針および／または手順に従うことが可能になる。
【００１３】
様々なデータベースを検索するため、ドキュメントアナライザ（例えば、クローラおよび／またはスパイダ）は、データベースを定期的にアクセスして、例えば、ドキュメント内のキーワード、ドキュメントのタイトル、および／またはドキュメント内の他の指定されたパラメータに基づき、各ドキュメントのインデックスを作成し得る。インデックス作成には、例えば、検索エンジンによって検索可能なリストへの完全な情報および／または一部の情報の格納を含む。インデックス作成は、検索エンジンが、多数の異なる電子的位置および／または地理的位置に在り得る情報を単一位置で検索できるようにすることにより、検索時間を節約する。このインデックス作成されたプロセス制御情報を使用すると、検索エンジンは、オペレータによって提供された検索パラメータをインデックス作成されたドキュメントと照合する。しかし、様々なタイプのドキュメントが様々な位置および／またはデータベースに格納されているため、複数のデータベースで参照されている特定の項目に関する情報を検索しているユーザは、各データベースで検索を実行する必要がある。例えば、あるユーザがポンプに関するドキュメンテーションを必要としている場合、そのユーザは、ポンプに関する製品仕様書を含むデータベース、ポンプに関する安全手順を含むデータベース、ポンプのベストプラクティスのためのデータベース、ポンプの動作状態のイベントデータベース、および／または関連情報を含み得る他のデータベースにアクセスする必要があり得る。
【００１４】
あるいは、いくつかのインデックスは、単一の検索可能位置にある複数のデータベースへの参照を含み得る。しかし、既存の検索エンジンの多くは、検索結果をリンクのリストとして、そのリンクのいくらかのテキスト記述と共に返すだけである。また、ローカルのデータベース用に構成された多くの既存の検索エンジンは、検索結果を、ユーザによって提供された検索パラメータに一致するリンクのリストとして表示する。いくつかの例では、検索結果は、提供されたリンクに関連する内容のサムネイル画像も含み得る。しかし、検索結果として表示された情報は、一般的に、定期的（例えば、毎週、毎月、など）にインデックス作成され、最新情報を反映していない可能性がある。プロセス制御システムでは、ユーザ、オペレータ、および／またはエンジニアは、プロセスおよび／またはフィールド機器の操作に関して評価および判断するため、時々、最新データを必要とする。
【００１５】
既存の検索エンジンの多くは、コントローラから生成されたプロセス制御の実行時データを検索できない可能性がある。多くの場合、コントローラは、毎秒、何百〜何千もの実行時データの値を生成し得る。さらに、制御パラメータに関連する値は、数ミリ秒毎に変わり得るため、それによって以前に生成されたデータを書き換える。実行時データは比較的頻繁に生成および／または更新されるため、既存の検索エンジンの多くは、実行時データのインデックスを作成するように構成されていない。
【００１６】
本明細書で説明する方法および装置の例は、様々な場所にある様々なデータベースに渡り得るソース情報および／または実行時データ（例えば、プロセス制御情報）のインデックスの検索、ならびにその検索に関連するコンテキストでの検索結果の表示により、プロセス制御の検索結果を管理し表示する。インデックスは、完全なソース情報および／または実行時データを含み得る。また、あるインデックスは、ソース情報および／または実行時データの検索可能な代表的な部分を含み得る。検索のコンテキストは、検索を実行するユーザの職務権限、そのユーザのアクセスレベル、そのユーザの識別、および／またはそのユーザによって提供される認証を含み得る。検索のコンテキストはまた、アプリケーションのコンテキスト、ユーザインタフェースのコンテキスト、および／または検索を開始するために選択されたプロセス制御情報のコンテキストにも基づき得る。
【００１７】
さらに、本明細書で説明する方法および装置の例は、検索を要求するために使用されたコンテキストに基づき検索結果の表示を構成することにより、検索結果の表示を管理する。例えば、検索パラメータをオペレータインタフェースから検索フィールドに手作業で入力するユーザは、プロセス制御システムの一部を示すプレビューパネル内で、各検索結果に関連する更新された実行時データと共に、検索結果のリストを受け取り得る。別の例では、ユーザは、概略図上にグラフィック表現されたフィールド機器を選択することにより、検索を開始し得る。この例では、方法および装置が、選択されたフィールド機器に基づいて検索パラメータを決定し、その概略図（例えば、レイアウト情報、フィールド機器に関連する実行時データ、履歴の動向グラフなど）に関連するグラフィックの検索結果を返し得る。
【００１８】
本明細書で説明する方法および装置の例は、データベースまたはドキュメントに格納されていない可能性のある実行時データのインデックスを管理する。実行時データは、一般に、動的であるため、方法および装置は、その実行時データに関連する制御パラメータのインデックスを作成することにより、実行時データのインデックスを作成する。多くの場合、制御パラメータ名は静的である。方法および装置の例は、制御パラメータにアクセスする任意のアプリケーションまたはグラフィック表現が検索結果として最新の実行時データと共に表示され得るように、プロセス制御システム内で、通常および／または頻繁に使用される制御パラメータのリストのインデックスを作成する。このため、方法および装置の例は、実行時データに関連する制御パラメータのインデックスを作成し、実行時データの変更を表示された検索結果に伝播することにより、実行時データのインデックスを効果的に作成する。
【００１９】
本明細書で説明する方法および装置の例はまた、制御パラメータおよび／もしくは実行時データがコントローラから読み取られる周期、ならびに／または制御パラメータおよび／もしくは実行時データがインデックス内に格納される期間も指定し得る。いくつかの例では、方法および装置の例は、制御パラメータが関連しているか、および／または制御システム内でユーザによって比較的頻繁にアクセスされる限り、実行時データの制御パラメータのインデックス作成のみを行い得る。他の例では、方法および装置は、全ての制御パラメータのインデックスを作成して、頻繁にアクセスされる制御パラメータのみを更新し得る。
【００２０】
本明細書で説明する方法および装置の例は、プロセス制御のユーザ、オペレータ、および／またはエンジニアが、検索パラメータ（例えば、検索基準）および／または検索結果をローカルのデータベースに保存できるようにする。その方法および装置は、定期的に、通常および／または頻繁に保存される検索を識別し、これらの良く保存される検索を、他のプロセス制御の担当者が利用可能な公開データベースに昇格する。さらに、本明細書で説明する方法および装置の例は、プロセス制御システム内の各ワークステーションおよび／またはコンピュータに格納され得るバックアップのインデックスを管理する。そのバックアップインデックスは、一次プロセス制御インデックスほど頻繁に更新されない可能性があるが、一次インデックスがオフラインの場合に、検索機能を提供し得る。
【００２１】
図１は、本明細書で説明する方法および装置の例の実施に使用され得る検索インタフェース例１０２およびインデックスマネージャ例１０３を含むプロセス制御環境例１００のブロック図を示す。検索インタフェース例１０２およびインデックスマネージャ例１０３は、プロセス制御システム１０４内に含まれる。また、検索インタフェース１０２は、ワークステーション１０６によって実施されるか、および／またはその中に含まれ得る。他の例では、検索インタフェース１０２は、サーバー、分散コンピューティングネットワーク、および／またはワークステーション１０６に通信で結合され得る他のコンピューティング装置内に含み得る。
【００２２】
図１のワークステーション例１０６は、パーソナルコンピュータ、ラップトップコンピュータ、サーバー、コントローラ、携帯端末（ＰＤＡ）、コンピューティングパッド、マイクロコンピュータなどの任意のコンピューティング装置を含み得る。ワークステーション１０６は、任意の適切なコンピュータシステムまたは処理システム（例えば、図１２のプロセッサシステムＰ１０）を使用して実施し得る。例えば、ワークステーション１０６は、単一プロセッサのパーソナルコンピュータ、単一またはマルチプロセッサのワークステーションなどを使用して実施し得る。
【００２３】
プロセス制御システム例１０４は、任意の種類の製造施設、プロセス施設、自動化施設、安全計装対応施設、および／または他の種類のプロセス制御構造もしくはシステムを含み得る。いくつかの例では、プロセス制御システム１０４は、プロセス制御環境１００内の様々な位置にある複数の施設を含み得る。さらに、プロセス制御環境例１００は、同一施設内に含まれるか、および／または異なる施設に設置され得る他のプロセス制御システム（図示せず）を含み得る。
【００２４】
プロセス制御システム例１０４は、ローカル・エリア・ネットワーク（ＬＡＮ）１１０を経由してワークステーション１０６と通信で結合されているコントローラ１０８を含む。ＬＡＮ １１０は、任意の通信媒体および／またはプロトコルを用いて実装され得る。例えば、ＬＡＮ １１０は、有線または無線のイーサネット（登録商標）通信スキームに基づき得る。しかし、他の適切な通信媒体およびプロトコルも使用され得る。さらに、単一のＬＡＮ １１０が示されているが、ワークステーション１０６とそれぞれ同様のワークステーション（図示せず）との間に冗長通信パスを提供するために、２つ以上のＬＡＮおよびワークステーション１０６内の適切な通信ハードウェアが使用され得る。
【００２５】
また、プロセス制御環境１００は、他のワークステーション（図示せず）をコントローラ１０８と通信で結合するため、および／またはワークステーション１０６を他のプロセス制御システム内のコントローラ（図示せず）に通信で結合するため、ルーター（図示せず）を含み得る。さらに、プロセス制御環境１００は、リモートワークステーション（例えば、プロセス制御環境１００の外部にあるワークステーション）に、プロセス制御環境１００内のリソースへのアクセスを提供するために、ファイアウォール（図示せず）を含み得る。
【００２６】
プロセス制御システム１０４は、フィールド機器１１２（例えば、入力および／または出力装置）を含む。フィールド機器１１２は、入力の受信、出力の生成、および／またはプロセスの制御が可能な任意の種類のプロセス制御コンポーネントを含む。フィールド機器１１２は、例えば、プロセスを制御するための、バルブ、ポンプ、ファン、加熱器、冷却器、および／または混合器などの制御装置を含み得る。さらに、フィールド機器１１２は、例えば、プロセスの一部を測定するための温度センサ、圧力計、濃度計、液面計測器、流量計、および／または蒸気センサなどの測定またはモニタリング装置を含み得る。フィールド機器１１２は、指定されたコマンドを実行するため、入力１１４を経由してコントローラ１０８から命令を受信し、そのフィールド機器１１２で実装および／または制御されるプロセスを変更する。さらに、そのフィールド機器１１２は、プロセスデータ、環境データ、および／または入力装置データを測定し、その測定したデータを出力１１６経由でコントローラ１０８に送信する。このデータは、各フィールド機器からの測定出力に対応する変数値を含み得る。
【００２７】
プロセス制御システム１０４は、フィールド機器１１２からデータを受信し、そのデータをコントローラ例１０８で処理可能な情報に変換するための入出力装置１１８（たとえば、１つ以上の入出力カード）も含む。同様に、入出力装置１１８は、コントローラ１０８からのデータまたは情報を、対応するフィールド機器で処理可能なフォーマットに変換する。
【００２８】
図１のコントローラ例１０８は、プロセス制御システム１０４内のフィールド機器１１２を管理するために、１つ以上の制御ルーチン（例えば、プロセス制御アルゴリズム、関数、および／または命令）を操作する。制御ルーチンは、例えば、プロセス・モニタリング・アプリケーション、アラーム管理アプリケーション、プロセス動向および／または履歴アプリケーション、診断アプリケーション、バッチ処理および／またはキャンペーン管理アプリケーション、統計アプリケーション、ストリーミングビデオアプリケーション、高度制御アプリケーション、安全計装アプリケーション、イベントアプリケーション、などを含む。コントローラ１０８は、フィールド機器１１２から受信したデータから、実行時データを計算および／または決定する。また、コントローラ１０８は、その実行時データを、対応する制御パラメータに対して、書き込みおよび／または関連付けを行う。コントローラ１０８はその後、その実行時データを、制御パラメータを介してインデックスマネージャ例１０３および／またはワークステーション１０６に送信する。さらに、コントローラ１０８は、実行時データを、ワークステーション１０６および／またはプロセス制御環境１００内の他のワークステーションによってアクセス可能な１つ以上のデータベース（例えば、実行時データメモリ１２０）に格納し得る。あるいは、実行時データは、コントローラ１０８および／またはプロセス制御システム１０４内の実行時データキャッシュ内に格納され得る。コントローラ１０８によって送信された実行時データは、例えば、プロセス制御値、データ値、アラーム情報、テキスト、状態情報、診断情報、エラーメッセージ、パラメータ、イベント、および／または装置識別子を含む。
【００２９】
制御パラメータは、コントローラ１０８によって生成された実行時データを割り当てられたプロセス変数名および／またはデータフィールドである。いくつかの例では、コントローラ１０８のルーチンは、制御パラメータを定義して、データ値を対応する制御パラメータに関連付け得る。例えば、ある制御パラメータ（例えば、ＰＳ ＰＵＭＰ０１）は、ポンプの出力速度に対応し得る。フィールド機器１１２内のポンプによって報告される値は、コントローラ１０８によりＰＭ ＰＵＭＰ０１制御パラメータと関連付けられる。コントローラ１０８は、その値を実行時データメモリ１２０内のＰＳ ＰＵＭＰ０１制御パラメータに書き込み、かつ／またはこの値を、ＰＳ ＰＵＭＰ０１制御パラメータを含む任意のアプリケーション、概略図および／または機能図に伝播し得る。いくつかの例では、ポンプ（多くのフィールド機器１１２と同様に）は、新しい出力値を１秒に数回送信し得、それにより、ＰＳ ＰＵＭＰ０１制御パラメータに関連して格納されている値が変わる。
【００３０】
インデックスマネージャ例１０３は、定期的に実行時データメモリ１２０にアクセスして、実行時データのインデックスを作成することにより、実行時データのインデックスを管理する。いくつかの例では、インデックスマネージャ１０３は、どの制御パラメータが関連し、かつ／または検索結果を要求するワークステーションによって頻繁にアクセスされるかを判断することにより、実行時データのインデックスを作成し得る。他の例では、インデックスマネージャ１０３は、実行時データメモリ１２０内にリストされている制御パラメータの大部分および／または全てのインデックスを作成する。さらに、インデックスマネージャ１０３は、実行時データメモリ１２０内に現在格納されている実行時データおよび／またはコントローラ１０８によって生成された実行時データを読み取り、かつインデックス内の対応する制御パラメータを更新することにより、インデックスを定期的に更新する。あるいは、インデックスマネージャ１０３は、インデックス内にリストされている制御パラメータと、実行時データメモリ１２０に格納されている実行時データおよび／またはコントローラ１０８によって生成された実行時データとの間のリンクを管理し得る。このようにして、制御パラメータが検索結果に表示される時、制御パラメータのコンテキスト内で更新された実行時データを表示するため、インデックス内のリンクが、実行時データを表示された制御パラメータに結び付ける。
【００３１】
インデックスマネージャ例１０３は、インデックスを検索インデックスデータベース１２２に格納する。検索インデックスデータベース１２２は、検索可能な方法で編成されている、インデックスマネージャ１０３によってインデックス作成された制御パラメータおよび関連する実行時データのリストを含む。いくつかの例では、検索インデックスデータベース１２２内の制御パラメータは、例えば、プロセス制御領域、フィールド機器、パラメータタイプ、および／または他のプロセス制御カテゴリによって編成される。
【００３２】
さらに、インデックスマネージャ１０３は、ソース情報のインデックスを作成するために、ソース情報データベース１２４を受信および／またはアクセスし得る。ソース情報データベース１２４は、プロセス制御システム１０４内のドキュメント、ファイル、および／またはプロセス制御情報を格納する少なくとも１つのデータベースを含む。ソース情報データベース１２４が複数のデータベースを含むいくつかの例では、インデックスマネージャ１０３は、各データベース１２４のインデックスを作成し、そのインデックス情報を、検索インデックスデータベース１２２内の単一の検索可能インデックスに混ぜ合わせる。例えば、ソース情報データベース１２４は単一データベースとして示されるが、ソース情報データベース１２４は、プロセス制御環境１００内の様々な位置にあるプロセス制御ドキュメンテーションを格納し得る、複数のデータベース、メモリ、サーバー、および／またはワークステーションを含み得る。他の例では、インデックスマネージャ１０３は、各データベース１２４についてインデックスを作成し、そのインデックスを検索インデックスデータベース１２２に格納し得る。これら他の例では、検索インタフェース１０２は、複数の検索インデックスを検索した検索結果を統合し得る。
【００３３】
データベース１２４内に格納されているソース情報は、プロセス制御システム１０４の態様を記録するため、プロセス制御のユーザ、オペレータ、エンジニア、マネージャ、設計者などによって作成され得る。ソース情報は、例えば、フィールド機器１１２の操作を説明する操作マニュアル、トラブルシュート用ドキュメンテーション、プロセス制御システム１０４で実施されるプロセスを説明するドキュメント、ヘルプファイル、履歴アーカイブ情報、構成情報、ベスト・プラクティス・ドキュメント、安全手順などを含む。インデックスマネージャ例１０３は、ワークステーション１０６のユーザが、１組の検索パラメータを使用して、プロセス制御環境１００内にあるデータベース１２４の単一の検索を実行できるようにする。このようにして、ユーザは、様々な種類のドキュメントおよび／またはファイルについて、データベースの別個の検索を行う必要なく、実質的に全ての関連するプロセス制御ドキュメンテーションおよび／または検索パラメータに関連するデータを比較的迅速かつ効果的に検索し得る。
【００３４】
検索インデックスデータベース例１２２は、ＬＡＮ １１０を経由して、ワークステーション１０６（およびプロセス制御システム１０４内の他のワークステーション）からアクセス可能である。ワークステーション１０６は、検索インタフェース１０２を使用して、インデックスマネージャ１０３でインデックス作成された制御パラメータおよびソース情報を検索インデックスデータベース１２２内で検索する。他の例では、インデックスマネージャ１０３は、検索インデックスのローカルコピーをワークステーション１０６内に格納する。検索インデックスのローカルコピーは、検索インデックスデータベース１２２がオフラインおよび／またはアクセス不能な場合に、ソース情報データベース１２４および／または実行時データメモリ１２０内に格納されているプロセス制御情報を検索するため、ワークステーション１０６によって使用され得る。
【００３５】
プロセス制御アプリケーションからコンテキストベースの検索を提供するため、プロセス制御システム例１０４は、ユーザインタフェース１２６を含む。ユーザインタフェース例１２６は、ワークステーション１０６のユーザが、例えば、プロセス制御情報の表示、プロセス制御情報の変更、プロセス制御システム１０４の管理、および／またはプロセス制御情報の入力を行うことができるようにする任意のアプリケーションインタフェースであり得る。アプリケーションには、エンタープライズ・ビュー（ｅｎｔｅｒｐｒｉｓｅ ｖｉｅｗ）アプリケーション、グラフィックススタジオ（ｇｒａｐｈｉｃｓ ｓｔｕｄｉｏ）アプリケーション、制御ストラテジスタジオ（ｃｏｎｔｒｏｌ ｓｔｒａｔｅｇｙ ｓｔｕｄｉｏ）、システム構成エクスプローラ（ｓｙｓｔｅｍ ｃｏｎｆｉｇｕｒａｔｉｏｎ ｅｘｐｌｏｒｅｒ）アプリケーション、および／または他の種類のプロセス制御ベースのアプリケーションを含み得る。これらのアプリケーションは、１つ以上のユーザインタフェース１２６を介して、ワークステーション１０６内に情報を表示する。ユーザインタフェース１２６は、グラフィック表現（例えば、機能ブロック図および／または概略図）として表示されるプロセス制御情報を表示するために、ワークステーション１０６内で表示されるグラフィックウィンドウを含み得る。ワークステーション１０６は、２つ以上のユーザインタフェース１２６を表示することが可能であり得る。いくつかの例では、ユーザインタフェース１２６は、プロセス制御情報の１つ以上のグラフィック表現を含み得、かつ、情報を入力するための１つ以上のフィールドを含み得る。ユーザは、ユーザインタフェース１２６を介してユーザに示される様々なアプリケーションおよび／または表示にアクセスし得る。
【００３６】
図示例の検索インタフェース１０２は、要求されたプロセス制御情報を探す検索機能を提供し、関連があり、かつ／またはユーザの職務権限、ユーザの制御領域、および／もしくはユーザの識別に基づき、ユーザによって表示する権限が付与されている検索結果を表示するために、プロセス制御情報をフィルタリングし得る。この検索機能は、検索結果のフィルタリングと組み合わさって、検索インタフェース例１０２が、ワークステーション１０６のユーザによる比較的少ない努力で、検索結果を提供できるようにする。検索機能を提供するため、検索インタフェース例１０２は、検索インデックスデータベース１２２にアクセスして、ユーザ指定の検索パラメータをインデックス作成されたプロセス制御情報と照合する。検索インタフェース１０２はその後、一致するプロセス制御情報を検索結果として表示する。
【００３７】
検索インタフェース１０２は、プロセス制御情報のタイプに基づいて検索結果を表示し得る。いくつかの例では、検索結果は、実行時データ、グラフ、チャート、ドキュメントのタイトル、流れ図、機能図などを備えた概略図の画像として表示され得る。検索インタフェース１０２は、検索結果をプレビューパネル内にも表示し得る。いくつかの例では、プレビューパネルは、ユーザが、リストされた検索結果項目に関連するソースドキュメントおよび／または実行時データへのアクセスを選択する前に、選択された検索結果項目（例えば、プロセス制御情報）をグラフィック表示し得る。プレビューパネルは、検索結果項目によってサポートされているアプリケーションを開くことにより、選択された検索結果項目を表示する。そのアプリケーションは、ユーザインタフェース１２６内に埋め込まれ得るか、かつ／またはユーザが選択された検索結果項目を表示するために別個のユーザインタフェースを開始し得る。
【００３８】
検索結果としてリストされたプロセス制御情報の選択を受信すると、検索インタフェース１０２は、ソース情報データベース１２４および／または実行時データメモリ１２０にアクセスして、選択されたプロセス制御情報を検索する。検索インタフェース例１０２はその後、検索のコンテキストおよび／または情報のコンテキストに基づき、選択されたプロセス制御情報１０２を表示する。例えば、選択された概略図は概略図表示アプリケーション内に表示され、ドキュメントは文書処理アプリケーション内に表示され、および／または実行時データはグラフィック実行時データアプリケーション内に表示される。
【００３９】
検索インタフェース１０２によって提供される検索機能は、例えば、システム構成データベース、知識管理データベース、資産管理データベース、アラームおよびイベントデータベース、バッチ履歴データベース、ヘルプファイルデータベース、および／またはユーザ提供ドキュメントデータベースを含む複数のデータベース（例えば、ソースデータベース１２４）に及ぶ。検索インタフェース１０２は、様々なプラットフォーム上で実装され得る複数システムに渡る統合検索を含め、プロセス制御環境１００内の複数のプロセス制御システム（図示せず）に対する検索サポートを提供し得る。検索インタフェース例１０２はまた、以前のイベント、プロセス制御履歴、および／または以前の実行時データに関連する情報を提供することにより、ワークステーション１０６に対する検索ナビゲーション機能も提供し得る。
【００４０】
また、ワークステーション１０６のユーザは、ユーザインタフェース１２６によって表示されている選択されたグラフィカルプロセス制御情報に基づくコンテキスト内のプロセス制御情報を検索し得る。例えば、ユーザは、あるタグを選択し、その選択された同一のタグを含む他のグラフィック表現および／または情報を検索し得る。いくつかの例では、インタフェース１２６内に示されているプロセス制御項目のコンテキスト内検索は、いかなるテキスト入力も必要としない。つまり、ユーザは、インタフェース１２６内に表示されている項目をクリックすることにより、その項目の検索パラメータを検索インタフェース１０２に提供し得る。別の例では、ユーザは、検索テキストボックスを使用して、入力されたテキスト文字列（例えば、検索パラメータ）に一致する属性を持つ表示されたソース情報および／または実行時データを検索し得る。検索基準の一部である表示されたソース情報および／または実行時データの属性には、例えば、表示名、記述、参照されるフィールド機器、および／または割り当てられた表示位置を含む。
【００４１】
いくつかの例では、検索インタフェース例１０２は、ユーザが、リストされたソース情報および／または実行時データを選択することにより、検索結果にリストされている任意のソース情報および／または実行時データをオープン（例えば、そこに移動）できるようにする。ソース情報および／または実行時データの検索結果では、まず、ワークステーション１０６のユーザの制御範囲（最も高い関連性）内のソース情報および／または実行時データをリストし、次に、他の操作可能領域に関連するソース情報および／または実行時データをリストする。さらに、検索インタフェース１０２は、ユーザが、プロセス制御情報の特定のカテゴリ（例えば、バッチ情報、アラームおよびイベント情報、オペレータメモ、フィールド機器情報、手順など）を検索できるようにし得る。
【００４２】
ユーザは、検索テキストボックスを利用して、例えば、テキスト文字列を含む検索パラメータを含む名前および／または記述を持つフィールド機器１１２を検索し得る。テキスト文字列には、ワイルドカード文字を含めて、フィールド機器１１２の名前の全体および／または一部を含み得る。さらに、検索インタフェース例１０２は、ユーザが、例えば、フィールド機器１１２の一般情報表示、フィールド機器１１２の詳細表示、および／またはフィールド機器１１２の一次表示を含む、特定のフィールド機器関連の表示へと移動できるようにする。例えば、ユーザは、フィールド機器１１２を検索し、その後、選択した情報をオープンおよび／または表示するために、フィールド機器１１２に関連する所望のプロセス制御情報を選択し得る。
【００４３】
図１の例では、ユーザは、フィールド機器のタグ識別値を使用してフィールド機器を検索するために、ユーザインタフェース１２６の一部として検索インタフェース１０２を使用し得る。検索インタフェース１０２は、そのユーザの制御範囲の領域内にあるフィールド機器１１２に基づき最も高い関連性を持つ（例えば、最初にリストする）結果をリストすることにより、インデックスマネージャ１０３によって提供される検索結果を表示し得る。いくつかの例では、ユーザは、ソース情報および／またはプロセス制御情報を識別するいくつかの検索結果に対してキーワードを追加し得る。検索インタフェース１０２は、ユーザインタフェース１２６からキーワードを受信して、対応するソース情報および／またはプロセス制御情報と共に、キーワードのインデックスを作成する。キーワードは、検索インタフェース１０２が、対応するインデックス作成されたソース情報および／またはプロセス制御情報をより正確かつ／または迅速に検索できるようにし得る。
【００４４】
また、検索インタフェース例１０２は、ユーザが、エンタープライズアプリケーションおよび／またはプロセス履歴アプリケーション内からチャート（例えば、実行時データおよび／またはソース情報）を検索できるようにする。検索インタフェース１０２は、ユーザが、現在表示されているプロセス制御情報上で選択されたタグに基づくコンテキスト内でチャートを検索できるようにする。例えば、ユーザは、ユーザインタフェース１２６内に表示されているプロセス制御項目上のタグを選択して、検索インタフェース１０２に、選択された同一タグを含むインデックス作成されたチャートを検索させ得る。ユーザはまた、検索テキストボックスにテキスト文字列を入力するために検索インタフェース１０２を使用して、その入力したテキスト文字列に一致する属性を持つインデックス作成されたチャートを検索し得る。検索基準（例えば、検索パラメータ）の一部であるチャート属性は、例えば、チャート名、チャート記述、および／またはフィールド機器１１２の名前を含む。
【００４５】
さらに、検索インタフェース１０２は、ユーザが、プロセス関連のアラームおよびイベント（例えば、実行時データおよび／またはソース情報）を検索できるようにする。いくつかの例では、アラームとイベントは、イベント・クロニクル・データベース（例えば、ソース情報データベース１２４）内に格納され得、そして、ユーザがエンタープライズ・ビュー・アプリケーションおよび／またはプロセス履歴ビューアプリケーションを使用することにより、ユーザインタフェース１２６内に表示され得る。検索インタフェース例１０２は、ユーザが、表示されているプロセス制御情報に基づくコンテキスト内でアラームおよび／またはイベントを検索できるようにする。例えば、ユーザは、フィールド機器１１２のグラフィック表現を選択し、その選択されたフィールド機器に関連し、過去２４時間に記録された、全てのアラームおよび／またはイベントを表示し得る。ユーザはまた、検索テキストボックスを使用して、検索インタフェース１０２に、その入力したテキスト文字列に一致する属性を持つアラームおよび／またはイベントの検索もさせ得る。いくつかの例では、アラームおよび／またはイベントについて検索インタフェース１０２で提供される検索結果は、最新のアラームおよび／またはイベントを最初にリストして、時系列でリストされ得る。ユーザは、特定の検索基準に合致するレコードを表示するため、検索インタフェース１０２を利用して、検索結果をフィルタリングし得る。その上、ユーザは、どのアラームおよび／またはイベント属性が検索結果に表示されているかを指定し得る。
【００４６】
図示例の検索インタフェース例１０２はまた、ユーザが、プロセス制御システム１０４に関連するバッチイベント（例えば、実行時データおよび／またはソース情報）も検索できるようにする。例えば、検索インタフェース１０２は、ユーザが、ユーザインタフェース１２６によって表示されるエンタープライズアプリケーションおよび／またはバッチ履歴アプリケーション内から、バッチ履歴データベース（例えば、ソース情報データベース１２４）に記録され得るバッチイベントを検索できるようにする。さらに、検索インタフェース１０２は、ユーザが、表示されているプロセス制御情報を選択することにより、コンテキスト内のバッチイベントを検索できるようにする。例えば、ユーザは、表示されているバッチリスト（例えば、プロセス制御情報）からバッチＩＤを選択して、検索インタフェース１０２にその選択したバッチＩＤに関連するバッチ履歴イベントを表示させ得る。別の例では、ユーザは、ユーザインタフェース１２６内に表示されているバッチステップ（例えば、プロセス制御情報）を選択して、検索インタフェース１０２に、その選択したステップに関連するバッチイベントを表示させ得る。さらにまた、ユーザは、検索インタフェース１０２によって提供される検索テキストボックスを使用して、入力されたテキスト文字列に一致する属性を持つバッチイベントを検索し得る。検索インタフェース例１０２はまた、ユーザが、特定の検索基準に基づき検索結果をフィルタリングし得、かつ／またはどのバッチイベント属性が検索結果に表示されているかを指定できるようにする。
【００４７】
バッチイベントに加え、検索インタフェース例１０２は、ユーザが、オペレータのログブック（ｌｏｇｂｏｏｋ）のエントリ（例えば、ソース情報）を検索できるようにする。ユーザは、検索インタフェース１０２を使用して、選択されたプロセス制御情報に基づくコンテキスト内でログブックのエントリを検索し得る。例えば、ユーザは、装置モジュールおよび／またはログエントリの検索カテゴリを選択して、検索インタフェース１０２にその装置名を参照するいかなるログエントリも検索させ得る。検索インタフェース例１０２は、ユーザが、検索結果にリストされているログブックのエントリを表示できるようにし得る。
【００４８】
図１の図示例では、検索インタフェース１０２は、ユーザが、例えば、標準操作手順、操作マニュアルおよび／または他の参考資料を含む、プロセス制御情報のドキュメント（例えば、ソース情報）も検索できるようにする。検索インタフェース１０２は、検索インデックスデータベース１２２を用いて、プロセス制御環境１００に関連する個人ならびに／またはプロセス制御システム１０４に対してサポートおよび／もしくは機器を提供する第三者の個人によって生成された関係ドキュメントに対する１つのインデックスおよび／または複数のインデックスを検索できる。検索インタフェース１０２は、ユーザが、外部システム（例えば、プロセス制御環境１００の外部）からインデックス作成されているプロセス制御情報を検索できるようにする。例えば、インデックスマネージャ１０３は、ソース情報データベース１２４がプロセス制御環境１００の外部（例えば、ＳｈａｒｅＰｏｉｎｔサーバー内）に置かれていると判断し得る。この外部ソース情報データベース１２４がプロセス制御システム１０４でアクセス可能な場合、インデックスマネージャ１０３は、データベース１２４内に格納されているドキュメントおよび／または情報のインデックス作成を行う。他の例では、検索インタフェース１０２は、外部データベースにアクセスして、プロセス制御情報を検索し、任意の検索結果を、プロセス制御環境１００内のソース情報データベース１２４からの検索結果と統合し得る。このようにして、検索インタフェース１０２は、ユーザに対して、内部および外部の両方に置かれているプロセス制御情報を含む１組の検索結果を提供する。
【００４９】
また、検索インタフェース例１０２は、ユーザが、ユーザインタフェース１２６内に表示されている選択されたプロセス制御情報に基づくコンテキスト内のドキュメントを検索できるようにする。例えば、ユーザは、フィールド機器１１２のグラフィック概略図表現を選択して、検索インタフェース１０２に、検索インデックスデータベース１２２で、選択されたフィールド機器１１２の名前を参照する任意のドキュメントを検索させ得る。検索インタフェース例１０２はまた、ユーザが、検索テキストボックスを使用して、入力したテキスト文字列に一致するテキストまたはプロパティを含むドキュメントを検索できるようにする。検索インタフェース１０２はさらに、ユーザが、ユーザインタフェース１２６内に表示されているコンテキスト内プロセス制御情報を選択することにより、オペレータメモ（ｎｏｔｅ）および／または他のプロセス制御ノートブック（ｎｏｔｅｂｏｏｋ）エントリを検索できるようにする。例えば、ユーザは、フィールド機器１１２のグラフィック概略図表現および／またはメモの検索カテゴリを選択して、検索インタフェース１０２に、フィールド機器１１２を参照する任意のメモを検索させ得る。
【００５０】
図１の検索インタフェース例１０２は、ユーザ（例えば、エンジニアおよび／またはシステム管理者）が、例えば、ユーザインタフェース１２６によって表示される、システム構成エクスプローラアプリケーション、制御ストラテジ・スタジオ・アプリケーション、および／またはグラフィック・スタジオ・アプリケーションを利用して、構成情報を検索できるようにする。さらに、検索インタフェース１０２は、ユーザ（例えば、オペレータおよび／または保守要員）が、例えば、システム構成エクスプローラアプリケーション、エンタープライズ・ビュー・アプリケーション、および／またはデバイス・マネージャ・アプリケーションから、フィールド機器１１２に関連する情報（例えば、デバイス構成情報、デバイス・オーディット・トレール・レコード、および／またはデバイスドキュメント）を検索できるようにする。検索インタフェース１０２によって提供される構成検索結果は、ユーザの職務権限および／または職務内容（例えば、フィルタ条件）に基づいて順序付けられ得る。
【００５１】
その上、図１の検索インタフェース例１０２は、別の綴り、および／またはユーザインタフェース１２６内に表示されている検索フィールド内に以前に入力された同一または同様な綴りを持つ検索エントリを提案し得る。検索インタフェース１０２は、ユーザが、例えば、日時の範囲、数字のキーワード（例えば、「＜」、「＞」、「＝」、など）を用いた範囲、論理式（例えば、ＡＮＤ、ＯＲ、ＮＯＴなど）、全文一致検索、語および／もしくはフレーズに一致する検索、語および／もしくはフレーズを除外する検索、ならびに／またはプロセス制御情報の検索カテゴリ（例えば、タイプ）を含むおよび／もしくは除外する検索を利用して、検索できるようにし得る。さらに、検索インタフェース例１０２は、ユーザが、１組の検索結果内で検索できるようにする。
【００５２】
図２は、図１の検索インタフェース例１０２およびインデックスマネージャ例１０３の機能ブロック図を示す。図２の例は、様々なプロセッサ、サーバー、および／またはコンピューティングプラットフォーム内で実装されている検索インタフェース１０２およびインデックスマネージャ１０３を示す。他の例では、検索インタフェース１０２およびインデックスマネージャ１０３は、同一のプロセッサ、サーバー、および／またはコンピューティングプラットフォーム内で実装され得る。
【００５３】
図１の実行時データメモリ１２０および／またはコントローラ１０８から実行時データを受信するため、図２のインデックスマネージャ例１０３は、実行時データ受信機２０２を含む。実行時データ受信機例２０２は、インデックスマネージャ１０３を実行時データメモリ１２０に、ＬＡＮ １１０を介して通信で結合する。コントローラ１０８は、実行時データを、その実行時データに関連する制御パラメータ（複数可）を含むメッセージの形式で、実行時データメモリ１２０に送信する。ある例では、実行時データメモリ１２０は、単一の制御パラメータおよび対応するデータ値を含むメッセージを受信する。別の例では、実行時データメモリ１２０は、複数の制御パラメータおよび対応する実行時データを持つメッセージを受信し得る。実行時データメモリ１２０は、定期的に、コントローラ１０８からメッセージを受信する。他の例では、実行時データメモリ１２０は、制御ルーチンおよび／またはアルゴリズム内で実行時データを生成または／処理するコントローラ１０８上でメッセージを受信し得る。実行時データ受信機２０２はその後、実行時データを実行時データメモリ１２０から要求する。
【００５４】
実行時データを受信すると、受信機２０２は、実行時データの処理にデータパーサ２０４が利用可能であるかどうかを判断する。データパーサ２０４が利用不可能な場合、受信機２０２は、データパーサ２０４が実行時データの受信に利用可能になるまで、実行時データを待ち行列に入れる。どの実行時データをインデックス作成するかを判断するため、インデックスマネージャ１０３はデータパーサ２０４を含む。データパーサ例２０４は、受信機２０２から実行時データを受信して、データマネージャ２０６でインデックス作成する実行時データを区別する。
【００５５】
どの実行時データがインデックス作成されるのかを判断するため、データパーサ例２０４は、ルールセット２０７を使用するが、これはプロセス制御担当者によって提供され得る。データパーサ２０４は、ルールセット２０７内で指定された制御パラメータを使用して、受信した実行時データに関連するどの制御パラメータがインデックス作成されるかを識別する。例えば、ルールセット２０７は、ＰＵＭＰ０１制御パラメータがインデックス作成されることを示し得る。データパーサ２０４は、ＰＵＭＰ０１制御パラメータを含むメッセージ内で実行時データを受信するため、データパーサ２０４は、ＰＵＭＰ０１制御パラメータがインデックス作成されると判断できる。ＰＵＭＰ０１制御パラメータに関連する実行時データのインデックスを作成するため、データパーサ２０４は、メッセージから実行時データを解析して、ＰＵＭＰ０１制御パラメータおよび関連する実行時データをデータマネージャ２０６に転送する。
【００５６】
別の例では、各制御パラメータは、ルールセット２０７に格納されている重要度係数と関連付けられ得る。データパーサ２０４は、その重要度係数を使用して、制御パラメータ（複数可）に関連する実行時データがインデックス作成のためにデータマネージャ２０６に転送されるかどうかを判断する。例えば、比較的高い重要度係数を持つ制御パラメータに関連する実行時データは、データパーサ２０４によってデータマネージャ２０６に転送され得る。重要度係数は、プロセス制御担当者によって決定され、ルールセット２０７に格納され得る。あるいは、重要度係数は、制御パラメータが検索に含まれる頻度および／またはユーザによってアクセスされる頻度に基づき、データパーサ２０４によって決定され得る。
【００５７】
いくつかの例では、プロセス制御担当者は、全てのプロセス制御データのインデックス作成することを決定し得る。これらの例では、データパーサ２０４は、受信した全ての実行時データをデータマネージャ２０６に転送する。他の例では、プロセス制御担当者は、フィールド機器出力（例えば、出力１１６）に関連するプロセス制御データのみインデックス作成することを決定し得る。これら他の例では、プロセス制御担当者は、そのフィールド機器出力に関連する制御パラメータのリストを含めるために、ルールセット２０７を定義し得る。データパーサ２０４はその後、このルールセット２０７にアクセスして、受信した実行時データに関連する制御パラメータを、ルールセット２０７内で指定された制御パラメータと照合する。データパーサ２０４は、一致した制御パラメータおよび関連する実行時データを、データマネージャ２０６に転送する。さらに別の例では、データパーサ２０４は、検索インタフェース１０２から、どの制御パラメータが検索結果に含まれているかを示す更新を受信し得る。データパーサ２０４はその後、制御パラメータおよび関連する実行時データに対する比較的最近の検索のみがインデックス作成されるように、ルールセット２０７を更新する。さらに、最近アクセスされた制御パラメータのインデックス作成に対する制限時間が、プロセス制御担当者によって指定され得る。
【００５８】
実行時データのインデックス作成を行うために、インデックスマネージャ１０３は、データマネージャ２０６を含む。データマネージャ例２０６は、実行時データおよび対応する制御パラメータ（複数可）をデータパーサ２０４から受信し、検索インデックスデータベース１２２に格納されているインデックスを用いて検索レコードを更新する。実行時データメモリ１２０内で、制御パラメータ（複数可）は記述子として使用され得、それによって実行時データをアクセス可能にする。実行時データのインデックスを作成するため、データマネージャ２０６は、その実行時データに関連する制御パラメータ（複数可）を識別し、その制御パラメータ（複数可）を、検索インデックスデータベース１２２内に格納されている検索可能インデックスに格納する。さらに、データマネージャ２０６は、格納されている制御パラメータに関連する実行時データをインデックスに格納する。データマネージャ２０６は、実行時データおよび／または対応する制御パラメータのインデックス作成を行うために、いかなるタイプのデータ圧縮および／またはドキュメント解析（例えば、トークン化）を使用し得、それは語境界の曖昧性解消、タグ付け、テキスト分割、内容分析、テキスト分析、テキストマイニング、コンコーダンス生成、音声分割、レキシング（ｌｅｘｉｎｇ）、および／または字句解析とも呼ばれる。
【００５９】
実行時データおよび制御パラメータをインデックスに格納することにより、インデックスマネージャ１０３は、検索インタフェース１０２が、検索結果に制御パラメータを表示できるようにする。検索インタフェース１０２は、表示されている制御パラメータに対応するインデックス内に格納されている実行時データも表示し得る。このようにして、検索インタフェース１０２によって表示される検索結果は、インデックス作成された実行時データを含む。データマネージャ２０６は、コントローラ１０８が実行時データを送信すると、実行時データのインデックスを作成するため、検索結果として表示される実行時データは、実質的に一番新しく生成された実行時データである。従って、検索結果を参照するユーザは、プロセス制御情報を個々に表示するために別のアプリケーションをオープンする必要なく、検索結果に最新のプロセス制御情報を表示できる。データマネージャ例２０６はまた、実行時データがインデックスに格納される例では、実行時データを、インデックス内の比較的新しい実行時データで上書きし得る。このようにして、データマネージャ２０６は、インデックスを最新の実行時データで更新する。データマネージャ２０６はまた、検索インタフェース１０２に、実行時データが変わっているか、かつ／または更新されていることを示すメッセージも送信し得る。この結果、検索結果に表示されているいかなる実行時データも、データマネージャ２０６が実行時データをインデックスに格納するときに、より新しい実行時データで更新され得る。
【００６０】
他の例では、データマネージャ２０６は、検索インデックスデータベース１２２内で検索可能な制御パラメータのインデックス作成を行う。データマネージャ２０６はその後、それらの制御パラメータを、実行時データメモリ１２０内の対応する制御パラメータにリンクさせる。このように、制御パラメータを含む検索結果は、そのリンクを使用して、検索結果に表示するため、実行時データにアクセスし得る。例えば、検索インデックスデータベース１２２内のインデックス内にあるＰＵＭＰ０１制御パラメータは、実行時データメモリ１２０内のＰＵＭＰ０１制御パラメータへの記憶位置（例えば、Ｃ：＼＼ＳＹＳＴＥＭＳ＼ＰＲＯＣＥＳＳ０２＼ＲＵＮＴＩＭＥ ＭＥＭＯＲＹ＼ＣＡＣＨＥ２＼ＰＵＭＰ０１）を含み得る。検索インタフェース１０２および／またはユーザインタフェース１２６は、この記憶位置を使用して、ＰＵＭＰ０１制御パラメータにアクセスし、その実行時データの格納されている値を検索する。この例では、データマネージャ２０６は制御パラメータのインデックス作成のみを行い、一方、コントローラ１０８は、実行時データを実行時データメモリ１２０に格納する。実行時データメモリ１２０内の実行時データへのリンクの結果として、検索インタフェース１０２は、そのリンクを利用して、実行時データメモリ１２０に格納されている実行時データを検索結果に表示する。
【００６１】
実行時データのインデックス作成に加え、図２のインデックスマネージャ例１０３は、ソース情報のインデックス作成を行うために、ソース情報マネージャ２０８を含む。ソース情報マネージャ例２０８は、図１のＬＡＮ １１０を介して、ソース情報データベース１２４と通信で結合されている。ソース情報マネージャ例２０８は、プロセス制御環境１００全体に渡る１つ以上のソース情報データベース１２４に格納され得る、図１に関連して説明された種類のソース情報のインデックス作成を行う。このように、ソース情報マネージャ２０８は、プロセス制御環境１００の様々な位置に格納されているソース情報に対して、検索インデックスデータベース１２２に格納される少なくとも１つの検索可能インデックスを作成する。他の例では、ソース情報マネージャ２０８は、ソース情報データベース１２４（複数可）の各々に対し、かつ／またはプロセス制御担当者の好みに基づくソース情報のタイプのインデックスを作成し得る。これらの例では、ソース情報マネージャ２０８は、複数のインデックスを検索インデックスデータベース１２２に格納して、検索を実行するために、検索インタフェース１０２だけが検索インデックスデータベース１２２にアクセスする必要があるようにする。また、ソース情報マネージャ２０８は、プロセス制御担当者の要求に基づき、定期的に（例えば、毎時、毎日、毎週、など）ソース情報のインデックス作成を行う。
【００６２】
図２のソース情報マネージャ２０８は、ソース情報データベース１２４（複数可）内のソース情報を識別するために、任意の種類のデスクトップおよび／またはエンタープライズ検索アルゴリズムを用いてソース情報のインデックスを作成し、そのソース情報の一部および／または全部を少なくとも１つのインデックスに格納する。他の例では、ソース情報マネージャ２０８は、ソース情報データベース１２４（複数可）内のソース情報を識別するために、クローラおよび／または検索スパイダを使用し得る。ソース情報マネージャ２０８は、ソース情報のインデックスを作成するために、任意のタイプのデータ圧縮および／またはドキュメント解析を使用し得る。ソース情報のインデックス作成された部分は、検索インタフェース１０２により、検索結果項目として表示される。ソース情報のその部分には、例えば、ドキュメントおよび／もしくは情報のタイトル、ドキュメントおよび／もしくは情報に関連および／もしくは埋め込まれているキーワードもしくはフレーズ、ドキュメントおよび／もしくは情報によって参照されるフィールド機器１１２および／もしくは制御パラメータ（複数可）、ドキュメントおよび／もしくは情報の許可されたビューア、ならびに／またはドキュメントおよび／もしくは情報に関連するプロセス制御システム１０４の領域を含み得る。さらに、ソース情報マネージャ２０８は、ドキュメントおよび／または情報のタイプを判断して、そのタイプをインデックスに格納し得る。ソース情報の部分および／または完全なコピーを検索インデックスデータベース１２２内のインデックスに格納することにより、検索インタフェース１０２は、検索パラメータをソース情報の部分と照合し得る。また、ドキュメントおよび／または情報のタイプをインデックスに格納することにより、検索インタフェース１０２は、そのタイプを使用して、特定のタイプのドキュメントおよび／または情報について、コンテキスト内ベースの検索を実行する。
【００６３】
その上、ソース情報マネージャ２０８は、ソース情報のインデックス作成された部分を、ソース情報データベース１２４内の対応するソース情報の位置にリンクする。このようにして、検索インタフェース１０２は、ユーザが検索結果にリストされたソース情報を選択すると、ソース情報をオープンし得る。例えば、検索結果には、製品仕様書を含み得る。検索結果は、ドキュメント（例えば、検索結果項目）へのリンクを表示する。そのリンクには、製品仕様書のタイトルおよびその製品仕様書（例えば、ソース情報の一部）に関連するフィールド機器１１２のリストを含む。ユーザは、そのリンク上をクリックすることによりドキュメントを選択して、検索インタフェース１０２に、ソース情報データベース１２４内のドキュメントの位置を得るため、検索インデックスデータベース１２２をアクセスさせ得る。検索インタフェース１０２は、そのドキュメント位置を使用してドキュメントおよびドキュメントのタイプにアクセスし、ユーザインタフェース１２６内のドキュメントを表示するために、ドキュメントのタイプに関連したアプリケーションを開く。
【００６４】
図２はまた、検索インタフェース１０２の機能ブロック図も示す。検索インタフェース例１０２は、ユーザから検索パラメータを受信して、少なくとも部分的には検索パラメータに一致する検索結果を提供する。検索インタフェース例１０２は、保存された検索結果の管理、条件に基づく検索結果のフィルタリング、および／または検索のコンテキストに基づく検索結果の表示の管理も行う。
【００６５】
ユーザから検索パラメータを受信するため、検索インタフェース例１０２は、アプリケーションインタフェース２２０を含む。アプリケーションインタフェース例２２０は、図１のワークステーション１０６に通信で結合されているか、および／またはその内部に含まれている。アプリケーションインタフェース２２０はまた、図１のユーザインタフェース１２６にも通信で結合されている。いくつかの例では、アプリケーションインタフェース２２０は、ユーザインタフェース１２６に含まれる検索ボックスおよび／または機能に動作可能なように結合されている。ユーザによって、検索パラメータが検索ボックスに入力されたか、かつ／またはユーザインタフェース１２６の検索機能を用いて選択されると、アプリケーションインタフェース例２２０は、その検索パラメータを受信する。いくつかの例では、検索パラメータは、ユーザインタフェース１２６内で動作するアプリケーションによって提供され得る。
【００６６】
さらに、アプリケーションインタフェース２２０は、ユーザによりユーザインタフェース１２６を介して提供されるフィルタ条件を受け取る。フィルタ条件は、検索結果のフィルタリングおよび／または解析を行うために、検索インタフェース１０２によって使用される。いくつかの例では、検索結果は、ユーザ情報および／またはユーザがアクセス可能なプロセス制御システム１０４の領域に基づきフィルタリングされ得る。フィルタ条件には、ユーザの職務権限、ユーザに関連する制御の範囲、ユーザのセキュリティアクセス、ユーザに付与された特権、および／またはユーザに関連する識別子も含む。アプリケーションインタフェース２２０で受信されるフィルタ条件は、そのユーザに関連しない、かつ／またはユーザが参照する権限を付与されていない情報を、ユーザが参照し得ないことを確実にする。ユーザインタフェース１２６および／またはユーザインタフェース１２６によって表示されたアプリケーションから検索パラメータおよび／またはフィルタ条件を受信すると、アプリケーションインタフェース例２２０は、その検索パラメータおよび／またはフィルタ条件をプロセッサ２２２に転送する。いくつかの例では、アプリケーションインタフェース２２０は、プロセッサ２２２が検索パラメータおよび／またはフィルタ条件を受信可能になるまで、検索パラメータおよび／またはフィルタ条件を待ち行列に入れ得る。
【００６７】
アプリケーションインタフェース２２０によって受信された検索パラメータには、例えば、テキストおよび／またはコンテキスト情報を含む。テキストには、ユーザによってユーザインタフェース１２６の検索フィールド（例えば、テキストボックス）に入力された語またはフレーズ、フィールド機器１１２の識別子（例えば、タグ）、オペレータおよび／もしくはユーザ情報、日付範囲、ならびに／またはプロセス制御情報を検索するためにユーザが指定し得る他の情報を含み得る。コンテキスト情報は、ユーザインタフェース１２６に表示されたプロセス制御情報のグラフィック表現をユーザが選択することにより生成され得る。例えば、ユーザは、フィールド機器１１２の概略図に表示されている、選択したＶＡＬＶＥ０１フィールド機器のグラフィック表現に関連するプロセス制御情報を検索し得る。この例では、アプリケーションインタフェース２２０によって受信されたコンテキスト内情報には、ＶＡＬＶＥ０１フィールド機器の名前を持つ検索パラメータ、およびＶＡＬＶＥ０１フィールド機器の選択が概略図アプリケーション内であったことを示す検索パラメータを含み得る。検索パラメータはまた、ユーザがＶＡＬＶＥ０１フィールド機器に関連するドキュメントの検索結果を表示するために選択したことを示すコンテキスト内情報も含み得る。アプリケーションインタフェース２２０によって受信されたこれらの検索パラメータに基づいて、検索インタフェース１０２は、ＶＡＬＶＥ０１フィールド機器に関連するドキュメントおよび／またはその概略図に関連するドキュメントに関する検索インデックスデータベース１２２の検索に集中し得る。
【００６８】
別の例では、ユーザは、機能ブロック図の機能ブロックを選択し得る。アプリケーションインタフェース例２２０は、ユーザインタフェース１２６から、機能ブロック図で行われた選択、機能ブロック名、および／またはその機能ブロックに関連する制御パラメータを示す検索パラメータを受信し得る。これらの検索パラメータは、選択された制御パラメータに関連する実行時データおよび／または機能ブロックを説明するドキュメントを検索するために、検索インタフェース１０２によって使用され得る。コンテキスト内ベース検索の他の例については、図５〜図８に関連して説明する。
【００６９】
さらに、アプリケーションインタフェース例２２０は、検索インタフェース１０２を、ユーザインタフェース１２６および／またはユーザインタフェース１２６によって表示されるアプリケーションに通信で結合するため、アプリケーションインタフェース２２０は、検索結果をユーザインタフェース１２６で表示するために送信する。検索結果には、例えば、プロセス制御情報のリスト、プロセス制御項目、および／またはインデックス作成されたプロセス制御情報の一部を含む。他の例では、検索結果には、プロセス制御情報のグラフィック表現および／または対応する実行時データを持つ制御パラメータを含む。インデックス作成されたソース情報および／または実行時データは、ユーザインタフェース１２６によってプレビューパネルおよび／または検索結果パネル内に、検索結果としてグラフィック表示され得る。
【００７０】
図示例のプロセッサ例２２２は、受信した検索パラメータからコンテキスト内情報の表示コンテキストを決定する。プロセッサ２２２は、検索結果が、ユーザが検索を開始したコンテキストに対応するグラフィック表現で、ユーザに対して表示され得るように、表示コンテキストを決定する。プロセッサ２２２は、例えば、表示コンテキストを、検索が開始されたアプリケーションのタイプ、アプリケーション内から検索するように選択されたデータタイプ、および／または検索するように選択された制御パラメータのデータタイプに合致させることによって、表示コンテキストを決定する。プロセッサ２２２はまた、検索パラメータ内に含まれるコンテキスト内情報および／またはフィルタ条件にも基づいて表示コンテキストを決定する。
【００７１】
検索結果の表示コンテキストを決定すると、プロセッサ２２２は、決定された表示コンテキストをレンダラ２２３に送信する。レンダラ例２２３は、対応する検索結果のグラフィック表現をユーザインタフェース１２６での表示用に生成するために、表示コンテキストを使用する。プロセッサ２２２は、表示コンテキストを検索エンジン２２４にも送信する。プロセッサ２２２は、表示コンテキストをメッセージおよび／または命令に含めて送信する。さらに、プロセッサ２２２は、検索パラメータ、フィルタ条件、および／またはコンテキスト内情報を検索エンジン２２４に送信する。その上、プロセッサ例２２２は、ユーザインタフェース１２６の検索フィールドに表示するため、アプリケーションインタフェース２２０に対して、別の綴りの送信および／または最近入力された検索パラメータの提供を行い得る。
【００７２】
図２の図示例では、アプリケーションインタフェース２２０は、ユーザインタフェース１２６から、表示されている検索結果に関連する検索基準（例えば、検索パラメータ）を保存する命令を受信する。追加または代替として、アプリケーションインタフェース２２０は、検索結果を保存する命令を受信し得る。その命令は、検索基準および／または検索結果を保存するために、ユーザによって割り当てられた識別子（例えば、名前）を含み得る。検索基準の保存命令を受信すると、アプリケーションインタフェース２２０は、その命令をプロセッサ２２２に転送し、そのプロセッサがその後、検索結果を得るために検索エンジン２２４にアクセスする。プロセッサ２２２は次に、検索基準、検索結果、および／または検索識別子を検索結果データベース２２８に格納する保存検索マネージャ（ｓａｖｅｄ ｓｅａｒｃｈ ｍａｎａｇｅｒ）２２６に、その命令を転送する。検索結果データベース例２２８は、検索基準および／または検索結果を関連する識別子で格納する。検索結果データベース例２２８のほか、ソース情報データベース１２４、検索インデックスデータベース１２２、および／または実行時データメモリ１２０もまた、電気的消去プログラム可能ＲＯＭ（ＥＥＰＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、読み出し専用メモリ（ＲＯＭ）、および／または他の種類のメモリによって実施され得る。
【００７３】
検索パラメータおよび／または検索結果を保存することにより、ワークステーション１０６のユーザは、保存された検索結果内にリストされているプロセス制御情報にアクセスし得る。ユーザは、検索結果のリストの生成に使用された検索パラメータを保存するために、検索基準を保存し得る。このようにして、ユーザは、保存されている検索パラメータにアクセスすることにより、以前に表示された検索結果のリストを表示できる。例えば、ユーザは、「ドキュメント」検索パラメータおよび「ＦＩＣ＿１０１」検索パラメータを、ＦＩＣ＿１０１フィールド機器用のドキュメンテーションに関連する検索結果に対応する検索基準として保存し得る。後でドキュメントのリストを表示するために、ユーザが、保存されている検索基準にアクセスすると、それによって、検索エンジン２２４が保存されている検索パラメータに基づき、新しい検索を行う。他の例では、ユーザは、後で同様の検索を行って、新しく追加および／または更新されたソース情報および／またはプロセス制御情報があるかどうかを判断するために、検索パラメータを保存し得る。
【００７４】
ユーザはまた、特定のプロセス制御項目に関連するリンクの集合を保存するためにも、検索結果を保存し得る。例えば、ユーザは、ＰＵＭＰ０１フィールド機器に関連するドキュメントを検索し得る。表示された検索結果は、ソース情報データベース１２４内のソース情報および実行時データメモリ内の実行時データへのリンクを含む。ドキュメントおよび実行時情報の各々をワークステーション１０６にローカルに保存する代わりに、ユーザは検索結果を保存し、それにより、ソース情報および／または実行時データへのリンクを保存し得る。ユーザはその後、同一のプロセス制御情報に対してまた別の検索を実行する代わりに、その保存されている検索結果にアクセスし得る。
【００７５】
図２の保存検索マネージャ例２２６は、検索インデックスデータベース１２２内のインデックスのコピーを、検索結果データベース２２８にも格納する。インデックスのコピーを検索インデックスデータベース１２２から保存するため、プロセッサ２２２は、ワークステーション１０６のユーザからユーザインタフェース１２６を介して、命令を受信する。別の例では、プロセッサ２２２は、定期的に（例えば、毎時、毎日、毎月、など）検索インデックスデータベース１２２にアクセスし得る。検索インデックスデータベース１２２にアクセスすることにより、プロセッサ２２２は、インデックス（複数可）をコピーし、そのコピーを保存検索マネージャ２２６に転送し得る。保存検索マネージャ２２６はその後、そのコピーを検索結果データベース２２８に格納する。インデックス（複数可）のコピーを保存することにより、保存検索マネージャ例２２６は、検索インデックスデータベース１２２がアクセス不可能な場合に、ユーザが検索を実行できるようにする。検索インデックスデータベース１２２が利用できない場合、検索エンジン例２２４は、保存検索マネージャ２２６を経由して、検索結果データベース２２８内のバックアップ用インデックス（複数可）のコピーにアクセスする。
【００７６】
ワークステーション１０６のユーザによって入力された検索パラメータに基づき検索を実行するため、図２の検索インタフェース１０２は検索エンジン２２４を含む。検索エンジン例２２４は、プロセッサ２２２から１つ以上の検索パラメータを受信する。検索エンジンは、プロセッサ２２２から、検索パラメータに関連する表示コンテキスト情報も受信する。検索エンジン２２４は、検索インデックスデータベース１２２にアクセスして、検索パラメータをインデックス作成されたプロセス制御情報と照合する。検索エンジン２２４は、どの検索パラメータがプロセス制御情報のインデックスに含まれているかを判断することにより、検索パラメータを照合する。検索エンジン２２４はまた、追加の検索パラメータとして表示コンテキスト情報も使用して、検索パラメータの照合を行う。例えば、表示コンテキストが、検索パラメータが概略図内で生成されたことを示している場合、検索エンジン２２４は、検索パラメータに一致するインデックス作成されたプロセス制御情報の検索に加えて、概略図に関連するインデックス作成されたプロセス制御情報も検索する。
【００７７】
検索エンジン例２２４は、ユーザによって提供された検索パラメータに基づき、検索パラメータをインデックス作成されたプロセス制御情報と照合し得る。例えば、ユーザは、フレーズ全体として検索パラメータを照合するよう指定し得る。その場合、検索エンジン２２４は、検索インデックスデータベース１２２で、フレーズ全体に一致するインデックス作成されたプロセス制御情報を検索する。他の例では、検索パラメータは、検索から除外される語をリストし得る。検索エンジン例２２４はその後、除外された語を含まないインデックス作成されたプロセス制御情報を照合するであろう。検索エンジン例２２４はまた、他の検索パラメータを使用して、例えば、数式および／または論理結合子を含む検索も実行し得る。
【００７８】
検索エンジン２２４が制御パラメータをインデックス作成されたプロセス制御情報と照合する時、検索エンジン２２４は、一致したプロセス制御情報を検索結果として検索結果リストに格納する。一致したプロセス制御情報は、検索情報データベース１２４内の対応するソース情報および／または実行時データメモリ１２０内の実行時データへのリンクを含む。一致したプロセス制御情報は、インデックス作成されたプロセス制御情報も含み得る。検索エンジン２２４は、検索エンジン２２４が検索インデックスデータベース１２２内でインデックス（複数可）の検索を完了するまで、検索結果を検索結果リストに追加する。
【００７９】
検索エンジン２２４はその後、検索パラメータがどの程度インデックス作成されたプロセス制御情報と一致するかの計算（例えば、関連度計算）に基づき、各検索結果の一致率値を決定する。検索エンジン２２４は、その一致率値を使用して、最も関連のある検索結果が最初に表示されるよう、検索結果のランク付けおよび／または順序付けを行う。他の例では、検索エンジン２２４は、最もアクセスされた検索結果を最初に表示し得、および／または最もアクセスされ、かつ最も関連のある検索結果の組み合わせを最初に表示し得る。いくつかの例では、検索エンジン２２４は、検索結果を、それらが照合されるときに、ランク付けおよび／または順序付けを行う。他の例では、検索エンジン２２４は、検索インデックスデータベース１２２の検索が完了すると、検索結果のランク付けおよび／または順序付けを行う。
【００８０】
検索結果のランク付けおよび／または順序付けを行うと、検索エンジン２２４は、検索結果を検索フィルタ２３０に送信する。検索フィルタ例２３０は、プロセッサ２２２から受信されたフィルタ条件に基づき検索結果のフィルタリング（および／または解析）を行う。フィルタ条件例は、ユーザの職務権限、ユーザに関連する制御の範囲、ユーザのセキュリティアクセス、ユーザに付与されている権限、および／またはユーザに関連する識別子と関連する。フィルタ条件は、ユーザに関連しない情報および／またはユーザが参照する権限のない情報を、ユーザが表示し得ないことを確実にするために、検索フィルタ２３０によって使用される。
【００８１】
例えば、ワークステーション１０６のユーザは、ワークステーション１０６にログインするための識別子を提供する。ユーザが検索を実行する時、その識別子は、検索パラメータとしてアプリケーションインタフェース２２０に送信され得る、かつ／または検索パラメータおよび／もしくは表示コンテキスト情報内にメタデータとして埋め込まれ得る。プロセッサ２２２は、メタデータから識別子を抽出し、その識別子を検索フィルタ２３０に転送し得る。検索フィルタ２３０はその後、例えば、識別子に関連する制御範囲および／または識別子に関連する職務権限を決定する。検索フィルタ２３０は次に、職務権限および／または制御範囲に関連しない検索結果はどれも検索結果から除去する。さらに、検索フィルタ２３０は、その識別子がどの検索結果にアクセスし得るかを判断するため、セキュリティ証明書にアクセスし得る。検索フィルタ２３０はその後、除去されなかった検索結果を表示データマネージャ２３２に転送する。
【００８２】
表示データマネージャ例２３２は、ユーザインタフェース１２６によって表示されるアプリケーション内に検索結果として表示されるプロセス制御情報を管理する。表示データマネージャ２３２は、検索結果に含まれる実行時データに関連する制御パラメータをローカルキャッシュに格納し、かつ／または検索結果に含まれるソース情報へのリンクを保存する。表示データマネージャ２３２はその後、検索結果をレンダラ２２３に転送する。さらに、表示データマネージャ２３２は、検索結果として表示されているインデックス作成された実行時データおよび／またはソース情報のいずれかが変わっているかどうかを判断するため、定期的に（例えば、毎秒、毎分、５分おき、１０分おき、など）検索インデックスデータベース１２２にアクセスする。インデックス作成されたプロセス制御情報のいずれかが変わっている場合、表示データマネージャ２３２は、変更された情報で検索結果を更新し、その変更された情報をレンダラ２２３に転送する。他の例では、表示データマネージャ２３２は、データマネージャ２０６から、実行時データが変わっていることを示すメッセージを受信する。このように、表示データマネージャ２３２は、プロセス制御情報がプロセス制御システム１０４内で変わると、表示されている検索結果を更新する。プロセス制御情報の更新の結果、表示データマネージャ２３２は、ユーザが、検索結果コンテキスト内で最新のプロセス制御情報を参照できるようにする。
【００８３】
表示データマネージャ例２３２はまた、実行時データメモリ１２０にアクセスすることにより、検索結果に表示されている実行時データもアクセスし得る。表示データマネージャ２３２は、実行時データに関連する制御パラメータを使用して、実行時データメモリ１２０内の実行時データを検索し得る。表示データマネージャ２３２が、少なくともいくつかの実行時データが変わっていると判断した場合、表示データマネージャ２３２は、対応する検索結果（複数可）を更新して、その更新された検索結果（複数可）をレンダラ２２３に転送する。
【００８４】
さらに、表示データマネージャ例２３２は、検索結果にリストされているソース情報の新しいバージョンが保存されているかどうかを判断するため、ソース情報データベース１２４にアクセスし得る。表示データマネージャ２３２が、新バージョンが保存されているか、かつ／またはソース情報が別の方法で変わっていると判断した場合、表示データマネージャ２３２は、変更されたソース情報で検索結果を更新し、その変更されたソース情報をレンダラ２２３に転送する。レンダラ２２３はその後、その変更されたソース情報で表示されている検索結果を更新し得る。
【００８５】
追加または代替として、図２の表示データマネージャ例２３２は、検索結果に表示されている実行時データおよび／またはソース情報のいずれかが変わっているかどうかを判断するため、命令を検索エンジン２２４に送信する。命令を受信すると、検索エンジン２２４は、インデックス作成されたプロセス制御情報のいずれかが変わっているかどうかを判断するため、検索インデックスデータベース１２２にアクセスする。インデックス作成されたプロセス制御情報が変わっている場合、検索エンジン２２４は、変更された情報を表示データマネージャ２３２に転送する。
【００８６】
レンダラ例２２３は、表示データマネージャ２３２から受信した検索結果の表示可能バージョンを作成（例えば、レンダリング）する。レンダラ２２３は、プロセッサ２２２から受信された表示コンテキスト情報を用いて、かつ／または検索結果にリストされているプロセス制御情報のタイプに基づいて、表示可能な検索結果を作成する。レンダラ２２３は、表示コンテキスト情報を使用して、検索結果のための表示テンプレートを選択する。例えば、表示コンテキストが機能ブロック図に関連する（例えば、検索が機能ブロック図から開始された）場合、レンダラ２２３は、検索結果を機能ブロックとして表示可能な埋め込みアプリケーションを備えたテンプレートを選択し得る。別の例では、レンダラ２２３が、フィールド機器に関連する表示コンテキスト情報を受信する（例えば、フィールド機器がプロセス制御システム１０４の概略図またはレイアウト内で選択された）場合、レンダラ２２３は、実行時データのグラフィック表現（例えば、値、チャート、グラフ、など）を表示可能なテンプレートを選択し得る。
【００８７】
レンダラ例２２３はまた、検索結果の表示方法を決定するためにも、検索結果に含まれるプロセス制御情報のタイプを使用する。例えば、レンダラ２２３は、検索結果にリストされている概略図ファイル形式に関連するプロセス制御情報を、概略図ファイルを表示可能なアプリケーションに表示し得る。他の例では、レンダラ２２３は、検索結果をリストとして表示するために、ワークステーション１０６のユーザから命令を受信し得る。このように、検索結果は、リストされているプロセス制御情報のコンテキスト内で表示される。同様の方法で、ドキュメントファイル形式に関連するプロセス制御情報は、レンダラ２２３によって文書処理アプリケーションに表示され得る。
【００８８】
代替として、レンダラ２２３は、表示コンテキスト情報および／または検索結果のタイプに基づき、検索結果をリストとして表示し得る。例えば、検索結果が様々なタイプのプロセス制御情報に関連する場合、レンダラ２２３は、検索結果をリストとして表示し得る。レンダラ２２３はまた、ファイルタイプのコンテキスト内で、選択された検索結果を表示するプレビューパネルも生成し得る。
【００８９】
さらに、レンダラ例２２３は、選択されたプロセス制御情報を、関連するアプリケーションに表示する。例えば、ユーザは、ソース情報データベース１２４に格納されている文書処理ドキュメントに対応する検索結果を選択し得る。この例では、アプリケーションインタフェース例２２０は、その選択をプロセッサ２２２に転送し、そのプロセッサは、検索結果内のリンクを使用して、ソース情報データベース１２４にアクセスし、選択された文書処理ドキュメントを取得する。プロセッサ２２２はその後、そのドキュメントをレンダラ２２３に転送する。レンダラ２２３は、そのドキュメントが文書処理ドキュメントであると判断して、ユーザインタフェース１２６内で文書処理アプリーションを開き、そのドキュメントを文書処理アプリケーション内で表示する。表示データマネージャ２３２はまた、オープンされたドキュメントの変更バージョンがソース情報データベース１２４に格納されている時、ユーザに対して指示を提供し得る。
【００９０】
その上、レンダラ２２３は、フィルタ条件を使用して、検索結果の表示方法を決定し得る。例えば、レンダラ２２３は、ワークステーション１０６のユーザの識別子がオペレータとして分類されている場合、オペレータインタフェースのテンプレートを選択し得る。同様の方法で、レンダラ２２３は、識別子が設計者および／またはエンジニアとして分類されている場合には、検索結果をエンタープライズアプリケーション内で表示し得る。レンダラ２２３は、プロセッサ２２２および／または検索フィルタ２３０からフィルタ条件を受信する。フィルタ条件および／または表示コンテキストに基づき検索結果を表示する追加の例については、図３〜図８に関連して説明する。
【００９１】
図示例のレンダラ例２２３は、生成された表示可能検索結果をユーザインタフェース１２６に送信する。ユーザインタフェース１２６は、ユーザによって閲覧可能なワークステーション１０６内に検索結果を表示する。いくつかの例では、ユーザは表示された検索結果をプレビューすることを選択し得る。これらの例では、アプリケーションインタフェース２２０は、ユーザインタフェース１２６から選択された検索結果の命令を受信して、その命令をレンダラ２２３に転送する。レンダラ例２２３はその後、検索結果に関連するプロセス制御情報のタイプおよび／または表示される検索結果のコンテキスタイプに基づき、選択された検索結果のための表示を生成する。いくつかの例では、レンダラ２２３は、検索結果に含まれるインデックス作成されたプロセス制御情報を使用して、プレビューパネルにプロセス制御情報を表示し得る。他の例では、レンダラ２２３は、検索結果に含まれるインデックス作成されたプロセス制御情報が表示の生成に不十分な場合、選択された検索結果の対応するプロセス制御情報を得るため、ソース情報データベース１２４および／または実行時データメモリ１２０にアクセスし得る。レンダラ２２３はその後、選択された検索結果のグラフィック表示を、ユーザインタフェース１２６に表示するために、アプリケーションインタフェース２２０に送信する。
【００９２】
検索インデックスデータベース１２２の検索に加えて、図２の検索インタフェース例１０２は、図１のプロセス制御環境１００内にある他のワークステーションを検索するために、ワークステーションインタフェース２３４を含む。ワークステーションインタフェース例２３４は、ワークステーション内のメモリのファイル検索および／またはフォルダ検索を実行することにより、他のワークステーションを検索する。ワークステーションインタフェース２３４はまた、その検索を開始したユーザインタフェース１２６を含むワークステーション１０６も検索する。このようにして、ユーザは、そのユーザのワークステーション１０６を含め、実質的にプロセス制御環境１００内の範囲にあるプロセス制御情報を検索し得る。
【００９３】
図示例のワークステーションインタフェース例２３４は、検索エンジン２２４から検索パラメータを受信し、その制御パラメータに一致するプロセス制御情報を、通信で結合されているワークステーションで検索する。ワークステーションインタフェース２３４は、検索パラメータに一致する実行時データおよび／またはソース情報に関連する制御パラメータを検索する。ワークステーションインタフェース２３４は、ユーザが、ワークステーションにローカルに保存されている可能性はあるが、ソース情報データベース１２４および／または実行時データメモリ１２０にはまだ格納されていないプロセス制御情報を検索できるようにする。ワークステーションインタフェース２３４はまた、検索エンジン２２４に、最近アクセスされた検索結果のリストも提供し得る。検索エンジン２２４は、ワークステーションインタフェース２３４からのそのリストを使用し、どの検索結果が最近アクセスされたかに基づいて、検索結果のランク付けおよび／または順序付けを行う。追加または代替として、ワークステーションインタフェース２３４は、検索エンジン２２４が他のワークステーションを検索するためのインタフェースとして機能し得る。
【００９４】
他のワークステーションを検索すると、図２のワークステーションインタフェース例２３４は、一致した検索結果を検索エンジン２２４に送信する。検索エンジン例２２４はその後、ワークステーションインタフェース２３４からの検索結果を、検索インデックスデータベース１２２および／または検索結果データベース２２８からの検索結果に組み込む。さらに、検索エンジン２２４は、他のワークステーションに保存されている検索結果に隣接して指示を置き得る。ユーザは、検索結果内のその指示を参照して、対応する検索結果が別のワークステーションに格納されていることを知り得る。
【００９５】
検索インタフェース例１０２およびインデックスマネージャ１０３が図２に示されているが、図２に示されているサーバー、プラットフォーム、インタフェース、データ構造、要素、プロセスおよび／または装置の１つまたは複数は、任意の方法で、結合、分割、再配置、削除、除外、および／または実装され得る。さらに、実行時データ受信機例２０２、データパーサ例２０４、データマネージャ例２０６、ソース情報マネージャ例２０８、実行時データメモリ例１２０、検索インデックスデータベース例１２２、ソース情報データベース例１２４、アプリケーションインタフェース例２２０、プロセッサ例２２２、レンダラ例２２３、検索エンジン例２２４、保存検索マネージャ例２２６、検索結果データベース例２２８、検索フィルタ例２３０、表示データマネージャ例２３２、ワークステーションインタフェース例２３４、ならびに／またはより一般的には、検索インタフェース例１０２および／もしくはインデックスマネージャ１０３は、ハードウェア、ソフトウェア、ファームウェア、ならびに／またはハードウェア、ソフトウェアおよび／もしくはファームウェアの任意の組み合わせによって実装され得る。それ故、例えば、実行時データ受信機例２０２、データパーサ例２０４、データマネージャ例２０６、ソース情報マネージャ例２０８、実行時データメモリ例１２０、検索インデックスデータベース例１２２、ソース情報データベース例１２４、アプリケーションインタフェース例２２０、プロセッサ例２２２、レンダラ例２２３、検索エンジン例２２４、保存検索マネージャ例２２６、検索結果データベース例２２８、検索フィルタ例２３０、表示データマネージャ例２３２、ワークステーションインタフェース例２３４、ならびに／またはより一般的には、検索インタフェース例１０２および／もしくはインデックスマネージャ１０３のいずれも、１つ以上の回路、プログラム可能プロセッサ（複数可）、特定用途向け集積回路（ＡＳＩＣ）（複数可）、プログラム可能論理回路（ＰＬＤ）（複数可）および／またはフィールドプログラム可能論理回路（ＦＰＬＤ）（複数可）などによって実装され得る。
【００９６】
本特許のいずれかの装置クレームが単にソフトウェアおよび／またはファームウェアの実装を対象とすると理解される場合、実行時データ受信機例２０２、データパーサ例２０４、データマネージャ例２０６、ソース情報マネージャ例２０８、実行時データメモリ例１２０、検索インデックスデータベース例１２２、ソース情報データベース例１２４、アプリケーションインタフェース例２２０、プロセッサ例２２２、レンダラ例２２３、検索エンジン例２２４、保存検索マネージャ例２２６、検索結果データベース例２２８、検索フィルタ例２３０、表示データマネージャ例２３２、および／またはワークステーションインタフェース例２３４の少なくとも１つは、本明細書により、ソフトウェアおよび／またはファームウェアを格納する、メモリ、ＤＶＤ、ＣＤ、などのコンピュータ可読媒体を含むように明示的に定義される。さらにまた、検索インタフェース例１０２および／またはインデックスマネージャ例１０３は、１つ以上の要素、プロセスおよび／または装置を、図２に示されているそれらに加え、またはそれらの代わりに含み得、かつ／または図示されている要素、プロセスおよび装置のいずれか２つ以上もしくは全てを含み得る。
【００９７】
図３は、図１および図２の検索インタフェース例によって管理される検索結果を表示するユーザインタフェース例１２６を示す。ユーザインタフェース例１２６は、ナビゲーションバー３０２、検索テキストフィールド３０４、および検索カテゴリバー３０６を含むアプリケーション３００を表示する。アプリケーション例３００は、例えば、ユーザが、図１のプロセス制御システム１０４に関連するプロセス制御情報を表示できるようにするエンタープライズアプリケーションであり得る。ナビゲーションバー３０２は、アプリケーション３００で表示されるプロセス制御情報のファイルディレクトリ内の位置を示す。ユーザは、フォルダパネル３０７を用いてディレクトリ位置を閲覧し得る、かつ／またはファイルディレクトリ位置をナビゲーションバー３０２に入力し得る。この例では、Ｐｌａｎｔ Ｗｅｂ／ＤｅｌｔａＶ／Ｓｅａｒｃｈ Ｒｅｓｕｌｔｓ／Ｄｉｓｐｌａｙｓディレクトリ位置が、ユーザによりフォルダパネル３０７を用いて選択されている。他の例では、ナビゲーションバー３０２は、論理制御階層（たとえば、Ｓ８８階層）内での位置を示し得る。
【００９８】
検索テキストフィールド例３０４は、ユーザが、プロセス制御情報を検索するために、図１および図２の検索インタフェースによって使用される検索パラメータを入力できるようにする。図３の例では、ＦＩＣ＿１０１検索パラメータが検索テキストフィールド３０４に入力されている。他の例では、ユーザは、条件式および／または数字の範囲を検索テキストフィールド３０４に入力し得る。さらに、ユーザは、検索パラメータ名を記述するテキストを持つ検索パラメータのタイプおよび／またはカテゴリを入力し得る。例えば、ユーザは、「ｂｌｏｃｋ ｔｙｐｅ＝ＰＩＤ」の検索カテゴリおよび「ｂｌｏｃｋ ｎａｍｅ＝ＦＩＣ＿１０１．」のブロック名を入力し得る。これらの検索パラメータの各々は、検索インデックスデータベース１２２で、ブロックタイプＰＩＤおよびブロック名ＦＩＣ＿１０１を含むインデックス作成されたプロセス制御情報を検索するために、検索インタフェース１０２によって使用される。検索テキストフィールド３０４は、ワイルドカード値（例えば、ＦＩＣ＊）を入力するユーザもサポートし得、かつ／またはユーザが何を入力し始めたかに基づくテキストの自動入力もサポートし得る。また、検索テキストフィールド３０４は、以前の検索で入力された最近のテキストをユーザに示し得る。
【００９９】
検索カテゴリバー例３０６は、検索インタフェース１０２が、一致するプロセス制御情報を検索するために、ＦＩＣ＿１０１検索パラメータと共に使用し得る選択可能検索パラメータを含む。この例では、表示検索パラメータ３０８が選択されている。表示検索パラメータ３０８を選択することにより、図２の検索エンジン２２４は、グラフィック表現の表示タイプに関連するプロセス制御情報を検索する。他の例では、動向検索パラメータを選択すると、検索エンジン２２４が、例えば、実行時データ、グラフ、および／またはチャートを含む、プロセス動向および／または履歴に関連するプロセス制御情報を検索する。ドキュメント検索パラメータを選択すると、検索エンジン２２４が、ＦＩＣ＿１０１検索パラメータに関連するソース情報ドキュメントを検索する。
【０１００】
図３のアプリケーション例３００は、検索結果パネル３１２に表示されている検索結果に対して実行する選択可能な機能を含むツールバー３１０も含む。例えば、ユーザは、検索結果を検索結果データベース２２８に保存するために、検索の保存ツール項目を選択し得る。検索結果パネル３１２は、検索インタフェース１０２によって生成された検索結果を表示する。図示例では、検索結果パネル３１２は、検索テキストフィールド３０４内のＦＩＣ＿１０１検索パラメータおよび表示検索パラメータ３０８に一致する検索結果を含む。この例では、検索結果は、名前、プロセス制御システム１０４内の領域、プロセス制御情報が最後に変更された変更日時、およびプロセス制御情報の識別子に対応するタグ値を含む、インデックス作成されたプロセス制御情報を含む。インデックス作成されたプロセス制御情報は、ソース情報データベース１２４に格納されているソースドキュメント（複数可）および実行時データメモリ１２０に格納されている実行時データに基づき、インデックスマネージャ１０３によってインデックス作成される。他の例では、検索結果は、様々なタイプのインデックス作成されたプロセス制御情報を含み得る。 
【０１０１】
また、ユーザは、インデックス作成されたプロセス制御情報のどのカテゴリが検索結果パネル３１２に表示されるかを選択し得る。例えば、ユーザは、領域カテゴリを削除し、かつ／またはファイルタイプカテゴリを追加し得る。いくつかの例では、検索インタフェース１０２は、検索パラメータおよび／またはインデックス作成されたプロセス制御情報のタイプに基づき、インデックス作成されたプロセス制御情報のどのカテゴリを検索結果パネル３１２に表示するかを決定し得る。
【０１０２】
さらに、検索結果パネル３１２の検索結果は、Ａｒｅａ＿４０に関連するフィルタ条件に基づいてフィルタリングされる。この例では、検索インタフェース１０２は、検索を要求するユーザの識別子を受信する。検索フィルタ２３０は、その識別子に関連する制御範囲（例えば、Ａｒｅａ＿４０）を判断するために、識別子をフィルタ条件として使用する。識別子のフィルタ条件に基づいて、検索フィルタ２３０は、Ａｒｅａ＿４０制御範囲に関連する検索結果のみを送信する。
【０１０３】
検索結果パネル例３１２は、ユーザがＡｒｅａ＿４０＿ＦＣＣＵ Ｆｅｅｄ Ｐｒｅｐ検索結果を選択したことを示す選択標識３１４も含む。検索結果を選択した結果、検索インタフェース１０２は、検索結果内のリンクを使用して、Ａｒｅａ＿４０＿ＦＣＣＵ Ｆｅｅｄ Ｐｒｅｐ検索結果に関連する、実行時データメモリ１２０に保存されている実行時データおよび／またはソース情報データベース１２４内のソース情報にアクセスし、プレビューパネル３１６にグラフィック表現を生成する。プレビューパネル例３１６は、フィールド機器１１２を、Ａｒｅａ＿４０＿ＦＣＣＵ Ｆｅｅｄ Ｐｒｅｐ検索結果に対応する概略図に表示する。つまり、ユーザによるＡｒｅａ＿４０＿ＦＣＣＵ Ｆｅｅｄ Ｐｒｅｐ検索結果の選択に応じて、検索インタフェース１０２は、一部は「表示」検索パラメータ３０８の選択に基づき、一部はＡｒｅａ＿４０＿ＦＣＣＵ Ｆｅｅｄ Ｐｒｅｐ検索結果に関連するデータタイプに基づいて、Ａｒｅａ＿４０＿ＦＣＣＵ Ｆｅｅｄ Ｐｒｅｐ検索結果が概略図コンテキスト表示に関連すると判断する。いくつかの例では、プレビューパネル３１６に表示されるフィールド機器１１２は、図１および図２のコントローラ１１０８が新しい実行時データを計算すると変わる実行時データを示し得る。
【０１０４】
検索結果パネル３１２にリストされている検索結果は、ユーザが、任意の検索結果を選択して、その選択した検索結果の概略図のグラフィック表現を表示できるようにする。このようにして、ユーザは、検索結果をプレビューパネル３１６に表示するために選択することにより、Ａｒｅａ＿４０内のプロセス制御システム１０４の様々な部分を比較的迅速に参照し得る。ユーザはその後、選択された検索結果を表示および／または変更するための追加の機能概略図にアクセスするため、概略図アプリケーション内にリストされた検索結果の１つを表示することを決定し得る。検索結果の１つを選択することにより、検索インタフェース１０２は、選択された検索結果内のリンクを使用して、ソース情報データベース１２４内のソース情報および／または実行時データメモリ１２０内の実行時データにアクセスする。検索インタフェースはその後、プロセス制御システムの選択された部分で、概略図キャプチャアプリケーション（図示せず）を開始し得る。
【０１０５】
図４は、図１および図２の検索インタフェース例１０２によって提供される図３のアプリケーション３００に検索結果を表示する図１のユーザインタフェース例１２６を示す。アプリケーション３００は、図３のナビゲーションバー３０２、検索テキストフィールド３０４、検索カテゴリバー３０６、フォルダパネル３０７、ツールバー３１０、検索結果パネル３１２、およびプレビューパネル３１６を含む。さらに、図４は、アプリケーション３００が詳細検索パネル４０４を表示するようになる詳細検索ボタン４０２をユーザが選択したことを示す。
【０１０６】
詳細検索パネル例４０４は、ユーザがより的確にかつ／またはより具体的に検索パラメータを提供できるようにする。図示例の詳細検索パネル４０４は、検索を実施するプロセス制御システム１０４内の位置を指定するためユーザによって使用される得る領域フィールド４０６を含む。いくつかの例では、領域フィールド４０６は、デフォルトでは、ユーザの制御範囲に設定され得る。詳細検索パネル４０４は、ユーザが、ドキュメントのタイプ、ソース情報のタイプ、および／またはプロセス制御情報のタイプに関連するプロセス制御情報を検索できるようにするタイプフィールド４０８を含む。さらに、詳細検索パネル４０４は、ユーザが検索エンジン２２４に、検索インデックスデータベース１２２にインデックス作成されていないプロセス制御情報を他のワークステーションおよび／または他のプロセス制御コンポーネントで検索するよう指示することを選択し得る包含セレクタ（ｉｎｃｌｕｓｉｏｎ ｓｅｌｅｃｔｏｒ）４１０を含む。
【０１０７】
詳細検索パネル４０４は、ユーザが、検索を実行する検索パラメータのタイプを選択できるようにする基準フィールド４１２も含む。いくつかの例では、ユーザは、基準フィールド４１２を使用して、詳細検索パネル４０４に対してフィールドの追加および／または除去を行い得る。図４の例では、ユーザは、装置名、モジュール名、キーワード、領域、およびタイプを含む検索基準を選択する。他の例では、ユーザは、オブジェクトタイプ、表示名、記述、日付、および／または作者を含む基準を選択し得る。ユーザが装置名検索基準を選択したため、詳細検索パネル４０４は、ユーザが、検索パラメータとしてプロセス制御のフィールド機器名を入力できる装置名フィールド４１４を含む。さらに、ユーザがモジュール名検索パラメータを選択したため、詳細検索パネル４０４は、ユーザが、プロセス制御システム１０４内のコンポーネントおよび／またはモジュールの識別子を検索パラメータとして入力できるようにするモジュール名フィールド４１６を含む。その上、詳細検索フィールド４０４は、ユーザが、プロセス制御情報に含まれるテキストおよび／またはプロセス制御情報に関連するメタデータを検索パラメータとして指定できるようにするキーワードフィールド４１８を含む。また、フィールド４０６、４０８、および４１２は、選択可能な検索パラメータを含むドロップダウンボックスを示す矢印を含む。フィールド４０６、４０８、および４１２は、指定可能な値の数が限られているため、ドロップダウンボックスを含む。例えば、基準フィールド４１２には、あるタイプの検索基準しか存在しない。別の例では、入出力カードに関連するフィールド機器は、プロセス制御環境１００に含まれる入出力カードの名前（例えば、入出力装置１１８）を持つドロップダウンボックスを含み得る。
【０１０８】
フィールド４０６〜４１８内にテキストを入力するか、かつ／または情報を選択することにより、ユーザは、検索エンジン２２４が、検索インデックスデータベース１２２で一致するインデックス作成されたプロセス制御情報を検索するために使用する検索パラメータを指定する。レンダラ２２３は、フィールド４０６〜４１８に関連する表示コンテキスト情報および／または検索カテゴリバー３０６で選択されたカテゴリを使用して、検索結果のグラフィック表現のためのテンプレートを決定し得る。さらに、レンダラ２２３は、フィールド４０６および４１８からの検索パラメータがアプリケーション３００から送信されると判断して、検索結果パネル３１２に表示される検索結果の対応するグラフィック表現を生成し得る。
【０１０９】
図４の例はまた、選択標識３１４で示されるとおり、ユーザがＡｒｅａ＿４０＿ＦＣＣＵ Ｏｖｅｒｖｉｅｗ検索結果を選択したことも示す。検索インタフェース１０２は、Ａｒｅａ＿４０＿ＦＣＣＵ Ｏｖｅｒｖｉｅｗ検索結果に関連するプロセス制御情報がマイクロチャートに対応するデータタイプを持つと判断する。Ａｒｅａ＿４０＿ＦＣＣＵ Ｏｖｅｒｖｉｅｗ検索結果が選択されると、検索インタフェース１０２は、Ａｒｅａ＿４０＿ＦＣＣＵ Ｏｖｅｒｖｉｅｗ検索結果にリンクされているプロセス制御情報のグラフィック表現４２２を生成する。検索インタフェースはその後、グラフィック表現４２２をマイクロチャートとしてプレビューパネル３１６に表示する。この例では、グラフィック表現４２２は、生じたイベントおよびＡｒｅａ＿４０＿ＦＣＣＵの操作の進捗を表示する。
【０１１０】
図５は、図１および図２の検索インタフェース例１０２によって提供されるコンテキスト内検索結果を表示する図１のユーザインタフェース例１２６を示す。ユーザインタフェース１２６は、制御パネル５０２を含むオペレータ制御アプリケーション５００を含む。ユーザは、制御パネル５０２を使用して、プロセス制御システム１０４に関連する条件、イベント、値、動向、および／またはアラームを表示し得る。この例では、ユーザは、機能ボックス５０６を開くフィールド機器のグラフィック表現５０４を選択することにより、コンテキスト内検索を実行する。ユーザは、その後、機能ボックス５０６内のクイック検索オプションを選択することにより、ＦＩＣ＿１０１フィールド機器５０４に関連する検索を実行する。クイック検索機能を選択すると、検索パラメータのカテゴリおよび／またはタイプを表示する第２の機能ボックス５０８が開く。この例では、ユーザは、第２機能ボックス５０８内のドキュメント検索パラメータを選択する。
【０１１１】
他の例では、ユーザは、制御パネル５０２に表示されている他のフィールド機器、アラーム、イベント、グラフ、値、および／または制御パラメータのいずれかに関連するプロセス制御情報を検索し得る。ユーザはまた、検索パラメータとして複数の選択を使用した検索を実行するために、制御パネル５０２に表示されている複数の装置、アラーム、イベント、グラフ、値、および／または制御パラメータも選択し得る。例えば、ＦＩＣ＿１０１フィールド機器５０４および隣接したＰＶ−９１９制御パラメータを選択すると、検索インタフェース１０２が、対応する検索パラメータを使用して検索を実行する。
【０１１２】
ユーザインタフェース例１２６は、ＦＩＣ＿１０１フィールド機器５０４に関連する名前および／または識別子ならびにドキュメントデータタイプを検索パラメータとして検索インタフェース１０２に送信する。また、ユーザインタフェース１２６は、検索がアプリケーション５００から開始された、かつ／または制御パネル５０２から開始されたことを示すコンテキスト内情報を送信する。レンダラ２２３は、このコンテキスト内情報を表示コンテキスト情報として使用して、検索結果を表示するための検索結果ボックス５１０を生成する。この例では、表示コンテキスト情報が、検索がＦＩＣ＿１０１フィールド機器５０４に関するものであって、制御パネル５０２から開始されたことを示しているため、検索結果は、検索結果パネル（例えば、図３および図４の検索結果パネル３１２）ではなく、分割された検索結果ボックス内に表示される。さらに、検索エンジン２２４は、コンテキスト内情報を使用して、ＦＩＣ＿１０１フィールド機器５０４および／または制御パネル５０２に対応するソース情報を検索し得る。
【０１１３】
図示例では、検索インタフェース１０２は、ＦＩＣ＿１０１フィールド機器５０４に関連するドキュメントに対応する検索結果を返す。これらの検索結果は、検索結果ボックス５１０に表示される。検索インタフェース１０２は、ドキュメントに含まれるメタデータに基づき、Ａｒｅａ ４０ Ｓａｆｅｔｙ ＰｒａｃｔｉｃｅｓドキュメントおよびＲｅｆｉｎｅｒｙ Ｆｌｏｗ Ｔｒａｎｓｍｉｔｔｅｒｓドキュメントをお気に入りドキュメントのセクションに表示し得る。メタデータは、これらのドキュメントが、ＦＩＣ＿１０１フィールド機器５０４に関連するお気に入りであることを示し得る。お気に入りメタデータは、ワークステーション１０６のユーザおよび／または他のプロセス制御担当者によってドキュメントに追加され得る。
【０１１４】
検索結果ボックス５１０内の検索結果は、検索パラメータに対する関連性の一致に基づいて順序付けされ得る。他の例では、検索結果は、ユーザの役割および／もしくは職務権限の関連性、ならびに／またはオペレータアプリケーション５００および／もしくは制御パネル５０２に対する関連性に基づいてリストされ得る。ユーザは、検索結果ボックス５１０内の任意の検索結果を選択することにより、検索インタフェースに、その選択された検索結果に関連するリンクを使用して、ソース情報データベース１２４内のドキュメントにアクセスさせ得る。検索結果インタフェース１０２は、文書処理アプリケーションでドキュメントのレンダリングも行い得る。
【０１１５】
代替として、ユーザは、いずれかの検索結果を選択し、選択された検索結果を検索パラメータとして使用することにより、コンテキスト内検索を実行し得る。図５の例では、ユーザは、Ａｒｅａ ４０ ＳＯＰ−ＦＣＣ Ｕｎｉｔ Ｓｈｕｔｄｏｗｎドキュメントを参照する制御パネル５０２内の他のフィールド機器についてコンテキスト内検索を実行することを選択し得る。検索インタフェース１０２は、表示されているＡｒｅａ ４０ ＳＯＰ−ＦＣＣ Ｕｎｉｔ Ｓｈｕｔｄｏｗｎ検索結果に関連する追加のインデックス作成されたプロセス制御情報、アプリケーション５００に関連するコンテキスト内情報、フィールド機器５０４に関連するコンテキスト内情報、および／または制御パネル５０２に関連するコンテキスト内情報に加え、ドキュメント名を検索パラメータとして使用し得る。
【０１１６】
図６および図７は、ユーザのタイプに基づきコンテキスト内検索結果を表示する図１のユーザインタフェース例１２６を示す。ユーザインタフェース例１２６は、概略図パネル６０２を持つエンタープライズアプリケーション６００を表示する。概略図パネル６０２は、図１のフィールド機器１１２のグラフィック表現を示す。フィールド機器１１２には、そのフィールド機器１１２に対する入力および／または出力である識別子（例えば、通気孔）および制御パラメータ（例えば、ＴＣ ２０７）を示すラベルが付けられている。例えば、制御パラメータＰＴ ２０８およびＰＣ ２０８は、通信で結合されている通気孔に対する入力である。他の例では、概略図パネル６０２に表示されているフィールド機器１１２に関連する実行時データが表示され得る。
【０１１７】
図６では、例えば、プロセスエンジニアなどのユーザは、ＴＣ ２０７制御パラメータに関連するプロセス制御情報を探して、コンテキスト内検索を実行する。そのエンジニアは、マウスの右クリックおよび／または他のユーザ入力装置で機能ボックスを開いて検索機能を選択することにより、コンテキスト内検索を実行し得る。検索機能に応じて、アプリケーション６００は、ユーザインタフェース１２６を介して、検索パラメータを検索インタフェース１０２に送信する。検索パラメータは、アプリケーション６００のタイプ、概略図パネル６０２に関連するコンテキスト内情報、およびＴＣ ２０７制御パラメータの識別子を含む。検索インタフェース１０２は、検索インデックスデータベース１２２の検索を実行して、一致するインデックス作成されたプロセス制御情報を探す。検索インタフェース１０２は、検索結果ボックス６０４に表示されている検索結果として、一致するインデックス作成されたプロセス制御情報のレンダリングも行う。検索インタフェース１０２は、検索がＴＣ ２０７制御パラメータを選択しているエンジニアから開始されたことを示すコンテキスト内情報、および検索が概略図パネル６０２から開始されたことを示すコンテキスト内情報に基づいて、検索結果ボックス６０４内の検索結果のレンダリングを行う。
【０１１８】
図示例の検索インタフェース例１０２は、検索を開始したエンジニアに関連するフィルタ条件に基づいて、検索結果のフィルタリングも行う。検索結果ボックス６０４は、関連があり、かつ／またはそのエンジニアによって表示する権限が付与されている検索結果を表示する。また、検索結果ボックス６０４は、検索インタフェース１０２が、プロセス制御情報のカテゴリおよび／またはタイプに基づいて検索結果を要求したことを示す。例えば、表示タイプに関連する検索結果がグループにまとめられ、動向タイプ情報に関連する検索結果がグループにまとめられ、そして、ドキュメントタイプ情報に関連する検索結果がグループにまとめられている。検索結果ボックス６０４内に表示可能なスペースよりも多くの検索結果があるので、検索インタフェース１０２は、各カテゴリに対し、最も関連する検索結果を表示して、各カテゴリ内の総ドキュメント数を示す。エンジニアは、カテゴリ名（例えば、表示（４））を選択することにより、各カテゴリの他の検索結果を表示し得る。
【０１１９】
図７は、エンタープライズアプリケーション６００および、概略図パネル６０２にグラフィック表示されたフィールド機器１１２を示す。この図示例では、例えば、プロセスオペレータなどのユーザが、ＴＣ ２０７制御パラメータのコンテキスト内検索を実行する。検索インタフェース１０２による検索の結果が、検索結果ボックス７０２に表示される。図７のユーザのタイプが図６のユーザのタイプと異なっているため、検索結果ボックス７０２に表示されている検索結果が、図６の検索結果ボックス６０４に表示されている検索結果と異なる。さらに具体的には、図６のプロセスエンジニアは、図７のプロセスオペレータよりも多くの検索結果を表示することができる。
【０１２０】
図７の例では、ユーザタイプがプロセスオペレータであるため、例えば、検索インタフェース１０２は（例えば、検索フィルタ２３０を用いて）プロセスオペレータが参照する権限を付与されていない、かつ／またはプロセスオペレータに関連しないプロセス制御情報の検索結果を削除する。例えば、図６の検索結果ボックス６０４に表示されているいくつかのドキュメントに関連する検索結果は、図７の検索結果ボックス７０２には表示されていない。この例では、プロセス制御管理は、プロセスオペレータはいくつかのプロセスドキュメントを参照する権限を付与されていないと判断し得る。
【０１２１】
図８は、図１および図２の検索インタフェース例１０２で提供される機能ブロックの検索結果を表示する図１のユーザインタフェース例１２６を示す。ユーザインタフェース例１２６は、プロセス制御情報の表示に利用されるエンタープライズアプリケーション８００を示す。この例では、ユーザは、図２の検索結果データベース２２８に保存されている検索基準に関連する検索結果を表示することを選択する。フォルダパネル８０４は、選択標識８０６で示されるように、ＦＩＣ＿１０１ Ｂｌｏｃｋ検索基準（例えば、検索パラメータ）を選択するため、ユーザに対してファイルディレクトリ内を移動して示す。ＦＩＣ＿１０１ Ｂｌｏｃｋは、検索基準の名前および／または識別子である。他の例では、フォルダパネル８０４は、保存されている追加の検索結果を含み得る。
【０１２２】
ユーザがＦＩＣ＿１０１ ｂｌｏｃｋ検索基準を選択すると、検索インタフェース１０２は（例えば、保存検索マネージャ２２６を用いて）検索結果データベース２２８から検索基準を検索し、ソース情報および／またはプロセス制御情報の検索を（例えば、検索エンジン２２４を用いて）実行し、インデックス作成されたプロセス制御情報のデータタイプに基づき検索結果を（例えば、レンダラ２２３を用いて）レンダリングして、その検索結果を検索結果パネル８０８に表示する。他の例では、検索インタフェース１０２は、検索結果パネル８０８に示された検索結果を保存し得る。ユーザはまた、検索結果パネル８０８に表示された検索結果を印刷し得る。
【０１２３】
ユーザが、保存されている検索基準を特定の方法（例えば、グラフィック概略図形式）で表示されるように構成する例では、検索インタフェース１０２は、保存されている検索基準に関連する検索結果を、元はユーザによって構成された形式で表示する。さらに、いくつかの例では、検索インタフェース１０２は、保存されている検索基準を、他のワークステーションに対して利用可能にし得る。このようにして、ユーザは、任意のワークステーションに保存されている検索基準にアクセスし得る。追加または代替として、検索インタフェース１０２は、検索基準および／または検索パラメータを、プロセス制御環境１００内の任意のワークステーションによってアクセス可能なグローバルデータベースに格納し得る。検索基準をプロセス制御環境１００内にグローバルに保存することにより、いかなるユーザも保存されているどの検索基準および／または検索結果にもアクセスし得る。
【０１２４】
検索結果パネル８０８に表示されている保存検索基準に関連する検索結果は、第１機能ブロック８１０、第２機能ブロック８１２、および第３機能ブロック８１４を含む機能ブロック図のリストを含む。リストされた機能ブロック８１０〜８１４は、機能ブロック名（例えば、名前）、機能ブロックのプロセス制御環境１００内の位置（例えば、領域）、および機能ブロックの説明（例えば、説明）を含む。また、機能ブロック８１０〜８１４の各々は、ＦＩＣ＿１０１検索パラメータに対応するＦＩＣ＿１０１機能ブロックを含む。この例では、図２のレンダラ２２３は、検索結果の機能ブロックのファイルタイプに基づくリストとして検索結果を表示する。他の例では、ユーザは、機能ブロック検索結果を機能ブロック８１０〜８１４の図として表示することを指定し得る。図示例は、ユーザが機能ブロック８１０をプレビューすることを選択したことを示し、これは、選択標識８１６で示されている。
【０１２５】
プレビューパネル８２０は、制御パラメータに対応する入力および出力で実行時データを持つ機能ブロック８１０を示す。例えば、ＦＩＣ＿１０１機能ブロックは、ＢＫＣＡＬ＿ＩＮ、ＩＮおよびＯＵＴ制御パラメータを含む。ユーザが、機能ブロック８１０をプレビューすることを選択した場合、検索インタフェース１０２は、実行時データメモリ１２０および／または検索インデックスデータベース１２２にアクセスして、ＦＩＣ＿１０１機能ブロックの制御パラメータに関連する実行時データを探す。検索インタフェース例１０２はその後、実行時データを含めることにより、プレビューパネル８２０に表示するため、（例えば、レンダラ２２３を用いて）機能ブロック８１０のレンダリングを行う。ＢＫＣＡＬ＿ＩＮ、ＩＮおよびＯＵＴ制御パラメータに関連する実行時データが、図１および図２のコントローラ１０８内で変わると、検索インタフェース１０２は、プレビューパネル８２０に表示されている実行時データを更新する。
【０１２６】
ユーザは、プレビューパネル８２０内で機能ブロック８１０を選択することにより、機能ブロックアプリケーションを開くことを選択し得る。機能ブロック８１０を選択すると、検索インタフェース１０２が機能ブロック８１０の検索結果内のリンクを使用して、機能ブロック８１０に関連するプロセス制御情報の検索、機能ブロックアプリケーションのオープン、および機能ブロックアプリケーション内で機能ブロック８１０の表示を行う。ユーザはその後、機能ブロック８１０に関連する追加情報の変更および／または表示を行い得る。
【０１２７】
図１〜図２の検索インタフェース１０２およびインデックスマネージャ１０３を実装するためのプロセス例９００、１０００、および１１００の代表的な流れ図を、図９Ａ、図９Ｂ、図１０、図１１Ａおよび図１１Ｂに示す。この例で、プロセス９００、１０００、および１１００は、機械可読命令を使用し、以下で図１２に関連して説明するプロセッサシステム例Ｐ１０に示されるプロセッサＰ１２などのプロセッサで実行するためのプログラムの形式で実装され得る。そのプログラムは、ＣＤ−ＲＯＭ、フロッピィディスク、ハードドライブ、デジタル多用途ディスク（ＤＶＤ）、またはプロセッサＰ１２に関連するメモリなどのコンピュータ可読媒体に保存されているソフトウェア内に取り入れられ得るが、プログラム全体および／もしくはその部分は、代替としてプロセッサＰ１２以外の装置によって実行され、および／またはファームウェアまたは専用ハードウェアに取り入れられ得る。また、図９Ａ、図９Ｂ、図１０、図１１Ａ、および図１１Ｂに示される流れ図を参照してプログラム例が説明されるが、検索インタフェース例１０２およびインデックスマネージャ例１０３を実施する他の多くの方法が代わりに使用され得る。例えば、ブロックの実行順を変更し得、かつ／または記述されているブロックのいくつかを変更、除去、または結合を行い得る。
【０１２８】
上記のように、図９Ａ、図９Ｂ、図１０、図１１Ａ、および図１１Ｂのプロセス例は、ハードディスクドライブ、フラッシュメモリ、読み出し専用メモリ（ＲＯＭ）、コンパクトディスク（ＣＤ）、デジタル多用途ディスク（ＤＶＤ）、キャッシュ、ランダムアクセスメモリ（ＲＡＭ）および／または情報が任意の期間（例えば、長期間、永久的、短時間の場合、一時的なバッファリング用、および／または情報のキャッシング用）保存される他の記憶媒体など、有形のコンピュータ可読媒体上に保存されているコード化命令（例えば、コンピュータ可読命令）を用いて実装され得る。本明細書で使用される場合、有形のコンピュータ可読媒体という用語は、任意の種類のコンピュータ可読記憶装置を含み、かつ、伝搬信号を除くことを明示的に定義する。追加または代替として、図９Ａ、図９Ｂ、図１０、図１１Ａ、および図１１Ｂのプロセス例は、ハードディスクドライブ、フラッシュメモリ、読み出し専用メモリ、コンパクトディスク、デジタル多用途ディスク、キャッシュ、ランダムアクセスメモリおよび／または情報が任意の期間（例えば、長期間、永久的、短時間の場合、一時的なバッファリング用、および／または情報のキャッシング用）保存される他の記憶媒体など、非一時的なコンピュータ可読媒体上に保存されているコード化命令（例えば、コンピュータ可読命令）を用いて実装され得る。本明細書で使用される場合、非一時的なコンピュータ可読媒体という用語は、任意の種類のコンピュータ可読媒体を含み、かつ、伝搬信号を除くことを明示的に定義する。
【０１２９】
図９Ａおよび図９Ｂのプロセス例９００は、ユーザによって提供される少なくとも１つの検索パラメータに基づいて検索結果を表示する。図９Ａのプロセス例９００は、ユーザインタフェース１２６内で動作するアプリケーションから少なくとも１つの検索パラメータを受信することにより始まる（例えば、図２のアプリケーションインタフェース２２０を使用）（ブロック９０２）。プロセス例９００はその後、アプリケーションからフィルタ条件を受信する（例えば、図２のアプリケーションインタフェース２２０を使用）（ブロック９０４）。いくつかの例では、フィルタ条件は、少なくとも１つの検索パラメータより前に、および／またはそれと一緒に、送信され得る。プロセス例９００は次に、検索パラメータおよび／またはその検索パラメータを送信したアプリケーションに基づいて、表示コンテキストを決定する（例えば、プロセッサ２２２を使用）（ブロック９０６）。表示コンテキストは、アプリケーションおよび／またはユーザインタフェース１２６で送信された任意のコンテキスト内情報に基づいても決定され得る。
【０１３０】
プロセス例９００はさらに、少なくとも１つの検索パラメータに基づいて、プロセス制御情報の少なくとも１つのデータタイプおよび／またはカテゴリを決定する（例えば、プロセッサ２２２を使用）（ブロック９０８）。プロセス例９００はその後、検索インデックスデータベース１２２にアクセスして、少なくとも１つのインデックスで、少なくとも１つの検索パラメータに一致する制御パラメータを検索する（例えば、検索エンジン２２４を使用）（ブロック９１０）。プロセス例９００は、少なくとも１つの一致する制御パラメータがあるかどうかを判断する（例えば、検索エンジン２２４を使用）（ブロック９１２）。少なくとも１つの制御パラメータが少なくとも１つの検索パラメータに一致する場合、プロセス例９００は、少なくとも１つの制御パラメータおよび／または対応する実行時データを検索結果のリストに追加する（例えば、検索エンジン２２４の使用）（ブロック９１４）。プロセス例９００はその後、検索インデックスデータベース１２２にアクセスして、少なくとも１つの検索パラメータに一致するソース情報をインデックス（複数可）で検索する（例えば、検索エンジン２２４を使用）（ブロック９１６）。さらに、少なくとも１つの制御パラメータが少なくとも１つの検索パラメータに一致しない場合（ブロック９１２）、プロセス例９００は検索インデックスデータベース１２２にアクセスし、インデックス（複数可）でソース情報を検索する（ブロック９１６）。
【０１３１】
図示例のプロセス例９００はその後、任意のインデックス作成されたソース情報が少なくとも１つの検索パラメータに一致するかどうかを判断する（例えば、検索エンジン２２４を使用）（ブロック９１８）。プロセス例９００が、インデックス作成されたソース情報と一致すると判断した場合、プロセス例９００はその一致したソース情報を検索結果に追加する（例えば、検索エンジン２２４を使用）（ブロック９２０）。他の例では、プロセス９００は、ソース情報および実行時データを、制御パラメータを用いて同時に検索し得る。さらに、プロセス例９００が、少なくとも１つの検索パラメータに一致するいかなるソース情報および／または制御パラメータも見つけなかった場合、プロセス例９００は、検索を開始したユーザに対して検索エラーメッセージを返し得る。
【０１３２】
図９Ｂのプロセス例９００は、フィルタ条件に基づき、検索結果からの項目（例えば、個々の検索結果）を解析することで、（例えば、フィルタリングおよび／または除去）実行を継続する（例えば、検索フィルタ２３０を使用）（ブロック９２２）。プロセス９００は、どの項目が関連性がなく、かつ／または検索を開始したユーザに参照する権限が付与されていないかを判断することにより、項目を解析する。プロセス例９００はその後、ブロック９０６で決定された表示コンテキストに基づき、アプリケーション内で表示するため、検索結果のレンダリングを行う（例えば、レンダラ２２３を使用）（ブロック９２４）。いくつかの例では、プロセス９００はまた、表示されている検索結果に対して何らかの変更が生じているかどうかを判断するため、検索結果のキャッシュへの格納も行い得る（例えば、表示データマネージャ２３２を使用）。
【０１３３】
プロセス例９００はその後、レンダリングした検索結果を、アプリケーションで表示するため、ユーザインタフェース１２６に送信する（例えば、アプリケーションインタフェース２２０を使用）（ブロック９２６）。プロセス例９００は、検索結果をアプリケーションに表示する（例えば、ユーザインタフェース１２６を使用）（ブロック９２８）。プロセス例９００は次に、表示されている検索結果の少なくとも１つがユーザによって選択されているかどうかを判断する（例えば、アプリケーションインタフェース２２０を使用）（ブロック９３０）。少なくとも１つの検索結果の選択が受信されると、プロセス例９００は、選択された検索結果内のリンクを使用して、ソース情報データベース１２４および／または実行時データメモリ１２０にアクセスし、制御パラメータに対応する実行時データおよび／またはソース情報を取得する（例えば、表示データマネージャ２３２を使用）（ブロック９３２）。プロセス例９００はその後、選択された検索結果に関連する実行時データおよび／またはソース情報を、アプリケーションのプレビューパネルに表示する（例えば、レンダラ２２３を使用）（ブロック９３２）。他の例では、プロセス９００は、実行時データおよび／またはソース情報を、実行時データおよび／またはソース情報のタイプに関連する異なるアプリケーションに表示し得る。
【０１３４】
図９Ｂのプロセス例９００は、ユーザが、検索基準および／または検索結果の保存を選択しているかどうかを判断することで、実行を継続する（例えば、保存検索マネージャ２２６を使用）（ブロック９３４）。また、プロセス例が、ユーザが少なくとも１つの検索結果のプレビューを選択していないと判断した場合（ブロック９３０）、プロセス例９００は、ユーザが検索基準の保存を選択しているかどうかを判断する（ブロック９３４）。プロセス例９００が、ユーザが検索基準の保存を選択していないと判断した場合（ブロック９３４）、図９Ａのプロセス９００例は、新しい検索を実行するための少なくとも１つの新しい検索パラメータを受信する（ブロック９０２）。他の例では、ユーザが、検索結果が表示されているアプリケーションを閉じると、プロセス９００は終了し得る。
【０１３５】
プロセス例９００が、ユーザが検索基準の保存を選択していると判断した場合、プロセス９００は検索パラメータおよび／または検索結果を検索結果データベース２２８に格納する（例えば、保存検索マネージャ２２６を使用）（ブロック９３６）。プロセス例９００はその後、保存されている検索基準を公開の検索結果データベースに昇格すべきかどうかを判断する（例えば、保存検索マネージャ２２６を使用）（ブロック９３８）。公開の検索結果データベースは、プロセス制御環境１００内の任意のユーザがアクセス可能なデータベースを含む。プロセス例９００は、ユーザがその検索結果をアクセスする頻度、検索結果の範囲、および／または期間に基づき、その検索基準が昇格されるべきかどうかを判断する。例えば、プロセス９００は、保存されている検索基準を公開データベースに毎日昇格し得る。
【０１３６】
プロセス例９００が検索基準を昇格しない場合、プロセス９００は、新しい検索を実行するため、少なくとも１つの新しい検索パラメータの受信に戻る（ブロック９０２）。しかし、プロセス例９００が検索基準を公開の検索結果データベースに格納する予定の場合、プロセス例９００は、少なくとも１つの検索パラメータを含む検索基準を公開の検索結果データベースに格納する（例えば、保存検索マネージャ２２６を使用）（ブロック９４０）。プロセス例９００はその後、新しい検索を実行するため、少なくとも１つの新しい検索パラメータの受信に戻る（ブロック９０２）。他の例では、ユーザが、検索結果が表示されているアプリケーションを閉じると、プロセス９００は終了し得る。
【０１３７】
図１０のプロセス例１０００は、ユーザが対応する検索結果を選択すると、プロセス制御情報をレンダリングする。例えば、プロセス１０００は、図９Ａおよび図９Ｂのプロセス例９００がブロック９３２を実行する時に実行され得る。プロセス例１０００は、ユーザによる少なくとも１つの検索結果の選択を受信することにより始まる（例えば、アプリケーションインタフェース２２０を使用）（ブロック１００２）。プロセス例１０００はその後、検索インデックスデータベース１２２にアクセスして、選択された検索結果と、ソース情報データベース１２４内の対応するソース情報および／または実行時データメモリ１２０内の１つ以上の制御パラメータに関連する実行時データとの間のリンクを識別する（例えば、表示データマネージャ２３２を使用）（ブロック１００４）。他の例では、保存されているプロセス制御情報へのリンクは、選択された検索結果に含まれ得る。
【０１３８】
プロセス例１０００は次に、選択された検索結果がソース情報および／または制御パラメータに関連するかどうかを判断する（例えば、表示データマネージャ２３２を使用）（ブロック１００６）。選択された検索結果が少なくとも１つの制御パラメータに関連する場合、プロセス例１０００は、実行時データメモリ１２０にアクセスして、少なくとも１つの制御パラメータに関連する実行時データを取得する（例えば、表示データマネージャを使用）（ブロック１００８）。他の例では、プロセス１０００は、検索インデックスデータベース１２２にアクセスして、少なくとも１つの制御パラメータに関連するインデックス作成された実行時データを取得する。図示例のプロセス例１０００はその後、少なくとも１つの制御パラメータに関連する実行時データをレンダリングする（例えば、レンダラ２２３を使用）（ブロック１０１０）。実行時データのレンダリングには、実行時データを表示するためのテンプレート（例えば、チャート、グラフ、データフィールドなど）の選択および／または実行時データを表示するためのアプリケーションのオープンを含み得る。プロセス例１０００は次に、そのレンダリングされた実行時データを、検索が開始されたアプリケーションのプレビューペインに表示する（例えば、ユーザインタフェース１２６を使用）（ブロック１０１２）。他の例では、プロセス１０００は、実行時データを表示するために別のアプリケーションを開き得る。プロセス例１０００はその後、終了し得る。そうでない場合、プロセス例１０００は、別の検索結果の選択の受信に戻り得る（ブロック１００２）。
【０１３９】
プロセス例１０００が、選択された検索結果がソース情報に関連すると判断した場合（ブロック１００６）、プロセス１０００はソース情報データベース１２４にアクセスして、選択された検索結果に関連するドキュメントおよび／または情報を取得する（例えば、表示データマネージャ２３２を使用）（ブロック１０１４）。いくつかの例では、選択された検索結果は、ソース情報および少なくとも１つの制御パラメータの両方を含み得る。これらの例では、プロセス１０００は、制御パラメータ（複数可）についてブロック１００８〜１０１２を実行し、一方、ソース情報についてはブロック１０１４〜１０１８を実行する。プロセス例１０００は次に、ドキュメントおよび／または情報をレンダリングする（例えば、レンダラ２２３を使用）（ブロック１０１６）。ドキュメントおよび／または情報をレンダリングするには、そのドキュメントおよび／または情報を表示するためのアプリケーションのオープンを含み得る。そのアプリケーションは、プレビューパネル内に、および／またはユーザインタフェース１２６内に別のアプリケーションとして開かれ得る。プロセス例１０００はその後、レンダリングされたドキュメントおよび／または情報を表示する（例えば、ユーザインタフェース１２６を使用）（ブロック１０１８）。プロセス例１０００はその後、終了し得る。そうでない場合、プロセス例１０００は、別の検索結果の選択の受信に戻り得る（ブロック１００２）。
【０１４０】
図１１Ａおよび図１１Ｂのプロセス例１１００は、図１および図２のコントローラ１０８によって生成された実行時データのインデックスを作成する。プロセス例１１００は、まず、実行時データの生成を行う（例えば、コントローラ１０８を使用）（ブロック１１０２）。プロセス例１１００はその後、実行時データを制御パラメータに関連付ける（例えば、コントローラ１０８を使用）（ブロック１１０４）。プロセス例１１００はまた、実行時データを実行時データメモリ１２０に格納する（例えば、インデックスマネージャ１０３を使用）（ブロック１１０６）。プロセス例１１００は次に、実行時データのインデックス作成を行うために所定の条件が存在するかどうかを判断する（例えば、実行時データ受信機２０２を使用）（ブロック１１０８）。所定の条件は、コントローラ１０８からの実行時データおよび関連する制御パラメータの受信を含み得る。所定の条件はまた、例えば、実行時データをアクセスするための、コントローラ１０８および／または実行時データメモリ１２０の定期的なアクセスも含み得る。所定の条件が満足されない場合、プロセス例１１００は、実行時データの生成に戻る（ブロック１１０２）。いくつかの例では、プロセス１１００は、図１１Ａおよび図１１Ｂに示す他の機能ブロックを実行しながら、実行時データの生成、制御パラメータと実行時データの関連付け、および実行時データの保存（ブロック１１０２〜１１０６）を同時に行う。
【０１４１】
所定の条件が満足される場合（ブロック１１０８）、プロセス例１１００は、重要度係数に基づき、実行時データに関連する制御パラメータを解析する（例えば、データパーサ２０４を使用）（ブロック１１１０）。プロセス例１１００は、例えば、重要度係数に基づき、重要度係数によって指定される条件に合致しない制御パラメータを除去および／またはインデックス作成しないことにより、制御パラメータを解析する。例えば、重要度係数は、プロセス制御情報の表示に関連する制御パラメータを含み得る。プロセス制御情報の表示に関連しない制御パラメータは、プロセス例１１００によって無視および／または除去され得る。他の例では、重要度係数は、ユーザによって頻繁にアクセスされる制御パラメータを含み得る。
【０１４２】
図示例のプロセス例１１００はその後、実行時データが以前のインデックス作成された実行時データを置き換えるかどうかを判断する（例えば、データマネージャ２０６を使用）（ブロック１１１２）。いくつかの例では、以前インデックス作成された実行時データが表示され得る。実行時データが以前インデックス作成された実行時データを置き換えない場合、プロセス例１１００は、対応する制御パラメータを使用して実行時データ用のインデックスエントリを作成し、その実行時データをインデックスエントリに保存して、そのインデックスエントリを検索インデックスデータベース１２２内のインデックスに保存する（例えば、データマネージャ２０６を使用）（ブロック１１１４）。これは、保存される特定のインデックス実行時データの最初のインスタンスであるため（例えば、制御パラメータのインデックスを作成する最初のインスタンス）、プロセス例１１００は、制御パラメータが検索結果に表示されているかどうかを判断する必要がない。それ故、プロセス例１１００は、実行時データの生成に戻る（ブロック１１０２）。
【０１４３】
しかし、対応する制御パラメータが既にインデックス作成されたことを示して、実行時データが以前にインデックス作成された実行時データを置き換える場合、プロセス例１１００は、検索インタフェース１０２（例えば、データ表示マネージャ２３２）に、実行時データが置き換えおよび／または変更されていることを示す命令を送信する（例えば、データマネージャ２０６を使用）（ブロック１１６）。別の例では、検索インタフェース１０２は、実行時データが変わっているかどうかを判断するために、検索インデックスデータベース１２２にアクセスし得る。プロセス例１１００はその後、変更された実行時データで検索インデックスデータベース１２２を更新する（例えば、データマネージャ２０６を使用）（ブロック１１１８）。
【０１４４】
図１１Ｂのプロセス例１１００は、制御パラメータが、ユーザインタフェース１２６に検索結果として表示されるかどうかを判断することで、実行を継続する（例えば、表示データマネージャ２３２を使用）（ブロック１１２０）。変更された実行時データに関連する制御パラメータが検索結果として表示されない場合、プロセス例１１００は、実行時データの生成に戻る（ブロック１１０２）。しかし、制御パラメータが検索結果として表示される場合、プロセス例１１００は、ユーザインタフェース１２６で表示されるアプリケーションに表示された検索結果を更新するため、変更された実行時データを持つ制御パラメータをレンダリングする（例えば、レンダラ２２３を使用）（ブロック１１２２）。プロセス例１１００は次に、アプリケーションに表示されている検索結果を更新する（例えば、レンダラ２２３および／またはアプリケーションインタフェース２２０を使用）（ブロック１１２４）。プロセス例１１００はその後、実行時データの生成に戻る（ブロック１１０２）。
【０１４５】
図１２は、本明細書で説明する方法および装置の例を実施するために使用され得るプロセッサシステム例Ｐ１０のブロック図である。例えば、プロセッサシステム例Ｐ１０と同様または等しいプロセッサシステムが、実行時データ受信機例２０２、データパーサ例２０４、データマネージャ例２０６、ソース情報マネージャ例２０８、実行時データメモリ例１２０、検索インデックスデータベース例１２２、ソース情報データベース例１２４、アプリケーションインタフェース例２２０、プロセッサ例２２２、レンダラ例２２３、検索エンジン例２２４、保存検索マネージャ例２２６、検索結果データベース例２２８、検索フィルタ例２３０、表示データマネージャ例２３２、ワークステーションインタフェース例２３４、ならびに／またはより一般的に、図１および／もしくは図２の検索インタフェース例１０２および／もしくはインデックスマネージャ１０３の実施に使用され得る。プロセッサシステム例Ｐ１０は、複数の周辺機器、インタフェース、チップ、メモリなどを含むとして後述されているが、１つ以上のそれらの要素は、１つ以上の実行時データ受信機例２０２、データパーサ例２０４、データマネージャ例２０６、ソース情報マネージャ例２０８、実行時データメモリ例１２０、検索インデックスデータベース例１２２、ソース情報データベース例１２４、アプリケーションインタフェース例２２０、プロセッサ例２２２、レンダラ例２２３、検索エンジン例２２４、保存検索マネージャ例２２６、検索結果データベース例２２８、検索フィルタ例２３０、表示データマネージャ例２３２、ワークステーションインタフェース例２３４、ならびに／またはより一般的に、検索インタフェース例１０２および／もしくはインデックスマネージャ１０３の実施に使用される他のプロセッサシステム例から削除され得る。
【０１４６】
図１２に示すとおり、プロセッサシステムＰ１０は、相互接続バスＰ１４に結合されているプロセッサＰ１２を含む。プロセッサＰ１２は、レジスタセットまたはレジスタスペースＰ１６を含み、それは、図１２では完全にオンチップとして描かれているが、代わりに、完全にまたは部分的にオフチップとして配置し、専用の電気接続および／または相互接続バスＰ１４を経由してプロセッサＰ１２に直接結合し得る。プロセッサＰ１２は、任意の適切なプロセッサ、プロセス装置またはマイクロプロセッサであり得る。図１２には示していないが、システムＰ１０は、マルチプロセッサシステムでもよく、それ故、プロセッサＰ１２と同一または同様であって、相互接続バスＰ１４に通信で結合されている１つ以上の追加のプロセッサを含み得る。
【０１４７】
図１２のプロセッサＰ１２は、チップセットＰ１８に結合されており、そのチップセットはメモリコントローラＰ２０および周辺機器の入出力（Ｉ／Ｏ）コントローラＰ２２を含む。周知のとおり、チップセットは、通常、入出力およびメモリ管理機能のほかに、チップセットＰ１８に結合されている１つ以上のプロセッサによってアクセス可能であるか、または使用される複数の汎用および／または専用レジスタ、タイマー、などを提供する。メモリコントローラＰ２０は、プロセッサＰ１２（または複数のプロセッサがある場合は複数のプロセッサ）がシステムメモリＰ２４および大容量記憶装置Ｐ２５にアクセスできるようにする機能を実行する。
【０１４８】
システムメモリＰ２４は、例えば、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）、ダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）、フラッシュメモリ、読み取り専用メモリ（ＲＯＭ）などの、所望の任意のタイプの揮発性および／または不揮発性メモリを含み得る。大容量記憶装置Ｐ２５は、所望のタイプの大容量記憶装置を含み得る。例えば、プロセッサシステム例Ｐ１０が、言語ファイルデータベース２０６および／またはリソースメモリ１１９（図２）の実装に使用される場合、大容量記憶装置Ｐ２５は、ハード・ディスク・ドライブ、光学式ドライブ、テープ記憶装置などを含み得る。あるいは、プロセッサシステム例Ｐ１０が、実行時データメモリ１２０、検索インデックスデータベース１２２、ソース情報データベース１２４、および／または検索結果データベース２２８の実装に使用される場合、大容量記憶装置Ｐ２５は、ソリッドステートメモリ（例えば、フラッシュメモリ、ＲＡＭメモリなど）、磁気メモリ（例えば、ハードドライブ）、または実行時データメモリ１２０、検索インデックスデータベース１２２、ソース情報データベース１２４、および／または検索結果データベース２２８内の大容量記憶に適した他のメモリを含み得る。
【０１４９】
周辺機器の入出力コントローラＰ２２は、プロセッサＰ１２が、周辺機器の入出力バスＰ３２経由で、周辺機器の入出力（Ｉ／Ｏ）装置Ｐ２６およびＰ２８ならびにネットワークインタフェースＰ３０と通信できるようにする機能を実行する。入出力装置Ｐ２６およびＰ２８は、例えば、キーボード、ディスプレイ（例えば、液晶ディスプレイ（ＬＣＤ）、ブラウン管（ＣＲＴ）ディスプレイなど）、ナビゲーション機器（例えば、マウス、トラックボール、容量性タッチパッド、ジョイスティックなど）などの所望の任意のタイプの入出力装置であり得る。ネットワークインタフェースＰ３０は、例えば、プロセッサシステムＰ１０が別のプロセッサシステムと通信できるようにするイーサネット（登録商標）装置、非同期転送モード（ＡＴＭ）装置、８０２．１１装置、ＤＳＬモデム、ケーブルモデム、セルラーモデムなどであり得る。
【０１５０】
図１２では、メモリコントローラＰ２０および入出力コントローラＰ２２は、チップセットＰ１８内にある別の機能ブロックとして表されているが、これらのブロックで実行される機能は、単一の半導体回路に統合し得るか、または２つ以上の別個の集積回路を用いて実装し得る。
【０１５１】
前述した方法例および／または装置例の少なくともいくつかは、コンピュータプロセッサ上で実行する１つ以上のソフトウェアおよび／またはファームウェアプログラムで実装される。しかし、特定用途向け集積回路、プログラマブル・ロジック・アレイおよび他のハードウェア装置を含むがこれらに限定されない専用ハードウェアの実装は、同様に、全体または一部のいずれかにおいて、本明細書で説明する方法例および／または装置例の一部または全てを実装するように構成可能である。さらに、分散処理またはコンポーネント／オブジェクト分散処理、並列処理、または仮想マシン処理を含むがこれらに限定されない代替ソフトウェアの実装も、本明細書で説明する方法例および／または装置例を実装するように構成可能である。
【０１５２】
本明細書で説明するソフトウェア例および／またはファームウェア例の実装は、例えば、磁気媒体（例えば、磁気ディスクまたはテープ）、光ディスクなどの光磁気または光媒体、または、メモリカードもしくは１つもしくは複数の読み取り専用（不揮発性）メモリ、ランダムアクセスメモリ、もしくは他の書き換え可能（揮発性）メモリを内蔵する他のパッケージなどのソリッドステートメディア、などの有形の記憶媒体に保存されることも留意されたい。それ故、本明細書で説明するソフトウェアおよび／またはファームウェアの例も、前述のような有形の記憶媒体または後継の記憶媒体に保存可能である。特定の規格およびプロトコルに関連して、前述の明細書でコンポーネントおよび機能の例を説明する範囲内で、本特許の範囲がかかる規格およびプロトコルに限定されないことを理解されたい。
【０１５３】
さらに、本特許は、ハードウェア上で実行されるソフトウェアまたはハードウェアを含む方法および装置の例を開示するが、かかるシステムは例示に過ぎず、制限するものと見なすべきでないことに留意されたい。例えば、これらハードウェアおよびソフトウェアコンポーネントの一部または全ては、ハードウェアのみ、ソフトウェアのみ、ファームウェアのみ、またはハードウェア、ファームウェア、および／もしくはソフトウェアのいくつかの組み合わせで実施し得ると考えられる。したがって、前述の本明細書では、方法例、システム例、および機械アクセス可能媒体例を説明したが、それらの例は、かかるシステム、方法および機械アクセス可能媒体を実装するための唯一の方法ではない。それ故、ある方法、システム、および機械アクセス可能媒体の例が本明細書で説明されているが、本特許の対象とする範囲は、それらに限定されるものでない。それどころか、本特許は、文字通りまたは均等論のいずれかにより、添付の請求項の範囲に公正に含まれる全ての方法、システム、および機械アクセス可能媒体に及ぶ。
【図１】
0006377691.tif 000002
【図２】
0006377691.tif 000003
【図３】
0006377691.tif 000004
【図４】
0006377691.tif 000005
【図５】
0006377691.tif 000006
【図６】
0006377691.tif 000007
【図７】
0006377691.tif 000008
【図８】
0006377691.tif 000009
【図９Ａ】
0006377691.tif 000010
【図９Ｂ】
0006377691.tif 000011
【図１０】
0006377691.tif 000012
【図１１Ａ】
0006377691.tif 000013
【図１１Ｂ】
0006377691.tif 000014
【図１２】
0006377691.tif 000015