(57)【特許請求の範囲】
【請求項１】
情報を複製する処理の要求を利用者から受け付ける処理要求受付手段、
前記処理要求受付手段が要求を受け付けた情報を複製する処理と、当該複製を複製元の情報の変更履歴に関連付ける処理と、を実行する処理実行手段、
前記処理実行手段による処理の実行の際に、複製に関連付けられている予め定められた属性又は内容を複製元の当該属性又は内容から変更する場合に、前記処理実行手段により関連付けられた、複製と複製元の情報の変更履歴との関連付けを解除する関連付け制御手段、
複製元の情報の変更履歴が、当該複製元の情報にも複製にも関連付けられていない場合に、当該変更履歴を削除する変更履歴削除手段、
としてコンピュータを機能させることを特徴とするプログラム。
【請求項２】
前記関連付け制御手段が、複製元の情報に基づいて特定される所属組織が、利用者と所属組織との対応関係を示す情報に基づいて特定される、情報を複製する処理の要求元の利用者の所属組織ではない場合に、複製が複製元の情報の変更履歴に関連付けられて記憶手段に記憶されないよう制御する、
ことを特徴とする請求項１に記載のプログラム。
【請求項３】
前記処理実行手段が、情報を複製する際に、複製を複製元の情報の変更履歴に関連付け、
前記関連付け制御手段が、複製元の情報に関連付けられている利用者に関する情報と、情報を複製する処理の要求元の利用者に関する情報と、の関係が、予め定められた条件を充足するか否かに基づいて、前記処理実行手段により関連付けられた、複製と、複製元の情報の変更履歴と、の関連付けを解除するか否かを制御する、
ことを特徴とする請求項１又は２に記載のプログラム。
【請求項４】
情報を複製する処理の要求を利用者から受け付ける処理要求受付手段と、
前記処理要求受付手段が要求を受け付けた情報を複製する処理と、当該複製を複製元の情報の変更履歴に関連付ける処理と、を実行する処理実行手段と、
前記処理実行手段による処理の実行の際に、複製に関連付けられている予め定められた属性又は内容を複製元の当該属性又は内容から変更する場合に、前記処理実行手段により関連付けられた、複製と複製元の情報の変更履歴との関連付けを解除する関連付け制御手段と、
複製元の情報の変更履歴が、当該複製元の情報にも複製にも関連付けられていない場合に、当該変更履歴を削除する変更履歴削除手段と、
を含むことを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム及び情報処理装置に関する。
【背景技術】
【０００２】
電子文書等の情報を、その情報の変更履歴と関連付けて記憶する情報処理システムが存在する。特許文献１には、編集（加筆）を伴わない文書の複製などの派生関係や文書の内容的な変化があった場合の派生関係などの、文書の派生関係をもれなく記録・保存・管理することができる文書処理履歴管理システムが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−９９０７３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明は、複製元の情報に関連付けられている利用者と情報を複製する処理の要求元の利用者との関係によって、複製と、複製元の情報の変更履歴とが、関連付けて記憶手段に記憶されるか否かを制御するプログラム及び情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
請求項１に記載の発明は、プログラムであって、情報を複製する処理の要求を利用者から受け付ける処理要求受付手段、前記処理要求受付手段が要求を受け付けた、情報を複製する処理を実行する処理実行手段、前記処理実行手段による処理の実行の際に、複製元の情報に関連付けられている利用者に関する情報と、情報を複製する処理の要求元の利用者に関する情報と、の関係が、予め定められた条件を充足するか否かに基づいて、複製と、複製元の情報の変更履歴と、を関連付けて記憶手段に記憶させるか否かを制御する関連付け制御手段、としてコンピュータを機能させることとしたものである。
【０００６】
請求項２に記載の発明は、請求項１に記載のプログラムであって、前記関連付け制御手段が、複製元の情報に基づいて特定される所属組織が、利用者と所属組織との対応関係を示す情報に基づいて特定される、情報を複製する処理の要求元の利用者の所属組織ではない場合に、複製と、複製元の情報の変更履歴と、が関連付けられて記憶手段に記憶されないよう制御することとしたものである。
【０００７】
請求項３に記載の発明は、請求項１又は２に記載のプログラムであって、前記処理実行手段が、情報を複製する際に、複製と、複製元の情報の変更履歴と、を関連付け、前記関連付け制御手段が、複製元の情報に関連付けられている利用者に関する情報と、情報を複製する処理の要求元の利用者に関する情報と、の関係が、予め定められた条件を充足するか否かに基づいて、前記処理実行手段により関連付けられた、複製と、複製元の情報の変更履歴と、の関連付けを解除するか否かを制御することとしたものである。
【０００８】
請求項４に記載の発明は、請求項３に記載のプログラムであって、前記処理実行手段が、情報を複製するとともに複製に関連付けられている属性又は複製の内容を変更する処理を実行する場合に、前記関連付け制御手段が、前記処理実行手段により関連付けられた、複製と、複製元の情報の変更履歴と、の関連付けを解除することとしたものである。
【０００９】
請求項５に記載の発明は、請求項１から４のいずれか一項に記載のプログラムであって、複製元の情報の変更履歴が、当該複製元の情報にも複製にも関連付けられていない場合に、当該変更履歴を削除する変更履歴削除手段、として前記コンピュータをさらに機能させることとしたものである。
【００１０】
請求項６に記載の発明は、情報処理装置であって、情報を複製する処理の要求を利用者から受け付ける処理要求受付手段と、前記処理要求受付手段が要求を受け付けた、情報を複製する処理を実行する処理実行手段と、前記処理実行手段による処理の実行の際に、複製元の情報に関連付けられている利用者に関する情報と、情報を複製する処理の要求元の利用者に関する情報と、の関係が、予め定められた条件を充足するか否かに基づいて、複製と、複製元の情報の変更履歴と、を関連付けて記憶手段に記憶させるか否かを制御する関連付け制御手段と、を含むこととしたものである。
【発明の効果】
【００１１】
請求項１，６に記載の発明によれば、複製元の情報に関連付けられている利用者と情報を複製する処理の要求元の利用者との関係によって、複製と、複製元の情報の変更履歴とが、関連付けて記憶手段に記憶されるか否かを制御でき、本構成を有しない場合と比較して、変更履歴のデータサイズを低減させることができる。
【００１２】
請求項２に記載の発明によれば、複製元の情報に関連付けられている利用者の所属組織と情報を複製する処理の要求元の利用者の所属組織との関係によって、複製と、複製元の情報の変更履歴とが、関連付けて記憶手段に記憶されるか否かを制御できる。
【００１３】
請求項３に記載の発明によれば、複製と、複製元の情報の変更履歴とを関連付けられたままにするか、複製と、複製元の情報の変更履歴との関連付けを解除するかを制御できる。
【００１４】
請求項４に記載の発明によれば、情報が複製されるとともに、複製に関連付けられている属性や複製の内容が変更された場合に、複製と複製元の情報の変更履歴との関連付けが解除される。
【００１５】
請求項５に記載の発明によれば、本構成を有しない場合と比較して、変更履歴を記憶するのに必要な記憶容量を低減することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の一実施形態に係る情報処理システムのハードウェア構成の一例を示す図である。
【図２】本発明の一実施形態に係る情報処理装置により実現される機能の一例を示す機能ブロック図である。
【図３】オブジェクト情報の一例を模式的に示す図である。
【図４】変更履歴内容管理情報の一例を示す図である。
【図５】オブジェクトエントリ管理情報の一例を示す図である。
【図６】履歴リンク管理情報の一例を示す図である。
【図７】本実施形態に係る情報処理装置で行われるオブジェクト情報の新規登録処理の流れの一例を示すフロー図である。
【図８】オブジェクトＯａが登録されている状態の一例を模式的に示す図である。
【図９】本実施形態に係る情報処理装置で行われるオブジェクト情報の内容の変更処理の流れの一例を示すフロー図である。
【図１０】オブジェクトＯａが登録されている状態の一例を模式的に示す図である。
【図１１】本実施形態に係る情報処理装置で行われるオブジェクト情報の複製処理（派生タイプ）の流れの一例を示すフロー図である。
【図１２】オブジェクトＯａ及びオブジェクトＯｂが登録されている状態の一例を模式的に示す図である。
【図１３】オブジェクトＯａ及びオブジェクトＯｂが登録されている状態の一例を模式的に示す図である。
【図１４】オブジェクトＯａ及びオブジェクトＯｂが登録されている状態の一例を模式的に示す図である。
【図１５】オブジェクトＯａ、オブジェクトＯｂ及びオブジェクトＯｃが登録されている状態の一例を模式的に示す図である。
【図１６】オブジェクトＯａ、オブジェクトＯｂ及びオブジェクトＯｃが登録されている状態の一例を模式的に示す図である。
【図１７】オブジェクト情報の一例を模式的に示す図である。
【図１８】変更履歴内容管理情報の一例を示す図である。
【図１９】オブジェクトエントリ管理情報の一例を示す図である。
【図２０】履歴リンク管理情報の一例を示す図である。
【図２１Ａ】本実施形態に係る情報処理装置で行われるオブジェクト情報の削除処理の流れの一例を示すフロー図である。
【図２１Ｂ】本実施形態に係る情報処理装置で行われるオブジェクト情報の削除処理の流れの一例を示すフロー図である。
【図２２Ａ】本実施形態に係る情報処理装置で行われる履歴関連付け解除処理の流れの一例を示すフロー図である。
【図２２Ｂ】本実施形態に係る情報処理装置で行われる履歴関連付け解除処理の流れの一例を示すフロー図である。
【図２３】本実施形態に係る情報処理装置で行われる履歴リスト出力処理の流れの一例を示すフロー図である。
【発明を実施するための形態】
【００１７】
以下、本発明の一実施形態について図面に基づき詳細に説明する。
【００１８】
図１は、本実施形態に係る情報処理システム１０のハードウェア構成の一例を示す図である。図１に例示するように、本実施形態に係る情報処理システム１０は、情報処理装置１２と、利用者端末（クライアント）１４（１４−１〜１４−ｎ）と、を含んで構成される。情報処理装置１２、利用者端末１４は、ＬＡＮやインターネットなどの通信手段に接続されており、互いに通信されるようになっている。
【００１９】
情報処理装置１２は、例えば、情報処理装置１２にインストールされるプログラムに従って動作するＣＰＵ等のプログラム制御デバイスである制御部、ＲＯＭやＲＡＭ等の記憶素子やハードディスクドライブなどである記憶部、ネットワークボードなどの通信インタフェースである通信部、などを含んで構成されている。これらの要素は、バスを介して接続される。情報処理装置１２の記憶部には、情報処理装置１２の制御部によって実行されるプログラムが記憶される。また、情報処理装置１２の記憶部は、情報処理装置１２のワークメモリとしても動作する。
【００２０】
利用者端末１４は、例えば、ＣＰＵ等の制御装置、ＲＯＭやＲＡＭ等の記憶素子やハードディスクドライブ等の記憶装置、ディスプレイ等の出力装置、マウスやキーボード等の入力装置、ネットワークボード等の通信装置などを備えた公知のパーソナルコンピュータにより構成されている。
【００２１】
図２は、本実施形態に係る情報処理装置１２により実現される機能の一例を示す機能ブロック図である。図２に例示するように、本実施形態では、情報処理装置１２は、例えば、情報記憶部２０、処理要求受付部２２、処理実行部２４、変更履歴関連付け制御部２６、変更履歴削除部２８、を含んでいる。情報記憶部２０は、情報処理装置１２の記憶部を主として実現される。その他の要素は、情報処理装置１２の制御部を主として実現される。
【００２２】
これらの要素は、コンピュータである情報処理装置１２にインストールされたプログラムを、情報処理装置１２の制御部で実行することにより実現されている。このプログラムは、例えば、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭなどのコンピュータ可読な情報記憶媒体を介して、あるいは、インターネットなどの通信手段を介して情報処理装置１２に供給される。
【００２３】
情報記憶部２０は、例えば、図３に例示するオブジェクト情報３０を複数記憶する。図３は、オブジェクト情報３０の一例を模式的に示す図である。オブジェクト情報３０の一例としては、例えば、文書やフォルダを表す情報などが挙げられる。図３に示すように、本実施形態では、例えば、情報記憶部２０に、４つのオブジェクト情報３０（オブジェクトＲＯＯＴ、オブジェクトＯｆａ、オブジェクトＯｆｂ、及び、オブジェクトＯｆｃ）が予め記憶されている。本実施形態では、オブジェクト情報３０は、例えば、オブジェクト情報３０に対して要求された処理内容（例えば、処理が行われた日時、処理を要求した利用者、どのような処理が要求されたかを示す情報など）を示すオブジェクト要求処理内容情報と、オブジェクトの内容や属性（例えば、オブジェクト情報３０の内容自体（文書や画像自体）、作成者、承認者、ページサイズなど）を示すオブジェクト要素情報と、を含んでいる。
【００２４】
オブジェクト情報３０は、例えば、階層構造（例えば、木構造）のデータである。また、オブジェクト情報３０は、例えば、その変更履歴を示す情報に関連付けて、情報記憶部２０に記憶されている。本実施形態では、オブジェクト情報３０の変更履歴は、例えば、後述する、変更履歴内容管理情報３２（図４及び図１８参照）、オブジェクトエントリ管理情報３４（図５及び図１９参照）、及び、履歴リンク管理情報３６（図６及び図２０参照）により表現される。
【００２５】
図４は、オブジェクト情報３０の変更履歴の内容を管理する変更履歴内容管理情報３２の一例を示す図である。図４は、本実施形態における初期状態の変更履歴内容管理情報３２の一例を示している。図４に示すように、変更履歴内容管理情報３２は、例えば、テーブル構造のデータである。そして、変更履歴内容管理情報３２は、例えば、変更履歴を一意に識別する値である履歴識別子ＲＩＤ、オブジェクト情報３０の変更内容（本実施形態では、例えば、変更後のオブジェクトの内容）を示す履歴内容情報ＣＯＮＴＥＮＴ、を含んでいる。
【００２６】
図５は、オブジェクト情報３０間の関係（例えば、親子関係など）や、オブジェクト情報３０と変更履歴内容管理情報３２との対応関係を管理するオブジェクトエントリ管理情報３４の一例を示す図である。図５は、本実施形態における初期状態のオブジェクトエントリ管理情報３４の一例を示している。図５に示すように、オブジェクトエントリ管理情報３４は、例えば、テーブル構造のデータである。そして、オブジェクトエントリ管理情報３４は、例えば、オブジェクト情報３０を一意に識別する値であるオブジェクトエントリ識別子ＥＩＤ、オブジェクト情報３０の先頭の（例えば、最初の）変更履歴に対応する履歴識別子ＲＩＤの値である先頭履歴識別子Ｆ＿ＲＩＤ、オブジェクト情報３０の最新の変更履歴に対応する履歴識別子ＲＩＤの値である最新履歴識別子Ｌ＿ＲＩＤ、オブジェクト情報３０の名前を示すオブジェクト名称ＮＡＭＥ、親のオブジェクト情報３０のオブジェクトエントリ識別子ＥＩＤの値である親オブジェクトエントリ識別子Ｐ＿ＥＩＤ、を含んでいる。
【００２７】
本実施形態では、図５に例示するように、初期状態では、例えば、オブジェクトＲＯＯＴ（オブジェクトエントリ識別子ＥＩＤの値がＥｒｏｏｔ、オブジェクト名称ＮＡＭＥの値がＮｒｏｏｔ）、オブジェクトＯｆａ（オブジェクトエントリ識別子ＥＩＤの値がＥｆａ、オブジェクト名称ＮＡＭＥの値がＮｆａ）、オブジェクトＯｆｂ（オブジェクトエントリ識別子ＥＩＤの値がＥｆｂ、オブジェクト名称ＮＡＭＥの値がＮｆｂ）、及び、オブジェクトＯｆｃ（オブジェクトエントリ識別子ＥＩＤの値がＥｆｃ、オブジェクト名称ＮＡＭＥの値がＮｆｃ）に対応するオブジェクトエントリ管理情報３４が情報記憶部２０に記憶されている。そして、本実施形態では、例えば、オブジェクトＯｆａ、オブジェクトＯｆｂ、オブジェクトＯｆｃは、オブジェクトＲＯＯＴの子のオブジェクト情報３０であることとする。
【００２８】
図６は、オブジェクト情報３０の変更履歴の先後関係を管理する履歴リンク管理情報３６の一例を示す図である。図６は、本実施形態における初期状態の履歴リンク管理情報３６の一例を示している。図６に示すように、履歴リンク管理情報３６は、例えば、テーブル構造のデータである。そして、履歴リンク管理情報３６は、例えば、上述の履歴識別子ＲＩＤ、直前の変更履歴の履歴識別子ＲＩＤの値である先行履歴識別子Ｐ＿ＲＩＤ、この履歴リンク管理情報３６によって変更履歴間の関係が管理されているオブジェクト情報３０の数を示すリンク利用数ＣＯＵＮＴ、を含んでいる。
【００２９】
ここで、本実施形態における情報処理装置１２で行われる処理の概要について説明する。
【００３０】
本実施形態では、例えば、処理要求受付部２２が、利用者端末１４からオブジェクト情報３０に対する処理要求（例えば、新規のオブジェクト情報３０の登録要求、オブジェクト情報３０の取得要求、オブジェクト情報３０の内容の変更要求、オブジェクト情報３０の属性の変更要求、オブジェクト情報３０の複製要求、オブジェクト情報３０の削除要求、オブジェクト情報３０のリストの取得要求、オブジェクト情報３０の履歴リストの取得要求、など）を受け付ける。そして、処理実行部２４が、処理要求受付部２２が要求を受け付けた処理（例えば、新規のオブジェクト情報３０の登録処理、オブジェクト情報３０の出力処理、オブジェクト情報３０の内容の変更処理、オブジェクト情報３０の属性の変更処理、オブジェクト情報３０の複製処理、オブジェクト情報３０の削除処理、オブジェクト情報３０のリストの出力処理、オブジェクト情報３０の履歴リストの出力処理、など）を実行する。
【００３１】
本実施形態では、例えば、処理実行部２４がオブジェクト情報３０の変更処理又は複製処理を実行した際に、変更履歴関連付け制御部２６が、予め定められた条件を充足するか否かに基づいて、その処理が派生タイプであるか流用タイプであるかを判定する。このように、本実施形態では、例えば、処理実行部２４が実行する変更処理や複製処理は、派生タイプか流用タイプかのいずれかに分類される。
【００３２】
そして、本実施形態では、例えば、変更履歴関連付け制御部２６が、処理実行部２４が実行した処理が派生タイプの変更処理であると判定した際には、オブジェクト情報３０と、そのオブジェクト情報３０の変更履歴と、を関連付ける。一方、変更履歴関連付け制御部２６が、処理実行部２４が実行した処理が流用タイプの変更処理であると判定した際には、オブジェクト情報３０と、そのオブジェクト情報３０の変更履歴とを関連付けないよう制御する（例えば、関連付けを解除する）。
【００３３】
また、本実施形態では、例えば、変更履歴関連付け制御部２６が、処理実行部２４が実行した処理が派生タイプの複製処理であると判定した際には、複製であるオブジェクト情報３０と、複製元のオブジェクト情報３０の変更履歴と、を関連付ける。一方、変更履歴関連付け制御部２６が、処理実行部２４が実行した処理が流用タイプの複製処理であると判定した際には、複製であるオブジェクト情報３０と、複製元のオブジェクト情報３０の変更履歴と、を関連付けないよう制御する（例えば、関連付けを解除する）。
【００３４】
例えば、処理実行部２４が実行する処理にオブジェクト情報３０の名称（名前属性）を変更する処理が含まれない場合には、変更履歴関連付け制御部２６は、その処理が派生タイプであると判定し、処理実行部２４が実行する処理にオブジェクト情報３０の名称（名前属性）を変更する処理が含まれる場合には、変更履歴関連付け制御部２６は、その処理が流用タイプであると判定する。
【００３５】
すなわち、処理実行部２４が、オブジェクト情報３０を複製する処理を実行するだけで、複製の名称を複製元のオブジェクト情報３０の名称から変更しない場合は、変更履歴関連付け制御部２６は、この処理を派生タイプの処理であると判定して、オブジェクト情報３０の複製と、複製元のオブジェクト情報３０の変更履歴とを、関連付ける。一方、処理実行部２４が、オブジェクト情報３０を複製する処理を実行して、その複製の名称（名前属性）を複製元のオブジェクト情報３０の名称から変更する場合は、変更履歴関連付け制御部２６は、この処理を流用タイプの処理であると判定して、オブジェクト情報３０の複製と、複製元のオブジェクト情報３０の変更履歴とを、関連付けないようにする（例えば、関連付けを解除する）。
【００３６】
派生タイプの処理は、例えば、複製元のオブジェクト情報３０の利用目的を変えずに内容の追加や修正を行う場合（具体的には、例えば、文書管理における版や訂の変更を行う場合）に適している。一方、流用タイプの処理は、別の利用目的でオブジェクト情報３０の内容を再利用する場合（具体的には、例えば、機能仕様書の内容をベースにしてマニュアルを作成する場合）に適している。
【００３７】
以下、本実施形態における情報処理装置１２で行われる処理の具体例について説明する。
【００３８】
［新規登録処理］
まず、本実施形態における情報処理装置１２で行われるオブジェクト情報３０の新規登録処理の流れの一例を、図７に示すフロー図を参照しながら説明する。ここでは、オブジェクトＯａの新規登録処理の流れの一例を説明する。本処理例では、図３に例示する４つのオブジェクト情報３０、図４に例示する変更履歴内容管理情報３２、図５に例示するオブジェクトエントリ管理情報３４、及び、図６に例示する履歴リンク管理情報３６が、情報記憶部２０に記憶されていることとする。
【００３９】
まず、処理要求受付部２２が、利用者端末１４から、オブジェクトＯｆａの子のオブジェクト情報３０として、オブジェクトＯａを新規登録する要求を受け付ける（Ｓ１０１）。ここでは、オブジェクトＯａの内容はＣ１、名称はＮａであるとする。
【００４０】
そして、処理実行部２４が、履歴識別子ＲＩＤに新規の値であるＲ１が設定され、履歴内容情報ＣＯＮＴＥＮＴに上述のＣ１が設定された、新規の変更履歴内容管理情報３２を生成する（Ｓ１０２）。処理実行部２４は、例えば、Ｓ１０１に示す要求の受付日時や、処理実行部２４が一意に生成するシーケンス番号、などに基づいて、履歴識別子ＲＩＤの値Ｒ１を決定する。
【００４１】
そして、変更履歴関連付け制御部２６が、履歴識別子ＲＩＤに上述の値であるＲ１が設定され、先行履歴識別子の値にｎｕｌｌが設定され、リンク利用数ＣＯＵＮＴの値に１が設定された、新規の履歴リンク管理情報３６を生成する（Ｓ１０３）。
【００４２】
そして、処理実行部２４が、オブジェクトエントリ識別子ＥＩＤに新規の値であるＥａが設定され、先頭履歴識別子Ｆ＿ＲＩＤに上述のＲ１が設定され、最新履歴識別子Ｌ＿ＲＩＤに上述のＲ１が設定され、オブジェクト名称ＮＡＭＥにオブジェクトＯａの名称であるＮａが設定され、親オブジェクトエントリ識別子Ｐ＿ＥＩＤにオブジェクトＯａの親のオブジェクト情報３０であるオブジェクトＯｆａのオブジェクトエントリ識別子であるＥｆａが設定された、新規のオブジェクトエントリ管理情報３４を生成する（Ｓ１０４）。処理実行部２４は、例えば、Ｓ１０１に示す要求の受付日時や、処理実行部２４が一意に生成するシーケンス番号、などに基づいて、履歴識別子ＲＩＤの値Ｒ１を決定する。
【００４３】
このようにして、オブジェクトＯａが登録される。図８に、この時点における、オブジェクトＯａが登録されている状態の一例を模式的に示す。
【００４４】
［変更処理］
次に、本実施形態における情報処理装置１２で行われるオブジェクト情報３０の内容の変更処理の流れの一例を、図９に示すフロー図を参照しながら説明する。ここでは、オブジェクトＯａの内容の派生タイプの変更処理の流れの一例を説明する。本処理例では、予め、オブジェクトＯａが図８に例示する状態であることとする。
【００４５】
まず、処理要求受付部２２が、利用者端末１４から、オブジェクトＯａの内容をＣ１からＣ２に変更する要求を受け付ける（Ｓ２０１）。そして、処理実行部２４が、オブジェクトＯａに対応するオブジェクトエントリ管理情報３４（例えば、オブジェクトエントリ識別子ＥＩＤの値がＥａであるオブジェクトエントリ管理情報３４）を特定する（Ｓ２０２）。
【００４６】
そして、処理実行部２４が、オブジェクトエントリ識別子ＥＩＤの値がＥａであるオブジェクトエントリ管理情報３４に含まれる、最新履歴識別子Ｌ＿ＲＩＤの値であるＲ１を取得する（Ｓ２０３）。
【００４７】
そして、処理実行部２４が、履歴識別子ＲＩＤに新規の値であるＲ２が設定され、履歴内容情報ＣＯＮＴＥＮＴに上述のＣ２が設定された、新規の変更履歴内容管理情報３２を生成する（Ｓ２０４）。処理実行部２４は、例えば、Ｓ２０１に示す要求の受付日時や、処理実行部２４が一意に生成するシーケンス番号、などに基づいて、履歴識別子ＲＩＤの値Ｒ２を決定する。
【００４８】
そして、変更履歴関連付け制御部２６が、履歴識別子ＲＩＤの値として上述のＲ２が設定され、先行履歴識別子Ｐ＿ＲＩＤの値としてＳ２０３に例示する処理で処理実行部２４により取得された値Ｒ１が設定され、リンク利用数ＣＯＵＮＴの値として１が設定された、新規の履歴リンク管理情報３６を生成する（Ｓ２０５）。
【００４９】
そして、処理実行部２４が、オブジェクトエントリ識別子ＥＩＤの値がＥａであるオブジェクトエントリ管理情報３４に含まれる、最新履歴識別子Ｌ＿ＲＩＤの値をＲ２に変更する（Ｓ２０６）。
【００５０】
このようにして、オブジェクトＯａの内容がＣ１からＣ２に変更される。図１０に、この時点における、オブジェクトＯａが登録されている状態の一例を模式的に示す。
【００５１】
［複製処理（派生タイプ）］
次に、本実施形態における情報処理装置１２で行われるオブジェクト情報３０の複製処理の流れの一例を、図１１に示すフロー図を参照しながら説明する。ここでは、オブジェクトＯａの派生タイプの複製処理の流れの一例を説明する。本処理例では、予め、オブジェクトＯａが図１０に例示する状態であることとする。
【００５２】
まず、処理要求受付部２２が、利用者端末１４から、オブジェクトＯａの複製であるオブジェクトＯｂを生成して、オブジェクトＯｆｂの子のオブジェクト情報３０として登録する処理の実行要求を受け付ける（Ｓ３０１）。そして、処理実行部２４が、オブジェクトＯａに対応するオブジェクトエントリ管理情報３４（オブジェクトエントリ識別子ＥＩＤの値はＥａ）、及び、オブジェクトＯｆｂに対応するオブジェクトエントリ管理情報３４（オブジェクトエントリ識別子ＥＩＤの値はＥｆｂ）を特定する（Ｓ３０２）。
【００５３】
そして、処理実行部２４が、オブジェクトＯａに対応するオブジェクトエントリ管理情報３４に含まれる、先頭履歴識別子Ｆ＿ＲＩＤの値Ｒ１、最新履歴識別子Ｌ＿ＲＩＤの値Ｒ２、及び、オブジェクト名称ＮＡＭＥの値Ｎａを取得する（Ｓ３０３）。そして、処理実行部２４は、Ｓ３０３に例示する処理で取得した最新履歴識別子Ｌ＿ＲＩＤの値Ｒ２を変数ＲＩＤｎに代入する（Ｓ３０４）。
【００５４】
そして、処理実行部２４は、履歴識別子ＲＩＤの値が変数ＲＩＤｎの値である履歴リンク管理情報３６の、先行履歴識別子Ｐ＿ＲＩＤの値Ｐ＿ＲＩＤｘを取得する（Ｓ３０５）。そして、処理実行部２４は、Ｓ３０５に例示する処理で取得した先行履歴識別子Ｐ＿ＲＩＤの値Ｐ＿ＲＩＤｘを変数Ｐ＿ＲＩＤｎに代入する（Ｓ３０６）。
【００５５】
そして、変更履歴関連付け制御部２６は、履歴識別子ＲＩＤの値がＲＩＤｎ、先行履歴識別子Ｐ＿ＲＩＤの値がＰ＿ＲＩＤｎである履歴リンク管理情報３６に含まれるリンク利用数ＣＯＵＮＴの値を１増加させる（Ｓ３０７）。
【００５６】
そして、処理実行部２４は、変数Ｐ＿ＲＩＤｎの値がｎｕｌｌであるか否かを確認する（Ｓ３０８）。ｎｕｌｌでない場合は（Ｓ３０８：Ｎ）、処理実行部２４は、変数ＲＩＤｎに、変数Ｐ＿ＲＩＤｎの値を代入して（Ｓ３０９）、Ｓ３０５に例示する処理以降の処理を実行する。
【００５７】
ｎｕｌｌである場合は（Ｓ３０８：Ｙ）、処理実行部２４は、オブジェクトエントリ識別子ＥＩＤに新規の値であるＥｂが設定され、先頭履歴識別子Ｆ＿ＲＩＤの値としてオブジェクトＯａの先頭履歴識別子Ｆ＿ＲＩＤと同じ値であるＲ１が設定され、最新履歴識別子Ｌ＿ＲＩＤの値としてオブジェクトＯａの最新履歴識別子Ｌ＿ＲＩＤと同じ値であるＲ２が設定され、オブジェクト名称ＮＡＭＥにオブジェクトＯａのオブジェクト名称ＮＡＭＥと同じ値であるＮａが設定され、親オブジェクトエントリ識別子Ｐ＿ＥＩＤにＳ３０２に示す処理で処理実行部２４により取得されたオブジェクトＯｆｂのオブジェクトエントリ識別子ＥＩＤの値であるＥｆｂが設定された、新規のオブジェクトエントリ管理情報３４を生成する（Ｓ３１０）。
【００５８】
このようにして、オブジェクトＯａの複製であるオブジェクトＯｂが登録される。図１２に、この時点における、オブジェクトＯａ及びオブジェクトＯｂが登録されている状態の一例を模式的に示す。このとき、図１２に例示するように、オブジェクトＯａとオブジェクトＯｂとで、変更履歴Ｒ１及びＲ２が共有される。そして、オブジェクトＯｂの内容は、オブジェクトＯａの内容と同じＣ２である。
【００５９】
図１２に例示するオブジェクト情報３０の登録状態において、本実施形態における情報処理装置１２が、上述のＳ２０１〜Ｓ２０６に例示する処理と同様の、オブジェクトＯａの内容をＣ２からＣ３に変更する処理を実行すると、図１３に例示するオブジェクト情報３０の登録状態に変化する。図１３に例示するオブジェクト情報３０の登録状態において、さらに、本実施形態における情報処理装置１２が、上述のＳ２０１〜Ｓ２０６に例示する処理と同様の、オブジェクトＯｂの内容をＣ２からＣ４に変更する処理を実行すると、図１４に例示するオブジェクト情報３０の登録状態に変化する。図１４に例示するオブジェクト情報３０の登録状態において、さらに、本実施形態における情報処理装置１２が、上述のＳ３０１〜Ｓ３０９に例示する処理と同様の、オブジェクトＯｂの複製であるオブジェクトＯｃを、オブジェクトＯｆｃの子のオブジェクト情報３０として登録する処理（オブジェクトＯｂの派生タイプの複製処理）を実行すると、図１５に例示するオブジェクト情報３０の登録状態に変化する。この処理の終了時点においては、オブジェクトＯｂとオブジェクトＯｃとで、変更履歴Ｒ１、Ｒ２及びＲ４が共有される。そして、オブジェクトＯｃの内容は、オブジェクトＯｂの内容と同じＣ４である。
【００６０】
図１５に例示するオブジェクト情報３０の登録状態において、さらに、本実施形態における情報処理装置１２が、上述のＳ２０１〜Ｓ２０６に例示する処理と同様の、オブジェクトＯｃの内容をＣ４からＣ５に変更する処理を実行すると、図１６に例示するオブジェクト情報３０の登録状態に変化する。
【００６１】
図１７に、図１６に例示するオブジェクト情報３０の登録状態に対応する、オブジェクト情報の一例を模式的に示す。図１８に、図１６に例示するオブジェクト情報３０の登録状態に対応する変更履歴内容管理情報３２の一例を示す。図１９に、図１６に例示するオブジェクト情報３０の登録状態に対応するオブジェクトエントリ管理情報３４の一例を示す。図２０に、図１６に例示するオブジェクト情報３０の登録状態に対応する履歴リンク管理情報３６の一例を示す。
【００６２】
［削除処理］
次に、本実施形態における情報処理装置１２で行われる、オブジェクト情報３０の削除処理の流れの一例を、図２１Ａ及び図２１Ｂに示すフロー図を参照しながら説明する。ここでは、オブジェクトＯｘ（ＯｘはＯａ、Ｏｂ又はＯｃのいずれか）の削除処理の流れの一例を説明する。本処理例では、予め、オブジェクトＯａ、オブジェクトＯｂ、及び、オブジェクトＯｃが図１６に例示する状態で登録されていることとする。
【００６３】
まず、処理要求受付部２２が、利用者端末１４から、オブジェクトＯｘの削除要求を受け付ける（Ｓ４０１）。そして、処理実行部２４が、オブジェクトＯｘに対応するオブジェクトに対応するオブジェクトエントリ管理情報３４のオブジェクトエントリ識別子ＥＩＤの値Ｅｘを特定する（Ｓ４０２）。そして、処理実行部２４は、オブジェクトエントリ識別子ＥＩＤの値がＥｘであるオブジェクトエントリ管理情報３４に含まれる先頭履歴識別子Ｆ＿ＲＩＤの値Ｆ＿ＲＩＤｘ、及び、最新履歴識別子Ｌ＿ＲＩＤの値Ｌ＿ＲＩＤｘを取得する（Ｓ４０３）。そして、処理実行部２４は、オブジェクトエントリ識別子ＥＩＤの値がＥｘであるオブジェクトエントリ管理情報３４を削除する（Ｓ４０４）。そして、処理実行部２４は、変数ＲＩＤｎに値Ｌ＿ＲＩＤｘを代入するとともに、値が空である配列変数ＲＩＤ＿ＬＩＳＴを生成する（Ｓ４０５）。
【００６４】
そして、処理実行部２４は、ＲＩＤｎの値がｎｕｌｌであるか否かを確認する（Ｓ４０６）。ｎｕｌｌでない場合は（Ｓ４０６：Ｎ）、処理実行部２４は、履歴識別子ＲＩＤの値がＲＩＤｎであるすべての履歴リンク管理情報３６を処理対象候補として取得する（Ｓ４０７）。
【００６５】
そして、処理実行部２４は、ＲＩＤｎの値がＦ＿ＲＩＤｘであるか否かを確認する（Ｓ４０８）。ＲＩＤｎの値がＦ＿ＲＩＤｘである場合は（Ｓ４０８：Ｙ）、Ｓ４０７に示す処理で処理対象候補として取得した履歴リンク管理情報３６のうち、含まれる先行履歴識別子Ｐ＿ＲＩＤの値がｎｕｌｌではない履歴リンク管理情報３６のいずれかを処理対象の履歴リンク管理情報３６として特定する（Ｓ４０９）。ＲＩＤｎの値がＦ＿ＲＩＤｘではない場合は（Ｓ４０８：Ｎ）、Ｓ４０７に示す処理で処理対象候補として取得した履歴リンク管理情報３６のうち、含まれる先行履歴識別子Ｐ＿ＲＩＤの値がｎｕｌｌである履歴リンク管理情報３６のいずれかを処理対象の履歴リンク管理情報３６として特定する（Ｓ４１０）。
【００６６】
そして、変更履歴関連付け制御部２６は、処理対象の履歴リンク管理情報３６に含まれるリンク利用数ＣＯＵＮＴの値が１より大きいか否かを確認する（Ｓ４１１）。１より大きい場合は（Ｓ４１１：Ｙ）、変更履歴関連付け制御部２６は、そのリンク利用数ＣＯＵＮＴの値を１減少させる（Ｓ４１２）。１である場合は（Ｓ４１１：Ｎ）、変更履歴削除部２８は、処理対象の履歴リンク管理情報３６を削除する（Ｓ４１３）。
【００６７】
そして、処理実行部２４は、Ｓ４０７に例示する処理で処理対象候補として取得した履歴リンク管理情報３６の数が１であるか否かを確認する（Ｓ４１４）。１である場合は（Ｓ４１４：Ｙ）、変数ＲＩＤｎの値をＲＩＤ＿ＬＩＳＴに追加する（Ｓ４１５）。１でない場合（Ｓ４１４：Ｎ）、又は、Ｓ４１５に例示する処理の終了後に、処理実行部２４は、処理対象の履歴リンク管理情報３６に含まれる先行履歴識別子Ｐ＿ＲＩＤの値Ｐ＿ＲＩＤｎを変数ＲＩＤｎに代入して（Ｓ４１６）、Ｓ４０６以降の処理を実行する。
【００６８】
Ｓ４０６に例示する処理において、ＲＩＤｎの値がｎｕｌｌであることが確認された場合は（Ｓ４０６：Ｙ）、変更履歴削除部２８は、履歴識別子ＲＩＤｎの値がＲＩＤ＿ＬＩＳＴに含まれる変数ＲＩＤｎのうちのいずれかと同じ値である変更履歴内容管理情報３２を削除する（Ｓ４１７）。
【００６９】
上述のように、変更履歴削除部２８は、複製元のオブジェクト情報３０にも複製であるオブジェクト情報３０にも関連付けられていない変更履歴を削除する。
【００７０】
例えば、図１６に例示するオブジェクト情報３０の登録状態において、情報処理装置１２が上述の処理例に示す処理に従って、オブジェクトＯｂを削除すると、オブジェクトエントリ識別子ＥＩＤの値がＥｂであるオブジェクトエントリ管理情報３４が削除される。また、｛ＲＩＤ，Ｐ＿ＲＩＤ｝の組合せが｛Ｒ４，Ｒ２｝、｛Ｒ２，Ｒ１｝、｛Ｒ１，ｎｕｌｌ｝である履歴リンク管理情報３６のリンク利用数ＣＯＵＮＴの値が１減少する。この場合は、変更履歴内容管理情報３２は変更されない。
【００７１】
ここで、さらに、情報処理装置１２が上述の処理例に示す処理に従って、オブジェクトＯｃを削除すると、オブジェクトエントリ識別子ＥＩＤの値がＥｃであるオブジェクトエントリ管理情報３４が削除される。また、｛ＲＩＤ，Ｐ＿ＲＩＤ｝の組合せが、｛Ｒ２，Ｒ１｝、｛Ｒ１，ｎｕｌｌ｝である履歴リンク管理情報３６のリンク利用数ＣＯＵＮＴの値が１減少する。また、｛ＲＩＤ，Ｐ＿ＲＩＤ｝の組合せが、｛Ｒ５，Ｒ４｝、｛Ｒ４，Ｒ２｝である履歴リンク管理情報３６が削除される。また、履歴識別子ＲＩＤの値がＲ５、Ｒ４である変更履歴内容管理情報３２が削除される。
【００７２】
ここで、さらに、情報処理装置１２が上述の処理例に示す処理に従って、オブジェクトＯａを削除すると、オブジェクトエントリ識別子ＥＩＤの値がＥａであるオブジェクトエントリ管理情報３４が削除される。また、｛ＲＩＤ，Ｐ＿ＲＩＤ｝の組合せが、｛Ｒ３，Ｒ２｝、｛Ｒ２，Ｒ１｝、｛Ｒ１，ｎｕｌｌ｝である履歴リンク管理情報３６が削除される。また、履歴識別子ＲＩＤの値がＲ３、Ｒ２、Ｒ１である変更履歴内容管理情報３２が削除される。
【００７３】
［履歴関連付け解除処理］
次に、本実施形態における情報処理装置１２で行われる履歴関連付け解除処理の一例を、図２２Ａ及び図２２Ｂに示すフロー図を参照しながら説明する。ここでは、オブジェクトＯｘ（ＯｘはＯａ、Ｏｂ又はＯｃのいずれか）と、その変更履歴との関連付けを解除する処理の一例を説明する。本処理例では、予め、オブジェクトＯａ、オブジェクトＯｂ、及び、オブジェクトＯｃが図１６に例示する状態で登録されていることとする。
【００７４】
まず、変更履歴関連付け制御部２６が、オブジェクトＯｘに対応するオブジェクトに対応するオブジェクトエントリ管理情報３４のオブジェクトエントリ識別子ＥＩＤの値Ｅｘを特定する（Ｓ５０１）。そして、変更履歴関連付け制御部２６が、オブジェクトエントリ識別子ＥＩＤの値がＥｘであるオブジェクトエントリ管理情報３４に含まれる先頭履歴識別子Ｆ＿ＲＩＤの値Ｆ＿ＲＩＤｘを、最新履歴識別子Ｌ＿ＲＩＤの値Ｌ＿ＲＩＤｘに変更する（Ｓ５０２）。この時点で、オブジェクトエントリ識別子ＥＩＤの値がＥｘであるオブジェクトエントリ管理情報３４に含まれる先頭履歴識別子Ｆ＿ＲＩＤの値と最新履歴識別子Ｌ＿ＲＩＤの値と同じになる。
【００７５】
そして、変更履歴関連付け制御部２６は、履歴識別子ＲＩＤの値がＬ＿ＲＩＤｘであり、先行履歴識別子Ｐ＿ＲＩＤの値がｎｕｌｌである、という条件を充足する履歴リンク管理情報３６が存在するか否かを確認する（Ｓ５０３）。存在する場合は（Ｓ５０３：Ｙ）、その履歴リンク管理情報３６に含まれるリンク利用数ＣＯＵＮＴの値を１増加させる（Ｓ５０４）。存在しない場合は（Ｓ５０３：Ｎ）、履歴識別子ＲＩＤの値がＬ＿ＲＩＤｘに設定され、先行履歴識別子Ｐ＿ＲＩＤの値がｎｕｌｌに設定され、リンク利用数ＣＯＵＮＴの値が１に設定された、新規の履歴リンク管理情報３６を生成する（Ｓ５０５）。
【００７６】
そして、処理実行部２４は、変数ＲＩＤｎに値Ｌ＿ＲＩＤｘを代入するとともに、値が空である配列変数ＲＩＤ＿ＬＩＳＴを生成する（Ｓ５０６）。
【００７７】
そして、処理実行部２４は、ＲＩＤｎの値がｎｕｌｌであるか否かを確認する（Ｓ５０７）。ｎｕｌｌでない場合は（Ｓ５０７：Ｎ）、処理実行部２４は、履歴識別子ＲＩＤの値がＲＩＤｎであるすべての履歴リンク管理情報３６を処理対象候補として取得する（Ｓ５０８）。
【００７８】
そして、処理実行部２４は、ＲＩＤｎの値がＦ＿ＲＩＤｘであるか否かを確認する（Ｓ５０９）。ＲＩＤｎの値がＦ＿ＲＩＤｘである場合は（Ｓ５０９：Ｙ）、Ｓ５０８に示す処理で処理対象候補として取得した履歴リンク管理情報３６のうち、含まれる先行履歴識別子Ｐ＿ＲＩＤの値がｎｕｌｌではない履歴リンク管理情報３６のいずれかを処理対象の履歴リンク管理情報３６として特定する（Ｓ５１０）。ＲＩＤｎの値がＦ＿ＲＩＤｘではない場合は（Ｓ５０９：Ｎ）、Ｓ５０８に示す処理で処理対象候補として取得した履歴リンク管理情報３６のうち、含まれる先行履歴識別子Ｐ＿ＲＩＤの値がｎｕｌｌである履歴リンク管理情報３６のいずれかを処理対象の履歴リンク管理情報３６として特定する（Ｓ５１１）。
【００７９】
そして、変更履歴関連付け制御部２６は、処理対象の履歴リンク管理情報３６に含まれるリンク利用数ＣＯＵＮＴの値が１より大きいか否かを確認する（Ｓ５１２）。１より大きい場合は（Ｓ５１２：Ｙ）、変更履歴関連付け制御部２６は、そのリンク利用数ＣＯＵＮＴの値を１減少させる（Ｓ５１３）。１である場合は（Ｓ５１２：Ｎ）、変更履歴削除部２８は、処理対象の履歴リンク管理情報３６を削除する（Ｓ５１４）。
【００８０】
そして、処理実行部２４は、Ｓ４０７に例示する処理で処理対象候補として取得した履歴リンク管理情報３６の数が１であるか否かを確認する（Ｓ５１５）。１である場合は（Ｓ５１５：Ｙ）、変数ＲＩＤ＿ｎの値をＲＩＤ＿ＬＩＳＴに追加する（Ｓ５１６）。１でない場合（Ｓ５１５：Ｎ）、又は、Ｓ５１６に例示する処理の終了後に、処理実行部２４は、処理対象の履歴リンク管理情報３６に含まれる先行履歴識別子Ｐ＿ＲＩＤの値Ｐ＿ＲＩＤｎを変数ＲＩＤｎに代入して（Ｓ５１７）、Ｓ５０７以降の処理を実行する。
【００８１】
Ｓ５０７に例示する処理において、ＲＩＤｎの値がｎｕｌｌであることが確認された場合は（Ｓ５０７：Ｙ）、変更履歴削除部２８は、履歴識別子ＲＩＤｎの値がＲＩＤ＿ＬＩＳＴに含まれる変数ＲＩＤｎのうちのいずれかと同じ値である変更履歴内容管理情報３２を削除する（Ｓ５１８）。
【００８２】
上述のように、変更履歴削除部２８は、複製元のオブジェクト情報３０にも複製であるオブジェクト情報３０にも関連付けられていない変更履歴を削除する。
【００８３】
例えば、図１６に例示するオブジェクト情報３０の登録状態において、情報処理装置１２が上述のＳ５０１〜Ｓ５１８に例示する処理をオブジェクトＯｂに対して実行すると、オブジェクトエントリ識別子ＥＩＤの値がＥｂであるオブジェクトエントリ管理情報３４の先頭履歴識別子Ｆ＿ＲＩＤの値がＲ４になる。また、｛ＲＩＤ，Ｐ＿ＲＩＤ｝の組合せが｛Ｒ４，Ｒ２｝、｛Ｒ２，Ｒ１｝、｛Ｒ１，ｎｕｌｌ｝である履歴リンク管理情報３６のリンク利用数ＣＯＵＮＴの値が１減少する。また、｛ＲＩＤ，Ｐ＿ＲＩＤ｝の組合せが｛Ｒ４，ｎｕｌｌ｝である履歴リンク管理情報３６が新規に登録される。この場合は、変更履歴内容管理情報３２は変更されない。
【００８４】
ここで、さらに、情報処理装置１２が上述のＳ５０１〜Ｓ５１８に例示する処理をオブジェクトＯｃに対して実行すると、オブジェクトエントリ識別子ＥＩＤの値がＥｃであるオブジェクトエントリ管理情報３４の先頭履歴識別子Ｆ＿ＲＩＤの値がＲ５になる。また、｛ＲＩＤ，Ｐ＿ＲＩＤ｝の組合せが、｛Ｒ２，Ｒ１｝、｛Ｒ１，ｎｕｌｌ｝である履歴リンク管理情報３６のリンク利用数ＣＯＵＮＴの値が１減少する。また、｛ＲＩＤ，Ｐ＿ＲＩＤ｝の組合せが、｛Ｒ５，Ｒ４｝、｛Ｒ４，Ｒ２｝である履歴リンク管理情報３６が削除される。また、｛ＲＩＤ，Ｐ＿ＲＩＤ｝の組合せが｛Ｒ５，ｎｕｌｌ｝である履歴リンク管理情報３６が新規に登録される。この場合は、変更履歴内容管理情報３２は変更されない。
【００８５】
ここで、さらに、情報処理装置１２が上述のＳ５０１〜Ｓ５１８に例示する処理をオブジェクトＯａに対して実行すると、オブジェクトエントリ識別子ＥＩＤの値がＥａであるオブジェクトエントリ管理情報３４の先頭履歴識別子Ｆ＿ＲＩＤの値がＲ３になる。また、｛ＲＩＤ，Ｐ＿ＲＩＤ｝の組合せが、｛Ｒ３，Ｒ２｝、｛Ｒ２，Ｒ１｝、｛Ｒ１，ｎｕｌｌ｝である履歴リンク管理情報３６が削除される。また、｛ＲＩＤ，Ｐ＿ＲＩＤ｝の組合せが｛Ｒ３，ｎｕｌｌ｝である履歴リンク管理情報３６が新規に登録される。また、履歴識別子ＲＩＤの値がＲ２、Ｒ１である変更履歴内容管理情報３２が削除される。
【００８６】
［複製処理（流用タイプ）］
次に、本実施形態における情報処理装置１２で行われる流用タイプの複製処理の一例について説明する。本処理例では、予め、オブジェクトＯａ、オブジェクトＯｂ、及び、オブジェクトＯｃが図１６に例示する状態で登録されていることとする。ここでは、オブジェクトＯｘ（ＯｘはＯａ、Ｏｂ又はＯｃのいずれか）を複製するとともに、その複製の名称をＮｘに変更する処理の一例について説明する。
【００８７】
本実施形態では、例えば、処理要求受付部２２が、利用者端末１４から、オブジェクトＯｘを複製して、その名称をＮｘに変更する処理の要求を受け付けると、情報処理装置１２は、まず、上述のＳ３０１〜Ｓ３１０に例示する処理と同様の処理を実行する。そして、処理実行部２４が、複製のオブジェクトエントリ管理情報３４に含まれるオブジェクト名称ＮＡＭＥの値をＮｘに変更する。そして、変更履歴関連付け制御部２６が、この複製処理を流用タイプの複製処理として判定する。そして、流用タイプの複製処理であるとの判定結果に基づいて、情報処理装置１２は、上述のＳ５０１〜Ｓ５１８に例示する処理と同様の、履歴関連付け解除処理を実行する。
【００８８】
このようにして、本実施形態では、処理実行部２４が、複製の生成及びその複製の名称の変更を実行すると、変更履歴関連付け制御部２６が、この複製処理が流用タイプの複製処理であると判定して、複製とその変更履歴との関連付けを解除する。
【００８９】
［履歴リスト出力処理］
次に、本実施形態における情報処理装置１２で行われる、オブジェクト情報３０の一例であるオブジェクトＯｘ（ＯｘはＯａ、Ｏｂ又はＯｃのいずれか）の履歴リスト出力処理の一例を、図２３に示すフロー図を参照しながら説明する。本処理例では、予め、オブジェクトＯａ、オブジェクトＯｂ、及び、オブジェクトＯｃが図１６に例示する状態で登録されていることとする。
【００９０】
まず、処理要求受付部２２が、利用者端末１４から、オブジェクトＯｘの履歴リストの取得要求を受け付ける（Ｓ６０１）。そして、処理実行部２４が、オブジェクトＯｘに対応するオブジェクトエントリ識別子ＥＩＤの値Ｅｘを特定する（Ｓ６０２）。そして、処理実行部２４が、オブジェクトエントリ識別子ＥＩＤの値がＥｘであるオブジェクトエントリ管理情報３４に含まれる先頭履歴識別子Ｆ＿ＲＩＤの値Ｆ＿ＲＩＤｘ、及び、最新履歴識別子Ｌ＿ＲＩＤの値Ｌ＿ＲＩＤｘを取得する（Ｓ６０３）。そして、処理実行部２４が、変数ＲＩＤｎに値Ｌ＿ＲＩＤｘを代入するとともに、値が空である配列変数ＣＯＮＴＥＮＴ＿ＬＩＳＴを生成する（Ｓ６０４）。
【００９１】
そして、処理実行部２４は、ＲＩＤｎの値がｎｕｌｌであるか否かを確認する（Ｓ６０５）。ｎｕｌｌでない場合は（Ｓ６０５：Ｎ）、処理実行部２４は、履歴識別子ＲＩＤの値がＲＩＤｎであるすべての履歴リンク管理情報３６を処理対象候補として取得する（Ｓ６０６）。
【００９２】
そして、処理実行部２４は、ＲＩＤｎの値がＦ＿ＲＩＤｘであるか否かを確認する（Ｓ６０７）。ＲＩＤｎの値がＦ＿ＲＩＤｘである場合は（Ｓ６０７：Ｙ）、Ｓ６０６に示す処理で処理対象候補として取得した履歴リンク管理情報３６のうち、含まれる先行履歴識別子Ｐ＿ＲＩＤの値がｎｕｌｌではない履歴リンク管理情報３６のいずれかを処理対象の履歴リンク管理情報３６として特定する（Ｓ６０８）。ＲＩＤｎの値がＦ＿ＲＩＤｘではない場合は（Ｓ６０７：Ｎ）、Ｓ６０６に示す処理で処理対象候補として取得した履歴リンク管理情報３６のうち、含まれる先行履歴識別子Ｐ＿ＲＩＤの値がｎｕｌｌである履歴リンク管理情報３６のいずれかを処理対象の履歴リンク管理情報３６として特定する（Ｓ６０９）。
【００９３】
そして、処理実行部２４は、履歴識別子ＲＩＤの値がＲＩＤｎである変更履歴内容管理情報３２に含まれる履歴内容情報ＣＯＮＴＥＮＴの値を、変数ＣＯＮＴＥＮＴ＿ＬＩＳＴに追加する（Ｓ６１０）。
【００９４】
そして、処理実行部２４は、Ｓ６０８又はＳ６０９に例示する処理により特定された処理対象の履歴リンク管理情報３６に含まれる先行履歴識別子Ｐ＿ＲＩＤの値Ｐ＿ＲＩＤｎを変数ＲＩＤｎに代入して（Ｓ６１１）、Ｓ６０５以降の処理を実行する。
【００９５】
Ｓ６０５に例示する処理において、ＲＩＤｎの値がｎｕｌｌであることが確認された場合は（Ｓ６０５：Ｙ）、処理実行部２４は、ＣＯＮＴＥＮＴ＿ＬＩＳＴの内容を利用者端末１４に出力する（Ｓ６１２）。
【００９６】
利用者端末１４は、情報処理装置１２からＣＯＮＴＥＮＴ＿ＬＩＳＴの内容を受け付けると、変数ＣＯＮＴＥＮＴ＿ＬＩＳＴに含まれる各履歴内容情報ＣＯＮＴＥＮＴの値をディスプレイに表示出力する。
【００９７】
なお、本発明は上述の実施形態に限定されるものではない。
【００９８】
例えば、情報処理装置１２が上述のＳ４１１〜Ｓ４１３に例示する処理を実行する代わりに、変更履歴関連付け制御部２６が、処理対象の履歴リンク管理情報３６に含まれるリンク利用数ＣＯＵＮＴの値に関わらず、処理対象の履歴リンク管理情報３６に含まれるリンク利用数ＣＯＵＮＴの値を１減少させるようにしてもよい。そして、変更履歴削除部２８が、予め定められた時間間隔で（例えば、毎日所定時刻に）、含まれるリンク利用数ＣＯＵＮＴの値が０である履歴リンク管理情報３６を削除するようにしてもよい。
【００９９】
また、例えば、情報処理装置１２が上述のＳ５１２〜Ｓ５１４に例示する処理を実行する代わりに、変更履歴関連付け制御部２６が、処理対象の履歴リンク管理情報３６に含まれるリンク利用数ＣＯＵＮＴの値に関わらず、処理対象の履歴リンク管理情報３６に含まれるリンク利用数ＣＯＵＮＴの値を１減少させるようにしてもよい。そして、変更履歴削除部２８が、予め定められた時間間隔で（例えば、毎日所定時刻に）、含まれるリンク利用数ＣＯＵＮＴの値が０である履歴リンク管理情報３６を削除するようにしてもよい。
【０１００】
また、例えば、処理実行部２４が、オブジェクト情報３０の名称以外の属性を変更する処理や、オブジェクト情報３０の内容を変更する処理を実行した際に、変更履歴関連付け制御部２６が、上述のＳ５０１〜Ｓ５１８に例示する処理と同様の処理を実行して、そのオブジェクト情報３０と、そのオブジェクト情報３０の変更履歴との関連付けを解除するようにしてもよい。
【０１０１】
また、例えば、処理実行部２４がオブジェクト情報３０の複製処理を実行した際に、変更履歴関連付け制御部２６が、オブジェクト情報３０に関連付けられている利用者（例えば、オブジェクト情報３０の作成者や管理者など）と、オブジェクト情報３０の複製処理を要求した利用者と、が同一であると判定した場合は、上述のＳ５０１〜Ｓ５１８に例示する処理と同様の処理を実行して、オブジェクト情報３０の複製と、オブジェクト情報３０の変更履歴との関連付けを解除するようにしてもよい。
【０１０２】
また、例えば、情報記憶部２０が、利用者とその利用者の所属組織とを関連付ける情報を記憶していてもよい。そして、処理実行部２４がオブジェクト情報３０の複製処理を実行した際に、変更履歴関連付け制御部２６が、オブジェクト情報３０に関連付けられている利用者（例えば、オブジェクト情報３０の作成者や管理者など）と、オブジェクト情報３０の複製処理を要求した利用者と、が異なる組織に所属していると判定した場合は、上述のＳ５０１〜Ｓ５１８に例示する処理と同様の処理を実行して、オブジェクト情報３０の複製と、オブジェクト情報３０の変更履歴との関連付けを解除するようにしてもよい。
【０１０３】
また、例えば、情報記憶部２０が、判定条件を示す判定条件情報を記憶していてもよい。そして、処理実行部２４がオブジェクト情報３０に対して処理を実行した際に、変更履歴関連付け制御部２６が、情報記憶部２０に記憶されている判定条件情報が示す判定条件を充足するか否かを判定して、その判定結果に応じて、オブジェクト情報３０の複製と、オブジェクト情報３０の変更履歴とを関連付けるか否かを制御するようにしてもよい。また、情報処理装置１２が、利用者端末１４から判定条件情報を受け付けて、情報記憶部２０に記憶されている判定条件情報を、受け付けた判定条件情報に更新するようにしてもよい。
【０１０４】
また、例えば、判定条件が文書情報であるオブジェクト情報３０の種別に対応付けられていてもよい。そして、変更履歴関連付け制御部２６は、オブジェクト情報３０が、判定条件に対応付けられている種別に合致する場合に、そのオブジェクト情報３０が判定条件を充足するか否かに応じて、オブジェクト情報３０と変更履歴とを関連付けるか否かを制御するようにしてもよい。また、例えば、判定条件がフォルダに対応付けられていてもよい。そして、変更履歴関連付け制御部２６は、オブジェクト情報３０が、判定条件に対応付けられているフォルダ内の文書情報である場合に、そのオブジェクト情報３０が判定条件を充足するか否かに応じて、オブジェクト情報３０と変更履歴とを関連付けるか否かを制御するようにしてもよい。
【０１０５】
なお、上述の具体的な数値や文字列は例示であり、これらの数値や文字列には限定されない。
【符号の説明】
【０１０６】
１０  情報処理システム、１２  情報処理装置、１４  利用者端末（クライアント）、２０  情報記憶部、２２  処理要求受付部、２４  処理実行部、２６  変更履歴関連付け制御部、２８  変更履歴削除部、３０  オブジェクト情報、３２  変更履歴内容管理情報、３４  オブジェクトエントリ管理情報、３６  履歴リンク管理情報。
【図１】
0005644225.tif 000002
【図２】
0005644225.tif 000003
【図３】
0005644225.tif 000004
【図４】
0005644225.tif 000005
【図５】
0005644225.tif 000006
【図６】
0005644225.tif 000007
【図７】
0005644225.tif 000008
【図８】
0005644225.tif 000009
【図９】
0005644225.tif 000010
【図１０】
0005644225.tif 000011
【図１１】
0005644225.tif 000012
【図１２】
0005644225.tif 000013
【図１３】
0005644225.tif 000014
【図１４】
0005644225.tif 000015
【図１５】
0005644225.tif 000016
【図１６】
0005644225.tif 000017
【図１７】
0005644225.tif 000018
【図１８】
0005644225.tif 000019
【図１９】
0005644225.tif 000020
【図２０】
0005644225.tif 000021
【図２１Ａ】
0005644225.tif 000022
【図２１Ｂ】
0005644225.tif 000023
【図２２Ａ】
0005644225.tif 000024
【図２２Ｂ】
0005644225.tif 000025
【図２３】
0005644225.tif 000026