(57)【特許請求の範囲】
【請求項１】
文書へのアクセス要求に応じて、少なくとも１つの文書ＩＤと関連づけられた文書を保持する文書保持部から前記アクセス要求時に指定された文書ＩＤに関連づけられた文書を取得し、前記アクセス要求の要求元に文書ＩＤを更新させるために前記指定された文書ＩＤに対応する文書と関連づける新たな文書ＩＤを生成し、取得した文書及び前記新たな文書ＩＤを前記要求元へ出力する文書提供部と、
前記新たな文書ＩＤの生成に対応して、前記要求元と前記新たな文書ＩＤと前記アクセス要求時に指定された文書ＩＤとの対応付け情報を履歴情報保持部が保持する履歴情報に追加する履歴情報登録部と、
前記要求元による文書ＩＤの転送に対応して、転送される文書ＩＤに対応する文書と関連づける新たな文書ＩＤを生成し、前記転送される文書ＩＤを前記新たな文書ＩＤに置き換える文書ＩＤ置換部と、
転送先への新たな文書ＩＤの転送に対応して、前記要求元と置換後の前記新たな文書ＩＤと置換前の文書ＩＤとの対応付け情報を前記新たな文書ＩＤの転送先と関連づけて前記履歴情報に追加させるための指示を前記履歴情報登録部に通知する通知部と、
を備え、
前記文書提供部は、
文書へのアクセス要求に応じて、前記アクセス要求の際に指定された文書ＩＤが置換後の新たな文書ＩＤとして含まれる対応付け情報を前記履歴情報から検索し、検索した対応付け情報に転送先が関連づけられている場合に前記転送先と前記アクセス要求の要求元とが一致するか否かを判定して、一致する場合に文書を前記要求元へ出力する、
ことを特徴とする文書管理システム。
【請求項２】
文書へのアクセス要求の際に指定された文書ＩＤと、前記アクセス要求の要求元に文書ＩＤを更新させるために前記アクセス要求に応じて生成された新たな文書ＩＤと、前記要求元との対応付け情報を履歴情報保持部が保持する履歴情報に追加する履歴情報登録部と、前記要求元による文書ＩＤの転送に対応して、転送される文書ＩＤに対応する文書と関連づける新たな文書ＩＤを生成し、前記転送される文書ＩＤを前記新たな文書ＩＤに置き換える文書ＩＤ置換部と、転送先への新たな文書ＩＤの転送に対応して、置換前の文書ＩＤと置換後の前記新たな文書ＩＤと前記要求元との対応付け情報を前記新たな文書ＩＤの転送先と関連づけて前記履歴情報に追加させるための指示を前記履歴情報登録部に通知する通知部と、を含む文書管理システムに備えられるコンピュータを、
文書へのアクセス要求に応じて、前記アクセス要求の際に指定された文書ＩＤが置換後の新たな文書ＩＤとして含まれる対応付け情報を前記履歴情報から検索し、検索した対応付け情報に転送先が関連づけられている場合に前記転送先と前記アクセス要求の要求元とが一致するか否かを判定して、一致する場合に、少なくとも１つの文書ＩＤと関連づけられた文書を保持する文書保持部から前記指定された文書ＩＤに関連づけられた文書を取得し、前記アクセス要求の要求元に文書ＩＤを更新させるために前記指定された文書ＩＤに対応する文書と関連づける新たな文書ＩＤを生成し、取得した文書及び前記新たな文書ＩＤを前記要求元へ出力し、前記指定された文書ＩＤと前記アクセス要求に応じて生成された新たな文書ＩＤと前記要求元との対応付け情報を前記履歴情報に追加させるための指示を前記履歴情報登録部に通知する文書提供部として、
機能させるためのプログラム。
【請求項３】
文書へのアクセス要求の際に指定された文書ＩＤと、前記アクセス要求の要求元に文書ＩＤを更新させるために前記アクセス要求に応じて生成された新たな文書ＩＤと、前記要求元との対応付け情報を履歴情報保持部が保持する履歴情報に追加する履歴情報登録部と、前記要求元による文書ＩＤの転送に対応して、転送される文書ＩＤに対応する文書と関連づける新たな文書ＩＤを生成し、前記転送される文書ＩＤを前記新たな文書ＩＤに置き換える文書ＩＤ置換部と、転送先への新たな文書ＩＤの転送に対応して、置換前の文書ＩＤと置換後の前記新たな文書ＩＤと前記要求元との対応付け情報を前記新たな文書ＩＤの転送先と関連づけて前記履歴情報に追加させるための指示を前記履歴情報登録部に通知する通知部と、を含む文書管理システムに備えられる文書管理サーバであって、
文書へのアクセス要求に応じて、前記アクセス要求の際に指定された文書ＩＤが置換後の新たな文書ＩＤとして含まれる対応付け情報を前記履歴情報から検索し、検索した対応付け情報に転送先が関連づけられている場合に前記転送先と前記アクセス要求の要求元とが一致するか否かを判定して、一致する場合に、少なくとも１つの文書ＩＤと関連づけられた文書を保持する文書保持部から前記指定された文書ＩＤに関連づけられた文書を取得し、前記アクセス要求の要求元に文書ＩＤを更新させるために前記指定された文書ＩＤに対応する文書と関連づける新たな文書ＩＤを生成し、取得した文書及び前記新たな文書ＩＤを前記要求元へ出力し、前記指定された文書ＩＤと前記アクセス要求に応じて生成された新たな文書ＩＤと前記要求元との対応付け情報を前記履歴情報に追加させるための指示を前記履歴情報登録部に通知する文書提供部を、
備えることを特徴とする文書管理サーバ。
【請求項４】
文書へのアクセス要求の際に指定された文書ＩＤと、前記アクセス要求の要求元に文書ＩＤを更新させるために前記アクセス要求に応じて生成された新たな文書ＩＤと、前記要求元との対応付け情報を履歴情報保持部が保持する履歴情報に追加する履歴情報登録部と、前記要求元による文書ＩＤの転送に対応して、転送される文書ＩＤに対応する文書と関連づける新たな文書ＩＤを生成し、前記転送される文書ＩＤを前記新たな文書ＩＤに置き換える文書ＩＤ置換部と、転送先への新たな文書ＩＤの転送に対応して、置換前の文書ＩＤと置換後の前記新たな文書ＩＤと前記要求元との対応付け情報を前記新たな文書ＩＤの転送先と関連づけて前記履歴情報に追加させるための指示を前記履歴情報登録部に通知する通知部と、を含む文書管理システムにおける文書の提供方法であって、
文書へのアクセス要求に応じて、前記アクセス要求の際に指定された文書ＩＤが置換後の新たな文書ＩＤとして含まれる対応付け情報を前記履歴情報から検索し、検索した対応付け情報に転送先が関連づけられている場合に前記転送先と前記アクセス要求の要求元とが一致するか否かを判定して、一致する場合に、少なくとも１つの文書ＩＤと関連づけられた文書を保持する文書保持部から前記指定された文書ＩＤに関連づけられた文書を取得し、前記アクセス要求の要求元に文書ＩＤを更新させるために前記指定された文書ＩＤに対応する文書と関連づける新たな文書ＩＤを生成し、取得した文書及び前記新たな文書ＩＤを前記要求元へ出力し、前記指定された文書ＩＤと前記アクセス要求に応じて生成された新たな文書ＩＤと前記要求元との対応付け情報を前記履歴情報に追加させるための指示を前記履歴情報登録部に通知する、
ことを特徴とする文書の提供方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子文書を管理し、ユーザから要求された電子文書を提供する文書管理の技術に関する。
【背景技術】
【０００２】
特許文献１，２には、文書サーバやメールサーバが電子メールに添付した文書の送信履歴を管理する技術が開示されている。これにより、ユーザは、電子メールに添付されて送信された文書の送信履歴を把握することができる。特許文献１，２の技術では、電子メールで送信された文書に対する送信履歴を把握することはできるが、電子メール以外で配信された文書に対する配信経路を把握することはできない。
【０００３】
また、特許文献３には、閲覧対象の文書を取得するために必要な情報が示されたリファレンス情報を含む電子メールを、ユーザが受信し、その電子メールに含まれるリファレンス情報に基づいて、ユーザはファイルサーバから閲覧対象の文書を取得し、閲覧する技術が開示されている。特許文献３に示される技術では、文書サーバは、どのユーザがどのリファレンス情報に基づいて文書要求をしたかを閲覧履歴として管理することができる。したがって、この閲覧履歴を参照することで、どのユーザがどの文書を閲覧したかを特定することができる。しかし、リファレンス情報は、文書へアクセスために必要な情報であり、提供対象の文書が同一でその所在位置も同一であれば、その文書に対するリファレンス情報はすべて同一である。よって、上記のような閲覧履歴を管理するだけでは、ユーザがどのような経路を辿って提供されたリファレンス情報を用いて文書要求をしたのかを特定することができない。
【０００４】
【特許文献１】特開平０２−２９７２８８号公報
【特許文献２】特開２００１−１２５８４１号公報
【特許文献３】特開平０６−０７７９９４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明では、閲覧対象の文書を取得するために必要な情報の提供経路を特定可能なシステムを提供する。
【課題を解決するための手段】
【０００６】
本発明に係る文書管理システムは、文書へのアクセス要求に応じて、少なくとも１つの文書ＩＤと関連づけられた文書を保持する文書保持部から前記アクセス要求時に指定された文書ＩＤに関連づけられた文書を取得し、前記アクセス要求の要求元に文書ＩＤを更新させるために前記指定された文書ＩＤに対応する文書と関連づける新たな文書ＩＤを生成し、取得した文書及び前記新たな文書ＩＤを前記要求元へ出力する文書提供部と、前記新たな文書ＩＤの生成に対応して、前記要求元と前記新たな文書ＩＤと前記アクセス要求時に指定された文書ＩＤとの対応付け情報を履歴情報保持部が保持する履歴情報に追加する履歴情報登録部と、前記要求元による文書ＩＤの転送に対応して、転送される文書ＩＤに対応する文書と関連づける新たな文書ＩＤを生成し、前記転送される文書ＩＤを前記新たな文書ＩＤに置き換える文書ＩＤ置換部と、転送先への新たな文書ＩＤの転送に対応して、前記要求元と置換後の前記新たな文書ＩＤと置換前の文書ＩＤとの対応付け情報を前記新たな文書ＩＤの転送先と関連づけて前記履歴情報に追加させるための指示を前記履歴情報登録部に通知する通知部と、を備えることを特徴とする。
【０００７】
本発明に係る文書管理システムの１つの態様では、前記文書提供部は、文書へのアクセス要求に応じて、前記アクセス要求の際に指定された文書ＩＤが置換後の新たな文書ＩＤとして含まれる対応付け情報を前記履歴情報から検索し、検索した対応付け情報に転送先が関連づけられている場合に前記転送先と前記アクセス要求の要求元とが一致するか否かを判定して、一致する場合に文書を前記要求元へ出力することを特徴とする。
【０００８】
本発明に係るプログラムは、文書へのアクセス要求に応じて、少なくとも１つの文書ＩＤと関連づけられた文書を保持する文書保持部から前記アクセス要求時に指定された文書ＩＤに関連づけられた文書を取得し、前記アクセス要求の要求元に文書ＩＤを更新させるために前記指定された文書ＩＤに対応する文書と関連づける新たな文書ＩＤを生成し、取得した文書及び前記新たな文書ＩＤを前記要求元へ出力する文書提供部と、前記新たな文書ＩＤの生成に対応して、前記要求元と前記新たな文書ＩＤと前記アクセス要求時に指定された文書ＩＤとの対応付け情報を履歴情報保持部が保持する履歴情報に追加する履歴情報登録部と、を含む文書管理システムに備えられるコンピュータを、前記要求元による文書ＩＤの転送に対応して、転送される文書ＩＤに対応する文書と関連づける新たな文書ＩＤを生成し、前記転送される文書ＩＤを前記新たな文書ＩＤに置き換える文書ＩＤ置換部と、転送先への新たな文書ＩＤの転送に対応して、前記要求元と置換後の前記新たな文書ＩＤと置換前の文書ＩＤとの対応付け情報を前記新たな文書ＩＤの転送先と関連づけて前記履歴情報に追加させるための指示を前記履歴情報登録部に通知する通知部と、して機能させるためのプログラムである。
【発明の効果】
【０００９】
本発明によれば、閲覧対象の文書を取得するために必要な情報、例えば文書へアクセスする際に指定される文書ＩＤの提供経路を特定することができる。
【発明を実施するための最良の形態】
【００１０】
本発明を実施するための最良の形態（以下、実施形態とする）について、以下、図面を用いて説明する。
【００１１】
図１は、本実施形態に係る文書管理システムの概略構成を示す図である。図１に示すように、本システムは、ＬＡＮ（ローカル・エリア・ネットワーク）やインターネットなどのネットワーク５０に接続された文書管理サーバ１０とクライアント３０とメールサーバ４０とを含む。
【００１２】
文書管理サーバ１０は文書の正本を管理する。また、文書管理サーバ１０は、文書を閲覧するために必要なリファレンス情報を含むファイル（以下、このファイルを「副本ショートカット」と呼ぶ）を、クライアント３０に提供する。この副本ショートカットには文書の実体は含まれない。なお、文書とは、テキストファイル、画像ファイル、音声ファイル、動画ファイルなど、ネットワーク５０上で流通可能なデータ全般を示す。
【００１３】
クライアント３０は副本ショートカットを開くと、その中に含まれるリファレンス情報に基づいて文書管理サーバ１０にアクセスして、文書の実体を取得する。リファレンス情報については後述する。クライアント３０が取得した文書の実体は、文書を閲覧するためのアプリケーションが使用するワークメモリ上でのみ処理され、クライアント３０のディスク上にファイルとして保存されないようにする。そのため、クライアント３０は、ユーザからの文書の閲覧要求に応じて、副本ショートカットに対応する文書を取得する場合には、文書管理サーバ１０に必ずアクセスことになる。よって、文書管理サーバ１０は、自身が管理する文書に対するアクセスに関する履歴情報を管理することができる。
【００１４】
メールサーバ４０は、クライアント３０が送受信する電子メールを中継する。
【００１５】
図２は文書管理サーバ１０の機能ブロックを示す図である。図２において、文書登録部１２は文書登録処理を実行する。より具体的には、文書登録部１２は、クライアント３０から文書登録要求を受け取り、その文書登録要求に含まれる文書とその文書の属性とを組みにして、その組みを正本として文書保持部２２に登録する。文書登録部１２は、正本を登録する際に、正本を一意に特定する正本ＩＤを生成して正本と正本ＩＤとを関連づけて文書保持部２２に登録する。また、文書登録部１２は、生成した正本ＩＤを派生関係登録部２０に通知する。派生関係登録部２０は、この通知を受けてこの正本ＩＤを派生関係情報保持部２４が保持する派生関係情報に登録する。派生関係情報については後述する。ここで、文書の属性は、例えば、その文書のファイル名、その文書を作成したユーザ名、その文書の作成日時などを示す。さらに、文書登録部１２は、文書登録要求の要求元を示すユーザＩＤと文書登録要求に応じて生成された正本ＩＤとを対応付けて、履歴情報保持部１８が保持する履歴情報に追加させるための指示を履歴情報登録部２１に通知する。履歴情報登録部２１は、この通知を受けて履歴情報に文書登録要求の要求元を示すユーザＩＤと文書登録要求に応じて生成された正本ＩＤとを対応付けて登録する。履歴情報については後述する。
【００１６】
正本ＩＤは、規則性を推測し難い文字列が好ましく、例えば、周知の乱数生成アルゴリズムに基づいて生成された乱数を用いることができる。また、正本ＩＤは、正本固有のデータに対して演算された十分に大きいデータサイズのハッシュ値を用いてもよい。ハッシュ値の演算には、例えば、ＳＨＡ−２５６アルゴリズム等の周知のメッセージダイジェストアルゴリズムを用いる。正本固有のデータとしては、文書の内容や文書の属性が挙げられる。また、文書の内容のハッシュ値および文書の属性のハッシュ値を記述したＸＭＬ文書を正本固有のデータとして用いてもよい。さらに、そのＸＭＬ文書には乱数を追加して記述してもよい。
【００１７】
ショートカット提供部１４は、副本ショートカット発行処理を実行する。より具体的には、ショートカット提供部１４は副本ショートカット要求をクライアント３０から受け取ると、その副本ショートカット要求に含まれる正本ＩＤまたは副本ＩＤに対応する副本ショートカットを発行し、その副本ショートカットをクライアント３０に提供する。副本ショートカットは、文書管理サーバ１０のホスト名や文書閲覧の際のリクエストＵＲＬ（Uniform Resource Locator）などを示したアクセス先情報及び閲覧対象の文書の正本ＩＤと関連付けられた副本ＩＤを含むリファレンス情報と、副本ショートカットの属性とを含む。なお、副本ショートカットのファイル形式は例えばＰＤＦ（Portable Document Format）である。
【００１８】
クライアント３０は、副本ショートカットに含まれるリファレンス情報を参照して、そこに示されるリクエストＵＲＬに向けて、副本ＩＤを含む文書閲覧要求を送信することで、閲覧対象である文書の複製文書を含む副本を取得することができる。
【００１９】
ここで、副本ＩＤは、すでに生成された正本ＩＤや他の副本ＩＤとは重複しない値であり、正本ＩＤの場合と同様に、乱数や副本の属性に対するハッシュ値を用いればよい。なお、副本の属性としては、例えば、副本ショートカット要求に含まれる正本ＩＤや、副本ショートカット要求の受信時刻、副本ショートカット要求元のクライアント３０のユーザＩＤなどが挙げられる。図３は、副本ショートカットに含まれるデータの一例を示す。図３では、副本ショートカットに含まれるデータとして、副本ＩＤ１０２と文書管理サーバ１０のホスト名１０４と副本ショートカットの作成日時１０６とが示されている。
【００２０】
また、ショートカット提供部１４は、副本ＩＤを生成すると、その副本ＩＤを派生関係登録部２０に通知する。派生関係登録部２０は通知を受けて派生関係情報保持部２４が保持する派生関係情報に副本ショートカット要求に含まれる正本ＩＤと関連づけてその副本ＩＤを追加する。また、ショートカット提供部１４は、副本ショートカット要求の要求元を示すユーザＩＤと、副本ショートカット要求に応じて生成された副本ＩＤと、副本ショートカット要求に含まれる正本ＩＤとを対応付けて履歴情報保持部１８が保持する履歴情報に追加させるための指示を履歴情報登録部２１に通知する。履歴情報登録部２１は、この通知を受けて履歴情報に要求元のユーザＩＤと、副本ショートカット要求に応じて生成された副本ＩＤと、副本ショートカット要求に含まれる正本ＩＤとを対応付けて登録する。
【００２１】
派生関係情報は、正本ＩＤまたはその正本ＩＤから派生した副本ＩＤと、各副本ＩＤとの派生関係を示す情報である。派生関係情報のデータ構造は、たとえば木構造で表される。これにより副本ＩＤが正本ＩＤと関連付けられる。文書管理サーバ１０は、この派生関係情報を参照することで（木構造ならば木構造をたどることで）、副本ＩＤが派生した大本の正本ＩＤを特定することができる。図４は、派生関係情報に示される派生関係の一例を示す図である。このように、副本ＩＤが特定されれば、その副本ＩＤに関連づけられた正本ＩＤが特定され、ひいては副本ＩＤに関連づけられた文書が特定される。よって、正本ＩＤや副本ＩＤは文書を一意に特定する文書ＩＤと捉えることができる。
【００２２】
文書提供部１６は、文書提供処理を実行する。より具体的には、文書提供部１６は、クライアント３０からの文書閲覧要求を受け取ると、その文書閲覧要求から副本ＩＤを読み出し、派生関係情報を参照する（木構造ならば木構造の根(root)を特定する）ことで、その副本ＩＤに対応する正本ＩＤを特定する。続いて、文書提供部１６は、特定した正本ＩＤに関連づけられた正本を文書保持部２２から取り出し、その正本に含まれる文書を複製する。文書提供部１６は、ショートカット提供部１４と同様に新たな副本ＩＤを生成し、その副本ＩＤを派生関係登録部２０に通知する。派生関係登録部２０はこの通知を受けて文書閲覧要求に示される副本ＩＤの子となるように、その副本ＩＤを派生関係情報に登録する。さらに、文書提供部１６は、複製文書と新たな副本ＩＤとを含む副本をクライアント３０に提供する。クライアント３０は、副本に含まれる新たな副本ＩＤを用いて、クライアント３０上の副本ショートカットに含まれる副本ＩＤを更新する。加えて、文書提供部１６は、文書閲覧要求の要求元を示すユーザＩＤと、文書閲覧要求に応じて生成された副本ＩＤと、文書閲覧要求に含まれる副本ＩＤとを対応付けて、履歴情報保持部１８が保持する履歴情報に追加させるための指示を履歴情報登録部２１に通知する。履歴情報登録部２１は、この通知を受けて要求元のユーザＩＤと、文書閲覧要求に応じて生成された副本ＩＤと、文書閲覧要求に含まれる副本ＩＤとを対応付けて履歴情報に登録する。
【００２３】
履歴情報登録部２１は、上記の通り、文書登録部１２やショートカット提供部１４や文書提供部１６が行ったそれぞれの処理に関する履歴情報を履歴情報保持部１８に登録する。文書登録部１２が文書登録処理を実行した場合、履歴情報登録部２１は、文書登録を要求したユーザＩＤ、その時生成した正本ＩＤ、その正本ＩＤの生成日時などを履歴情報として履歴情報保持部１８に登録する。また、ショートカット提供部１４が副本ショートカット発行処理を行った場合、履歴情報登録部２１は、その副本ショーットカットを要求したユーザＩＤ、その時生成した副本ＩＤ、生成日時などを履歴情報として履歴情報保持部１８に登録する。さらに、文書提供部１６が副本提供処理を行った場合、履歴情報登録部２１は、その副本を要求したユーザＩＤ（つまり文書閲覧要求をしたユーザＩＤ）、その時生成した更新用の新たな副本ＩＤ、文書閲覧要求に含まれる副本ＩＤ、副本提供日時などを履歴情報として履歴情報保持部１８に登録する。
【００２４】
図５は、履歴情報保持部１８が保持する履歴情報の一例を示す。図５において、イベントフィールド１１０には、文書登録部１２やショートカット提供部１４や文書提供部１６が行ったそれぞれの処理の種別が示される。種別としては、「文書登録」、「ＳＣ生成」、「副本閲覧」がある。「文書登録」は、文書登録部１２が文書登録処理を行ったことを示す。「ＳＣ生成」は、ショートカット提供部１４が副本ショートカット発行処理を行ったことを示す。さらに、「副本閲覧」は、文書提供部１６が文書提供処理を行ったことを示す。要求元フィールド１１２には、文書管理サーバ１０に対して文書登録要求や副本ショートカット要求や文書閲覧要求を行った要求元のユーザＩＤが示される。転送先フィールド１１４には、副本ショートカットを電子メール等で送信した場合の送信先のユーザＩＤが示されるが詳細は後述する。新ＩＤフィールド１１６には、文書管理サーバ１０がクライアント３０からの要求に応じて生成した新たな正本ＩＤや副本ＩＤが示される。旧ＩＤフィールド１１８には、クライアント３０から送信された文書閲覧要求に示された副本ＩＤが示される。つまり、旧ＩＤフィールドには、派生関係において、生成した新たな副本ＩＤの親となる正本ＩＤもしくは副本ＩＤが示される。なお、イベント種別が「文書登録」の場合には、親となる正本ＩＤや副本ＩＤは存在しないため、旧ＩＤフィールド１１８には、「−」が示される。また、日付フィールド１２０には、文書管理サーバ１０がクライアント３０から文書閲覧等の要求を受け付けた時の情報が示される。
【００２５】
このように履歴情報保持部１８が保持する履歴情報の旧ＩＤフィールド１１８を参照することで、ユーザが、どの副本ＩＤを用いて閲覧要求してきたかがわかる。また、履歴情報を参照することで、どのユーザが行った要求（副本ショートカット要求または閲覧要求）に応じて生成された副本ショートカットを用いて、どのユーザが、いつ文書の閲覧を行ったのかを把握することができる。
【００２６】
上記の通り、本システムでは、副本ショートカットには文書の実体は含まれないため、ユーザから文書の閲覧要求があると、クライアント３０は文書の実体を取得するために文書管理サーバ１０に必ずアクセスことになる。そして、履歴情報保持部１８が保持する履歴情報を参照することで、ユーザが閲覧要求の際に使用した副本ＩＤを特定することができ、その副本ＩＤが元々どのユーザが行った要求（副本ショートカット要求または閲覧要求）に応じて生成された副本ＩＤなのかを特定することができる。
【００２７】
しかしながら、上記の構成では、クライアント３０が副本ショートカットを用いて文書の閲覧要求をしなければ、その副本ショートカットに含まれる副本ＩＤは更新されない。よって、クライアント３０が副本ショートカットを他のクライアントに電子メール等で送信した場合、その副本ショートカットに含まれる副本ＩＤは更新されない。そのため、上記の構成では、履歴情報保持部１８が保持する履歴情報を参照するだけでは、ユーザが使用した副本ショートカットの実際の提供先を特定できない場合がある。
【００２８】
すなわち、ユーザＡが副本ショートカットを用いて文書の閲覧要求をした後、その副本ショートカットを電子メールなどを用いてユーザＢに転送する。ユーザＢは、その副本ショートカットを用いて文書の閲覧要求を一度もせずにその副本ショートカットをユーザＣに電子メール等を用いて転送する。その後、ユーザＢおよびユーザＣが自分の保有する副本ショートカットを用いて文書の閲覧要求を行う。この場合、ユーザＢは、ユーザＡから転送された副本ショートカットをユーザＣに転送する前に、副本ショートカットを用いて一度も文書の閲覧要求を行っていない。そのため、その副本ショートカットに含まれる副本ＩＤの更新は行われていない。つまり、ユーザＡからユーザＢに転送された副本ショートカットに含まれる副本ＩＤとユーザＢからユーザＣに転送された副本ショートカットに含まれる副本ＩＤとは同一である。よって、上記の履歴情報を参照するだけでは、ユーザＢおよびユーザＣが保有する副本ショートカットはユーザＡから転送されたものと推定されてしまう。しかし、実際には、ユーザＣはその副本ショートカットをユーザＢから転送されている。このように、上記のような構成では、履歴情報保持部１８が保持する履歴情報を参照するだけでは、ユーザが使用した副本ショートカットの実際の提供元を特定できない場合がある。
【００２９】
そこで、本実施形態では、転送元のユーザが電子メールで副本ショートカットを転送先のユーザに転送する場合、転送先のユーザを宛先として副本ショートカットを添付した電子メールを送信すると、電子メールの中継を行うメールサーバ４０がその電子メールに添付された副本ショートカットに含まれる副本ＩＤを新たな副本ＩＤに置き換えるとともに、転送元のユーザＩＤと、転送先のユーザＩＤと、転送元のユーザが送信した電子メールに添付された副本ショートカットに含まれていた置換前の副本ＩＤと、転送先のユーザが受信する電子メールに添付された副本ショートカットに含まれる置換後の副本ＩＤとを文書管理サーバ１０に通知する。通知を受けて、派生関係登録部２０は、置換前の副本ＩＤが親となり置換後の副本ＩＤが子となる派生関係を派生関係情報に登録する。また、履歴情報登録部２１は、転送元のユーザＩＤと転送先のユーザＩＤと置換後の副本ＩＤと置換前の副本ＩＤとを対応付けて履歴情報保持部１８が保持する履歴情報に追加する。つまり、履歴情報登録部２１は、転送元のユーザＩＤを要求元フィールド１１２に、転送先のユーザＩＤを転送先フィールド１１４に、置換後の副本ＩＤを新ＩＤフィールド１１６に、置換前の副本ＩＤを旧ＩＤフィールド１１８に登録する。
【００３０】
図６は、本実施形態に係るメールサーバ４０の機能ブロックを示す図である。図６において、メール処理部４２は、ユーザ間でやり取りされる電子メールの中継を行う。副本ＩＤ置換部４４は、電子メールに副本ショートカットが添付されているか否かを検知し、添付されている場合には、新たな副本ＩＤを生成し、副本ショートカットに含まれる副本ＩＤを新たな副本ＩＤに置き換える。
【００３１】
例えば、副本ショートカットのファイル形式がＰＤＦの場合、副本ＩＤ置換部４４は、まず電子メールに添付ファイルがあるか否かを判定し、添付ファイルがある場合にはそのファイルのファイル形式がＰＤＦか否かを判定する。ＰＤＦの場合には、次いで副本ＩＤ置換部４４は、そのファイルの所定の場所に副本ＩＤが示されているか否かを判定する。判定の結果、副本ＩＤが示されている場合には、副本ＩＤ置換部４４は、新たな副本ＩＤを生成し、所定の場所に示されている副本ＩＤを書き換える。また、副本ＩＤ置換部４４は、電子メールのヘッダに示される送信元から副本ショートカットの転送元を特定し、同じくヘッダに示される送信先から副本ショートカットの転送先を特定する。
【００３２】
通知部４６は、副本ＩＤ置換部４４で副本ショートカットに含まれる副本ＩＤが置き換えられた場合、その副本ショートカットに含まれていた置換前の副本ＩＤと、転送先のユーザに提供された副本ショートカットに含まれる置換後の副本ＩＤと、副本ＩＤ置換部４４により特定された転送元のユーザＩＤと、副本ＩＤ置換部４４により特定されたその転送先のユーザＩＤとを対応付けて履歴情報に追加させるための指示を文書管理サーバ１０に通知する。なお、ユーザＩＤはユーザのメールアドレスそのものでもよいし、メールアドレスに対応して予め定められた転送元もしくは転送先のユーザを一意に特定可能な他のＩＤでもよい。メールアドレスからユーザＩＤを特定するには、あらかじめメールアドレスとユーザＩＤを対応させた対応データを保持しておき、当該対応データを参照することによって行う。また、メールアドレスとユーザＩＤを含むユーザデータを登録したディレクトリサーバなどのデータベースを用意しておき、ＬＤＡＰ（ライトウェイト・ディレクトリ・アクセス・プロトコル）などを用いて検索するようにしてもよい。
【００３３】
図７は、メールサーバ４０からの通知を受けて更新された履歴情報の一例を示す。図７において、イベントフィールド１１０に示される「ＳＣ送信」は、ユーザ間で電子メールによる副本ショートカットのやり取りが行われたことを示す。また、イベントフィールド１１０のイベント種別が「ＳＣ送信」の場合、要求元フィールド１１２には、副本ショートカットの転送元のユーザＩＤが示される。また、この場合、転送先フィールド１１４には、副本ショートカットの転送先のユーザＩＤが示される。さらに、新ＩＤフィールド１１６には、転送先の副本ショートカットに含まれる副本ＩＤ、つまり置換後の副本ＩＤが示される。加えて、旧ＩＤフィールド１１８には、転送元の副本ショートカットに含まれていた副本ＩＤ、つまり置換前の副本ＩＤが示される。日付フィールド１２０には、文書管理サーバ１０がメールサーバ４０から通知を受け付けた日付が示される。
【００３４】
以上の通り、本実施形態では、転送先のユーザに副本ショートカットを電子メールで送信する際に、メールサーバ４０がその電子メールに添付された副本ショートカットに含まれる副本ＩＤを新たな副本ＩＤに置き換え、文書管理サーバ１０に新たな副本ＩＤの派生に伴う履歴情報等の更新をさせるための指示を通知する。文書管理サーバ１０はその通知を受けて履歴情報等を更新する。これにより、たとえ受け取った副本ショートカットを用いてユーザが文書の閲覧要求をする前に、その副本ショートカットを他のユーザに電子メールで送信した場合にも、履歴情報を参照すれば、どのユーザがどのユーザへ副本ショートカットを電子メールで転送したのかを把握することができる。よって、本実施形態によれば、ユーザが閲覧要求の際に使用した副本ショートカットの実際の転送元を特定することができる。つまり、たとえユーザが閲覧要求をする前に他のユーザに副本ショートカットを電子メールで転送した場合にも、履歴情報には副本ショートカットの送信元と送信先が要求元と転送先として記録されているため履歴情報を参照すれば、副本ショートカットの提供経路を特定することができる。
【００３５】
例えば、図７に示す閲覧履歴の上から７レコード目１３２を参照すれば、ユーザＣが副本ＩＤ［４−１］を含む副本ショートカットを用いて文書の閲覧をしたことがわかる。そして、副本ＩＤ［４−１］が新ＩＤフィールド１１６に示されたレコード（つまり、レコード１３１）を特定することで、副本ＩＤ［４−１］を含む副本ショートカットはユーザＣへ電子メールで送信されたことがわかり、同レコードの旧ＩＤフィールド１１８によれば、送信元における副本ＩＤが[３−１]であったことがわかる。そして、副本ＩＤ[３−１]が新ＩＤフィールド１１６に示されたレコード（つまり、レコード１３０）を特定することで、その副本ＩＤはユーザＢの要求で生成されたものであることがわかる。つまり、本実施形態によれば、たとえユーザＢがユーザＡから提供された副本ショートカットを閲覧前にユーザＣに提供しても、ユーザＣが保有する副本ショートカットはユーザＢから提供されたものと推定され、ユーザＡから提供されたものと推定されることはない。よって、本実施形態によれば、ユーザが閲覧の際に使用した副本ショートカットの提供経路をより確実に特定することができる。
【００３６】
続いて、本実施形態の変形例について説明する。
【００３７】
上記の実施形態によれば、文書閲覧の際に利用された副本ショートカットが電子メールで転送されていたとしても、履歴情報保持部１８が管理する履歴情報を参照すれば、その副本ショートカットがどのユーザからどのユーザに対して電子メールで転送された副本ショートカットなのかを特定することができる。しかし、上記の実施形態では、副本ショートカットを電子メール以外で他のユーザに転送した場合、例えば副本ショートカットを記録した記録媒体を手渡しで他のユーザに転送した場合は、副本ショートカットに含まれる副本ＩＤの置き換えは行われず、履歴情報も更新されない。よって、履歴情報を参照しただけでは、ユーザが文書閲覧の際に利用した副本ショートカットの実際の転送元を特定できない場合がある。
【００３８】
そこで、本実施形態の変形例では、文書管理サーバ１０は、ユーザが文書閲覧の際に利用した副本ショートカットがそのユーザに対して転送または提供された副本ショートカットか否かを判定し、そのユーザに対して転送または提供された副本ショートカットの場合のみ、そのユーザへ複製文書を提供する。
【００３９】
図８は、本変形例において、クライアント３０から文書閲覧要求を受けた場合に、クライアント３０へ複製文書を提供する前に文書提供部１６が行う処理手順を示すフローチャートである。
【００４０】
図８において、文書提供部１６は、クライアント３０からの文書閲覧要求を受けると（Ｓ１００）、その文書閲覧要求に示された副本ＩＤを取得する（Ｓ１０２）。次いで、文書提供部１６は、履歴情報を参照することで、その副本ＩＤが新ＩＤフィールド１１６に示されたレコードを検索する（Ｓ１０４）。さらに、文書提供部１６は、検索したレコードの転送先フィールド１１４にユーザＩＤが示されているかどうかを判定する（Ｓ１０６）。判定の結果、転送先フィールド１１４にユーザＩＤが示されている場合（ステップＳ１０６での判定結果が、肯定「Ｙ」）、文書提供部１６は、検索したレコードの転送先フィールド１１４に示されたユーザＩＤを取得し（Ｓ１０８）、取得したユーザＩＤと、文書閲覧要求を行っているユーザのユーザＩＤと一致するか否かを判定する（Ｓ１１０）。判定の結果、ユーザＩＤが一致すれば（ステップＳ１１０の判定結果が、肯定「Ｙ」）、文書閲覧要求を行ったユーザは、そのユーザに対して転送された副本ショートカットを用いて当該要求を行っているものと判断して、文書閲覧を許可する（Ｓ１１２）。一方、ユーザＩＤが一致しなければ（ステップＳ１１０の判定結果が、否定「Ｎ」）、文書閲覧要求を行ったユーザは、そのユーザに対して転送された副本ショートカットとは異なる副本ショートカットを用いて当該要求を行っているものと判断して、文書閲覧を禁止する（Ｓ１１４）。
【００４１】
また、文書提供部１６は、ステップＳ１０６での判定の結果、転送先フィールド１１４にユーザＩＤが示されていない場合（ステップＳ１０６での判定結果が、否定「Ｎ」）、検索したレコードのイベントフィールド１１０に「ＳＣ生成」が示されているか否かを判定する（Ｓ１１６）。判定の結果、「ＳＣ生成」が示されている場合には、検索したレコードの要求元フィールド１１２に示されたユーザＩＤを取得する（Ｓ１１８）。その後、文書提供部１６は、上記と同様に、取得したユーザＩＤが文書閲覧要求を行っているユーザのユーザＩＤと一致するか否かを判定し、その判定結果に基づいて、文書の閲覧を許可するか否かを判定する。つまり、文書提供部１６は、文書閲覧要求元のユーザＩＤが、副本ショートカットの本来の提供先のユーザＩＤと一致する場合に、文書の閲覧を許可する。
【００４２】
一方、ステップＳ１１６での判定の結果、「ＳＣ生成」が示されていない場合には（ステップＳ１１６での判定結果が、否定「Ｎ」）、文書提供部１６は、検索したレコードの旧ＩＤフィールド１１８に示されたユーザＩＤを取得して（Ｓ１２０）、ステップＳ１０４以降の処理を繰り返す。
【００４３】
以上のように、本変形例では、文書提供部１６は、履歴情報を参照して文書閲覧要求の際に指定された副本ＩＤの派生関係を辿ることでこの副本ＩＤの転送先または提供先を特定し、特定した転送先または提供先と文書閲覧要求の要求元とが一致する場合に文書へのアクセスを許可する。つまり、文書提供部１６は、閲覧要求してきたユーザがそのユーザに対して転送または提供された副本ショートカットを用いて当該要求をしている場合に、そのユーザに対して文書の閲覧を許可する。したがって、ユーザは自分に対して転送または提供された副本ショートカットを利用しなければ、文書の閲覧をすることができない。よって、履歴情報を参照することで閲覧に用いられた副本ショートカットの実際の転送元を特定できないということを防止することができる。つまり、本変形例によれば、履歴情報を参照することで、閲覧に用いられた副本ショートカットの転送経路をより確実に特定することができる。
【００４４】
ところで、上記の実施形態および変形例では、電子メールで副本ショートカットが他のユーザに転送される場合に、メールサーバ４０が副本ＩＤを置換する例について説明した。しかし、ユーザ間で副本ショートカットがやり取りされることを検知できれば、副本ＩＤを置換するのは、メールサーバ４０でなくてもよい。つまり、副本ＩＤ置換部４４及び通知部４６は、例えば、文書管理サーバ１０やクライアント３０に設けてもよいし、副本ＩＤ置換専用のコンピュータを文書管理システム上に設けてもよい。
【００４５】
また、派生関係情報保持部２４が保持する派生関係情報により副本ＩＤに対応する正本ＩＤを特定するよう構成したが、派生関係情報を記憶せず、履歴情報保持部１８の履歴情報の新ＩＤおよび旧ＩＤの対応関係で示される連鎖をたどることで正本ＩＤを特定するよう構成することもできる。
【００４６】
また、副本ＩＤ置換部４４は、ユーザ間で副本ショートカットがやり取りされることを検知できれば、電子メール以外の手段でやり取りされる副本ショートカットについても副本ＩＤの置換を行うことができる。つまり、電子メールにおいて用いられるプロトコル（ＳＭＴＰ（Simple Mail Transfer Protocol））やＰＯＰ（Post Office Protocol））以外のプロトコルで副本ショートカットがやり取りされる場合でも、本実施形態や変形例に示した副本ＩＤ置換部４４は適用可能である。
【００４７】
その他のプロトコルとしては、例えば、ＨＴＴＰ（Hypertext Transfer Protocol ）、ＦＴＰ（File Transfer Protocol）、ＣＩＦＳ（Common Internet File System）などが挙げられる。
【００４８】
ＨＴＴＰの場合、副本ＩＤ置換部４４は、ＨＴＴＰのリクエストもしくはレスポンスのメッセージボディ部に含まれる副本ＩＤを置換する。また、副本ＩＤ置換部４４は、ＨＴＴＰのリクエストのＦＲＯＭヘッダに示されるメールアドレスやＡｕｔｈｒｉｚａｔｉｏｎヘッダに示されるＢＡＳＥ６４を用いてエンコードされたユーザ名を取得することで、要求元や転送先のユーザＩＤを特定する。
【００４９】
ＦＴＰの場合、ファイルをやり取りするクライアント同士は、二つのＴＣＰ接続を行う。１つは、データ接続であり、もう一つはコントロール接続である。データ接続は、実際に転送するデータを流すための接続であり、コントロール接続は、ＦＴＰのコマンドやその応答をやり取りするための接続である。そのため、副本ＩＤ置換部４４は、データ接続によって転送されるファイルに含まれる副本ＩＤを取得して置換する。また、副本ＩＤ置換部４４は、コントロール接続によって転送されるクライアントからのＵＳＥＲコマンドを参照することで要求元や転送先のユーザＩＤを特定する。
【００５０】
ＣＩＦＳの場合、副本ＩＤ置換部４４は、クライアントから送信されるＳＭＢ＿ＣＯＭ＿ＷＲＩＴＥコマンドのＤａｔａフィールドやクライアントからのＳＭＢ＿ＣＯＭ＿ＲＥＡＤコマンドへの返信データのＤａｔａフィールドに含まれる副本ＩＤを取得して置換する。また、副本ＩＤ置換部４４は、ＳＭＢ＿ＣＯＭ＿ＳＥＳＳＩＯＮ＿ＳＥＴＵＰ＿ＡＮＤＸコマンドのＡｃｃｏｕｎｔＮａｍｅフィールドに示されるデータを参照することで要求元や転送先のユーザＩＤを特定する。
【００５１】
以上のように、副本ＩＤ置換部４４は、電子メールに添付された副本ショートカット以外にも、ユーザ間でやり取りされる副本ショートカットを検知して、副本ＩＤの置換を行うことができる。
【００５２】
なお、文書管理サーバ１０、クライアント３０、メールサーバ４０の各部は、マイクロコンピュータに上記した各種処理を具現化させるプログラムをインストールし、このプログラムを実行することによって実現することができる。この場合、マイクロコンピュータの中央処理装置（ＣＰＵ）が副本ＩＤ置換部４４や通知部４６などの各部として機能する。
【図面の簡単な説明】
【００５３】
【図１】実施形態に係る文書管理システムの概略構成を示す図である。
【図２】文書管理サーバの機能ブロックを示す図である。
【図３】副本ショートカットに含まれるデータの一例を示す図である。
【図４】派生関係情報に示される派生関係の一例を示す図である。
【図５】履歴情報管理部が管理する履歴情報の一例を示す。
【図６】メールサーバの機能ブロックを示す図である。
【図７】メールサーバからの通知を受けて更新された履歴情報の一例を示す。
【図８】クライアントから文書閲覧要求を受けた場合に、そのクライアントへ複製文書を提供する前に文書提供部が行う処理手順を示すフローチャートである。
【符号の説明】
【００５４】
１０  文書管理サーバ、１２  文書登録部、１４  ショートカット提供部、１６  文書提供部、１８  履歴情報保持部、２０  派生関係登録部、２１  履歴情報登録部、２２  文書保持部、２４  派生関係情報保持部、３０  クライアント、４０  メールサーバ、４２  メール処理部、４４  副本ＩＤ置換部、４６  通知部、５０  ネットワーク。
【図１】
0004765731.tif 000002
【図２】
0004765731.tif 000003
【図３】
0004765731.tif 000004
【図４】
0004765731.tif 000005
【図５】
0004765731.tif 000006
【図６】
0004765731.tif 000007
【図７】
0004765731.tif 000008
【図８】
0004765731.tif 000009