(57)【要約】【課題】外部機器からの指令により記憶装置の木構造の情報を該外部機器に出力する情報管理装置において、記憶装置の木構造の情報を含む木構造ファイルの分割を適正に実行することができる【解決手段】ＨＤＤ５４の木構造の情報をＸＭＬファイル７０として受信すると、管理サーバ６０のＣＰＵ６１は、ＸＭＬファイル７０を解析し、フォルダ数及び階層数に基づいてＸＭＬファイル７０を分割処理するか否かを判定し、分割処理すると判定されたときには、各ＸＭＬファイルを解析する時間が、外部機器への応答において許容されうる処理時間を超えない範囲で、親フォルダを共通とする同一階層のフォルダの情報が記述されたＸＭＬファイルを各階層ごとに作成することによりＸＭＬファイル７０の分割処理を実行する。このように、管理サーバ６０は、スキャナ装置２０でのファイル保存の際に受信するフォルダ情報の問合せに備えることができる。【選択図】図１
2007193660.tif 000002
【特許請求の範囲】
【請求項１】
記憶装置の階層状の木構造の情報を管理する情報管理装置であって、
前記記憶装置の木構造の情報を所定のマークアップ言語で記述した木構造ファイルを記憶可能な情報記憶手段と、
前記記憶装置の木構造の状態及び前記情報管理装置の処理能力のうち少なくとも一つに基づいて前記木構造ファイルを分割する処理を実行するか否かを判定する分割判定手段と、
前記分割判定手段によって前記木構造ファイルを分割する処理を実行しないと判定されたときには該木構造ファイルがそのまま前記情報記憶手段に保存されるよう前記情報記憶手段を制御し、前記分割判定手段によって前記木構造ファイルを分割する処理を実行すると判定されたときには該木構造の一部が含まれる所定の分割状態となるよう該木構造ファイルの分割処理を実行し該分割された木構造ファイルのそれぞれが前記情報記憶手段に保存されるよう前記情報記憶手段を制御する制御手段と、
を備えた情報管理装置。
【請求項２】
前記制御手段は、前記マークアップ言語としてのＸＭＬ又はＸＨＴＭＬで記述された前記木構造ファイルを前記情報記憶手段に保存する、
請求項１に記載の情報管理装置。
【請求項３】
前記情報記憶手段は、ファイルを格納可能な１以上のフォルダの情報を含む前記木構造ファイルを記憶し、
前記分割判定手段は、前記木構造ファイルを解析し該解析した結果、前記木構造の状態として前記木構造の情報に含まれているフォルダ数が所定の処理遅延数以上あるときに前記木構造ファイルを分割する処理を実行すると判定する、
請求項１又は２に記載の情報管理装置。
【請求項４】
前記制御手段は、所定の分割状態となるよう前記木構造ファイルの分割処理を実行するに際して、前記処理遅延数未満のフォルダが前記分割された木構造ファイルに含まれるよう前記木構造ファイルの分割処理を実行する、
請求項３に記載の情報管理装置。
【請求項５】
前記分割判定手段は、前記木構造ファイルを解析し該解析した結果、前記記憶装置の木構造の状態として前記木構造ファイルに含まれている木構造の階層数が所定の処理遅延階層数以上あるときに前記木構造ファイルを分割する処理を実行すると判定する、
請求項１〜４のいずれかに記載の情報管理装置。
【請求項６】
前記制御手段は、所定の分割状態となるよう前記木構造ファイルの分割処理を実行するに際して、上位の階層が含まれる分割後の木構造ファイルと該上位の階層に対応付けられた下位の階層が含まれる分割後の木構造ファイルとに前記木構造ファイルが分割されるよう前記木構造ファイルの分割処理を実行する、
請求項５に記載の情報管理装置。
【請求項７】
前記分割判定手段は、前記情報管理装置の処理能力が所定の処理能力を下回るときに前記木構造ファイルを分割するものと判定する、
請求項１〜６のいずれかに記載の情報管理装置。
【請求項８】
請求項１〜７のいずれかに記載の情報管理装置であって、
前記記憶装置の木構造の情報を取得する情報取得手段、を備え、
前記制御手段は、前記情報取得手段によって取得された前記記憶装置の木構造の情報に基づいて前記木構造ファイルを前記情報記憶手段に記憶するよう前記情報記憶手段を制御する、
情報管理装置。
【請求項９】
請求項１〜８のいずれかに記載の情報管理装置であって、
記憶装置の木構造の情報を外部機器へ出力する指令を該外部機器から取得する指令取得手段と、
情報を外部機器に出力可能な出力手段と、を備え、
前記制御手段は、前記木構造ファイルの分割処理を実行し該分割された木構造ファイルのそれぞれが前記情報記憶手段に保存されるよう前記情報記憶手段を制御したあと前記指令取得手段が前記出力指令を取得したときには、前記分割された木構造ファイルのうち前記出力指令に対応する木構造の情報を含む前記木構造ファイルを前記情報記憶手段から読み出し該読み出した木構造ファイルを解析し、該解析結果を前記記憶装置の木構造の情報として前記外部機器へ出力するよう前記出力手段を制御する、
情報管理装置。
【請求項１０】
前記制御手段は、前記木構造ファイルがそのまま前記情報記憶手段に保存されるよう前記情報記憶手段を制御したあと前記指令取得手段が前記出力指令を取得したときには、前記情報記憶手段に保存された前記木構造ファイルを読み出し該読み出した木構造ファイルを解析し、該解析結果を前記記憶装置の木構造の情報として前記外部機器へ出力するよう前記出力手段を制御する、
請求項９に記載の情報管理装置。
【請求項１１】
前記制御手段は、前記指令取得手段から前記出力指令を受けていないときに前記分割判定手段によって前記木構造ファイルを分割する処理を実行すると判定されたときには、前記木構造の一部が含まれる所定の分割状態となるよう該木構造ファイルの分割処理を実行する、
請求項９又は１０に記載の情報管理装置。
【請求項１２】
前記外部機器は、スキャナ、プリンタ、デジタルカメラ及び携帯電話のうちの少なくとも１つである、
請求項９〜１１のいずれかに記載の情報管理装置。
【請求項１３】
記憶装置の階層状の木構造の情報を、前記記憶装置の木構造の情報を所定のマークアップ言語で記述した木構造ファイルを記憶可能な情報記憶手段を利用して管理するコンピュータ・ソフトウェアによる情報管理方法であって、
（ａ）前記記憶装置の木構造の状態及び前記情報管理装置の処理能力のうち少なくとも一つに基づいて前記木構造ファイルを分割する処理を実行するか否かを判定するステップと、
（ｂ）前記ステップ（ａ）で前記木構造ファイルを分割する処理を実行しないと判定されたときには該木構造ファイルがそのまま前記情報記憶手段に保存されるよう前記情報記憶手段を制御し、前記ステップ（ａ）で前記木構造ファイルを分割する処理を実行すると判定されたときには該木構造の一部が含まれる所定の分割状態となるよう該木構造ファイルの分割処理を実行し該分割された木構造ファイルのそれぞれが前記情報記憶手段に保存されるよう前記情報記憶手段を制御するステップと、
を含む情報管理方法。
【請求項１４】
請求項１３に記載の情報管理方法の各ステップを１又は複数のコンピュータに実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報管理装置、情報管理方法及びそのプログラムに関する。
【背景技術】
【０００２】
従来、情報管理装置としては、コンピュータのツリー構造をＸＭＬ形式で記述し、他のコンピュータに送信するものが提案されている（例えば、特許文献１参照）。この特許文献１に記載された情報管理装置は、送信元のコンピュータのツリー構造を記述したＸＭＬファイルを複数の分割ファイルに分割すると共に分割が完了したものから送信先のコンピュータへ送信し、送信先のコンピュータでは、送信元のコンピュータの分割処理及び送信処理と並行して受信した分割ファイルを解析することにより、送信元のコンピュータの全体のツリー構造を把握する。このように、送信先のコンピュータにおいて、分割しないＸＭＬファイルのすべてを受信したのちにこのファイルを解析して送信元のコンピュータの全体のツリー構造を把握するものに比べて処理時間の短縮が図られるとしている。
【特許文献１】特開２００４−２８７９７８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、この特許文献１に記載された情報管理装置では、処理時間の短縮のために、ツリー構造を記述したＸＭＬファイルを分割する必要があるか否かを判断する点については考慮されていなかった。また、分割したファイル自体をあとから個別に利用することは考慮されておらず、送信先のコンピュータにおいてＸＭＬファイルのすべての情報を解析してツリー構造のすべてを把握する、つまり、ユーザが利用しない部分のツリー構造の情報まで解析して把握するため、依然として不必要な処理を行っているという問題があった。
【０００４】
本発明は、このような課題に鑑みなされたものであり、記憶装置の木構造の情報を含む木構造ファイルの分割を適正に実行することができる情報管理装置、情報管理方法及びそのプログラムを提供することを目的の一つとする。また、記憶装置の木構造の情報を外部機器に出力するに際して、記憶装置の木構造の情報を効率よく解析することができる情報管理装置、情報管理方法及びそのプログラムを提供することを目的の一つとする。
【課題を解決するための手段】
【０００５】
本発明は、上述の目的の少なくとも一つを達成するために以下の手段を採った。
【０００６】
本発明の情報管理装置は、
記憶装置の階層状の木構造の情報を管理する情報管理装置であって、
前記記憶装置の木構造の情報を所定のマークアップ言語で記述した木構造ファイルを記憶可能な情報記憶手段と、
前記記憶装置の木構造の状態及び前記情報管理装置の処理能力のうち少なくとも一つに基づいて前記木構造ファイルを分割する処理を実行するか否かを判定する分割判定手段と、
前記分割判定手段によって前記木構造ファイルを分割する処理を実行しないと判定されたときには該木構造ファイルがそのまま前記情報記憶手段に保存されるよう前記情報記憶手段を制御し、前記分割判定手段によって前記木構造ファイルを分割する処理を実行すると判定されたときには該木構造の一部が含まれる所定の分割状態となるよう該木構造ファイルの分割処理を実行し該分割された木構造ファイルのそれぞれが前記情報記憶手段に保存されるよう前記情報記憶手段を制御する制御手段と、
を備えたものである。
【０００７】
この情報管理装置では、記憶装置の木構造の状態及び情報管理装置の処理能力のうち少なくとも一つに基づいて、所定のマークアップ言語で記述され情報記憶手段に記憶された木構造ファイルを分割する処理を実行するか否かを判定し、木構造ファイルの分割処理を実行しないと判定されたときには該木構造ファイルをそのまま情報記憶手段に保存し、木構造ファイルの分割処理を実行すると判定されたときには該木構造の一部が含まれる所定の分割状態となるよう該木構造ファイルの分割処理を実行し該分割された木構造ファイルのそれぞれを情報記憶手段に保存する。一般に、マークアップ言語で記述された木構造ファイルはファイル全体を解析する必要があるため、例えば、外部機器から記憶装置の木構造の情報の問合せがあったときに、木構造ファイルが大きいと、解析する処理時間がかかり応答に時間がかかることがある。ここでは、木構造の解析に要する処理時間と相関関係にある木構造の状態や情報管理装置の処理能力に基づいて木構造ファイルを分割するか否かを判定するため、記憶装置の木構造の情報を含む木構造ファイルの分割を適正に実行することができる。また、予め木構造ファイルの分割を行うことにより、外部機器などからの木構造の情報の問合せに備えることができる。ここで、「所定の分割状態」には、分割された木構造ファイルのそれぞれが利用可能な状態で分割された状態が含まれる。
【０００８】
本発明の情報管理装置において、前記制御手段は、前記マークアップ言語としてのＸＭＬ又はＸＨＴＭＬで記述された前記木構造ファイルを前記情報記憶手段に保存してもよい。こうすれば、ＸＭＬやＸＨＴＭＬを利用して比較的容易に記憶装置の木構造を管理することができる。
【０００９】
本発明の情報管理装置において、前記情報記憶手段は、ファイルを格納可能な１以上のフォルダの情報を含む前記木構造ファイルを記憶し、前記分割判定手段は、前記木構造ファイルを解析し該解析した結果、前記木構造の状態として前記木構造の情報に含まれているフォルダ数が所定の処理遅延数以上あるときに前記木構造ファイルを分割する処理を実行すると判定してもよい。こうすれば、木構造ファイルの解析処理時間に相関関係のある木構造ファイルに含まれているフォルダ数を用いて木構造ファイルの解析処理にかかる時間を考慮して分割を実行するか否かを判定することができる。ここで、「所定の処理遅延数」とは、木構造ファイルを解析する際に許容されうる処理時間を超えてしまうようなフォルダ数に定めてもよい。また、「フォルダ情報」には、フォルダ名、フォルダのアドレスなどが含まれていてもよい。このとき、前記制御手段は、所定の分割状態となるよう前記木構造ファイルの分割処理を実行するに際して、前記処理遅延数未満のフォルダが前記分割された木構造ファイルに含まれるよう前記木構造ファイルの分割処理を実行してもよい。こうすれば、木構造ファイルに含まれるフォルダ数が処理遅延数未満となるため、木構造ファイルの解析処理にかかる時間を適正なものとすることができる。
【００１０】
本発明の情報管理装置において、前記分割判定手段は、前記木構造ファイルを解析し該解析した結果、前記記憶装置の木構造の状態として前記木構造ファイルに含まれている木構造の階層数が所定の処理遅延階層数以上あるときに前記木構造ファイルを分割する処理を実行すると判定してもよい。こうすれば、木構造ファイルの解析処理時間に相関関係のある木構造ファイルの階層数を用いて木構造ファイルの解析処理にかかる時間を考慮して分割を実行するか否かを判定することができる。ここで、「処理遅延階層数」とは、木構造ファイルを解析する際に許容されうる処理時間を超えてしまう階層数に定めてもよい。このとき、前記制御手段は、所定の分割状態となるよう前記木構造ファイルの分割処理を実行するに際して、上位の階層が含まれる分割後の木構造ファイルと該上位の階層に対応付けられた下位の階層が含まれる分割後の木構造ファイルとに前記木構造ファイルが分割されるよう前記木構造ファイルの分割処理を実行してもよい。こうすれば、木構造ファイルに含まれる上位の階層が同一である下位の階層ごとに木構造ファイルが保存されるため、上位の階層と下位の階層との対応付けがしやすい。
【００１１】
本発明の情報管理装置において、前記分割判定手段は、前記情報管理装置の処理能力が所定の処理能力を下回るときに前記木構造ファイルを分割するものと判定してもよい。こうすれば、木構造ファイルの解析処理時間に相関関係のある情報管理装置の処理能力を用いて木構造ファイルの解析処理にかかる時間を考慮して分割の実行の可否を判定することができる。ここで、「情報管理装置の処理能力」とは、例えば情報管理装置のスペック（ＣＰＵのクロック数やメモリ容量など）としてもよい。このとき、前記分割判定手段は、前記木構造ファイルを解析し該解析した結果、該解析に要した時間が所定の許容処理時間を超えたときに前記情報管理装置の処理能力が所定の処理能力を下回るものとして前記木構造ファイルを分割する処理を実行すると判定してもよい。
【００１２】
本発明の情報管理装置は、前記記憶装置の木構造の情報を取得する情報取得手段、を備え、前記制御手段は、前記情報取得手段によって取得された前記記憶装置の木構造の情報に基づいて前記木構造ファイルを前記情報記憶手段に記憶するよう前記情報記憶手段を制御してもよい。こうすれば、比較的容易に記憶装置から該記憶装置の木構造の情報を得ることができる。このとき、前記情報取得手段は、前記記憶装置の木構造の情報をテキストファイルとして前記記憶装置から取得し、前記制御手段は、前記取得された木構造の情報に基づいて前記木構造ファイルを作成し該作成した木構造ファイルを前記情報記憶手段に記憶するよう前記情報記憶手段を制御してもよい。あるいは、前記情報取得手段は、前記記憶装置に記憶された前記木構造の情報を所定のマークアップ言語で記述された木構造ファイルで前記記憶装置から取得し、前記制御手段は、前記取得された木構造ファイルを前記情報記憶手段に記憶するよう前記情報記憶手段を制御してもよい。また、前記制御手段は、定期的に前記情報記憶手段から前記木構造の情報を取得するよう前記情報取得手段を制御してもよいし、前記制御手段は、前記記憶装置の木構造の情報が更新されるたびに該記憶装置から送信される該木構造の情報を取得するよう前記情報取得手段を制御してもよい。
【００１３】
本発明の情報管理装置は、記憶装置の木構造の情報を外部機器へ出力する指令を該外部機器から取得する指令取得手段と、情報を外部機器に出力可能な出力手段と、を備え、前記制御手段は、前記木構造ファイルの分割処理を実行し該分割された木構造ファイルのそれぞれが前記情報記憶手段に保存されるよう前記情報記憶手段を制御したあと前記指令取得手段が前記出力指令を取得したときには、前記分割された木構造ファイルのうち前記出力指令に対応する木構造の情報を含む前記木構造ファイルを前記情報記憶手段から読み出し該読み出した木構造ファイルを解析し、該解析結果を前記記憶装置の木構造の情報として前記外部機器へ出力するよう前記出力手段を制御してもよい。こうすれば、分割して保存されている木構造ファイルのうち、外部機器から問合せがあった木構造に対応する木構造ファイルを解析するため、記憶装置の木構造のすべてを含む木構造ファイルを解析するのに比べて記憶装置の木構造の情報を効率よく解析することができる。このとき、前記制御手段は、前記解析結果を前記記憶装置の木構造の情報として前記外部機器へ出力するに際して、テキストファイルを前記解析結果として前記外部機器へ出力してもよい。こうすれば、外部機器で木構造ファイルを解析する必要がない。また、前記制御手段は、前記木構造ファイルがそのまま前記情報記憶手段に保存されるよう前記情報記憶手段を制御したあと前記指令取得手段が前記出力指令を取得したときには、前記情報記憶手段に保存された前記木構造ファイルを読み出し該読み出した木構造ファイルを解析し、該解析結果を前記記憶装置の木構造の情報として前記外部機器へ出力するよう前記出力手段を制御してもよい。また、前記制御手段は、前記指令取得手段から前記出力指令を受けていないときに前記分割判定手段によって前記木構造ファイルを分割する処理を実行すると判定されたときには、前記木構造の一部が含まれる所定の分割状態となるよう該木構造ファイルの分割処理を実行してもよい。こうすれば、外部機器から記憶装置の木構造の問合せがある前に予め木構造ファイルを解析して分割しておくため、外部機器の問合せに対して迅速に対応できる。また、前記外部機器は、スキャナ、プリンタ、デジタルカメラ及び携帯電話のうちの少なくとも１つであるとしてもよい。スキャナ、プリンタ、デジタルカメラ及び携帯電話などの外部機器は、データを木構造に含まれるフォルダなどに保存したり木構造に含まれるフォルダから読み出したりすることが多いため、本発明を適用する意義が高い。
【００１４】
本発明の情報管理方法は、
記憶装置の階層状の木構造の情報を、前記記憶装置の木構造の情報を所定のマークアップ言語で記述した木構造ファイルを記憶可能な情報記憶手段を利用して管理するコンピュータ・ソフトウェアによる情報管理方法であって、
（ａ）前記記憶装置の木構造の状態及び前記情報管理装置の処理能力のうち少なくとも一つに基づいて前記木構造ファイルを分割する処理を実行するか否かを判定するステップと、
（ｂ）前記ステップ（ａ）で前記木構造ファイルを分割する処理を実行しないと判定されたときには該木構造ファイルがそのまま前記情報記憶手段に保存されるよう前記情報記憶手段を制御し、前記ステップ（ａ）で前記木構造ファイルを分割する処理を実行すると判定されたときには該木構造の一部が含まれる所定の分割状態となるよう該木構造ファイルの分割処理を実行し該分割された木構造ファイルのそれぞれが前記情報記憶手段に保存されるよう前記情報記憶手段を制御するステップと、
を含むものである。
【００１５】
この情報管理方法では、記憶装置の木構造の状態及び情報管理装置の処理能力のうち少なくとも一つに基づいて、所定のマークアップ言語で記述され情報記憶手段に記憶された木構造ファイルを分割する処理を実行するか否かを判定し、木構造ファイルの分割処理を実行しないと判定されたときには該木構造ファイルをそのまま情報記憶手段に保存し、木構造ファイルの分割処理を実行すると判定されたときには該木構造の一部が含まれる所定の分割状態となるよう該木構造ファイルの分割処理を実行し該分割された木構造ファイルのそれぞれを情報記憶手段に保存する。一般に、マークアップ言語で記述された木構造ファイルはファイル全体を解析する必要があるため、ファイルが大きくなると処理時間がかかることがある。ここでは、木構造の解析に要する処理時間と相関関係にある木構造の状態や情報管理装置の処理能力に基づいて木構造ファイルを分割するか否かを判定するため、記憶装置の木構造の情報を含む木構造ファイルの分割を適正に実行することができる。なお、この情報管理方法において、上述した情報管理方法の種々の態様を採用してもよいし、また、上述した情報管理方法の各機能を実現するようなステップを追加してもよい。
【００１６】
本発明のプログラムは、上述した情報管理方法の各ステップを１又は複数のコンピュータに実現させるためのものである。このプログラムは、コンピュータが読み取り可能な記録媒体（例えばハードディスク、ＲＯＭ、ＦＤ、ＣＤ、ＤＶＤなど）に記録されていてもよいし、伝送媒体（インターネットやＬＡＮなどの通信網）を介してあるコンピュータから別のコンピュータへ配信されてもよいし、その他どのような形で授受されてもよい。このプログラムを一つのコンピュータに実行させるか又は複数のコンピュータに各ステップを分担して実行させれば、上述した情報管理方法の各ステップが実行されるため、該情報管理方法と同様の作用効果が得られる。
【発明を実施するための最良の形態】
【００１７】
次に、本発明を実施するための最良の形態を図面を用いて説明する。
【００１８】
図１は、本発明の一実施形態であるスキャン情報管理システム１０の構成の概略を示す構成図であり、図２は、スキャナ装置２０が備える操作パネル４０の説明図である。本実施例のスキャン情報管理システム１０は、画像を読み取ってスキャンデータに変換する本発明の外部機器としてのスキャナ装置２０と、スキャナ装置２０とＬＡＮ１２を介して接続され本発明の記憶装置としての機能を備えたファイルサーバ５０と、スキャナ装置２０やファイルサーバ５０とネットワークとしてのＬＡＮ１２を介して接続され本発明の情報管理装置としての機能を備えた管理サーバ６０と、によって構成されている。なお、このスキャン情報管理システム１０では、図示しない複数のスキャナ装置２０がＬＡＮ１２に接続されている。
【００１９】
スキャナ装置２０は、スキャナ機構３１とスキャナＡＳＩＣ（Application Specific Integrated Circuit）３２とを備えたスキャナ部３０と、電気通信回線としてのＬＡＮ１２に接続された機器との間で信号の送受信が可能なネットワークインターフェース（Ｉ／Ｆ）２５と、ユーザが各種の指示を入力する操作パネル４０と、装置全体の制御を司るコントローラ２９とを備えている。スキャナ機構３１は、いわゆるフラットベッド型であり、画像を読み取る媒体Ｍを載せるガラス面３３と、このガラス面３３を介して媒体Ｍを光学的に読み取るラインイメージセンサ３４と、媒体Ｍを読み取るためラインイメージセンサ３４を走査させる移動部３６とを備えている。スキャナＡＳＩＣ３２はスキャナ機構３１を制御する機能を備えたＩＣチップであり、スキャナ機構３１のラインイメージセンサ３４で読み取られたスキャンデータを、コントローラ２９のＲＡＭ２３に設けられたスキャナバッファに格納する。本実施例のラインイメージセンサ３４は、媒体Ｍに向かって発光した後の反射光をレッド（Ｒ）、グリーン（Ｇ）、ブルー（Ｂ）の各色に分解してスキャンデータとする周知のカラーイメージセンサである。
【００２０】
操作パネル４０は、ユーザがスキャナ装置２０に対して各種の指示を入力するためのデバイスであり、図１及び図２に示すように、各種の指示に応じた文字、図形又は記号が表示される表示部４２や、各種操作を行う操作部４４が設けられている。表示部４２は、カラー画像を表示する液晶パネルにより構成されている。なお、図２に示した表示部４２のフォルダ選択画面８１については後述する。操作部４４には、ユーザが処理や文字等を選択するカーソルなどを移動させるときに押下されるカーソルキー４４ａや処理選択などを決定するときに押下される決定キー４４ｂ、ガラス面３３上に載置された媒体Ｍの読み取り開始時などに押下されるスキャン開始キー４４ｃ、スキャンデータを保存する際に押下される登録キー４４ｄなどが配置されている。
【００２１】
コントローラ２９は、ＣＰＵ２１を中心とするマイクロプロセッサとして構成されており、各種処理プログラムを記憶したＲＯＭ２２と、一時的にデータを記憶するＲＡＭ２３と、データを書き込み消去可能なフラッシュメモリ２４とを備えている。このコントローラ２９は、バス２８を介してスキャナＡＳＩＣ３２やＩ／Ｆ２５、操作パネル４０と接続されている。ＲＯＭ２２には、アプリケーションプログラムであるスキャンデータ管理プログラム２２ａなどが記憶されている。このスキャンデータ管理プログラム２２ａは、スキャナ部３０で読み取ったデータをファイルサーバ５０へ保存するプログラムである。ＲＡＭ２３には、スキャナ部３０により読み取られた画像情報を一時的に記憶するスキャナバッファなどの領域が設けられている。
【００２２】
ファイルサーバ５０は、各種制御を実行するＣＰＵ５１と、各種制御プログラムを記憶するＲＯＭ５２と、データを一時記憶するＲＡＭ５３と、各種アプリケーションプログラムや各種データファイルを記憶する大容量メモリであるＨＤＤ５４と、スキャナ装置２０や管理サーバ６０との間で信号の送受信が可能なＩ／Ｆ５５とを備え、これらは図示しないバスによって情報のやり取りが可能なように接続されている。このファイルサーバ５０は、スキャナ装置２０などの外部機器で作成されたファイルをＨＤＤ５４に保存するサーバである。このファイルサーバ５０は、ＬＡＮ１２を介してスキャナ装置２０や管理サーバ６０とデータを送受信する際には、ＲＡＭ５３の所定領域に設けられた受信バッファ及び送信バッファを利用してデータの送受信を行う。ＨＤＤ５４には、ファイルを保存するフォルダが階層状に形成されており、この階層状の木構造の情報を含むＸＭＬファイル７０が保存されている。また、ＨＤＤ５４の各フォルダには、スキャナ装置２０から受信したスキャンデータ５４ａなどが保存されている。ここでは、ＨＤＤ５４の１階層には５０個までのフォルダが作成できる設定となっている。
【００２３】
ここで、ＸＭＬファイル７０について説明する。図３は、ＨＤＤ５４の木構造の情報を含むＸＭＬファイル７０の説明図であり、図４は、ＸＭＬファイル７０に含まれる木構造の説明図である。ＸＭＬファイル７０には、図３に示すように、各フォルダの情報として、ユーザによって付与されたフォルダ名（例えば「第１階層０１」）、装置内部での管理に使用するフォルダ名に対応付けられたフォルダＩＤ（例えば「ＩＤ０１」）、ＨＤＤ６４に記憶されたフォルダの場所を表すアドレス（例えば「ftp://192.168.1.1/会議/第１階層01/」）などがタグ <tranceInformation>によって挟み込まれた記述領域に記述されている。また、上位のフォルダに含まれる下位のフォルダ（いわゆるサブフォルダ）の記述領域には、上位のフォルダのフォルダＩＤが記述されており（例えば「<parent>ID01</parent>」）、フォルダの親子関係が把握可能となっている。なお、本明細書では、上位のフォルダを親フォルダといい、下位のフォルダを子フォルダということもある。このように、ＸＭＬファイル７０には、ＨＤＤ５４のすべての木構造の情報が記述されている。そして、このＸＭＬファイル７０に記述されたすべての内容を解析すれば、図４に示すように、ＨＤＤ６４の木構造の全体が把握可能である。なお、このＸＭＬファイル７０には、第１階層のフォルダとして第１階層０１，第１階層０２，…，が含まれ、第１階層０１の下位には、第２階層０１，第２階層０２，…，が含まれ、第２階層０１の下位には第３階層０１，…，が含まれており、更に第１階層０２の下位にも複数の第２階層フォルダが含まれている。
【００２４】
管理サーバ６０は、スキャナ装置２０からの指令によりファイルサーバ５０の木構造の情報をスキャナ装置２０に出力する装置として構成され、各種制御を実行するＣＰＵ６１と、各種制御プログラムを記憶するＲＯＭ６２と、データを一時記憶するＲＡＭ６３と、各種アプリケーションプログラムや各種データファイルを記憶する大容量メモリであるＨＤＤ６４と、外部機器との間で信号の送受信が可能なＩ／Ｆ６５とを備え、これらは図示しないバスによって情報のやり取りが可能なように接続されている。この管理サーバ６０は、インストールされたプログラムによりファイルサーバ５０に情報を送信したりファイルサーバ５０から送信されたマークアップ言語としてのＸＭＬで内容が記述されたＸＭＬファイル７０を受信したり、受信したＸＭＬファイル７０を解析しこれを分割してＨＤＤ６４に保存したり、ＸＭＬファイル７０に含まれるファイルサーバ５０の木構造の情報を解析してこの木構造の情報をスキャナ装置２０へ送信したりスキャナ装置２０からの応答を受信したりするサーバである。この管理サーバ６０は、ＬＡＮ１２を介してスキャナ装置２０やファイルサーバ５０とデータを送受信する際には、ＲＡＭ６３の所定領域に設けられた受信バッファ及び送信バッファを利用してデータの送受信を行う。ＨＤＤ６４には、アプリケーションプログラムであるＸＭＬファイル管理プログラム６４ａやＸＭＬファイル管理プログラム６４ａの実行により作成される第１ＸＭＬファイル７１などが記憶されている。
【００２５】
次に、こうして構成された本実施例のスキャン情報管理システム１０の処理について、まず、ファイルサーバ５０がＨＤＤ５４の木構造の情報をＸＭＬファイル７０に記述して送信する処理について説明する。図５は、ファイルサーバ５０のＣＰＵ５１により実行される木構造ファイル更新ルーチンの一例を表すフローチャートである。このルーチンは、ＨＤＤ５４に記憶され、ファイルサーバ５０が起動したあと所定のタイミングごと（例えば数ｍｓｅｃごと）に繰り返し実行される。このルーチンが開始されると、ＣＰＵ５１は、ＨＤＤ５４に記憶されている木構造が変更されたか否かを判定し（ステップＳ１００）、木構造が変更されていないときには、そのままこのルーチンを終了する。ここで、木構造の変更がされたか否かの判定は、例えば、図示しないユーザのコンピュータからＬＡＮ１２を介して、又は図示しないファイルサーバ５０に接続された入力装置の操作により、ＨＤＤ５４に記憶されたフォルダに新たなフォルダが追加されたか、又は既存のフォルダが削除されたか否かを判定することにより行う。木構造が変更されたときには、ＣＰＵ５１は、木構造の変更内容に基づいて、ＨＤＤ５４に記憶されているＸＭＬファイル７０の記述内容を更新する（ステップＳ１１０）。例えば、新たなフォルダが追加されたときには、このフォルダの記述領域をＸＭＬファイル７０に設けると共に対応するフォルダ名やアドレスをこの記述領域に書き加え、既存のフォルダが削除されたときには、対応する記述領域をＸＭＬファイル７０から削除する。そして、更新したＸＭＬファイル７０を管理サーバ６０へ送信出力し（ステップＳ１２０）、このルーチンを終了する。このように、ファイルサーバ５０の木構造が変更されるたびに変更された内容がＸＭＬファイル７０として管理サーバ６０に送信される。
【００２６】
次に、ファイルサーバ５０から受信したＸＭＬファイル７０の管理サーバ６０による処理について説明する。図６は、管理サーバ６０のＣＰＵ６１により実行される木構造ファイル管理ルーチンの一例を表すフローチャートである。このルーチンは、ＨＤＤ６４に記憶され、ファイルサーバ５０からＸＭＬファイル７０を受信したあと実行される。このルーチンが開始されると、ＣＰＵ６１は、ファイルサーバ５０から受信したＸＭＬファイル７０を解析する（ステップＳ２００）。ここで、ＸＭＬファイル７０の解析は、図４に示すように、受信したＸＭＬファイル７０に記述されている内容をすべて展開し、木構造に含まれるフォルダ数Ｆや階層数ＣなどＨＤＤ５４の木構造のすべてを把握する処理を行う。なお、受信したＸＭＬファイル７０は、ＲＡＭ６３に設けられた通信用バッファに一旦格納される。
【００２７】
続いて、ＣＰＵ６１は、ＸＭＬファイル７０に含まれる階層数Ｃが閾値Ｃｒｅｆ以上であるか否かを判定する（ステップＳ２１０）。この閾値Ｃｒｅｆは、スキャナ装置２０などの外部装置からＨＤＤ５４の木構造の情報取得について問合せがあり、管理サーバ６０でＸＭＬファイル７０を解析する際に、許容されうる処理時間（例えば５秒や１０秒など）を超えてしまう階層数に基づいて定められている。ステップＳ２１０で階層数Ｃが閾値Ｃｒｅｆ以上であると判定されたときには、ＣＰＵ６１は、ＸＭＬファイル７０に含まれるフォルダ数Ｆが閾値Ｆｒｅｆ以上であるか否かを判定する（ステップＳ２２０）。この閾値Ｆｒｅｆは、スキャナ装置２０などの外部装置からＨＤＤ５４の木構造の情報取得について問合せがあり、管理サーバ６０でＸＭＬファイル７０を解析する際に、許容されうる処理時間（例えば５秒や１０秒など）を超えてしまうフォルダ数に定められている。つまり、ステップＳ２１０及びステップＳ２２０では、管理サーバ６０でＸＭＬファイル７０の全体を解析したときに、外部機器への応答において許容されうる処理時間を超えるか否かを判定するのである。本実施形態では、フォルダ数Ｆが２５００個以上あるときに（閾値Ｆｒｅｆ＝２５００個）、外部機器への応答において許容されうる処理時間を超えると判定するものとした。また、前述したように、１階層の最大フォルダ数Ｆが５０個と定められており、階層数Ｃが２階層であるとき最大のフォルダ数Ｆが２５００個以内となることから、階層数Ｃが２階層までは外部機器への応答において許容されうる処理時間を超えないと判定され、階層数Ｃが３階層（閾値Ｃｒｅｆ＝３）以上では外部機器への応答において許容されうる処理時間を超えると判定されるものとした。
【００２８】
ステップＳ２１０で階層数Ｃが閾値Ｃｒｅｆ以上でないと判定されたとき、または、ステップＳ２２０でフォルダ数Ｆが閾値Ｆｒｅｆ以上でないと判定されたときには、ＣＰＵ６１は、ＸＭＬファイル７０の全体を解析する処理を管理サーバ６０で実行しても許容されうる処理時間を超えないものとみなし、受信しＲＡＭ６３に一時的に格納されたＸＭＬファイル７０をそのままＨＤＤ６４の所定領域に保存し（ステップＳ２３０）、このルーチンを終了する。このように、最新のファイルサーバ５０の木構造の情報をＨＤＤ６４に保存して、スキャナ装置２０からの問合せに備えておくのである。
【００２９】
一方、ステップＳ２１０で階層数Ｃが閾値Ｃｒｅｆ以上であると判定され、ステップＳ２２０でフォルダ数Ｆが閾値Ｆｒｅｆ以上であると判定されたときには、ＣＰＵ６１は、ＸＭＬファイル７０に含まれているフォルダについて、親フォルダを共通とする同一階層のフォルダのフォルダ名やアドレスを含むフォルダ情報が記述されたＸＭＬファイルを各階層ごとに作成する分割処理（ステップＳ２４０〜Ｓ２９０）を実行する。具体的には、ＣＰＵ６１は、分割を実行する階層数ｎに値１をセットし（ステップＳ２４０）、親フォルダを共通とする第ｎ階層に含まれるフォルダの情報に第ｎ＋１階層のフォルダの情報を含めたＸＭＬファイルを作成する（ステップＳ２５０）。図７は、第１階層に含まれるフォルダの情報を含む第１ＸＭＬファイル７１を作成する概念図であり、図８は、第１ＸＭＬファイル７１の説明図である。図７に示すように、ＣＰＵ６１は、親フォルダ（ここではルートとしての「会議」）を共通とする第１階層に含まれるフォルダの情報を含む第１ＸＭＬファイル７１を作成する。この第１ＸＭＬファイル７１は、図８に示すように、ＸＭＬファイル７０（図３参照）に含まれる第１階層の情報を抜き出し、この抜き出した情報を記述すると共に各タグの整合をとるように作成される。なお、ここでは、「タグの整合をとる」とは、抜き出した際に閉じられていないタグに対して閉じるタグを追記することをいう。このとき、ＣＰＵ６１は、フォルダ名「第１階層０１」の第２階層のフォルダの情報であるリンク情報７１ａやフォルダ名「第１階層０２」の第２階層のフォルダの情報であるリンク情報７３ａをそれぞれの記述領域に追記する。ここでは、ＸＭＬファイル７０を予め解析し各フォルダの親子関係が把握されているため、分割により各階層に作成されるＸＭＬファイルの名前を予め定めておき、この定めたファイル名を下位のフォルダの情報として記述領域のリンク情報７１ａなどに記述するものとした（図８参照）。なお、本実施形態では、分割により作成されるＸＭＬファイルの名前は、第１階層を「PluginParam」とし、第２階層以下を「subfolder」に４桁の数字を作成順に付与するものとした。
【００３０】
ステップＳ２５０のあと、ＣＰＵ６１は、作成したＸＭＬファイルをＨＤＤ６４の所定領域に保存し（ステップＳ２６０）、現在の階層にＸＭＬファイルを作成すべき他のフォルダがあるか否かを判定し（ステップＳ２７０）、現在の階層にＸＭＬファイルを作成すべき他のフォルダがあるときには、ステップＳ２５０〜Ｓ２７０の処理を行い、現在の階層にＸＭＬファイルを作成すべき他のフォルダがないときには、現階層についてフォルダごとにすべてＸＭＬファイルを作成したものとみなし、全階層を終了したか否かを判定する（ステップＳ２８０）。全階層を終了していないと判定されたときには、ＣＰＵ６１は、階層数ｎを値１インクリメントし（ステップＳ２９０）、ステップＳ２５０〜Ｓ２９０の処理を実行し、ステップＳ２８０で全階層を終了したと判定されたときにはこのルーチンを終了する。このように、最新のファイルサーバ５０の木構造の情報を解析の処理時間がかからないよう分割してＨＤＤ６４に保存し、スキャナ装置２０からの問合せに備えておくのである。
【００３１】
ここで、ステップＳ２４０〜Ｓ２９０の処理について説明する。図９は、第２階層に含まれるフォルダ情報を格納したＸＭＬファイルを作成する概念図、図１０は、第２ＸＭＬファイル７２の説明図、図１１は、第３階層に含まれるフォルダの情報を格納した第４ＸＭＬファイル７４を作成する概念図、図１２は、第４ＸＭＬファイル７４の説明図である。第１階層の第１ＸＭＬファイル７１を作成したあと、ＣＰＵ６１は、フォルダ名「第１階層０１」に含まれる第２階層のフォルダ情報をＸＭＬファイル７０から抜き出し、この抜き出した情報を記述すると共に各タグの整合をとることにより第２ＸＭＬファイル７２を作成し（図９参照）、ＨＤＤ６４の所定領域に保存する。この第２ＸＭＬファイル７２には、フォルダ名「第２階層０１」の子フォルダの情報であるリンク情報７２ａがその記述領域に追記されている。続いて、ＣＰＵ６１は、親フォルダが異なる他のフォルダが同一階層にあるか否かを調べ、他のフォルダについて、例えば第３ＸＭＬファイル７３を作成する（図９参照）。第２階層の処理が終了すると、ＣＰＵ６１は、フォルダ名「第２階層０１」に含まれる第３階層のフォルダ情報をＸＭＬファイル７０から抜き出し、この抜き出した情報を記述すると共に各タグの整合をとることにより第４ＸＭＬファイル７４を作成し（図１１参照）、ＨＤＤ６４の所定領域に保存する。この第４ＸＭＬファイル７４には、フォルダ名「第３階層０１」の子フォルダの情報であるリンク情報７４ａがその記述領域に追記されている。このように、ＸＭＬファイル７０に記載されている内容から各階層の情報を抜き出すことにより、ＨＤＤ５４のすべての木構造の情報を含むＸＭＬファイル７０の分割処理を実行するのである。そして、ＨＤＤ６４の所定領域には、ファイルサーバ５０のＨＤＤ５４の木構造の情報の一部を含むＸＭＬファイル群が保存される。なお、説明の便宜のため、各階層に作成されるＸＭＬファイルの名称は図中に示したもののみを連番で表示した（図１１参照）。
【００３２】
最後に、スキャナ装置２０で読み取ったスキャンデータをファイルサーバ５０に保存する際にスキャナ装置２０及び管理サーバ６０で行われる各処理と通信の様子について説明する。図１３は、スキャン情報管理システム１０のスキャンデータ保存処理及び通信の様子をシーケンシャルに示す説明図である。ここでは、ＨＤＤ５４の木構造の情報が上述した木構造ファイル管理ルーチンのステップＳ２４０〜Ｓ２９０の分割処理により分割されてＨＤＤ６４に保存されており、スキャナ装置２０で読み取ったスキャンデータをファイルサーバ５０の所定フォルダに保存する場合について説明する。まず、ユーザが、スキャナ装置２０のガラス面３３に媒体Ｍを載置してスキャン開始キー４４ｃを押下すると、スキャナ装置２０は、媒体Ｍの読み取りを実行する。具体的には、ＣＰＵ２１がスキャナＡＳＩＣ３２へ読取指令を送信し、読取指令を受信したスキャナＡＳＩＣ３２は、ラインイメージセンサ３４を移動部３６に沿って走査させ媒体Ｍの画像形成面を１ページ分読み取らせると共に、読み取ったスキャンデータを順次ＲＡＭ２３のスキャナバッファに記憶させる。そして、登録キー４４ｄがユーザにより押下されると、スキャンデータの保存を実行する図１３に示した処理が開始される。
【００３３】
登録キー４４ｄが押下されると、スキャナ装置２０のＣＰＵ２１は、フォルダ情報をスキャナ装置２０へ出力する旨の指令をＩ／Ｆ２５を介して管理サーバ６０へ送信する（ステップＳ３００）。ここで、最初に登録キー４４ｄが押下されたときの出力指令は、ＨＤＤ５４の第１階層のフォルダ情報を出力するよう定められている。この信号を受けた管理サーバ６０のＣＰＵ６１は、出力指令された階層のＸＭＬファイルを読み出し、その内容を解析する（ステップＳ４００）。ここでは、第１ＸＭＬファイル７１を読み出し、その内容を解析する。このとき、ＣＰＵ６１は、許容されうる処理時間を超えないよう予め分割した第１ＸＭＬファイル７１を解析すればよいため、迅速に第１階層のフォルダの情報を解析可能である。次に、ＣＰＵ６１は、解析した内容に基づき、フォルダ名、フォルダＩＤ及びフォルダのアドレスを含むフォルダ情報をテキストファイルで作成し（ステップＳ４１０）、この作成したフォルダ情報をＩ／Ｆ６５を介してスキャナ装置２０へ送信出力する（ステップＳ４２０）。
【００３４】
このフォルダ情報を含むテキストファイルを受信したＣＰＵ２１は、その内容を解析しフォルダ名を選択可能な態様で表示部４２に表示させる（ステップＳ３１０）。このように、スキャナ装置２０ではＸＭＬファイルを解析する必要はない。ここでは、ＣＰＵ２１は、図２のフォルダ選択画面８１を表示部４２に表示させる。フォルダ選択画面８１には、各フォルダ名が文字表示されて上下に配置されており、上下キー４４ａの押下に伴って上下に動くカーソル８２によりフォルダ名を選択可能となっている。なお、カーソルが配置されているフォルダ名が選択されるよう設定されている。次に、ＣＰＵ２１は、ユーザから保存指示及び下位階層の表示指示のいずれの指示を受けたかを判定する（ステップＳ３２０）。ここでは、登録キー４４ｄが押下されたときには現在のフォルダにスキャンデータの保存を指示されたものと判定し、決定キー４４ｂが押下されたときにはフォルダ選択画面８１で選択されているフォルダの下位階層を表示指示されたものと判定するよう定められている。ステップＳ３２０で下位階層の表示が指示されたときには、カーソル８２の配置されたフォルダの下位階層に対してステップＳ３００以降の処理を実行する。即ち、ＣＰＵ２１は、現在選択されているフォルダの下位階層のフォルダ情報を出力する旨の出力指令を送信し（ステップＳ３００）、この出力指令を受けたＣＰＵ６１は、ステップＳ４００以降の処理を実行する。一方、ステップＳ３２０でスキャンデータの保存が指示されたときには、受信したフォルダ情報に含まれるアドレスに基づいて、保存指示されたフォルダにスキャンデータが保存されるようスキャンデータをファイルサーバ５０へ送信し（ステップＳ３３０）、このルーチンを終了する。
【００３５】
ここで、スキャナ装置２０で読み取ったスキャンデータをファイルサーバ５０の「第２階層０１」フォルダに保存する場合について説明する。まず、ステップＳ３１０で表示したフォルダ選択画面８１で、ユーザがカーソル８２の操作によりフォルダ名「第１階層０１」を選択し（図２参照）、決定キー４４ｂを押下したときには、ＣＰＵ２１は、「第１階層０１」の下位のフォルダ情報を出力する旨の出力指令を管理サーバ６０へ送信する。この出力指令を受けたＣＰＵ６１は、リンク情報７１ａのリンク先である第２ＸＭＬファイル７２を読み出し、この読み出した第２ＸＭＬファイル７２を解析する（ステップＳ４００）。そして、「第１階層０１」フォルダの下位には、「第２階層０１」，「第２階層０２」，…，が含まれるという解析結果を得て、この解析した内容に基づきフォルダ情報をテキストファイルで作成し（ステップＳ４１０）、この作成したフォルダ情報をＩ／Ｆ６５を介してスキャナ装置２０へ送信出力する（ステップＳ４２０）。フォルダ情報を含むテキストファイルを受信したＣＰＵ２１は、その内容を解析しフォルダ選択画面８１に選択可能に表示させる。ユーザが決定キー４４ｂを押下し、表示されたフォルダ名のうち「第２階層０１」の下位階層の表示指示を行ったときには、ＣＰＵ２１は、「第２階層０１」の下位のフォルダ情報を出力する旨の出力指令を管理サーバ６０へ送信する。この出力指令を受けたＣＰＵ６１は、リンク情報７２ａ（図１０参照）のリンク先である第４ＸＭＬファイル７４を読み出して解析し、解析した内容に基づきフォルダ情報をテキストファイルで作成し、この作成したフォルダ情報をＩ／Ｆ６５を介してスキャナ装置２０へ送信出力する。ユーザが現在のフォルダ「第２階層０１」で登録キー４４ｄを押下すると、ＣＰＵ２１は、保存指示されたフォルダ「第２階層０１」のアドレスに保存されるようスキャンデータをファイルサーバ５０へ送信出力する。スキャンデータを受けたファイルサーバ５０は、指定されたフォルダにスキャンデータ５４ａとして保存する。なお、スキャンデータのファイル名は、スキャン後に自動付与されてもよいし、操作部４４の操作によりユーザが入力するものとしてもよい。
【００３６】
ここで、本実施形態の構成要素と本発明の構成要素との対応関係を明らかにする。本実施形態のＲＡＭ６３及びＨＤＤ６４が本発明の情報記憶手段に相当し、Ｉ／Ｆ２５が情報取得手段、指令取得手段及び出力手段に相当し、ＣＰＵ２１が分割判定手段及び制御手段に相当する。また、ＸＭＬファイル７０が木構造ファイルに相当し、第１〜４ＸＭＬファイル７１〜７４が分割された木構造ファイルに相当し、ファイルサーバ５０のＨＤＤ５４が記憶装置に相当し、スキャナ装置２０が外部機器に相当する。なお、本実施形態では、スキャン情報管理システム１０の処理を説明することにより本発明の情報管理方法の一例も明らかにしている。
【００３７】
以上詳述した本実施形態のスキャン情報管理システム１０によれば、ファイルサーバ５０の木構造の状態に基づいて、ＸＭＬで記述されＲＡＭ６３に記憶されたＸＭＬファイル７０を分割する処理を実行するか否かを判定し、ＸＭＬファイル７０の分割処理を実行しないと判定されたときには、このＸＭＬファイル７０をそのままＨＤＤ６４に保存し、ＸＭＬファイル７０の分割処理を実行すると判定されたときには、この木構造の一部が含まれる所定の分割状態となるようＸＭＬファイル７０の分割処理を実行し、この分割したＸＭＬファイルのそれぞれをＨＤＤ６４に保存する。一般に、マークアップ言語としてのＸＭＬで記述された木構造ファイルはファイル全体を解析する必要があるため、例えば、外部機器からの木構造の情報の問合せがあったときに、木構造ファイルが大きいと、解析する処理時間がかかり応答に時間がかかることがある。ここでは、木構造の解析に要する処理時間と相関関係にある木構造の状態に基づいてＸＭＬファイル７０を分割するか否かを判定するため、ファイルサーバ５０のＨＤＤ５４の木構造の情報を含むＸＭＬファイル７０の分割を適正に実行することができる。また、予めＸＭＬファイル７０の分割を行うことにより、外部機器などからの木構造の情報の問合せに備えることができる。また、ＸＭＬを利用して比較的容易にファイルサーバ５０の木構造を管理することができる。
【００３８】
また、ＸＭＬファイル７０を解析し、解析した結果、フォルダ数が閾値Ｆｒｅｆ以上あるときにＸＭＬファイル７０を分割する処理を実行すると判定するため、外部機器への応答においてＸＭＬファイル７０の解析処理にかかる時間を考慮して分割を実行するか否かを判定することができる。また、閾値Ｆｒｅｆ未満のフォルダが、分割されたＸＭＬファイルに含まれるようＸＭＬファイル７０の分割処理を実行するため、ＸＭＬファイル７０に含まれるフォルダ数を閾値Ｆｒｅｆ未満とすることにより、外部機器への応答においてＸＭＬファイルの解析処理にかかる時間を適正なものとすることができる。更に、ＸＭＬファイル７０に含まれている木構造の階層が閾値Ｃｒｅｆ以上あるときにＸＭＬファイル７０を分割する処理を実行すると判定するため、外部機器への応答においてＸＭＬファイル７０の解析処理にかかる時間を考慮して分割を実行するか否かを判定することができる。更にまた、上位の階層が含まれる分割後のＸＭＬファイルとこの上位の階層に対応付けられた下位の階層が含まれる分割後のＸＭＬファイルとにＸＭＬファイル７０が分割されるよう分割処理を実行するため、上位の階層と下位の階層との対応付けがしやすい。
【００３９】
更に、ＬＡＮ１２を介してファイルサーバ５０からＸＭＬファイル７０を取得し、この取得したＸＭＬファイル７０をＲＡＭ６３に記憶するため、比較的容易にファイルサーバ５０からこのファイルサーバ５０の木構造の情報を得ることができる。また、ファイルサーバ５０からＸＭＬファイル７０の形式でＨＤＤ５４の木構造の情報を取得するため、管理サーバ６０でＸＭＬファイル７０を作成する必要がない。更に、ファイルサーバ５０の木構造の情報が更新されるたびにファイルサーバ５０から送信されるＸＭＬファイル７０を取得するため、常に新しい木構造の情報を得ることができる。
【００４０】
更にまた、ＸＭＬファイル７０の分割処理を実行し、この分割したＸＭＬファイルのそれぞれをＨＤＤ６４に保存したあと、ＨＤＤ５４の木構造の情報の出力指令を取得したときには、分割されたＸＭＬファイルのうち出力指令に対応する木構造の情報を含むＸＭＬファイルをＨＤＤ６４から読み出し、この読み出したＸＭＬファイルを解析し、この解析結果をファイルサーバ５０の木構造の情報としてスキャナ装置２０へ出力するため、分割して保存されているＸＭＬファイルのうち、スキャナ装置２０から問合せがあった木構造に対応するＸＭＬファイルを解析することにより、ファイルサーバ５０の木構造のすべてを含む木構造ファイルを解析するのに比べてファイルサーバ５０の木構造の情報を効率よく解析することができる。また、ＨＤＤ５４の木構造の情報の出力指令をスキャナ装置２０から取得していないときにＸＭＬファイル７０の分割処理を行う、即ち、スキャナ装置２０から木構造の情報の問合せがある前に予めＸＭＬファイル７０を解析して分割しておくため、スキャナ装置２０からの問合せに対して迅速に対応できる。このように、スキャナ装置２０でユーザがスキャンデータを保存しようとするときに、必要な部分のみが記述されたＸＭＬファイルだけを解析すればよく、木構造の解析に要する時間を抑えることができるため、ユーザは快適にスキャンデータの保存を実行することができる。また、テキストファイルを解析結果としてスキャナ装置２０へ出力するため、スキャナ装置２０でＸＭＬファイルを解析する必要がない。更に、外部機器としてのスキャナ装置は、スキャンデータを、木構造に含まれるフォルダなどに保存したり木構造に含まれるフォルダから読み出したりすることが多いため、本発明を適用する意義が高い。
【００４１】
なお、本発明は上述した実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の態様で実施し得ることはいうまでもない。
【００４２】
例えば、上述した実施形態では、ＨＤＤ５４の木構造に含まれるフォルダ数Ｆや階層数Ｃに基づいてＸＭＬファイル７０を分割するか否かを判定するものとしたが、管理サーバ６０の処理能力（例えばＣＰＵのクロック数やメモリ容量など）が所定の処理能力（例えばクロック数が５００ＭＨｚや１ＭＨｚ、又はメモリが１２８Ｍｂや２５６Ｍｂなど）を下回るときにＸＭＬファイル７０を分割するものと判定してもよい。こうすれば、ＸＭＬファイル７０の解析処理時間に相関関係のある管理サーバ６０の処理能力を用いてＸＭＬファイル７０を分割するか否かを判定するため、木構造ファイルの解析処理にかかる時間を考慮して分割を実行するか否かを判定することができる。あるいは、木構造ファイル管理ルーチンのステップＳ２００でＸＭＬファイル７０を解析した結果、解析に要した時間が所定の許容処理時間（例えば５秒や１０秒）を超えたときに管理サーバ６０の処理能力が所定の処理能力を下回るものとしてＸＭＬファイル７０を分割するものと判定してもよい。こうすれば、実際の解析時間に基づいてＸＭＬファイル７０を分割するか否かを判定可能であるため、ファイルサーバ５０の木構造の情報を含むＸＭＬファイル７０の分割を一層適正に実行することができる。
【００４３】
上述した実施形態では、１階層に作成可能なフォルダ数を５０個に限るものとして説明したが、特に１階層に作成可能なフォルダ数を限らないものとしてもよい。このとき、ＸＭＬファイル７０の分割処理を、親フォルダを共通とする同一階層のフォルダの情報が記述されたＸＭＬファイルを各階層ごとに作成するものとして説明したが、図１４に示すように、親フォルダを共通とするフォルダ間でも分割するものとしてもよい。図１４は、他のＸＭＬファイル７０の分割処理の説明図である。具体的には、例えば、親フォルダを共通とする同一階層に閾値Ｆｒｅｆを超えるフォルダ数が含まれているときには、ＣＰＵ６１は、親フォルダを共通とするフォルダ間でも分割すると判定する。図１４に示すように、第１階層について、第１ＸＭＬファイル７１とＸＭＬファイル７５とに分割し、「第１階層０１」フォルダの子フォルダについて、ＸＭＬファイル７６とＸＭＬファイル７７とに分割する。こうしても、各ＸＭＬファイルを解析する時間が、許容されうる処理時間を超えることを防止可能であるため、ファイルサーバ５０の木構造のすべてを含む木構造ファイルを解析するのに比べてファイルサーバ５０の木構造の情報を効率よく解析することができる。
【００４４】
上述した実施形態では、あるいは、ＸＭＬファイル７０の分割処理を、親フォルダを共通とする同一階層のフォルダの情報が記述されたＸＭＬファイルを各階層ごとに作成するものとして説明したが、図１５に示すように、ＸＭＬファイルを解析したときに許容されうる処理時間を超えない範囲で、親フォルダを共通とするフォルダを階層別に分けずに分割するものとしてもよい。こうすれば、ＸＭＬファイルが必要以上に作成されてしまうのを抑制することができる。あるいは、ＸＭＬファイルを解析したときに許容されうる処理時間を超えない範囲となるよう上述した分割の態様を組み合わせてＸＭＬファイル７０の分割処理を実行するものとしてもよい。
【００４５】
上述した実施形態では、ＨＤＤ５４の木構造の情報がすべて含まれているＸＭＬファイル７０について分割処理を実行するものとしたが、例えば、すべての木構造の情報が含まれていないＸＭＬファイル（例えば第１ＸＭＬファイル７１）について分割処理を実行するものとしても構わない。
【００４６】
上述した実施形態では、ファイルサーバ５０と管理サーバ６０とが別々に構成されたスキャン情報管理システム１０として説明したが、ファイルサーバ５０と管理サーバ６０との機能を併せ持つファイル管理サーバとしてもよい。こうしても、上述した実施形態と同じ効果が得られる。
【００４７】
上述した実施形態では、ファイルサーバ５０でＨＤＤ５４の木構造の情報を含むＸＭＬファイル７０を作成し、この作成したＸＭＬファイル７０を管理サーバ６０が受信するものとしたが、例えば、ファイルサーバ５０でＨＤＤ５４の木構造の情報を含むテキストファイルを作成し、この作成したテキストファイルを管理サーバ６０が受信し、受信したテキストファイルに基づいて管理サーバ６０がＸＭＬファイル７０を作成してＲＡＭ６３に記憶するものとしてもよい。こうすれば、ファイルサーバ５０での処理負担を低減することができる。木構造の情報を含むテキストファイルは、例えば、各フォルダのアドレスを羅列しカンマなどで区切ったファイルなどとしてもよい。
【００４８】
上述した実施形態では、ファイルサーバ５０で木構造の変更があったときに、ＸＭＬファイル７０を更新し、この更新したＸＭＬファイル７０をファイルサーバ５０が管理サーバ６０へ送信出力するものとしたが、定期的に管理サーバ６０がＨＤＤ５４にアクセスすることによりＸＭＬファイル７０を取得するものとしてもよい。こうしても、ファイルサーバ５０の木構造の情報を含むＸＭＬファイル７０の分割を適正に実行することができる。
【００４９】
上述した実施形態では、ＨＤＤ５４の木構造の情報をマークアップ言語としてのＸＭＬで記述したファイルをＨＤＤ６４に保存してフォルダ情報の管理を行うとしたが、マークアップ言語としてはこれに限られず、例えば、木構造の情報をマークアップ言語としてのＸＨＴＭＬで記述したファイルを用いてもよいし、ＨＴＭＬで記述したファイルを用いてもよいし、ＳＧＭＬで記述したファイルを用いてもよい。
【００５０】
上述した実施形態では、外部機器をスキャナ装置２０として説明したが、外部機器を印刷装置としてもよいし、デジタルカメラとしてもよいし、携帯電話としてもよい。外部機器を印刷装置とした場合には、ＨＤＤ５４の木構造に含まれるフォルダに格納された画像ファイルを読み出すに際して、管理サーバ６０が画像ファイル名やフォルダ名を含むフォルダ情報を印刷装置に出力するようにしてもよい。また、外部機器をデジタルカメラとしたときには、デジタルカメラで撮影した画像ファイルをＨＤＤ５４に保存するに際して、上述した処理を実行するものとしてもよい。また、外部機器を携帯電話としたときには、ダウンロードした音楽ファイルや撮影した画像ファイルなどをＨＤＤ５４に保存するに際して、上述した処理を実行するものとしてもよい。
【図面の簡単な説明】
【００５１】
【図１】スキャン情報管理システム１０の構成の概略を示す構成図である。
【図２】スキャナ装置２０が備える操作パネル４０の説明図である。
【図３】ＨＤＤ５４の木構造の情報を含むＸＭＬファイル７０の説明図である。
【図４】ＸＭＬファイル７０に含まれる木構造の説明図である。
【図５】木構造ファイル更新ルーチンの一例を表すフローチャートである。
【図６】木構造ファイル管理ルーチンの一例を表すフローチャートである。
【図７】第１階層の情報を含む第１ＸＭＬファイル７１を作成する概念図である。
【図８】第１ＸＭＬファイル７１の説明図である。
【図９】第２階層の情報を含むＸＭＬファイルを作成する概念図である。
【図１０】第２ＸＭＬファイル７２の説明図である。
【図１１】第３階層の情報を含む第４ＸＭＬファイル７４を作成する概念図である。
【図１２】第４ＸＭＬファイル７４の説明図である。
【図１３】スキャンデータ保存処理をシーケンシャルに示す説明図である。
【図１４】他のＸＭＬファイル７０の分割処理の説明図である。
【図１５】他のＸＭＬファイル７０の分割処理の説明図である。
【符号の説明】
【００５２】
１０  スキャン情報管理システム、１２  ＬＡＮ、２０  スキャナ装置、２１  ＣＰＵ、２２  ＲＯＭ、２２ａ  スキャンデータ管理プログラム、２３  ＲＡＭ、２４  フラッシュメモリ、２５  Ｉ／Ｆ、２８  バス、２９  コントローラ、３０  スキャナ部、３１  スキャナ機構、３２  スキャナＡＳＩＣ、３３  ガラス面、３４  ラインイメージセンサ、３６  移動部、４０  操作パネル、４２  表示部、４４  操作部、４４ａ  カーソルキー、４４ｂ  決定キー、４４ｃ  スキャン開始キー、４４ｄ  登録キー、５０  ファイルサーバ、５１  ＣＰＵ、５２  ＲＯＭ、５３  ＲＡＭ、５４  ＨＤＤ、５４ａ  スキャンデータ、５５  Ｉ／Ｆ、６０  管理サーバ、６１  ＣＰＵ、６２  ＲＯＭ、６３  ＲＡＭ、６４  ＨＤＤ、６４ａ  ＸＭＬファイル管理プログラム、６５  Ｉ／Ｆ、７０  ＸＭＬファイル、７１  第１ＸＭＬファイル、７１ａ  リンク情報、７２  第２ＸＭＬファイル、７２ａ  リンク情報、７３  第３ＸＭＬファイル、７３ａ  リンク情報、７４  第４ＸＭＬファイル、７４ａ  リンク情報、７５  ＸＭＬファイル、７６  ＸＭＬファイル、７７  ＸＭＬファイル、８１  フォルダ選択画面、８２  カーソル、Ｍ  媒体。
【図１】
2007193660.tif 000003
【図２】
2007193660.tif 000004
【図３】
2007193660.tif 000005
【図４】
2007193660.tif 000006
【図５】
2007193660.tif 000007
【図６】
2007193660.tif 000008
【図７】
2007193660.tif 000009
【図８】
2007193660.tif 000010
【図９】
2007193660.tif 000011
【図１０】
2007193660.tif 000012
【図１１】
2007193660.tif 000013
【図１２】
2007193660.tif 000014
【図１３】
2007193660.tif 000015
【図１４】
2007193660.tif 000016
【図１５】
2007193660.tif 000017