(57)【要約】【課題】  文書に対する操作状態に基づく、操作履歴を管理できるようにした文書操作履歴管理システムおよびプログラムを提供する。【解決手段】  リファレンスを用いて文書を参照・閲覧する際に、当該文書を参照するアプリケーションに対してあらかじめ設定された項目情報を読み込み、文書に設定された項目情報の設定値を読み取って一時的に記憶する。その後、参照・閲覧操作が行われてアプリケーションを終了すると、一時的に記憶した設定値で参照・閲覧操作後の文書に設定された項目情報の設定値を書き換える。そして、書き換えられた文書に対して操作履歴情報の作成処理を行う。【選択図】図１
2008186389.tif 000002
【特許請求の範囲】
【請求項１】
参照操作の対象となる文書に演算式を適用して第１の演算値を算出する第１の算出手段と、
前記第１の算出手段により算出した前記第１の演算値を構成要素として含む操作履歴情報を生成する操作履歴情報生成手段と、
前記操作履歴情報生成手段によって生成された操作履歴情報に前記演算式を適用して第２の演算値を算出する第２の算出手段と、
前記第２の算出手段によって算出した前記第２の演算出力値を含む参照情報を作成する参照情報作成手段と、
前記参照情報作成手段によって作成された参照情報に基づく文書の参照操作により書き換えが行われる前記文書の属性情報を読み込む読込手段と、
前記読込手段により読み込まれた文書の属性情報に設定された設定情報を記憶する記憶手段と、
前記参照手段による文書の参照操作の終了により、前記記憶手段により記憶された設定情報で前記属性情報を書き換える書換手段と
を具備する文書操作履歴管理システム。
【請求項２】
前記読込手段は、
前記参照操作により参照される文書に対応付けられたアプリケーションごとに書き換えられる属性情報を読み込む請求項１記載の文書操作履歴管理システム。
【請求項３】
前記書換手段は、
前記記憶手段により記憶された設定情報に対応付けて管理した管理情報で前記属性情報を書き換える請求項１記載の文書操作履歴管理システム。
【請求項４】
コンピュータを、
参照操作の対象となる文書に演算式を適用して第１の演算値を算出する第１の算出手段、
前記第１の算出手段により算出した前記第１の演算値を構成要素として含む操作履歴情報を生成する操作履歴情報生成手段、
前記操作履歴情報生成手段によって生成された操作履歴情報に前記演算式を適用して第２の演算値を算出する第２の算出手段、
前記第２の算出手段によって算出した前記第２の演算出力値を含む参照情報を作成する参照情報作成手段、
前記参照情報作成手段によって作成された参照情報に基づく文書の参照操作により書き換えが行われる文書の属性情報を読み込む読込手段、
前記読込手段により読み込まれた文書の属性情報に設定された設定情報を記憶する記憶手段、
前記参照手段による文書の参照操作の終了により、前記記憶手段により記憶された設定情報で前記属性情報を書き換える書換手段
として機能させる文書操作履歴管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書操作履歴管理システムおよびプログラムに関する。
【背景技術】
【０００２】
アプリケーションを用いて作成した文書の参照処理によってファイル内容を閲覧した場合には、文書そのものを更新若しくは変更していないことから、参照処理が行われる前の状態と変わらない文書状態にあることが望まれている。しかしながら、一部のアプリケーションを用いて文書の参照処理を行うことによって、文書の状態が参照処理の前後で変更されてしまうことがある。
【０００３】
たとえば、参照処理を行った文書の属性情報として設定された作成元の装置識別番号（更新元の装置識別番号）や作成日時（更新日時）の情報などが変更されることがある。これは、文書そのものに対して編集、更新していないにもかかわらず、文書を管理した管理装置では文書が更新されたものとして認識してしまうことから更新されたことを示す履歴情報が作成されてしまうということがある。
【０００４】
特許文献１には、システム内の電子化されたドキュメントに関する操作履歴をシステム内から出力された紙文書などのシステム外のドキュメントの管理に積極的に利用することにより、その利便性を飛躍的に向上させる技術が開示されている。
【０００５】
この特許文献１に開示された従来技術は、あらかじめ管理したドキュメントに関する履歴情報を元に、ドキュメントがすでに出力済みであるか否かや、いつ誰が出力したことなどをユーザに通知する技術であって、操作履歴の利用方法を示している。
【特許文献１】特開平１１−２４９７７７
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、文書に対する操作に基づいて操作履歴を管理できるようにした文書操作履歴管理システムおよびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、請求項１の発明は、参照操作の対象となる文書に演算式を適用して第１の演算値を算出する第１の算出手段と、前記第１の算出手段により算出した前記第１の演算値を構成要素として含む操作履歴情報を生成する操作履歴情報生成手段と、前記操作履歴情報生成手段によって生成された操作履歴情報に前記演算式を適用して第２の演算値を算出する第２の算出手段と、前記第２の算出手段によって算出した前記第２の演算出力値を含む参照情報を作成する参照情報作成手段と、前記参照情報作成手段によって作成された参照情報に基づく文書の参照操作により書き換えが行われる前記文書の属性情報を読み込む読込手段と、前記読込手段により読み込まれた文書の属性情報に設定された設定情報を記憶する記憶手段と、前記参照手段による文書の参照操作の終了により、前記記憶手段により記憶された設定情報で前記属性情報を書き換える書換手段とを具備することを特徴とする。
【０００８】
また、請求項２の発明は、請求項１の発明において、前記読込手段は、前記参照操作により参照される文書に対応付けられたアプリケーションごとに書き換えられる属性情報を読み込むことを特徴とする。
【０００９】
また、請求項３の発明は、請求項１の発明において、前記書換手段は、前記記憶手段により記憶された設定情報に対応付けて管理した管理情報で前記属性情報を書き換えることを特徴とする。
【００１０】
また、請求項４の発明は、コンピュータを、参照操作の対象となる文書に演算式を適用して第１の演算値を算出する第１の算出手段、前記第１の算出手段により算出した前記第１の演算値を構成要素として含む操作履歴情報を生成する操作履歴情報生成手段、前記操作履歴情報生成手段によって生成された操作履歴情報に前記演算式を適用して第２の演算値を算出する第２の算出手段、前記第２の算出手段によって算出した前記第２の演算出力値を含む参照情報を作成する参照情報作成手段、前記参照情報作成手段によって作成された参照情報に基づく文書の参照操作により書き換えが行われる文書の属性情報を読み込む読込手段、前記読込手段により読み込まれた文書の属性情報に設定された設定情報を記憶する記憶手段、前記参照手段による文書の参照操作の終了により、前記記憶手段により記憶された設定情報で前記属性情報を書き換える書換手段として機能させることを特徴とする。
【発明の効果】
【００１１】
本発明の請求項１によれば、文書の参照操作に基づく操作履歴情報を管理することが可能となるという効果を奏する。
【００１２】
また、請求項２によれば、文書を異なるアプリケーションによって参照した場合でも、確実に属性情報の書き換えが可能となり、信頼性の高い操作履歴情報を管理することが可能になるという効果を奏する。
【００１３】
また、請求項３によれば、文書の使用状態や使用用途に基づく最適な情報へ書き換えができるとともに、信頼性の高い操作履歴情報を管理することが可能になるという効果を奏する。
【００１４】
また、請求項４によれば、文書の参照操作に基づく操作履歴情報を管理することが可能となるという効果を奏する。
【発明を実施するための最良の形態】
【００１５】
以下、本発明に係わる文書操作履歴管理システムおよびプログラムの一実施例を添付図面を参照して詳細に説明する。
【実施例】
【００１６】
図１は、本発明に係わる文書操作履歴管理システムおよびプログラムを適用して構成したシステム構成図の一例である。
【００１７】
図１において、この文書操作履歴管理システムは、文書作成アプリケーションや表計算アプリケーションなどのアプリケーションを用いて作成された電子文書（以下、「文書」若しくは「ドキュメント」という）に対して行われた操作の履歴情報を「操作履歴情報」として管理する文書操作履歴管理サーバ２００（以下、「ＤＨ（Document History）サーバ２００」という）、また、その文書を作成するアプリケーションがインストールされたクライアントＰＣ１００、作成された文書を管理保存する文書管理データベース３００が通信回線を介して接続されている。
【００１８】
この文書操作履歴管理システム２００は、文書管理データベース３００で管理した文書を参照・閲覧・編集・印刷・複写・スキャン・破棄などの操作を行う際に、その文書が対応付けられたアプリケーションの種類に関係なく、どのようなアプリケーションを用いた場合であっても操作内容に基づいた操作履歴を管理できるようにしたシステムである。
【００１９】
なお、本実施例では、文書管理データベース３００上で管理された文書に対して操作が行われる例を示すが、これに限定されることなく、クライアントＰＣ１００上で保存した文書に対して操作を行うような構成であってもよい。すなわち、操作対象となる文書の管理位置はいずれのネットワークノード上にあってもよい。
【００２０】
クライアントＰＣ１００では、管理した文書を参照する参照情報であるリファレンスを作成することが可能であって、作成したリファレンスには対応する文書を識別する情報が含まれ、リファレンスを用いることでその文書が操作可能となる。また、このクライアントＰＣ１００では、ＤＨサーバ２００が操作内容に基づいた操作履歴情報を管理するため、操作対象である文書の補正処理を行う。
【００２１】
ここに示す補正処理は、操作対象である文書を参照・閲覧することで書き換えられてしまう情報を書き換え前の情報にする処理である。
【００２２】
ＤＨサーバ２００では、文書に対して行われた操作の操作履歴情報を生成して管理する。この操作履歴情報の生成は、文書がＤＨサーバ２００にアップロードされることにより行われる。つまり、クライアントＰＣ１００にて補正処理が必要となる文書の場合、補正処理後の文書に対して操作履歴情報が生成される。
【００２３】
次に、クライアントＰＣ１００で作成した文書に対するリファレンスの作成方法およびＤＨサーバ２００で管理する操作履歴情報の生成方法を図２を用いて以下で説明する。リファレンスを新規に作成する場合にはその作成過程で、リファレンスの作成対象となる文書の操作履歴情報が生成される。
【００２４】
よって、リファレンスの作成方法とともに操作履歴情報の生成方法を説明する。
【００２５】
クライアントＰＣ１００から文書管理データベース３００上で管理された操作対象となる文書を指定し、その文書に対するリファレンス作成の指示を行う。このときのリファレンス作成の指示方法として、たとえば、コンテクストメニューから「リファレンス作成」を選択することにより指示する方法がある。
【００２６】
このとき、リファレンスの作成指示が行われると、ＤＨサーバ２００へその文書がアップロードされ、ＤＨサーバ２００ではリファレンスの作成が指示された文書全体に対して「ＳＨＡ−２５６」などのハッシュ関数を用いてハッシュ値を出力する。この演算によって算出したハッシュ値と文書とはユニークに対応する関係となる。このときのハッシュ値を「文書ハッシュ値」という。
【００２７】
もちろん、ハッシュ関数を用いてハッシュ値を出力することはＤＨサーバ２００でなくとも行えるので、文書が存在する任意の場所でハッシュ値を計算することにしてもよい。 
図２は、リファレンスの作成にあたり算出される文書ハッシュ値を示すとともに、作成後のリファレンスの状態を示す図である。
【００２８】
図２（ａ）は、「sample.foo」という名称の文書に「ＳＨＡ−２５６」というハッシュ関数を適用することを示す図であり、図２（ｂ）は、文書「sample.foo」にハッシュ関数「ＳＨＡ−２５６」を適用して算出した文書ハッシュ値「bodyhash」を示している。文書が編集・更新されている場合には、この文書ハッシュ値が編集前と編集後とで異なる。
【００２９】
このようにして文書に対する文書ハッシュ値「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」を「履歴ハッシュ値」という。
【００３８】
そして、算出した履歴ハッシュ値「did」をクライアントＰＣ１００に転送することで、クライアントＰＣ１００では、その履歴ハッシュ値「did」が設定されたリファレンスを作成する。図２では、拡張子「yui」により示されるリファレンスが作成された例を示している。また、図２に示すリファレンスには、リファレンスであること示すために、アイコンの右上に回転矢印を示している。
【００３９】
このようにして作成されたリファレンスをクライアントＰＣ１００やＤＨサーバ２００、文書管理データベース３００上のいずれかに配置しておき、このリファレンスを用いることにより文書管理データベース３００上の文書を簡単に参照できるようにしている。
【００４０】
次に、上記のように作成したリファレンスを用いて文書を特定する処理の詳細を示す。
【００４１】
まず、リファレンスに含まれる履歴ハッシュ値「did」を取り出し、その履歴ハッシュ値「did」に対応付けられた操作履歴情報を特定する。このときの操作履歴情報は、ＤＨサーバ２００により履歴ハッシュ値「did」に関連付けて管理されている。
【００４２】
続いて、特定した操作履歴情報の<body>タグで指定された要素「bodyhash」を取得する。この要素「bodyhash」は文書ハッシュ値であって、ＤＨサーバ２００がこの文書ハッシュ値「bodyhash」に対応する文書「sample.foo」を特定する。なお、この文書「sample.foo」は「foo」アプリケーションによって作成された文書であることを示している。
【００４３】
このように、作成されたリファレンスから文書を特定する。
【００４４】
次に、リファレンスを用いて特定した文書を参照・閲覧操作する処理の詳細を示す。
【００４５】
リファレンスを用いて文書の参照・閲覧を行うクライアントＰＣ１００では、その文書に対応付けられたアプリケーションにより変更される項目情報を読み込み、変更される項目情報が読み込まれた場合には読み込んだ項目情報に対して設定された設定値を一時的に記憶する。この状態でアプリケーションを起動して文書の参照・閲覧を行う。
【００４６】
そして、リファレンスを用いて特定した文書の参照・閲覧の操作を終了する場合には、アプリケーションによる参照・閲覧の操作に対する終了処理が行われた後で、先に読み込んだ項目情報を一時的に記憶した設定値で書き換える補正処理を行う。すなわち、項目情報に設定された設定値が参照操作前と等しい状態になり、この補正処理後の文書をＤＨサーバ２００にアップロードする。
【００４７】
この項目情報は、アプリケーションごとに設定された変更項目を示す情報であって、たとえば、タイムスタンプ情報や操作を行った操作元を識別する装置識別情報（たとえば、ＭＡＣ（Media Access Control）アドレス）であって、アプリケーションに対応付けて管理されている。
【００４８】
この補正処理の例を図３を用いて説明する。
【００４９】
図３は、参照・閲覧操作前、アプリケーションによる書き換え後、補正処理後の３つの状態で設定される設定情報を示している。
【００５０】
図３（ａ）は、文書アプリケーション「foo」に関連付けられた文書「sample.foo」を示し、図３（ｂ）は、文書アプリケーション「bar」に関連付けられた文書「sample.bar」を示し、図３（ｃ）は、文書アプリケーション「buz」に関連付けられた文書「sample.buz」を示している。
【００５１】
図３（ａ）に示された文書「sample.foo」は固定長６バイト（４８ビット）のヘッダ領域を持ち、この領域に操作元の装置の識別番号であるＭＡＣ（Media Access Control）アドレスが示されている。
【００５２】
文書アプリケーション「foo」によって書き換えられる項目情報としてこのＭＡＣアドレスが示され、参照・閲覧操作前のＭＡＣアドレスが「ＹＹ−ＹＹ−ＹＹ−ＹＹ−ＹＹ−ＹＹ」であることが示されている。また、文書「sample.foo」を参照・閲覧操作すると、そのＭＡＣアドレスがアプリケーションにより「ＡＡ−ＡＡ−ＡＡ−ＡＡ−ＡＡ−ＡＡ」へと書き換えられる。そして、文書アプリケーション「foo」の終了直前にそのＭＡＣアドレスを参照・閲覧操作前のＭＡＣアドレス「ＹＹ−ＹＹ−ＹＹ−ＹＹ−ＹＹ−ＹＹ」で上書きする補正処理を行う。
【００５３】
図３（ｂ）に示された文書「sample.bar」は固定長８バイト（６４ビット）のヘッダ領域を持ち、この領域に６４ビット形式からなる時刻情報が示されている。
【００５４】
文書アプリケーション「bar」によって書き換えられる項目情報としてこの時刻情報が示され、参照・閲覧操作前の時刻情報が「００：００：００」であることが示されている。また、文書「sample.bar」を参照・閲覧することでこの時刻情報が「１０：５５：２５」へと書き換えられることを示し、文書アプリケーション「bar」の終了直前にその時刻情報を参照・閲覧前の時刻情報「００：００：００」で上書きする補正処理を行う。
【００５５】
図３（ｃ）に示された文書「sample.buz」は文書の先頭部に可変長のヘッダ領域を持ち、そのヘッダ領域内にユーザを識別するユーザ識別子であるメールアドレスが示されている。このユーザ識別子であるメールアドレスの例として、図３（ｃ）では「<xxx@zzz.jp>」が示され、メールアドレスの前後に「<」および「>」が示されている。
【００５６】
参照・閲覧操作前のメールアドレスが「<xxx@zzz.jp>」であり、文書「sample.buz」を参照・閲覧操作すると、文書アプリケーション「buz」によってこのメールアドレスが「<ttt@sss.rr.jp>」へと書き換えられる。そして、文書アプリケーション「buz」の終了直前に、書き換えられる前のメールアドレス「<xxx@zzz.jp>」をそのメールアドレスに上書きする補正処理を行う。
【００５７】
このような補正処理が行われ、補正後の文書をクライアントＰＣ１００がＤＨサーバ２００へとアップロードすることから、ＤＨサーバ２００では、アップロードされた文書の操作履歴情報を作成する。このとき作成される操作履歴情報の一例を以下に示す。
【００５８】
まず、クライアントＰＣ１００よりアップロードされた文書全体に「ＳＨＡ−２５６」などのハッシュ関数を適用して文書ハッシュ値「bodyhash2」を算出する。クライアントＰＣ１００によって行われた操作内容が閲覧・参照操作であることから、算出した文書ハッシュ値「bodyhash2」が参照・閲覧前の文書ハッシュ値「bodyhash」と同一であることを確認して、以下に示すようなＸＭＬ形式の操作履歴情報を作成する。
【００５９】
ちなみに、算出した文書ハッシュ値「bodyhash2」が操作前の文書ハッシュ値「bodyhash」と異なる場合には、文書に対して参照・閲覧以外の操作が行われたことを示している。
【００６０】
01  <doc>
02   <body>bodyhash</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>
この操作履歴情報の03行目の<base>タグ内の要素である「did」は、文書の参照・閲覧操作を行う前の操作履歴にハッシュ関数を適用して算出した履歴ハッシュ値であって、リファレンスに指定された履歴ハッシュ値「did」が設定される。また、06行目の<time>タグ内の要素である「time_B」はＤＨサーバ２００に文書がアップロードされた時間を示し、07行目の<method>タグ内の要素として、参照・閲覧操作のみで文書が編集、変更されていないことを示す「not modified」が示される。
【００６１】
このようにして生成された操作履歴情報をＤＨサーバ２００は、文書ごとの操作履歴情報として管理する。そして、このＤＨサーバ２００では更に生成した操作履歴情報に「ＳＨＡ−２５６」などのハッシュ関数を適用することで履歴ハッシュ値「did2」を算出する。
【００６２】
また、ＤＨサーバ２００は、算出した履歴ハッシュ値「did2」を参照・閲覧操作を行ったクライアントＰＣ１００に送信し、クライアントＰＣ１００がリファレンスに設定された履歴ハッシュ値を受信した履歴ハッシュ値「did2」で更新する。
【００６３】
このように、リファレンスを用いて文書を操作すると、その文書に対する操作内容に基づいてリファレンスが更新される。また、そのリファレンスを用いて文書の操作を繰り返し行うことにより、図６に示すような木構造が構成されて操作履歴が管理される。
【００６４】
図４は、補正処理の詳細な流れを示すフローチャートの一例である。
【００６５】
図４において、リファレンスを用いて参照・閲覧する文書を指定すると処理が開始され、その文書に対応するアプリケーションを用いて文書を表示する（４０１）。続いて、文書を表示したアプリケーションにより書き換えられる項目情報を読み込み（４０２）、読み込んだ項目情報に対して設定されている情報を一時的に記憶する（４０３）。
【００６６】
たとえば、図３（ａ）に示す例では、「foo」アプリケーションを用いて参照・閲覧を行う文書「sample.foo」のヘッダ領域に設けられた固定長６バイトのＭＡＣアドレスが書き換えられるため、この参照・閲覧前のＭＡＣアドレスを読み込み、一時的に記憶する。
【００６７】
そして、文書を参照・閲覧した文書に対するアプリケーションの終了処理を行うと（４０４）、文書に対して行われた操作内容を判定する（５０５）。操作内容が編集や更新などの書き換え処理である場合（４０５でＮＯ）には、一時的に記憶した情報を廃棄する（４０６）。
【００６８】
それに対して、文書に対して行われた操作が参照・閲覧である場合（４０５でＹＥＳ）には、読み込みを行ったアプリケーションにより書き換えられる情報に、一時的に記憶した情報を上書きして（４０７）書き換えられた情報の補正を行う。
【００６９】
このような補正処理により補正した文書に対して図５に示すようなフローによって操作履歴情報を生成する。
【００７０】
図５は、操作履歴情報を生成する詳細な処理の流れを示すフローチャートの一例である。
【００７１】
図４に示すようなフローチャートにより補正処理が行われ、ＤＨサーバに文書がアップロードされると処理が開始され、補正処理された文書全体にハッシュ関数を適用して文書ハッシュ値を算出する（５０１）。上記に示す例の場合では文書ハッシュ値「bodyhash」が算出される。
【００７２】
次に、操作履歴情報を構成する時刻情報や時間情報、操作内容の情報を取得する（５０２）。これらの情報はシステム情報として取得することができるとともに、クライアントＰＣより取得する。
【００７３】
続いて、生成する操作履歴情報が新規作成であるかを判断し（５０３）、新規作成である場合（５０３でＹＥＳ）には取得した情報や算出した文書ハッシュ値をＸＭＬの各要素に設定することで操作履歴情報を生成する（５０６）。
【００７４】
それに対して、操作履歴情報が新規作成ではない場合（５０３でＮＯ）、たとえばリファレンスを用いて文書を閲覧・参照した場合には、操作履歴情報の作成対象である文書を特定するリファレンスに指定されている履歴ハッシュ値、上記の例では「did」の値を取得し（５０４）、この履歴ハッシュ値および取得した時刻情報などをＸＭＬの各要素に設定して操作履歴情報を更新する（５０５）。
【００７５】
そして、作成した操作履歴情報に基づいて図６に示すような木構造を作成する（５０７）。
【００７６】
図６は、リファレンスを用いて操作した文書に対する操作履歴を木構造で表した図である。
【００７７】
この木構造は文書を操作した履歴情報を示すノード同士を接続することによって構成されており、リファレンスに含まれる履歴ハッシュ値に基づいて構築される。
【００７８】
まず、リファレンスが新規に作成されることにより、最上位に配置するノード１（６０１）を生成する。このノード１（６０１）はリファレンスを作成する際に算出した履歴ハッシュ値が指定されており、上記に示す例では、この履歴ハッシュ値が「did」となる。
【００７９】
次に、この履歴ハッシュ値「did」が指定されたリファレンスを用いて文書の参照・閲覧操作を行うと、履歴ハッシュ値が設定されたノード１（６０１）と接続されるノード２（６０２）が生成され、ノード１（６０１）の下位に配置される。このノード２（６０２）には、ノード１（６０１）と同様に、ハッシュ関数を適用して算出した履歴ハッシュ値が指定されており、上記に示す例では、参照・閲覧操作が行われた文書に対して行われた補正処理後の履歴ハッシュ値が指定される。
【００８０】
このようにして木構造を構成する。
【００８１】
なお、ノード３（６０３）は、ノード１（６０１）のリファレンスに対応する文書を編集操作したことを示す履歴情報であって、ノード４（６０４）は、ノード３（６０３）のリファレンスに対応する文書を参照・閲覧操作したことを示す履歴情報である。また、ノード５（６０５）は、ノード３（６０３）のリファレンスに対応する文書を編集操作したことを示す履歴情報であって、ノード６（６０６）、ノード７（６０７）、ノード８（６０８）は、ノード５（６０５）のリファレンスに対応する文書を参照・閲覧操作したことを示す履歴情報である。
【００８２】
図７は、図１に示すクライアントＰＣ１００の詳細な構成を示すブロック図の一例である。
【００８３】
図７において、クライアントＰＣ１００は、通信インターフェース７０１、制御部７０２、記憶部７０３、表示部７０４、操作部７０５、アプリケーション処理部７０６、書換処理部７０７、リファレンス作成部７０８を具備し、文書を参照・閲覧操作するためのリファレンスを作成するとともに、参照・閲覧操作した文書の補正処理を行う。
【００８４】
キーボードやポインティングデバイスなどにより構成される操作部７０５を用いて文書管理データベースなどで管理した文書に対し、リファレンスの作成指示を行うと、リファレンス作成部７０８がリファレンスを作成する。このリファレンスの作成は、通信インターフェース７０１を介して接続されたＤＨサーバ２００との通信によって作成される。
【００８５】
すなわち、ＤＨサーバ２００ではリファレンスの作成過程で操作履歴情報が作成される。
【００８６】
このリファレンス作成部７０８によって作成されたリファレンスを操作部７０５が操作することで、そのリファレンスに対応する文書をアプリケーション処理部７０６によるアプリケーション処理により表示部７０４に表示して参照・閲覧操作を可能とする。このとき、制御部７０２では記憶部７０３若しくは通信インターフェース７０１を介して接続されたＤＨサーバ２００に記憶されたアプリケーションごとの項目情報を読み込み、その項目情報に対して文書の設定された設定情報を一時的に記憶部７０３へ記憶する。
【００８７】
続いて、アプリケーション処理部７０６によるアプリケーション処理が終了すると、制御部７０２が文書に対する操作内容が参照・閲覧操作のみであることを確認した後に、書換処理部７０７は、記憶部７０３で記憶した設定情報をその文書の項目情報に上書きして情報の書き換えを行う。
【００８８】
本願発明の構成として、図１に示すようにクライアントＰＣ１００、ＤＨサーバ、文書管理データベースが同一ネットワーク内に構成される以外にも、図８に示すようにこれらの装置をネットワークノードとするネットワークが複数、接続された構成であってもよい。この図８では、操作対象となる文書を文書管理データベースで管理するのではなく、個々のクライアントＰＣ１００で保存する場合の例を示している。
【００８９】
ネットワーク同士は各ネットワークに設けられたルータを介してＷｅｂ網と接続されており、各ネットワークに設けられたＤＨサーバは、操作履歴情報の作成対象となる文書を管理したクライアントＰＣ１００を識別する識別情報を管理し、その識別情報に対して操作履歴情報を管理する。
【００９０】
すなわち、クライアントＰＣ１００がいずれのネットワークに移動した場合であっても、そのクライアントＰＣ１００の識別情報を管理するＤＨサーバによって操作履歴情報が生成され、統一的な履歴情報の管理を行う。
【００９１】
図８には、ネットワーク３のＤＨサーバ３（２００−３）によって識別情報を管理するクライアントＰＣ３（１００−３）がネットワーク２上に移動した場合の例を示しており、移動先のネットワーク２上でクライアントＰＣ３（１００−３）が保存する文書を操作するとＤＨサーバ３（２００−３）との通信を行うことで操作可能となる。
【００９２】
この構成以外にも、各ネットワーク上に設けられたＤＨサーバ同士が相互に操作履歴情報および管理したクライアントＰＣ１００の識別情報を交換し、いずれのＤＨサーバを用いた場合であっても同一の処理を可能とする構成であってもよい。この構成によれば、ネットワーク３からネットワーク２にクライアントＰＣ３（１００−３）を移動した場合であっても、移動先のネットワーク２に設けられたＤＨサーバ２（２００−２）で操作履歴情報の生成および管理が可能となる。
【００９３】
この場合、操作履歴情報を作成したＤＨサーバ２（２００−２）はＤＨサーバ１（２００−１）およびＤＨサーバ３（２００−３）に操作履歴情報を転送することでネットワーク上のすべてのＤＨサーバが同一の操作履歴情報を管理する。各ＤＨサーバでは文書ごとに作成されたリファレンスに基づいた操作履歴情報が管理されている。
【００９４】
本発明は、上記し、且つ図面に示す実施例に限定することなく、その要旨を変更しない範囲内で適宜変形して実施できるものである。
【００９５】
なお、本発明は、通信機能を備えた文書操作履歴管理システムで上述の動作を実行させ、あるいは上述の手段を構成させるためのプログラムを格納した記録媒体（ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等）から該プログラムをコンピュータにインストールし、これを実行させることにより、上述の処理を実行する文書操作履歴管理システムを構成することも可能である。文書履歴処理システムを構成するコンピュータは、システムバスを介してＣＰＵ（Central Processor Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）、ハードディスクが接続されている。ＣＰＵは、ＲＯＭまたはハードディスクに記憶されているプログラムに従い、ＲＡＭを作業領域にして処理を行う。
【００９６】
また、プログラムを供給するための媒体は、通信媒体（通信回線、通信システムのように一時的または流動的にプログラムを保持する媒体）でもよい。例えば、通信ネットワークの電子掲示板（ＢＢＳ：Bulletin Board Service）に該プログラムを掲示し、これを通信回線を介して配信するようにしてもよい。
【産業上の利用可能性】
【００９７】
本発明は、操作内容に基づいた操作履歴を管理できるようにしたものに適用可能である。
【図面の簡単な説明】
【００９８】
【図１】本発明に係わる文書操作履歴管理システムおよびプログラムを適用して構成したシステム構成図の一例。
【図２】リファレンスの作成にあたり算出されるハッシュ値および作成後のリファレンスの状態を示す図。
【図３】参照・閲覧操作前、アプリケーションによる書き換え後、補正処理後の３つの状態で設定される設定情報の例を示す図。
【図４】補正処理の詳細な流れを示すフローチャートの一例。
【図５】操作履歴情報を生成する詳細な処理の流れを示すフローチャートの一例。
【図６】リファレンスを用いて操作した文書に対する操作履歴を木構造で表した図。
【図７】クライアントＰＣの構成を示すブロック図の一例。
【図８】本発明に係わる文書操作履歴管理システムおよびプログラムを適用して構成した他のシステム構成図の一例。
【符号の説明】
【００９９】
１００      クライアントＰＣ
２００      文書履歴管理サーバ（ＤＨサーバ）
３００      文書管理データベース
７０１      通信インターフェース
７０２      制御部
７０３      記憶部
７０４      表示部
７０５      操作部
７０６      アプリケーション処理部
７０７      書換処理部
７０８      リファレンス作成部
【図１】
2008186389.tif 000003
【図２】
2008186389.tif 000004
【図３】
2008186389.tif 000005
【図４】
2008186389.tif 000006
【図５】
2008186389.tif 000007
【図６】
2008186389.tif 000008
【図７】
2008186389.tif 000009
【図８】
2008186389.tif 000010