(57)【要約】【課題】ナレッジ所有者を検索するシステムの検索精度を向上させる。【解決手段】コンピュータ入力端末は、ユーザがキー入力したテキスト情報を受け付けてログオン時に入力されたユーザ名と共にサーバに送信する。サーバは、コンピュータ入力端末から送信されたユーザ名とそのユーザが作成したテキスト情報を紐付けて索引として記憶装置に記憶する。そして、索引が作成された状態で、コンピュータ検索端末は、検索者がコンピュータ検索端末において入力したキーワードを受け付けてサーバに送信し、サーバはキーワードを含むテキスト情報が存在する場合にはそのテキスト情報とこれに紐付くユーザ名をサーバから受信することにより、所望のナレッジを有するユーザをナレッジ所有者として検索する。最終的に、コンピュータ検索端末は、ナレッジ所有者としてのユーザ名を検索結果リストとして表示する。【選択図】図１（ａ）
2008040887.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータを用いて所望のナレッジを有するナレッジ所有者を検索するためのナレッジ所有者検索システムであって、
前記ナレッジ所有者の有するナレッジを取得する端末であるナレッジ情報取得クライアントと、
前記ナレッジ情報取得クライアントとネットワークで接続されており、前記ナレッジ所有者の有するナレッジを管理するサーバと、
前記サーバとネットワークで接続されており、前記ナレッジ所有者を検索する端末である検索クライアントと、を有し、
前記ナレッジ情報取得クライアントは、
ユーザがアプリケーションの操作においてドキュメントを作成しているときにキー入力したタイトル名の情報と本文内容の情報とを含むテキスト情報を受け付けるキー入力情報取得手段と、
情報取得の対象である対象アプリケーションの名前を記憶した対象アプリケーションテーブルと、
前記ユーザがアプリケーションを操作しているときに、前記アプリケーションが前記対象アプリケーションであるか否かを前記対象アプリケーションテーブルに基づいて判別するアプリケーション判別手段と、
前記ユーザが操作しているアプリケーションが、前記アプリケーション判別手段により前記対象アプリケーションであると判別された場合に、ログオン時に入力されたユーザ名の情報と、前記キー入力情報取得手段により受け付けられた前記テキスト情報を前記サーバに送信する取得情報送信手段と、を有し、
前記サーバは、
前記ユーザ名の情報と前記テキスト情報を受信する情報受信手段と、
前記ユーザをナレッジ所有者として検索できるようにするために前記ユーザ名の情報を前記テキスト情報に関連付けてデータベースに記憶する記憶手段と、
検索キーワードを受け付けた前記検索クライアントから前記検索キーワードを受信するキーワード受信手段と、
前記データベースに記憶されている前記テキスト情報の中から受信した前記キーワードと一致する部分を検索する検索手段と、
前記テキスト情報に前記キーワードと一致する部分が存在する場合に、前記テキスト情報に関連付けされたユーザ名の情報と、前記テキスト情報内の前記キーワードを含んだ所定範囲のテキスト情報とを、前記検索クライアントに送信するナレッジ所有者情報送信手段と、を有することを特徴とするナレッジ所有者検索システム。
【請求項２】
前記ナレッジ情報取得クライアントにおいて、
前記取得情報送信手段は、さらに、前記ユーザが操作しているアプリケーションが、前記アプリケーション判別手段により前記対象アプリケーションであると判別された場合に、前記アプリケーション名の情報を前記サーバに送信し、
前記サーバにおいて、
前記情報受信手段は、さらに、前記アプリケーション名の情報を受信し、
前記記憶手段は、さらに、前記アプリケーション名の情報と、前記テキスト情報と、前記ユーザ名の情報とを関連付けて前記データベースに記憶し、
前記ナレッジ所有者情報送信手段は、前記テキスト情報に前記キーワードと一致する部分が存在する場合に、前記ユーザ名の情報と前記所定範囲のテキスト情報とを、前記記憶手段により関連付けされた前記アプリケーション名の情報と共に前記検索クライアントに送信することを特徴とする請求項１に記載のナレッジ所有者検索システム。
【請求項３】
前記サーバにおいて、
前記情報受信手段は、さらに、前記テキスト情報を作成した日時の情報を受け付け、
前記記憶手段は、さらに、受け付けた前記日時の情報を前記テキスト情報に関連付けてデータベースに記憶し、
前記ナレッジ所有者情報送信手段は、前記テキスト情報に前記キーワードと一致する部分が存在する場合に、前記ユーザ名の情報と前記所定範囲のテキスト情報と共に、前記日時の情報を前記検索クライアントに送信することを特徴とする上記請求項のいずれか１つに記載のナレッジ所有者検索システム。
【請求項４】
前記検索クライアントは、
前記ナレッジ所有者情報送信手段により送信された前記ユーザ名がナレッジ所有者として適当である場合に、前記ユーザ名と共に所定のポイント値をサーバに送信するポイント値送信手段を有し、
前記サーバは、さらに、
前記検索クライアントから前記ユーザ名および前記所定のポイント値を受け付けるポイント値受信手段と、
前記所定のポイント値を前記ユーザ名の検索頻度として前記ユーザ名に関連付けて記憶するポイント値記憶手段と、
前記ユーザ名の情報と共に前記所定のポイント値の情報を前記検索クライアントに送信する手段と、を有することを特徴とする上記請求項のいずれか１つに記載のナレッジ所有者検索システム。
【請求項５】
前記検索クライアントは、さらに、前記ナレッジ所有者情報送信手段により前記サーバから送信された情報を表示する表示手段を有することを特徴とする上記請求項のいずれか１つに記載のナレッジ所有者検索システム。
【請求項６】
前記検索クライアントは、さらに、前記ナレッジ所有者情報送信手段により前記サーバから送信された前記ユーザ名の情報を、検索者から指定された、前記アプリケーション名の情報、前記日時の情報、前記ポイント値の情報のいずれか一つと関連付けて優先的に表示させる優先的表示手段を有することを特徴とする請求項５に記載のナレッジ所有者検索システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータを用いて、所望の知識（以下、ナレッジとする）を所有する人物及びその人物が作成したドキュメントを探索する技術に関する。
【背景技術】
【０００２】
従来、ドキュメント作成者を検索するシステムにおいては、ナレッジを所有する人間が能動的に自己のナレッジを記したプロフィールを作成し、ナレッジを検索する側がそのプロフィールに記載された内容を検索することにより、人物を探索する手法が行われてきている。このような従来のシステムでは、一般には、作成されるプロフィールはナレッジを所有する人間の自己申告に基づいているため、本人が意識していないナレッジについてはプロフィールに反映されない可能性が高い。また、プロフィールの更新を頻繁に行うことは稀であり、検索対象となるプロフィールそのものが時間と共に陳腐化してしまう恐れがある。
【０００３】
また、ナレッジを所有する人間が何らかの情報（以下、コンテンツとする）を作成する際、そのコンテンツに対してコンテンツの作成者を紐付けて指定しておいた上で、検索する側がコンテンツに紐付けられている人物をナレッジ所有者として探索する手法が行われてきている。さらに、特許文献１に示されるように、他人の検索結果や検索条件等の情報の共有化を図り、効率よく情報を活用することができるような検索システムも開発されている。そして、これらの手法では、コンテンツ作成者自身がそのコンテンツに対するナレッジを所有する人物であることを想定している。しかしながら、実際には、コンテンツは、そのコンテンツの作成者自身が実際には他のコンテンツを引用して作成していることも多く、全てのコンテンツがコンテンツ作成者のキー入力によって作成されたものであるとは限らない。すなわち、従来の検索システムは、必ずしもコンテンツの作成者がコンテンツ内に記載されているナレッジの真の所有者であるとは限らないという現象を考慮したものではない。
【０００４】
また、従来のシステムでは、検索者が検索結果として期待するナレッジの所有者は一覧の形で検索者へ返されるが、その際の優先度付け(並び順)を適切に設定する手段が用意されていない。検索者によって参照された回数に応じてナレッジの所有者にポイント付けをするという方法も行なわれているが、そのポイントは個々のナレッジ毎ではなく、ナレッジ所有者に共通して付与されるものであるため、検索者が期待するナレッジに関する重要度との相関が保証されていない。
【０００５】
【特許文献１】特開２００２−１６９８２４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、上記のような技術的背景に基づいてなされたものであり、その目的は、ナレッジ所有者とその所有するナレッジとの関連を自動的に生成することにより、ナレッジ所有者の検索システムの精度を向上させることにある。
【課題を解決するための手段】
【０００７】
上記の課題を解決するために本発明では以下の構成を有する。本発明の一つの特徴によれば、コンピュータを用いて所望のナレッジを有するナレッジ所有者を検索するためのナレッジ所有者検索システムであって、
前記ナレッジ所有者の有するナレッジを取得する端末であるナレッジ情報取得クライアントと、
前記ナレッジ情報取得クライアントとネットワークで接続されており、前記ナレッジ所有者の有するナレッジを管理するサーバと、
前記サーバとネットワークで接続されており、前記ナレッジ所有者を検索する端末である検索クライアントと、を有し、
前記ナレッジ情報取得クライアントは、
ユーザがアプリケーションの操作においてドキュメントを作成しているときにキー入力したタイトル名の情報と本文内容の情報とを含むテキスト情報を受け付けるキー入力情報取得手段と、
情報取得の対象である対象アプリケーションの名前を記憶した対象アプリケーションテーブルと、
前記ユーザがアプリケーションを操作しているときに、前記アプリケーションが前記対象アプリケーションであるか否かを前記対象アプリケーションテーブルに基づいて判別するアプリケーション判別手段と、
前記ユーザが操作しているアプリケーションが、前記アプリケーション判別手段により前記対象アプリケーションであると判別された場合に、ログオン時に入力されたユーザ名の情報と、前記キー入力情報取得手段により受け付けられた前記テキスト情報を前記サーバに送信する取得情報送信手段と、を有し、
前記サーバは、
前記ユーザ名の情報と前記テキスト情報を受信する情報受信手段と、
前記ユーザをナレッジ所有者として検索できるようにするために前記ユーザ名の情報を前記テキスト情報に関連付けてデータベースに記憶する記憶手段と、
検索キーワードを受け付けた前記検索クライアントから前記検索キーワードを受信するキーワード受信手段と、
前記データベースに記憶されている前記テキスト情報の中から受信した前記キーワードと一致する部分を検索する検索手段と、
前記テキスト情報に前記キーワードと一致する部分が存在する場合に、前記テキスト情報に関連付けされたユーザ名の情報と、前記テキスト情報内の前記キーワードを含んだ所定範囲のテキスト情報とを、前記検索クライアントに送信するナレッジ所有者情報送信手段と、を有することを特徴とするナレッジ所有者検索システムが提供される。
【０００８】
好ましい態様では、前記ナレッジ情報取得クライアントにおいて、
前記取得情報送信手段は、さらに、前記ユーザが操作しているアプリケーションが、前記アプリケーション判別手段により前記対象アプリケーションであると判別された場合に、前記アプリケーション名の情報を前記サーバに送信し、
前記サーバにおいて、
前記情報受信手段は、さらに、前記アプリケーション名の情報を受信し、
前記記憶手段は、さらに、前記アプリケーション名の情報と、前記テキスト情報と、前記ユーザ名の情報とを関連付けて前記データベースに記憶し、
前記ナレッジ所有者情報送信手段は、前記テキスト情報に前記キーワードと一致する部分が存在する場合に、前記ユーザ名の情報と前記所定範囲のテキスト情報とを、前記記憶手段により関連付けされた前記アプリケーション名の情報と共に前記検索クライアントに送信することを特徴とするナレッジ所有者検索システムが提供される。
【０００９】
別の好ましい態様では、前記サーバにおいて、
前記情報受信手段は、さらに、前記テキスト情報を作成した日時の情報を受け付け、
前記記憶手段は、さらに、受け付けた前記日時の情報を前記テキスト情報に関連付けてデータベースに記憶し、
前記ナレッジ所有者情報送信手段は、前記テキスト情報に前記キーワードと一致する部分が存在する場合に、前記ユーザ名の情報と前記所定範囲のテキスト情報と共に、前記日時の情報を前記検索クライアントに送信することを特徴とするナレッジ所有者検索システムが提供される。
【００１０】
さらに別の好ましい態様では、
前記検索クライアントは、
前記ナレッジ所有者情報送信手段により送信された前記ユーザ名がナレッジ所有者として適当である場合に、前記ユーザ名と共に所定のポイント値をサーバに送信するポイント値送信手段を有し、
前記サーバは、さらに、
前記検索クライアントから前記ユーザ名および前記所定のポイント値を受け付けるポイント値受信手段と、
前記所定のポイント値を前記ユーザ名の検索頻度として前記ユーザ名に関連付けて記憶するポイント値記憶手段と、
前記ユーザ名の情報と共に前記所定のポイント値の情報を前記検索クライアントに送信する手段と、を有することを特徴とするナレッジ所有者検索システムが提供される。
【００１１】
また、さらに別の好ましい態様では、前記検索クライアントは、さらに、前記ナレッジ所有者情報送信手段により前記サーバから送信された情報を表示する表示手段を有することを特徴とするナレッジ所有者検索システムが提供される。
【００１２】
また、さらに別の好ましい態様では、前記検索クライアントは、さらに、前記ナレッジ所有者情報送信手段により前記サーバから送信された前記ユーザ名の情報を、検索者から指定された、前記アプリケーション名の情報、前記日時の情報、前記ポイント値の情報のいずれか一つと関連付けて優先的に表示させる優先的表示手段を有することを特徴とするナレッジ所有者検索システムが提供される。
【発明の効果】
【００１３】
本発明は、コンテンツの作成者自身が意識していないナレッジをプロフィールに反映すること、また、コンテンツの作成者自身が実際には作成していない引用コンテンツよりもむしろ実際にコンテンツの作成者がキー入力を行ったコンテンツを、そのコンテンツの作成者に属するナレッジであるとして取り扱うことにより、以下のような利点を有する。
【００１４】
本発明によれば、任意のキー入力内容を取得するため、無意識のナレッジも検索対象とすることができる。また、ナレッジ所有者自身がキー入力したデータのみを対象とするため、検索されたナレッジ所有者が該当するナレッジを所有している可能性はより高くなる。
【００１５】
キー入力をキャプチャするアプリケーション・ソフトウェアを限定することにより、ハッキングなどの要素を排除することができる。
【００１６】
また、テキスト情報（コンテンツ）を作成した日時を記憶しておくことによって、より最近にそのコンテンツを入力しているナレッジ所有者を優先的に検索し、新鮮なナレッジを所有する人物を探索することができる。
【発明を実施するための最良の形態】
【００１７】
以下に図面を参照して、本発明の実施の形態について説明する。ただし、以下の説明は、あくまでも本発明の例示にすぎず、以下の記載によって発明の技術的範囲が限定されるものではない。なお、異なる図において付されている同一の符号番号は、同等のものを指しているものとする。
【００１８】
図１（ａ）は、本発明の一実施形態に係るナレッジ所有者検索システムを示す。本システムは、ナレッジ保有者が利用するコンピュータ入力端末１００、ナレッジ検索者が利用するコンピュータ検索端末１４０、及びこれらとデータ通信可能なサーバ１２０を含む。また、それぞれは、ＣＰＵ１０１ａ、１２１ａ、１４１ａ、ＲＡＭ１０１ｂ、１２１ｂ、１４１ｂ、ネットワークインターフェース１０１ｅ、１２１ｅ、１４１ｅのほか、データを記憶できる記憶装置１０１ｃ、１２１ｃ、１４１ｃを備えており、後述する各処理において必要に応じて一時的又は半永久的にデータを記憶させておくことができることを前提とする。また、コンピュータ入力端末１００およびコンピュータ検索端末１４０は、ナレッジ所有者およびナレッジ検索者がコンピュータ画面を参照しながら操作可能なようにユーザインターフェース１０１ｄ、１４１ｄを備えている。
コンピュータ入力端末１００の記憶装置１０１ｃには、ＯＳ１０１ｃ１、一般的なドキュメント作成用のアプリケーション１０１ｃ２、本発明に係るキー入力データをキャプチャするためのアプリケーション１０１ｃ３等が記憶されている。
また、サーバ１２０の記憶装置１２１ｃには、ＯＳ１２１ｃ１、本発明に係るナレッジ所有者の索引を作成するアプリケーション１２１ｃ２等が記憶されている。
また、コンピュータ検索端末１４０の記憶装置１４１ｃには、ＯＳ１４１ｃ１、本発明に係る検索を実行するアプリケーション１４１ｃ２、検索結果をソートするアプリケーション１４１ｃ３等が記憶されている。
なお、コンピュータ入力端末１００とコンピュータ検索端末１４０は、物理的に同一のコンピュータであっても異なるものであってもよいし、コンピュータ入力端末１００とコンピュータ検索端末１４０がサーバ１２０と物理的に同一のコンピュータであってもよい。
【００１９】
以下では、ネットワークを介して接続されるコンピュータ入力端末１００、コンピュータ検索端末１４０及びサーバ１２０を用いて、所望のナレッジを有するナレッジ所有者を検索する処理フローについて説明する。
【００２０】
図１（ｂ）は、本発明に係るナレッジ所有者を検索する処理の全体フローを示している。全体フローでは、まず、コンピュータ入力端末は、ユーザが所定のアプリケーションを用いてドキュメントを作成しているときに、ユーザがキー入力したテキスト情報と利用しているアプリケーションの情報とテキスト情報を作成又は更新した日時の情報とを受け付けてログオン時に入力されたユーザ名と共にサーバに送信する（Ｓ１００）。次に、サーバは、コンピュータ入力端末から送信されたユーザ名とそのユーザが作成したテキスト情報とアプリケーションの情報と日時の情報とを紐付けて索引として記憶装置に記憶する（Ｓ１１０）。そして、索引が作成された状態で、コンピュータ検索端末は、検索者がコンピュータ検索端末において入力したキーワードを受け付けてサーバに送信し、サーバはキーワードを含むテキスト情報が存在する場合にはそのテキスト情報とこれに紐付くユーザ名を含む情報をサーバから受信することにより、所望のナレッジを有するユーザをナレッジ所有者として検索する（Ｓ１２０）。その後、コンピュータ検索端末は、ユーザ名およびテキスト情報が、アプリケーション、日時またはユーザ名の検索頻度（ユーザ名の検索頻度については後述する）のいずれかに紐付く情報として優先的に表示されるように検索者の優先順位の指定に基づいてサーバから送信される検索結果の情報をソートする（Ｓ１３０）。最終的に、コンピュータ検索端末は、ナレッジ所有者としてのユーザ名とこれに紐付く情報を検索結果リストとして表示する（Ｓ１４０）。
【００２１】
なお、上述における所定のアプリケーションは、メールソフト、文書作成ソフト、その他、文字情報が入力可能なソフトであれば何であってもよい。重要なのは、本発明に係るナレッジ所有者検索システムは、そのテキスト情報がメールソフトにおいて作成された情報なのか、オフィス文書なのか等によってナレッジの価値（重要性）が変動する考慮したものであるということである。すなわち、一般的には、テキスト情報がメールに書かれている場合よりも、フォーマルなオフィス文書に記載されている方がナレッジとしての価値は高いと考えられるため、このような実情を考慮して所定のアプリケーションに含まれるアプリケーションを事前に設定しておくことにより、ナレッジの価値を考慮したシステムを実現することができる。また、所定のアプリケーションは、サーバに送信されるデータとして、いわゆる「キーロガーツール」のようなハッキング的な要素を排除できるように、キー入力をキャプチャする対象となるアプリケーションを特定しておくことによりネットワークセキュリティを考慮したシステムを実現することができる。また、ナレッジを含むテキスト情報を入力した日時を把握しておくことによって、より最近にそのテキスト情報を入力しているナレッジ所有者を優先的に検索して新鮮なナレッジを所有する人物を探し出せるようにすることができる。
【００２２】
以下、上記の各プロセス（Ｓ１００からＳ１４０）について詳述する。
【００２３】
[入力プロセス（Ｓ１００）]
図２は、キー入力データをキャプチャするためのアプリケーション１０１ｃ３に基づく入力プロセス（Ｓ１００）の詳細を示したものであり、ナレッジを有するユーザが利用するコンピュータ入力端末と、ユーザのコンピュータ入力端末上での操作に応答して動作する入力エージェントコンピュータと、実際のキャプチャデータを保存するサーバの間でデータの流れが分かるように示されている。なお、入力エージェントコンピュータは、物理的にコンピュータ入力端末と同一のものであってもよい。このような前提の下で、まず、入力プロセスでは、コンピュータ入力端末においてユーザはコンピュータを起動させ（Ｓ２００）、アプリケーションを起動させる（Ｓ２１０）と、入力エージェントコンピュータは起動し（Ｓ２０５）、ユーザによるキー入力情報を取得可能な状態に設定される（Ｓ２１５）。そして、ユーザが起動したアプリケーション上でキー入力を開始する（Ｓ２２０）と、入力エージェントはユーザによって入力されたテキスト情報をキャプチャする（Ｓ２２５）。なお、テキスト情報は、アプリケーションにおけるタイトル名および本文の内容を含む情報である。このとき、入力エージェントコンピュータは、テキスト情報取得の対象であるアプリケーションそれぞれに対応するアプリケーションコードおよびアプリケーション名が記憶されているアプリケーションマスターテーブル１０１ｃ５に基づいてユーザがどのアプリケーションを用いているのかを特定する（Ｓ２３０）。そして、ユーザが利用しているアプリケーションが情報取得の対象であるか否かを判別する（Ｓ２３５）。当該アプリケーションが情報取得の対象である場合には、キー入力されたテキスト情報を記憶装置１０１ｃ内の所定の記憶領域（キャプチャデータ記憶手段１０１ｃ４）に記憶する（Ｓ２４５）。入力エージェントコンピュータは、ユーザによって当該アプリケーションが終了されたことを示す情報を受け付けて（Ｓ２５０）、キャプチャデータ記憶手段１０１ｃ４に記憶されているテキスト情報に当該アプリケーション名およびログオン時にユーザによって入力されたユーザ名を付加してキャプチャデータとしてサーバに送信する（Ｓ２５５）。その後、サーバはこれらのキャプチャデータを受信して記憶装置に保存する（Ｓ２６０）。一方、当該アプリケーションが情報取得の対象でない場合には、ユーザによって当該アプリケーションの利用が終了され（Ｓ２４０、Ｓ２５０）、その後、別のアプリケーションが利用される場合を除きテキスト情報がキャプチャデータとして取得されることはない（Ｓ２６５）。最終的に、ユーザがアプリケーションを終了した後にコンピュータをダウンさせる（Ｓ２７０）ことにより入力プロセスは終了する（Ｓ２７５）。
上記Ｓ２２５のキャプチャ処理については、ユーザがキー入力した場合の生のデータをそのまま取得するだけでなく、漢字やカナ文字への変換を伴ったデータを取得するように構成することができる。例えば、かな／カタカナ／漢字の変換を担うプログラムであるＩＭＥにグローバルフックをかけることにより実現可能である。Ｗｉｎｄｏｗｓ（登録商標） ＯＳを用いる場合であれば、一般にはＯＳに備わっているＭｅｓｓａｇｅＨｏｏｋと呼ばれるイベント処理を行うフックに対して、キャプチャ処理を登録し、そのフックの中で「ＷＭ ＩＭＥ＊＊＊」という種別のイベントを選別して処理することにより実現するか、あるいは同じくＷｉｎｄｏｗｓに備わっているＩＭＥ制御用ＡＰＩを使うことによって実現できる。
より詳細には、まず、事前に、生のキー入力を取得するためのグローバルフックを設定しておく。すなわち、ＳｅｔＷｉｎｄｏｗｓＨｏｏｋＥｘ(ＷＨ＿ＫＥＹＢＯＡＲＤ＿ＬＬ， ＨｏｏｋＫｅｙＰｒｏｃ， ｈＩｎｓｔ， ０)をコールして、ＨｏｏｋＫｅｙＰｒｏｃにフック処理モジュール名を入力することによりフック処理モジュールを登録しておく。また、ＩＭＥの状態を取得するためのグローバルフックを設定しておく。すなわち、ＳｅｔＷｉｎｄｏｗｓＨｏｏｋＥｘ(ＷＨ＿ＧＥＴＭＥＳＳＡＧＥ， ＨｏｏｋＭｓｇＰｒｏｃ， ｈＩｎｓｔ， ０)をコールして、ＨｏｏｋＭｓｇＰｒｏｃにフック処理モジュール名を入力することによりフック処理モジュールを登録しておく。この場合はあらゆるメッセージが受信されるが、その中で「ＷＭ＿ＩＭＥ＿＊＊」という名称で始まるＩＭＥ関連メッセージのみをメッセージＩＤを用いて選別して受け取るようにしておく。
このように設定された状態で、ＧｅｔＡｃｔｉｖｅＷｉｎｄｏｗ()をコールすることにより、アクティブなアプリケーションのハンドル(識別子)を取得し、ＨｏｏｋＨＴＭＬＣｏｐｙＫｅｙの中でキー入力された文字のキャプチャ処理を開始する。そして、ＩＭＥが起動した場合には、ＨｏｏｋＭｓｇＰｒｏｃ内にて変換結果をキャプチャする。すなわち、ＩＭＥによる変換が行われたことを示すイベント「ＷＭ＿ＩＭＥ＿ＣＯＭＰＯＳＩＴＩＯＮ」を受信した場合にはＩＭＥを操作するためのＡＰＩであるＩＭＥ ＡＰＩの中のＩｍｍＧｅｔＣｏｍｐｏｓｉｔｉｏｎＳｔｒｉｎｇ()関数をＨｏｏｋＭｓｇＰｒｏｃ内から呼び出して変換結果文字列を取得する。
このような処理をユーザのキー入力に連動して繰り返し実行することにより、生のキー入力データだけでなく漢字やカナ文字への変換を伴ったデータもキャプチャする処理を実現することができる。
【００２４】
なお、上記において、アプリケーションが終了されたことを示す情報は、好ましくは、テキスト情報がファイルとして保存されているか否かを問わず入力エージェントコンピュータに送信される。これは、テキスト情報に含まれるナレッジ情報の重要度は、ファイルとして保存されているか否かに必ずしも依存しないからである。
【００２５】
[索引作成プロセス（Ｓ１１０）]
図３は、ナレッジ所有者の索引を作成するアプリケーション１２１ｃ２に基いてサーバにおいて行われる索引作成プロセス（Ｓ１１０）の詳細を示したものである。サーバは、起動された状態（Ｓ３００）で、ユーザによるコンピュータ入力端末でのテキスト情報の入力があるまで待機し（Ｓ３０５）、テキスト情報の入力があっても一定時間が経過するまで待機する（Ｓ３１０）。そして、一定時間が経過したときに、入力プロセスにおいてサーバに保存したデータ、すなわちテキスト情報にユーザ名とアプリケーション名の情報が付加されたキャプチャデータをサーバの記憶装置から順次読み出し（Ｓ３１５）、これを全てのキャプチャデータが取り出されるまで続ける（Ｓ３２０）。全てのキャプチャデータが取り出されたとき、キャプチャデータ内のテキスト情報を先頭から一文字ずつ順次取り出す（Ｓ３２５）。これは、テキスト情報のデータの末端に到達するまで続けられる（Ｓ３３０）。取り出された一文字のデータは、変換対象文字であるかが判別され（Ｓ３３５）、変換対象文字であれば文字変換される（Ｓ３４０）。このように、テキスト情報の全てを一文字ずつ順次取り出し、必要に応じて文字変換することにより、テキスト情報が正規化されたキャプチャデータが生成される。次に、正規化されたキャプチャデータ内のテキスト情報を先頭から二文字ずつ取り出す（Ｓ３４５）。これは、テキスト情報のデータの末端に到達するまで続けられる（Ｓ３５０）。次に、テキスト情報は、二文字ずつに細分化されてテーブル１２１ｃ３（以下、インデックステーブルとする）に順次追加される（Ｓ３５５）ことにより、キャプチャデータの索引が作成される。
【００２６】
なお、図７は、インデックステーブルに索引として作成されたキャプチャデータの一例を示したものである。このように、テキスト情報内の二文字ごとのデータは、それぞれ、ユーザ名、アプリケーション名およびテキスト情報を作成した日時の情報と紐付けてサーバの記憶装置に記憶される。
【００２７】
[検索プロセス（Ｓ１２０）]
図４は、検索を実行するアプリケーション１４１ｃ２に基づいてコンピュータ検索端末において行われるナレッジ所有者の検索プロセス（Ｓ１２０）の詳細を示したものである。まず、コンピュータ検索端末は、検索者（コンピュータ検索端末のユーザ）から所望のナレッジを端的に示すキーワードの入力を受け付ける（Ｓ４００）。受け付けられたキーワードは、半角カタカナを全角に変換し、小文字を大文字に変換する文字変換処理がなされる（Ｓ４０５）。このとき、記号も所定の文字に変換される。例えば、「＜」、「＞」、「＆」、「‘」は、それぞれ、「＆ｌｔ；」、「＆ｇｔ；」、「＆ａｍｐ；」、「＆ｑｕｏｔ；」に変換される。次に、キーワードデータをｂｉ−ｇｒａｍ分割処理し、分割されたキーワード（以下、分割キーワード）を作成する（Ｓ４１０）。そして、先頭の分割キーワード（以下、１番目の分割キーワード）をまず取り出し（Ｓ４１５）、索引作成プロセスで作成されたインデックステーブルを走査し（Ｓ４２０）、１番目の分割キーワードと一致する部分がインデックステーブル内のテキスト情報に存在するかをｂｉ−ｇｒａｍ検索する（Ｓ４２５）。１番目の分割キーワードと一致する部分がインデックステーブル内のテキスト情報に存在するか否かを判別し（Ｓ４３０）、一致する部分が存在する場合には、そのテキスト情報の一致する部分の次のｂｉ−ｇｒａｍ（以下、２番目のｂｉ−ｇｒａｍとする）を取得する（Ｓ４３５）と共に、キーワードについても１番目の分割キーワードの次の位置の分割キーワード（以下、２番目の分割キーワードとする）を取得する（Ｓ４４０）。２番目の分割キーワードが存在しない場合（全ての分割キーワードを取得している場合）（Ｓ４４５）には、１番目のｂｉ−ｇｒａｍを含むテキスト情報を、これに紐付くナレッジ所有者としてのユーザ名、アプリケーション名および作成又は更新の日時の情報と共に検索結果リストへ追加する（Ｓ４５５）。一方、全ての分割キーワードを取得していない場合（Ｓ４４５）には、２番目のｂｉ−ｇｒａｍと２番目の分割キーワードが一致しているか否かを判別する（Ｓ４５０）。両者が一致しているときは、テキスト情報のさらなる次の位置のｂｉ−ｇｒａｍ（以下、３番目のｂｉ−ｇｒａｍとする）および分割キーワードのさらなる次の位置の分割キーワード（以下、３番目の分割キーワード）を取得する（Ｓ４３５、Ｓ４４０）。３番目の分割キーワードが存在しない場合（全ての分割キーワードを取得している場合）（Ｓ４４５）には、１番目および２番目のｂｉ−ｇｒａｍを含むテキスト情報を、ナレッジ所有者としてのユーザ名、アプリケーション名および作成又は更新の日時の情報と共に検索結果リストへ追加する（Ｓ４５５）。一方、全ての分割キーワードを取得していない場合（Ｓ４４５）には、３番目の位置のｂｉ−ｇｒａｍと３番目の位置の分割キーワードが一致しているかを判別し（Ｓ４５０）、両者が一致している場合には、３番目の次の位置のｂｉ−ｇｒａｍすなわち４番目のｂｉ−ｇｒａｍおよび３番目の次の位置の分割キーワードすなわち４番目の分割キーワードの両者をさらに取得する（Ｓ４３５、Ｓ４４０）。このようにＳ４３５からＳ４５０までの処理によって、順次、分割キーワードとテキスト情報が一致しているかを判別することにより、キーワードと一致する部分が存在する１つのテキスト情報を、ユーザ名、アプリケーション名および日時の情報に紐付けて取得することができる。また、Ｓ４１５からＳ４５０に従って全てのテキスト情報についてキーワードと一致する部分が存在するかを検索する（インデックステーブルを全て走査する（Ｓ４２０））ことによりキーワードを含んでいるテキスト情報の全リストを、ユーザ名、アプリケーション名および日時の情報に紐付けて取得することができる。最終的に、図８に示すような検索結果リストを次のソートプロセスに引き渡す（Ｓ４６０）。なお、検索結果リストには、テキスト情報そのものを必ずしも登録する必要はなく、図８のように、テキスト情報を識別するコードとしてキャプチャデータＩＤを登録しておく構成にしてもよい。
【００２８】
また、上記の検索プロセス（Ｓ１２０）においては、形態素解析の公知の技術として上記のような「ｂｉ−ｇｒａｍ」検索を用いる構成としているが、これは例えば「辞書に基づく形態素解析」などの他の形態素解析であってもよい。
【００２９】
[ソートプロセス（Ｓ１３０）および表示プロセス（Ｓ１４０）]
図５は、検索結果をソートするアプリケーション１４１ｃ３に基づいてコンピュータ検索端末において行われる検索結果リストのソートプロセス（Ｓ１３０）を示したものである。コンピュータ検索端末は、検索プロセスで生成された検索結果リストから各テキスト情報を作成又は更新した日時の情報を抽出し、日時の降順に検索結果リストをソートする（Ｓ５００）。次に、各アプリケーションを表示する優先順位が登録されているアプリケーションマスターテーブル１４１ｃ５に基づいてアプリケーションの優先順位の昇順に検索結果リストをソートする（Ｓ５０５）。なお、アプリケーションマスターテーブルでは、上述の通り、テキスト情報を作成したアプリケーションがメールソフトなのか、或いはオフィス文書なのか等によってテキスト情報に含まれるナレッジの価値が変動し得るということを考慮してアプリケーションの優先順位を特定しておくことは有用であることは言うまでもない。Ｓ５００およびＳ５０５によれば、検索結果リスト内の同じアプリケーション上で作成されたテキスト情報同士を比較すると、テキスト情報が作成された日時が新しいほど上位にリストされることになる。次に、ユーザ名のナレッジ所有者としての検索頻度を示すポイント値が登録されているサーバ内に保存されるナレッジ所有者ポイントテーブル１２１ｃ４（詳細については後述する）をサーバから受信してこれを参照し（Ｓ５１０）、ナレッジ所有者として検索された各ユーザ名がナレッジ所有者ポイントテーブル内に存在するか否かを判別し（Ｓ５１５）、各ユーザ名がナレッジ所有者ポイントテーブル内に存在する場合には、各ユーザ名のポイント値の降順に検索結果リストをソートする（Ｓ５２０）。すなわち、この時点で、検索されたテキスト情報が複数個存在する場合には、検索されたユーザ名のポイント値が高い順番に並べ替えられ、そして、同じポイント値のユーザ名同士については、アプリケーションの優先順位の高い順番に並べられ、さらに、同じアプリケーション同士については、テキスト情報の作成日時が新しいほど上位にリストされることになる。その後、検索結果リストとして検索されたユーザがそれぞれナレッジ所有者として妥当である場合に、そのユーザの検索頻度を示すポイント値を加算する（Ｓ５２５）。なお、具体的なポイント値の加算方法については後述する。そして、検索された各テキスト情報について、タイトル名がある場合にはそのタイトル名が記載されている部分（通常は最初の一行目）を抽出し、一方、上述のＳ２５０（アプリケーションが終了されたことを示す情報の送付）がテキスト情報を保存せずになされた場合すなわちタイトル名が存在しないような場合にはテキスト情報データの最初の一行を抽出し、抽出したものを「タイトルまたは抜粋」という項目で検索結果リストに追加する（Ｓ５３０）。最終的に、図９に示すような検索結果リストを表示する（Ｓ５３５）。
【００３０】
なお、上記のソートプロセスにおいては、検索されるテキスト情報のリストの数等を想定して様々なソートを構成してもよい。すなわち、例えば、上記の日付に基づくソート（Ｓ５００）、アプリケーションの優先順位に基づくソート（Ｓ５０５）、およびユーザ名の検索頻度に基づくソート（Ｓ５２０）のいずれか１つのソートのみによって検索結果リストを並べ替えてもよいし、日時、アプリケーション、検索頻度のうちの２つに基づいてソートするように構成してもよい。また、日時、アプリケーション、検索頻度のソートの順序を入れ換えてもよいし、さらに、それぞれ昇順、降順を切り替えられるようにしてもよい。
【００３１】
[検索結果に対するポイント加算方法（Ｓ５２５）]
ここで、検索結果リストとして検索されたユーザがそれぞれナレッジ所有者として妥当である場合に、そのユーザの検索頻度を示すポイント値を加算する方法（Ｓ５２５）について説明する。図６は、検索結果に対して各ユーザのポイント値を加算するフローを示したものである。検索者がコンピュータ検索端末において検索結果リストを参照しているときに（Ｓ６００）、コンピュータ検索端末は、検索者自身が検索結果リストに列挙されるユーザ名と同一人物であるかどうかを判別するために、ログオン時に入力された検索者のユーザ名を検索結果リストに列挙されたそれぞれのユーザ名と対照する（Ｓ６０５）。そして、検索結果リストに列挙されているユーザのうち検索者と同一人物であるユーザには、ポイント値は加算されない（Ｓ６１０）。これは、故意にポイント加算を狙う検索者によるポイント加算を排除するための処理である。一方、検索者と同一人物でない検索結果リストに列挙されているユーザに対しては、検索結果リストに基づいて検索者自身がナレッジ所有者であるかどうかのチェックを行なう（Ｓ６１５）。具体的には、例えば、そのユーザは検索結果リストの中に含まれているので、その時点でナレッジ所有者であると認定してもよいし、検索によりヒットしたテキスト情報内に含まれるキーワードの個数に基づいて判断する等のさらなる条件を付加して認定してもよい。検索者自身がナレッジ所有者であると認定されない場合には、ポイントは加算されない（Ｓ６２０）。一方、検索者自身がナレッジ所有者であると認定された場合（Ｓ６２０）には、そのユーザをナレッジ所有者であるとしてポイントを加算し（Ｓ６２５）、新たなポイント値をユーザ名に紐付けて前述のナレッジ所有者ポイントテーブルに登録し、サーバに送信する。なお、ポイントの加算量は、検索によりヒットしたテキスト情報内に含まれるキーワードの個数等に基づいて重み付けをしてもよい。
【００３２】
上記のポイント加算方法は、ナレッジを有していない一般のユーザによるポイント付与を排除し、ナレッジ所有者同士でのポイント付与に限定することで、より信頼度の高いポイント値になるという考えに基づくものである。すなわち、本方法は、ナレッジ所有者は同時に該当するナレッジの優秀な検索者でもあるため、豊富なナレッジを所有している人物はナレッジを検索する場面においても適切な取捨選択を行なっているということを考慮したものである。本方法によれば、この原理を利用して、検索時に指定されたキーワードに該当するナレッジを持っている複数の所有者によって頻繁に参照されている所有者およびその所有者によって作成されたコンテンツを検索結果の表示順において上位に配置することが実現される。
【実施例１】
【００３３】
ここで、これまで説明してきた処理フローを利用して実際にナレッジを有するナレッジ所有者を検索するシステムの実施例について説明する。
【００３４】
本システムは、ナレッジ保有者が利用するコンピュータ入力端末、ナレッジ検索者が利用するコンピュータ検索端末、及びこれらとデータ通信可能なサーバを用いて実現される。そして、本システムの中心的役割を果たすのは、コンピュータ入力端末、コンピュータ検索端末およびサーバにそれぞれ搭載されるソフトウェアである。コンピュータ入力端末にインストールされるソフトウェアは、主に上記の入力プロセス（Ｓ１００）を実現するものであり、サーバにインストールされるソフトウェアは、主に上記のキャプチャデータ索引作成プロセス（Ｓ１１０）を実現するものであり、コンピュータ検索端末にインストールされるソフトウェアは、主に上記の検索プロセス（Ｓ１２０）、ソートプロセス（Ｓ１３０）および検索結果表示プロセス（Ｓ１４０）を実現するものである。
【００３５】
[入力プロセス（Ｓ１００）およびキャプチャデータ索引作成プロセス（Ｓ１１０）]
図１０（ａ）および（ｂ）の左図は、入力プロセスにおいて、ユーザがコンピュータ入力端末上でアプリケーションを起動し、ドキュメントを作成しているときの実際のテキスト情報の例を示したものである。一方、図１０（ａ）および（ｂ）の右図は、そのときに取得されるキャプチャデータを示したものである。図１０（ａ）は、Ｍｉｃｒｏｓｏｆｔ  Ｗｏｒｄ（登録商標）で作成されたドキュメントを、図１０（ｂ）は、メールソフトで作成されたドキュメントを示したものである。
【００３６】
また、このとき、キャプチャデータインデックステーブルは、図示しないが、図１０（ａ）および（ｂ）に示されるキャプチャデータからキャプチャデータ索引作成プロセスに基づいて、図７のテーブルと同様に作成される。
【００３７】
なお、入力プロセスでは、例えばＭｉｃｒｏｓｏｆｔ  Ｗｏｒｄでドキュメントを作成したにもかかわらず、そのドキュメントを保存せずにＭｉｃｒｏｓｏｆｔ  Ｗｏｒｄソフトを終了した場合（Ｓ２５０）にもユーザが入力したテキスト情報を取得するように構成してもよい。これにより、価値のあるナレッジであるがファイルとして保存されなかったテキスト情報を検索対象に含むことができる。このとき、図１０（ａ）の例のように、このテキスト情報が検索結果リストとして表示されるときには、ソートプロセスにおける検索結果リストの「タイトルまたは抜粋」は、Ｗｏｒｄ文書の一行目の「ＳＯＸ法対策について」となる。なお、図１０（ｂ）では、この「タイトルまたは抜粋」は、Ｅメールのタイトル名の「ＳＯＸ法対策の要点」となる。
【００３８】
[検索プロセス（Ｓ１２０）、ソートプロセス（Ｓ１３０）および検索結果表示プロセス（Ｓ１４０）]
図１１の上図は、コンピュータ検索端末における検索条件入力画面のユーザインターフェースを示したものである。検索者は、この検索条件入力画面上でキーワードに「ＳＯＸ法」と入力していることがわかる。また、上述の検索プロセスにおいても説明したように、検索条件入力画面上でアプリケーションを限定して（優先順位を特定して）検索できるように検索対象とするアプリケーションを選択することが可能な構成としてもよい。さらに、検索結果として該当するものが非常に多い場合には、テキスト情報を作成した日時を限定して検索できるように検索開始日時および検索終了日時を入力できるように構成してもよい。なお、ここでは、例として、２００３年１月１日から２００６年１２月３１日までの間に作成されたテキスト情報を検索の対象とする場合が示されている。
【００３９】
これにより、特定のアプリケーションによって作成されたテキスト情報、特定の日時に作成されたテキスト情報のみを検索の対象とすることができる。なお、このとき、ソートプロセスは、選択された特定のアプリケーションおよび特定の日時に該当するものだけをソートするように構成すればよい。
【００４０】
図１１の下図は、コンピュータ検索端末において表示される検索結果画面を示したものである。上記のソートプロセスで示したようにポイント値が高いユーザが順次表示されていることがわかる。また、上述のように、ソートプロセスは、アプリケーション、ポイント値、テキスト情報の作成（更新）日時のいずれか１つに基づいてソートできるように構成してもよい。例えば、図１１の下図の「▲アプリケーション」欄、「▲参照ポイント」欄、「▲作成／更新日時」欄のいずれかをクリック等により選択すれば、選択された事項に基づいてソートされるように構成してもよい。また、いずれか１つの欄をさらにクリックすることにより、それぞれの項目の降順と昇順とを切り替えるように設定するように構成してもよい。
【００４１】
また、検索されたナレッジ所有者が作成したテキスト情報の詳細を実際に参照できるように構成することができる。例えば、検索結果画面に表示されている４列目（グレーで識別されている列）の人物が作成したテキスト情報を具体的に参照するために、その列の「▲タイトルまたは抜粋」を選択することによって図１２のような具体的なテキスト情報を別の画面で表示させるように構成してもよい。
【００４２】
図１３の上図は、図１１の上図と同様に、コンピュータ検索端末における検索条件入力画面のユーザインターフェースを示したものである。図１１の場合と異なるのは、図１３の上図は、「プレゼンテーション」ソフトおよび「ワード」ソフトに基づいて作成されたテキスト情報のみを検索の対象とする場合を示したものであるという点である。この点、図１３の下図を参照すると、「▲アプリケーション」欄には、「プレゼンテーション」および「ワード」のみが表示されていることがわかる。
【００４３】
これまで述べてきたように、本発明に係るナレッジ所有者検索システムは以下の点を特徴とするものである。すなわち、ナレッジ情報の形成においては、ナレッジ所有者のナレッジ情報を人間の判断を介さずに取得することを特徴としており、ナレッジを含むドキュメントを作成している人物が単に引用したドキュメントに含まれるナレッジを検索対象から排除することを実現している。索引時には、検索対象となるテキスト情報は、いつ、どのアプリケーションによって作成されたものであるか、また、ナレッジ所有者の過去の検索頻度はどの程度であったか等の付随的な情報により検索を絞り込めるようにしたことを特徴としている。
【００４４】
以上のように、本発明の実施の一形態及び実施例について説明してきたが、本発明は、上記の実施例に限定されるものではなく、これに種々の変更を加え得るものであることは容易に理解される。そして、それらが特許請求の範囲の各請求項に記載した事項、及びそれと均等な事項の範囲内にある限り、当然に本発明の技術的範囲に含まれる。上記の例は特定のコンピュータシステムに対してのものであったが、これはあくまでも一例であり、本発明がこの特定の具体例に限定されるものではない。
【図面の簡単な説明】
【００４５】
【図１（ａ）】本発明の一実施形態に係るナレッジ所有者検索システムを示す。
【図１（ｂ）】本発明の一実施形態に係るナレッジ所有者を検索する処理の全体フローの概略を示す。
【図２】本発明の一実施形態に係る入力プロセス（Ｓ１００）の詳細を示す。
【図３】本発明の一実施形態に係る索引作成プロセス（Ｓ１１０）の詳細を示す。
【図４】本発明の一実施形態に係る検索プロセス（Ｓ１２０）の詳細を示す。
【図５】本発明の一実施形態に係るソートプロセス（Ｓ１３０）の詳細を示す。
【図６】検索結果に対して各ユーザのポイント値を加算するフローを示す。
【図７】索引として作成されたキャプチャデータの一例を示す。
【図８】検索結果リストの一例を示す。
【図９】ソートプロセスによるソート後の検索結果リストの一例を示す。
【図１０】入力プロセスにおいて、ユーザがコンピュータ入力端末上でドキュメントを作成しているときの実際のテキスト情報の一例を示す。
【図１１】検索条件入力画面のユーザインターフェースと検索結果画面の一例を示す。
【図１２】実際のテキスト情報の一例を示す。
【図１３】検索条件入力画面のユーザインターフェースと検索結果画面の一例を示す。
【符号の説明】
【００４６】
１００    ナレッジ情報取得クライアント
１２０    サーバ
１４０    検索クライアント
１０１ｃ３    キー入力キャプチャアプリケーション
１２１ｃ２    索引作成アプリケーション
１４１ｃ２    検索アプリケーション
１４１ｃ３    検索結果ソートアプリケーション
Ｓ１００    入力プロセス
Ｓ１１０    キャプチャデー索引作成プロセス
Ｓ１２０    検索プロセス
Ｓ１３０    ソートプロセス
Ｓ１４０    検索結果表示プロセス
【図１（ａ）】
2008040887.tif 000003
【図１（ｂ）】
2008040887.tif 000004
【図２】
2008040887.tif 000005
【図３】
2008040887.tif 000006
【図４】
2008040887.tif 000007
【図５】
2008040887.tif 000008
【図６】
2008040887.tif 000009
【図７】
2008040887.tif 000010
【図８】
2008040887.tif 000011
【図９】
2008040887.tif 000012
【図１０】
2008040887.tif 000013
【図１１】
2008040887.tif 000014
【図１２】
2008040887.tif 000015
【図１３】
2008040887.tif 000016