(57)【要約】【課題】ファイルの格納予定位置に登録されたプレースホルダに対する実体データファイルとの差し替え処理（充当処理）の実行の可否を状況に応じて決定する。【解決手段】作成処理受付部１００は、文書ＤＢ２０におけるプレースホルダの作成場所と、充当処理の実行の可否を決定するための充当条件と、を受け付ける。プレースホルダ登録部１１２は、文書ＤＢ２０にプレースホルダを登録する。充当条件登録部１１４は、充当条件をプレースホルダと関連付けて充当条件ＤＢ１４０に登録する。充当条件判定部１３２は、処理対象のプレースホルダ及び実体ファイルを特定する充当指示を充当処理受付部１２０が受け付けた場合に、充当条件ＤＢ１４０を参照し、処理対象のプレースホルダについての充当条件が満たされるか否かを判定する。充当条件が満たされれば充当処理が実行され、満たされなければ実行されない。【選択図】図１
2009169702.tif 000002
【特許請求の範囲】
【請求項１】
電子文書の格納が予定される記憶部の格納位置を取得し、前記電子文書の格納が予定される旨を表す情報であるプレースホルダを前記記憶部の前記格納位置に登録するプレースホルダ登録部と、
前記プレースホルダの前記格納位置に前記電子文書を格納する処理の実行の可否を判定するための制約条件を取得し、取得した前記制約条件を前記プレースホルダに関連付けて制約条件記憶部に登録する制約条件登録部と、
処理対象のプレースホルダと、前記処理対象のプレースホルダの前記格納位置に格納すべき電子文書と、を特定する格納要求を受けた場合に、前記処理対象のプレースホルダに関連付けて前記制約条件記憶部に登録された前記制約条件に従って、前記格納要求によって特定された電子文書を前記処理対象のプレースホルダの前記格納位置に格納する格納処理の実行の可否を判定する判定部と、
を備えることを特徴とする電子文書処理装置。
【請求項２】
前記制約条件は、複数の電子文書にそれぞれ対応する複数の前記プレースホルダの間の関係に関する条件であることを特徴とする請求項１に記載の電子文書処理装置。
【請求項３】
前記制約条件は、複数の電子文書にそれぞれ対応する複数の前記プレースホルダのうち、１つの前記プレースホルダについて前記格納処理が実行された場合は、他の前記プレースホルダについての前記格納処理の実行を許可しない旨を表す条件であることを特徴とする請求項２に記載の電子文書処理装置。
【請求項４】
前記制約条件は、複数の電子文書にそれぞれ対応する複数の前記プレースホルダについて、前記格納処理を実行する順序を定める条件であることを特徴とする請求項２に記載の電子文書処理装置。
【請求項５】
前記プレースホルダ登録部は、さらに、前記格納位置に格納される予定の前記電子文書の属性を表す属性情報を取得して前記プレースホルダに関連付けて前記記憶部に登録し、
前記制約条件は、前記属性情報に関する条件であることを特徴とする請求項１に記載の電子文書処理装置。
【請求項６】
前記制約条件は、前記格納要求が行われる日時又は前記格納要求を行う利用者に関する条件であることを特徴とする請求項１に記載の電子文書処理装置。
【請求項７】
電子文書の格納が予定される記憶部の格納位置を取得し、前記電子文書の格納が予定される旨を表す情報であるプレースホルダを前記記憶部の前記格納位置に登録するステップと、
前記プレースホルダの前記格納位置に前記電子文書を格納する処理の実行の可否を判定するための制約条件を取得し、取得した前記制約条件を前記プレースホルダに関連付けて制約条件記憶部に登録するステップと、
処理対象のプレースホルダと、前記処理対象のプレースホルダの前記格納位置に格納すべき電子文書と、を特定する格納要求を受けた場合に、前記処理対象のプレースホルダに関連付けて前記制約条件記憶部に登録された前記制約条件に従って、前記格納要求によって特定された電子文書を前記処理対象のプレースホルダの前記格納位置に格納する格納処理の実行の可否を判定するステップと、
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子文書処理装置及びプログラムに関する。
【背景技術】
【０００２】
情報処理システムにおいて、現時点ではシステムに登録されていないファイルが将来到着すると見込まれる場合に、記憶装置におけるファイルの格納位置を仮予約しておく機能を備えるシステムがある。このようなシステムでは、仮予約された格納位置に仮のファイルオブジェクトが登録され、後に実体データを含むファイルがこの仮のファイルオブジェクトと差し替えられて、この予約された位置に格納される。このような仮のファイルオブジェクトは、「プレースホルダ」又は「プレースホルダオブジェクト」と呼ばれる場合がある。また、実体データを含むファイルを、対応するプレースホルダと差し替えて格納することを「充当」と呼ぶ場合がある。
【０００３】
特許文献１及び２には、電子文書処理システムにおいて、プレースホルダオブジェクトを用いて、まだ存在していないが、システムにより明らかに到着が見込まれる文書ファイルの明示的な表現を提供する技術が開示されている。特許文献１及び２に記載のシステムでは、例えば、スキャナによって読み込まれる図面データを格納する位置として予約された位置を、プレースホルダオブジェクトによって表す。スキャナによって図面データが読み込まれると、この図面データは、対応するプレースホルダオブジェクトと差し替えられて、当該プレースホルダオブジェクトによって予約されていた位置に格納される。
【０００４】
特許文献１及び２には、また、電子文書処理システムによって電子メールの送受信を管理し、到着が見込まれる電子メール（例えば、送信済みの電子メールに対する返信の電子メール）を表すプレースホルダオブジェクトをシステムに登録しておき、その電子メールを実際に受信した際に、対応するプレースホルダオブジェクトを受信した電子メールによって充当する例が開示されている。
【０００５】
【特許文献１】特開２００４−７８９３３号公報
【特許文献２】特開２００４−８６８９３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ファイルの到着予定の位置にプレースホルダを登録しておき、後に、実体データを含むファイルを、登録しておいたプレースホルダの位置に格納する処理を行うシステムにおいて、状況に応じてこの格納処理の実行を制限することが望まれる場合がある。
【課題を解決するための手段】
【０００７】
請求項１に係る発明は、電子文書の格納が予定される記憶部の格納位置を取得し、前記電子文書の格納が予定される旨を表す情報であるプレースホルダを前記記憶部の前記格納位置に登録するプレースホルダ登録部と、前記プレースホルダの前記格納位置に前記電子文書を格納する処理の実行の可否を判定するための制約条件を取得し、取得した前記制約条件を前記プレースホルダに関連付けて制約条件記憶部に登録する制約条件登録部と、処理対象のプレースホルダと、前記処理対象のプレースホルダの前記格納位置に格納すべき電子文書と、を特定する格納要求を受けた場合に、前記処理対象のプレースホルダに関連付けて前記制約条件記憶部に登録された前記制約条件に従って、前記格納要求によって特定された電子文書を前記処理対象のプレースホルダの前記格納位置に格納する格納処理の実行の可否を判定する判定部と、を備えることを特徴とする電子文書処理装置である。
【０００８】
請求項２に係る発明は、請求項１に係る発明において、前記制約条件は、複数の電子文書にそれぞれ対応する複数の前記プレースホルダの間の関係に関する条件である。
【０００９】
請求項３に係る発明は、請求項２に係る発明において、前記制約条件は、複数の電子文書にそれぞれ対応する複数の前記プレースホルダのうち、１つの前記プレースホルダについて前記格納処理が実行された場合は、他の前記プレースホルダについて前記格納処理の実行を許可しない旨を表す条件である。
【００１０】
請求項４に係る発明は、請求項２に係る発明において、前記制約条件は、複数の電子文書にそれぞれ対応する複数の前記プレースホルダについて、前記格納処理を実行する順序を定める条件である。
【００１１】
請求項５に係る発明は、請求項１に係る発明において、前記プレースホルダ登録部は、さらに、前記格納位置に格納される予定の前記電子文書の属性を表す属性情報を取得して前記プレースホルダに関連付けて前記記憶部に登録し、前記制約条件は、前記属性情報に関する条件である。
【００１２】
請求項６に係る発明は、請求項１に係る発明において、前記制約条件は、前記格納要求が行われる日時又は前記格納要求を行う利用者に関する条件である。
【００１３】
請求項７に係る発明は、電子文書の格納が予定される記憶部の格納位置を取得し、前記電子文書の格納が予定される旨を表す情報であるプレースホルダを前記記憶部の前記格納位置に登録するステップと、前記プレースホルダの前記格納位置に前記電子文書を格納する処理の実行の可否を判定するための制約条件を取得し、取得した前記制約条件を前記プレースホルダに関連付けて制約条件記憶部に登録するステップと、処理対象のプレースホルダと、前記処理対象のプレースホルダの前記格納位置に格納すべき電子文書と、を特定する格納要求を受けた場合に、前記処理対象のプレースホルダに関連付けて前記制約条件記憶部に登録された前記制約条件に従って、前記格納要求によって特定された電子文書を前記処理対象のプレースホルダの前記格納位置に格納する格納処理の実行の可否を判定するステップと、をコンピュータに実行させることを特徴とするプログラムである。
【発明の効果】
【００１４】
請求項１又は７に係る発明によると、各プレースホルダについて、実体データを含む電子文書の格納処理を行う際の制約条件を設定することが可能となり、格納処理の実行を要求された場合に、この制約条件に従って格納処理の実行の可否を決定できる。
【００１５】
請求項２に係る発明によると、プレースホルダに対する電子文書の格納処理の制約条件として、複数の電子文書にそれぞれ対応する複数のプレースホルダの間の関係に関する条件を設定できる。
【００１６】
請求項３に係る発明によると、複数のプレースホルダのうちの１つのプレースホルダのみについて電子文書の格納処理を実行可能とすることができる。
【００１７】
請求項４に係る発明によると、複数のプレースホルダについて、電子文書の格納処理を実行する順序を設定することができる。
【００１８】
請求項５に係る発明によると、プレースホルダの位置に格納される予定の電子文書の属性に応じて、そのプレースホルダについての電子文書の格納処理の可否を決定できる。
【００１９】
請求項６に係る発明によると、電子文書の格納処理の実行が要求された日時又は格納処理の実行を要求した利用者に応じて、その格納処理の可否を決定できる。
【発明を実施するための最良の形態】
【００２０】
図１は、本発明の１つの実施形態の電子文書処理装置１０の構成例を示すブロック図である。電子文書処理装置１０は、ユーザの指示に従って、プレースホルダを作成して文書ＤＢ（データベース）２０に登録したり、指定されたプレースホルダを実体データファイルと差し替える充当処理を行ったりする。
【００２１】
文書ＤＢ２０は、電子文書ファイルを格納するデータベースであり、一般的なファイルシステムによって構成されるものであってよい。文書ＤＢ２０は、電子文書処理装置１０が備えていてもよいし、電子文書処理装置１０とネットワークを介して接続された他の情報処理装置が備えていてもよい。
【００２２】
図１を参照し、電子文書処理装置１０は、作成処理受付部１００、作成処理部１１０、充当処理受付部１２０、充当処理部１３０、及び充当条件ＤＢ１４０を備える。
【００２３】
作成処理受付部１００は、ユーザからのプレースホルダ作成指示を受け付けて、受け付けた指示に含まれる情報を作成処理部１１０に渡す。プレースホルダ作成指示は、例えば、作成するプレースホルダの名前、文書ＤＢ２０におけるプレースホルダの作成位置、及び充当条件を含む。充当条件は、そのプレースホルダについて充当処理を行う際の制約条件である。充当条件の内容の具体例については後述する。
【００２４】
作成処理部１１０は、作成処理受付部１００から取得した情報を用いて、プレースホルダの作成及び登録に関連する処理を行う。作成処理部１１０は、プレースホルダ登録部１１２及び充当条件登録部１１４を備える。
【００２５】
プレースホルダ登録部１１２は、文書ＤＢ２０にプレースホルダを登録する処理を行う。例えば、プレースホルダ登録部１１２は、作成処理受付部１００から取得した名前を有するプレースホルダを生成し、生成したプレースホルダを作成処理受付部１００から取得した文書ＤＢ２０における作成位置に登録する。
【００２６】
図２に、文書ＤＢ２０において、プレースホルダ登録部１１２によって登録されたプレースホルダを含むファイルの階層構造の例を示す。図２の例では、フォルダ３００ａは、フォルダ３００ｂを含み、フォルダ３００ｂには、破線で表されるプレースホルダ４０２ａ，４０２ｂ，４０２ｃと、実線で表される実体ファイル４０４と、が登録されている。実体ファイル４０４は、例えばテキストデータ及び画像データなどのデータを含む電子文書ファイルである。プレースホルダ４０２ａ，４０２ｂ，４０２ｃは、プレースホルダ登録部１１２によって生成・登録されたオブジェクトであって、後に実体ファイルとの差し替え処理（充当処理）が行われることが予定されている旨を表す仮のオブジェクトである。プレースホルダ４０２ａ，４０２ｂ，４０２ｃ及び実体ファイル４０４は、いずれも、一般的なファイルシステムにおけるファイルオブジェクトとして構成されていてよい。
【００２７】
図３に、ファイルオブジェクトの構成の例を示す。ファイルオブジェクト４００は、コンテント４１０及び属性情報４２０を備える。
【００２８】
コンテント４１０は、ファイルオブジェクト４００のデータ内容である。ファイルオブジェクト４００が画像やテキストなどの実体データを含む実体ファイルである場合、コンテント４１０は、その実体データである。例えば、ファイルオブジェクト４００がテキスト文書のファイルである場合、コンテント４１０は、そのテキストデータである。また例えば、ファイルオブジェクト４００がスキャナなどによって紙文書を読み込んだ画像データファイルである場合、コンテント４１０は、その読み込まれた画像データである。ファイルオブジェクト４００が実体データを含まないプレースホルダである場合、コンテント４１０は空である。
【００２９】
属性情報４２０は、ファイルオブジェクト４００の管理に用いられる情報である。属性情報４２０は、例えば、ファイルオブジェクトの名前、ファイルオブジェクトの種類（オブジェクトタイプ）、ファイルオブジェクトを作成したユーザのユーザ名、ファイルオブジェクトの作成日時、更新日時、ファイル形式、及びファイルオブジェクトが備えるデータ内容に関連する情報などを含む。属性情報４２０に含まれる「オブジェクトタイプ」は、例えば、ファイルオブジェクトがプレースホルダであるか実体ファイルであるか、を表す情報であってよい。また、ファイルオブジェクトがプレースホルダである場合、属性情報４２０は、そのプレースホルダについて設定された充当条件を含んでいてもよい。
【００３０】
再び図１を参照し、充当条件登録部１１４は、充当条件ＤＢ１４０に充当条件を登録する処理を行う。例えば、充当条件登録部１１４は、プレースホルダ登録部１１２が生成及び登録したプレースホルダの識別情報と関連付けて、作成処理受付部１００から取得した充当条件を充当条件ＤＢ１４０に登録する。
【００３１】
充当条件ＤＢ１４０は、プレースホルダ登録部１１２が生成及び登録した各プレースホルダの充当条件を格納するデータベースである。充当条件ＤＢ１４０には、各プレースホルダの識別情報と関連付けて、そのプレースホルダについて設定された充当条件が登録される。
【００３２】
図４に、充当条件ＤＢ１４０のデータ内容の一例を示す。図４に例示する表では、各プレースホルダのプレースホルダ識別子と、その充当条件と、が関連付けられて登録されている。
【００３３】
プレースホルダ識別子は、文書ＤＢ２０内で一意なプレースホルダの識別情報である。例えば、文書ＤＢ２０における当該プレースホルダの格納位置と、ユーザ入力による当該プレースホルダの名前と、を表す情報をプレースホルダ識別子とする。また例えば、プレースホルダの格納位置及び名前に関係なく、作成処理部１１０がプレースホルダを作成する際に文書ＤＢ２０内で一意な識別子を付与してもよい。
【００３４】
図４の表には、充当処理を実行できる日付を制限する充当条件の例を示す。図４の例では、プレースホルダ識別子Ａ，Ｂについて、それぞれ、充当条件の項目に、“（現在時刻＞充当処理日0:0:0） AND （現在時刻＜充当処理日23:59:59）”という論理式が登録されている。この論理式において、「現在時刻」は、充当処理の実行を指示された日時を表し、「充当処理日」は、充当処理の実行を許可する日付として予め設定された日付を表す。この論理式の値は、充当処理の実行を指示された時刻が「充当処理日」内の時刻であれば、TRUE（真）となり、充当処理の実行を指示された時刻が「充当処理日」内の時刻でなければ、FALSE（偽）となる。なお、各プレースホルダＡ，Ｂについて設定された「充当処理日」の実際の値は、充当条件ＤＢ１４０内の各プレースホルダＡ，Ｂのレコードに登録しておいてもよいし、あるいは、各プレースホルダＡ，Ｂのプレースホルダオブジェクトの属性情報として登録しておき、論理式を評価する際にこの属性情報から「充当処理日」の値を読み出して用いてもよい。
【００３５】
充当条件の他の例では、充当処理を実行できるユーザを制限する条件を充当条件として設定してよい。例えば、特定のユーザ名のユーザによって充当処理の実行が指示された場合にのみ、充当処理の実行を許可する条件とする。この場合、充当条件ＤＢ１４０において充当条件の項目に登録される論理式は、例えば、“ユーザ名＝（user1 OR user2 OR user3）”となる。この例の論理式は、充当処理を指示したユーザのユーザ名が、“user1”、“user2”、及び“user3”のいずれかに該当すればTRUEとなり、充当処理の実行が許可される。
【００３６】
さらに他の充当条件の例では、充当処理の対象として指定される実体ファイルの属性情報に含まれる情報に関する条件を用いてもよい。例えば、実体ファイルのファイル形式（を表す拡張子）、ファイル名、及び作成者などが特定の値を有する場合にのみ充当処理を許可するように設定する。
【００３７】
さらに他の例では、複数のプレースホルダ間の関係に関する条件を充当条件として設定してもよい。例えば、複数のプレースホルダのうちの１つについてだけ充当処理の実行を許可することが考えられる。例えば、企業などの業務で用いられる文書に関しては、業務内容などの事情によって、１つの形式の文書が作成される場合は他の形式の文書が作成されないことが予め定められている場合がある。例えば、契約内容によって異なる形式の契約書を用いる場合などである。このような文書について電子文書処理装置１０によって処理する場合に、同時に作成されることがないと予め定められている複数の形式の文書にそれぞれ対応する複数のプレースホルダについて、そのうちの１つに対して充当処理が実行された後は他のプレースホルダに対する充当処理の実行を許可しない充当条件を設定できる。
【００３８】
図５に、複数のプレースホルダのうちの１つについて排他的に充当処理が実行されるように充当条件が設定される場合の充当条件ＤＢ１４０のデータ内容の例を示す。図５の表は、３つのプレースホルダＡ，Ｂ，Ｃのうち、１つだけについて充当処理の実行を許可する場合の充当条件の例を示す。図５を参照すると、各プレースホルダＡ，Ｂ，Ｃに対応するレコードにおいて、充当条件の項目に、当該レコードのプレースホルダ以外の２つのプレースホルダが両方とも文書ＤＢ２０中に存在することを表す論理式が登録されている。図５の例において、３つのプレースホルダＡ，Ｂ，Ｃのうち、１つのプレースホルダについて充当処理が行われて実体ファイルと差し替えられると、当該プレースホルダは文書ＤＢ２０中に存在しなくなる。よって、その後、他のプレースホルダについて充当処理の実行を指示された場合、充当条件を満たさず、充当処理の実行は許可されない。
【００３９】
複数のプレースホルダ間の関係に関する充当条件の他の例では、複数のプレースホルダについて充当処理の実行順序を定める条件を用いてもよい。例えば、物品の購入に関する見積書及び稟議書にそれぞれ対応するプレースホルダが文書ＤＢ２０に登録されている場合に、見積書に対応するプレースホルダについて充当処理が実行された後でなければ、稟議書に対応するプレースホルダの充当処理の実行を許可しないように充当条件を設定する。
【００４０】
図６に、複数のプレースホルダの充当処理の実行順序を定める充当条件が設定される場合の、充当条件ＤＢ１４０のデータ内容の例を示す。図６の表は、３つのプレースホルダＡ，Ｂ，Ｃについて、Ａ，Ｂ，Ｃの順に充当処理を実行するように定める場合の充当条件の例を示す。図６を参照すると、各プレースホルダに対応するレコードの充当条件の項目には、プレースホルダＡについて「null（なし）」、プレースホルダＢについて「プレースホルダＡが存在しない」、及び、プレースホルダＣについて「プレースホルダＢが存在しない」と登録されている。この設定によると、プレースホルダＡについては、充当処理の実行は常に許可され、プレースホルダＢについては、プレースホルダＡについて充当処理が実行されてプレースホルダＡが文書ＤＢ２０から削除された後でなければ、充当処理の実行は許可されない。また、プレースホルダＣについては、プレースホルダＢに対する充当処理の実行及びプレースホルダＢの削除の後でなければ、充当処理の実行は許可されない。プレースホルダＢに対する充当処理の実行は、前述のように、プレースホルダＡに対する充当処理の実行の後でなければ許可されないため、図６の表の例によると、プレースホルダＡ，Ｂ，Ｃの順に充当処理が実行されることになる。
【００４１】
再び図１を参照し、充当処理受付部１２０は、ユーザからの充当処理指示を受け付けて、受け付けた指示に含まれる情報を充当処理部１３０に渡す。充当処理指示は、処理対象のプレースホルダと、そのプレースホルダの位置に格納すべき実体データを含むファイルと、を特定する情報を含む。
【００４２】
充当処理部１３０は、充当処理受付部１２０から取得した情報を用いて、充当処理に関連する処理を行う。充当処理部１３０は、充当条件判定部１３２を備える。充当条件判定部１３２は、充当条件ＤＢ１４０において処理対象のプレースホルダについて充当条件が設定されている場合に、その充当条件が満たされるか否かを判定する。処理対象のプレースホルダについて充当条件が設定されていない場合、又は、充当条件が設定されている場合であって当該充当条件が満たされると充当条件判定部１３２が判定した場合、充当処理部１３０は、処理対象のプレースホルダを実体ファイルに差し替える充当処理を行う。設定されている充当条件が満たされていないと充当条件判定部１３２が判定した場合、充当処理部１３０は、処理対象のプレースホルダについて充当処理を行わない。
【００４３】
以下、電子文書処理装置１０において行われる処理の手順の例について詳細に説明する。
【００４４】
図７は、作成処理受付部１００及び作成処理部１１０における処理の手順の例を示すフローチャートである。
【００４５】
図７を参照し、ステップＳ１０で、作成処理受付部１００は、ユーザからのプレースホルダ作成指示を受け付ける。例えば、作成処理受付部１００は、ユーザからのプレースホルダの作成要求に応じて、プレースホルダの作成に用いる情報の入力をユーザに対して促す表示画面を表示装置（図示しない）に表示させ、ユーザの入力を受け付ける。作成処理受付部１００は、例えば、文書ＤＢ２０においてプレースホルダを登録する位置、プレースホルダの名前、及び充当条件についての入力を受け付ける。
【００４６】
図８に、ステップＳ１０で作成処理受付部１００が表示させる画面の例を示す。図８の例では、「作成場所」の項目に入力された情報はプレースホルダの作成位置として、「名前」の項目に入力された情報はプレースホルダの名前として受け付けられる。図８に例示する表示画面では、「充当条件」の項目において、充当処理の実行日、充当処理の実行を指示するユーザ、又は充当処理の対象となる実体ファイルの属性情報に関する条件の設定を可能とする。図８の例では、ユーザは、「実行日」、「実行ユーザ」、「ファイル形式」、及び「作成者」の各項目の中から充当条件を選択できる。ユーザが「実行日」を選択し、その項目に日付を入力すると、図４の例の充当条件のように、その日付においてのみ充当処理の実行を許可することを表す条件が充当条件として設定される。ユーザが「実行ユーザ」を選択し、その項目に特定のユーザのユーザ名を入力すると、入力されたユーザ名のユーザに対してのみ充当処理の実行を許可することを表す条件が充当条件として設定される。「ファイル形式」及び「作成者」の各項目は、実体ファイルの属性情報に含まれる情報に関する条件の例である。ユーザが「ファイル形式」を選択し、その項目に特定のファイル形式を表す情報（例えば、拡張子）を入力すると、そのファイル形式を有するファイルのみ充当対象の実体ファイルとして受け付ける条件が充当条件として設定される。「作成者」が選択されてその項目に特定のユーザ名が入力されると、そのユーザ名のユーザによって作成されたファイルのみ充当対象の実体ファイルとして受け付ける条件が充当条件として設定される。
【００４７】
図８の例では、「実行日」、「実行ユーザ」、「ファイル形式」、及び「作成者」のうちの複数をユーザが選択すると、各項目の条件をＡＮＤ条件で表す論理式として充当条件が設定される。また、必要に応じて、図８に例示する充当条件の各項目の一部だけを表示させて設定可能としてよいし、図８に例示する項目以外の項目（例えば、属性情報に含まれる他の情報項目）を表示させて、その項目に関する充当条件を設定可能としてもよい。
【００４８】
以下では、本実施形態における処理の具体例として、ステップＳ１０で、作成処理受付部１００が図８に例示する画面を表示させ、ユーザが「充当条件」の各項目のうち「実行日」の項目だけを選択して入力する場合について説明する。
【００４９】
再び図７を参照し、ステップＳ１０でプレースホルダ作成指示を受け付けると、作成処理受付部１００は、受け付けた情報を作成処理部１１０に渡し、処理はステップＳ１２に進む。
【００５０】
ステップＳ１２で、作成処理部１１０のプレースホルダ登録部１１２は、プレースホルダオブジェクトを作成し、文書ＤＢ２０に登録する。まず、プレースホルダ登録部１１２は、図３に例示するファイルオブジェクトを生成し、ファイルオブジェクトの属性情報において、「オブジェクトタイプ」を「プレースホルダ」に設定する。そして、作成処理受付部１００から取得したプレースホルダの名前をファイルオブジェクトの属性情報の「名前」として設定する。また、プレースホルダ登録部１１２は、作成処理受付部１００から充当条件に関する情報を取得した場合、この情報をファイルオブジェクトの属性情報に登録する。充当処理の実行日についての充当条件が設定される本例では、作成処理部１１０は、図８の表示画面において「実行日」の項目に入力された値を作成処理受付部１００から取得し、取得した値をファイルオブジェクトの属性情報において「充当処理日」として登録する。なお、例えば、図８の表示画面において充当条件の各項目のいずれも選択されなかった場合など、充当条件が設定されなかった場合、作成処理部１１０は、その旨を表す情報を作成処理受付部１００から取得する。この場合、作成処理部１１０は、充当条件に関する情報をファイルオブジェクトの属性情報に登録することはない。以上のように作成されたファイルオブジェクトがプレースホルダオブジェクトとなる。
【００５１】
さらに、プレースホルダ登録部１１２は、作成したプレースホルダオブジェクトに対して文書ＤＢ２０中で一意なプレースホルダ識別子を付与し、付与した識別子をプレースホルダオブジェクトの属性情報に登録する。なお、文書ＤＢ２０におけるプレースホルダの格納位置と、ユーザ入力による当該プレースホルダの名前と、を表す情報をプレースホルダ識別子とする場合は、プレースホルダ識別子をプレースホルダオブジェクトの属性情報に登録しなくてもよい。
【００５２】
プレースホルダオブジェクトを作成すると、プレースホルダ登録部１１２は、作成したプレースホルダオブジェクトを文書ＤＢ２０に登録する。このとき、プレースホルダ登録部１１２は、図８の表示画面において「作成場所」の項目に入力された値を作成処理受付部１００から取得し、取得した値が表す文書ＤＢ２０上の格納位置に、作成したプレースホルダオブジェクトを登録する。
【００５３】
プレースホルダオブジェクトの作成・登録処理（ステップＳ１２）が終了すると、ステップＳ１４で、充当条件の設定の有無が判定される。作成処理部１１０が作成処理受付部１００から充当条件に関する情報を取得していた場合は、ステップＳ１４の判定の結果ＹＥＳに進んでステップＳ１６の処理が行われる。
【００５４】
ステップＳ１６で、作成処理部１１０の充当条件登録部１１４は、設定された充当条件を充当条件ＤＢ１４０に登録する。充当条件登録部１１４は、プレースホルダ登録部１１２において作成・登録されたプレースホルダのプレースホルダ識別子に関連付けて、設定された充当条件を充当条件ＤＢ１４０に登録する。充当処理の実行日に関する充当条件が設定される本例では、プレースホルダ登録部１１２は、プレースホルダのプレースホルダ識別子と関連付けて、図４に例示する表における充当条件の項目の論理式を充当条件ＤＢ１４０に登録する。
【００５５】
充当条件が設定されなかった旨を表す情報を作成処理受付部１００から作成処理部１１０が取得していた場合は、ステップＳ１４の判定の結果ＮＯに進み、ステップＳ１８で、充当条件ＤＢ１４０において、プレースホルダ登録部１１２において作成・登録されたプレースホルダに対応するレコードを生成し、当該レコードの充当条件の項目の値を「null（なし）」として登録する。
【００５６】
ステップＳ１６又はステップＳ１８の後、処理は終了する。なお、ステップＳ１８の処理は、省略してもよい。ステップＳ１８の処理を省略すると、充当条件ＤＢ１４０において、充当条件が設定されていないプレースホルダに対応するレコードは登録されない。
【００５７】
図７に例示する処理によると、文書ＤＢ２０にはプレースホルダが登録され、充当条件ＤＢ１４０には各プレースホルダの充当条件が登録される。図７に例示する処理が複数回行われることで、複数のプレースホルダが文書ＤＢ２０に登録され、充当条件ＤＢ１４０には、これら複数のプレースホルダにそれぞれ対応する複数のレコードが登録される。
【００５８】
電子文書処理装置１０は、例えば、図２に示す図のようなファイルの階層構造を表す図を、図示しない表示装置に表示させて、文書ＤＢ２０におけるプレースホルダの登録状態をユーザに提示してもよい。ユーザは、例えば、表示装置に表示された図２のような階層構造を参照し、特定のプレースホルダを指定して、当該プレースホルダの位置に格納される予定の実体ファイルのデータ内容などに応じて、当該プレースホルダの属性情報を編集することができる。例えば、プレースホルダの位置に格納予定の実体ファイルが、企業などの業務において用いられる文書（例えば、見積書、稟議書、契約書など）の電子ファイルである場合、そのプレースホルダの属性情報を編集して、その文書の種類（見積書、稟議書、契約書など）や、その文書に対する承認を与えるべき承認者の名前などを登録できる。プレースホルダの位置に格納予定の実体ファイルの内容に関連する上述のような属性情報は、作成処理部１１０によるプレースホルダ作成時（図７のステップＳ１２）に設定可能としてもよい。
【００５９】
また、ユーザは、表示装置に表示された図２のような階層構造を参照し、階層構造におけるプレースホルダと、そのプレースホルダの位置に格納すべき実体データを含む実体ファイルと、を指定して充当処理の実行を指示する充当指示を出すことができる。例えば、表示装置において、図２に例示する階層構造とともに、実体ファイルを表すアイコン（図示しない）が表示されている場合に、ユーザは、マウスを用いて、所謂「ドラッグ・アンド・ドロップ」と呼ばれる処理を行うことで、充当処理の対象のプレースホルダ及び実体ファイルを指定できる。
【００６０】
ユーザによって上述のような充当指示が行われると、充当処理受付部１２０は、この指示を受け付けて充当処理部１３０に渡し、充当処理部１３０は、この指示に従った充当処理を開始する。
【００６１】
図９は、充当処理部１３０が行う処理の手順の例を示すフローチャートである。図９に例示する処理は、充当処理部１３０が充当処理受付部１２０からユーザによる充当指示を受け取った場合に開始される。以下では、図４に例示する内容のデータが充当条件ＤＢ１４０に登録されている場合であって、プレースホルダ識別子Ａのプレースホルダを処理対象として充当指示が行なわれた場合の処理の例について説明する。
【００６２】
まずステップＳ２０で、充当処理部１３０は、充当処理受付部１２０から受け取った充当指示を参照し、処理対象のプレースホルダ及び実体ファイルと、を特定する情報を取得する。本例では、充当処理部１３０は、処理対象のプレースホルダを特定する情報としてプレースホルダ識別子Ａを取得し、処理対象の実体ファイルを特定する情報として当該実体ファイルの文書ＤＢ２０における格納位置を取得する。
【００６３】
次に、ステップＳ２２で、充当処理部１３０は、充当条件ＤＢ１４０を参照し、処理対象のプレースホルダのプレースホルダ識別子に関連付けて登録された充当条件を取得する。つまり、充当条件ＤＢ１４０において、処理対象のプレースホルダのプレースホルダ識別子を含むレコードを取得する。本例では、図４に例示する表におけるプレースホルダ識別子Ａのレコードが取得される。
【００６４】
ステップＳ２４で、充当処理部１３０は、処理対象のプレースホルダについて、充当条件が設定されているか否かを判定する。例えば、充当処理部１３０は、ステップＳ２２で取得されたレコードの「充当条件」の項目の値として充当条件を表す論理式が設定されていれば、充当条件が設定されていると判定し、「充当条件」の項目の値として「null」が設定されていれば、充当条件が設定されていないと判定する。あるいは、例えば、充当条件登録部１１４による処理において、充当条件が設定されていないプレースホルダに対応するレコードを充当条件ＤＢ１４０に登録しない場合（図７のフローチャートのステップＳ１８が省略される場合）、処理対象のプレースホルダのプレースホルダ識別子を含むレコードをステップＳ２２で取得できた場合に、充当条件が設定されていると判定し、処理対象のプレースホルダのプレースホルダ識別子を含むレコードをステップＳ２２で取得できなかった場合に、充当条件が設定されていないと判定する。
【００６５】
ステップＳ２４で充当条件が設定されていると判定されると、処理はステップＳ２６に進み、充当条件判定部１３２は、処理対象のプレースホルダについて設定されている充当条件が満たされるか否かを判定する。
【００６６】
本例では、図４を参照し、処理対象のプレースホルダの識別子Ａに関連付けて充当条件ＤＢ１４０に登録された充当条件“（現在時刻＞充当処理日0:0:0） AND （現在時刻＜充当処理日23:59:59）”が満たされるか否かを判定する。充当条件判定部１３２は、まず、充当条件を表す論理式を解釈し、条件判定のために現在時刻及び充当処理日の取得が必要であることを判断する。そして、図示しない時計装置から現在時刻を取得し、文書ＤＢ２０を参照して、プレースホルダ識別子Ａに対応するプレースホルダの属性情報から充当処理日の値を取得する。次に、充当条件判定部１３２は、取得した現在時刻及び充当処理日の値を充当条件の論理式に代入し、その真偽値を得る。
【００６７】
ステップＳ２６における判定で充当条件が満たされるという結果が得られた場合（充当条件を表す論理式の値がTRUEであった場合）、ステップＳ２８の判定の結果ＹＥＳに進み、充当処理（ステップＳ３０）が行われる。ステップＳ２６における判定で充当条件が満たされないという結果が得られた場合（充当条件を表す論理式の値がFALSEであった場合）、ステップＳ２８の判定の結果ＮＯに進み、充当処理（ステップＳ３０）を行うことなく処理は終了する。
【００６８】
ステップＳ３０では、処理対象のプレースホルダを実体ファイルと差し替えて、文書ＤＢ２０における処理対象のプレースホルダの格納位置に処理対象の実体ファイルを格納する充当処理が行われる。図１０に、この充当処理の手順の例を示す。図９のステップＳ３０の処理が開始されると、図１０に例示する手順の処理が開始される。
【００６９】
図１０を参照し、ステップＳ３０２で、充当処理部１３０は、処理対象のプレースホルダを文書ＤＢ２０から削除する。本例では、プレースホルダ識別子Ａに対応するプレースホルダが文書ＤＢ２０から削除される。処理対象のプレースホルダの属性情報において、格納予定の実体ファイルのデータ内容に関連する情報が含まれている場合、充当処理部１３０は、この関連情報を図示しない一時記憶装置に記憶させた上で、処理対象のプレースホルダを削除する。
【００７０】
次に、ステップＳ３０４で、充当処理部１３０は、文書ＤＢ２０において処理対象のプレースホルダが格納されていた位置に、処理対象の実体ファイルを格納する。ステップＳ３０２で一時記憶装置に上述の関連情報が記憶されている場合、充当処理部１３０は、この関連情報を含む属性情報を、処理対象の実体ファイルの属性情報とする。こうすることで、処理対象のプレースホルダの属性情報に対してユーザが行なった編集は、充当処理後の実体ファイルに反映される。
【００７１】
ステップＳ３０６で、充当処理部１３０は、充当条件ＤＢ１４０から、処理対象のプレースホルダに対応するレコードを削除する。本例では、図４の表から、プレースホルダ識別子Ａのレコードを削除する。ステップＳ３０６が終了すると、充当処理は終了する。
【００７２】
以上、電子文書処理装置１０における処理の例について、充当処理の実行日に関する充当条件が設定される場合を充当条件の具体例として説明した。以下では、複数のプレースホルダ間の関係に関する充当条件（図５及び図６参照）が設定される場合の処理の具体例を説明する。本例においても、作成処理受付部１００及び作成処理部１１０における処理の手順は、図７に例示するとおりであり、充当処理部１３０における処理の手順は、図９及び図１０に例示するとおりである。本例の処理において、充当処理の実行日に関する充当条件が設定される場合の上述の例と異なる主な点は、作成処理受付部１００によるプレースホルダ作成指示の受付処理（図７のステップＳ１０）、及び充当条件判定部１３２における充当条件の判定処理（図９のステップＳ２６）である。以下、本例の処理について、プレースホルダ作成指示の受付処理及び充当条件の判定処理を中心に説明する。
【００７３】
図１１に、複数のプレースホルダ間の関係に関する充当条件が設定される本例の処理において、図７のステップＳ１０で作成処理受付部１００が表示させる画面の例を示す。図１１の例では、３つのプレースホルダの作成を受け付けるとともに、これらのプレースホルダ間の関係に関する充当条件の設定を受け付ける。当然ながら、作成を受け付けるプレースホルダの数は、必要に応じて増減させてよい。図１１を参照し、「作成場所」の項目に入力される値は、図８の例と同様、文書ＤＢ２０におけるプレースホルダの作成位置とされる。「名前１」、「名前２」、及び「名前３」の各項目に入力される値は、３つのプレースホルダそれぞれの名前とされる。図１１の例では、ユーザが「排他処理」の項目にチェックを入れると、作成される３つのプレースホルダに関し、３つのうちの１つについてだけ充当処理の実行を許可する旨を表す条件が充当条件として設定される。つまり、３つのプレースホルダのうちの１つについて排他的に充当処理が実行されるように充当条件が設定される。図１１の例の表示画面によりユーザの入力を受け付けると、図７の例の手順に従った処理の結果、例えば、図５に例示する表の内容のデータが充当条件ＤＢ１４０に登録され、文書ＤＢ２０には、３つのプレースホルダＡ，Ｂ，Ｃが登録される。
【００７４】
次に、文書ＤＢ２０にプレースホルダＡ，Ｂ，Ｃが登録され、充当条件ＤＢ１４０に図５の例のデータが登録されている場合の充当処理部１３０による処理（図９及び図１０）の具体例について説明する。本例では、まず、充当処理受付部１２０において、処理対象のプレースホルダとしてプレースホルダ識別子Ｂに対応するプレースホルダを指定する充当指示が受け付けられたとする。
【００７５】
図９を参照し、ステップＳ２０では、処理対象のプレースホルダを特定する情報としてプレースホルダ識別子Ｂが取得され、ステップＳ２２で、図５の表のプレースホルダ識別子Ｂに対応するレコードが取得される。次に、ステップＳ２４の判定の結果ＹＥＳに進み、充当条件判定部１３２は、ステップＳ２２で取得されたレコードの充当条件“プレースホルダＡが存在する AND プレースホルダＣが存在する”が満たされるか否かを判定する。充当条件判定部１３２は、文書ＤＢ２０中を検索し、プレースホルダＡ及びＣが存在するか否かを判定する。ここでは、プレースホルダＡ及びＣについては、未だ充当処理が行われていないので、プレースホルダＡ及びＢは文書ＤＢ２０中に存在する。よって、ステップＳ２８の判定の結果ＹＥＳに進み、プレースホルダＢを処理対象として充当処理（ステップＳ３０）が行なわれる。プレースホルダＢについての充当処理の終了後、例えば、プレースホルダＡを処理対象とする充当指示を充当処理受付部１２０が受け付けたとすると、充当条件の判定処理（図９のステップＳ２６）において、プレースホルダＡについての充当条件“プレースホルダＢが存在する AND プレースホルダＣが存在する”（図５参照）を満たすか否かが判定される。この場合、すでにプレースホルダＢについて充当処理が実行されてプレースホルダＢは実体ファイルと差し替えられた後なので、文書ＤＢ２０中にプレースホルダＢは存在しない。よって、プレースホルダＡについての充当条件は満たされず、プレースホルダＡについての充当処理は実行されない。
【００７６】
以上、複数のプレースホルダのうちの１つだけについて充当処理の実行を許可する充当条件を設定する場合の処理の具体例について説明した。以下、複数のプレースホルダについて充当処理の実行の順序を定める充当条件を設定する場合の処理の具体例について説明する。本例では、例えば、図７のステップＳ１０で、図１１の例の表示画面における「排他処理」の項目の代わりに、「順序」の項目を設けた表示画面を表示装置に表示させる。ユーザがこの「順序」の項目にチェックを入れた場合に、「名前１」、「名前２」、及び「名前３」のプレースホルダの順に充当処理が実行されるようにする充当条件を設定する。この場合、図７の例の手順に従った処理の結果、充当条件ＤＢ１４０には、例えば、図６に例示する内容のデータが登録され、文書ＤＢ２０には、３つのプレースホルダＡ，Ｂ，Ｃが登録される。
【００７７】
文書ＤＢ２０にプレースホルダＡ，Ｂ，Ｃが登録され、充当条件ＤＢ１４０に図６の例のデータが登録されている場合に、例えば、プレースホルダＢを処理対象とする充当指示を充当処理受付部１２０が受け付けられて、図９の例の処理が行われると、充当条件判定処理（ステップＳ２６）において、プレースホルダＢの充当条件“プレースホルダＡが存在しない”（図６参照）が満たされるか否かが判定される。ここで、文書ＤＢ２０中にはプレースホルダＡが存在することから、この条件は満たされないためステップＳ２８でＮＯに進み、プレースホルダＢについての充当処理は実行されない。次に、プレースホルダＡを処理対象とする充当指示が受け付けられると、プレースホルダＡについては充当条件が設定されていない（図６参照）ので、プレースホルダＡについて充当処理（図９のステップＳ３０、図１０）が実行され、プレースホルダＡは文書ＤＢ２０から削除されて実体ファイルと差し替えられる。その後、再度、プレースホルダＢを処理対象とする充当指示が受け付けられると、今回は、プレースホルダＡが文書ＤＢ２０中に存在しないため、プレースホルダＢについての上述の充当条件は満たされ、プレースホルダＢについて充当処理が実行される。さらにその後、プレースホルダＣを処理対象とする充当指示が受け付けられた場合、プレースホルダＣについての充当条件“プレースホルダＢが存在しない”（図６参照）は満たされ、プレースホルダＣに対する充当処理が実行される。
【００７８】
なお、以上で例示した各種の充当条件のうちいずれを設定するか、ユーザによる選択を可能としてもよい。例えば、作成処理受付部１００は、プレースホルダの作成要求を受けた場合に、まず、設定可能な充当条件の種類を表示装置に表示させてユーザに提示し、ユーザによって選択された種類の充当条件に対応する表示画面（例えば、図８又は図１１）を表示させて、その条件に関する設定を受け付ける。
【００７９】
以上で説明した実施形態の処理では、プレースホルダの新規作成を行うと同時に、その新規作成されるプレースホルダについての充当条件が設定される。他の実施形態の処理では、文書ＤＢ２０に登録済みのプレースホルダに対する充当条件の設定を可能としてもよい。例えば、新規作成時に充当条件が設定されずに文書ＤＢ２０に登録されたプレースホルダについて充当条件を設定したり、プレースホルダの新規作成時に設定された充当条件を削除又は変更したりする処理を可能としてもよい。この場合、電子文書処理装置１０は、充当条件の設定対象となるプレースホルダの指定と、設定する充当条件の内容と、を含む指示を受け付けて、この指示に従って、充当条件ＤＢ１４０において指定されたプレースホルダに対応するレコードの充当条件の内容を書き換える。例えば、充当条件の削除を指示された場合は、指定されたプレースホルダに対応する充当条件ＤＢ１４０のレコードの充当条件の項目の値を「null」に設定するか、あるいは、当該レコードを充当条件ＤＢ１４０から削除する。また例えば、充当処理日を制限する充当条件の設定を指示された場合、指定されたプレースホルダに対応する充当条件ＤＢ１４０のレコードにおいて、図４の例の論理式を充当条件として登録する。また例えば、複数のプレースホルダを指定して、これらの間の関係に関する充当条件（例えば、上述の排他的な充当処理又は充当処理の実行順序）を設定するよう指定された場合、充当条件ＤＢ１４０において、指定された複数のプレースホルダにそれぞれ対応する複数のレコードの充当条件の項目に、指定された充当条件に適した論理式を登録する。
【００８０】
以上で説明した実施形態の電子文書処理装置１０は、典型的には、汎用のコンピュータにて上述の電子文書処理装置の各部の機能又は処理内容を記述したプログラムを実行することにより実現される。コンピュータは、例えば、ハードウエアとして、図１２に示すように、ＣＰＵ（中央演算装置）６０、メモリ（一次記憶装置）６２、各種Ｉ／Ｏ（入出力）インタフェース６４などがバス６６を介して接続された回路構成を有する。また、そのバス６６に対し、例えばＩ／Ｏインタフェース６４経由で、キーボードやマウスなどの入力装置６８、及び、ＣＲＴ（Cathode Ray Tube）や液晶ディスプレイなどの表示装置７０が接続される。また、バス６６には、Ｉ／Ｏインタフェース６４を介して、ＨＤＤ（ハードディスクドライブ）７２や、ＣＤ、ＤＶＤ、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体を読み取るためのディスクドライブ７４が接続される。このようなドライブ７２，７４は、メモリに対する外部記憶装置として機能する。実施形態の処理内容が記述されたプログラムがＣＤやＤＶＤなどの記録媒体を経由して、又はネットワーク経由で、ＨＤＤ７２などの固定記憶装置に保存され、コンピュータにインストールされる。固定記憶装置に記憶されたプログラムがメモリ６２に読み出されＣＰＵ６０により実行されることにより、上述の実施形態の処理が実現される。
【図面の簡単な説明】
【００８１】
【図１】本発明の１つの実施形態の電子文書処理装置の構成例を示すブロック図である。
【図２】ファイルの階層構造の例を示す図である。
【図３】ファイルオブジェクトの構成の例を示す図である。
【図４】充当条件ＤＢのデータ内容の例を示す図である。
【図５】充当条件ＤＢのデータ内容の他の例を示す図である。
【図６】充当条件ＤＢのデータ内容の他の例を示す図である。
【図７】作成処理受付部及び作成処理部による処理の手順の例を示すフローチャートである。
【図８】作成処理受付部が表示装置に表示させる画面の例を示す図である。
【図９】充当処理部による処理の手順の例を示すフローチャートである。
【図１０】充当処理部による処理の部分的な手順の例を示すフローチャートである。
【図１１】作成処理受付部が表示装置に表示させる画面の他の例を示す図である。
【図１２】コンピュータのハードウエア構成の一例を示す図である。
【符号の説明】
【００８２】
１０  電子文書処理装置、６２  メモリ、６４  インタフェース、６６  バス、６８  入力装置、７０  表示装置、７２  ＨＤＤ、７４  ディスクドライブ、１００  作成処理受付部、１１０  作成処理部、１１２  プレースホルダ登録部、１１４  充当条件登録部、１２０  充当処理受付部、１３０  充当処理部、１３２  充当条件判定部、３００ａ，３００ｂ  フォルダ、４００  ファイルオブジェクト、４０２ａ，４０２ｂ，４０２ｃ  プレースホルダ、４０４  実体ファイル、４１０  コンテント、４２０  属性情報。
【図１】
2009169702.tif 000003
【図２】
2009169702.tif 000004
【図３】
2009169702.tif 000005
【図４】
2009169702.tif 000006
【図５】
2009169702.tif 000007
【図６】
2009169702.tif 000008
【図７】
2009169702.tif 000009
【図８】
2009169702.tif 000010
【図９】
2009169702.tif 000011
【図１０】
2009169702.tif 000012
【図１１】
2009169702.tif 000013
【図１２】
2009169702.tif 000014