説明

ドキュメント管理システムおよびドキュメント管理方法ならびにそのためのプログラム

【課題】メンテナンスが容易で、各々のユーザ毎に柔軟な定義を行えることが可能な、またデータの2次利用が容易なドキュメント管理技術を提供すること。
【解決手段】電子化されたドキュメントを管理するドキュメント管理システムに係り、ドキュメントの登録対象部分を定義するドキュメント定義手段A003と、定義されたドキュメントを編集するドキュメント編集手段A004と、編集されたドキュメント(送信データA005)を受信し解析してXMLデータ化する受信・解析手段A007と、解析されたXMLデータをNative XMLデータベースA009に登録するデータベース登録手段A008と、Native XMLデータベースA009に登録されたドキュメントを検索するドキュメント検索手段A010と、Native XMLデータベースA009に登録されたドキュメントの差分を検出する差分検出手段A011を有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電子化されたドキュメントデータを管理するドキュメント管理技術に係り、特に、Native XMLデータベースを用い一元管理するためのドキュメント管理システムおよびドキュメント管理方法ならびにそのためのプログラムに関するものである。
【背景技術】
【0002】
従来のXML(Extensible Markup Language)を用いたドキュメント管理技術では、XMLドキュメントをRDB(Relational Database;リレーショナルデータベース)に登録し、問い合わせユニット等により登録したXMLデータへの問い合わせを受け付ける方法を採用していた。
【0003】
データベース登録時には、入力されたXMLドキュメントとリレーショナルデータベースのテーブルをマッピングし、データベースに登録する。この規則は、ある要素に含まれる要素値および属性値のうち、出現数の上限が定まっているものについては、その要素に対応する階層のテーブルに前記上限の数のフィールドを設けてそれらの値を格納するように定められる(特許文献1参照)
【0004】
このように、従来のドキュメント管理システムでは、ドキュメントの検索自体は可能なものの、ドキュメントの差分検出等ドキュメントの2次利用を考慮した機能は十分ではなかった。また、従来のドキュメント管理システムは、リレーショナルデータベースと連携しているものが多いため、データの2次利用を行う際には登録するドキュメントに対して厳密な定義を行う必要であった。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2004−126804号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
上述したように、従来のドキュメント管理システムは、ドキュメントに対して事前に厳密な定義づけを行いリレーショナルデータベース等に登録を行う方法を行っていた。この従来の方法では、定型フォーマットのドキュメントしか取り扱うことができず、すでに作成されている過去のドキュメントやユーザ毎に作成される定型外のフォーマットのドキュメントを取り扱うことは難しいという課題があった。これらの課題を解消し、メンテナンスが容易で、かつ各々のユーザ毎に柔軟な定義を行えることが可能な、またデータの2次利用が容易なドキュメント管理技術が要望されている。
【0007】
そこで、本発明の目的は、メンテナンスが容易で、かつ各々のユーザ毎に柔軟な定義を行えることが可能な、またデータの2次利用が容易なドキュメント管理技術を提供することである。
【0008】
本発明のより具体的な目的は、ユーザが各自に自由なフォーマットのドキュメントを作成し、それらを検索等が可能なデータベースに取り込むことができ、また既に作成されている古いフォーマットのドキュメントなどをデータベースに取り込み検索等ができ、また差分検出も考慮に入れドキュメントに対して、項目の追加・変更・削除を検出することができ、さらに編集の際にドキュメントの編集に合わせて定義データを追従させることができるドキュメント管理システムおよびドキュメント管理方法ならびにそのためのプログラムを提供することである。
【課題を解決するための手段】
【0009】
本発明は、上記目的を達成するために、次の如き構成を有する。
a)本発明に係るドキュメント管理システムは、電子化されたドキュメントを管理するドキュメント管理システムにおいて、前記ドキュメントに対し登録対象部分を定義するドキュメント定義手段と、該定義されたドキュメントを編集するドキュメント編集手段と、前記定義され編集されたドキュメントを受信し解析してXMLデータ化する受信・解析手段と、該受信し解析されたXMLデータをNative XMLデータベースに登録するデータベース登録手段と、該Native XMLデータベースに登録されたドキュメントを検索するドキュメント検索手段と、前記Native XMLデータベースに登録されたドキュメントの差分を検出する差分検出手段を有する。
【0010】
b)また、前記ドキュメント定義手段は、ドキュメント内の既存の定義情報を読み込み、ドキュメント定義画面を表示して、定義したい登録対象部分の文字列範囲を選択させ、定義名称を入力させ、前記選択された文字列範囲の座標を取得し、該文字列範囲の座標と前記定義名を合わせてドキュメントの末尾に定義情報として付加する手段であること、前記ドキュメント編集手段は、ドキュメント内の既存の定義情報を読み込み、ドキュメントの編集操作が文字列の追加の場合には文字列の入力処理を行わせ、ドキュメントの編集操作が文字列の削除の場合には文字列の削除処理を行わせる手段であること、前記ドキュメント受信・解析手段は、受信したデータから定義情報を読み込み、定義名と該定義名に対する座標の一覧を取得し、定義名毎の座標に対応する文字列を取得し、XML形式に変換する手段であることを特徴とする。
【0011】
c)本発明に係るドキュメント管理方法は、電子化されたドキュメントを管理するドキュメント管理方法において、前記ドキュメントに対し登録対象部分を定義するドキュメント定義手順と、該定義されたドキュメントを編集するドキュメント編集手順と、前記定義され編集されたドキュメントを受信し解析してXMLデータ化する受信・解析手順と、該受信し解析されたXMLデータをNative XMLデータベースに登録するデータベース登録手順と、該Native XMLデータベースに登録されたドキュメントを検索するドキュメント検索手順と、前記Native XMLデータベースに登録されたドキュメントの差分を検出する差分検出手順を有することを特徴とする。
【0012】
d)また、前記ドキュメント定義手順は、ドキュメント内の既存の定義情報を読み込み、ドキュメント定義画面を表示して、定義したい登録対象部分の文字列範囲を選択させ、定義名称を入力させ、前記選択された文字列範囲の座標を取得し、該文字列範囲の座標と前記定義名を合わせてドキュメントの末尾に定義情報として付加する手順であり、前記ドキュメント編集手順は、ドキュメント内の既存の定義情報を読み込み、ドキュメントの編集操作が文字列の追加の場合には文字列の入力処理を行わせ、ドキュメントの編集操作が文字列の削除の場合には文字列の削除処理を行わせる手順であり、前記ドキュメント受信・解析手順は、受信したデータから定義情報を読み込み、定義名と該定義名に対する座標の一覧を取得し、定義名毎の座標に対応する文字列を取得し、XML形式に変換する手順であることを特徴とする。
【0013】
e)本発明に係るプログラムは、コンピュータを、上記ドキュメント管理システムにおける各手段として機能させるためのプログラムである。
【発明の効果】
【0014】
本発明における、ドキュメント定義手段,ドキュメント編集手段,およびWebアプリケーションである受信・解析手段,データ登録手段の組み合わせによって、使用するユーザ毎に異なるフォーマットのドキュメントを定義し、データベースに登録および検索することが可能となる。
【0015】
また、これらの仕組みによって、過去に作成されているドキュメントなども、ファイル形式さえ同じであれば、同様に定義を行いデータベースに登録可能となる。
【0016】
さらに、ドキュメント編集手段やドキュメント定義手段によって編集の際にドキュメントの変更に合わせて定義内容を追従させることが可能となる。
【図面の簡単な説明】
【0017】
【図1】本発明に係るドキュメント管理システムの全体構成図である。
【図2】ドキュメント編集ツールドキュメント定義用画面の例を示す図である。
【図3】対象ドキュメントの座標定義を説明するための図である。
【図4】送信データ定義を説明するための図である。
【図5】XML定義の例を示す図である。
【図6】ドキュメント定義部が行う処理のフローチャートを示す図である。
【図7−A】ドキュメント編集部が行う処理のフローチャートを示す図である(その1)。
【図7−B】ドキュメント編集部が行う処理のフローチャートを示す図である(その2)。
【図7−C】ドキュメント編集部が行う処理のフローチャートを示す図である(その3)。
【図8】データ受信・解析部が行う処理のフローチャートを示す図である。
【図9】解析部メモリ内定義の例を示す図である。
【図10】データ登録部が行う処理のフローチャートを示す図である。
【図11】差分検出部が行う処理のフローチャートを示す図である。
【図12】差分結果画面の例を示す図である。
【図13】データ検索部が行う処理のフローチャートを示す図である。
【図14】検索結果画面の例を示す図である。
【発明を実施するための形態】
【0018】
図1は、本発明に係るドキュメント管理システムの一例の全体構成図である。
同図に示すように、本発明に係るドキュメント管理システムは、ドキュメント定義部A003とドキュメント編集部A004からなるドキュメント編集ツールA002を備えるクライアントと、データ受信・解析部A007とデータ登録部A008とNative XMLデータベースA009とデータ検索部A010と差分検出部A011からなるWebアプリケーションA006を備えるドキュメント管理サーバを有している。同図において、A001はドキュメントファイル、A005は送信データ、A012はWebブラウザを示している。
【0019】
同図に示したドキュメント管理システムにおいて、ドキュメントファイルA001はクライアントサイドのドキュメント編集ツールA002においてドキュメント定義される。ドキュメント編集ツールA002では、ドキュメント定義部A003によってドキュメントファイルA001のドキュメント定義を行い、編集する際はドキュメント編集部A004にて編集を行う。
【0020】
ドキュメント編集ツールA002において編集および定義の完了したドキュメントは、送信データA005として、サーバサイドのWebアプリケーションA006に送信される。
【0021】
WebアプリケーションA006では、送信データA005をデータ受信・解析部A007で受信して解析した後、データ登録部A008にデータを受け渡し、Native XMLデータベース(XMLデータをそのままの形で登録検索可能なデータベース)A009に登録する。
【0022】
登録されたデータを検索する際には、ユーザはユーザPCのWebブラウザA012によりWebアプリケーションA006にアクセスし、データ検索部A010から、Native XMLデータベースA009を参照し、検索を行う。
【0023】
差分検出を行う際には、ユーザはユーザPCのWebブラウザA012によりWebアプリケーションA006にアクセスし、差分検出部A011からNative XMLデータベースA009を参照し、差分検出を行う。
【0024】
図2は、ドキュメント編集ツールA002のドキュメント定義部A003で表示されるドキュメント編集ツールドキュメント定義用画面B001の一例を示す図である。
【0025】
ドキュメント編集ツールドキュメント定義用画面B001は、クライアントサイドのドキュメント編集ツールA002にてドキュメントファイルA001を編集する際に表示される画面である。ドキュメント定義部A003のプログラム起動を行うと、ドキュメント編集ツールドキュメント定義用画面B001を表示する。
【0026】
ドキュメント編集ツール定義用画面B001を表示した後、登録したい個所を選択し、選択した部分の定義名を定義名記入用テキストボックスB002に入力する。定義名を定義名記入用テキストボックスB002に入力した後、定義ボタンB003を押下し、定義を実行する。定義の実行終了後、終了ボタンB004ボタンを押下することによりドキュメント定義部A003の処理を終了する。
【0027】
図3は、対象ドキュメントの座標定義を説明するための図である。
本例におけるドキュメント編集ツールA002では、図3に対象ドキュメントの座標定義C001として示すように、ドキュメントファイルA001の座標(X軸,Y軸)を、起点に最も近い座標を文字列開始座標とし、最も遠い座標を文字列終了座標とするように定義する。ここでは、同図に示すように、対象ドキュメントはドキュメントの0行目0列目を起点とし、また定義情報はY軸方向の末尾以降に付加される。
【0028】
図4は、図1の送信データA005の定義を説明するための図である。
図4(a)は、送信データA005を定義するための各項目の内容を示している。本例における送信データA005は、同図に示すように、ドキュメント本文を示す文書本文D001、ドキュメントのファイルのファイル名を示すファイル名D002、ファイルの最終更新日を示すファイル最終更新日D003、ファイルの最終更新者を示す作成者D004、文書内データ定義名を示す定義名D005(複数定義可能)、ドキュメント定義時の座標を始点(X座標,Y座標、終点(X座標,Y座標)で示す座標D006の各項目から構成される。
【0029】
図4(b)は、送信データA005の定義の具体的なデータ例D007を示している。
【0030】
図5は、本発明に係るXML定義を説明するための図であり、データ登録部A008からNative XMLデータベースA009にデータを登録する際のXML定義を示している。Native XMLデータベースA009に登録するデータは、同図(a)のXML定義E001のように定義される。
【0031】
本例におけるXML定義E001は、同図に示すように、ルートタグ(Doc)と、ドキュメントルート(Document)と、ドキュメントのIDを格納するドキュメントID(DocID)と、ファイル名を格納するファイル名(Name)と、登録日を格納する登録日(RegistDate)と、データ一覧タグ(DataList)と、テキスト内文書を格納するデータタグ(Data)と、定義名を格納する定義名(Name)と、対象定義の座標(開始のX座標,Y座標:終了のX座標,Y座標)を格納する座標(Position)の各項目から構成される。
【0032】
図5(b)は、XML定義の具体的なデータ例E002を示している。
【0033】
図6は、ドキュメント定義部A003が行う処理のフローチャートを示す図である。
ドキュメント定義部A003は、以下のような処理を行う。
まず、ステップF001にてドキュメントファイルを読み込み、ステップF002にてドキュメントファイル内の既存の定義情報を読み込む。ステップF003では、ドキュメント編集ツールドキュメント定義用画面B001画面を表示し、定義作業を可能にする。
【0034】
次に、ユーザにてステップF004にて定義したい部分の文字列範囲を選択する処理を行い、ステップF005にて表示されたドキュメント編集ツールドキュメント定義用画面B001を用いて定義画面処理(定義画面でB002に定義名称を入力し、定義ボタンB003を押下)を行った後、ステップF007にて定義名が入力されているかのチェックを行う。
【0035】
ステップF007のチェック結果が真の場合は(ステップF007:Y)、ステップF008へ処理が移行し、偽の場合は(ステップF007:N)、ステップF006にて定義名入力を促すメッセージを表示した後、再度ステップF005の処理へ戻る。
【0036】
ステップF008にてステップF004で選択した文字列選択範囲の座標(開始文字座標と終了文字座標)を取得し、ステップF009にてステップF008で取得した座標情報と定義名の関連付けを行い、ドキュメントの末尾にプロパティとしてこれら関連付けされた定義情報とデータ内容を保存する。
【0037】
最後に、ステップF010にて定義終了か否かの確認を行い、終了の場合(ステップF010:Y)、ステップF011にてユーザに終了ボタンの押下を実行させ、処理終了となる。ステップF010の確認の結果、終了でない場合(ステップF010:N)、ステップF004の処理に戻って、次に定義したい部分の文字列範囲を選択する処理を行い、同様の処理を繰り返す。
【0038】
図7A〜図7Cは、ドキュメント編集部A004が行う処理のフローチャートを示す図である。
【0039】
ドキュメント編集部A004は、以下のような処理を行う。
図7−AのステップG001にて、ドキュメントファイルを読み込み、ステップG002にて既存のプロパティ情報(定義情報)を読み込む。ステップG003にてドキュメントの操作イベント(編集操作(文字入力・削除))を取得し、前記取得した操作イベントが文字入力か否かを判定し(ステップG004)、文字入力の場合(ステップG004:Y)、ステップG006の「文字列入力時処理」のサブルーチン(図7−B参照)を実行した後、ステップG003の処理に戻る。
【0040】
前記取得した操作イベントが文字入力でない場合(ステップG004:N)、次に、前記取得した操作イベントが文字列削除か否かを判定し(ステップG005)、前記取得した操作イベントが文字列削除の場合(ステップG005:Y)、ステップG007の「文字列削除時処理」のサブルーチン(図7−C参照)を実行した後、ステップG003の処理に戻る。
【0041】
次に、ステップG008にて編集処理が終了か否かをチェックし、編集終了でない場合(ステップG008:N)、ステップG003へ処理を移行し再度同様の処理を繰り返す。処理終了の場合(ステップG008:Y)、ステップG009にてドキュメントを保存して終了処理をいった後、ドキュメント編集部A004の処理を終了する。
【0042】
次に、図7−Bを用いて、ステップG006の「文字列入力時処理」のサブルーチンを説明する。
【0043】
「文字列入力時処理」のサブルーチンは、ステップG010にて前記入力された文字列の座標、既存の定義リスト内の座標、文字コード、行の追加、列の追加情報を取得し、ステップG011にて行が追加されたか否かの判定を、入力された文字列の座標と設定済みの全ての定義内の座標と比較し行う。
【0044】
行が追加されている場合は(ステップG11:Y)、ステップG012に処理を遷移して添え字i=0、t=定義情報数に設定し、ステップG013にて入力座標と定義座標を比較する。すなわち、定義情報内座標情報のY座標と入力文字列のY座標を比較する。
【0045】
次に、ステップG014にて入力座標と定義座標を比較する。すなわち、定義内の開始座標と終了座標のどちらかのY座標が、入力文字列のY座標を超過しているかをチェックする。
【0046】
ステップG014のチェックが偽の場合(ステップG014:N)、ステップG018へ処理を移行し、ステップG014のチェックが真の場合(ステップG014:Y)、ステップG015に処理を移行する。
【0047】
ステップG015において、定義内の開始座標だけが入力文字列のY座標未満か否かをチェックし、偽の場合(ステップG015:N)、ステップG016にて定義情報の開始座標・終了座標のY座標の値を1加算する処理を行い、その後ステップG018へ移行する。
【0048】
ステップG015のチェック結果が真の場合(ステップG015:Y)、ステップG017にて対象定義情報の終了座標のY座標の値を1加算する処理を実施した後、ステップG018へ移行する。
【0049】
ステップG018にて添え字iをカウンタアップし(1加算)、次のステップG019にて添え字(カウンタ値)iが定義情報数t以上(すなわち、t≦i)になったか否かをチェックする。ステップG019のチェック結果が真の場合(ステップG019:Y)、処理が終了し、ステップG020へ移行する。
【0050】
ステップG019のチェック結果が偽の場合(ステップG019:N)、再度ステップG013へ処理を移行し、定義リスト上の次の定義に対して、ステップG013からステップG018の処理を繰り返す。
【0051】
ステップG020にて新規に列が追加されたか否かをチェックし、チェックの結果、真の場合(ステップG020:Y)、ステップG021に処理を移行する。こちらも同様に入力文字座標と既存の定義リスト内の座標を比較する。
【0052】
ステップG021にて添え字i=0、t=定義情報数に設定し、ステップG022にて定義情報内座標情報のXとY座標と入力文字列XとY座標の比較処理を行い、ステップG023にて入力文字列座標のY座標が開始座標のY座標以上で且つ終了座標以下か否かをチェックし、チェック結果が偽の場合(ステップG023;N)、ステップG027へ処理を移行する。
【0053】
ステップG023のチェック結果が真の場合(ステップG023:Y)、処理をステップG024へ移行する。ステップG024にて開始座標のX座標が入力文字列のX座標を超過しているか否かをチェックし、チェック結果が偽の場合(ステップG024:N)、ステップG025にて定義情報の開始座標および終了座標のX座標の値に1加算する処理を行い、その後、ステップG027の処理を行う。
【0054】
ステップG024のチェック結果が真の場合は(ステップG024:Y)、ステップG026にて定義情報の終了座標のX座標の値に1加算する処理を行い、ステップG027の処理を行う。
【0055】
ステップG027にて添え字iに1加算する処理を行った後、ステップG028にて添え字iと定義情報数tを比較し、添え字iが定義情報数t以上(すなわち、t≦i)になったか否かをチェックする。ステップG028のチェック結果が偽の場合(ステップG028:N)、再度ステップG022の処理に戻って同様の処理を繰り返す。ステップG028のチェック結果が真の場合(ステップG028:Y)、ステップG006のサブルーチンを終了する。
【0056】
次に、図7−Cを用いて、ステップG007の「文字列削除時処理」のサブルーチンを説明する。
【0057】
「文字列削除時処理」のサブルーチンでは、ステップG029にて前記入力された文字列の文字コード及び座標と既存の定義リスト内の座標を取得し、ステップG030にて行が削除されたか否かの判定を、設定済みの全ての定義を比較し行う。
【0058】
ステップG030のチェック結果が真の場合(ステップG030:Y)、ステップG031にて添え字i=0、t=定義情報数に設定する処理を行う。ステップG032にて定義情報内座標情報のY座標と入力文字列Y座標を比較する。
【0059】
ステップG033にて定義内の開始座標と終了座標のいずれかのY座標が削除文字列のY座標を超過しているか否かをチェックし、チェック結果が偽の場合(ステップG033:N)、ステップG039へ処理を移行する。
【0060】
ステップG033のチェック結果が真の場合は(ステップG033:Y)、ステップG034にて終了文字列座標と開始文字列座標と入力文字列のY座標が同じか否かをチェックする。
【0061】
ステップG034でのチェック結果が真の場合(ステップG034:Y)、ステップG036にて対象定義を削除する処理を行った後、ステップG039へ処理を移行する。
【0062】
ステップG034でのチェック結果が偽の場合(ステップG034:N)、ステップG035にて定義内の開始座標のみが入力文字列のY座標未満であるか否かのチェックを行い、ステップG035でのチェック結果が真の場合(ステップG035:Y)、ステップG038にて対象定義情報の終了座標のY座標の値を1減算した後、ステップG039の処理に移行する。
【0063】
ステップG035のチェック結果が偽の場合(ステップG035:N)、ステップG037にて定義情報の開始座標・終了座標のY座標の値を1減算した後、ステップG039にて添え字iに1加算する。ステップG039の処理後は、ステップG040にて添え字iと定義情報数tを比較し、添え字iが定義情報数t以上(すなわち、t≦i)になったか否かをチェックする。
【0064】
ステップG040のチェック結果が偽の場合(ステップG040:N)、再度ステップG033の処理に戻って同様の処理を繰り返す。ステップG040のチェック結果が真の場合(ステップG040:Y)、次に、ステップG041にて列が削除されたか否かをチェックする。
【0065】
ステップG041のチェック結果が真の場合、ステップG042にて添え字i=0、t=定義情報数に設定する処理を行い、その後、ステップG043にて入力座標と定義リストの座標を比較する。すなわち、定義情報内座標情報のXとY座標と入力文字列のXとY座標を比較する。
【0066】
次のステップG44にて入力文字列座標のY座標が開始座標のY座標が開始座標のY座標以上で且つ終了座標以下であるか否かのチェックを行う。
【0067】
ステップG044のチェック結果が偽の場合(ステップG044:N)、ステップG048の処理に移行する。ステップG044のチェック結果が真の場合(ステップG044:Y)、ステップG045にて開始座標のX座標が入力文字列のX座標を超過しているか否かのチェックを行い、ステップG045のチェック結果が真の場合(ステップG045:Y)、ステップG047にて定義情報の終了座標のX座標の値を1減算する。
【0068】
ステップG045のチェック結果が偽の場合(ステップG045:N)、ステップG046にて定義情報の開始座標および終了座標のX座標の値を1加算する。
【0069】
ステップG046およびステップG047の処理後は、共に、ステップG048に移行し、ここで添え字iの値を1加算する処理を行い、その後、ステップG049にて添え字iが定義情報数t以上(すなわち、t≦i)になったか否かをチェックし、ステップG049のチェック結果が偽の場合(ステップG049:N)、再度ステップG043に移行し同様の処理を繰り返す。
【0070】
ステップG049のチェック結果が真の場合(ステップG049:Y)、ステップG007の「文字列削除時処理」のサブルーチンを終了する。また、ステップG041のチェック結果が偽の場合(ステップG41:N)もステップG007の「文字列削除時処理」のサブルーチンを終了する。
【0071】
図8は、データ受信・解析部A007が行う処理のフローチャートを示す図である。また図9は、解析部メモリ内定義を示す図である。
【0072】
データ受信・解析部A007では、以下のような処理が行われる。
まず、ステップH001にてデータを受信後、ステップH002にて定義情報の読込処理を行い、ステップH003にて定義名と該定義名に対する座標の一覧を取得し、メモリ上に図9(a)に示すH011形式のリストを作成する。
【0073】
次に、ステップH004にて、t=定義情報数、添え字i=0に設定(カウンタ定義)した後、ステップH005にてINDEX番号(添え字)iの定義名を取得し、対応する定義名の座標を取得する。
【0074】
ステップH006にて、ステップH005で取得した座標をもとに、ドキュメントから文字列データを取得しメモリのデータ部分に格納する。取得後のメモリ上状態は、図9(b)に示すH012のようになる。
【0075】
ステップH007にて添え字iに1加算(i=i+1)した後、ステップH008にて添え字iと定義情報数tを比較して添え字iが定義情報数t以上(すなわちt≦i)になったか否かをチェックし、チェック結果が偽であれば(ステップH008:N)、再度ステップH005の処理に戻って同様の処理を繰り返す。
【0076】
ステップH008のチェック結果が真であれば(ステップH008:Y)、ステップH009にて作成した一覧をXML形式に変換(すなわち、図9(b)にH012として示した形式のデータを、図9(c)にH013として示した形式のデータに変換)する。
【0077】
最後に、ステップH010にてファイル名、更新日情報をXML形式に付加し、図9(d)にH014として示したデータ形式に変換して、解析部A008が行う処理を終了する。
【0078】
図10は、データ登録部A008が行う処理のフローチャートを示す図である。データ登録部A008では、以下のような処理が行われる。
ステップI001にて、データ受信・解析部A007にて作成されたXMLデータを取得する。
【0079】
その後、ステップI002にてデータベースをオープンし、ステップI003にて登録用のクエリ(query(リレーショナルデータベースの場合はSQL);処理要求,問い合わせ)を作成し、ステップI004にて前記作成した登録クエリを発行し、ステップI005にてコミットする。最後に、ステップI006にてデータベースのクローズ処理を行い、データ登録部A008が行う処理を終了する。
【0080】
図11は、差分検出部A011が行う処理のフローチャートを示す図である。また、図12は、差分結果画面を示す図である。
【0081】
差分検出部A011では、以下のような処理が行われる。
ステップJ001にて比較元旧ドキュメントを選択し、ステップJ002にて比較元新ドキュメントを選択する。
【0082】
その後、ステップJ003にてデータベースをオープンし、新ドキュメント・旧ドキュメントを取得するためのクエリを作成する。
【0083】
ステップJ005にてクエリを発行し、ステップJ006にて新旧2つのドキュメントのXMLデータを取得し、ステップJ007にてデータベースをクローズする。
【0084】
ステップJ008〜J012において差分検出のサブルーチンを実行する。まず、ステップJ008にてXMLデータから定義情報リストを取得し、ステップJ009にて追加分を検出し、ステップJ010にて削除分を検出し、ステップJ011にて変更分を検出する処理を行い、ステップJ012にて、追加分,削除分,および変更分のそれぞれのリストを作成し、差分検出処理のサブルーチンを終了する。
【0085】
最後に、ステップJ013処理にて差分検出結果データを、図12に示す如き差分結果画面として表示する。
【0086】
図12には、同図(a)に示すJ014として比較した新旧のドキュメント名を、同図(b)に示すJ015として追加分の定義名とその内容を、同図(c)に示すJ016として削除分の定義名とその内容を、同図(d)に示すJ017として変更分の定義名と変更前および変更後のそれぞれの内容を表示する。
【0087】
図13は、データ検索部A010が行う処理のフローチャートを示す図である。また、図14は、検索結果画面を示す図である。
【0088】
データ検索部A010では、以下のような処理が行われる。
まず、ステップK001にてユーザPCのWebブラウザA012を用いて入力された検索条件(ドキュメント名もしくはキーワード入力)をチェックし、ステップK002にて入力文字列を判定し、検索条件が入力されているか否かをチェックする。
【0089】
ステップK002によるチェック結果が真である場合(ステップK002:Y)、ステップK003にてデータベースをオープンし、ステップK004にて検索用のクエリを作成し、ステップK005にてクエリを発行する。
【0090】
ステップK006にてXMLデータを取得し、ステップK007にてデータベースをクローズする。
【0091】
最後に、ステップK008にて、検索結果のXMLデータをもとにXSLT( XSL Transformations)でデータを変換し図14に示すK009の形式で検索結果データを表示し、データ検索部A010の処理を終了する。
【0092】
なお、上記実施例におけるドキュメント管理システムを構成するドキュメント定義部(ドキュメント定義手段)と、ドキュメント編集部(ドキュメント編集手段)と、受信・解析部(データ受信・解析手段)と、データベース登録部(データ登録手段)と、ドキュメント検索部(データ検索手段)と、差分検出部(差分検出手段)の各処理部(各処理手段)の機能は、ドキュメント編集ツールを具備するクライアントコンピュータとWebアプリケーションを具備するサーバコンピュータの構成要素であるCPUやメモリなどのハードウェアにより各処理部に対応するプログラムを実行することにより実現される。
【0093】
また、上記各処理手段(処理部)に対応するプログラムは、FD,CD−ROM、DVDなどの記録媒体や、インターネットなどのネットワークを介して市場に流通させることができる。
【符号の説明】
【0094】
A001:ドキュメントファイル
A002:クライアントコンピュータ(ドキュメント編集ツール)
A003:ドキュメント定義部
A004:ドキュメント編集部
A005:送信データ
A006:サーバコンピュータ(Webアプリケーション)
A007:データ受信・解析部
A008:データ登録部
A009:Native XMLデータベース
A010:データ検索部
A011:差分検出部
A012:Webブラウザ(ユーザPC)

【特許請求の範囲】
【請求項1】
電子化されたドキュメントを管理するドキュメント管理システムにおいて、
前記ドキュメントに対し登録対象部分を定義するドキュメント定義手段と、該定義されたドキュメントを編集するドキュメント編集手段と、前記定義され編集されたドキュメントを受信し解析してXMLデータ化する受信・解析手段と、該受信し解析されたXMLデータをNative XMLデータベースに登録するデータベース登録手段と、該Native XMLデータベースに登録されたドキュメントを検索するドキュメント検索手段と、前記Native XMLデータベースに登録されたドキュメントの差分を検出する差分検出手段を有することを特徴とするドキュメント管理システム。
【請求項2】
前記ドキュメント定義手段は、ドキュメント内の既存の定義情報を読み込み、ドキュメント定義画面を表示して、定義したい登録対象部分の文字列範囲を選択させ、定義名称を入力させ、前記選択された文字列範囲の座標を取得し、該文字列範囲の座標と前記定義名を合わせてドキュメントの末尾に定義情報として付加する手段であることを特徴とする請求項1記載のドキュメント管理システム。
【請求項3】
前記ドキュメント編集手段は、ドキュメント内の既存の定義情報を読み込み、ドキュメントの編集操作が文字列の追加の場合には文字列の入力処理を行わせ、ドキュメントの編集操作が文字列の削除の場合には文字列の削除処理を行わせる手段であることを特徴とする請求項1または2記載のドキュメント管理システム。
【請求項4】
前記ドキュメント受信・解析手段は、受信したデータから定義情報を読み込み、定義名と該定義名に対する座標の一覧を取得し、定義名毎の座標に対応する文字列を取得し、XML形式に変換する手段であることを特徴とする請求項1から3の何れかに記載のドキュメント管理システム。
【請求項5】
電子化されたドキュメントを管理するドキュメント管理方法において、
前記ドキュメントに対し登録対象部分を定義するドキュメント定義手順と、該定義されたドキュメントを編集するドキュメント編集手順と、前記定義され編集されたドキュメントを受信し解析してXMLデータ化する受信・解析手順と、該受信し解析されたXMLデータをNative XMLデータベースに登録するデータベース登録手順と、該Native XMLデータベースに登録されたドキュメントを検索するドキュメント検索手順と、前記Native XMLデータベースに登録されたドキュメントの差分を検出する差分検出手順を有することを特徴とするドキュメント管理方法。
【請求項6】
前記ドキュメント定義手順は、ドキュメント内の既存の定義情報を読み込み、ドキュメント定義画面を表示して、定義したい登録対象部分の文字列範囲を選択させ、定義名称を入力させ、前記選択された文字列範囲の座標を取得し、該文字列範囲の座標と前記定義名を合わせてドキュメントの末尾に定義情報として付加する手順であり、前記ドキュメント編集手順は、ドキュメント内の既存の定義情報を読み込み、ドキュメントの編集操作が文字列の追加の場合には文字列の入力処理を行わせ、ドキュメントの編集操作が文字列の削除の場合には文字列の削除処理を行わせる手順であり、前記ドキュメント受信・解析手順は、受信したデータから定義情報を読み込み、定義名と該定義名に対する座標の一覧を取得し、定義名毎の座標に対応する文字列を取得し、XML形式に変換する手順であることを特徴とする請求項5記載のドキュメント管理方法。
【請求項7】
コンピュータを、請求項1から4の何れかに記載のドキュメント管理システムにおける各手段として機能させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7−A】
image rotate

【図7−B】
image rotate

【図7−C】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate


【公開番号】特開2010−224869(P2010−224869A)
【公開日】平成22年10月7日(2010.10.7)
【国際特許分類】
【出願番号】特願2009−71445(P2009−71445)
【出願日】平成21年3月24日(2009.3.24)
【出願人】(000152985)株式会社日立情報システムズ (409)
【Fターム(参考)】