Nothing Special   »   [go: up one dir, main page]

JP4305510B2 - 情報処理システム、情報処理装置及びプログラム - Google Patents

情報処理システム、情報処理装置及びプログラム Download PDF

Info

Publication number
JP4305510B2
JP4305510B2 JP2006356030A JP2006356030A JP4305510B2 JP 4305510 B2 JP4305510 B2 JP 4305510B2 JP 2006356030 A JP2006356030 A JP 2006356030A JP 2006356030 A JP2006356030 A JP 2006356030A JP 4305510 B2 JP4305510 B2 JP 4305510B2
Authority
JP
Japan
Prior art keywords
information
identification information
derivation relationship
document
derivation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006356030A
Other languages
English (en)
Other versions
JP2008165600A (ja
Inventor
明 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2006356030A priority Critical patent/JP4305510B2/ja
Priority to US11/753,690 priority patent/US20080162944A1/en
Priority to AU2007202450A priority patent/AU2007202450B2/en
Priority to KR1020070058939A priority patent/KR100925139B1/ko
Priority to CN2007101101226A priority patent/CN101211361B/zh
Publication of JP2008165600A publication Critical patent/JP2008165600A/ja
Application granted granted Critical
Publication of JP4305510B2 publication Critical patent/JP4305510B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6272Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database by registering files or documents with a third party
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/93Document management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2101Auditing as a secondary aspect
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2117User registration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2145Inheriting rights or properties, e.g., propagation of permissions or restrictions within a hierarchy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2151Time stamp

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Document Processing Apparatus (AREA)

Description

本発明は、情報処理システム、情報処理装置及びプログラムに関する。
テキスト文書データや音声データ、マルチメディアデータなどの電子文書(以下単に文書とも呼ぶ)をサーバに登録し、ユーザの要求に応じてその文書を提供することが行われている。また、電子文書に対して一意な識別子を付与し、ユーザが入力した識別子に対応する電子文書を提供するシステムも知られている。また、別の公知のシステムでは、電子文書を紙に印刷する場合に、電子文書の識別子をコード化して紙文書に埋め込み、紙文書を複写する際にその紙文書に埋め込まれた識別子を認識し、その識別子に対応した電子文書を取得し、紙に印刷する。
特許文献1に開示されたシステムでは、コンテンツコピー機は、コンテンツIDが埋め込まれたコンテンツのコピー原稿からコンテンツIDを読み取り、読み取ったコンテンツIDとコピーイベント属性の情報とをネットワークを介してコンテンツID管理センタへ送信する。コンテンツID管理センタは、受信したコンテンツIDからそのコンテンツの原本を取得し、新しいコンテンツIDを付与して、そのコンテンツIDとコピーイベント属性の情報とを記録し、その新しいコンテンツIDをコンテンツの原本に対して埋め込んでコピー要求元へ返す。コンテンツコピー機は、それをコピー結果として出力する。このシステムにおいて、コンテンツID管理センタは、コンテンツコピー機から受信したコンテンツIDに応じて、新たなコンテンツIDを発行した場合、その新しいコンテンツIDコピー元が前述の受信したコンテンツIDであることを記録する(例えば特許文献1の第41段落末尾)。
また、特許文献2に示されるシステムでは、クライアント端末でログを収集し、その収集したログを、ネットワークを介してログサーバに送信し、前記ログサーバで受信したログを、このログサーバで保存、解析するようにしている。このシステムでは、クライアント端末は、ログサーバにログを送信することができない場合、ログをいったん記憶し、送信可能になったときにその記憶したログをログサーバに送信する。
特開2002−016788号公報 特開2003−058395号公報
ところで、識別情報を含んだ文書に対して操作を行い、その操作の結果の文書に対して新たな識別情報を組み込む方法では、前者の識別情報と後者の識別情報との間に親子関係すなわち派生関係を定義することができる。ある文書の操作結果に対して別の操作が行われることで更なる操作結果が得られる場合のように操作が連鎖すると、派生関係の系列が得られる。また、同じ識別情報の文書に対し別々の操作が加えられた場合、その識別情報の子孫は2つに分岐する。このような識別情報同士の派生関係の情報をサーバに集め、サーバがそれら派生関係の情報を用いて利用者にサービスを行うシステムが考えられる。このようなシステムにおいて、何らかの理由で派生関係の系列の一部において情報が欠けていると、派生関係の誤った情報により誤った処理結果が利用者に通知されてしまうことがある。
請求項1に係る発明は、第1の情報処理装置から文書の操作前の識別情報を親とし操作後の識別情報を子とする派生関係の情報を受信する受信部と、受信した前記派生関係情報を記憶する派生関係記憶部と、前記第1の情報処理装置から前記派生関係情報を受信したときに、その派生関係情報における親の識別情報を子とする派生関係情報が前記派生関係記憶部に記憶されていなければ、前記受信した派生関係情報における子の識別情報を孤立情報記憶部に登録する第1登録部と、前記第1の情報処理装置から前記派生関係情報を受信したときに、その派生関係情報における親の識別情報が前記孤立情報記憶部に記憶されていれば、前記受信した派生関係情報における子の識別情報を前記孤立情報記憶部に登録する第2登録部と、識別情報を含んだ処理指示を受けた場合に、その識別情報を起点として前記派生関係記憶部に記憶された派生関係情報群が表す識別情報群の木構造を走査し、その走査の結果を用いて前記処理指示に係る処理を実行する処理実行部であって、前記処理指示に含まれた識別情報が前記孤立情報記憶部に記憶されている場合には、正しい処理結果が得られない可能性があることを示す通知を、前記処理指示の発行元に送信する処理実行部と、を備える第2の情報処理装置である。
請求項2に係る発明は、請求項1に係る発明において、孤立情報記憶部に登録されている各識別情報について、当該識別情報の親の識別情報が前記派生関係記憶部に記憶されているという第1の条件と、当該識別情報の親の識別情報が前記孤立情報記憶部に登録されていないという第2の条件が共に満足される場合には、前記孤立情報記憶部から当該識別情報を削除する削除部、を更に備える。
請求項3に係る発明は、第1の情報処理装置から文書の操作前の識別情報を親とし操作後の識別情報を子とする派生関係の情報を受信して派生関係記憶部に登録するステップと、前記第1の情報処理装置から前記派生関係情報を受信したときに、その派生関係情報における親の識別情報を子とする派生関係情報が前記派生関係記憶部に記憶されていなければ、前記受信した派生関係情報における子の識別情報を孤立情報記憶部に登録するステップと、前記第1の情報処理装置から前記派生関係情報を受信したときに、その派生関係情報における親の識別情報が前記孤立情報記憶部に記憶されていれば、前記受信した派生関係情報における子の識別情報を前記孤立情報記憶部に登録するステップと、識別情報を含んだ処理指示を受けた場合に、その識別情報を起点として前記派生関係記憶部に記憶された派生関係情報群が表す識別情報群の木構造を走査し、その走査の結果を用いて前記処理指示に係る処理を実行するステップであって、前記処理指示に含まれた識別情報が前記孤立情報記憶部に記憶されている場合には、正しい処理結果が得られない可能性があることを示す通知を、前記処理指示の発行元に送信するステップと、をコンピュータに実行させるためのプログラムである。
請求項4に係る発明は、第1の識別情報を含んだ文書に対して操作部が操作を行った場合に、操作後の文書に対応する第2の識別情報を付与し、前記第1の識別情報が親で前記第2の識別情報が子であることを示す派生関係情報を生成する派生関係情報生成部と、前記派生関係情報生成部が生成した前記派生関係情報を前記第2の情報処理装置に送信する送信部であって、前記派生関係情報が前記第2の情報処理装置へ送信できない場合は前記派生関係情報を一時保存部に保存し、前記派生関係情報が前記第2の情報処理装置へ送信可能となったときに前記一時保存部に保存された前記派生関係情報を前記第2の情報処理装置に送信する送信部と、を備える第1の情報処理装置と、前記第1の情報処理装置から受信した前記派生関係情報を記憶する派生関係記憶部と、前記第1の情報処理装置から前記派生関係情報を受信したときに、その派生関係情報における親の識別情報を子とする派生関係情報が前記派生関係記憶部に記憶されていなければ、前記受信した派生関係情報における子の識別情報を孤立情報記憶部に登録する第1登録部と、前記第1の情報処理装置から前記派生関係情報を受信したときに、その派生関係情報における親の識別情報が前記孤立情報記憶部に記憶されていれば、前記受信した派生関係情報における子の識別情報を前記孤立情報記憶部に登録する第2登録部と、識別情報を含んだ処理指示を受けた場合に、その識別情報を起点として前記派生関係記憶部に記憶された派生関係情報群が表す識別情報群の木構造を走査し、その操作の結果を用いて前記処理指示に係る処理を実行する処理実行部であって、前記処理指示に含まれた識別情報が前記孤立情報記憶部に記憶されている場合には、正しい処理結果が得られない可能性があることを示す通知を、前記処理指示の発行元に送信する処理実行部と、を備える第2の情報処理装置と、を有することを特徴とする情報処理システムである。
請求項5に係る発明は、第1の情報処理装置から文書の操作前の識別情報を親とし操作後の識別情報を子とする派生関係の情報を受信する受信部であって、前記文書が操作前の識別情報を持たない場合は親の識別情報を空とした前記派生関係情報を受信する受信部と、受信した前記派生関係情報を記憶する派生関係記憶部と、識別情報を含んだ処理指示を受けた場合に、その識別情報を起点として前記派生関係記憶部に記憶された派生関係情報群が表す識別情報群の木構造を走査し、その走査の結果を用いて前記処理指示に係る処理を実行する処理実行部であって、前記処理指示に含まれた識別情報を起点として前記木構造を先祖方向へ遡る処理において、親の識別情報が空である識別情報である根に到達できない場合には、正しい処理結果が得られない可能性があることを示す通知を、前記処理指示の発行元に送信する処理実行部と、を備える第2の情報処理装置である。
請求項6に係る発明は、請求項5に係る発明において、前記処理実行部は、前記処理指示に含まれた識別情報を起点として前記木構造を先祖方向へ遡って根に到達できた場合には当該識別情報が根に到達可能であると記録する記録部と、前記処理指示に含まれた識別情報を起点として前記木構造を先祖方向へ遡る処理の中で、前記記録部により根に到達可能であるとして記録された識別情報に到達した場合は、前記遡る処理を中止する中止部と、を備える。
請求項7に係る発明は、情報処理装置から文書の操作前の識別情報を親とし操作後の識別情報を子とする派生関係の情報を受信して派生関係記憶部に登録するステップであって、前記文書が操作前の識別情報を持たない場合は親の識別情報を空とした前記派生関係情報を受信して前記派生関係記憶部に登録するステップと、識別情報を含んだ処理指示を受けた場合に、その識別情報を起点として前記派生関係記憶部に記憶された派生関係情報群が表す識別情報群の木構造を走査し、その走査の結果を用いて前記処理指示に係る処理を実行するステップであって、前記処理指示に含まれた識別情報を起点として前記木構造を先祖方向へ遡る処理において、親の識別情報が空である識別情報である根に到達できない場合には、正しい処理結果が得られない可能性があることを示す通知を、前記処理指示の発行元に送信するステップと、をコンピュータに実行させるためのプログラムである。
請求項8に係る発明は、第1の識別情報を含んだ文書に対して操作部が操作を行った場合に、操作後の文書に対応する第2の識別情報を付与し、前記第1の識別情報が親で前記第2の識別情報が子であることを示す派生関係情報を生成するとともに、識別情報を含まない文書に対して前記操作部が操作を行った場合には、操作後の文書に対応する第2の識別情報を付与し、親が空で前記第2の識別情報が子であることを示す派生関係情報を生成する派生関係情報生成部と、前記派生関係情報生成部が生成した前記派生関係情報を第2の情報処理装置に送信する送信部であって、前記派生関係情報が前記第2の情報処理装置へ送信できない場合は前記派生関係情報を一時保存部に保存し、前記派生関係情報が前記第2の情報処理装置へ送信可能となったときに前記一時保存部に保存された前記派生関係情報を前記第2の情報処理装置に送信する送信部と、を備える第1の情報処理装置と、前記第1の情報処理装置から受信した前記派生関係情報を記憶する派生関係記憶部と、識別情報を含んだ処理指示を受けた場合に、その識別情報を起点として前記派生関係記憶部に記憶された派生関係情報群が表す識別情報群の木構造を走査し、その走査の結果を用いて前記処理指示に係る処理を実行する処理実行部であって、前記処理指示に含まれた識別情報を起点として前記木構造を先祖方向へ遡る処理において、親の識別情報が空である識別情報である根に到達できない場合には、正しい処理結果が得られない可能性があることを示す通知を、前記処理指示の発行元に送信する処理実行部と、を備える第2の情報処理装置と、を有することを特徴とする情報処理システムである。

請求項1に係る第2の情報処理装置によれば、孤立した派生関係の情報を管理しているので、その情報がある場合、派生関係情報群が表す木構造の走査において、正しい結果が得られない可能性がある旨を知らせることができる。
請求項2に係る第2の情報処理装置によれば、欠落していた派生関係の情報が第2の情報処理装置に登録された場合に、その登録を反映して正しく通知を送信することができる。
請求項3に係るプログラムによれば、孤立した派生関係の情報を管理しているので、その情報がある場合、派生関係情報群が表す木構造の走査において、正しい結果が得られない可能性がある旨を知らせることができる。
請求項4に係る情報処理システムによれば、孤立した派生関係の情報を管理しているので、その情報がある場合、派生関係情報群が表す木構造の走査において、正しい結果が得られない可能性がある旨を知らせることができる。
請求項5に係る第2の情報処理装置によれば、派生関係情報群が表す木構造の走査において根に到達できない場合に、正しい結果が得られない可能性がある旨を知らせることができる。
請求項6に係る第2の情報処理装置によれば、根まで遡れるか否かを本構成を有していない場合に比較して、早く判定できる。
請求項7に係るプログラムによれば、派生関係情報群が表す木構造の走査において根に到達できない場合に、正しい結果が得られない可能性がある旨を知らせることができる。
請求項8に係る情報処理システムによれば、派生関係情報群が表す木構造の走査において根に到達できない場合に、正しい結果が得られない可能性がある旨を知らせることができる。
図1は、文書利用管理システムの概略構成を示すブロック図である。このシステムは、インターネットやローカル・エリア・ネットワーク等のネットワーク30を介して接続された文書管理サーバ10とクライアント端末20−1,20−2,・・・(以下、クライアント端末20と総称する)から構成される。
クライアント端末20について図2を用いて説明する。クライアント端末20は、ユーザが文書を操作するために用いる端末であり、パーソナルコンピュータ、デジタル複合機などがその一例である。クライアント端末20は、文書操作部200,登録処理部210,及び一時記憶部220を備える。文書操作部200は、文書に対する操作を実行する手段である。文書に対する操作には、例えば、文書の表示(ユーザから見れば「閲覧」)、編集、印刷出力、紙文書の読み取り、紙文書の複写、等がある。図では、文書操作部200を1つだけ示したが、それら個々の操作を別々の操作部(例えば、編集用のアプリケーション、読取制御用のアプリケーションなどといった別々のアプリケーション)が担当してもよい。例えば、文書操作部200がワードプロセッサ等の電子文書を作成・編集するためのソフトウエアであれば、文書操作部200は、ユーザの指示に応じて電子文書を表示したり、電子文書に編集を加えたりする。文書操作部200は、文書に対して操作を行った場合、その操作の結果を表すID付き文書300を出力する。
ID付き文書300は、図3に示すように、メタ情報310と文書内容320を含んだ電子文書である。文書内容320は、文書操作部200の操作の結果生成された文書の内容データである。文書操作部200が電子文書を作成・編集するためのソフトウエアであれば、文書内容320はそのソフトウエアによる編集の結果生成される文書ファイルである。また、文書操作部200が電子文書を印刷する装置であれば、文書内容320は、例えば、印刷される電子文書の内容データとすればよい。また、文書操作部200が紙文書をスキャンする装置又は紙文書を複写する装置であれば、文書内容320は、例えば、その紙文書を読み取って得られる画像データとすればよい。
メタ情報310は、文書管理のための情報であり、管理ID312,親ID314,及びログ情報316を含む。
管理ID312は、当該ID付き文書300自体の一意な識別情報である。親ID314は、当該ID付き文書300の親のID付き文書の管理IDである。すなわち、本実施形態では、あるID付き文書と、このID付き文書に対して操作を加えた結果得られる新たなID付き文書とを、親と子の関係として取り扱う。第1のID付き文書を操作して第2のID付き文書が得られた場合、第1のID付き文書は第2のID付き文書の親であり、第2のID付き文書は第1のID付き文書の子である。したがって、例えば、管理ID「A」のID付き文書を文書操作部200で操作して、その結果得られた新たなID付き文書の管理IDが「B」である場合、後者のメタ情報310における管理ID312は「B」であり、親ID314は「A」である。このような親子の関係を、以下では「(管理IDの)派生関係」という。
なお、本システムに未登録の電子文書を新たに登録する操作を実行した場合や、未登録の紙文書をスキャン又は複写する操作を実行した場合(この場合、紙文書を読み取った画像を文書内容とするID付き文書が生成され、本システムに登録される)に生成されるID付き文書300では、親ID314は空(すなわち、親は存在しない)となる。
ログ情報316は、当該ID付き文書が生成された際の操作についての、各種のログ項目の情報である。ログ項目には、例えばその操作が行われた時刻、その操作の種別、その操作を指示したユーザ(操作者)などがあるが、もちろんこれに限るものではない。操作の種別には、例えば登録(本システムに新規の文書を登録すること)、閲覧、更新(文書内容の変更)、印刷、スキャン、紙文書の複写、等がある。例えば、ユーザが文書操作部200を用いて第1のID付き文書に対して編集を加え、編集完了の指示を行った場合、その結果生成される第2のID付き文書のログ情報316は、編集完了の時刻と、その編集を指示したユーザの識別情報と、操作の種別として「更新」と、を含んだものとなる。
図2の説明に戻り、文書操作部200は、操作結果として上述のようなID付き文書300を作成するために、ID割り当て部202及び派生関係組込部204を備える。ID割り当て部202は、操作結果のID付き文書300に一意な管理IDを付与する手段である。管理IDは、少なくとも本システム内で一意な識別情報である必要がある。例えば、操作の結果生成するID付き文書300(ただし管理ID312を除いたもの)のハッシュ値を求め、このハッシュ値をその文書300のID付き文書とすればよい。ハッシュ関数としてSHA-256(SHA-256はNISTがFIPS180-2で定めた256ビットのハッシュ値を持つ暗号学的ハッシュ関数である)などのような耐衝突性を持つ暗号学的ハッシュ関数を用いれば、実用上十分な一意性を持つ管理IDを生成することができる。もちろん、システム内で一意な管理IDを各クライアント端末20で生成する方法は、これに限らない。管理IDを、クライアント端末20固有の識別情報を含むものとすれば、システム内で一意な管理IDを各クライアント端末20で生成することができる。
派生関係組込部204は、操作結果の文書に対しID割り当て部202が割り当てた新たな管理ID312と、その操作の元になった親文書の管理IDである親ID314(新規登録の場合は、親IDは無し)と、その操作についてのログ情報316と、を含むメタ情報310を生成する。そして、派生関係組込部204は、そのメタ情報310を操作結果の文書内容に付加することにより、操作後のID付き文書300を生成して出力する。
登録処理部210は、文書操作部200が出力したID付き文書300を文書管理サーバ10に登録するための処理を実行する。このように各クライアント端末20が、自ら実行した操作の結果であるID付き文書300を文書管理サーバ10に登録することにより、文書管理サーバ10は各ID付き文書300間の派生関係を把握することができる。
文書操作部200が操作の結果出力するID付き文書300は、通常の文書ファイルと同様、電子的にコピーしたり、電子メールに添付するなどの方法で他の人宛に送信したりすることができる。他の人からID付き文書300を受け取った人が、自分のクライアント端末20の文書操作部200を用いてそのID付き文書300を操作すると、その操作に応じて新たな管理IDを付与されたID付き文書が生成されることになる。
また、文書操作部200が電子文書を印刷する場合、管理IDを生成し、その電子文書の印刷結果にその管理IDを埋め込んでもよい。管理IDの埋め込みは、例えば電子文書の印刷画像に、管理IDを示すコード画像を重畳する等の方法で行うことができる。この場合、文書操作部200は、その管理IDや操作種別「印刷」等のメタ情報を含んだID付き文書を文書管理サーバ10に登録する。なお、ID付き文書を印刷した場合には、そのID付き文書の管理IDを親ID314として含んだID付き文書が生成される。印刷操作に対応するID付き文書には、印刷された画像を示すページ記述言語データやビットマップ画像データをなどの印刷データを、文書内容320として組み込んでもよい。
また、管理IDが埋め込まれた紙文書を文書操作部200が読み取った場合、文書操作部200は、その読み取り操作に対して新たな管理IDを付与し、読み取り結果の画像を文書内容320として含んだID付き文書を生成して文書管理サーバ10に登録する。このID付き文書の親ID314には、紙文書から読み取った管理IDがセットされる。管理IDが埋め込まれた紙文書の複写の際には、上述した読み取り時と印刷時の処理が実行される。
ここで、ネットワーク30に障害が生じていたり、クライアント端末20とネットワーク30の接続が断たれていたり、文書管理サーバ10に障害が生じていたりする場合などのように、クライアント端末20が文書管理サーバ10にアクセスできない場合には、登録処理部210はID付き文書300を文書管理サーバ10に登録できない。このような場合に、文書操作部200がID付き文書300を出力すると、登録処理部210は、そのID付き文書300を一時記憶部に220に保管し、後で文書管理サーバ10にアクセス可能となったときにそのID付き文書をサーバ10に登録する。
次に、文書管理サーバ10について図4を用いて説明する。文書管理サーバ10は、システム内の複数のクライアント端末20から送られてくるID付き文書300を蓄積し、蓄積した情報に基づきユーザに各種のサービスを提供する。文書管理サーバ10は、文書DB100,派生関係DB110,孤立ノード記憶部120,文書登録部130,要求処理部140及び派生関係検索部150を備える。
文書DB100は、クライアント端末20から送られてきたID付き文書300のうちの文書内容320を格納するデータベースである。文書DB100に格納された各文書内容320は、一意な内容IDにより管理される。内容IDとしては、例えば当該文書内容の暗号学的ハッシュ関数によるハッシュ値を用いてもよいが、これに限定されるものではない。クライアント端末20が内容IDを付与してもよく、この場合、内容IDをメタ情報310に組み込んでもよい。
派生関係DB110は、そのようなID付き文書300のうち、派生関係の情報を主としたメタ情報を蓄積するデータベースである。図5に、派生関係DB110のデータ内容の一例を示す。図5に示した表における1行の情報が、1つのID付き文書300に対応するメタ情報レコードである。この例では、各ID付き文書300の管理IDに対応づけて、親ID、操作種類、操作者、操作時刻の各項目が登録されている。このうち、管理IDと親IDのペア以外の項目は、例示したものに限られない。管理目的上必要な項目を記録すればよい。
なお、図5は派生関係DB110が管理するデータを内容の観点から表現したものにすぎず、具体的な表現形式或いはデータベース形式を規定するものではない。例えば、派生関係DB110は、一般的なリレーショナルデータベースとして構築することもできるし、管理IDを除くメタ情報を記述したXML(eXtensible Markup Language)文書を、管理IDをキーとして登録したデータベースとして構築することもできる。
なお、文書DB100に登録された文書内容と派生関係DB110に登録されたメタ情報との対応関係は、図6に示すような対応関係情報により管理される。この対応関係情報は、管理IDに対応づけて文書内容の内容IDを記録したものである。対応関係情報は、文書DB100が持っていてもよいし、派生関係DB110が持っていてもよい。
図5に示した派生関係DB110のデータ内容は、図7のような木構造を成す。これは、管理IDをノードとし、管理ID間の親子関係をエッジとする木構造である。
図5〜図7の例が示す文書の履歴を時系列順に説明すると、以下のようになる。まず、文書管理サーバ10に登録されていなかった文書の「登録」操作がuser1のクライアント端末で実行される。これに応じて管理IDが"Doc1"、親IDが空、操作種類が「登録」であるメタ情報と、その文書の文書内容とを含むID付き文書"Doc1"がuser1のクライアント端末から文書管理サーバ10に送られる。これに応じ、文書管理サーバ10は、そのID付き文書"Doc1"中の文書内容を文書DB100へ、メタ情報を派生関係DB110にそれぞれ登録する。登録された文書内容は内容ID"Content1"に対応づけて管理される。ID付き文書"Doc1"はその後いずれかのクライアント端末上で操作され、その操作結果としてID付き文書"Doc2"が生成される。しかし、その時点ではそのクライアント端末が文書管理サーバ10にアクセスできないため、ID付き文書"Doc2"は文書管理サーバ10に送られない。その後、user2が、自分のクライアント端末でID付き文書"Doc2"を操作し、その操作結果のID付き文書"Doc3"が文書管理サーバ10に登録される。この時点では、文書管理サーバ10は、ID付き文書"Doc2"を受け取っていないので、未知の文書"Doc2"の更新結果がID付き文書"Doc3"であることを認識するのみであり、ID付き文書"Doc3"の始祖がID付き文書"Doc1"であることまでは把握できない。次にuser3が文書"Doc3"を閲覧し、その結果である文書"Doc4"を文書管理サーバ10に登録するが、文書"Doc4"の文書内容は、文書"Doc3"の文書内容と同じである。次にuser2による文書"Doc3"の編集(「更新」)に応じて、編集結果の文書"Doc5"が文書管理サーバ10に登録される。更にその後、user1により文書"Doc1"が編集され、編集結果の文書"Doc6"が文書管理サーバ10に登録される。
孤立ノード記憶部120は、派生関係の木構造において、根まで到達できないノード(管理ID)を記憶するための記憶装置である。孤立ノード記憶部120を用いた処理については、後で詳しく説明する。
文書登録部130は、クライアント端末20から受信したID付き文書の中の文書内容を文書DB100に、メタ情報を派生関係DB110に、それぞれ登録する。そのうち、メタ情報の登録を担当するのが派生関係登録部132である。
要求処理部140は、クライアント端末20からの管理IDを含んだサービス要求に応じて、派生関係DB110を用いたサービスを提供する。要求処理部140が提供するサービスとしては、例えば、サービス要求中の管理IDに対応する文書の最新版を検索するサービスがある。また別の例として、サービス要求中の管理IDに対応する始祖の文書又はその始祖についてのログ情報を提供するサービスを挙げることができる。また、別の例として、その管理IDの来歴、すなわち始祖からその管理IDまでに文書が経てきた操作の履歴(例えば誰がいつどんな操作をしたのかを示す情報のリスト)を提供するサービスもある。
サービス要求は、クライアント端末20に保持されたID付き文書に基づき発せられる。例えば、ユーザがクライアント端末20の文書操作部200によりID付き文書を開いた場合に、派生関係を用いたサービスのメニューを提供し、そのメニューの中からユーザが所望するサービスの指定を受け付け、そのID付き文書の管理IDと指定されたサービスを示すコードとを含むサービス要求を文書管理サーバ10の要求処理部140に送信する。
また別の例として、ユーザによるサービスの指定を一つの「操作」と捉え、その「操作」に対して新たに管理IDを付与することも考えられる。この場合、指定されたサービスのコードを操作種別として含み、指定の際に用いられた元のID付き文書の管理IDを親IDとして含んだID付き文書を生成し、このID付き文書をサービス要求として文書管理サーバ10に送ってもよい。この場合、要求処理部140は、受け取ったID付き文書内の操作種別の情報に基づき提供すべきサービスを判定し、同じくID付き文書内の親IDを、派生関係を遡る処理の起点とする。
要求処理部140は、クライアント端末20からサービス要求を受けた場合、そのサービス要求中に指定された管理IDを検索条件の少なくとも1項目として含んだ検索要求を派生関係検索部150に送る。
派生関係検索部150は、要求処理部140からの検索要求に応じて、派生関係DB110に登録された管理IDと親IDとの派生関係が構成する木を走査(トラバース)し、その走査の結果得られた情報を要求処理部140に返す。要求処理部140は、その走査結果の情報を用いて、ユーザから要求されたサービスを実行する。
次に、本実施形態のシステムで行われる処理の内容を詳しく説明する。まず、図8を参照して、文書に対して操作が行われたときのクライアント端末の処理手順の一例を説明する。文書に対する操作が行われた場合、文書操作部200は操作後の文書に対する管理IDを生成する(S1)。そして文書操作部200は、その操作に関する各種情報をオペレーティングシステムやその他のシステムから取得してメタ情報を生成し、そのメタ情報と操作後の文書内容とを含むID付き文書を生成し、そのID付き文書を登録処理部210に渡す(S2)。登録処理部210は、文書操作部200からID付き文書を受け取ると、文書管理サーバ10にアクセス可能であるかどうかを調べ(S3)、アクセス可能であればそのID付き文書を文書管理サーバ10に登録し(S4)、そうでなければそのID付き文書を一時記憶部220に格納する(S5)。
次に、図9を参照して、登録処理部210によるリトライ処理の手順の例を説明する。この手順は、登録処理部210が起動されたタイミングや、その後定期的に到来するリトライタイミングなど、所定のタイミングで実行される。
この手順が呼び出されると、登録処理部210は、一時記憶部220の中にID付き文書が存在するかどうかを調べ(S11)、存在しなければこの手順を終了する。存在すれば、文書管理サーバ10にアクセス可能であるかどうかを調べ(S12)、可能であれば一時記憶部220内のID付き文書を1つ取り出して文書管理サーバ10に登録し(S13)、登録した文書を一時記憶部220から削除する(S14)。アクセス可能でなければこの手順を終了する。以上の処理を、一時記憶部220が空になるまで繰り返す。
次に、図10及び図11を参照して、クライアント端末20からID付き文書を受信したときに文書管理サーバ10の文書登録部130が実行する処理の例を説明する。この手順では、まず文書登録部130が、受信したID付き文書中の文書内容を文書DB100に、メタ情報を派生関係DB110に、それぞれ登録する(S21)。次に、文書登録部130(派生関係登録部132)は、そのID付き文書中の親ID314が派生関係DB110に「登録済み」であるか否かを判定する(S22)。IDが派生関係DB110に「登録済み」であるとは、そのIDの値を管理IDとして持つメタ情報レコードが派生関係DB110内に存在することである。したがって、ステップS22では、派生関係登録部132は、派生関係DB110における各メタ情報レコードの管理IDの中に、ID付き文書中の親ID314の値と同じものが存在するかを調べる。存在すればその親IDは「登録済み」である。
その親IDが「登録済み」でない場合、そのID付き文書の管理ID(すなわちその親IDの子)を孤立ノードDB120に登録する(S24)。このような状況は、文書管理サーバ10が、未知(すなわち派生関係DB110に未登録)の文書から派生したID付き文書をクライアント端末20から受け取ったときに生じる。この場合、文書管理サーバ10は、受け取ったID付き文書に親があることは把握できるが、当該親より先の先祖については、当該親が派生関係DB110に登録されていないので把握できない。このように先祖を遡れない管理IDは、先祖から離れて孤立しているという意味で、孤立ノードと呼ぶ。そのような孤立ノードを検出した場合に、それを孤立ノード記憶部120に登録するのである。図5〜図7の例で言えば、文書管理サーバ10がID付き文書"Doc3"を受信した場合、ステップS22の判定結果がNo(否定)となり、管理ID"Doc3"が孤立ノード記憶部120に登録される。
また派生関係登録部132は、当該親IDが孤立ノード記憶部120に登録されているか否かを調べる(S23)。登録されていれば、親IDが孤立ノードということなので、当然、当該管理IDもその親IDと同様先祖を遡ることができない。従って、派生関係登録部132は、当該管理IDを孤立ノード記憶部120に登録する(S24)。図5〜図7の例では、"Doc4"及び"Doc5"がこのケースに該当する。なお、ステップS22とS23はどちらを先に実行してもよい。
受信したID付き文書中に含まれる親IDが派生関係DB110に登録済みであり且つ孤立ノード記憶部120に登録されていない場合、そのID付き文書の管理IDから派生関係の木を遡って根に達することができる。このような場合の中には、今までクライアント端末20から通知されず、派生関係DB110に登録されていなかったID付き文書が通知されてきた場合も含まれる。すなわち、クライアント端末20の一時記憶部220に記憶されていたID付き文書が、登録処理部210のリトライ処理によりサーバ10に送信されてきた場合である。例えば図5及び図7に示すような状態において、ID付き文書"Doc2"が文書管理サーバ10に登録された場合が、このようなケースの一例である。このような場合、今まで孤立ノード記憶部120に記憶されていた管理IDのなかに、上述のような欠落していたID付き文書の到来により、始祖(根)まで遡れるようになるものが出てくる場合がある。始祖まで遡れるようになった管理IDは、もはや孤立していないので、孤立ノード記憶部120から削除する必要がある。そこで、派生関係登録部132は、孤立ノード記憶部120の保守処理を実行する(S25)。この保守処理の手順の一例を、図11に示す。
大略的に言えば、図11の手順では、孤立ノード記憶部120に残った各管理ID群に対し、当該管理IDの親IDが派生関係DB110に登録済みであり、かつ当該管理IDの親IDが孤立ノード記憶部120内にない場合に、当該管理IDを孤立ノード記憶部120から削除するというものである。このような処理を、再帰的に繰り返すことで、今回受信したID付き文書により先祖につながるすべての管理IDを孤立ノード記憶部120から削除する。なお、図11に示した手順はあくまで一例にすぎない。
詳しくは、派生関係登録部132は、孤立ノード記憶部120に残っているすべての管理IDを対象リストに入れる(S27)。対象リストは、すべての管理IDを検査し終わったかを確認するために用いるリストである。次に、派生関係登録部132は、その対象リストが空か否かを判定し(S28)、空でなければその中から1つ管理IDを選んでそれを注目IDとする(S29)。そして、注目IDの親ID(これは派生関係DB110から求めることができる)が派生関係DB110に登録済みか否か(S30)、及び孤立ノード記憶部120内にあるか否か(S31)を判定する。ステップS30の判定結果がYes且つステップS31の判定結果がNoとなった場合、当該注目IDは先祖につながったことになるので、その注目IDを孤立ノード記憶部120から削除する(S32)。例えば、図7の例では、ID付き文書"Doc2"が文書管理サーバ10に登録された結果、"Doc2"が孤立ノード記憶部120から削除されると、"Doc3"についてのステップS30の判定結果はYes、ステップS31の判定結果はNoとなり、"Doc3"もステップS32で孤立ノード記憶部120から削除されることになる。
ステップS32の後は、ステップS27に戻り、ステップS32での削除に応じて対象リストを更新する。すなわち、ステップS32で新たに1つの管理IDが先祖につながっていることが分かると、それ以前の処理で先祖につながっていないと判定された管理IDも、つながっていると判定される可能性が出てくる。したがって、その時点で孤立ノード記憶部120に残っているすべての管理IDを改めて対象リストに入れるのである。
ステップS30及びS31において、注目IDの親IDが派生関係DB110に未登録であるか、又は孤立ノード記憶部120内に存在すれば、注目IDは依然として先祖にはつながっていないということになる。この場合、その注目IDを対象リストから削除し(S33)、ステップS28に戻る。ステップS28において対象リストが空と判定された場合、孤立ノード記憶部120にある管理IDを調べ尽くしても、新たに孤立ノード記憶部120から削除される管理IDはないということになる。すなわち、この場合、先祖につながる管理IDはすべて孤立ノード記憶部120から削除されたことになるので、ここでこの処理を終了する。
なお、図11に示した孤立ノード記憶部120の保守手順はあくまで一例に過ぎない。クライアント端末20から受信したID付き文書に応じて先祖につながるようになった管理IDをすべて孤立ノード記憶部120から削除できる手順であれば、どのような手順を用いてもよい。例えば、S25の処理に入った際に、ステップS21で受信したID付き文書の管理IDの子が派生関係DB110に登録されているかどうかを調べ、子が登録されていれば、その子以下のすべての子孫を派生関係DB110から求め、それら子孫を孤立ノード記憶部120から削除してもよい。
次に、図12を参照して、要求処理部140の処理手順の一例を説明する。この手順は、クライアント端末20から、派生関係を用いたサービスを要求された場合に呼び出される。
この手順では、大略的に言えば、クライアント端末20からのサービス要求に含まれる管理IDから派生関係の木の根に遡れるか否かを判定し、遡れない場合は、その要求に対して正しい処理ができないことをクライアント端末20に通知する。例えば図5及び図7の例では、"Doc4"に対応する文書の最新版(最も更新日時が新しい版)をクライアント端末20から要求された場合、本来ならばその最新版は"Doc6"("Content4")であるが、"Doc2"の不在により"Doc4"からは根"Doc1"に到達できないので、最新版である"Doc6"を発見することができない。仮に、図7の状態で"Doc4"からたどり着ける最新版を探索すると、その探索結果は"Doc5"となるが、これは本当の最新版ではない。
図12の手順では、クライアント端末20からサービス要求を受けると、要求処理部140は、その要求に含まれる管理IDが孤立ノード記憶部120内に存在するか否かを判定する(S41)。存在しなければ、その管理IDから派生関係の木の根に到達できる。この場合、要求処理部140は派生関係検索部150にその管理IDを起点とする検索を依頼してその検索結果を取得する(S42)。この依頼に応じ、派生関係検索部150は、派生関係DB110を参照してその管理IDから順に派生関係を先祖方向へと遡る。そして、根、すなわち親IDの値が空である管理ID(言い換えれば、「登録」イベントに対応する管理ID)に到達すると、更にその根を子孫方向へと下る。派生関係検索部150は、このような処理により、起点として指定された管理IDが所属する木全体を求め、その木に属する各ノード(管理ID)の情報を検索結果として要求処理部140に返す。
要求処理部140は、クライアント端末20から要求されたサービスを、その検索結果に基づいて実行し(S43)、その処理の結果をクライアント端末20に返す(S44)。例えば、要求されたサービスが文書の最新版の提供であれば、検索結果に含まれる各管理IDのうち、操作日時が最新である「更新」操作に対応するものを探索し、探索された管理IDに対応する文書内容を含んだID付き文書をクライアント端末20に返せばよい。また、要求されたサービスが、起点として指定された管理IDに対応する文書の来歴の提供であれば、要求処理部140は、その起点から木の根までの各ノード(管理ID)についてのログ情報のリストを前述の検索結果に基づき求め、その結果をクライアント端末20に返す。
なお、この例では、派生関係検索部150が、起点として指定された管理IDが所属する木全体を求めたが、検索条件によっては必ずしも木全体を求める必要はない。例えば、起点が所属する木の根が分かればよいのであれば、その根を特定して検索結果として返せばよい。
ステップS41で、要求対象の管理IDが孤立ノード記憶部120内にあることが分かった場合、要求処理部140は、暫定的な処理結果をクライアント端末20に返すか否かを判定する(S45)。暫定的な処理結果とは、その管理IDが属する部分木(この部分木は、根にはつながっていない)の範囲内で求められる処理結果のことである。例えば、暫定的な処理結果をクライアント端末20に提供するか否かの設定項目を文書管理サーバ10に設けておき、管理者がその項目を設定すればよい。この場合、ステップS45の判定は、この設定項目の値に基づき行われる。また、暫定的な処理結果が必要か否かを要求元のユーザが指定してもよい。
暫定的な処理結果の提供が不要である場合は、要求処理部140は、正しい処理結果が求められない可能性があることを表したメッセージをクライアント端末20に返し(S46)、派生関係DB110の検索はせずに処理を終了する。そのメッセージを受けたクライアント端末20は、そのメッセージを画面表示する。
暫定的な処理結果の提供を行う場合は、要求処理部140は、要求処理部140は派生関係検索部150にその管理IDを起点とする検索を依頼してその検索結果を取得し(S47)、クライアント端末20から要求されたサービスを、その検索結果に基づいて実行し(S48)、その処理の結果を、必ずしも正しくない暫定的な処理結果であることを表すメッセージと共に、クライアント端末20に返す(S49)。クライアント端末20は、その処理結果をそのメッセージと共に画面表示する。ユーザは、提示された処理結果が正しくない可能性があることを、そのメッセージにより知ることができる。
以上、実施形態について説明した。次に実施形態の変形例について説明する。上記実施形態では、ID付き文書300が文書管理サーバ10に登録される際に、そのID付き文書が、派生関係の木の根から孤立しているか否かを判定した。これに対し、以下に説明する変形例では、要求処理部140がクライアント端末20からサービス要求を受けたときに、そのような孤立判定を実行する。この変形例では、孤立ノード記憶部120は不要である。
この変形例の手順を、図13を用いて説明する。この手順では、要求処理部140は、クライアント端末20からサービス要求を受けると、そのサービス要求に示される起点の管理IDを派生関係検索部150に渡して検索を依頼し、その検索結果を得る(S51)。
派生関係検索部150は、図14に示すように、その起点から派生関係DB110内の派生関係を先祖方向に遡り(S61)、木の根に到達できた場合は、更にその根から子孫方向へと下ることで、その木に属するノード群を特定し、特定されたノード群の情報を検索結果として要求処理部140に返す。ここで、派生関係検索部150は、その検索過程で根まで到達できたかどうかを判定し(S63)、到達できた場合は検索成功を返して(S64)、更に検索結果を返す(S66)。一方、根に到達できないことが判明した場合は、検索を中止し、検索失敗を返す(S67)。木を遡る過程でノードの親が見つからない場合、すなわちそのノードの親IDが派生関係DB110内に登録されていないことが分かった場合には、根に到達できないと判定できる。
なお、図14の手順では、派生関係DB110内の各管理IDに対して到達可能フラグを設けることで、根に到達する前に、根に到達可能かどうかを判別できるようにしている。すなわち、一度根まで到達可能と判明した管理IDの到達可能フラグを「オン」にセットし(S65)(初期値は「オフ」)、起点から先祖方向へ遡る過程(S61)で到達可能フラグが「オン」であるノードに到達した場合(S62)、それ以上の遡及はやめて、検索成功を返す(S64)。
再び図13の説明に戻ると、要求処理部140は、派生関係検索部150の回答が検索成功か否かを判定し(S52)、検索成功であれば、受け取った検索結果を用いて処理を実行し(S53)、その処理結果をクライアント端末20に返す(S54)。派生関係検索部150の回答が検索失敗であれば、要求処理部140は、正しい処理ができないことができない旨のメッセージをクライアント端末20に返す。
なお、図13では省略したが、検索失敗(根まで到達できない)の場合でも、検索できた範囲の情報に基づいて要求処理部140が暫定的な処理結果を求め、その暫定的な処理結果を、「暫定的である」ことを表すメッセージと共にクライアント端末20に返してもよい。この場合、派生関係検索部150は起点が属する部分木の情報を要求処理部140に返し、要求処理部140はその部分木の範囲内で処理を実行する。また、根まで到達できない場合でも、サービス要求自体がその部分木の範囲内で正しい結果を出せるものである場合は、「暫定的である」旨のメッセージは返さなくてよい。例えば、サービス要求が「起点の直前の更新版から派生した中での最新版」の提供を求めるものである場合、その「直前の更新版」のノードがその部分木に含まれていれば、正しい結果を求めることができる。
以上に例示したシステムにおける文書管理サーバ10は、典型的には、汎用のコンピュータにて上述の文書管理サーバの各部の機能又は処理内容を記述したプログラムを実行することにより実現される。コンピュータは、例えば、ハードウエアとして、図15に示すように、CPU(中央演算装置)40、メモリ(一次記憶)42、各種I/O(入出力)インタフェース44等がバス46を介して接続された回路構成を有する。また、そのバス46に対し、例えばI/Oインタフェース44経由で、ハードディスクドライブ48やCDやDVD、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体を読み取るためのディスクドライブ50が接続される。このようなドライブ48又は50は、メモリに対する外部記憶装置として機能する。実施形態の処理内容が記述されたプログラムがCDやDVD等の記録媒体を経由して、又はネットワーク経由で、ハードディスクドライブ48等の固定記憶装置に保存され、コンピュータにインストールされる。固定記憶装置に記憶されたプログラムがメモリに読み出されCPUにより実行されることにより、実施形態の処理が実現される。クライアント端末20についても同様である。
文書利用管理システムの概略構成の例を示すブロック図である。 クライアント端末の内部構成の例を示すブロック図である。 ID付き文書のデータ構造の例を模式的に示す図である。 文書管理サーバの内部構成の例を示すブロック図である。 派生関係DBのデータ内容の例を示す図である。 管理IDと文書内容の対応関係を示すデータの例を示す図である。 図5に例示したデータ内容が示す派生関係を図式化して示す図である。 文書に対して操作が行われたときのクライアント端末の処理手順の例を示すフローチャートである。 登録処理部の処理手順の例を示すフローチャートである。 文書登録部の処理手順の例の一部を示すフローチャートである。 文書登録部の処理手順の例の残りの部分を示すフローチャートである。 要求処理部の処理手順の例を示すフローチャートである。 変形例における要求処理部の処理手順の例を示すフローチャートである。 変形例における派生関係検索部の処理手順の例を示すフローチャートである。 コンピュータのハードウエア構成の一例を示す図である。
符号の説明
10 文書管理サーバ、20 クライアント端末、30 ネットワーク、100 文書DB、110 派生関係DB、120 孤立ノード記憶部、130 文書登録部、132 派生関係登録部、140 要求処理部、150 派生関係検索部、200 文書操作部、202 ID割り当て部、204 派生関係組込部、210 登録処理部、220 一時記憶部、300 ID付き文書。

Claims (8)

  1. 第1の情報処理装置から文書の操作前の識別情報を親とし操作後の識別情報を子とする派生関係の情報を受信する受信部と、
    受信した前記派生関係情報を記憶する派生関係記憶部と、
    前記第1の情報処理装置から前記派生関係情報を受信したときに、その派生関係情報における親の識別情報を子とする派生関係情報が前記派生関係記憶部に記憶されていなければ、前記受信した派生関係情報における子の識別情報を孤立情報記憶部に登録する第1登録部と、
    前記第1の情報処理装置から前記派生関係情報を受信したときに、その派生関係情報における親の識別情報が前記孤立情報記憶部に記憶されていれば、前記受信した派生関係情報における子の識別情報を前記孤立情報記憶部に登録する第2登録部と、
    識別情報を含んだ処理指示を受けた場合に、その識別情報を起点として前記派生関係記憶部に記憶された派生関係情報群が表す識別情報群の木構造を走査し、その走査の結果を用いて前記処理指示に係る処理を実行する処理実行部であって、前記処理指示に含まれた識別情報が前記孤立情報記憶部に記憶されている場合には、正しい処理結果が得られない可能性があることを示す通知を、前記処理指示の発行元に送信する処理実行部と、
    を備える第2の情報処理装置。
  2. 前記孤立情報記憶部に登録されている各識別情報について、当該識別情報の親の識別情報が前記派生関係記憶部に記憶されているという第1の条件と、当該識別情報の親の識別情報が前記孤立情報記憶部に登録されていないという第2の条件が共に満足される場合には、前記孤立情報記憶部から当該識別情報を削除する削除部、
    を更に備える請求項1記載の第2の情報処理装置。
  3. 第1の情報処理装置から文書の操作前の識別情報を親とし操作後の識別情報を子とする派生関係の情報を受信して派生関係記憶部に登録するステップと、
    前記第1の情報処理装置から前記派生関係情報を受信したときに、その派生関係情報における親の識別情報を子とする派生関係情報が前記派生関係記憶部に記憶されていなければ、前記受信した派生関係情報における子の識別情報を孤立情報記憶部に登録するステップと、
    前記第1の情報処理装置から前記派生関係情報を受信したときに、その派生関係情報における親の識別情報が前記孤立情報記憶部に記憶されていれば、前記受信した派生関係情報における子の識別情報を前記孤立情報記憶部に登録するステップと、
    識別情報を含んだ処理指示を受けた場合に、その識別情報を起点として前記派生関係記憶部に記憶された派生関係情報群が表す識別情報群の木構造を走査し、その走査の結果を用いて前記処理指示に係る処理を実行するステップであって、前記処理指示に含まれた識別情報が前記孤立情報記憶部に記憶されている場合には、正しい処理結果が得られない可能性があることを示す通知を、前記処理指示の発行元に送信するステップと、
    をコンピュータに実行させるためのプログラム。
  4. 第1の識別情報を含んだ文書に対して操作部が操作を行った場合に、操作後の文書に対応する第2の識別情報を付与し、前記第1の識別情報が親で前記第2の識別情報が子であることを示す派生関係情報を生成する派生関係情報生成部と、
    前記派生関係情報生成部が生成した前記派生関係情報を第2の情報処理装置に送信する送信部であって、前記派生関係情報が前記第2の情報処理装置へ送信できない場合は前記派生関係情報を一時保存部に保存し、前記派生関係情報が前記第2の情報処理装置へ送信可能となったときに前記一時保存部に保存された前記派生関係情報を前記第2の情報処理装置に送信する送信部と、
    を備える第1の情報処理装置と、
    前記第1の情報処理装置から受信した前記派生関係情報を記憶する派生関係記憶部と、
    前記第1の情報処理装置から前記派生関係情報を受信したときに、その派生関係情報における親の識別情報を子とする派生関係情報が前記派生関係記憶部に記憶されていなければ、前記受信した派生関係情報における子の識別情報を孤立情報記憶部に登録する第1登録部と、
    前記第1の情報処理装置から前記派生関係情報を受信したときに、その派生関係情報における親の識別情報が前記孤立情報記憶部に記憶されていれば、前記受信した派生関係情報における子の識別情報を前記孤立情報記憶部に登録する第2登録部と、
    識別情報を含んだ処理指示を受けた場合に、その識別情報を起点として前記派生関係記憶部に記憶された派生関係情報群が表す識別情報群の木構造を走査し、その走査の結果を用いて前記処理指示に係る処理を実行する処理実行部であって、前記処理指示に含まれた識別情報が前記孤立情報記憶部に記憶されている場合には、正しい処理結果が得られない可能性があることを示す通知を、前記処理指示の発行元に送信する処理実行部と、
    を備える第2の情報処理装置と、
    を有する情報処理システム。
  5. 第1の情報処理装置から文書の操作前の識別情報を親とし操作後の識別情報を子とする派生関係の情報を受信する受信部であって、前記文書が操作前の識別情報を持たない場合は親の識別情報を空とした前記派生関係情報を受信する受信部と、
    受信した前記派生関係情報を記憶する派生関係記憶部と、
    識別情報を含んだ処理指示を受けた場合に、その識別情報を起点として前記派生関係記憶部に記憶された派生関係情報群が表す識別情報群の木構造を走査し、その走査の結果を用いて前記処理指示に係る処理を実行する処理実行部であって、前記処理指示に含まれた識別情報を起点として前記木構造を先祖方向へ遡る処理において、親の識別情報が空である識別情報である根に到達できない場合には、正しい処理結果が得られない可能性があることを示す通知を、前記処理指示の発行元に送信する処理実行部と、
    を備える第2の情報処理装置。
  6. 前記処理実行部は、
    前記処理指示に含まれた識別情報を起点として前記木構造を先祖方向へ遡って根に到達できた場合には当該識別情報が根に到達可能であると記録する記録部と、
    前記処理指示に含まれた識別情報を起点として前記木構造を先祖方向へ遡る処理の中で、前記記録部により根に到達可能であるとして記録された識別情報に到達した場合は、前記遡る処理を中止する中止部と、
    を備える請求項5記載の第2の情報処理装置。
  7. 情報処理装置から文書の操作前の識別情報を親とし操作後の識別情報を子とする派生関係の情報を受信して派生関係記憶部に登録するステップであって、前記文書が操作前の識別情報を持たない場合は親の識別情報を空とした前記派生関係情報を受信して前記派生関係記憶部に登録するステップと、
    識別情報を含んだ処理指示を受けた場合に、その識別情報を起点として前記派生関係記憶部に記憶された派生関係情報群が表す識別情報群の木構造を走査し、その走査の結果を用いて前記処理指示に係る処理を実行するステップであって、前記処理指示に含まれた識別情報を起点として前記木構造を先祖方向へ遡る処理において、親の識別情報が空である識別情報である根に到達できない場合には、正しい処理結果が得られない可能性があることを示す通知を、前記処理指示の発行元に送信するステップと、
    をコンピュータに実行させるためのプログラム。
  8. 第1の識別情報を含んだ文書に対して操作部が操作を行った場合に、操作後の文書に対応する第2の識別情報を付与し、前記第1の識別情報が親で前記第2の識別情報が子であることを示す派生関係情報を生成するとともに、識別情報を含まない文書に対して前記操作部が操作を行った場合には、操作後の文書に対応する第2の識別情報を付与し、親が空で前記第2の識別情報が子であることを示す派生関係情報を生成する派生関係情報生成部と、
    前記派生関係情報生成部が生成した前記派生関係情報を第2の情報処理装置に送信する送信部であって、前記派生関係情報が前記第2の情報処理装置へ送信できない場合は前記派生関係情報を一時保存部に保存し、前記派生関係情報が前記第2の情報処理装置へ送信可能となったときに前記一時保存部に保存された前記派生関係情報を前記第2の情報処理装置に送信する送信部と、
    を備える第1の情報処理装置と、
    前記第1の情報処理装置から受信した前記派生関係情報を記憶する派生関係記憶部と、
    識別情報を含んだ処理指示を受けた場合に、その識別情報を起点として前記派生関係記憶部に記憶された派生関係情報群が表す識別情報群の木構造を走査し、その走査の結果を用いて前記処理指示に係る処理を実行する処理実行部であって、前記処理指示に含まれた識別情報を起点として前記木構造を先祖方向へ遡る処理において、親の識別情報が空である識別情報である根に到達できない場合には、正しい処理結果が得られない可能性があることを示す通知を、前記処理指示の発行元に送信する処理実行部と、
    を備える第2の情報処理装置と、
    を有する情報処理システム。
JP2006356030A 2006-12-28 2006-12-28 情報処理システム、情報処理装置及びプログラム Expired - Fee Related JP4305510B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2006356030A JP4305510B2 (ja) 2006-12-28 2006-12-28 情報処理システム、情報処理装置及びプログラム
US11/753,690 US20080162944A1 (en) 2006-12-28 2007-05-25 Information processing apparatus, information processing system, and computer readable storage medium
AU2007202450A AU2007202450B2 (en) 2006-12-28 2007-05-29 Information processing apparatus, information processing system, and program
KR1020070058939A KR100925139B1 (ko) 2006-12-28 2007-06-15 정보 처리 시스템, 정보 처리 장치 및 기억 매체
CN2007101101226A CN101211361B (zh) 2006-12-28 2007-06-18 信息处理装置、信息处理系统和信息处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006356030A JP4305510B2 (ja) 2006-12-28 2006-12-28 情報処理システム、情報処理装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2008165600A JP2008165600A (ja) 2008-07-17
JP4305510B2 true JP4305510B2 (ja) 2009-07-29

Family

ID=39585745

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006356030A Expired - Fee Related JP4305510B2 (ja) 2006-12-28 2006-12-28 情報処理システム、情報処理装置及びプログラム

Country Status (5)

Country Link
US (1) US20080162944A1 (ja)
JP (1) JP4305510B2 (ja)
KR (1) KR100925139B1 (ja)
CN (1) CN101211361B (ja)
AU (1) AU2007202450B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7529780B1 (en) 2005-12-30 2009-05-05 Google Inc. Conflict management during data object synchronization between client and server
JP5233475B2 (ja) * 2008-07-28 2013-07-10 富士ゼロックス株式会社 文書管理装置、文書管理プログラム、及び文書管理システム
US9934240B2 (en) 2008-09-30 2018-04-03 Google Llc On demand access to client cached files
US8620861B1 (en) 2008-09-30 2013-12-31 Google Inc. Preserving file metadata during atomic save operations
JP5277924B2 (ja) * 2008-12-12 2013-08-28 富士ゼロックス株式会社 文書管理システム及び情報処理装置及びプログラム
US20160070620A1 (en) * 2013-04-08 2016-03-10 Dttp Technologies Inc. System and method for maintaining a file system at a computing device
JP6135778B2 (ja) * 2014-02-14 2017-05-31 富士通株式会社 ドキュメント管理プログラム、装置、および方法
KR102232003B1 (ko) * 2018-06-20 2021-03-25 주식회사 파수 추적 식별자를 이용한 객체 관리 방법, 장치, 컴퓨터 프로그램 및 그 기록 매체

Family Cites Families (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5671428A (en) * 1991-08-28 1997-09-23 Kabushiki Kaisha Toshiba Collaborative document processing system with version and comment management
US5806078A (en) * 1994-06-09 1998-09-08 Softool Corporation Version management system
JP3238854B2 (ja) * 1995-02-21 2001-12-17 富士通株式会社 データ圧縮方法及びデータ圧縮装置、並びにデータ復元方法及びデータ復元装置
JP3584540B2 (ja) * 1995-04-20 2004-11-04 富士ゼロックス株式会社 文書複写関係管理システム
JPH0934763A (ja) * 1995-07-19 1997-02-07 Fuji Xerox Co Ltd ファイル管理装置およびファイル管理方法
US5940830A (en) * 1996-09-05 1999-08-17 Fujitsu Limited Distributed document management system
JPH1091476A (ja) * 1996-09-17 1998-04-10 Toshiba Corp プログラム実行装置及び機能仕様とコードアドレスとの対応付け方法
US6088693A (en) * 1996-12-06 2000-07-11 International Business Machines Corporation Data management system for file and database management
US6917965B2 (en) * 1998-09-15 2005-07-12 Microsoft Corporation Facilitating annotation creation and notification via electronic mail
US6615253B1 (en) * 1999-08-31 2003-09-02 Accenture Llp Efficient server side data retrieval for execution of client side applications
US6289460B1 (en) * 1999-09-13 2001-09-11 Astus Corporation Document management system
US6662230B1 (en) * 1999-10-20 2003-12-09 International Business Machines Corporation System and method for dynamically limiting robot access to server data
WO2001067209A2 (en) * 2000-03-09 2001-09-13 The Web Access, Inc. Method and apparatus for performing a research task by interchangeably utilizing a multitude of search methodologies
JP2001283067A (ja) * 2000-03-29 2001-10-12 Seiko Epson Corp 在庫引き当て管理方法および在庫引き当て管理システム
JP2002032282A (ja) 2000-05-11 2002-01-31 Fujitsu Ltd ネット上におけるコンテンツ配信システム、配信方法およびそのプログラム製品
WO2002048843A2 (en) * 2000-12-14 2002-06-20 Silanis Technology Inc. Web-based method and system for applying a legally enforceable signature on an electronic document
US20020120506A1 (en) * 2000-12-15 2002-08-29 Hagen Philip A. Classified ads software program
US6617969B2 (en) * 2001-04-19 2003-09-09 Vigilance, Inc. Event notification system
JP4373029B2 (ja) * 2001-05-16 2009-11-25 株式会社リコー 文書管理装置及び文書管理方法並びに記録媒体
JP3626458B2 (ja) * 2001-06-04 2005-03-09 株式会社ソニー・コンピュータエンタテインメント ログ収集解析システム、ログ収集方法、コンピュータに実行させるためのログ収集プログラム、ログ解析方法、コンピュータに実行させるためのログ解析プログラム、ログ収集装置、ログ解析装置、ログ収集端末、ログサーバ
US6976211B2 (en) * 2001-07-23 2005-12-13 International Business Machines Corporation Method, system, and computer-program product for providing selective access to certain child nodes of a document object model (DOM)
US7496841B2 (en) * 2001-12-17 2009-02-24 Workshare Technology, Ltd. Method and system for document collaboration
US20030154071A1 (en) * 2002-02-11 2003-08-14 Shreve Gregory M. Process for the document management and computer-assisted translation of documents utilizing document corpora constructed by intelligent agents
US7213269B2 (en) * 2002-02-21 2007-05-01 Adobe Systems Incorporated Application rights enabling
JP2003271584A (ja) * 2002-03-14 2003-09-26 Ricoh Co Ltd 文書管理装置、クライアント装置、文書管理システム、プログラム及び記憶媒体
JP4137493B2 (ja) * 2002-04-12 2008-08-20 株式会社リコー データ管理装置、プログラム及び記録媒体
US7568218B2 (en) * 2002-10-31 2009-07-28 Microsoft Corporation Selective cross-realm authentication
JP3997412B2 (ja) * 2002-11-13 2007-10-24 ソニー株式会社 情報処理装置および方法、記録媒体、並びにプログラム
US20050004885A1 (en) * 2003-02-11 2005-01-06 Pandian Suresh S. Document/form processing method and apparatus using active documents and mobilized software
US7086003B2 (en) * 2003-06-13 2006-08-01 International Business Machines Corporation Attaching multiple files to an electronic document
EP1507402A3 (en) * 2003-06-23 2005-07-20 Ricoh Company, Ltd. Access control decision system, access control enforcing system, and security policy
US7826101B2 (en) * 2003-06-25 2010-11-02 Ricoh Company, Ltd. Document management method, document management program, recording medium, and document management apparatus
US7162473B2 (en) * 2003-06-26 2007-01-09 Microsoft Corporation Method and system for usage analyzer that determines user accessed sources, indexes data subsets, and associated metadata, processing implicit queries based on potential interest to users
US7171618B2 (en) * 2003-07-30 2007-01-30 Xerox Corporation Multi-versioned documents and method for creation and use thereof
US20050033777A1 (en) * 2003-08-04 2005-02-10 Moraes Mark A. Tracking, recording and organizing changes to data in computer systems
US7730097B2 (en) * 2004-02-12 2010-06-01 Mobileframe, Llc Smart database
JP2006024059A (ja) * 2004-07-09 2006-01-26 Fuji Xerox Co Ltd 文書管理用コンピュータプログラムならびに文書管理装置および方法
US7380087B2 (en) * 2004-08-25 2008-05-27 Microsoft Corporation Reclaiming application isolated storage
US20060050648A1 (en) * 2004-09-09 2006-03-09 Microsoft Corporation Reducing storage requirement for route information
JP2006120056A (ja) * 2004-10-25 2006-05-11 Hewlett-Packard Development Co Lp データベースシステムおよびその方法
US7865385B2 (en) * 2004-11-15 2011-01-04 The Boeing Company Methods and systems for modeling processes in airlines and other industries, and for simulating and valuing the effects of various products and services on those processes
US9020887B2 (en) * 2004-12-21 2015-04-28 Proofpoint, Inc. Managing the status of documents in a distributed storage system
JP2006184957A (ja) * 2004-12-24 2006-07-13 Fuji Xerox Co Ltd 情報処理装置及び方法、情報処理プログラム、及び、ピアシステム
US7593943B2 (en) * 2005-01-14 2009-09-22 Microsoft Corporation Method and system for synchronizing multiple user revisions to a shared object
US9734139B2 (en) * 2005-02-14 2017-08-15 Cluster Seven Limited Auditing and tracking changes of data and code in spreadsheets and other documents
JP4696721B2 (ja) * 2005-06-27 2011-06-08 富士ゼロックス株式会社 文書管理サーバ、文書管理システム
US7730032B2 (en) * 2006-01-12 2010-06-01 Oracle International Corporation Efficient queriability of version histories in a repository
CN1845102A (zh) * 2006-05-12 2006-10-11 清华大学 一种可扩展标记语言文档树的序列化方法
JP4876734B2 (ja) * 2006-06-22 2012-02-15 富士ゼロックス株式会社 文書利用管理システム及び方法、文書管理サーバ及びそのプログラム
US8332751B2 (en) * 2006-11-14 2012-12-11 Microsoft Corporation Removal of redundant information from electronic documents
US8412741B2 (en) * 2007-07-17 2013-04-02 Agile Software Corporation Product network management system and method

Also Published As

Publication number Publication date
JP2008165600A (ja) 2008-07-17
AU2007202450B2 (en) 2009-03-26
CN101211361B (zh) 2011-07-06
KR20090003542A (ko) 2009-01-12
CN101211361A (zh) 2008-07-02
US20080162944A1 (en) 2008-07-03
KR100925139B1 (ko) 2009-11-05
AU2007202450A1 (en) 2008-07-17

Similar Documents

Publication Publication Date Title
JP5023715B2 (ja) 情報処理システム、情報処理装置及びプログラム
JP5407209B2 (ja) 文書管理装置、文書管理プログラム、及び文書管理システム
JP4305510B2 (ja) 情報処理システム、情報処理装置及びプログラム
US20090044283A1 (en) Document management apparatus, document management system and method, and computer-readable medium
US20080243831A1 (en) Information processing apparatus, information processing system, and storage medium
US7904424B2 (en) Method for managing document data and data structure
JP2009099073A (ja) 文書処理履歴管理システム、文書処理履歴管理装置、プログラム
US8250103B2 (en) Image log management device, image log management method, image log management program
US7912859B2 (en) Information processing apparatus, system, and method for managing documents used in an organization
JP5458861B2 (ja) 文書検索装置、プログラム、文書登録装置、および文書検索システム
JP5045118B2 (ja) 文書管理装置、文書管理システム及びプログラム
JP5082460B2 (ja) 情報処理装置及びプログラム及び情報処理システム
JP2010073012A (ja) 文書管理装置、文書管理システム及びプログラム
JP5298882B2 (ja) 進捗管理装置、及びプログラム
JP5309664B2 (ja) 文書管理装置及びプログラム
JP5412827B2 (ja) 文書管理装置、文書管理プログラム、及び文書管理システム
JP4992731B2 (ja) 文書管理装置、文書管理システム、及びプログラム
JP5277924B2 (ja) 文書管理システム及び情報処理装置及びプログラム
JP5251133B2 (ja) 文書管理装置、文書管理システム、及びプログラム
JP5233475B2 (ja) 文書管理装置、文書管理プログラム、及び文書管理システム
JP7115179B2 (ja) 履歴管理装置、履歴管理プログラム及び履歴管理システム
JP5200633B2 (ja) 文書管理装置及びプログラム
JP2024081008A (ja) 文書管理装置、文書管理方法と画像形成装置、プログラム
JP2011039586A (ja) 文書管理装置及びプログラム
JP2006164157A (ja) プリントサービスシステム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081202

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090130

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090407

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090420

R150 Certificate of patent or registration of utility model

Ref document number: 4305510

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120515

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120515

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130515

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140515

Year of fee payment: 5

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees