(57)【要約】【課題】様々で且つ複雑な連関関係を速やかに見つけられるように、オントロジースキーマーに基づくインスタンス経路の探索方法及び装置を提供する。【解決手段】インスタンス経路を探索する方法は、（ａ）ユーザーから２以上のキーワードが入力されてキーワードについてのインスタンス対を生成するステップと、（ｂ）オントロジーインスタンスデータベースから各インスタンス対に対応するクラス対をそれぞれ抽出するステップと、（ｃ）オントロジースキーマー経路データベースから各クラス対についてのオントロジースキーマー経路をそれぞれ取得するステップと、（ｄ）各オントロジースキーマー経路における開始クラスと終了クラスとをこれらに対応する第１のインスタンスと第２のインスタンスに置き換え、第１のインスタンスと第２のインスタンスとの間に連結されたインスタンス経路をそれぞれ探索するステップと、を有する。【選択図】図２
2012252694.tif 000002
【特許請求の範囲】
【請求項１】
インスタンス経路の探索装置がインスタンス経路を探索する方法であって、
（ａ）ユーザーから２以上のキーワードが入力されて該キーワードについてのインスタンス対を生成するステップと、
（ｂ）オントロジーインスタンスデータベースから前記各インスタンス対に対応するクラス対をそれぞれ抽出するステップと、
（ｃ）オントロジースキーマー経路データベースから前記各クラス対についてのオントロジースキーマー経路をそれぞれ取得するステップと、
（ｄ）前記各オントロジースキーマー経路における開始クラスと終了クラスとをこれらに対応する第１のインスタンスと第２のインスタンスとに置き換え、該第１のインスタンスと第２のインスタンスとの間に連結されたインスタンス経路をそれぞれ探索するステップと、を有することを特徴とするオントロジースキーマーに基づくインスタンス経路の探索方法。
【請求項２】
前記ステップ（ａ）の前に、
前記オントロジースキーマーデータベースに格納された全てのクラスについて、クラス間オントロジースキーマー経路を探索してオントロジースキーマー経路データベースに格納するステップを更に含むことを特徴とする請求項１に記載のオントロジースキーマーに基づくインスタンス経路の探索方法。
【請求項３】
前記オントロジースキーマーデータベースの更新が感知された場合に、更新されたクラスのオントロジースキーマー経路を探索して前記オントロジースキーマー経路データベースを更新するステップを更に含むことを特徴とする請求項２に記載のオントロジースキーマーに基づくインスタンス経路の探索方法。
【請求項４】
前記探索されたインスタンス経路を視覚化させるステップを更に含むことを特徴とする請求項１に記載のオントロジースキーマーに基づくインスタンス経路の探索方法。
【請求項５】
前記ステップ（ａ）は、
オントロジーインスタンスデータベースから前記入力されたキーワードのインスタンスを取得するステップと、
前記取得されたインスタンスについて２つずつ対をなすインスタンス対を生成するステップと、を含むことを特徴とする請求項１に記載のオントロジースキーマーに基づくインスタンス経路の探索方法。
【請求項６】
前記ステップ（ｃ）は、
前記オントロジースキーマー経路データベースを検索し、各クラス対に相当する開始クラスと終了クラスとが先頭又は末尾に連結されたオントロジースキーマー経路をクラス対毎に取得することを特徴とする請求項１に記載のオントロジースキーマーに基づくインスタンス経路の探索方法。
【請求項７】
前記ステップ（ｄ）は、
（ｄ−１）前記オントロジースキーマー経路における開始クラスと終了クラスとをこれらに対応する第１のインスタンスと第２のインスタンスとに置き換えるステップと、
（ｄ−２）前記オントロジースキーマー経路を半分に分けて第１のインスタンスを含む第１のジョインスケジュールと第２のインスタンスを含む第２のジョインスケジュールとを生成するステップと、
（ｄ−３）前記第１又は第２のジョインスケジュールに基づいて、前記第１のインスタンス又は第２のインスタンスに連結されたクラスが存在する場合に、該連結されたクラスに含まれているインスタンスのうちの前記第１のインスタンス又は第２のインスタンスに連結された少なくとも一つ以上のインスタンスを抽出するステップと、
（ｄ−４）前記抽出されたインスタンスが前記第１のインスタンスと第２のインスタンスとの間に連結されたインスタンス経路を生成するステップと、を含むことを特徴とする請求項１に記載のオントロジースキーマーに基づくインスタンス経路の探索方法。
【請求項８】
前記ステップ（ｄ−３）は、
前記第１又は第２のジョインスケジュールにおいて前記第１又は第２のインスタンスが少なくとも一つのクラスに連結された場合に、前記第１又は第２のインスタンスに直結された第１又は第２のクラスのインスタンスのうちの前記第１又は第２のインスタンスに連結された少なくとも一つのインスタンスを抽出するステップと、
前記第１又は第２のジョインスケジュールにおいて前記第１又は第２のクラスに連結された他のクラスが存在する場合に、前記他のクラスのインスタンスのうちの前記抽出されたインスタンスにそれぞれ連結された少なくとも一つのインスタンスを抽出するステップと、
前記第１又は第２のインスタンスと前記抽出されたインスタンスとを連結関係に従って連結して少なくとも一つの第１又は第２のインスタンス経路を生成するステップと、を含むことを特徴とする請求項７に記載のオントロジースキーマーに基づくインスタンス経路の探索方法。
【請求項９】
前記ステップ（ｄ−３）は、
前記第１又は第２のジョインスケジュールにおいて前記第１又は第２のクラスに連結された他のクラスが存在しない場合に、前記第１又は第２のインスタンスと前記第１又は第２のクラスから抽出されたインスタンスとを連結関係に従って連結して少なくとも一つの第１又は第２のインスタンス経路を生成するステップを含むことを特徴とする請求項８に記載のオントロジースキーマーに基づくインスタンス経路の探索方法。
【請求項１０】
前記キーワードと一緒にインスタンス経路の長さ、導出される結果数、応答時間のうちの少なくとも一つを含む経路探索条件が入力された場合に、該経路探索条件に見合うインスタンス経路を探索することを特徴とする請求項１に記載のオントロジースキーマーに基づくインスタンス経路の探索方法。
【請求項１１】
クラス間関係情報が格納されたオントロジースキーマーデータベースと、
インスタンス間関係情報が格納されたオントロジーインスタンスデータベースと、
前記オントロジースキーマーデータベースに格納された全てのクラスについて、クラス間オントロジースキーマー経路が格納されたオントロジースキーマー経路データベースと、
ユーザーから２以上のキーワードが入力されるユーザーインタフェース部と、
前記オントロジーインスタンスデータベースから前記入力されたキーワードのインスタンスを取得してインスタンス対を生成するインスタンス対生成部と、
前記オントロジーインスタンスデータベースから前記生成された各インスタンス対に対応するクラス対をそれぞれ抽出するクラス対抽出部と、
前記オントロジースキーマー経路データベースから前記各クラス対についてのオントロジースキーマー経路をそれぞれ取得するオントロジースキーマー経路取得部と、
前記各オントロジースキーマー経路における開始クラスと終了クラスとをこれらに対応する第１のインスタンスと第２のインスタンスとに置き換え、該第１のインスタンスと第２のインスタンスとの間に連結されたインスタンス経路をそれぞれ探索するインスタンス経路探索部と、を備えることを特徴とするオントロジースキーマーに基づくインスタンス経路の探索装置。
【請求項１２】
前記オントロジースキーマーデータベースに格納された全てのクラスについて、クラス間オントロジースキーマー経路を探索して前記オントロジースキーマー経路データベースを構築するオントロジースキーマー経路生成部を更に備えることを特徴とする請求項１１に記載のオントロジースキーマーに基づくインスタンス経路の探索装置。
【請求項１３】
前記オントロジースキーマー経路生成部は、
前記オントロジースキーマーデータベースの更新が感知された場合に、更新されたクラスのオントロジースキーマー経路を探索して前記オントロジースキーマー経路データベースを更新することを特徴とする請求項１２に記載のオントロジースキーマーに基づくインスタンス経路の探索装置。
【請求項１４】
前記インスタンス経路探索部において探索されたインスタンス経路をグラフ状、一覧状に視覚化させる視覚化部を更に備えることを特徴とする請求項１１に記載のオントロジースキーマーに基づくインスタンス経路の探索装置。
【請求項１５】
前記オントロジースキーマー経路取得部は、
前記オントロジースキーマー経路データベースを検索し、各クラス対に相当する開始クラスと終了クラスとが先頭又は末尾に連結されたオントロジースキーマー経路をクラス対毎に取得することを特徴とする請求項１１に記載のオントロジースキーマーに基づくインスタンス経路の探索装置。
【請求項１６】
前記インスタンス経路探索部は、
前記オントロジースキーマー経路における開始クラスと終了クラスとをこれらに対応する第１のインスタンスと第２のインスタンスとに置き換え、前記オントロジースキーマー経路を半分に分けて第１のインスタンスを含む第１のジョインスケジュールと第２のインスタンスを含む第２のジョインスケジュールとを生成するジョインスケジュール生成モジュールと、
前記第１又は第２のジョインスケジュールに基づいて、前記第１のインスタンス又は第２のインスタンスに連結されたクラスが存在する場合に、該連結されたクラスに含まれているインスタンスのうちの前記第１のインスタンス又は第２のインスタンスに連結された少なくとも一つ以上のインスタンスを抽出するインスタンス探索モジュールと、
前記抽出されたインスタンスが前記第１のインスタンスと第２のインスタンスとの間に連結されたインスタンス経路を生成するインスタンス経路生成モジュールと、を備えることを特徴とする請求項１１に記載のオントロジースキーマーに基づくインスタンス経路の探索装置。
【請求項１７】
前記インスタンス探索モジュールは、
前記第１又は第２のジョインスケジュールにおいて、前記第１又は第２のインスタンスが少なくとも一つのクラスに連結された場合に、前記第１又は第２のインスタンスに直結された第１又は第２のクラスのインスタンスのうちの前記第１又は第２のインスタンスに連結された少なくとも一つのインスタンスを抽出し、前記第１又は第２のクラスに連結された他のクラスが存在する場合に、前記他のクラスのインスタンスのうちの前記抽出されたインスタンスにそれぞれ連結された少なくとも一つのインスタンスを抽出した後、前記第１又は第２のインスタンスと前記抽出されたインスタンスとを連結関係に従って連結して少なくとも一つの第１又は第２のインスタンス経路を生成することを特徴とする請求項１６に記載のオントロジースキーマーに基づくインスタンス経路の探索装置。
【請求項１８】
前記インスタンス探索モジュールは、
前記第１又は第２のジョインスケジュールにおいて前記第１又は第２のクラスに連結された他のクラスが存在しない場合に、前記第１又は第２のインスタンスと前記第１又は第２のクラスから抽出されたインスタンスとを連結関係に従って連結して少なくとも一つの第１又は第２のインスタンス経路を生成することを特徴とする請求項１７に記載のインスタンス経路の探索装置。
【請求項１９】
前記インスタンス経路探索部は、
前記ユーザーインタフェース部を介してキーワードと一緒にインスタンス経路の長さ、導出される結果数、応答時間のうちの少なくとも一つを含む経路探索条件が入力された場合に、該経路探索条件に見合うインスタンス経路を探索することを特徴とする請求項１１に記載のオントロジースキーマーに基づくインスタンス経路の探索装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オントロジースキーマーに基づくインスタンス経路の探索方法及び装置に係り、より詳細には、インスタンス経路の探索装置にユーザーからの２以上のキーワードが入力されてキーワードについてのインスタンス対を生成し、オントロジーインスタンスデータベースから各インスタンス対に対応するクラス対をそれぞれ抽出した後、オントロジースキーマー経路データベースから各クラス対についてのオントロジースキーマー経路をそれぞれ取得し、各オントロジースキーマー経路を用いてインスタンス経路をそれぞれ探索するオントロジースキーマーに基づくインスタンス経路の探索方法及び装置に関する。
【背景技術】
【０００２】
一般に、人間は、使用される単語間の意味関係を直観的に把握できる能力がある。例えば、「サッカー靴」と「サッカーボール」との間には深い関係があるが、「サッカー靴」と「自動車」との間にはこれといった関係がないことが分かる。このため、人間は、文書を読む過程において、このような文書がどのような単語と連関しているかが分かり、更には、連関する単語が文書内に含まれていない場合でも、文書を通じて連関する単語を思い浮かべることができる。
【０００３】
コンピューターがＷｅｂ上のデータの意味を理解し、且つ論理的な推論まで行える次世代Ｗｅｂ技術であるセマンティック・ウェブ（Ｓｅｍａｎｔｉｃ  Ｗｅｂ）が脚光を浴びるに伴い、ＲＤＦ（Ｒｅｓｏｕｒｃｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｆｒａｍｅｗｏｒｋ）／ＲＤＦＳ（Ｒｅｓｏｕｒｃｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｆｒａｍｅｗｏｒｋ  Ｓｃｈｅｍａ）で表されるＷｅｂデータの量が増大しつつある。
【０００４】
しかしながら、専門家にとっても、膨大な量のトリプルストア（ｔｒｉｐｌｅｓｔｏｒｅ）においてインスタンス間の連関関係を直接的に見つけることは非常に困難であり、システム的にインスタンス間の連関関係を見つけるために関係の方向に従って探索するため、様々で且つ複雑な連関関係を探索することができないという欠点があった。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、上記従来の問題点に鑑みてなされたものであって、本発明の目的は、様々で且つ複雑な連関関係を速やかに見つけられるように、クラスに基づくインスタンス間経路を探索することのできるオントロジースキーマーに基づくインスタンス経路の探索方法及び装置を提供することにある。
【０００６】
また、本発明の目的は、クラス又はインスタンス間の方向を考慮することなく全ての関係を探索してインスタンス経路を探索することのできるオントロジースキーマーに基づくインスタンス経路の探索方法及び装置を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するためになされた本発明の一態様によるオントロジースキーマーに基づくインスタンス経路の探索方法は、インスタンス経路の探索装置がインスタンス経路を探索する方法であって、（ａ）ユーザーから２以上のキーワードが入力されて該キーワードについてのインスタンス対を生成するステップと、（ｂ）オントロジーインスタンスデータベースから前記各インスタンス対に対応するクラス対をそれぞれ抽出するステップと、（ｃ）オントロジースキーマー経路データベースから前記各クラス対についてのオントロジースキーマー経路をそれぞれ取得するステップと、（ｄ）前記各オントロジースキーマー経路における開始クラスと終了クラスとをこれらに対応する第１のインスタンスと第２のインスタンスとに置き換え、該第１のインスタンスと第２のインスタンスとの間に連結されたインスタンス経路をそれぞれ探索するステップと、を有することを特徴とする。
【０００８】
前記オントロジースキーマーに基づくインスタンス経路の探索方法は、前記ステップ（ａ）の前に、前記オントロジースキーマーデータベースに格納された全てのクラスについて、クラス間オントロジースキーマー経路を探索してオントロジースキーマー経路データベースに格納するステップを更に含んでいてもよい。
【０００９】
また、前記オントロジースキーマーに基づくインスタンス経路の探索方法は、前記オントロジースキーマーデータベースの更新が感知された場合に、更新されたクラスのオントロジースキーマー経路を探索して前記オントロジースキーマー経路データベースを更新するステップを更に含んでいてもよい。
【００１０】
更に、前記オントロジースキーマーに基づくインスタンス経路の探索方法は、前記探索されたインスタンス経路を視覚化させるステップを更に含んでいてもよい。
【００１１】
更に、前記オントロジースキーマーに基づくインスタンス経路の探索方法において、前記ステップ（ａ）は、オントロジーインスタンスデータベースから前記入力されたキーワードのインスタンスを取得するステップと、前記取得されたインスタンスについて２つずつ対をなすインスタンス対を生成するステップと、を含んでいてもよい。
【００１２】
更に、前記オントロジースキーマーに基づくインスタンス経路の探索方法において、前記ステップ（ｃ）は、前記オントロジースキーマー経路データベースを検索し、各クラス対に相当する開始クラスと終了クラスとが先頭又は末尾に連結されたオントロジースキーマー経路をクラス対毎に取得してもよい。
【００１３】
更に、前記オントロジースキーマーに基づくインスタンス経路の探索方法において、前記ステップ（ｄ）は、（ｄ−１）前記オントロジースキーマー経路における開始クラスと終了クラスとをこれらに対応する第１のインスタンスと第２のインスタンスとに置き換えるステップと、（ｄ−２）前記オントロジースキーマー経路を半分に分けて第１のインスタンスを含む第１のジョインスケジュールと第２のインスタンスを含む第２のジョインスケジュールとを生成するステップと、（ｄ−３）前記第１又は第２のジョインスケジュールに基づいて、前記第１のインスタンス又は第２のインスタンスに連結されたクラスが存在する場合に、該連結されたクラスに含まれているインスタンスのうちの前記第１のインスタンス又は第２のインスタンスに連結された少なくとも一つ以上のインスタンスを抽出するステップと、（ｄ−４）前記抽出されたインスタンスが前記第１のインスタンスと第２のインスタンスとの間に連結されたインスタンス経路を生成するステップと、を含んでいてもよい。
【００１４】
更に、前記オントロジースキーマーに基づくインスタンス経路の探索方法において、前記ステップ（ｄ−３）は、前記第１又は第２のジョインスケジュールにおいて前記第１又は第２のインスタンスが少なくとも一つのクラスに連結された場合に、前記第１又は第２のインスタンスに直結された第１又は第２のクラスのインスタンスのうちの前記第１又は第２のインスタンスに連結された少なくとも一つのインスタンスを抽出するステップと、前記第１又は第２のジョインスケジュールにおいて前記第１又は第２のクラスに連結された他のクラスが存在する場合に、前記他のクラスのインスタンスのうちの前記抽出されたインスタンスにそれぞれ連結された少なくとも一つのインスタンスを抽出するステップと、前記第１又は第２のインスタンスと前記抽出されたインスタンスとを連結関係に従って連結して少なくとも一つの第１又は第２のインスタンス経路を生成するステップと、を含んでいてもよい。
【００１５】
更に、前記オントロジースキーマーに基づくインスタンス経路の探索方法において、前記ステップ（ｄ−３）は、前記第１又は第２のジョインスケジュールにおいて前記第１又は第２のクラスに連結された他のクラスが存在しない場合に、前記第１又は第２のインスタンスと前記第１又は第２のクラスから抽出されたインスタンスとを連結関係に従って連結して少なくとも一つの第１又は第２のインスタンス経路を生成するステップを含んでいてもよい。
【００１６】
更に、前記オントロジースキーマーに基づくインスタンス経路の探索方法は、前記キーワードと一緒にインスタンス経路の長さ、導出される結果数、応答時間のうちの少なくとも一つを含む経路探索条件が入力された場合に、該経路探索条件に見合うインスタンス経路を探索してもよい。
【００１７】
上記目的を達成するためになされた本発明の一態様によるオントロジースキーマーに基づくインスタンス経路の探索装置は、クラス間関係情報が格納されたオントロジースキーマーデータベースと、インスタンス間関係情報が格納されたオントロジーインスタンスデータベースと、前記オントロジースキーマーデータベースに格納された全てのクラスについて、クラス間オントロジースキーマー経路が格納されたオントロジースキーマー経路データベースと、ユーザーから２以上のキーワードが入力されるユーザーインタフェース部と、前記オントロジーインスタンスデータベースから前記入力されたキーワードのインスタンスを取得してインスタンス対を生成するインスタンス対生成部と、前記オントロジーインスタンスデータベースから前記生成された各インスタンス対に対応するクラス対をそれぞれ抽出するクラス対抽出部と、前記オントロジースキーマー経路データベースから前記各クラス対についてのオントロジースキーマー経路をそれぞれ取得するオントロジースキーマー経路取得部と、前記各オントロジースキーマー経路における開始クラスと終了クラスとをこれらに対応する第１のインスタンスと第２のインスタンスとに置き換え、該第１のインスタンスと第２のインスタンスとの間に連結されたインスタンス経路をそれぞれ探索するインスタンス経路探索部と、を備えることを特徴とする。
【００１８】
前記オントロジースキーマーに基づくインスタンス経路の探索装置は、前記オントロジースキーマーデータベースに格納された全てのクラスについて、クラス間オントロジースキーマー経路を探索して前記オントロジースキーマー経路データベースを構築するオントロジースキーマー経路生成部を更に備えていてもよい。
【００１９】
また、前記オントロジースキーマーに基づくインスタンス経路の探索装置において、前記オントロジースキーマー経路生成部は、前記オントロジースキーマーデータベースの更新が感知された場合に、更新されたクラスのオントロジースキーマー経路を探索して前記オントロジースキーマー経路データベースを更新してもよい。
【００２０】
更に、前記オントロジースキーマーに基づくインスタンス経路の探索装置は、前記インスタンス経路探索部において探索されたインスタンス経路をグラフ状、一覧状に視覚化させる視覚化部を更に備えていてもよい。
【００２１】
更に、前記オントロジースキーマーに基づくインスタンス経路の探索装置において、前記オントロジースキーマー経路取得部は、前記オントロジースキーマー経路データベースを検索し、各クラス対に相当する開始クラスと終了クラスとが先頭又は末尾に連結されたオントロジースキーマー経路をクラス対毎に取得してもよい。
【００２２】
更に、前記オントロジースキーマーに基づくインスタンス経路の探索装置において、前記インスタンス経路探索部は、前記オントロジースキーマー経路における開始クラスと終了クラスとをこれらに対応する第１のインスタンスと第２のインスタンスとに置き換え、前記オントロジースキーマー経路を半分に分けて第１のインスタンスを含む第１のジョインスケジュールと第２のインスタンスを含む第２のジョインスケジュールとを生成するジョインスケジュール生成モジュールと、前記第１又は第２のジョインスケジュールに基づいて、前記第１のインスタンス又は第２のインスタンスに連結されたクラスが存在する場合に、該連結されたクラスに含まれているインスタンスのうちの前記第１のインスタンス又は第２のインスタンスに連結された少なくとも一つ以上のインスタンスを抽出するインスタンス探索モジュールと、前記抽出されたインスタンスが前記第１のインスタンスと第２のインスタンスとの間に連結されたインスタンス経路を生成するインスタンス経路生成モジュールと、を備えていてもよい。
【００２３】
更に、前記オントロジースキーマーに基づくインスタンス経路の探索装置において、前記インスタンス探索モジュールは、前記第１又は第２のジョインスケジュールにおいて、前記第１又は第２のインスタンスが少なくとも一つのクラスに連結された場合に、前記第１又は第２のインスタンスに直結された第１又は第２のクラスのインスタンスのうちの前記第１又は第２のインスタンスに連結された少なくとも一つのインスタンスを抽出し、前記第１又は第２のクラスに連結された他のクラスが存在する場合に、前記他のクラスのインスタンスのうちの前記抽出されたインスタンスにそれぞれ連結された少なくとも一つのインスタンスを抽出した後、前記第１又は第２のインスタンスと前記抽出されたインスタンスとを連結関係に従って連結して少なくとも一つの第１又は第２のインスタンス経路を生成してもよい。
【００２４】
更に、前記オントロジースキーマーに基づくインスタンス経路の探索装置において、前記インスタンス探索モジュールは、前記第１又は第２のジョインスケジュールにおいて前記第１又は第２のクラスに連結された他のクラスが存在しない場合に、前記第１又は第２のインスタンスと前記第１又は第２のクラスから抽出されたインスタンスとを連結関係に従って連結して少なくとも一つの第１又は第２のインスタンス経路を生成してもよい。
【００２５】
更に、前記オントロジースキーマーに基づくインスタンス経路の探索装置において、前記インスタンス経路探索部は、前記ユーザーインタフェース部を介してキーワードと一緒にインスタンス経路の長さ、導出される結果数、応答時間のうちの少なくとも一つを含む経路探索条件が入力された場合に、該経路探索条件に見合うインスタンス経路を探索してもよい。
【発明の効果】
【００２６】
本発明によれば、様々で且つ複雑な連関関係を速やかに見つけられるように、クラスに基づくインスタンス間経路を探索することができる。
【００２７】
また、クラス又はインスタンス間の方向を考慮することなく全ての関係を探索してインスタンス経路を探索することができる。
【図面の簡単な説明】
【００２８】
【図１】本発明の一実施形態によるオントロジースキーマーに基づくインスタンス経路の探索システムを示す図である。
【図２】本発明の一実施形態によるインスタンス経路の探索装置の構成を概略的に示すブロック図である。
【図３】図２に示すオントロジーインスタンスデータベースの構造を示す例示図である。
【図４】図２に示すオントロジースキーマーデータベースの構造を示す例示図である。
【図５】図２に示すオントロジースキーマー経路データベースの構造を示す例示図である。
【図６】本発明の一実施形態によるインスタンス経路の探索装置がインスタンス経路を探索する方法を示すフローチャートである。
【図７】本発明の一実施形態によるインスタンス経路の探索装置がオントロジースキーマー経路データベースを構築する方法を示すフローチャートである。
【図８】本発明の一実施形態によるインスタンス経路の探索装置がオントロジースキーマー経路データベースを構築する方法を説明するための図である。
【図９】本発明の一実施形態によるインスタンス経路の探索装置がオントロジースキーマー経路データベースを構築する方法を説明するための図である。
【図１０】本発明の一実施形態によるインスタンス経路の探索装置がオントロジースキーマー経路データベースを構築する方法を説明するための図である。
【図１１】本発明の一実施形態によるインスタンス経路の探索装置がオントロジースキーマー経路データベースを構築する方法を説明するための図である。
【図１２】本発明の一実施形態によるインスタンス経路の探索装置がオントロジースキーマー経路データベースを構築する方法を説明するための図である。
【図１３】本発明の一実施形態によるインスタンス経路の探索装置がオントロジースキーマー経路データベースを構築する方法を説明するための図である。
【図１４】本発明の一実施形態によるインスタンス経路の探索装置がオントロジースキーマー経路データベースを構築する方法を説明するための図である。
【図１５】本発明の一実施形態によるインスタンス経路の探索装置がオントロジースキーマー経路データベースを構築する方法を説明するための図である。
【図１６】本発明の一実施形態によるインスタンス経路の探索装置がオントロジースキーマー経路データベースを構築する方法を説明するための図である。
【図１７】本発明の一実施形態によるインスタンス経路の探索装置がオントロジースキーマー経路データベースを構築する方法を説明するための図である。
【図１８】本発明の一実施形態によるインスタンス経路の探索装置がオントロジースキーマー経路データベースを構築する方法を説明するための図である。
【図１９】本発明の一実施形態によるインスタンス経路の探索装置がオントロジースキーマー経路データベースを構築する方法を説明するための図である。
【図２０】本発明の一実施形態によるインスタンス経路の探索装置がオントロジースキーマー経路データベースを構築する方法を説明するための図である。
【図２１】本発明の一実施形態によるインスタンス経路の探索装置がオントロジースキーマー経路データベースを構築する方法を説明するための図である。
【図２２】本発明の一実施形態によるインスタンス経路の探索装置がオントロジースキーマー経路データベースを構築する方法を説明するための図である。
【図２３】本発明の一実施形態によるインスタンス経路の探索装置がインスタンス経路を探索する方法を示すフローチャートである。
【図２４】本発明の一実施形態によるインスタンス経路の探索装置がジョインスケジュールに従ってインスタンス経路を探索する方法を示すフローチャートである。
【発明を実施するための形態】
【００２９】
本発明の目的と技術的構成及びこれらによる作用効果についての詳細は、本発明の明細書及び図面に基づく以下の詳細な説明によって一層明確に理解できるであろう。
【００３０】
以下、本発明を実施するための形態の具体例を、図面を参照しながら詳細に説明する。
【００３１】
後述するキーワード（Ｋｅｙｗｏｒｄ）とは、一つ又はそれ以上のＵＲＩ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｉｄｅｎｔｉｆｉｅｒ）を有するユーザーキーワードをいい、インスタンス（Ｉｎｓｔａｎｃｅ）とは、キーワードについてのＵＲＩを言う。
【００３２】
オントロジースキーマー経路とは、クラスが一つ又はそれ以上の関係をもって連結された経路をいい、インスタンス経路とは、インスタンスが一つ又はそれ以上の関係をもって連結された経路をいう。
【００３３】
図１は、本発明の一実施形態によるオントロジースキーマーに基づくインスタンス経路の探索システムを示す図である。
【００３４】
図１を参照すると、オントロジースキーマーに基づくインスタンス経路の探索システムは、キーワードが入力されるユーザー端末１００と、ユーザー端末１００からのキーワードについてのインスタンス経路を探索するインスタンス経路の探索装置２００と、を備える。
【００３５】
ユーザー端末１００とは、パソコン（ＰＣ）などの有線通信端末、携帯電話やノート型パソコンなどの移動通信端末をいう。
【００３６】
インスタンス経路の探索装置２００は、ユーザー端末１００から２以上のキーワードが入力されて、このキーワードについてのインスタンス対を生成し、各インスタンス対に対応するクラス対を、既に構築されているオントロジーインスタンスデータベースからそれぞれ抽出する。
【００３７】
次いで、インスタンス経路の探索装置２００は、オントロジースキーマー経路データベースから各クラス対についてのオントロジースキーマー経路をそれぞれ取得し、各オントロジースキーマー経路を用いて、インスタンス経路をそれぞれ探索する。
【００３８】
上記の役割を果たすインスタンス経路の探索装置２００についての詳細な説明は、図２に基づいて行う。
【００３９】
図２は、本発明の一実施形態によるインスタンス経路の探索装置の構成を概略的に示すブロック図であり、図３は、図２に示すオントロジーインスタンスデータベースの構造を示す例示図であり、図４は、図２に示すオントロジースキーマーデータベースの構造を示す例示図であり、図５は、図２に示すオントロジースキーマー経路データベースの構造を示す例示図である。
【００４０】
図２を参照すると、インスタンス経路の探索装置２００は、インスタンス間関係情報が格納されたオントロジーインスタンスデータベース２０２と、クラス間関係情報が格納されたオントロジースキーマーデータベース２０４と、オントロジースキーマー経路データベース２０６と、ユーザーインタフェース部２０８と、インスタンス対生成部２１０と、クラス対抽出部２１２と、オントロジースキーマー経路取得部２１４と、インスタンス経路探索部２１６と、視覚化部２１８と、オントロジースキーマー経路生成部２２０と、を備える。
【００４１】
オントロジーインスタンスデータベース２０２には、図３に示すように、インスタンスとインスタンス間の関係が登録されている。
【００４２】
図３に基づき、オントロジーインスタンスデータベース２０２について説明すると、オントロジーインスタンスデータベース２０２には、図３（ａ）に示すように、インスタンスについての主体（ｓｕｂｊｅｃｔ）、オブジェクト（ｏｂｊｅｃｔ）、述語（ｐｒｅｄｉｃａｔｅ）が定義されている。例えば、「学校１」が主体であり、「教授１」がオブジェクトである場合に、「学校１」と「教授１」は、「学校−教授」となる述語の関係で定義されている。
【００４３】
このため、両インスタンスの関係は、述語を介して形成される。
【００４４】
図３（ａ）のテーブルをグラフ状に視覚化させると、図３（ｂ）に示すように、各インスタンスの関係がグラフ状に形成される。
【００４５】
オントロジースキーマーデータベース２０４には、図４に示すように、クラスとクラスとの間の関係が登録されている。
【００４６】
図４に基づき、オントロジースキーマーデータベース２０４について説明すると、オントロジースキーマーデータベース２０４には、図４（ａ）に示すように、クラスについての主体（ｓｕｂｊｅｃｔ）、オブジェクト（ｏｂｊｅｃｔ）、述語（ｐｒｅｄｉｃａｔｅ）が定義されている。即ち、両クラスの関係は、述語を介して形成される。
【００４７】
図４（ａ）のテーブルをグラフ状に視覚化させると、図４（ｂ）に示すように、各クラスの関係がグラフ状に形成される。
【００４８】
オントロジースキーマー経路データベース２０６には、オントロジースキーマーデータベース２０４に格納された全てのクラスについて、クラス間オントロジースキーマー経路が格納されている。
【００４９】
図５に基づき、オントロジースキーマー経路データベース２０６について説明すると、オントロジースキーマー経路データベース２０６には、開始クラスと終了クラスについての経路、経路の長さなどが登録されている。
【００５０】
ユーザーインタフェース部２０８には、ユーザーからの２以上のキーワードが入力される。ユーザーインタフェース部２０８には、通信網又は既設の入力部を介してユーザー端末からキーワードが入力される。
【００５１】
インスタンス対生成部２１０は、入力されたキーワードのインスタンスをオントロジーインスタンスデータベース２０２から取得して、インスタンス対を生成する。即ち、インスタンス対生成部２１０は、入力されたキーワードのインスタンスを取得し、取得されたインスタンスについて２つずつ対をなすインスタンス対を生成する。
【００５２】
例えば、取得されたインスタンスがＡ、Ｂ、Ｃである場合に、インスタンス対生成部２１０は、Ａ−Ｂ、Ａ−Ｃ、Ｂ−Ｃの３つのインスタンス対を生成する。
【００５３】
クラス対抽出部２１２は、オントロジーインスタンスデータベース２０２から、生成された各インスタンス対に対応するクラス対をそれぞれ抽出する。
【００５４】
例えば、「学校２−教授３」がインスタンスである場合に、クラス対抽出部２１２は、オントロジーインスタンスデータベース２０２を検索して、「学校２」に対応する「学校」、「教授３」に対応する「教授」を抽出して「学校−教授」のクラス対を抽出する。
【００５５】
より具体的に、クラス対抽出部２１２は、オントロジーインスタンスデータベース２０２を検索して、主体（ｓｕｂｊｅｃｔ）の値がインスタンスであり、述語（ｐｒｅｄｉｃａｔｅ）の値がｒｄｆ：ｔｙｐｅであるオブジェクト（ｏｂｊｅｃｔ）の値を抽出し、抽出されたオブジェクトの値をクラスとして抽出する。
【００５６】
オントロジースキーマー経路取得部２１４は、オントロジースキーマー経路データベース２０６から、各クラス対についてのオントロジースキーマー経路をそれぞれ取得する。
【００５７】
即ち、オントロジースキーマー経路データベース２０６には、各クラス対についてのオントロジースキーマー経路が格納されているため、オントロジースキーマー経路取得部２１４は、オントロジースキーマー経路データベース２０６を検索して、当該クラス対についてのオントロジースキーマー経路を取得することができる。
【００５８】
換言すると、オントロジースキーマー経路取得部２１４は、オントロジースキーマー経路データベース２０６を検索して、各クラス対に相当する開始クラスと終了クラスが先頭又は末尾に連結されたオントロジースキーマー経路をクラス対ごとに取得する。
【００５９】
インスタンス経路探索部２１６は、取得された各オントロジースキーマー経路を用いて、インスタンス経路をそれぞれ探索する。このような役割を果たすインスタンス経路探索部２１６は、ジョインスケジュール生成モジュール２１６ａと、インスタンス探索モジュール２１６ｂと、インスタンス経路生成モジュール２１６ｃと、を備える。
【００６０】
ジョインスケジュール生成モジュール２１６ａは、オントロジースキーマー経路における開始クラスと終了クラスを、これらに対応する第１のインスタンスと第２のインスタンスに置き換え、オントロジースキーマー経路を半分に分けて、第１のインスタンスを含む第１のジョインスケジュールと、第２のインスタンスを含む第２のジョインスケジュールとを生成する。
【００６１】
インスタンス探索モジュール２１６ｂは、第１又は第２のジョインスケジュールに基づいて、第１のインスタンス又は第２のインスタンスと連結されたクラスが存在する場合に、その連結されたクラスに含まれているインスタンスのうち、第１のインスタンス又は第２のインスタンスと連結された少なくとも一つ以上のインスタンスを抽出する。
【００６２】
また、インスタンス探索モジュール２１６ｂは、第１又は第２のジョインスケジュールにおいて、第１又は第２のインスタンスが少なくとも一つのクラスと連結された場合に、第１又は第２のインスタンスと直結された第１又は第２のクラスのインスタンスのうち、第１又は第２のインスタンスと連結された少なくとも一つのインスタンスを抽出する。次いで、インスタンス探索モジュール２１６ｂは、第１又は第２のクラスと連結された他のクラスが存在する場合に、他のクラスのインスタンスのうち、抽出されたインスタンスとそれぞれ連結された少なくとも一つのインスタンスを抽出した後、第１又は第２のインスタンスと抽出されたインスタンスとを連結関係に従って連結して少なくとも一つの第１又は第２のインスタンス経路を生成する。
【００６３】
また、インスタンス探索モジュール２１６ｂは、第１及び第２のジョインスケジュールにおいて、第１及び第２のクラスと連結された他のクラスが存在しない場合に、第１のインスタンスと第２のインスタンスのみが連結されたインスタンス経路を生成する。
【００６４】
更に、インスタンス経路探索部２１６は、ユーザーインタフェース部２０８を介してキーワードと一緒にインスタンス経路の長さ、出力数、応答時間のうちの少なくとも一つを含む経路探索条件が入力された場合に、この経路探索条件に見合うインスタンス経路を探索する。
【００６５】
オントロジースキーマー経路生成部２２０は、オントロジースキーマーデータベース２０４に格納された全てのクラスについて、クラス間オントロジースキーマー経路を探索して、オントロジースキーマー経路データベース２０６を構築する。
【００６６】
また、オントロジースキーマー経路生成部２２０は、オントロジースキーマーデータベース２０４の更新が感知された場合に、更新されたクラスのオントロジースキーマー経路を探索して、オントロジースキーマー経路データベース２０６を更新する。
【００６７】
視覚化部２１８は、インスタンス経路探索部２１６において探索されたインスタンス経路をグラフ状、一覧状に視覚化させる。
【００６８】
図６は、本発明の一実施形態によるインスタンス経路の探索装置がインスタンス経路を探索する方法を示すフローチャートである。
【００６９】
図６を参照すると、インスタンス経路の探索装置は、オントロジースキーマーデータベースに格納された全てのクラスについて、クラス間オントロジースキーマー経路を探索して、オントロジースキーマー経路データベースを構築する（ステップＳ６０２）。
【００７０】
以下、図６に基づき、インスタンス経路の探索装置がオントロジースキーマー経路データベースを構築する方法について説明する。
【００７１】
ステップＳ６０２が行われた後、ユーザーから２以上のキーワードが入力された場合（ステップＳ６０４）、インスタンス経路の探索装置は、キーワードについてのインスタンス対を生成する（ステップＳ６０６）。即ち、インスタンス経路の探索装置は、オントロジーインスタンスデータベースから、入力されたキーワードのインスタンスを取得し、取得されたインスタンスについて２つずつ対をなすインスタンス対を生成する。
【００７２】
ステップＳ６０６が行われた後、インスタンス経路の探索装置は、オントロジーインスタンスデータベースから、各インスタンス対に対応するクラス対をそれぞれ抽出する（ステップＳ６０８）。
【００７３】
ステップＳ６０８が行われた後、インスタンス経路の探索装置は、オントロジースキーマー経路データベースから、各クラス対についてのオントロジースキーマー経路をそれぞれ取得する（ステップＳ６１０）。即ち、インスタンス経路の探索装置は、オントロジースキーマー経路データベースを検索して、各クラス対に相当する開始クラスと終了クラスが先頭又は末尾に連結されたオントロジースキーマー経路をクラス対ごとに取得する。
【００７４】
次いで、インスタンス経路の探索装置は、各オントロジースキーマー経路を用いて、インスタンス経路をそれぞれ探索する（ステップＳ６１２）。インスタンス経路の探索装置がオントロジースキーマー経路を用いてインスタンス経路を探索する方法については、図２３を参照して後に説明する。
【００７５】
ステップＳ６１２が行われた後、インスタンス経路の探索装置は、探索されたインスタンス経路を視覚化させる（ステップＳ６１４）。
【００７６】
図７は、本発明の一実施形態によるインスタンス経路の探索装置がオントロジースキーマー経路データベースを構築する方法を示すフローチャートである。
【００７７】
図７を参照すると、インスタンス経路の探索装置は、経路の生成のための任意の基準クラスを選択するために、最初のスタック（Ｎ＝１）を生成し（ステップＳ７０２）、オントロジースキーマーデータベースから任意のクラスを取得して、現在のスタックに格納する（ステップＳ７０４）。即ち、インスタンス経路の探索装置は、オントロジースキーマーデータベースから、ｐｒｅｄｉｃａｔｅがｒｄｆ：ｔｙｐｅであり、ｏｂｊｅｃｔがｒｄｆｓ：ｃｌａｓｓであるｔｕｐｌｅのｓｕｂｊｅｃｔを取得して、最初のスタックに格納（ＰＵＳＨ）する。ここで、取得されたｓｕｂｊｅｃｔは、クラスであり、Ｎは、スタックの番号である。
【００７８】
ステップＳ７０４が行われた後、インスタンス経路の探索装置は、現在のスタックにおいて任意のクラスが選択（ＰＯＰ）されると（ステップＳ７０６）、オントロジースキーマーデータベースを検索して、選択されたクラスと連結関係を有するクラスが存在するか否かを判断する（ステップＳ７０８）。
【００７９】
ステップＳ７０８における判断の結果、選択されたクラスと連結関係を有するクラスが存在する場合に、インスタンス経路の探索装置は、スタックを１だけインクリメントさせ（ステップＳ７１０）、オントロジースキーマーデータベースから、選択されたクラスと連結関係を有するクラスを全て取得して、スタック番号が１だけインクリメントされたスタックに格納（ＰＵＳＨ）する（ステップＳ７１２）。即ち、インスタンス経路の探索装置は、現在のスタックに格納された任意の１クラスを選択し、選択されたクラスと関係がある全てのクラスを取得するために、オントロジースキーマーデータベースから、選択されたクラスをｏｂｊｅｃｔとして有し、ｐｒｅｄｉｃａｔｅがｒｄｆｓ：ｄｏｍａｉｎ又はｒｄｆｓ：ｒａｎｇｅである全てのｔｕｐｌｅのｓｕｂｊｅｃｔを取得し、取得されたｓｕｂｊｅｃｔをｓｕｂｊｅｃｔとして有し、ｐｒｅｄｉｃａｔｅがｒｄｆｓ：ｄｏｍａｉｎ又はｒｄｆｓ：ｒａｎｇｅである全てのｔｕｐｌｅのｏｂｊｅｃｔを取得して、次のスタックに格納する。例えば、最初のスタックにおいて、図４の「学校」クラスが選択された場合、次のスタックである第２番目のスタックには、「教授」、「講座」、「学科」、「部署」のクラスが格納される。
【００８０】
ステップＳ７１２が行われた後、インスタンス経路の探索装置は、現在のスタックに格納されたクラスのうちの任意の１クラスを選択し（ＰＯＰ）（ステップＳ７１４）、最初のスタックにおいて選択されたクラスから現在のスタックにおいて選択されたクラスまでの全ての経路を生成する（ステップＳ７１６）。例えば、図４に示すように、最初のスタックに「学校」が格納され、「学校」クラスについて、「教授」、「講座」、「学科」、「部署」を含む２番目のスタックが生成された後に「教授」クラスが選択された場合、インスタンス経路の探索装置は、「学校−教授」の経路を生成する。
【００８１】
もし、２番目のスタックにおいて選択された「教授」のクラスについて、「研究実績」、「講座」、「学校」を含む３番目のスタックを生成した後に「講座」クラスが選択された場合、インスタンス経路の探索装置は、「学校−教授−講座」、「教授−講座」の経路を生成する。
【００８２】
ステップＳ７１６が行われた後、インスタンス経路の探索装置は、ステップＳ７１６において生成された経路が循環経路であるか否かを判断する（ステップＳ７１８）。インスタンス経路の探索装置は、オントロジースキーマー経路の生成に際して、既存に生成された経路を再探索するコストを省くために、生成された経路が循環経路であるか否かを判断する。このとき、インスタンス経路の探索装置は、「Ａ−Ｃ−Ｄ−Ｅ−Ａ」のように最初のノードと最後のノードが同じ場合に、循環経路であると判断する。
【００８３】
ステップＳ７１８における判断の結果、生成された経路が循環経路である場合に、インスタンス経路の探索装置は、循環経路をオントロジースキーマー経路データベースに格納し（ステップＳ７２０）、現在のスタックに格納された全てのクラスがオントロジースキーマー経路の生成のために考慮されたか否かを判断する（ステップＳ７２２）。このとき、インスタンス経路の探索装置は、循環経路をオントロジースキーマー経路としてオントロジースキーマー経路データベースに格納しながら、当該経路が循環経路であることを表示する。
【００８４】
ステップＳ７２２における判断の結果、全てのクラスが考慮された場合に、インスタンス経路の探索装置は、現在のスタックが２番目のスタックであるか否かを判断する（ステップＳ７２４）。
【００８５】
ステップＳ７２４における判断の結果、現在のスタックが２番目のスタックである場合、インスタンス経路の探索装置は、オントロジースキーマーデータベースの全てのクラスがオントロジースキーマー経路の生成のために考慮されたか否かを判断する（ステップＳ７２６）。
【００８６】
ステップＳ７２６における判断の結果、全てのクラスがオントロジースキーマー経路の生成のために考慮された場合に、インスタンス経路の探索装置は、循環経路に含まれている各クラスについての新たな経路を生成して、オントロジースキーマー経路データベースに格納する（ステップＳ７２８）。例えば、「Ａ−Ｅ−Ｃ−Ｂ−Ａ」循環経路の場合に、インスタンス経路の探索装置は、循環経路に含まれているＥ、Ｃ、Ｂの各クラスを開始クラス又は終了クラスとする経路を生成する。このとき、生成された経路としては、「Ｂ−Ａ−Ｅ−Ｃ」のようにＢを開始クラスとする経路が挙げられる。
【００８７】
もし、ステップＳ７２６における判断の結果、オントロジースキーマーデータベースの全てのクラスがオントロジースキーマー経路の生成のために考慮されていない場合に、インスタンス経路の探索装置は、オントロジースキーマーデータベースから、未考慮のクラスを取得して、最初のスタックに格納し（ステップＳ７３０）、ステップＳ７０６以降のステップを継続する。
【００８８】
即ち、オントロジースキーマーデータベースには、グラフ、表などの様々な形式でクラスが格納されている。このため、インスタンス経路の探索装置は、他の形式で格納された全てのクラスについて経路を生成する必要があるため、オントロジースキーマーデータベースに格納された全てのクラスに関する経路情報がオントロジースキーマー経路データベースに格納されるまで上記ステップを繰り返し行う。
【００８９】
もし、ステップＳ７２４における判断の結果、現在のスタックが２番目より後に作成されたスタックである場合に、インスタンス経路の探索装置は、現在のスタック前に作成されたスタックにおいて次のクラスを選択し（ステップＳ７３２）、ステップＳ７０８以降のステップを継続して行う。
【００９０】
もし、ステップＳ７２２における判断の結果、現在のスタックに格納された全てのクラスが考慮されていない場合に、インスタンス経路の探索装置は、ステップＳ７０６以降のステップを継続して行う。
【００９１】
もし、ステップＳ７１８における判断の結果、生成された経路が循環経路ではない場合に、インスタンス経路の探索装置は、生成された経路又は逆方向の経路と同じ経路がオントロジースキーマー経路データベースに存在するか否かを判断する（ステップＳ７３４）。即ち、インスタンス経路の探索装置は、オントロジースキーマー経路データベースに同じ経路情報が重複して格納されることを防ぐために、生成された経路又は逆方向の経路と同じ経路がオントロジースキーマー経路データベースに存在するか否かを判断する。
【００９２】
ステップＳ７３４における判断の結果、同じ経路が存在する場合に、インスタンス経路の探索装置は、生成された経路をオントロジースキーマー経路データベースに格納することなく（ステップＳ７３６）、ステップＳ７０６以降のステップを継続して行う。
【００９３】
例えば、図５を参照すると、生成された経路が「研究実績−教授」である場合に、オントロジースキーマー経路データベースに「教授−研究実績」経路が存在するため、インスタンス経路の探索装置は、「研究実績−教授」経路を格納しない。
【００９４】
もし、ステップＳ７３４における判断の結果、同じ経路が存在しない場合に、インスタンス経路の探索装置は、生成された経路をオントロジースキーマー経路データベースに格納する（ステップＳ７３８）。
【００９５】
以下、図８〜図２２に基づき、上記のインスタンス経路の探索装置がオントロジースキーマー経路データベースを構築する方法について詳述する。
【００９６】
図８〜図２２は、本発明の一実施形態によるインスタンス経路の探索装置がオントロジースキーマー経路データベースを構築する方法を説明するための図である。
【００９７】
図８〜図２２を参照すると、オントロジースキーマーデータベースに格納されたクラスとこれらの間に図８に示す関係が成り立つ場合に、インスタンス経路の探索装置は、図９に示すように、オントロジースキーマーデータベースから、ｐｒｅｄｉｃａｔｅがｒｄｆ：ｔｙｐｅであり、ｏｂｊｅｃｔがｒｄｆｓ：ｃｌａｓｓである最初のｔｕｐｌｅのｓｕｂｊｅｃｔ（ｎｏｄｅ）となる「Ａ」を取得する。
【００９８】
次いで、インスタンス経路の探索装置は、図１０に示すように、「Ａ」をｏｂｊｅｃｔとして有し、ｐｒｅｄｉｃａｔｅがｒｄｆｓ：ｄｏｍａｉｎ又はｒｄｆｓ：ｒａｎｇｅである全てのｔｕｐｌｅのｓｕｂｊｅｃｔ（ｅｄｇｅ）となる「ａ」、「ｄ」を取得する。また、インスタンス経路の探索装置は、取得したｓｕｂｊｅｃｔと同じｓｕｂｊｅｃｔを有し、ｐｒｅｄｉｃａｔｅがｒｄｆｓ：ｄｏｍａｉｎ又はｒｄｆｓ：ｒａｎｇｅであるｔｕｐｌｅのｏｂｊｅｃｔ（Ｎｏｄｅ）となる「Ｂ」、「Ｅ」を取得する。このとき、「Ａ」のｓｕｂｊｅｃｔと同じｓｕｂｊｅｃｔを有し、ｐｒｅｄｉｃａｔｅがｒｄｆｓ：ｄｏｍａｉｎ又はｒｄｆｓ：ｒａｎｇｅであるｔｕｐｌｅのｏｂｊｅｃｔが「Ａ」であれば、同じクラスについての関係であるため、両クラス間の探索から排除する。
【００９９】
次いで、インスタンス経路の探索装置は、図１１に示すように、「Ｂ」をｏｂｊｅｃｔとして有し、ｐｒｅｄｉｃａｔｅがｒｄｆｓ：ｄｏｍａｉｎ又はｒｄｆｓ：ｒａｎｇｅである全てのｔｕｐｌｅのｓｕｂｊｅｃｔ（ｅｄｇｅ）となる「ｂ」を取得し、また取得したｓｕｂｊｅｃｔと同じｓｕｂｊｅｃｔを有し、ｐｒｅｄｉｃａｔｅがｒｄｆｓ：ｄｏｍａｉｎ又はｒｄｆｓ：ｒａｎｇｅであるｔｕｐｌｅのｏｂｊｅｃｔ（Ｎｏｄｅ）となる「Ｃ」を取得する。このとき、「Ｂ」のｓｕｂｊｅｃｔと同じｓｕｂｊｅｃｔを有し、ｐｒｅｄｉｃａｔｅがｒｄｆｓ：ｄｏｍａｉｎ又はｒｄｆｓ：ｒａｎｇｅであるｔｕｐｌｅのｏｂｊｅｃｔが「Ａ」であれば、以前の探索において考慮された関係であるため、両クラス間の探索から排除する。
【０１００】
次いで、インスタンス経路の探索装置は、図１２に示すように、「Ｃ」をｏｂｊｅｃｔとして有し、ｐｒｅｄｉｃａｔｅがｒｄｆｓ：ｄｏｍａｉｎ又はｒｄｆｓ：ｒａｎｇｅである全てのｔｕｐｌｅのｓｕｂｊｅｃｔ（ｅｄｇｅ）となる「ｃ」、「ｅ」を取得し、また取得したｓｕｂｊｅｃｔと同じｓｕｂｊｅｃｔを有し、ｐｒｅｄｉｃａｔｅがｒｄｆｓ：ｄｏｍａｉｎ又はｒｄｆｓ：ｒａｎｇｅであるｔｕｐｌｅのｏｂｊｅｃｔ（Ｎｏｄｅ）となる「Ｄ」、「Ｅ」を取得する。
【０１０１】
次いで、インスタンス経路の探索装置は、図１３に示すように、「Ｄ」をｏｂｊｅｃｔとして有し、ｐｒｅｄｉｃａｔｅがｒｄｆｓ：ｄｏｍａｉｎ又はｒｄｆｓ：ｒａｎｇｅである全てのｔｕｐｌｅのｓｕｂｊｅｃｔ（ｅｄｇｅ）となる「ｆ」の取得を試み、また取得したｓｕｂｊｅｃｔと同じｓｕｂｊｅｃｔを有し、ｐｒｅｄｉｃａｔｅがｒｄｆｓ：ｄｏｍａｉｎ又はｒｄｆｓ：ｒａｎｇｅであるｔｕｐｌｅのｏｂｊｅｃｔ（Ｎｏｄｅ）を取得することを試みる。
【０１０２】
「ｆ」の取得を試みた結果、「Ｄ」には連関関係を有するクラスがそれ以上ないため、図１４に示すように「Ｄ」を削除し、図１５に示すように以前に訪問した「Ｅ」についての経路を生成する。
【０１０３】
次いで、インスタンス経路の探索装置は、図１６に示すように、「Ｅ」をｏｂｊｅｃｔとして有し、ｐｒｅｄｉｃａｔｅがｒｄｆｓ：ｄｏｍａｉｎ又はｒｄｆｓ：ｒａｎｇｅである全てのｔｕｐｌｅのｓｕｂｊｅｃｔ（ｅｄｇｅ）となる「ｄ」を取得し、また取得したｓｕｂｊｅｃｔと同じｓｕｂｊｅｃｔを有し、ｐｒｅｄｉｃａｔｅがｒｄｆｓ：ｄｏｍａｉｎ又はｒｄｆｓ：ｒａｎｇｅであるｔｕｐｌｅのｏｂｊｅｃｔ（Ｎｏｄｅ）となる「Ａ」を取得する。このとき、取得された「Ａ」は、循環経路を形成するため、経路型をグラフに表記した後、今後の探索から排除する。
【０１０４】
インスタンス経路の探索装置は、図１６において生成された経路が循環経路であるため、図１７に示すように、循環経路をオントロジースキーマー経路として格納し、経路の生成のために考慮されたクラスは削除する。
【０１０５】
次いで、インスタンス経路の探索装置は、図１８に示すように、「Ｅ」をｏｂｊｅｃｔとして有し、ｐｒｅｄｉｃａｔｅがｒｄｆｓ：ｄｏｍａｉｎ又はｒｄｆｓ：ｒａｎｇｅである全てのｔｕｐｌｅのｓｕｂｊｅｃｔ（ｅｄｇｅ）となる「ｅ」を取得し、また取得したｓｕｂｊｅｃｔと同じｓｕｂｊｅｃｔを有し、ｐｒｅｄｉｃａｔｅがｒｄｆｓ：ｄｏｍａｉｎ又はｒｄｆｓ：ｒａｎｇｅであるｔｕｐｌｅのｏｂｊｅｃｔ（Ｎｏｄｅ）となる「Ｃ」を取得する。このとき、取得された「Ｃ」は、逆方向の同じ経路が存在するため格納しない。
【０１０６】
次いで、インスタンス経路の探索装置は、図１９に示すように、「Ｃ」をｏｂｊｅｃｔとして有し、ｐｒｅｄｉｃａｔｅがｒｄｆｓ：ｄｏｍａｉｎ又はｒｄｆｓ：ｒａｎｇｅである全てのｔｕｐｌｅのｓｕｂｊｅｃｔ（ｅｄｇｅ）となる「ｂ」、「ｃ」を取得し、また取得したｓｕｂｊｅｃｔと同じｓｕｂｊｅｃｔを有し、ｐｒｅｄｉｃａｔｅがｒｄｆｓ：ｄｏｍａｉｎ又はｒｄｆｓ：ｒａｎｇｅであるｔｕｐｌｅのｏｂｊｅｃｔ（Ｎｏｄｅ）となる「Ｂ」、「Ｄ」を取得する。このとき、取得されたＣ−Ｂ、Ｃ−Ｄは、逆方向の同じ経路が存在するため格納しない。
【０１０７】
次いで、インスタンス経路の探索装置は、図２０に示すように、経路の生成のために考慮されたクラスは削除し、図２１に示すように、「Ｂ」をｏｂｊｅｃｔとして有し、ｐｒｅｄｉｃａｔｅがｒｄｆｓ：ｄｏｍａｉｎ又はｒｄｆｓ：ｒａｎｇｅである全てのｔｕｐｌｅのｓｕｂｊｅｃｔ（ｅｄｇｅ）となる「Ａ」を取得し、また取得したｓｕｂｊｅｃｔと同じｓｕｂｊｅｃｔを有し、ｐｒｅｄｉｃａｔｅがｒｄｆｓ：ｄｏｍａｉｎ又はｒｄｆｓ：ｒａｎｇｅであるｔｕｐｌｅのｏｂｊｅｃｔ（Ｎｏｄｅ）を取得する。
【０１０８】
上記の方法によってオントロジースキーマーデータベースに格納された全てのクラスについての二つのクラス間の経路が探索されると、インスタンス経路の探索装置は、図２２に示すように、循環経路に含まれている各クラスについての新たな経路を生成する。
【０１０９】
例えば、「Ａ−Ｅ−Ｃ−Ｂ−Ａ」循環経路の場合に、インスタンス経路の探索装置は、循環経路に含まれているＥ、Ｃ、Ｂの各クラスを開始クラス又は終了クラスとする経路を探し出して、「Ｂ−Ａ−Ｅ−Ｃ」のように「Ｂ」を開始クラスとする経路を更に生成する。
【０１１０】
上記の方法を用いて、インスタンス経路の探索装置は、オントロジースキーマーデータベースに格納された全てのクラスについての二つのクラス間の経路をそれぞれ探索する。このとき、インスタンス経路の探索装置は、クラス間の方向を考慮することなく、全ての関係を探索する。
【０１１１】
図２３は、本発明の一実施形態によるインスタンス経路の探索装置がインスタンス経路を探索する方法を示すフローチャートである。
【０１１２】
図２３を参照すると、インスタンス経路の探索装置は、オントロジースキーマー経路における開始クラスと終了クラスを、これらに対応する第１のインスタンスと第２のインスタンスに置き換える（ステップＳ８０２）。
【０１１３】
ステップＳ８０２が行われた後、インスタンス経路の探索装置は、オントロジースキーマー経路の長さが「１」であるか否かを判断する（ステップＳ８０４）。
【０１１４】
ステップＳ８０４における判断の結果、オントロジースキーマー経路の長さが「１」である場合に、インスタンス経路の探索装置は、第１のインスタンスと第２のインスタンスとが連結されたインスタンス経路を生成する（ステップＳ８０６）。
【０１１５】
もし、ステップＳ８０４における判断の結果、オントロジースキーマー経路の長さが「１」ではない場合に、インスタンス経路の探索装置は、オントロジースキーマー経路を半分に分けて、第１のインスタンスを含む第１のジョインスケジュールと、第２のインスタンスを含む第２のジョインスケジュールとを生成する（ステップＳ８０８）。
【０１１６】
ステップＳ８０８が行われた後、インスタンス経路の探索装置は、第１及び第２のジョインスケジュールに従って連関関係を有するインスタンスを抽出して、第１及び第２のインスタンス経路を探索する（ステップＳ８１０）。
【０１１７】
ステップＳ８１０が行われると、インスタンス経路の探索装置は、探索された第１及び第２のインスタンス経路を連関関係に従って連結してインスタンス経路を生成する（ステップＳ８１２）。
【０１１８】
以下、図２４に基づき、インスタンス経路の探索装置が第１及び第２のインスタンス経路を探索する方法について詳述する。
【０１１９】
図２４は、本発明の一実施形態によるインスタンス経路の探索装置がジョインスケジュールに従ってインスタンス経路を探索する方法を示すフローチャートである。
【０１２０】
図２４を参照すると、インスタンス経路の探索装置は、第１又は第２のジョインスケジュールにおいて第１又は第２のインスタンスが少なくとも一つのクラスと連結されているか否かを判断する（ステップＳ９０２）。
【０１２１】
ステップＳ９０２における判断の結果、第１又は第２のインスタンスが少なくとも一つのクラスと連結されている場合に、インスタンス経路の探索装置は、第１又は第２のインスタンスと直結された第１又は第２のクラスのインスタンスのうち、第１又は第２のインスタンスと連結関係を有する少なくとも一つのインスタンスを抽出する（ステップＳ９０４）。
【０１２２】
次いで、インスタンス経路の探索装置は、第１又は第２のジョインスケジュールにおいて第１又は第２のクラスが他のクラスと連結されているか否かを判断する（ステップＳ９０６）。
【０１２３】
ステップＳ９０６における判断の結果、第１又は第２のクラスが他のクラスと連結されている場合に、インスタンス経路の探索装置は、連結された他のクラスのインスタンスのうち、抽出されたインスタンスと連結関係を有する少なくとも一つのインスタンスを抽出する（ステップＳ９０８）。
【０１２４】
次いで、インスタンス経路の探索装置は、第１又は第２のインスタンスと抽出されたインスタンスとを連結関係に従って連結して、少なくとも一つの第１又は第２のインスタンス経路を生成する（ステップＳ９１０）。
【０１２５】
もし、ステップＳ９０６における判断の結果、第１又は第２のクラスが他のクラスと連結されていない場合に、インスタンス経路の探索装置は、第１又は第２のインスタンスと第１又は第２のクラスにおいて抽出されたインスタンスとを連結関係に従って連結して、少なくとも一つの第１又は第２のインスタンス経路を生成する（ステップＳ９１２）。
【０１２６】
例えば、クラス対が「Ｂ−Ｄ」であり、オントロジースキーマー経路が「Ｂ−Ａ−Ｅ−Ｃ−Ｄ」である場合を例にとって説明する。
【０１２７】
インスタンス経路の探索装置は、オントロジースキーマー経路を「Ｂ−Ａ−Ｅ」と「Ｃ−Ｄ」とに分け、開始クラスＢと終了クラスＤを開始クラスＢに対応するインスタンスＢ０、終了クラスＤに対応するインスタンスＤ０に置き換えて、「Ｂ０−Ａ−Ｅ」の第１のジョインスケジュール、「Ｄ０−Ｃ」の第２のジョインスケジュールを作成する。
【０１２８】
インスタンス経路の探索装置は、第１のジョインスケジュールに従ってジョインを行い、Ａクラスのインスタンスのうち、Ｂ０と連結されたインスタンスＡ０、Ａ１、Ａ２を取得する。
【０１２９】
次いで、インスタンス経路の探索装置は、「Ｅ」のインスタンスのうち、Ａ０、Ａ１、Ａ２のそれぞれと連結されたインスタンス、即ちＡ０と連結されたＥ０、Ｅ１と、Ａ１と連結されたＥ１と、Ａ２と連結されたＥ１、Ｅ３を抽出する。
【０１３０】
そして、インスタンス経路の探索装置は、第１のジョインスケジュールに従って「Ｂ０−Ａ０−Ｅ０」、「Ｂ０−Ａ０−Ｅ１」「Ｂ０−Ａ１−Ｅ１」、「Ｂ０−Ａ２−Ｅ１」、「Ｂ０−Ａ２−Ｅ３」の第１のインスタンス経路を抽出する。
【０１３１】
これと同時に、インスタンス経路の探索装置は、第２のジョインスケジュールに従って「Ｃ」クラスのインスタンスのうち、Ｄ０と連結されたインスタンスＣ０、Ｃ１を取得する。
【０１３２】
そして、インスタンス経路の探索装置は、第２のジョインスケジュールに従って「Ｄ０−Ｃ０」、「Ｄ０−Ｃ１」の第２のインスタンス経路を抽出する。
【０１３３】
次いで、インスタンス経路の探索装置は、第１のインスタンス経路と第２のインスタンス経路とを連結関係に従って連結する。即ち、Ｅ０、Ｅ１、Ｅ３とＣ０、Ｃ１との連結関係を調べてみた結果、Ｅ０がＣ０、Ｃ１と連結されている場合に、インスタンス経路の探索装置は、「Ｂ０−Ａ０−Ｅ０−Ｃ０−Ｄ０」、「Ｂ０−Ａ０−Ｅ０−Ｃ１−Ｄ０」のインスタンス経路を生成する。
【０１３４】
以上、図面を参照しながら本発明の実施形態について詳細に説明したが、本発明は、上述の実施形態に限定されるものではなく、本発明の技術的範囲から逸脱しない範囲内で多様に変更実施することが可能である。
【符号の説明】
【０１３５】
１００    ユーザー端末
２００    インスタンス経路の探索装置
２０２    オントロジーインスタンスＤＢ
２０４    オントロジースキーマーＤＢ
２０６    オントロジースキーマー経路ＤＢ
２０８    ユーザーインタフェース部
２１０    インスタンス対生成部
２１２    クラス対抽出部
２１４    オントロジースキーマー経路取得部
２１６    インスタンス経路探索部
２１６ａ    ジョインスケジュール生成モジュール
２１６ｂ    インスタンス探索モジュール
２１６ｃ    インスタンス経路生成モジュール
２１８    視覚化部
２２０    オントロジースキーマー経路生成部
【図１】
2012252694.tif 000003
【図２】
2012252694.tif 000004
【図３】
2012252694.tif 000005
【図４】
2012252694.tif 000006
【図５】
2012252694.tif 000007
【図６】
2012252694.tif 000008
【図７】
2012252694.tif 000009
【図８】
2012252694.tif 000010
【図９】
2012252694.tif 000011
【図１０】
2012252694.tif 000012
【図１１】
2012252694.tif 000013
【図１２】
2012252694.tif 000014
【図１３】
2012252694.tif 000015
【図１４】
2012252694.tif 000016
【図１５】
2012252694.tif 000017
【図１６】
2012252694.tif 000018
【図１７】
2012252694.tif 000019
【図１８】
2012252694.tif 000020
【図１９】
2012252694.tif 000021
【図２０】
2012252694.tif 000022
【図２１】
2012252694.tif 000023
【図２２】
2012252694.tif 000024
【図２３】
2012252694.tif 000025
【図２４】
2012252694.tif 000026