(57)【特許請求の範囲】
【請求項１】
操作対象の文書を提供する文書提供装置からの該文書の操作依頼元に対する応答メッセージに前記文書が複数の形式によって表されることが示され、少なくとも１つの形式で前記文書が示されているかを判断する判断手段と、
前記判断手段により前記応答メッセージに前記文書が複数の形式によって表されることが示され、少なくとも１つの形式で前記文書が示されていると判断された場合、該文書に演算式を適用して第１の演算値を算出する第１の算出手段と、
前記第１の算出手段により算出した前記第１の演算値を構成要素として含む操作履歴情報を生成する操作履歴情報生成手段と、
前記操作履歴情報生成手段によって生成した操作履歴情報に前記演算式を適用して第２の演算値を算出する第２の算出手段と、
前記第２の算出手段によって算出した前記第２の演算出力値を含む参照情報を生成する参照情報生成手段と、
前記参照情報生成手段によって生成した参照情報で前記応答メッセージの文書を置換して新たな応答メッセージを生成して前記操作対象文書の提供依頼元に送信する応答メッセージ送信手段と
を具備する操作履歴管理システム。
【請求項２】
操作対象の文書を提供する文書提供装置からの該文書の操作依頼元に対する応答メッセージに前記文書を指定する情報が含まれているかを判断する判断手段と、
前記判断手段により前記応答メッセージ応答メッセージに前記文書を指定する情報が含まれていると判断された場合、該情報により示される文書に演算式を適用して第１の演算値を算出する第１の算出手段と、
前記第１の算出手段により算出した前記第１の演算値を構成要素として含む操作履歴情報を生成する操作履歴情報生成手段と、
前記操作履歴情報生成手段によって生成した操作履歴情報に前記演算式を適用して第２の演算値を算出する第２の算出手段と、
前記第２の算出手段によって算出した前記第２の演算出力値を含む参照情報を生成する参照情報生成手段と、
前記参照情報生成手段によって生成した参照情報を含む新たな応答メッセージを生成して前記文書の操作依頼元に送信する応答メッセージ送信手段と
を具備する操作履歴管理システム。
【請求項３】
コンピュータを、
操作対象の文書を提供する文書提供装置からの該文書の操作依頼元に対する応答メッセージに前記文書が複数の形式によって表されることが示され、少なくとも１つの形式で前記文書が示されているかを判断する判断手段、
前記判断手段により前記応答メッセージに前記文書が複数の形式によって表されることが示され、少なくとも１つの形式で前記文書が示されていると判断された場合、該文書に演算式を適用して第１の演算値を算出する第１の算出手段、
前記第１の算出手段により算出した前記第１の演算値を構成要素として含む操作履歴情報を生成する操作履歴情報生成手段、
前記操作履歴情報生成手段によって生成した操作履歴情報に前記演算式を適用して第２の演算値を算出する第２の算出手段、
前記第２の算出手段によって算出した前記第２の演算出力値を含む参照情報を生成する参照情報生成手段、
前記参照情報生成手段によって生成した参照情報で前記応答メッセージの文書を置換して新たな応答メッセージを生成して前記文書の操作依頼元に送信する応答メッセージ送信手段
として機能させるための操作履歴管理プログラム。
【請求項４】
コンピュータを、
操作対象の文書を提供する文書提供装置からの該文書の操作依頼元に対する応答メッセージに前記文書を指定する情報が含まれているかを判断する判断手段、
前記判断手段により前記応答メッセージ応答メッセージに前記文書を指定する情報が含まれていると判断された場合、該情報により示される文書に演算式を適用して第１の演算値を算出する第１の算出手段、
前記第１の算出手段により算出した前記第１の演算値を構成要素として含む操作履歴情報を生成する操作履歴情報生成手段と、
前記操作履歴情報生成手段によって生成した操作履歴情報に前記演算式を適用して第２の演算値を算出する第２の算出手段、
前記第２の算出手段によって算出した前記第２の演算出力値を含む参照情報を生成する参照情報生成手段、
前記参照情報生成手段によって生成した参照情報を含む新たな応答メッセージを生成して前記文書の操作依頼元に送信する応答メッセージ送信手段
として機能させるための操作履歴管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、操作履歴管理システムおよびプログラムに関する。
【背景技術】
【０００２】
文書の安全性を確保するために文書に対して行った操作の履歴情報を記録する技術がある。この技術では、操作履歴を記録する文書を指定し、その文書に対して操作が行われた場合に操作履歴を記録するような構成である。
【０００３】
また、ＷＥＢクライアントとＷＥＢサーバとのＷＥＢ通信により文書を取得して処理を行うＷＥＢアプリケーション技術がある。この技術においても操作対象となる文書を取得することができるが、この文書の履歴情報を記録する場合には、取得した文書を履歴情報を記録する文書に指定して操作履歴を作成する処理を行う必要がある。
【０００４】
すなわち、操作対象となる文書の操作履歴を作成するためには、取得した文書を操作履歴の記録対象と指定する必要がある。
【０００５】
特許文献１には、システム内の電子化されたドキュメントに関する操作履歴を、システム内から出力された紙文書などのシステム外のドキュメントの管理に積極的に利用することにより、その利便性を飛躍的に向上させる技術が開示されている。
【０００６】
この特許文献１に開示された従来技術は、あらかじめ管理したドキュメントに関する履歴情報を元に、ドキュメントがすでに出力済みであるか否かや、いつ誰が出力したことなどをユーザに通知する技術であって、操作履歴の利用方法を示している。
【特許文献１】特開平１１−２４９７７７
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明は、操作対象である文書の操作履歴を用いることにより該文書を追跡できるようにした操作履歴管理システムおよびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、請求項１の発明は、操作対象の文書を提供する文書提供装置からの該文書の操作依頼元に対する応答メッセージに前記文書が複数の形式によって表されることが示され、少なくとも１つの形式で前記文書が示されているかを判断する判断手段と、前記判断手段により前記応答メッセージに前記文書が複数の形式によって表されることが示され、少なくとも１つの形式で前記文書が示されていると判断された場合、該文書に演算式を適用して第１の演算値を算出する第１の算出手段と、前記第１の算出手段により算出した前記第１の演算値を構成要素として含む操作履歴情報を生成する操作履歴情報生成手段と、前記操作履歴情報生成手段によって生成した操作履歴情報に前記演算式を適用して第２の演算値を算出する第２の算出手段と、前記第２の算出手段によって算出した前記第２の演算出力値を含む参照情報を生成する参照情報生成手段と、前記参照情報生成手段によって生成した参照情報で前記応答メッセージの文書を置換して新たな応答メッセージを生成して前記操作対象文書の提供依頼元に送信する応答メッセージ送信手段とを具備することを特徴とする。
【０００９】
また、請求項２の発明は、操作対象の文書を提供する文書提供装置からの該文書の操作依頼元に対する応答メッセージに前記文書を指定する情報が含まれているかを判断する判断手段と、
前記判断手段により前記応答メッセージ応答メッセージに前記文書を指定する情報が含まれていると判断された場合、該情報により示される文書に演算式を適用して第１の演算値を算出する第１の算出手段と、前記第１の算出手段により算出した前記第１の演算値を構成要素として含む操作履歴情報を生成する操作履歴情報生成手段と、前記操作履歴情報生成手段によって生成した操作履歴情報に前記演算式を適用して第２の演算値を算出する第２の算出手段と、前記第２の算出手段によって算出した前記第２の演算出力値を含む参照情報を生成する参照情報生成手段と、前記参照情報生成手段によって生成した参照情報を含む新たな応答メッセージを生成して前記文書の操作依頼元に送信する応答メッセージ送信手段とを具備することを特徴とする。
【００１０】
また、請求項３の発明は、コンピュータを、操作対象の文書を提供する文書提供装置からの該文書の操作依頼元に対する応答メッセージに前記文書が複数の形式によって表されることが示され、少なくとも１つの形式で前記文書が示されているかを判断する判断手段、前記判断手段により前記応答メッセージに前記文書が複数の形式によって表されることが示され、少なくとも１つの形式で前記文書が示されていると判断された場合、該文書に演算式を適用して第１の演算値を算出する第１の算出手段、前記第１の算出手段により算出した前記第１の演算値を構成要素として含む操作履歴情報を生成する操作履歴情報生成手段、前記操作履歴情報生成手段によって生成した操作履歴情報に前記演算式を適用して第２の演算値を算出する第２の算出手段、前記第２の算出手段によって算出した前記第２の演算出力値を含む参照情報を生成する参照情報生成手段、前記参照情報生成手段によって生成した参照情報で前記応答メッセージの文書を置換して新たな応答メッセージを生成して前記文書の操作依頼元に送信する応答メッセージ送信手段として機能させるためのものであることを特徴とする。
【００１１】
また、請求項４の発明は、コンピュータを、操作対象の文書を提供する文書提供装置からの該文書の操作依頼元に対する応答メッセージに前記文書を指定する情報が含まれているかを判断する判断手段、前記判断手段により前記応答メッセージ応答メッセージに前記文書を指定する情報が含まれていると判断された場合、該情報により示される文書に演算式を適用して第１の演算値を算出する第１の算出手段、前記第１の算出手段により算出した前記第１の演算値を構成要素として含む操作履歴情報を生成する操作履歴情報生成手段と、前記操作履歴情報生成手段によって生成した操作履歴情報に前記演算式を適用して第２の演算値を算出する第２の算出手段、前記第２の算出手段によって算出した前記第２の演算出力値を含む参照情報を生成する参照情報生成手段、前記参照情報生成手段によって生成した参照情報を含む新たな応答メッセージを生成して前記文書の操作依頼元に送信する応答メッセージ送信手段として機能させるためのものであることを特徴とする。
【発明の効果】
【００１２】
本発明の請求項１によれば、参照情報を用いて操作する文書の操作履歴を管理するシステムの構成を変更することなく、提供された文書の操作履歴を記録することができ、該文書を追跡できるようになるという効果を奏する。
【００１３】
また、請求項２によれば、参照情報を用いて操作する文書の操作履歴を管理するシステムの構成を変更することなく、提供された文書の操作履歴を記録することができ、該文書を追跡できるようになるという効果を奏する。
【００１４】
また、請求項３によれば、参照情報を用いて操作する文書の操作履歴を管理するシステムの構成を変更することなく、提供された文書の操作履歴を記録することができ、該文書を追跡できるようになるという効果を奏する。
【００１５】
また、請求項４によれば、参照情報を用いて操作する文書の操作履歴を管理するシステムの構成を変更することなく、提供された文書の操作履歴を記録することができ、該文書を追跡できるようになるという効果を奏する。
【発明を実施するための最良の形態】
【００１６】
以下、本発明に係わる操作履歴管理システムおよびプログラムの一実施例を添付図面を参照して詳細に説明する。
【実施例】
【００１７】
図１は、本発明の実施の形態における操作履歴管理システムおよびプログラムを適用して構成した文書操作履歴管理システムのシステム構成図の一例である。
【００１８】
図１において、この操作履歴管理システムは、クライアントＰＣ１００、情報提供装置２００（以下、「ＷＥＢサーバ２００」）、操作履歴管理装置３００、プロキシサーバ４００を具備して構成する。なお、図２においても操作履歴管理システムの構成を示しており、図１と類似し、クライアントＰＣ１００、ＷＥＢサーバ２００、操作履歴管理装置３００を具備して構成する。
【００１９】
ただし、図２の構成では、図１に示すプロキシサーバ４００での処理を操作履歴管理装置３００で行う。
【００２０】
図１、図２のいずれの構成であっても操作履歴管理システムを実現できるが、以下では図１における構成で実現する場合を例にして説明する。
【００２１】
この操作履歴管理システムは、クライアントＰＣ１００による操作対象の電子情報の操作履歴を操作履歴管理装置３００で管理するシステムである。操作対象となる電子情報は、ＷＥＢサーバ２００が搭載するＷＥＢアプリケーションにより処理された情報であって、たとえば電子文書や画像、動画ファイルなどであり、以降「文書」と示す。
【００２２】
操作履歴管理装置３００（以下、「ＤＨ（Document History）サーバ３００」という）では、操作対象の文書に所定の演算式を適用することにより算出される演算値を文書の識別情報とし、その識別情報ごとに文書の操作履歴を管理する。
【００２３】
この識別情報は、文書全体に演算式を適用することにより算出される演算値であって、文書の内容に基づいて算出されるものである。すなわち、文書の内容が変更されると、その変更後の内容に対して新たな識別情報が算出される。このときの演算式の例として、例えばハッシュ関数があり、このハッシュ関数を文書に適用することで算出されるハッシュ値が文書を識別する識別情報である。
【００２４】
文書がクライアントＰＣ１００を用いて操作され、内容が変更されると、ＤＨサーバ３００では、変更後の文書から算出した識別情報と変更前の文書の識別情報とを関連付けることにより、その文書に対して行われた操作の履歴を管理する。この識別情報を以降では、「文書ＩＤ」と示し、ハッシュ値などによって表される。
【００２５】
また、ＤＨサーバ３００で管理する操作履歴は、参照情報を用いて文書を操作することにより記録される情報であって、この参照情報は、「リファレンス」とも呼ばれ、文書を直接的に参照可能とする情報である。このリファレンスは、文書を識別する文書ＩＤを含む構成である。
【００２６】
なお、このリファレンスは、クライアントＰＣ１００がＷＥＢサーバ２００から文書の提供を受ける際にプロキシサーバ４００によって生成され、生成されたリファレンスを介してクライアントＰＣ１００による文書の操作を可能にした情報である。
【００２７】
この操作履歴管理システムでは、プロキシサーバ４００を介して行われるクライアントＰＣ１００とＷＥＢサーバ２００とのＷＥＢ通信によってクライアントＰＣ１００がＷＥＢサーバ２００から電子情報の提供を受ける。このとき、ＷＥＢサーバ２００からの情報を元に、プロキシサーバ４００がその電子情報に対する参照情報を生成し、その参照情報に対する操作履歴を操作履歴管理装置３００が管理することで、クライアントＰＣ１００によって行われた操作後の電子情報をその履歴情報から追跡可能とする。
【００２８】
クライアントＰＣ１００には、ＷＥＢブラウザが搭載され、このＷＥＢブラウザを用いてＷＥＢサーバ２００が管理する文書を要求する。このＷＥＢブラウザの設定情報に、要求の転送先としてプロキシサーバ４００が指定されており、クライアントＰＣ１００からの要求はプロキシサーバ４００を介してＷＥＢサーバ２００へ送信する。
【００２９】
クライアントＰＣ１００とＷＥＢサーバ２００との通信は、例えばＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）上のＨＴＴＰ（HyperText Transfer Protocol）プロトコルを用いて行うことができ、このＨＴＴＰプロトコルを用いた場合、クライアントＰＣ１００からＨＴＴＰリクエストメッセージをＷＥＢサーバ２００（プロキシサーバ４００）へ送信することにより文書の要求を行う。
【００３０】
このＨＴＴＰリクエストメッセージの一例を以下に示す。左端には説明に用いる行番号を示している。
【００３１】
01  GET http://a/p/ HTTP 1.1
02  Accept: image/gif, image/jpeg, multipart/mixed, multipart/alternative,
03  Accept-Language: ja
・・・
01行目では、文書の取得要求を表すメソッドを示しており、02行目では、その要求に対して受け入れ可能なデータ（文書）の種類を示しており、03行目では、受け入れ可能な言語を示している。
【００３２】
このＨＴＴＰリクエストメッセージは、01行目に示す「http://a/p/」により、宛て先情報「ａ」が示すプロキシサーバ４００へ送信することが示されている。また、プロキシサーバ４００では、このＨＴＴＰリクエストメッセージの宛て先情報「ａ」をＷＥＢサーバ２００の宛て先情報である「ｔ」へと変更する処理を行う。本実施例においては、特定の文書管理システム（情報提供装置）に対応してリクエストを転送するプロキシサーバを示しているが、これに限定されず、もちろんＷＥＢブラウザで設定される任意のＷＥＢサーバにリクエストを転送する構成とすることも可能である。この場合、宛先情報（ホスト名）の置換は不要となる．
変更後のＨＴＴＰリクエストメッセージは以下のようになる。
【００３３】
01  GET http://t/p/ HTTP 1.1
02  Accept: image/gif, image/jpeg, multipart/mixed, multipart/alternative, ~/~
03  Accept-Language: ja
・・・
すなわち、01行目に示す「http://t/p/」の宛て先情報が変更前の「ａ」から「ｔ」へと変更された状態を示している。
【００３４】
これによりＨＴＴＰリクエストメッセージは宛て先情報「ｔ」により示されるＷＥＢサーバ２００へ転送され、ＷＥＢサーバ２００が搭載するＷＥＢアプリケーションによって処理が行われる。以下にＷＥＢサーバ２００で行われる処理の詳細を示す。
【００３５】
ＷＥＢサーバ２００では、クライアントＰＣ１００からプロキシサーバ４００を介してＨＴＴＰリクエストメッセージを受信すると、そのＨＴＴＰリクエストメッセージの要求を解析し、「ｐ」により示されるＷＥＢアプリケーションのデータ（文書）を含むＨＴＴＰレスポンスメッセージを作成する。このＨＴＴＰレスポンスメッセージの宛て先はＷＥＢサーバ２００にＨＴＴＰリクエストメッセージを送信したプロキシサーバ４００である。
【００３６】
作成されたＨＴＴＰレスポンスメッセージは以下のようになる。
【００３７】
01  HTTP/1.1 200 OK
02  Date: 
03  Server: 
04  Last-Modified:
05  Content-Type: multipart/mixed  boundary="--=border_line"
06  ・・・
07  --=border_line
08  Content-Type: text/plain: charset=ISO-2022-JP
09  Content-Transfer-Encoding: 7bit
10  test message
11  --=border_line
12  Content-Type: application/foo: name="sample.foo"
13  ・・・
14  aabbcc・・・・・・・・・・・・・・・・・・・・・・・・・・・
15  ・・・・・・・・・・・・・・・・・・・・・・・・・・・123eab
16  --=border_line--
01行目は、ＨＴＴＰリクエストメッセージの要求に対するＷＥＢアプリケーションでの処理結果を表しており、02行目から04行目は、要求に対する処理を行った日時やＷＥＢサーバ２００の名称などを示している。05行目は、クライアントＰＣ１００に送信するデータ（文書）の種類を通知するエンティティフィールド「Content-Type」が示され、メディアタイプとして「multipart/mixed」が示され、メディアタイプのパートの境界を示す引数「boundary」の値が「--=border_line」であることが示されている。
【００３８】
「--=border_line」がパートの境界を示すことから07行目、11行目、164行目が境界である。すなわち、07行目の境界と11行目の境界との間にある08行目から10行目までが1つ目のパートを示しており、11行目の境界と16行目の境界との間にある12行目から15行目までが2つ目のパートを示している。
【００３９】
1つ目のパートは08行目のフィールド名「Content-Type」のメディアタイプに「text/plain」と示されていることからテキストデータであることを示し、2つ目のパートは12行目のフィールド名「Content-Type」のメディアタイプに「application/foo」と示されていることから「foo」アプリケーションにより作成された「sample.foo」という名称の文書であることを示している。
【００４０】
この文書「sample.foo」の内容を14行目、15行目に示している。
【００４１】
このようなＨＴＴＰレスポンスメッセージを受信したプロキシサーバ４００では、そのＨＴＴＰレスポンスメッセージからリファレンスを生成して操作履歴を管理する必要があるかを判断する。この判断処理によって、操作履歴を管理する必要があると判断する場合にはＨＴＴＰレスポンスメッセージに示される文書のリファレンスを生成して操作履歴をＤＨサーバ３００に登録する。
【００４２】
この判断処理では、ＨＴＴＰレスポンスメッセージを構成するエンティティのフィールド名「Content-Type」に示されるメディアタイプが「multipart/型」であり、かつ、少なくとも１つ、パートが指定されているかを判断する。上記するＨＴＴＰレスポンスメッセージは、05行目に示すようにフィールド名「Content-Type」のメディアタイプが「multipart/型」であって、２つのパートが示されていることから、パートに対するデータのリファレンスを生成して、ＨＴＴＰレスポンスメッセージのパートを、生成したリファレンスで置換した新たなＨＴＴＰレスポンスメッセージを生成する。
【００４３】
また、この判断処理では、上記の判断処理にて該当しない場合、続いてエンティティのフィールドに「Content-Type」が指定されているかを判断する処理を行ってもよい。この判断処理によってフィールド「Content-Type」が指定されている場合、ＨＴＴＰレスポンスメッセージを構成するパート部分のリファレンスを生成して、生成したリファレンスを含むＨＴＴＰレスポンスメッセージを生成する。
【００４４】
プロキシサーバ４００は、ＷＥＢサーバ２００から受信したＨＴＴＰレスポンスメッセージに示されるパートを、生成したリファレンスで置換した新たなＨＴＴＰレスポンスメッセージを生成してクライアントＰＣ１００へ送信する。
【００４５】
これにより、クライアントＰＣ１００では、リファレンスが指定されたＨＴＴＰレスポンスメッセージを受信し、そのＨＴＴＰレスポンスメッセージにより示されるリファレンスを用いることにより該当する文書の操作が可能となる。
【００４６】
このときのリファレンスの生成方法を図８を用いて以下で説明する。このリファレンスを生成する過程で、リファレンスに対する文書の操作履歴が生成される。
【００４７】
プロキシサーバ４００では、リファレンスを生成した文書と、リファレンスの生成過程で作成された文書の操作履歴をＤＨサーバ３００に送信する。
【００４８】
なお、リファレンスは、プロキシサーバ４００ではなくクライアントＰＣ１００によっても作成することが可能である。クライアントＰＣ１００では、例えばコンテクストメニューから「リファレンス作成」を選択することにより指示する。
【００４９】
いずれの装置でリファレンスを作成する場合でも、同様の処理が行われる。
【００５０】
図８（ａ）は、リファレンスの生成対象となる文書「sample.foo」を示しており、この文書の全体に「ＳＨＡ−２５６」などのハッシュ関数を適用することでハッシュ値を算出する。このとき算出されたハッシュ値を図８（ｂ）に示し、その値が「bodyhash」であることを示す。このハッシュ値「bodyhash」は、文書「sample.foo」の内容であるコンテンツを識別するコンテンツＩＤである。
【００５１】
コンテンツＩＤ「bodyhash」が算出されると、続いて、コンテンツＩＤと文書の内容を対応付けてＤＨサーバに登録し、算出されたコンテンツＩＤ「bodyhash」を含むＸＭＬ（Extensible Markup Language）形式の操作履歴情報を作成する。この操作履歴情報の一例を以下に示す。
【００５２】
なお、以下に示す操作履歴情報の各ステップの左端には説明に用いる行番号を示している。
【００５３】
01  <doc>
02   <body>bodyhash</body>
03   <base></base>
04   <info>
05    <user>user_A</user>
06    <time>time_A</time>
07    <method>create</method>
08   </info>
09  </doc>
この操作履歴情報は、01行目の<doc>タグから09行目の</doc>タグで囲まれたＸＭＬ形式の情報である。02行目に記載された<body>要素の内容として、文書にハッシュ関数を適用して算出したコンテンツＩＤ「bodyhash」が指定され、03行目の<base>要素の内容として、以下で説明する演算処理を行うことにより算出される文書ＩＤ「did」の値が指定される。
【００５４】
文書ＩＤ「did」は、02行目に記載された<body>要素の内容であるコンテンツＩＤ「bodyhash」を算出した文書の操作履歴情報から算出される情報であって、文書に対する操作履歴を管理する情報として用いられる。
【００５５】
また、04行目から08行目までの<info>要素の子の05行目の<user>要素の内容に、文書を操作したユーザの情報を指定し、その例として「user_A」が指定されている。また、06行目の<time>要素の内容に、ＤＨサーバ２００に文書がアップロードされた時間情報を指定し、その例として「time_A」が指定されている。さらに、07行目の<method>要素の内容に、文書に対して行われた操作の種類を示す情報が指定される。
【００５６】
この07行目の<method>要素に指定される内容として、操作対象の文書に対するリファレンスを新規に作成する操作（上記の例ではコンテクストメニューから「リファレンスの作成」を選択する操作や、ＷＥＢサーバ２００から文書を取得する操作）を示す「create」、リファレンスに対応する文書の更新・編集操作が行われたことを示す「modified」、文書の参照・閲覧操作が行われたことを示す「not modified」、文書に対する印刷操作が行われたことを示す「printed」などがある。
【００５７】
ＤＨサーバ３００に操作履歴が登録されていない文書を操作する場合には、リファレンスを新規に作成する操作であることから上記の<method>要素の内容のように「create」が指定される。
【００５８】
なお、07行目に示す<method>要素の内容が「create」である場合、つまり、ＸＭＬ形式の操作履歴情報が新規に作成された場合には<base>要素は空となる。<base>要素の内容はすでに作成済みの操作履歴情報を演算することで算出される値のためである。
【００５９】
このようにしてリファレンスの作成過程でＸＭＬ形式からなる操作履歴情報が新規に作成される。（図８（ｃ））
リファレンスを作成するために、続いて、ＸＭＬ形式の操作履歴情報の02行目に示す<body>要素の内容「bodyhash」のコンテンツＩＤを算出したハッシュ関数を用いて、操作履歴情報に対する文書ＩＤ「did」を算出する。上記に示す例では、01行目から08行目までの<doc>タグ内で囲まれたＸＭＬ形式の操作履歴情報をハッシュ関数「ＳＨＡ−２５６」でハッシュ演算することで文書ＩＤ「did」を算出する。（図８（ｄ））
そして、算出した文書ＩＤ「did」を含むリファレンスを生成する。
【００６０】
図８（ｅ）では、拡張子「yui」により示されるリファレンスが作成された例を示している。本実施例では、「sample.foo」というファイル名の文書に対応するリファレンスのファイル名を「sample.foo.yui」としている．また、図８（ｅ）に示すリファレンスには、リファレンスであること示すために、アイコンの右上に回転矢印を示している。
【００６１】
なお、リファレンスを生成する際の操作履歴情報の生成過程は、ＤＨサーバ３００で行うように構成し、ＤＨサーバ３００で処理して算出した履歴ハッシュ値「did」をプロキシサーバ４００にＤＨサーバ３００が応答して、リファレンスを生成するような構成であってもよい。
【００６２】
次に、上記のように作成したリファレンスを用いて文書を特定する処理の詳細を示す。
【００６３】
まず、リファレンスに含まれる文書ＩＤ「did」を取り出し、その文書ＩＤ「did」に対応付けられた操作履歴情報を特定する。このときの操作履歴情報は、ＤＨサーバ２００により文書ＩＤ「did」に関連付けて管理されている。
【００６４】
続いて、特定した操作履歴情報の<body>要素で指定されたコンテンツＩＤ「bodyhash」を取得する。この要素「bodyhash」は文書内容のハッシュ値であって、ＤＨサーバ２００がこのコンテンツＩＤ「bodyhash」に対応する文書「sample.foo」の内容を特定する。なお、この文書「sample.foo」は「foo」アプリケーションに関連付けられた文書であることを示している。
【００６５】
このように、作成されたリファレンスから文書を特定する。
【００６６】
なお、上記の操作履歴情報で示される文書に対して参照操作を行った場合に作成される操作履歴は以下のようになる。
【００６７】
01  <doc>
02   <body>bodyhash2</body>
03   <base>did</base>
04   <info>
05    <user>user_A</user>
06    <time>time_B</time>
07    <method>not modified</method>
08   </info>
09  </doc>
操作された文書の内容に対して「ＳＨＡ−２５６」などのハッシュ関数を適用してコンテンツＩＤ「bodyhash2」を算出する。クライアントＰＣ１００によって行われた操作内容が閲覧・参照操作であることから、算出したコンテンツＩＤ「bodyhash2」が参照・閲覧前のコンテンツＩＤ「bodyhash」と同一であることを確認して作成される。算出したハッシュ値が同一であることから02行目に示すハッシュ値は参照操作前のコンテンツＩＤ「bodyhash」と同じ値となる。
【００６８】
ちなみに、算出したコンテンツＩＤ「bodyhash2」が操作前のコンテンツＩＤ「bodyhash」と異なる場合には、文書に対して参照・閲覧以外の操作が行われたことを示している。
【００６９】
この操作履歴情報の03行目の<base>要素の内容である文書ＩＤ「did」は、文書の参照・閲覧操作を行う前の操作履歴にハッシュ関数を適用して算出した文書ＩＤであって、リファレンスに指定された文書ＩＤ「did」が設定される。また、06行目の<time>要素の内容である「time_B」はＤＨサーバ２００に文書がアップロードされた時間を示し、07行目の<method>要素の内容として、参照・閲覧操作のみで文書が編集、変更されていないことを示す「not modified」が示される。
【００７０】
このようにして生成された操作履歴情報をＤＨサーバ２００は、文書ごとの操作履歴情報として管理する。そして、この操作履歴情報に「ＳＨＡ−２５６」などのハッシュ関数を適用することで文書ＩＤ「did2」を算出する。
【００７１】
図３は、本発明の実施の形態における操作履歴管理システムの概要構成を示す図である。
【００７２】
図３は、図１に示すシステム構成における各ノードを示している。
【００７３】
クライアントＰＣ１００は、WebClient処理部１０１、DH_Client処理部１０２を具備する構成であり、DH_Client処理部１０２は、ＤＨサーバ３００との相互通信によりＤＨサーバ３００が管理する操作履歴によって文書の追跡を可能とし、さらにクライアントＰＣ１００自身で作成したローカル文書に対する操作履歴をＤＨサーバ３００で管理する。
【００７４】
ＤＨサーバ３００では、上記のようなＸＭＬ形式の操作履歴情報を管理するほか、図９に示すような木構造にて各操作履歴情報の関係を管理する。
【００７５】
また、クライアントＰＣ１００のWebClient処理部１０１は、ＷＥＢサーバ２００との間でＷＥＢ通信を行う。ＷＥＢサーバ２００は、WebApplication処理部２０１を具備し、WebApplication処理部２０１は、クライアントＰＣ１００のWebClient処理部１０１からの要求に基づいて所定のアプリケーション処理を行い、その結果を応答する。
【００７６】
すなわち、クライアントＰＣ１００のWebClient処理部１０１が、ＷＥＢサーバ２００のWebApplication処理部２０１に対してＨＴＴＰリクエストメッセージを送信することにより、ＷＥＢサーバ２００のWebApplication処理部２０１が、アプリケーション処理を行い、クライアントＰＣ１００のWebClient処理部１０１にＨＴＴＰレスポンスメッセージを送信する。
【００７７】
例えば、WebApplication処理部２０１が文書を管理する文書管理アプリケーション処理を実現する場合、所望する文書が指定されたＨＴＴＰリクエストメッセージをＷＥＢサーバ２００のWebApplication処理部２０１が受信すると、WebApplication処理部２０１では管理する文書から指定された文書を特定し、その文書を指定したＨＴＴＰレスポンスメッセージを要求元のクライアントＰＣ１００のWebClient処理部１０１へ応答する。
【００７８】
このとき、各メッセージはプロキシサーバ４００を介して行われる。
【００７９】
このプロキシサーバ４００は、RDHS Web Connector処理部４０１を具備し、RDHS Web Connector処理部４０１は、ＷＥＢサーバ２００より受信したＨＴＴＰレスポンスメッセージが上記のような判断処理によって操作履歴を管理する必要があるかを判断する。
【００８０】
操作履歴を管理する必要があると判断する場合には、そのＨＴＴＰレスポンスメッセージに含まれる文書のリファレンスを生成してＤＨサーバ３００でその文書の操作履歴を管理できるようにデータ（文書）を送信する。
【００８１】
また、このRDHS Web Connector処理部４０１では、リファレンスを生成するとそのリファレンスを含む新たなＨＴＴＰレスポンスメッセージを生成してクライアントＰＣ１００のWebClient処理部１０１へ送信する。
【００８２】
クライアントＰＣ１００では、リファレンスを用いて要求した文書を操作することが可能となる。
【００８３】
クライアントＰＣ１００で取得したリファレンスを用いて文書を操作すると、DH_Client処理部１０２によってその文書に対する操作履歴が特定される。文書の操作終了後、DH_Client処理部１０２では、操作後の文書にハッシュ関数を適用する処理を行い、ハッシュ値を算出してその操作の操作履歴を作成する。そして、操作前の文書の操作履歴により示されるハッシュ値と作成した操作履歴のハッシュ値とを関連付けてＤＨサーバ３００で操作履歴を管理する。
【００８４】
これにより、図９に示すようなハッシュ値による操作履歴情報の相互関係を管理する。
【００８５】
図４は、本発明の実施の形態における操作履歴管理システムの詳細な機能構成を示すブロック図である。
【００８６】
図４において、操作履歴管理システムは、文書要求部１０、操作履歴処理部１１、文書操作部１２、演算処理部１３、記憶部１４、要求処理部２０、文書管理部２１、情報制御部３０、操作履歴管理部３１、操作履歴対象管理部３２、通信制御部４０、メッセージ解析部４１、リファレンス生成部４２、レスポンスメッセージ生成部４３、判断部４４、演算部４５、操作履歴生成部４６を具備して構成される。
【００８７】
図１では、電子情報要求部１０、操作履歴処理部１１、文書操作部１２、演算処理部１３、記憶部１４による処理をクライアントＰＣ１００で実現し、要求処理部２０、文書管理部２１による処理をＷＥＢサーバ２００で実現し、情報制御部３０、操作履歴管理部３１、操作履歴対象管理部３２による処理をＤＨサーバ３００で実現し、通信制御部４０、メッセージ解析部４１、リファレンス生成部４２、レスポンスメッセージ生成部４３、判断部４４、演算部４５、操作履歴生成部４６による処理をプロキシサーバ４００で実現する例を示している。
【００８８】
この操作履歴管理システムは、上記で図１を用いて説明するように、操作対象の文書をリファレンスによって操作可能とし、そのリファレンスを用いて操作した文書の操作履歴を管理するシステムが、ＷＥＢ通信で操作対象となる文書の操作履歴についても管理できるようにしたシステムである。
【００８９】
文書操作部１２を用いて記憶部１４で記憶する文書の操作履歴のリファレンスの生成を指示すると、操作履歴処理部１１に処理要求が行われ、操作履歴処理部１１は演算処理部１３に対して文書ＩＤの演算要求を行う。演算処理部１３は「ＳＨＡ−２５６」などのハッシュ関数を文書に適用することによりハッシュ値「bodyhash」を算出してコンテンツＩＤとして操作履歴処理部１１へ応答する。
【００９０】
操作履歴処理部１１は、受信したコンテンツＩＤを含むＸＭＬ形式の操作履歴情報を生成し、この操作履歴情報を演算処理部１３へ送信する。演算処理部１３では、この操作履歴情報に対してコンテンツＩＤを算出する際に用いたハッシュ関数を適用し、文書ＩＤ「did」を算出する。
【００９１】
算出した文書ＩＤ「did」を操作履歴処理部１１へ応答し、操作履歴処理部１１は、その文書ＩＤ「did」を含むリファレンスを生成する。そして、操作履歴情報をＤＨサーバ３００などが構成する情報制御部３０へ転送する。
【００９２】
この情報制御部３０は、受信した情報を判断し、クライアントＰＣ１００による操作履歴処理部１１で生成した操作履歴情報を受信したと判断すると、操作履歴管理部３１へその操作履歴情報を記憶する。
【００９３】
この操作履歴管理部３１は、図９に示すような木構造にて操作履歴を管理している。
【００９４】
図９は、操作前の文書と操作後の文書との関連を示しており、各状態における文書の内容は、その文書の内容にハッシュ値を適用して算出したコンテンツＩＤ「bodyhash」によって識別され、図９上でノードとして表している。新規に操作履歴が作成された文書は木構造の頂点に位置するノード（９０１）によって表され、その文書を操作することにより新たなノードが生成される。
【００９５】
図９に示す例では、ノード（９０１）の文書に対して閲覧操作および編集操作を行うことにより閲覧操作をした状態の文書を表すノード（９０２）と、編集操作をした状態の文書を表すノード（９０３）とがノード（９０１）の下位階層に配置されている。
【００９６】
ノード（９０１）とノード（９０２）およびノード（９０３）とは、ノード（９０１）の文書の内容にハッシュ関数を適用して算出したコンテンツＩＤ「bodyhash」を含むＸＭＬ形式の操作履歴情報にハッシュ関数を適用して算出した文書ＩＤ「did」によって関連けられる。
【００９７】
また同様に、ノード（９０３）が示す文書の参照操作、編集操作することによりそれぞれノード（９０４）、ノード（９０５）が生成され、ノード（９０３）の下位階層に配置される。そして、ノード（９０５）が示す文書を三度、参照操作することによりノード（９０６）、ノード（９０７）、ノード（９０８）がノード（９０５）の下位階層に配置されている。
【００９８】
このように、文書の操作履歴を管理している。
【００９９】
このとき、クライアントＰＣ１００がＷＥＢサーバ２００とのＷＥＢ通信により文書を取得する場合について説明する。
【０１００】
クライアントＰＣ１００の文書要求部１０が、ＷＥＢサーバ２００にある電子情報（文書）を要求するためにＨＴＴＰリクエストメッセージを生成する。生成したＨＴＴＰリクエストメッセージは、通信制御部４０へと転送される。なお、文書要求部１０で生成されるＨＴＴＰリクエストメッセージに文書は、文書操作部１２を用いて指定した文書であり、ＷＥＢブラウザ上で指定する。
【０１０１】
文書要求部１０からＨＴＴＰリクエストメッセージを受信した通信制御部４０では、そのＨＴＴＰリクエストメッセージに示される文書の送受信を制御する。通信制御部４０では、受信したＨＴＴＰリクエストメッセージを電子情報処理部２０へと転送する。要求処理部２０は、ＷＥＢアプリケーションなどにより構成され、ＨＴＴＰリクエストメッセージに指定された内容に基づいて処理を行う。例えば、ＨＴＴＰリクエストメッセージに文書の取得要求が示されている場合には、文書管理部２１から該当する文書を取得する。
【０１０２】
そして、要求処理部２０は、処理内容に基づくＨＴＴＰレスポンスメッセージを生成する。文書管理部２１より文書を取得した場合にはその文書を含むＨＴＴＰレスポンスメッセージを生成する。
【０１０３】
また、生成したＨＴＴＰレスポンスメッセージを送信元の通信制御部４０へ送信する。
【０１０４】
通信制御部４０では、ＨＴＴＰレスポンスメッセージを受信すると、そのＨＴＴＰレスポンスメッセージをメッセージ解析部４１へ転送する。メッセージ解析部４１は、受信したＨＴＴＰレスポンスメッセージを解析することによりそのメッセージを構成するさまざまな情報を取り出す。このメッセージ解析部４１は、判断部４４を具備しており、取り出した情報から操作履歴を管理する必要があるかを判断する。
【０１０５】
判断部４４では、受信したＨＴＴＰレスポンスメッセージを構成するエンティティのフィールド名「Content-Type」に示されるメディアタイプが「multipart/型」であり、かつ、少なくとも１つ、パートが指定されているかを判断する。
【０１０６】
判断部４４が操作履歴を管理する必要があると判断すると、操作履歴を生成するとともにパートで示される部分のリファレンスを生成する必要があるため、メッセージ解析部４１はリファレンス生成部４２、レスポンスメッセージ生成部４３へと解析した情報を転送する。
【０１０７】
なお、判断部４４で操作履歴を管理する必要ないと判断する場合にメッセージ解析部４１は、その旨を通信制御部４０へ応答して通信制御部４０が要求処理部２０から受信したＨＴＴＰレスポンスメッセージを文書要求部１０へ送信する。
【０１０８】
そして、メッセージ解析部４１からＨＴＴＰレスポンスメッセージを解析した情報を受信したリファレンス生成部４２では、演算部４５および操作履歴生成部４６との相互通信によりリファレンスの生成処理を行う。
【０１０９】
リファレンス生成に際し、演算部４５にＨＴＴＰレスポンスメッセージのパートにより示される文書を送信し、演算部４５でハッシュ関数を適用することによりハッシュ値であるコンテンツＩＤを算出する。算出したコンテンツＩＤを操作履歴生成部４６に送信し、上記のようなＸＭＬ形式の操作履歴情報を生成する。
【０１１０】
生成した操作履歴情報を演算部４５に送信し、演算部４５がその操作履歴情報に対して文書に適用したハッシュ関数を用いてハッシュ値を算出する。このハッシュ値をリファレンス生成部４２に転送し、リファレンス生成部４２はそのハッシュ値を含むリファレンスを生成する。
【０１１１】
このとき、操作履歴生成部４６は、生成した操作履歴情報を通信制御部４０を介してＤＨサーバ３００などにより構成される操作履歴管理部３１に操作履歴を登録する。
【０１１２】
そして、リファレンス生成部４２は、生成したリファレンスをレスポンスメッセージ生成部４３へ送信するとともに、リファレンスの生成に用いたＨＴＴＰレスポンスメッセージのパートで示される文書を通信制御部４０を介して操作履歴対象管理部３２に送信して、操作履歴対象管理部３２で管理する。
【０１１３】
続いて、レスポンスメッセージ生成部４３は、メッセージ解析部４１から受信したＨＴＴＰレスポンスメッセージとリファレンス生成部４２から受信したリファレンスとから、新たなＨＴＴＰレスポンスメッセージを生成する。
【０１１４】
この処理では、生成したリファレンスでＨＴＴＰレスポンスメッセージのパートを置換した新たなＨＴＴＰレスポンスメッセージを生成する。レスポンスメッセージ生成部４３では、生成したＨＴＴＰレスポンスメッセージを通信制御部４０を介して文書の要求を行った文書要求部１０へ送信する。
【０１１５】
図５は、本発明の実施の形態における操作履歴管理システムの処理遷移を示すシーケンス図である。
【０１１６】
図５は、図１に示すシステム構成におけるシーケンスであって、ユーザがクライアントＰＣのＷＥＢブラウザを用いて処理対象の文書を指定すると、クライアントＰＣにインストールされた「WebClient」ソフトウェアサービスによりその文書を要求するＨＴＴＰリクエストメッセージが生成される（５０１）。
【０１１７】
このＨＴＴＰリクエストメッセージは、ＨＴＴＰプロトコルによるメッセージ形式により構成されるメッセージであり、このＨＴＴＰリクエストメッセージを構成する要素として、例えば「http://a/p/」が指定されている。
【０１１８】
これは、クライアントＰＣをネットワーク上で識別する情報が「ｋ」であり、プロキシサーバをネットワーク上で識別する情報が「ａ」であり、ＷＥＢサーバをネットワーク上で識別する情報が「ｔ」である場合において、処理要求するＷＥＢアプリケーションおよびＷＥＢアプリケーションで用いるデータを「ｐ」とした場合に、ＨＴＴＰプロトコルによるデータ通信を行うことを示す例である。
【０１１９】
すなわち、クライアントＰＣのＷＥＢブラウザ設定において、代理となるサーバとしてプロキシサーバが指定され、プロキシサーバを介してＷＥＢサーバとのデータ通信を行うことを示している。
【０１２０】
続いて、クライアントＰＣで生成したＨＴＴＰリクエストメッセージをプロキシサーバへと送信する（５０２）。
【０１２１】
ＨＴＴＰリクエストメッセージを受信したプロキシサーバでは、宛て先をプロキシサーバ「ａ」からＷＥＢサーバ「ｔ」に書き換えて、新たなメッセージを生成する処理（以下、「ＨＴＴＰリクエストメッセージ再生成処理」という）を行う（５０３）。
【０１２２】
このＨＴＴＰリクエストメッセージ再生成処理により、プロキシサーバが受信したＨＴＴＰリクエストメッセージの構成要素である「http://a/p/」が、「http://t/p」へと書き換えられた新たなＨＴＴＰリクエストメッセージが生成される。
【０１２３】
そして、生成されたこのＨＴＴＰリクエストメッセージをＷＥＢサーバへ送信する（５０４）。
【０１２４】
このＨＴＴＰリクエストメッセージを受信したＷＥＢサーバでは、そのメッセージにより指定されたＷＥＢアプリケーションとそのデータ「ｐ」により、所定のアプリケーション処理を行う（５０５）。続いて、このアプリケーション処理により導出された処理結果を反映したＨＴＴＰレスポンスメッセージを生成して（５０６）、プロキシサーバへ送信する（５０７）。
【０１２５】
このＨＴＴＰレスポンスメッセージの例として、図＊＊の説明で用いたＨＴＴＰレスポンスメッセージがある。
【０１２６】
このようなＨＴＴＰレスポンスメッセージを受信したプロキシサーバでは、そのＨＴＴＰレスポンスメッセージを解析して（５０８）所定の構成要素を取り出し、その構成要素を用いて、文書に対する操作履歴を記録する必要があるか否かを判断する処理を行う（５０９）。
【０１２７】
この判断によって操作履歴を記録する必要があると判断された場合には、続いて、その判断に用いた構成要素のリファレンスを生成する処理を行う（５１０）。また、リファレンスの生成に用いた情報を用いて操作履歴情報を生成する（５１１）。
【０１２８】
そして、生成した操作履歴情報と、文書をＤＨサーバに送信し（５１２）、ＤＨサーバではこれらを受信することにより文書および操作履歴情報を登録する（５１２）。
【０１２９】
また、プロキシサーバでは、生成したリファレンスを含む新たなＨＴＴＰレスポンスメッセージを再生成して（５１４）、クライアントＰＣへと送信する（５１５）。
【０１３０】
図６および図７は、図５に示すシーケンスにおいて、ＷＥＢサーバからＨＴＴＰレスポンスメッセージを受信した際のプロキシサーバにおける処理を示すフローチャートである。
【０１３１】
まず、図６は、本発明の実施の形態における操作履歴管理システムのプロキシサーバによる処理の詳細な流れの一例を示すフローチャートである。
【０１３２】
図６において、ＷＥＢサーバからＨＴＴＰレスポンスメッセージを受信すると処理が開始され、受信したＨＴＴＰレスポンスメッセージを解析することにより、少なくとも、このメッセージを構成するエンティティのタイプを示すフィールド名の「Content-Type」を特定する（６０１）。
【０１３３】
すなわち、この情報に限定されることなく予め設定した情報（「Content-Type」フィールド以外の他のフィールドなど）を解析により特定するようにしてもよい。
【０１３４】
続いて、この解析処理により特定されたフィールド名「Content-Type」に示されるメディアタイプが「multipart型」であって、そのメディアタイプ「multipart型」のパートが少なくとも１つ指定されているかを判断する（６０２）。
【０１３５】
この判断処理は、ＨＴＴＰプロトコルによるＷＥＢアクセス（ＷＥＢ通信）に際してＲＦＣ（Request For Comments）で規定されているＭＩＭＥ（Multipurpose Internet Mail Extensions）技術を用いた場合における判断処理である。
【０１３６】
この判断処理によって、メディアタイプとして「multipart型」が示されていない、若しくはメディアタイプ「multipart型」が示されているがパートの指定がないと判断する場合（６０２でＮＯ）、ポリシーサーバがＷＥＢサーバから受信したＨＴＴＰレスポンスメッセージそのものをクライアントＰＣへとパススルーする（６０８）。
【０１３７】
それに対して、特定されたフィールド「Content-Type」に示されるメディアタイプが「multipart型」であってパートが少なくとも１つ指定されていると判断する場合（６０２でＹＥＳ）には、その指定されているパートを切り出してリファレンスを生成する（リファレンス化）（６０３）。
【０１３８】
続いて、生成したリファレンスでそのパートを置換してリファレンスを含む新たなＨＴＴＰレスポンスメッセージを生成する（６０４）。
【０１３９】
そして、このリファレンスの生成により用いた情報を含む操作履歴情報を生成し（６０５）、生成した操作履歴情報をＤＨサーバに送信する（６０６）。また、生成したＨＴＴＰレスポンスメッセージをクライアントＰＣへ送信する（６０７）。
【０１４０】
次に、図７は、図６に示すフローチャートの変形例であって、本発明の実施の形態における操作履歴管理システムのプロキシサーバによる処理の詳細な流れの一例を示すフローチャートである。
【０１４１】
図７において、ＷＥＢサーバからＨＴＴＰレスポンスメッセージを受信すると処理が開始され、受信したＨＴＴＰレスポンスメッセージを解析することにより、少なくとも、このメッセージを構成するエンティティのタイプを示すフィールド名の「Content-Type」を特定する（７０１）。
【０１４２】
すなわち、この情報に限定されることなく予め設定した情報（「Content-Type」フィールド以外の他のフィールドなど）を解析により特定するようにしてもよい。
【０１４３】
続いて、この解析処理により特定されたフィールド名「Content-Type」に示されるメディアタイプが「multipart型」であって、かつ、そのメディアタイプ「multipart型」のパートが少なくとも１つ指定されているかを判断する（７０２）。
【０１４４】
この判断処理により、特定されたフィールド「Content-Type」に示されるメディアタイプが「multipart型」であり、かつ、パートが少なくとも１つ指定されていると判断する場合（７０２でＹＥＳ）には、図６のフローチャートに示す処理と同じである。
【０１４５】
それに対して、メディアタイプとして「multipart型」が示されていないと判断する場合（７０２でＮＯ）には、続いて、特定したフィールド名「Content-Type」に、いずれかのメディアタイプが指定されているかを判断する（７０８）。
【０１４６】
この判断処理によって、フィールド名「Content-Type」にいずれかのメディアタイプが指定されている場合（７０８でＹＥＳ）には、そのメディアタイプにより示されるパート部分のリファレンスを生成する（７１０）。
【０１４７】
そして、フィールド「Content-Type」のメディアタイプとして新たに「multipart」を指定して、生成したリファレンスを設定した新たなＨＴＴＰレスポンスメッセージを生成する（７１１）。
【０１４８】
また、特定されたフィールド「Content-Type」にメディアタイプが指定されていない場合や、そもそもフィールド「Content-Type」を特定できない場合（７０８）には、続いて、ＨＴＴＰレスポンスメッセージに文書の名称が指定されているか否かを判断する（７０９）。文書の名称が指定されている場合（７０９でＹＥＳ）には、フィールド名「ContentTypes」にメディアタイプが指定されているかの判断処理（７０８）で、メディアタイプが指定されている場合（７０８）と同じ処理を行う。すなわち、文書の名称が指定されているか否かの判断には、このメディアタイプが指定されているか否かの判断処理結果を問わない。
【０１４９】
それに対して、電子名称が指定されていない場合（７０９でＮＯ）には、ＷＥＢサーバから受信したＨＴＴＰレスポンスメッセージそのものをクライアントＰＣへパススルーする（７０７）。
【０１５０】
ちなみに、ＨＴＴＰメッセージを再生成した場合（７０４、７１１）、以降の処理として、図６で示す処理同様、まず、リファレンスの生成により用いた情報を含む操作履歴情報を生成して（７０５）、その操作履歴情報をＤＨサーバに送信する（７０６）。次に、生成したＨＴＴＰレスポンスメッセージをクライアントＰＣへ送信する（７０７）処理を行う。
【０１５１】
なお、本発明は、通信機能を備えた操作履歴管理システムで上述の動作を実行させ、あるいは上述の手段を構成させるためのプログラムを格納した記録媒体（ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等）から該プログラムをコンピュータにインストールし、これを実行させることにより、上述の処理を実行する操作履歴管理システムを構成することも可能である。操作履歴管理システムを構成するコンピュータは、システムバスを介してＣＰＵ（Central Processor Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）、ハードディスクが接続されている。ＣＰＵは、ＲＯＭまたはハードディスクに記憶されているプログラムに従い、ＲＡＭを作業領域にして処理を行う。
【０１５２】
また、プログラムを供給するための媒体は、通信媒体（通信回線、通信システムのように一時的または流動的にプログラムを保持する媒体）でもよい。例えば、通信ネットワークの電子掲示板（ＢＢＳ：Bulletin Board Service）に該プログラムを掲示し、これを通信回線を介して配信するようにしてもよい。
【０１５３】
本発明は、上記し、且つ図面に示す実施例に限定することなく、その要旨を変更しない範囲内で適宜変形して実施できるものである。
【図面の簡単な説明】
【０１５４】
【図１】本発明の実施の形態における操作履歴管理システムおよびプログラムを適用して構成した文書操作履歴管理システムのシステム構成図の一例。
【図２】本発明の実施の形態における操作履歴管理システムおよびプログラムを適用して構成した文書操作履歴管理システムのシステム構成図の一例。
【図３】本発明の実施の形態における操作履歴管理システムの概要構成を示す図。
【図４】本発明の実施の形態における操作履歴管理システムの詳細な機能構成を示すブロック図。
【図５】本発明の実施の形態における操作履歴管理システムの処理遷移を示すシーケンス図。
【図６】図５に示すシーケンスにおいて、ＷＥＢサーバからＨＴＴＰレスポンスメッセージを受信した際のプロキシサーバにおける処理を示すフローチャート。
【図７】図６に示すフローチャートの変形例であって、本発明の実施の形態における操作履歴管理システムのプロキシサーバによる処理の詳細な流れの一例を示すフローチャート。
【図８】文書のリファレンスを生成する順序を示す図。
【図９】操作履歴の管理体系を木構造で表した図。
【符号の説明】
【０１５５】
１０        文書要求部
１１        操作履歴処理部
１２        文書操作部
１３        演算処理部
１４        記憶部
２０        要求処理部
２１        文書管理部
３０        情報制御部
３１        操作履歴管理部
３２        操作履歴対象管理部
４０        通信制御部
４１        メッセージ解析部
４２        リファレンス生成部
４３        レスポンスメッセージ生成部
４４        判断部
４５        演算部
４６        操作履歴生成部
１００      クライアントＰＣ
２００      ＷＥＢサーバ
３００      ＤＨサーバ
４００      プロキシサーバ
【図１】
0004826556.tif 000002
【図２】
0004826556.tif 000003
【図３】
0004826556.tif 000004
【図４】
0004826556.tif 000005
【図５】
0004826556.tif 000006
【図６】
0004826556.tif 000007
【図７】
0004826556.tif 000008
【図８】
0004826556.tif 000009
【図９】
0004826556.tif 000010