(57)【要約】  【課題】  オブジェクトを複数の登録場所に登録可能とするとともに、「あるオブジェクト以下」という条件を満たすオブジェクトの集合を作成する等の処理を効率的に行うことのできる情報管理プログラムおよび装置並びに方法を提供する。  【解決手段】  オブジェクト管理部１１にオブジェクトの属性を管理させるとともに、親子関係管理部１２にオブジェクトのそれぞれの親子情報を保持させる。そして、検索条件が指定された際に、検索処理部１３に親子情報を参照して検索条件で指定されたオブジェクトの親子関係を構築させる処理と、親子関係管理部１２に親子情報に基づいて全てのオブジェクトの全親子関係を構築させ、構築させた全親子関係から検索条件で指定されたオブジェクトの親子関係を抽出させる処理とを切り替えて実行する。【選択図】        図１
2007219621.tif 000002
【特許請求の範囲】
【請求項１】
複数の登録場所に登録可能なオブジェクトを管理する情報管理プログラムであって、
オブジェクトの属性を管理する属性管理処理と、
前記属性管理処理で属性が管理されるオブジェクトのそれぞれの親子情報を保持する親子関係管理処理と、
前記親子関係管理処理で保持される親子情報に基づいて前記オブジェクトの全親子関係を構築する親子関係構築処理と、
指定された検索条件に基づいて、前記親子関係管理処理で保持される親子情報を参照して、該検索条件で指定されたオブジェクトの親子関係を構築する検索処理と、
前記検索処理で親子関係を構築する処理と、前記親子関係構築処理に全親子関係を構築させた結果から所望の親子関係を抽出する処理とを切り替える切替処理と
をコンピュータに実行させることを特徴とする情報管理プログラム。
【請求項２】
前記検索処理で構築される親子関係に含まれるオブジェクトの数を予測する予測処理をさらに前記コンピュータに実行させ、
前記切替処理は、前記予測処理によって予測されたオブジェクトの数に応じて、前記検索処理で親子関係を構築する処理と、前記親子関係構築処理に全親子関係を構築させた結果から所望の親子関係を抽出する処理とを切り替える
ことを特徴とする請求項１記載の情報管理プログラム。
【請求項３】
複数の登録場所に登録可能なオブジェクトを管理する情報管理装置において、
オブジェクトの属性を管理する属性管理手段と、
前記属性管理手段で属性が管理されるオブジェクトのそれぞれの親子情報を保持するとともに、該保持している親子情報に基づいて前記オブジェクトの全親子関係を構築する親子関係管理手段と、
指定された検索条件に基づいて、前記親子関係管理手段に保持された親子情報を参照して、該検索条件で指定されたオブジェクトの親子関係を構築する検索処理手段と
を具備し、
前記検索手段は、該検索手段自体で親子関係を構築する処理と、前記親子関係管理手段に全親子関係を構築させた結果から所望の親子関係を抽出する処理とを切り替えて実行する
ことを特徴とする情報管理装置。
【請求項４】
複数の登録場所に登録可能なオブジェクトを管理する情報管理方法において、
オブジェクトの属性を属性管理手段に管理させるとともに、前記属性管理手段で属性が管理されるオブジェクトのそれぞれの親子情報を親子関係管理手段に保持させ、
検索条件が指定された際に、前記親子情報を参照して、該検索条件で指定されたオブジェクトの親子関係を検索手段に構築させる処理と、前記親子情報に基づいて前記オブジェクトの全親子関係を親子関係構築手段に構築させる処理とを切り替えて実行する
ことを特徴とする情報管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報管理プログラムおよび装置並びに方法に関し、特に、オブジェクトに複数の登録場所を許可した場合に、所定の条件を満たすオブジェクトの集合を作成する情報管理プログラムおよび装置並びに方法に関する。
【背景技術】
【０００２】
情報管理装置等においては、情報を管理する際に、フォルダを作成してファイルを分類して格納する等のように、オブジェクトの管理を階層構造で行うことが多い。この場合、オブジェクトの登録場所は１箇所だけであるといった制限があることが多い。
【０００３】
オブジェクトの登録場所は１箇所だけであるといった制限がある情報管理装置であれば、オブジェクトにルートからのパスを保持しておくことで、「あるオブジェクト以下」という条件を満たすオブジェクトの集合を作成することは、パスの前方一致により容易であり、オブジェクトの移動時には、移動するオブジェクト以下のオブジェクトのパスの前方一致部分を更新するだけでよい。
【０００４】
しかしながら、オブジェクトの登録場所は１箇所だけであるといった制限があると、ルートからのたどり方（パス）が１つだけとなるため、オブジェクトの分類を柔軟に行おうとすると、オブジェクトをコピーする必要があり、オブジェクトの管理が困難となる。
【０００５】
このような制限のもとで、オブジェクトの分類を柔軟に行う方法としては、ショートカット（シンボリックリンク）オブジェクトの導入が考えられる。ショートカットオブジェクトを導入したとしても、「あるオブジェクト以下」という条件を満たすオブジェクトの集合を作成することは、パスの前方一致により作成した集合に、集合に含まれるショートカットオブジェクトのリンク先オブジェクト以下のオブジェクトの集合を追加ことを繰り返すことにより、容易であり、オブジェクトの移動時の処理は、ショートカットオブジェクトの導入による変更はない。
【０００６】
しかしながら、ショートカットオブジェクトは、あくまでリンク先オブジェクトとは別物であり、ショートカットオブジェクトに対する変更操作は、ショートカットオブジェクト自身に対するものなのか、リンク先オブジェクトに対するものなのかを決めなくてはならないといった課題がある。また、リンク先オブジェクトを削除するときにはショートカットオブジェクトも削除するかどうかを決めなくてはならないといった課題もある。
【０００７】
また、似たような方法として、ハードリンクがあるが、これは、ファイルの実体は１つで、複数の文書オブジェクトから１つのファイル実体への参照を持たせるというもので、フォルダオブジェクトには適用できない。
【０００８】
そこで、オブジェクトの分類を柔軟に行うためには、オブジェクトの登録場所は１箇所だけであるといった制限を無くすことが考えられる。
【０００９】
ところが、この場合には、保持しなければならないパスが複数になり、登録場所の組み合わせによっては膨大な数になってしまうし、ループの対処も必要である。また、オブジェクトの移動時には、単純な置き換えではなく、保持するパスの増減が必要である。そのため、「あるオブジェクト以下」という条件を満たすオブジェクトの集合を作成することを、パスを用いて行うことは難しい。
【００１０】
なお、特許文献１には、オブジェクトの属性として子供のオブジェクトのリストを保持するという方法で、複数の登録場所を許す情報管理システムを実現する構成が記載されている。
【特許文献１】特開２００４−１３３５０５号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
前述のように、オブジェクトの分類を柔軟に行うために、オブジェクトの登録場所は１箇所だけであるといった制限を無くした場合には、保持しなければならないパスが複数になる等の課題がある。
【００１２】
また、特許文献１に記載された技術を利用した場合でも、当該文献には、「あるオブジェクト以下」という条件を満たすオブジェクトの集合を作成する方法については記載されておらず、この構成では、あるオブジェクトの子供を問い合わせ、また、その子供を問い合わせる、ということを繰り返し、「あるオブジェクト以下」という条件を満たすオブジェクトの集合を作成するしかないと考えられる。
【００１３】
しかしながら、この方法でオブジェクトの集合を作成する場合には、オブジェクトの親子関係の階層が深くなると、問い合わせの回数が膨大になり、処理に時間がかかってしまうこととなる。
【００１４】
そこで、本発明は、オブジェクトを複数の登録場所に登録可能とするとともに、「あるオブジェクト以下」という条件を満たすオブジェクトの集合を作成する等の処理を効率的に行うことのできる情報管理プログラムおよび装置並びに方法を提供することを目的とする。
【課題を解決するための手段】
【００１５】
上述した目的を達成するため、請求項１の発明は、複数の登録場所に登録可能なオブジェクトを管理する情報管理プログラムであって、オブジェクトの属性を管理する属性管理処理と、前記属性管理処理で属性が管理されるオブジェクトのそれぞれの親子情報を保持する親子関係管理処理と、前記親子関係管理処理で保持される親子情報に基づいて前記オブジェクトの全親子関係を構築する親子関係構築処理と、指定された検索条件に基づいて、前記親子関係管理処理で保持される親子情報を参照して、該検索条件で指定されたオブジェクトの親子関係を構築する検索処理と、前記検索処理で親子関係を構築する処理と、前記親子関係構築処理に全親子関係を構築させた結果から所望の親子関係を抽出する処理とを切り替える切替処理とをコンピュータに実行させることを特徴とする。
【００１６】
また、請求項２の発明は、請求項１の発明において、前記検索処理で構築される親子関係に含まれるオブジェクトの数を予測する予測処理をさらに前記コンピュータに実行させ、前記切替処理は、前記予測処理によって予測されたオブジェクトの数に応じて、前記検索処理で親子関係を構築する処理と、前記親子関係構築処理に全親子関係を構築させた結果から所望の親子関係を抽出する処理とを切り替えることを特徴とする。
【００１７】
また、請求項３の発明は、複数の登録場所に登録可能なオブジェクトを管理する情報管理装置において、オブジェクトの属性を管理する属性管理手段と、前記属性管理手段で属性が管理されるオブジェクトのそれぞれの親子情報を保持するとともに、該保持している親子情報に基づいて前記オブジェクトの全親子関係を構築する親子関係管理手段と、指定された検索条件に基づいて、前記親子関係管理手段に保持された親子情報を参照して、該検索条件で指定されたオブジェクトの親子関係を構築する検索処理手段とを具備し、前記検索手段は、該検索手段自体で親子関係を構築する処理と、前記親子関係管理手段に全親子関係を構築させた結果から所望の親子関係を抽出する処理とを切り替えて実行することを特徴とする。
【００１８】
また、請求項４の発明は、複数の登録場所に登録可能なオブジェクトを管理する情報管理方法において、オブジェクトの属性を属性管理手段に管理させるとともに、前記属性管理手段で属性が管理されるオブジェクトのそれぞれの親子情報を親子関係管理手段に保持させ、検索条件が指定された際に、前記親子情報を参照して、該検索条件で指定されたオブジェクトの親子関係を検索手段に構築させる処理と、前記親子情報に基づいて前記オブジェクトの全親子関係を親子関係構築手段に構築させる処理とを切り替えて実行することを特徴とする。
【発明の効果】
【００１９】
本発明によれば、オブジェクトを複数の登録場所に登録可能とするとともに、「あるオブジェクト以下」という条件を満たすオブジェクトの集合を作成する等の処理を効率的に行うことが可能となる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明に係る情報管理プログラムおよび装置並びに方法の一実施の形態について、添付図面を参照して詳細に説明する。
【実施例】
【００２１】
図１は、本発明を適用した情報管理装置の機能的な構成を示すブロック図であり、図２は、情報管理装置の構成例を示すブロック図である。
【００２２】
図１に示すように、情報管理装置１は、オブジェクト管理部１１と親子関係管理部１２、検索処理部１３を具備して構成される。
【００２３】
この情報管理装置１は、例えば、図２に示すように、ＣＰＵ（Central Processing Unit）１５と、ＲＯＭ（Read Only Memory）１６、ＲＡＭ（Random Access Memory）１７、ＨＤＤ（Hard Disk Drive）１８を具備して構成される。この図２に示した情報管理装置１の構成は、一般的なコンピュータと同様の構成であり、情報処理装置１は、ＣＰＵ１５を動作させるプログラムにより、図１に示す各機能部を実現する。
【００２４】
オブジェクト管理部１１は、管理対象となるオブジェクトの属性等を管理する。この属性等は、実際の構成では、ＨＤＤ１８に記憶される。なお、このオブジェクト管理部１１で管理する属性には、オブジェクトの親子関係は含まれていない。オブジェクトとは、情報管理装置が管理対象とする情報であり、例えば、電子的な文書、図面、画像、音声データ、情報の登録場所であるフォルダなどが該当する。
【００２５】
親子関係管理部１２は、管理対象となるオブジェクトの親子関係を管理する。オブジェクトの親子関係は、図３に示すように、親となるオブジェクトの識別子と子となるオブジェクトの識別子とを組にすることで、保持される。この親子関係は、実際の構成では、ＨＤＤ１８に記憶される。
【００２６】
また、親子関係管理部１２は、保持している親オブジェクトの識別子と子オブジェクトの識別子に基づいて、オブジェクトの親子関係を構築する。例えば、図３に示した親子関係からは、図４に示すような親子関係が構築される。この親子関係の構築処理は、ＣＰＵ１１が、ＲＯＭ１６やＲＡＭ１７等を利用して動作することで実現される。
【００２７】
検索処理部１３は、ユーザ等から指定された検索条件にしたがって、オブジェクトの集合を作成する。この検索処理は、ＣＰＵ１１が、ＲＯＭ１６やＲＡＭ１７等を利用して動作することで実現される。
【００２８】
次に、検索処理部１３が実行する処理について説明するが、ここでは、「あるオブジェクト以下」という検索条件に基づいてオブジェクトの集合を作成する場合の処理について説明する。図５および図６は、検索処理部１３が実行する処理の流れを示すフローチャートである。
【００２９】
検索処理部１３は、処理を開始すると、まず、「あるオブジェクト以下」という検索条件を取得する（ステップ１０１）。「あるオブジェクト」とは、管理対象の全オブジェクトの中からユーザ等が任意に指定したオブジェクトである。
【００３０】
次に、検索処理部１３は、オブジェクト管理部１１に、対象オブジェクトの属性を問い合わせて確認する（ステップ１０２）。対象オブジェクトとは、検索処理部１３がその時点で処理対象としているオブジェクトであり、この時点では、ユーザ等に指定された「あるオブジェクト」が対象オブジェクトに該当する。
【００３１】
確認の結果、対象オブジェクトの属性がコンテナオブジェクトであった場合には（ステップ１０３でＹＥＳ）、検索処理部１３は、親子関係管理部１２に、対象オブジェクトの子オブジェクトの存在を問い合わせて確認し（ステップ１０４）、確認結果に基づいて親子関係を構築する（ステップ１０５）。コンテナオブジェクトとは、別のオブジェクトの登録場所となることのできるオブジェクト、つまり、子を持つことのできるオブジェクトであり、例えば、フォルダオブジェクトがコンテナオブジェクトに該当する。
【００３２】
続いて、検索処理部１３は、親子関係管理部１２に対して問い合わせを行った回数が、予め定められた所定の回数未満であった場合には（ステップ１０６でＮＯ）、ステップ１０５で構築した親子関係に未確認のオブジェクトがあれば（ステップ１０７でＹＥＳ）、対象オブジェクトを未確認のオブジェクトに変更して（ステップ１０８）、ステップ１０２の処理に戻り、同様の処理を繰り返す。
【００３３】
未確認のオブジェクトとは、親子関係管理部１２に対して子オブジェクトの存在を問い合わせていないオブジェクトであり、ステップ１０４で確認された子オブジェクトを含む。したがって、最初に子オブジェクトの存在を確認した「あるオブジェクト」に対する子オブジェクトが存在しない場合や、全てのオブジェクトの子オブジェクトの存在を確認した場合には（ステップ１０７でＮＯ）、検索処理部１３は、処理を終了する。
【００３４】
一方、検索処理部１３は、親子関係管理部１２に対して問い合わせを行った回数が、予め定められた所定の回数に達すると（ステップ１０６でＹＥＳ）、親子関係管理部１２に対してコンテナオブジェクトの総数を問い合わせて確認し（ステップ１０９）、確認したコンテナオブジェクトの総数から閾値を算出する（ステップ１１０）。この閾値は、コンテナオブジェクトの総数の一定割合数若しくはコンテナオブジェクトの総数の関数として算出することができるもので、情報管理装置１の利用形態等に基づいて予め定められた方法で算出される。
【００３５】
続いて、検索処理部１３は、既に構築した親子関係（ステップ１０５で構築したもの）から、当該親子関係に含まれるコンテナオブジェクトの数と、そのうち子が存在しないコンテナオブジェクトの数から、検索されるべきコンテナオブジェクトの数（あるオブジェクト以下のコンテナオブジェクトの数）を予測する。検索されるべきコンテナオブジェクトの数は、情報管理装置１の利用形態等によって異なるため、この予測は、情報管理装置１の利用形態等に基づいて予め定められた計算式を利用して算出するか、テーブルを参照して行うこととなる。
【００３６】
そして、予測したコンテナオブジェクトの数が、ステップ１１０で算出した閾値よりも大きければ（ステップ１１２でＹＥＳ）、検索処理部１３は、親子関係管理部１２に親子関係の構築を依頼し（ステップ１１３）、親子関係管理部１２が構築した親子関係を取得する（ステップ１１４）。このとき、親子関係管理部１２では、保持している親子関係から全オブジェクトの親子関係を構築するが、その処理に要する負荷は、全てのコンテナオブジェクトの数に比例する。
【００３７】
一方、予測したコンテナオブジェクトの数が、ステップ１１０で算出した閾値以下であれば（ステップ１１２でＮＯ）、検索処理部１３は、ステップ１０６で親子関係管理部１２に対して問い合わせを行った回数が予め定められた所定の回数に達したと判断する前と同様の処理を行う。この処理では、検索処理部１３は、ステップ１０５で構築した親子関係に未確認のオブジェクトがあれば（ステップ１１５でＹＥＳ）、対象オブジェクトを未確認のオブジェクトに変更し（ステップ１１６）、オブジェクト管理部１１に、対象オブジェクトの属性を問い合わせて確認する（ステップ１１７）。そして、対象オブジェクトの属性がコンテナオブジェクトであった場合には（ステップ１１８でＹＥＳ）、検索処理部１３は、親子関係管理部１２に、対象オブジェクトの子オブジェクトの存在を問い合わせて確認し（ステップ１１９）、確認結果に基づいて親子関係を構築する（ステップ１２０）。
【００３８】
この処理は、ステップ１０５およびステップ１２０で構築した全てのオブジェクトの子オブジェクトの存在を確認するまで繰り返され（ステップ１１５でＹＥＳ）、全てのオブジェクトの子オブジェクトの存在を確認した場合には（ステップ１１５でＮＯ）、検索処理部１３は、処理を終了する。
【００３９】
このように、検索処理部１３は、検索されるべきコンテナオブジェクトの数を予測し、予測したコンテナオブジェクトの数によって、検索処理部１３自体で親子関係の構築を行うか、親子関係管理部１２で親子関係を構築するかを判断するが、これは、検索処理部１３で親子関係を構築する場合には、不要なオブジェクトを対象外とすることができるといった利点を有するが、検索されるべきコンテナオブジェクトの数が多い場合には、親子関係管理部１２への問い合わせを含む処理の負荷が、親子関係管理部１２で親子関係を構築する負荷よりも増大するためである。
【図面の簡単な説明】
【００４０】
【図１】本発明を適用した情報管理装置の機能的な構成を示すブロック図である。
【図２】情報管理装置の構成例を示すブロック図である。
【図３】親子関係管理部１２が管理するオブジェクトの親子関係の例を示した図である。
【図４】図３に示した親子関係から構築される親子関係を示した図である。
【図５】検索処理部１３が実行する処理の流れを示すフローチャートである。
【図６】検索処理部１３が実行する処理の流れを示すフローチャートである。
【符号の説明】
【００４１】
１    情報管理装置
１１    オブジェクト管理部
１２    親子関係管理部
１３    検索処理部
１５    ＣＰＵ
１６    ＲＯＭ
１７    ＲＡＭ
１８    ＨＤＤ
【図１】
2007219621.tif 000003
【図２】
2007219621.tif 000004
【図３】
2007219621.tif 000005
【図４】
2007219621.tif 000006
【図５】
2007219621.tif 000007
【図６】
2007219621.tif 000008