(57)【要約】【課題】初期バージョン文書を根ノードとし、親文書からの差分を表す各ノードにより各電子文書が表現された木構造で複数の電子文書を管理するにあたり、差異がある電子文書を全て別バージョンとして管理する場合に比して、管理するバージョンの数を低減する。【解決手段】比較部２４は、文書ＤＢ１６に格納された電子文書である元文書と、元文書を編集した編集文書とを比較して、元文書と編集文書との差分の位置及び内容を抽出する。比較部２４により抽出された、元文書と編集文書との差分が、予め定められたカスタマイズ対象箇所４６のみにある場合、文書登録部２６は、編集文書を元文書と同バージョンの電子文書として登録する。【選択図】図１
2020154611.tif 000002
【特許請求の範囲】
【請求項１】
初期バージョン文書を根ノードとし、親文書からの差分を表す各ノードにより各電子文書が表現された木構造で複数の電子文書を管理する電子文書管理装置であって、
前記木構造に含まれる電子文書である元文書と前記元文書を編集した編集文書との差分が、前記木構造を構成する複数の電子文書で共通して予め定められた編集対象箇所のみにある場合、前記元文書と前記編集文書とを同バージョンの電子文書として登録する文書登録部と、
を備えることを特徴とする電子文書管理装置。
【請求項２】
前記文書登録部は、前記元文書と前記編集文書との差分が前記編集対象箇所以外にある場合、前記木構造における前記元文書の下位に位置する下位文書であって、前記編集対象箇所以外の部分において、前記元文書との差分が前記元文書と前記編集文書との差分と一致する下位文書と、前記編集文書とを同バージョンの電子文書として登録する、
ことを特徴とする請求項１に記載の電子文書管理装置。
【請求項３】
前記文書登録部は、前記下位文書の中に、前記編集文書と同バージョンとできる電子文書がない場合、前記木構造に含まれる前記下位文書以外の電子文書であって、前記編集対象箇所以外の部分において、前記初期バージョン文書との差分が、前記初期バージョン文書と前記元文書との差分と、前記元文書と前記編集文書との差分とを累積した累積差分と一致する電子文書と、前記編集文書とを同バージョンの電子文書として登録する、
ことを特徴とする請求項２に記載の電子文書管理装置。
【請求項４】
前記文書登録部は、前記木構造を構成する複数の電子文書の中に、前記編集文書と同バージョンとできる電子文書がない場合、前記編集文書を新バージョンの電子文書として登録する、
ことを特徴とする請求項３に記載の電子文書管理装置。
【請求項５】
前記文書登録部は、前記下位文書の中に、前記編集文書と同バージョンとできる電子文書がない場合、前記編集文書を新バージョンの電子文書として登録する、
ことを特徴とする請求項２に記載の電子文書管理装置。
【請求項６】
前記下位文書は、前記元文書の子文書であり、
前記文書登録部は、前記子文書の中に、前記編集文書と同バージョンとできる電子文書がない場合、前記編集文書を新バージョンの電子文書として登録する、
ことを特徴とする請求項５に記載の電子文書管理装置。
【請求項７】
前記文書登録部は、差分の位置に応じて予め設定された重要度に基づいて、前記木構造を構成する複数の電子文書のうち、前記初期バージョン文書と前記電子文書との差分と、前記累積差分との間で、互いに相違する差分の重要度がより小さい前記電子文書の子文書として前記編集文書を登録する、
ことを特徴とする請求項４に記載の電子文書管理装置。
【請求項８】
前記初期バージョン文書と、前記木構造において前記初期バージョン文書の下位に位置する各電子文書との複数の差分が存在する箇所に基づいて、当該木構造における前記編集対象箇所を再設定する編集対象箇所設定部と、
をさらに備えることを特徴とする請求項１から７のいずれか１項に記載の電子文書管理装置。
【請求項９】
初期バージョン文書を根ノードとし、親文書からの差分を表す各ノードにより各電子文書が表現された木構造で複数の電子文書を管理するコンピュータを、
前記木構造に含まれる電子文書である元文書と前記元文書を編集した編集文書との差分が、前記木構造を構成する複数の電子文書で共通して予め定められた編集対象箇所のみにある場合、前記元文書と前記編集文書とを同バージョンの電子文書として登録する文書登録部と、
として機能させることを特徴とする電子文書管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子文書管理装置及び電子文書管理プログラムに関する。
【背景技術】
【０００２】
従来、電子文書の複数のバージョンを管理する装置が提案されている。例えば、特許文献１には、取引文書をバージョン付けして蓄積管理する装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−２５９６７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、初期バージョンの電子文書の一部が編集された別バージョンの電子文書が作成され、初期バージョンの電子文書と別バージョンの電子文書とが関連付けられて管理される場合がある。このような場合、これら複数のバージョンの電子文書を木構造を用いて管理することが考えられる。すなわち、初期バージョンを根ノードとし、初期バージョンを編集することで得られた子バージョンの電子文書を根ノードの子ノードとして管理し、さらに、子バージョンを編集することで得られた孫バージョンの電子文書を子ノードの子ノードとして管理するとの如くである。ここで、子ノード以下は、親ノードが示す親文書との差分のみを保持すれば足りる。
【０００５】
このような木構造において、内容に少しでも差異がある電子文書をそれぞれ別のバージョンとして管理すると、管理するバージョンの数が増えてしまう場合がある。管理するバージョンの数が増えると、複数のバージョンの電子文書を管理するコストが増大するなどの問題が生じ得る。
【０００６】
本発明の目的は、初期バージョン文書を根ノードとし、親文書からの差分を表す各ノードにより各電子文書が表現された木構造で複数の電子文書を管理するにあたり、差異がある電子文書を全て別バージョンとして管理する場合に比して、管理するバージョンの数を低減することにある。
【課題を解決するための手段】
【０００７】
請求項１に係る発明は、初期バージョン文書を根ノードとし、親文書からの差分を表す各ノードにより各電子文書が表現された木構造で複数の電子文書を管理する電子文書管理装置であって、前記木構造に含まれる電子文書である元文書と前記元文書を編集した編集文書との差分が、前記木構造を構成する複数の電子文書で共通して予め定められた編集対象箇所のみにある場合、前記元文書と前記編集文書とを同バージョンの電子文書として登録する文書登録部と、を備えることを特徴とする電子文書管理装置である。
【０００８】
請求項２に係る発明は、前記文書登録部は、前記元文書と前記編集文書との差分が前記編集対象箇所以外にある場合、前記木構造における前記元文書の下位に位置する下位文書であって、前記編集対象箇所以外の部分において、前記元文書との差分が前記元文書と前記編集文書との差分と一致する下位文書と、前記編集文書とを同バージョンの電子文書として登録する、ことを特徴とする請求項１に記載の電子文書管理装置である。
【０００９】
請求項３に係る発明は、前記文書登録部は、前記下位文書の中に、前記編集文書と同バージョンとできる電子文書がない場合、前記木構造に含まれる前記下位文書以外の電子文書であって、前記編集対象箇所以外の部分において、前記初期バージョン文書との差分が、前記初期バージョン文書と前記元文書との差分と、前記元文書と前記編集文書との差分とを累積した累積差分と一致する電子文書と、前記編集文書とを同バージョンの電子文書として登録する、ことを特徴とする請求項２に記載の電子文書管理装置である。
【００１０】
請求項４に係る発明は、前記文書登録部は、前記木構造を構成する複数の電子文書の中に、前記編集文書と同バージョンとできる電子文書がない場合、前記編集文書を新バージョンの電子文書として登録する、ことを特徴とする請求項３に記載の電子文書管理装置である。
【００１１】
請求項５に係る発明は、前記文書登録部は、前記下位文書の中に、前記編集文書と同バージョンとできる電子文書がない場合、前記編集文書を新バージョンの電子文書として登録する、ことを特徴とする請求項２に記載の電子文書管理装置である。
【００１２】
請求項６に係る発明は、前記下位文書は、前記元文書の子文書であり、前記文書登録部は、前記子文書の中に、前記編集文書と同バージョンとできる電子文書がない場合、前記編集文書を新バージョンの電子文書として登録する、ことを特徴とする請求項５に記載の電子文書管理装置である。
【００１３】
請求項７に係る発明は、前記文書登録部は、差分の位置に応じて予め設定された重要度に基づいて、前記木構造を構成する複数の電子文書のうち、前記初期バージョン文書と前記電子文書との差分と、前記累積差分との間で、互いに相違する差分の重要度がより小さい前記電子文書の子文書として前記編集文書を登録する、ことを特徴とする請求項４に記載の電子文書管理装置である。
【００１４】
請求項８に係る発明は、前記初期バージョン文書と、前記木構造において前記初期バージョン文書の下位に位置する各電子文書との複数の差分が存在する箇所に基づいて、当該木構造における前記編集対象箇所を再設定する編集対象箇所設定部と、をさらに備えることを特徴とする請求項１から７のいずれか１項に記載の電子文書管理装置である。
【００１５】
請求項９に係る発明は、初期バージョン文書を根ノードとし、親文書からの差分を表す各ノードにより各電子文書が表現された木構造で複数の電子文書を管理するコンピュータを、前記木構造に含まれる電子文書である元文書と前記元文書を編集した編集文書との差分が、前記木構造を構成する複数の電子文書で共通して予め定められた編集対象箇所のみにある場合、前記元文書と前記編集文書とを同バージョンの電子文書として登録する文書登録部と、として機能させることを特徴とする電子文書管理プログラムである。
【発明の効果】
【００１６】
請求項１又は９に係る発明によれば、初期バージョン文書を根ノードとし、親文書からの差分を表す各ノードにより各電子文書が表現された木構造で複数の電子文書を管理するにあたり、差異がある電子文書を全て別バージョンとして管理する場合に比して、管理するバージョンの数を低減することができる。
【００１７】
請求項２に係る発明によれば、元文書の下位に位置する下位文書と編集文書とを同バージョンの電子文書として登録することができる。
【００１８】
請求項３に係る発明によれば、木構造に含まれる下位文書以外の電子文書と編集文書とを同バージョンの電子文書として登録することができる。
【００１９】
請求項４に係る発明によれば、編集文書を新バージョンの電子文書として登録することができる。
【００２０】
請求項５に係る発明によれば、木構造を構成する全ての電子文書について、編集文書と同バージョンとできるか否かを判定する場合に比して、編集文書と同バージョンとできる電子文書を特定する処理の処理量を低減することができる。
【００２１】
請求項６に係る発明によれば、全ての下位文書について、編集文書と同バージョンとできるか否かを判定する場合に比して、編集文書と同バージョンとできる電子文書を特定する処理の処理量を低減することができる。
【００２２】
請求項７に係る発明によれば、初期バージョン文書と木構造に含まれる電子文書との差分と、累積差分との間で、互いに相違する差分の重要度に基づいて、編集文書の親文書を決定することができる。
【００２３】
請求項８に係る発明によれば、編集対象箇所の再設定を行うことができる。
【図面の簡単な説明】
【００２４】
【図１】本実施形態に係る電子文書管理装置の構成概略図である。
【図２】木構造の例を示す第１の図である。
【図３】初期バージョン文書の例を示す図である。
【図４】初期バージョン文書の子文書の例を示す第１の図である。
【図５】初期バージョン文書の子文書の例を示す第２の図である。
【図６】文書ＤＢの内容の例を示す概念図である。
【図７】配布先ＤＢの内容の例を示す概念図である。
【図８】差分ＤＢの内容の例を示す概念図である。
【図９】編集文書の第１の例を示す図である。
【図１０】編集文書の第２の例を示す図である。
【図１１】木構造の例を示す第２の図である。
【図１２】本実施形態に係る電子文書管理装置の処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００２５】
図１は、本実施形態に係る電子文書管理装置１０の構成概略図である。本実施形態においては、電子文書管理装置１０はサーバコンピュータにより構成されるが、電子文書管理装置１０は、以下に説明する機能を発揮する限りにおいて、どのような装置であってもよい。また、電子文書管理装置１０は、複数の装置から構成されていてもよい。
【００２６】
電子文書管理装置１０は、利用者（ユーザ）から入力された電子文書を管理するサービスをユーザに提供する。具体的には、電子文書管理装置１０は、ユーザが利用するユーザ端末から送信された電子文書を記憶する。特に、電子文書管理装置１０は、電子文書である初期バージョン文書と、初期バージョン文書の一部を編集した電子文書とにバージョンを付した上で関連付けて管理する。以下、電子文書管理装置１０の詳細について説明する。
【００２７】
通信部１２は、例えば通信モジュールなどを含んで構成される。通信部１２は、インターネットあるいはＬＡＮなどから構成される通信回線を介してユーザ端末と通信するために用いられる。通信部１２は、ユーザ端末からの要求に応じて、電子文書管理装置１０で管理されている電子文書をユーザ端末に送信する。また、通信部１２は、ユーザ端末から電子文書を受信する。
【００２８】
記憶部１４は、例えばＲＯＭ、ＲＡＭ、あるいはハードディスクなどを含んで構成される。記憶部１４には、電子文書管理装置１０の各部を動作させるための電子文書管理プログラムが記憶される。また、図２に示すように、記憶部１４には、文書ＤＢ（データベース）１６、配布先ＤＢ１８、及び差分ＤＢ２０が記憶される。
【００２９】
文書ＤＢ１６には、電子文書管理装置１０で管理する電子文書に関する情報が格納される。文書ＤＢ１６においては、初期バージョン文書と、初期バージョン文書の一部を編集した電子文書とが関連付けられて記憶される。特に、文書ＤＢ１６においては、複数バージョンの電子文書が木構造によって関連付けられている。
【００３０】
図２に、複数バージョンの電子文書の関係を示す木構造４０が示されている。木構造４０が示す複数バージョンの電子文書のうち、最初に文書ＤＢ１６に格納された初期バージョン文書を木構造４０の根ノード４０ａとしている。図２では、各ノードに、対応する電子文書のバージョン名が記載されており、初期バージョン文書のバージョン名は「ＩＤ１」となっている。図３に、初期バージョン文書ＩＤ１の例が示されている。ちなみに、本実施形態では、初期バージョン文書ＩＤ１は、セミナーの案内文書である。
【００３１】
根ノード４０ａの子ノード４０ｂ，４０ｃは、初期バージョン文書ＩＤ１とは異なるバージョンの電子文書に対応している。図４は、子ノード４０ｂに対応する、バージョン名が「ＩＤ１１」である電子文書ＩＤ１１の例が示され、図５には、子ノード４０ｂに対応する、バージョン名が「ＩＤ１２」である電子文書ＩＤ１２の例が示されている。
【００３２】
図３と図４を比較して分かるように、電子文書ＩＤ１１は、初期バージョン文書ＩＤ１の一部が編集された電子文書である。図４の例では、電子文書ＩＤ１１は、初期バージョン文書ＩＤ１に基づいて、セミナー開催の日時（２０１９年４月１９日）及び申込期限（２０１９年２月１５日）が編集されている。つまり、初期バージョン文書ＩＤ１と電子文書ＩＤ１１の差分４２は、日時及び申込期限である。同様に、図３と図５を比較して分かるように、電子文書ＩＤ１２は、初期バージョン文書ＩＤ１の一部が編集された文書である。図５の例では、電子文書ＩＤ１２は、初期バージョン文書ＩＤ１に基づいて、申込方法（・・・弊社担当者にお渡しください。）が編集されている。つまり、初期バージョン文書ＩＤ１と電子文書ＩＤ１２の差分４４は、申込方法である。
【００３３】
電子文書ＩＤ１１及びＩＤ１２は、初期バージョン文書ＩＤ１に基づいてユーザが編集したものである。例えば、電子文書管理装置１０は、ユーザ端末からの要求に応じて、予め文書ＤＢ１６に格納されている初期バージョン文書ＩＤ１をユーザ端末に送信する。ユーザが、ユーザ端末にて初期バージョン文書ＩＤ１を編集して電子文書ＩＤ１１を作成し、電子文書管理装置１０に送信することで、電子文書管理装置１０は電子文書ＩＤ１１を取得する。電子文書ＩＤ１２についても同様である。
【００３４】
ノード４０ｂの子ノード（つまり、根ノード４０ａの孫ノード）４０ｄは、電子文書ＩＤ１１の一部が編集された電子文書ＩＤ１１１に対応するノードである。電子文書ＩＤ１１１は、電子文書ＩＤ１１に基づいてユーザが編集したものである。
【００３５】
木構造４０に含まれる根ノード４０ａ以外の各ノードは、親ノードからの差分を表すものとなっている。例えば、電子文書ＩＤ１１に対応するノード４０ｂには、初期バージョン文書ＩＤ１からの変更点の位置及び内容を示す情報が含まれる。換言すれば、根ノード４０ａ以外の各ノードは、対応する電子文書の全ての情報を有していない。これにより、木構造４０のデータ容量が削減される。
【００３６】
なお、本明細書では、注目ノードの下位に位置するノードを「下位ノード」と呼ぶ。下位ノードには、注目ノードの１つ下のノードである子ノードも含まれる。また、注目ノードに対応する注目電子文書に対して、下位ノードに対応する文書を下位文書と呼ぶ。同様に、注目ノードに対応する注目電子文書に対して、注目ノードの親ノードに対応する文書を親文書と呼び、注目ノードの子ノードに対応する文書を子文書と呼ぶ。
【００３７】
文書ＤＢ１６には、図２に示すような木構造４０を示すテーブルが格納される。図６には、文書ＤＢ１６の内容が示されている。図６は、図２に示した木構造４０を表したテーブルである。また、文書ＤＢ１６には、初期バージョン文書ＩＤ１が格納される。
【００３８】
図２に示す通り、文書ＤＢ１６においては、文書ＩＤ、親文書ＩＤ、子文書ＩＤ、親文書との差分、及び、編集対象箇所としてのカスタマイズ対象箇所が互いに関連付けられている。
【００３９】
文書ＩＤは、文書ＤＢ１６に格納される電子文書を一意に識別するものである。本実施形態では、異なるバージョン毎に文書ＩＤが付されるため、文書ＩＤは、電子文書のバージョンを示すものであるともいえる。親文書ＩＤは、木構造４０における対象文書の親文書のＩＤを示し、子文書ＩＤは、木構造４０における対象文書の子文書のＩＤを示す。文書ＩＤと、親文書ＩＤと、子文書ＩＤとによって、図２に示す木構造４０が示される。
【００４０】
親文書との差分は、文書ＩＤが示す電子文書の親文書との差分の位置及び内容を示す。初期バージョン文書ＩＤ１の子文書である電子文書ＩＤ１１は、初期バージョン文書ＩＤ１、及び、電子文書ＩＤ１１の親文書（つまり初期バージョン文書ＩＤ１）との差分に基づいて、その内容を復元することができる。また、電子文書ＩＤ１１の子文書である電子文書ＩＤ１１１は、初期バージョン文書ＩＤ１、電子文書ＩＤ１１の親文書との差分、及び、電子文書ＩＤ１１１の親文書との差分とに基づいて、その内容を復元することができる。
【００４１】
このように、文書ＤＢ１６には、初期バージョン文書ＩＤ１以外は、電子文書そのものが格納されないが、本明細書では、便宜上、文書ＤＢ１６に格納された情報により復元可能な電子文書を文書ＤＢ１６に格納された電子文書と表現する。
【００４２】
カスタマイズ対象箇所は、電子文書内の一定の領域であり、編集されることが予定されている箇所、あるいは、編集される可能性が高い箇所である。図３〜５を参照して、本実施形態においては、電子文書の左上に記載された当該電子文書の宛先がカスタマイズ対象箇所４６となっている。詳しくは後述するが、電子文書管理装置１０においては、カスタマイズ対象箇所４６のみが互いに異なる複数の電子文書を同バージョンの電子文書として管理する。
【００４３】
カスタマイズ対象箇所４６は、１つの木構造を構成する複数の電子文書で共通して定められたものであり、初期バージョン文書が文書ＤＢ１６に格納される際に、ユーザによって設定される。例えば、初期バージョン文書が文書ＤＢ１６に格納される際に、初期バージョン文書を作成したユーザによってカスタマイズ対象箇所４６が設定される。なお、後述のカスタマイズ対象箇所設定部３０の処理によって、カスタマイズ対象箇所４６を再設定することも可能である。
【００４４】
なお、図６には、１つの木構造４０に対応したテーブルが示されているが、文書ＤＢ１６には、複数の木構造に対応した複数のテーブルが記憶されていてもよい。
【００４５】
配布先ＤＢ１８は、文書ＤＢ１６に格納された電子文書が配布された配布先（例えば個人や会社など）に関する情報が格納される。本実施形態に係る電子文書管理装置１０は、ユーザ端末から送信された電子文書であって、配布先に配布された電子文書を管理する。ユーザは、各電子文書を配布先に配布する際に、配布する電子文書と、配布先を一意に識別する配布先ＩＤとを電子文書管理装置１０に送信する。電子文書管理装置１０は、受信した電子文書を配布先に配布するとともに、ユーザ端末から受信した情報を配布先ＤＢ１８に格納する。
【００４６】
図７には、配布先ＤＢ１８の内容が示されている。図７に示される通り、配布先ＤＢ１８においては、配布先ＩＤと、当該配布先に配布された電子文書を示す文書ＩＤと、カスタマイズ内容が示されている。上述の通り、電子文書管理装置１０においては、カスタマイズ対象箇所４６が互いに異なる複数の電子文書が同バージョンの電子文書として管理される。したがって、カスタマイズ内容とは、文書ＩＤが示す電子文書内容と、実際に配布先に配布された電子文書との差分の位置及び内容を示すものである。
【００４７】
例えば、図４を参照して、電子文書ＩＤ１１のカスタマイズ対象箇所４６である宛先の記載は「［顧客ＩＤ＿窓口担当者名］様」であるところ、実際に配布先ＩＤ「Ｕ００１」が示す配布先に配布された電子文書の宛先が「◎◎社◎◎様」である場合、配布先ＩＤ「Ｕ００１」及び文書ＩＤ「ＩＤ１１」に関連付けられるカスタマイズ内容は「宛先：◎◎社◎◎様」となる。配布先ＤＢ１８にカスタマイズ内容を記憶しておくことで、文書ＩＤ１６と配布先ＤＢ１８との内容に基づいて、各配布先に配布した電子文書の内容を特定することができる。
【００４８】
差分ＤＢ２０は、２つの電子文書間における差分の位置に対応するスコアが格納される。図８に、差分ＤＢ２０の内容が示されている。スコアとは、差分の位置の重要度を意味する数値である。本実施形態では、差分ＤＢ２０において、差分の位置毎にスコアが設定されているが、差分の位置及び内容毎にスコアが設定されていてもよい。例えば、差分の位置「会場」については、初期バージョン文書における会場との位置関係によって、その内容（つまり会場の位置）に応じてスコアが定められていてもよい。差分ＤＢ２０は、電子文書管理装置１０の管理者などによって作成され、予め記憶部１４に記憶される。差分ＤＢ２０の利用法については後述する。
【００４９】
制御部２２は、例えばＣＰＵあるいはマイクロコントローラを含んで構成される。制御部２２は、記憶部１４に記憶された電子文書管理プログラムに従って、電子文書管理装置１０の各部を制御する。また、図１に示されるように、制御部２２は、比較部２４及び文書登録部２６を含む文書管理部２８、並びに、カスタマイズ対象箇所設定部３０としても機能する。
【００５０】
文書管理部２８は、ユーザ端末から送信されてくる電子文書を管理する処理を行う。本実施形態では、文書管理部２８は、電子文書を文書ＤＢ１６に格納することで保持し、電子文書をユーザに対して送信する、あるいはユーザからの要求に応じて編集するなどの処理を行う。特に、文書管理部２８は、文書ＤＢ１６に格納された電子文書（すなわち、木構造４０に含まれる電子文書）である元文書をユーザ端末に送り、ユーザが元文書を編集した編集文書をユーザ端末から受信することで、当該編集文書を管理する。
【００５１】
文書管理部２８は、ユーザ端末から編集文書及び配布先ＩＤを受信すると、文書ＤＢ１６に格納された電子文書の中から、編集文書との差分がカスタマイズ対象箇所４６のみにある電子文書を探す。そのような電子文書がある場合には、編集文書を当該電子文書と同バージョンの電子文書として登録する。また、文書ＤＢ１６に、編集文書との差分がカスタマイズ対象箇所４６のみにある電子文書がない場合は、編集文書を新バージョンの電子文書として管理する。以下、比較部２４及び文書登録部２６の処理を説明することで、文書管理部２８の処理の詳細を説明する。
【００５２】
比較部２４は、まず、元文書と編集文書とを比較して、両電子文書の差分の位置及び内容を抽出する。差分の抽出方法としては、例えば、両電子文書の対応する各画素の画素値を比較する方法など、従来の方法を採用することができる。
【００５３】
抽出された差分がカスタマイズ対象箇所４６のみにある場合、文書登録部２６は、編集文書を元文書と同バージョンの電子文書として登録する。具体的には、文書登録部２６は、文書ＤＢ１６に新たな文書ＩＤを格納することなく、配布先ＤＢ１８に、受信した配布先ＩＤ、元文書の文書ＩＤ、及び、カスタマイズ内容としての、比較部２４が抽出した差分の位置及び内容を関連付けて格納する。
【００５４】
例えば、元文書が図４に示す電子文書ＩＤ１１であり、編集文書が図９に示す編集文書１１Ｎ−１であるとする。図４と図９を比較すると、電子文書ＩＤ１１と編集文書１１Ｎ−１との差分４８は宛先だけであり、つまりカスタマイズ対象箇所４６のみにある。したがって、この場合、文書登録部２６は、文書ＤＢ１６に新たな文書ＩＤを格納することなく、配布先ＤＢ１８に、編集文書１１Ｎ−１の配布先を示す配布先ＩＤと、電子文書ＩＤ１１の文書ＩＤと、カスタマイズ内容としての編集文書１１Ｎ−１の宛先を関連付けて格納する。
【００５５】
元文書と編集文書との差分がカスタマイズ対象箇所４６以外にある場合、比較部２４は、木構造４０における元文書の子文書の１つを選択し、元文書と当該子文書との差分を特定する。元文書と当該子文書との差分は、文書ＤＢ１６において、当該子文書の文書ＩＤに関連付けられた親文書との差分に基づいて特定することができる。例えば、元文書が電子文書ＩＤ１１であり、当該子文書が電子文書ＩＤ１１１である場合、文書ＤＢ１６（図６）を参照して、元文書と当該子文書との差分は、挨拶文であることが特定できる。
【００５６】
その上で、比較部２４は、元文書と当該子文書との差分と、元文書と編集文書との差分とを比較する。すなわち、差分同士を比較する。具体的には、比較部２４は、両差分を比較して、カスタマイズ対象箇所４６以外の部分において、両差分が一致するか否かを判定する。カスタマイズ対象箇所４６以外の部分において両差分が一致した場合、当該子文書と編集文書とでは、カスタマイズ対象箇所４６以外の部分の内容が一致している（つまりカスタマイズ対象箇所４６以外に差分がない）と言えるので、文書登録部２６は、編集文書を当該子文書と同バージョンの電子文書として登録する。具体的には、文書登録部２６は、文書ＤＢ１６に新たな文書ＩＤを格納することなく、配布先ＤＢ１８に、受信した配布先ＩＤ、当該子文書の文書ＩＤ、及び、カスタマイズ内容としての、比較部２４が抽出した差分の位置及び内容を関連付けて格納する。
【００５７】
元文書と当該子文書との差分と、元文書と編集文書との差分とを比較した結果、カスタマイズ対象箇所４６以外の部分において両差分が一致しなかった場合、比較部２４は、元文書と他の子文書との差分と、元文書と編集文書との差分との間で、同様の差分比較処理を行う。そして、元文書といずれかの子文書との間の差分と、元文書と編集文書との間の差分が、カスタマイズ対象箇所４６以外の部分において一致すれば、文書登録部２６は、編集文書を当該子文書と同バージョンの電子文書として登録する。
【００５８】
元文書の子文書の中に、編集文書と同バージョンとできる電子文書がない場合、比較部２４は、さらに、元文書と子文書の子文書（つまり元文書の孫文書）との差分と、元文書と編集文書との差分とを比較する。元文書と孫文書との差分は、文書ＤＢ１６において、孫文書の文書ＩＤに関連付けられた親文書との差分、及び、孫文書の親文書の文書ＩＤに関連付けられた親文書との差分とを足し合わせることで特定することができる。
【００５９】
このように、比較部２４は、子文書から世代を深めていきながら、元文書と各下位文書との差分と、元文書と編集文書との差分を順次比較していく。そして、元文書といずれかの下位文書との差分と、元文書と編集文書との差分が、カスタマイズ対象箇所４６以外の部分において一致すれば、編集文書を当該下位文書と同バージョンの電子文書として登録する。
【００６０】
元文書の下位文書の中に、編集文書と同バージョンとできる電子文書がない場合、木構造において下位文書以外の電子文書、つまり、元文書の下位ではない電子文書（以下「他枝文書」と記載する）の中に、編集文書と同バージョンとして管理できる電子文書がないか否かを探していく。例えば、図２の木構造４０において、元文書がノード４０ｂに対応する電子文書ＩＤ１１である場合、他枝文書とは、ノード４０ｃに対応する電子文書ＩＤ１２、及び、それ以下の電子文書ＩＤ１２１、ＩＤ１２２、及びＩＤ１２１１である。
【００６１】
他枝文書は、元文書を編集したものではないため、元文書と編集文書との差分のみを用いたのでは、他枝文書の中から、カスタマイズ対象箇所４６以外の部分の内容が編集文書と一致している電子文書の特定することができない。したがって、比較部２４は、まず、初期バージョン文書ＩＤ１と編集文書との差分を特定する。具体的には、比較部２４は、初期バージョン文書ＩＤ１と元文書との差分と、元文書と編集文書との差分を累積させた累積差分を初期バージョン文書ＩＤ１と編集文書との間の差分とする。ここでも、初期バージョン文書ＩＤ１と元文書との差分は、文書ＤＢ１６に基づいて特定することができる。
【００６２】
例えば、元文書が図４に示す電子文書ＩＤ１１であり、編集文書が図１０に示す編集文書１１Ｎ−２であるとする。文書ＤＢ１６（図６）を参照して、元文書である電子文書ＩＤ１１の親文書は初期バージョン文書ＩＤ１であるから、初期バージョン文書ＩＤ１と元文書との差分は、文書ＩＤ１１に関連付けられた「親文書との差分」項目の値（すなわち日時及び申込方法）と特定できる。仮に、元文書が初期バージョン文書ＩＤ１の子文書でない場合は、文書ＩＤ１６に基づいて、初期バージョン文書ＩＤ１に至るまで、元文書から順次親文書を追っていき、複数の親文書の文書ＩＤに関連付けられた複数の「親文書との差分」の値を足し合わせることで、初期バージョン文書ＩＤ１と元文書との差分を特定できる。
【００６３】
そして、比較部２４は、特定した初期バージョン文書ＩＤ１と元文書との差分に、先の比較処理で抽出した、元文書と編集文書との差分を足し合わせることで累積差分を特定する。図１０において、初期バージョン文書ＩＤ１と元文書との差分４２（日時及び申込期限）と、元文書と編集文書との差分５０（宛先及び申込方法）が示されている。差分４２と差分５０を足し合わせたものが累積差分となる。
【００６４】
次に、比較部２４は、初期バージョン文書ＩＤ１と他枝文書の１つとの差分と、累積差分（初期バージョン文書ＩＤと編集文書との差分）とを比較する。具体的には、比較部２４は、両差分を比較して、カスタマイズ対象箇所４６以外の部分において、両差分が一致するか否かを判定する。ここでも、初期バージョン文書ＩＤ１と当該他枝文書との差分は、文書ＤＢ１６に基づいて特定することができる。なお、他枝文書が複数ある場合、いずれの他枝文書を先に選んでもよいが、本実施形態では、木構造４０において根ノード４０ａに近いノードに対応する電子文書から順に他枝文書を選択していく。すなわち、図２の例では、まず、ノード４０ｃに対応する電子文書ＩＤ１２を他枝文書とする。
【００６５】
初期バージョン文書ＩＤ１と当該他枝文書との差分と、累積差分との間で、カスタマイズ対象箇所４６以外の部分において両差分が一致した場合、当該他枝文書と編集文書とでは、カスタマイズ対象箇所４６以外の部分の内容が一致している（つまりカスタマイズ対象箇所４６以外に差分がない）と言えるので、文書登録部２６は、編集文書を当該他枝文書と同バージョンの電子文書として登録する。
【００６６】
初期バージョン文書ＩＤ１と当該他枝文書との差分と、累積差分との間で、カスタマイズ対象箇所４６以外の部分において両差分が一致しなかった場合、比較部２４は、初期バージョン文書ＩＤ１とその他の他枝文書との差分と、累積差分との間で同様の差分比較処理を順次行っていく。そして、初期バージョン文書ＩＤ１といずれかの他枝文書との差分と、累積差分との間でカスタマイズ対象箇所４６以外の部分において両差分が一致すれば、文書登録部２６は、編集文書を当該他枝文書と同バージョンの電子文書として登録する。
【００６７】
なお、元文書を編集した結果、カスタマイズ対象箇所４６以外の部分において、編集文書と初期バージョン文書ＩＤ１との内容が一致する場合も考えられる。この場合、初期バージョン文書ＩＤ１と元文書との差分の位置と、元文書と編集文書の差分の位置とが同じであり、初期バージョン文書ＩＤ１と元文書との差分の内容と逆の内容が、元文書と編集文書の差分の内容となっている。その場合、文書登録部２６は、編集文書を初期バージョン文書ＩＤ１と同バージョンの電子文書として登録する。
【００６８】
上述までの処理の結果、編集文書と同バージョンとできる電子文書が文書ＤＢ１６に格納されていない場合、換言すれば、木構造４０を構成する複数の電子文書の中に、編集文書と同バージョンとできる電子文書がない場合、文書登録部２６は、編集文書を新バージョンの電子文書として登録する。なお、文書登録部２６は、編集文書をそのまま新バージョンの電子文書として登録してもよいが、本実施形態では、編集文書のうち、カスタマイズ対象箇所４６の内容を初期バージョン文書ＩＤ１の内容に変更して登録する。図１０に示す編集文書１１Ｎ−２を新バージョンとして登録する場合、文書登録部２６は、カスタマイズ対象箇所４６の内容を、初期バージョン文書ＩＤ１の内容である「［顧客ＩＤ＿窓口担当者名］様」（図３参照）に変更した上で、変更後の編集文書１１Ｎ−２を登録する。
【００６９】
本実施形態では、文書登録部２６は、木構造４０において、編集文書を元文書の子文書として登録する。具体的には、文書登録部２６は、文書ＤＢ１６に、編集文書に対応する新たな文書ＩＤを格納し、当該文書ＩＤに、親文書ＩＤとして元文書の文書ＩＤを関連付け、親文書との差分として先に抽出した元文書と編集文書との差分を関連付けて格納する。さらに、文書登録部２６は、配布先ＤＢ１８に、受信した配布先ＩＤ、編集文書を示す文書ＩＤ、及び、カスタマイズ内容としての、「宛先：◎◎社◎◎様」を関連付けて格納する。
【００７０】
本実施形態では、上述のように、文書登録部２６は、木構造４０を構成する全ての電子文書の中に、編集文書と同バージョンとできる電子文書がないと判定された場合に、編集文書を新バージョンの電子文書として登録していたが、文書登録部２６は、元文書の下位文書の中に、編集文書と同バージョンとできる電子文書がないと判定した場合に、他枝文書の中に編集文書と同バージョンとできる電子文書があるか否かを判定せずに、編集文書を新バージョンの電子文書として登録するようにしてもよい。
【００７１】
例えば、木構造４０のノード数が多く、他枝文書の数が膨大である場合、木構造４０を構成する全ての電子文書について、編集文書と同バージョンとできるか否かを判定すると、当該判定処理の処理量が膨大になってしまう。ここで、編集文書は元文書を編集したものであるから、元文書といずれかの下位文書との差分と、元文書と編集文書との差分が、カスタマイズ対象箇所４６以外の部分において一致する可能性（つまり編集文書といずれかの下位文書とを同バージョンとできる可能性）は、元文書といずれかの他枝文書との差分と、元文書と編集文書との差分が、カスタマイズ対象箇所４６以外の部分において一致する可能性よりも高いと言える。したがって、編集文書と同バージョンとできる可能性がより高い、下位文書の中に編集文書と同バージョンとできる電子文書がないならば、それ以上の差分比較処理はせずに、編集文書を新バージョンの電子文書として登録するようにしてもよい。
【００７２】
同様の観点で、文書登録部２６は、元文書の子文書の中に、編集文書と同バージョンとできる電子文書がないと判定した場合に、それ以下の下位文書の中に編集文書と同バージョンとできる電子文書があるか否かを判定せずに、編集文書を新バージョンの電子文書として登録するようにしてもよい。編集文書は元文書を編集したものであるから、元文書といずれかの子文書との差分と、元文書と編集文書との差分が、カスタマイズ対象箇所４６以外の部分において一致する可能性（つまり編集文書といずれかの子文書とを同バージョンとできる可能性）は、元文書といずれかの下位文書との差分と、元文書と編集文書との差分が、カスタマイズ対象箇所４６以外の部分において一致する可能性よりもさらに高いと言える。したがって、編集文書と同バージョンとできる可能性がさらに高い、子文書の中に編集文書と同バージョンとできる電子文書がないならば、それ以上の差分比較処理はせずに、編集文書を新バージョンの電子文書として登録するようにしてもよい。
【００７３】
また、本実施形態では、編集文書を新バージョンの電子文書として登録する場合、編集文書を元文書の子文書として登録していたが、文書登録部２６は、差分ＤＢ２０に格納された、各差分についてのスコア（つまり重要度）に基づいて、木構造４０における編集文書の親文書を決定するようにしてもよい。
【００７４】
具体的には、文書登録部２６は、木構造４０を構成する複数の電子文書のうち、初期バージョン文書ＩＤ１と電子文書との差分と、上記累積差分（すなわち、初期バージョン文書ＩＤ１と編集文書との差分）との間で、互いに相違する差分のスコアがより小さい電子文書の子文書として編集文書を登録するようにしてもよい。
【００７５】
図１１（ａ）に示された木構造６０を参照して具体例を説明する。木構造６０においては、初期バージョン文書ＩＤ１と、その下位に位置する４つの電子文書ＩＤ１１、ＩＤ１２、ＩＤ１２１、及びＩＤ１２２が示されている。各ノードには、当該ノードに対応する電子文書の親文書との差分が示されている。このような木構造６０に対して、図１１（ｂ）に示された編集文書を登録する場合について考える。編集文書は電子文書ＩＤ１１を元文書として編集された電子文書であり、図１１（ｂ）には、編集文書の元文書（電子文書ＩＤ１１）との差分が示されている。
【００７６】
図１１（ｂ）に示した編集文書は、木構造６０に含まれるいずれの電子文書とも同バージョンとして管理できるものではないため、新バージョンとして登録される。まず、比較部２４は、電子文書について、初期バージョン文書ＩＤ１と電子文書との差分と、累積差分との間の相違箇所を特定する。対象電子文書が初期バージョン文書ＩＤ１である場合、比較部２４は、初期バージョン文書ＩＤ１と初期バージョン文書ＩＤとの差分、すなわち、「差分なし」と、累積差分との間の相違箇所を特定する。その上で、差分ＤＢ２０を参照して、各電子文書について、特定した相違箇所に基づくスコアを算出していく。特定した相違箇所が複数ある場合は、複数の相違箇所に対応する複数のスコアを合計する。
【００７７】
まず、累積差分は、初期バージョン文書ＩＤ１と元文書である電子文書ＩＤ１１との差分と、元文書と編集文書との差分を足し合わせたものとなる。ここで、初期バージョン文書ＩＤ１から電子文書ＩＤ１１の差分は日時であり、元文書と編集文書との差分にも日時が含まれており、編集文書における日時が初期バージョン文書ＩＤ１の日時と同じになっているから、累積差分において、日時についての差分は「なし」となる。したがって、編集文書についての累積差分は、申込方法と申込期限となる。
【００７８】
木構造６０の根ルートから順に検討していく。まず、対象電子文書が初期バージョン文書ＩＤ１である場合、比較部２４は、「差分なし」と、累積差分とを比較する。両者の相違箇所は、申込方法及び申込期限である。したがって、差分ＤＢ２０を参照して、初期バージョン文書ＩＤ１についてのスコアは、２（申込方法）＋４（申込期限）＝６となる。
【００７９】
次に、対象電子文書が電子文書ＩＤ１１である場合、比較部２４は、初期バージョン文書ＩＤ１と電子文書ＩＤ１１との差分と、累積差分とを比較する。両者の相違箇所は、申込方法、申込期限、及び日時である。したがって、差分ＤＢ２０を参照して、電子文書ＩＤ１１についてのスコアは、２（申込方法）＋４（申込期限）＋１００（日時）＝１０６となる。
【００８０】
他の電子文書についても同様にスコアを算出すると、電子文書ＩＤ１２についてのスコアは、２（申込方法）＋４（申込期限）＝６となり、電子文書ＩＤ１２１についてのスコアは、２（申込方法）＋４（申込期限）＋５０（開場）＝５６となり、電子文書ＩＤ１２２についてのスコアは、２（申込方法）となる。
【００８１】
したがって、文書登録部２６は、複数の電子文書のうち、最もスコアが小さかった電子文書ＩＤ１２２の子文書として、編集文書を登録する。
【００８２】
図１に戻り、カスタマイズ対象箇所設定部３０は、初期バージョン文書ＩＤ１と、木構造４０において初期バージョン文書ＩＤ１の下位に位置する各電子文書との複数の差分が存在する箇所に基づいて、当該木構造４０におけるカスタマイズ対象箇所４６の再設定を行う。初期バージョン文書ＩＤ１と各電子文書との間において、カスタマイズ対象箇所４６ではない箇所が、多数差分として抽出されている場合、当該箇所は、よく編集される箇所であると言える。そのような箇所をカスタマイズ対象箇所４６とすれば、当該箇所が編集されても、編集文書を木構造４０に含まれるいずれの電子文書と同バージョンとして管理できるようになる可能性が高い。
【００８３】
したがって、カスタマイズ対象箇所設定部３０は、文書ＤＢ１６に基づいて、初期バージョン文書ＩＤ１と各電子文書との差分をそれぞれ抽出し、多く抽出された差分箇所をカスタマイズ対象箇所４６として再設定する。ここで、多く抽出された差分箇所とは、例えば、木構造４０に含まれる電子文書の数に応じて定められた閾値以上差分として抽出された箇所などであってよい。カスタマイズ対象箇所４６が再設定されると、木構造４０が変更されるため、文書管理部２８は、新たなカスタマイズ対象箇所４６に基づいて、木構造４０（すなわち文書ＤＢ１６）の内容を更新する。カスタマイズ対象箇所４６を再設定することで、文書管理部２８が管理する電子文書のバージョン数が低減されるなどの効果を奏し得る。
【００８４】
本実施形態に係る電子文書管理装置１０の概要は以上の通りである。以下、図１２に示されたフローチャートに従って、電子文書管理装置１０の処理の流れを説明する。
【００８５】
ステップＳ１０において、ユーザ端末からの要求に応じて、制御部２２は、文書ＤＢ１６に格納された情報に基づいて、ユーザに指定された元文書を復元してユーザ端末に送信する。ユーザは、元文書を編集して編集文書を作成する。
【００８６】
ステップＳ１２において、電子文書管理装置１０は、編集文書及び当該編集文書の配布先を示す配布先ＩＤをユーザ端末から受信する。
【００８７】
ステップＳ１４において、比較部２４は、元文書と編集文書とを比較して、両電子文書の差分の位置及び内容を抽出する。
【００８８】
ステップＳ１６において、比較部２４は、ステップＳ１４で抽出した差分がカスタマイズ対象箇所４６のみにあるか否かを判定する。
【００８９】
差分がカスタマイズ対象箇所４６のみにある場合はステップＳ１８に進み、ステップＳ１８において、文書登録部２６は、編集文書を元文書と同バージョンの電子文書として登録して処理を終了する。
【００９０】
差分がカスタマイズ対象箇所４６以外にある場合はステップＳ２０に進む。
【００９１】
ステップＳ２０において、比較部２４は、元文書の下位文書の１つを選択し、元文書と当該子文書との差分を特定する。さらに、比較部２４は、元文書と当該子文書との差分と、ステップＳ１４で抽出した元文書と編集文書との差分とを比較する。
【００９２】
ステップＳ２２において、比較部２４は、カスタマイズ対象箇所４６以外の部分において、元文書と当該子文書との差分と、元文書と編集文書との差分が一致するか否かを判定する。
【００９３】
両差分が一致した場合はステップＳ２４に進み、ステップＳ２４において、文書登録部２６は、編集文書を当該下位文書と同バージョンの電子文書として登録して処理を終了する。
【００９４】
両差分が一致しない場合には、ステップＳ２６に進み、ステップＳ２６において、比較部２４は、全ての下位文書についてステップＳ２０〜２４の処理を終えたか否かを判定する。未処理の下位文書が残っている場合は、ステップＳ２０に戻り、比較部２４は、他の下位文書について、ステップＳ２０以下の処理を繰り返す。全ての下位文書について処理が終わった場合、すなわち、下位文書の中に編集文書と同バージョンとできる電子文書がなかった場合はステップＳ２８に進む。
【００９５】
ステップＳ２８において、比較部２４は、初期バージョン文書ＩＤ１と元文書との差分と特定し、ステップＳ１４で抽出した元文書と編集文書との差分を累積させた累積差分を特定する。累積差分は、初期バージョン文書ＩＤ１と編集文書との間の差分である。
【００９６】
ステップＳ３０において、比較部２４は、他枝文書の１つを選択し、初期バージョン文書ＩＤ１と当該他枝文書との差分を特定する。さらに、比較部２４は、初期バージョン文書ＩＤ１と当該他枝文書との差分と、ステップＳ３０で特定した累積差分とを比較する。
【００９７】
ステップＳ３２において、比較部２４は、カスタマイズ対象箇所４６以外の部分において、初期バージョン文書ＩＤ１と当該他枝文書との差分と、累積差分とが一致するか否かを判定する。
【００９８】
両差分が一致した場合はステップＳ３４に進み、ステップＳ３４において、文書登録部２６は、編集文書を当該他枝文書と同バージョンの電子文書として登録して処理を終了する。
【００９９】
両差分が一致しない場合には、ステップＳ３６に進み、ステップＳ３６において、比較部２４は、全ての他枝文書についてステップＳ３０〜３４の処理を終えたか否かを判定する。未処理の他枝文書が残っている場合は、ステップＳ３０に戻り、比較部２４は、他の他枝文書について、ステップＳ３０以下の処理を繰り返す。全ての他枝文書について処理が終わった場合、すなわち、木構造４０を構成する電子文書の中に編集文書と同バージョンとできる電子文書がなかった場合はステップＳ３８に進む。
【０１００】
ステップＳ３８において、文書登録部２６は、編集文書を新バージョンの電子文書として登録して処理を終了する。
【０１０１】
以上、本発明に係る実施形態を説明したが、本発明は上記実施形態に限られるものではなく、本発明の趣旨を逸脱しない限りにおいて種々の変更が可能である。
【符号の説明】
【０１０２】
１０  電子文書管理装置、１２  通信部、１４  記憶部、１６  文書ＤＢ、１８  配布先ＤＢ、２０  差分ＤＢ、２２  制御部、２４  比較部、２６  文書登録部、２８  文書管理部、３０  カスタマイズ対象箇所設定部。
【図１】
2020154611.tif 000003
【図２】
2020154611.tif 000004
【図３】
2020154611.tif 000005
【図４】
2020154611.tif 000006
【図５】
2020154611.tif 000007
【図６】
2020154611.tif 000008
【図７】
2020154611.tif 000009
【図８】
2020154611.tif 000010
【図９】
2020154611.tif 000011
【図１０】
2020154611.tif 000012
【図１１】
2020154611.tif 000013
【図１２】
2020154611.tif 000014