説明

文書処理システム、及びプログラム

【課題】紙文書を電子化する際に発生する文字列の修正作業を効率化する手法を提案する。
【解決手段】本発明による文書処理システムは、文字列の修正画面において、修正すべき文字列か否かを判定し、修正すべき文字列に対してはアラート表示を施す機能と、文字列を修正する際には候補となる文字列をサジェスト表示する機能を有する。アラートを行うか否かを判定する際には、形態素解析や、既登録文字列や、辞書や、既に登録されたデータとの整合性などを活用することを特徴とする。サジェストする文字列は、既登録文字列や辞書との類似度や、既に登録されているデータにより算出される値の範囲や文字列を活用することを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、文書処理システム、及びプログラムに関し、例えば、紙文書に対してスキャン・OCRを施して得られたメタデータ文字列を効率的に修正する技術に関する。
【背景技術】
【0002】
企業など多くの組織では、オフィスソフトで作成したファイルや紙文書をスキャニングしたファイルなど大量のデータが日々生成され、ファイルサーバ等で保管される。これらの大量データの中から所望のファイルを探すときは、ファイルサーバ内のフォルダをたどりながら見つけるという手段が一般的である。しかしフォルダ構造が複雑である時や、ファイルを探したい人の意図しない構造でフォルダとして纏められていると、所望のファイルを探すのは非常に時間がかかってしまう。ファイルを探す別の方法として、全文検索を用いる手段があるが、これも2つの問題がある。
【0003】
1つは、キーワード検索だけでは見つけられないファイルがあることである(図1参照)。例えば、ある期間内の文書を全て探したい場合、全文検索では文書内の日付の文字列を「日付のデータ」として扱うことができないため、探すことができない。また他の例として、検索者が探したいキーワードと別の単語・語句が同じ意味として使われていた場合にそれが探せないという問題がある。
【0004】
もう1つは、大量の無関係なファイルにヒットしてしまうということである(図2参照)。例えば、顧客先としての銀行を探すつもりで検索すると、他のファイルの振込先にも書かれている場合や、見積番号などのIDをもとに検索すると、IDと同じ数字が金額などに書かれている場合である。これらの全文検索に起因する問題は、文書中のキーワードを意味のある文字として扱っていないために起こることである。
【0005】
そこで、文書のメタデータ(属性情報)を文書に対応付けて管理する方法が考えられている。例えば、特許文献1では、仮想フォルダシステムが提案されている。仮想フォルダシステムとは、ファイルにメタデータを設定しておき、仮想フォルダにはメタデータに対する検索条件を定義することで行う。仮想フォルダ参照時には、検索条件に基づいたファイルの検索結果を提示することにより、検索条件に応じた分類を実現する。例えば営業文書を管理する場面では、全てのファイルについて「文書種別名」(契約書・注文書・見積書など)と「起票日」をメタデータとして設定しておき、仮想フォルダに「文書種別名が“契約書”であるもの」という検索条件を割り当てておけば、その仮想フォルダを参照すると契約書の一覧が取得できる。同様に、別の仮想フォルダで「起票日が2009年1月〜3月のもの」と割り当てておけば、指定期間の文書を収集することができる。このように、仮想フォルダシステムでは、ファイルを意味的に分類するので、文書の効果的な活用が可能となる。
【0006】
紙文書をスキャンし文字データを登録する際には、OCR(Optical Character Reader)を使用する方法が一般的である。例えば、フォーマットが固定の帳票(固定帳票)を電子化する際には、あらかじめ記入されるべき文字列の種類と位置座標を定義しておき、定義された位置座標内の文字列を、定義された種類のメタデータとして保存する方法がとられることがある。図3は固定帳票の例を示した図である。文書種別、顧客名、起票日、案件IDが記入されるべき位置を定義しておき、この位置に当該文字列を記載するように帳票を作成する。そして印刷された固定帳票を電子化する際には、固定帳票の定義に基づいて文字列を認識し、メタデータとして保存する。
【0007】
そして、メタデータを修正する際には、元の文書を参照しながら行う。文書管理製品の多くは、メタデータ登録画面を用意しており、ユーザは文書を見ながらメタデータを手入力で修正する。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2003−323326号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
OCRは、その認識率が100%ではないため、文字を誤認することがある。そのため、ユーザは文字が誤認されているか否かをチェックし、さらにその文字を正しく修正する必要がある。
【0010】

【0011】
本発明はこのような状況に鑑みてなされたものである、紙文書に対して、スキャン・OCRを経て得られたメタデータ文字列の修正作業を効率的に行うための技術を提供するものである。
【課題を解決するための手段】
【0012】
上記課題を解決するために、本発明の文書処理システムでは、紙文書に対してスキャン・OCRを経て得られたメタデータの修正作業をする際に、メタデータの修正画面において、修正すべきデータか否かを算出・表示し(アラート機能)、修正後のデータの候補を算出・表示する(サジェスト機能)。
【0013】
そして、アラート機能は、対象文字列に対して形態素解析を施し、その結果によって実現することができる。また、メタデータ種類毎に用意された辞書DB及び/又は既に登録済の文字列が格納されたDBと、処理対象データ(対象文字列)とを比較し、その比較結果に基づいてアラート表示するか(修正が必要か)否か判断しても良い。さらに、処理対象データがあらかじめ定義されたフォーマットとマッチするか否かを判定し、その結果に基づいてアラート表示するか(修正が必要か)否か判断しても良い。また、処理対象データと、既に登録済のデータと比較し、その比較結果に基づいて(文書の作成日時の前後関係が矛盾する等)アラート表示するか(修正が必要か)否か判断しても良い。また、処理対象データ及びそれと関連あるデータとの関係(従属関係)と、既に登録済のデータ及びそれと関連あるデータとの関係(従属関係)に矛盾が生じているか否かを判定し、その判定結果に基づいて、アラート表示するか(修正が必要か)否か判断しても良い。
【0014】
また、サジェスト機能は、アラート機能によって判定された修正原因の種類に応じて、正しい文字列の候補、正しいフォーマット、正しい値(日時)の範囲を表示することを実現する。
【0015】
さらなる本発明の特徴は、以下本発明を実施するための形態および添付図面によって明らかになるものである。
【発明の効果】
【0016】
本発明によれば、紙文書に対してスキャン・OCRを施して得られる文字列の中から、修正すべき文字列を容易に発見することができ、さらに、修正すべき文字列を容易に設定することが可能となる。これにより、ユーザの文字列修正作業を効率的に行うことが可能となる。
【図面の簡単な説明】
【0017】
【図1】全文検索(キーワード検索)ではファイルを見つけられない例を示す図である。
【図2】全文検索(キーワード検索)で無関係なファイルがヒットしてしまう例を示す図である。
【図3】固定帳票のメタデータ設定の一例を示す図である。
【図4】本発明の実施形態に係る文字列修正システム(文書処理システム)の概略構成を示す図である。
【図5】メタデータ項目設定ファイルの一例を示す図である。
【図6】メタデータの一例を示す図である。
【図7】辞書データの一例を示す図である。
【図8】修正画面の一例を示す図である。
【図9】アラート判定処理の全体概要を説明するためのフローチャートである。
【図10】アラート判定処理における修正の必要性を判定する処理(ステップ907)の詳細を説明するためのフローチャートである。
【図11】形態素解析結果であって、エラーフラグを管理するデータの一例を示す図である。
【図12】形態素解析結果の一例を示す図である。
【図13A】同一案件IDの登録済データの一例(1)を示す図である。
【図13B】同一案件IDの登録済データの一例(2)を示す図である。
【図14】アラート結果の一例を示す図である。
【図15】サジェスト処理の詳細を説明するためのフローチャートである。
【図16A】サジェスト結果の一例(1)を示す図である。
【図16B】サジェスト結果の一例(2)を示す図である。
【図16C】サジェスト結果の一例(3)を示す図である。
【図16D】サジェスト結果の一例(4)を示す図である。
【発明を実施するための形態】
【0018】
以下、添付図面を参照して本発明の実施形態に係わる文字列修正技術について説明する。ただし、本実施形態は本発明を実現するための一例にすぎず、本発明の技術的範囲を限定するものではないことに注意すべきである。また、各図において共通の構成には同一の参照番号が付されている。
【0019】
<文字列修正システムの構成>
図4は、本発明の実施形態による文字列修正システム(文書処理システム)の概略構成を示す図である。当該文字列修正システムは、紙文書を予めスキャン・OCRを施して得られるスキャン画像及びスキャン画像の文字列データを蓄積するスキャンデータDB401と、スキャンデータから抽出したメタデータを格納するメタデータDB402と、メタデータとなり得る多数の文字列を格納する辞書DB403と、形態素解析時に使用する辞書を格納する形態素解析DB404と、メタデータの定義が記載されているメタデータ項目設定ファイル405(具体的な内容は図4参照)と、閾値や各種パラメータが記載されているパラメータ設定ファイル406と、検索結果やメタデータ設定画面の表示等を行う表示装置407と、データの入力や編集やメニューの選択などの操作を行うためのキーボード408及びマウスなどのポインティングデバイス409と、必要な演算処理、制御処理等を行う中央処理装置410と、を有している。
【0020】
スキャンデータDB401、メタデータDB402、辞書DB403、及び形態素解析DB404は、DB(データベース)としての実体が物理的に1つではなく複数である場合も対象としている。メタデータDB402には、確定されたメタデータだけでなく、未確定のメタデータも含まれる。よって、未確定のメタデータのみ抽出されて修正画面に表示されることになる。
【0021】
中央処理装置410は、メタデータDB402に対してメタデータの修正を行う画面の表示を行う修正画面表示部411と、メタデータDB402におけるメタデータの中から、修正すべき文字列を算出する修正対象算出部412と、修正画面表示部において、ユーザによって選択されたメタデータに対して修正後の文字列の候補を算出する修正候補算出部413と、を含んでいる。なお、修正対象算出部412及び修正候補算出部413は、バックグラウンドで動作するものである。また、以上に述べた処理部・データ・処理部等で用いられるプログラム等は、CD−ROM、DVD−ROM、MO、フロッピーディスク、USBメモリ等の種々の記録媒体に格納して提供することもできる。
【0022】
<メタデータ項目の設定ファイル>
図5は、固定帳票のメタデータ項目の設定ファイルの例である。図5はXML形式のテキストデータで、各メタデータの項目名(item)、データ型(type)、記載フォーマット(define)、記載範囲(upper left, lower right)、順序関係(constraint order)、順序式(order)、従属関係(dependent item)の各情報が記載されている。itemタグは各メタデータの種類を表す。typeタグはメタデータのデータ型を表す。例えばStringは文字列型を表し、文字列のデータが格納されることを示す。Intは整数型を表し、整数のデータが格納されることを示す。Dateは日付型を表し、日付のデータが格納されることを示す。また、各データは組み合わせることもできる。例えば、String + Intは、文字列データと整数データが組み合わされたデータを示す。各型は「+」演算子で結合される。また、データは正規表現で表すこともできる。その際のデータは、次に続くdefineタグで定義される。upper leftタグとlower rightタグは帳票上のメタデータの記載範囲を表す。upper leftタグは、記載範囲の左上の座標を表し、lower rightタグは、記載範囲の右下の座標を表す。文書管理システムでは、このような定義に基づいてメタデータを格納する。
【0023】
<メタデータ>
図6は、メタデータDB402内のメタデータの一例を示す図である。本発明では、メタデータを登録したファイルは、メタデータと共にここで管理するものとする。従って、メタデータが未登録のファイルはここには登録されていないものとする。
【0024】
図6で示されるように、メタデータDB402内のデータは表形式で管理され、1つのファイルが1行に対応している。表には、構成項目として、ファイルを一意に示すID601、メタデータが確定されているか否かを示す状態602、該当ファイルのファイルパス603、そして該当ファイルに登録されたメタデータ604が含まれる。
【0025】
メタデータ604は、本システムで管理するメタデータ項目毎に列を構成している。図6の例では、メタデータ項目として、文書種別名605、顧客名606、起票日607、案件ID608がある。図6では、いくつかのセルに文字の誤りが含まれている。
【0026】
<辞書データ>
図7は、辞書DB403内の辞書データの一例を示す図である。辞書データは、メタデータ項目毎に、メタデータの文字列となり得るリストを集めたテキストファイルで構成され、あらかじめDBに登録しておく。メタデータ項目「文書種別名」におけるメタデータのキーワードを集めたものを「文書種別名.txt」に、メタデータ項目「顧客名」におけるキーワードを集めたものを「顧客名.txt」に登録した例を示している。図7に示すように、キーワードごとに改行して入力する。
【0027】
なお、文書種別名や顧客名以外に、製品名やプロジェクト名などによって構成される辞書データも考えられるが、これらに限られるものではない。
【0028】
<修正画面>
図8は、修正画面表示部411が作成し、表示する修正画面の一例を示す図である。当該修正画面は、GUIのウインドウ上に、表形式で表されたメタデータの他に、処理実行時に押下される修正実行メニュー801と、各行の修正を実行するか否かを選択する処理チェックボックス802とを含んでいる。
【0029】
システムからこの画面が起動されると、修正画面表示部411は、状態が「未確定」となっているメタデータ一覧を表示し、また修正すべきセルを自動的にアラート表示する。また、メタデータが記載されているセルは編集可能であり、ユーザが各セルを選択すると、その選択動作に応答して修正候補算出部413が、修正候補の文字列の候補を算出し、修正画面表示部411がその候補を表示したり、あるいは、修正画面表示部411が、メタデータのフォーマットや、値の範囲を表すポップアップを表示させたり場合がある。これによりユーザは文字列の修正作業を効率的に行うことができる。ユーザが各セル内の文字列を修正後、修正実行メニューが選択されると、処理チェックボックス802がチェックされたメタデータが更新され、状態が「確定」となる。
【0030】
<アラート判定処理>
アラート判定処理は、図8の修正画面が表示されるタイミングと、図8の修正画面において、セル内の文字列が更新されるタイミングで実行される。
【0031】
図9は、修正対象算出部412において実行されるアラート判定処理の内容であって、修正画面が表示されるタイミングで実行される場合の処理の概要を示すフローチャートである。
【0032】
ステップ901では、修正対象算出部412は、変数Nにメタデータ未確定データ数を格納する。Nの初期値は、メタデータ修正画面に表示されているデータ数(ファイル数)となる。例えば、図8の画面には、スクロールバーがあるため全部は表示されていませんが、チェックの有無には関係なく画面に表示されているデータすべてが対象となる。仮に図8にスクロールバーがない状態であればN=4である。
【0033】
ステップ902では、修正対象算出部412は、Nが0か否かを判定する。0であれば、処理対象データがないことを示しており、処理はステップ910に進む。0でなければ、処理はステップ903に進む。
【0034】
ステップ903では、修正対象算出部412は、メタデータ未確定データを1つ選択する。このデータをFとする。
【0035】
ステップ904では、修正対象算出部412は、変数Mに処理対象メタデータ項目数を格納する。例えば、図8の例ではMは4となる。ステップ905では、Mが0か否かを判定する。0であれば、処理対象メタデータ項目がないことを示しており、処理はステップ909に進む。0でなければ、処理はステップ906に進む。
【0036】
ステップ906では、修正対象算出部412は、Fにおける処理対象メタデータを1つ選択する。このデータをGとする。
【0037】
ステップ907では、修正対象算出部412は、Gに対して修正の必要有無を判定する。ステップ907の詳細は、図10を用いて詳細に説明する。
【0038】
ステップ908では、修正対象算出部412は、Mに対してデクリメントを行う。このようにしてMが0になるまでループ処理が行われる。
【0039】
また、ステップ909では、修正対象算出部412は、Nに対してデクリメントを行う。Mと同様にNが0になるまでループ処理が行われる。
【0040】
Nに関するループ処理が終了すると、ステップ910では、修正対象算出部412は、ステップ907において設定されたエラーフラグに応じてメタデータがアラート表示される。
【0041】
<修正必要性有無の判定処理>
図10は、図9におけるステップ907の修正の必要有無の判定処理の詳細を説明するためのフローチャートである。
【0042】
修正の必要有無を判定する対象のメタデータ(Pとする)が読み込まれると、ステップ1001では、修正対象算出部412は、Pのデータ型をチェックする。データ型がString型であれば、処理はステップ1003に進む。String型とは、文字列を表すデータ型である。String型でなければ、処理はステップ1002に進む。
【0043】
ステップ1002では、修正対象算出部412は、Pのフォーマットをチェックする。メタデータ項目設定ファイル405におけるメタデータフォーマットと照合し、正しければ処理はステップ1005に進む。正しくなければ、処理はステップ1006に進む。
【0044】
ステップ1003では、修正対象算出部412は、辞書DB403上の当該メタデータ項目の文字列データ、及びメタデータDB402において既に登録済のメタデータにおける当該メタデータ項目の文字列データと、Pを比較する。その結果、完全一致する文字列が存在すれば、処理はステップ1007に進む。完全一致する文字列が存在しなければ、処理はステップ1004に進む。メタデータDB402に格納された確認済の文字列データとの同一性もチェックするので、辞書DBにはないが、今までの処理で正しいと判断された文字列を再度修正対象とすることが無くなる。
【0045】
ステップ1004では、修正対象算出部412は、Pに対して形態素解析を行う。形態素解析の結果、未定義語が一定以上含まれていれば、処理はステップ1006に進み、修正対象算出部412は、エラーフラグを「STRING」(文字列に誤りがあることを示すエラーフラグ。エラーフラグについては後述する)に設定する。未定義語が一定以上含まれていなければ、処理はステップ1007に進む。なお、この際の閾値は、文書の状態や環境等の状況などによって自由に設定可能である。この閾値は、パラメータ設定ファイル406に格納されている。
【0046】
ここで、形態素解析について説明する。図12は、形態素解析結果の一例を示す図である。形態素解析結果は、対象文字列、形態素文字列、品詞の項目から構成される。例えば、「西戸塚≠ャピタル」は、形態素解析の結果、「西」、「戸塚」、「≠」、「ャピタル」と分解される。形態素解析を行う際には、形態素解析DB404の辞書データが使用される。この辞書には、単語と品詞のデータが格納されている。形態素解析の結果、辞書登録単語であれば、品詞データが存在するが、辞書登録単語でなければ品詞データが存在しない。一般に、正確にOCRで認識された文字列は、意味のある文字列であるため、未定義語が含まれる可能性は低い。しかし、OCRで誤認識された文字列は未定義語が多く含まれる可能性が高い。
【0047】
本発明では、この現象を利用して、誤認識であるか否かを判定する材料としている。「西戸塚≠ャピタル」は、元の文字列は「西戸塚キャピタル」であるがOCRが誤認識したためこのような文字列となっている。「西戸塚キャピタル」と認識されていれば、形態素解析の結果、「西」、「戸塚」、「キャピタル」と分解され、すべて形態素解析DBに登録済の単語で構成される。「西戸塚≠ャピタル」の場合、形態素解析結果は図12のようになり、未定義語が含まれる。これにより修正すべき文字列とみなすことができる。
【0048】
ステップ1005では、修正対象算出部412は、メタデータの順序関係の正当性を判定する。順序関係の正当性は、関連するデータの中で順序に規則性を持つメタデータが、正しい規則に基づいているか否かの観点で決定される。例えば、営業証憑において同一案件には複数の書類が存在し、例えば見積書、注文書、請求書などがある。これらの書類は通常必ず見積書、注文書、請求書の順番で生成される。そのため、これらの書類の起票日は、古い書類から見積書、注文書、請求書の順番となる。もしこれらの書類の起票日がこの順番となっていなければ、OCRの誤認識などの理由により、誤認識されたメタデータと考えることができる。順序関係の正当性を判定するため、まずメタデータ項目設定ファイル405を参照し、処理中のメタデータ項目に、「constraint order」タグが含まれるか否かを判定する。含まれていなければ、修正対象算出部412は、順序関係は正しいと判定し、処理をステップ1007に進ませる。含まれていれば、修正対象算出部412は、さらに順序関係の正当性を調べる。正しければ、処理はステップ1007に進み、誤っていれば処理はステップ1006に進み、修正対象算出部412がエラーフラグを「ORDER」に設定する。順序関係を調べるには、まず「constraint order」タグの子要素の「group item」タグと「order item」タグと「order」タグを読み取る。「group item」タグは、処理中のデータを含む関連するデータをグルーピングするタグである。例えば、同一案件に含まれる、見積書、注文書、請求書などは同一グループであるため、「group item」タグとして「案件ID」が付与される。ただし「group item」タグは「constraint order」タグの子要素にのみ付与される。
【0049】
ステップ1006では、修正対象算出部412は、エラーフラグを「FORMAT」に更新する。ここで、エラーフラグとは、各メタデータにどのようなアラートを表示するかを設定するためのフラグである。図11は、エラーフラグを管理するデータの一例を示している。このデータは、メタデータを示すIDと、各メタデータ項目名に対応するエラーフラグで構成される。エラーフラグは、図8の修正画面に表示されているメタデータに対するデータでありメモリ上に記憶される。そして、修正画面が開かれると生成され、閉じられると消去される。また、各エラーフラグの初期値は「CORRECT」である。エラーフラグは5種類あり、「CORRECT」は文字列が正しいと判定されアラートの必要がないことを示す。「STRING」は文字列に誤りがあると判定されたことを示す。「FORMAT」は、文字列のフォーマットに誤りがあると判定されたことを示す。「ORDER」は、関連する他のメタデータと比較した結果、値の順序関係に誤りがあると判定されたことを示す。「DEPENDENT」は、関連する他のメタデータと比較した結果、本来格納されるべき文字列と異なると判定されたことを示す。
【0050】
ステップ1007では、修正対象算出部412は、同一の「group item」タグを持つデータの中で、「order item」タグのメタデータ項目が、「order」タグに指定された文字列である場合に、処理中のメタデータ項目が「order」タグで指定された順番となっているか否かを判定する。図13Aに例を示す。図13Aは、同一案件IDを持つデータの例である。IDが050と051のデータは、確定済であり、102のデータは未確定となっている。これらのデータのメタデータ定義は、図4のメタデータ項目設定ファイルで規定されている。IDが102の起票日に対して順序関係の正当性を判定する。起票日は「constraint order」タグが設定されているため、順序関係が定義されているメタデータ項目である。同一の案件IDをもつデータは、図13Aに示すデータである。これらのデータの中で、「order item」タグで規定される文書種別名において、起票日は、見積書、注文書、請求書の順番でなければならない。しかし、IDが102のデータの起票日は、他の2つのデータよりも古い日付である。このため、IDが102のデータの起票日は、順序関係に誤りがあると考えられる。
【0051】
また、ステップ1007では、修正対象算出部412は、メタデータの従属関係の正当性を判定する。従属関係の正当性は、あるメタデータ項目が、他のメタデータ項目に従属している場合に、本来格納されるべき値が格納されているか否かの観点で決定される。例えば、営業証憑において、同一案件では一般に顧客名は同一となる。そのため、もし同一案件で顧客名が異なっていた場合、格納されているメタデータは誤りと考えることができる。従属関係の正当性を判定するため、まずメタデータ項目設定ファイル405を参照し、処理中のメタデータ項目に「dependent item」タグが含まれているか否かを判定する。含まれていなければ、修正対象算出部412は、従属関係が正しいと判定し、図10のフローチャートで示される処理を終了する。含まれていれば、修正対象算出部412は、さらに従属関係の正当性を調べ、正しければ図10のフローチャートを終了し、誤っていれば処理をステップ1008に移行させ、エラーフラグを「DEPENDENT」に設定する。従属関係の正当性を調べるには、「dependent item」タグに設定されているメタデータ項目が共通するデータにおいて、処理中のメタデータ項目が、確定済データの当該メタデータ項目の値と同一か否かを調べる。図13Bに例を示す。図13Bは、同一案件IDを持つデータの例である。IDが070と071のデータは、確定済であり、103のデータは未確定である。これらのデータのメタデータ定義は、図4のメタデータ項目設定ファイルで規定されている。IDが103の起票日に対して従属関係の正当性を判定する。これらのデータにおいて、顧客名には「dependent item」タグが設定されているため、顧客名は案件IDに従属する。しかし、IDが103の顧客名は、確定済の他の2つのデータの顧客名とは異なる。このため、IDが103の顧客名は、従属関係に誤りがあると考えることができる。
【0052】
<アラート判定結果>
図14は、アラート判定結果の一例である。修正すべきメタデータが色分けして表示されている(1401)。これにより、ユーザは修正すべきメタデータを簡単にチェックすることができ、見落とすリスクも減少する。
【0053】
また、アラート判定処理は、修正画面において、セル内の文字列が更新されるタイミングでも実行される。この場合は、図10に示すフローチャートに沿った処理が再度行われる。図10のフローチャートの処理の結果、設定されたエラーフラグに応じたアラートが表示される。
【0054】
なお、上記説明では各メタデータのエラーフラグがいずれか1つの値のみを持ち、該当するエラーフラグに関するアラートのみを表示する場合の例を示した。
【0055】
しかし、メタデータには同時に複数の誤りが含まれることもあり得る。
この点、本発明では、複数のアラートを同時に表示することも可能である。その場合はエラーフラグをアラートの種類毎に定義し、各アラートの必要の有無を当該エラーフラグに設定する。そしてアラート表示時にはエラーフラグを参照しアラートが必要な項目についてアラートを行う。
【0056】
<サジェスト処理>
図15は、修正候補算出部413において実行されるサジェスト処理の内容を説明するためのフローチャートである。
【0057】
ステップ1501では、修正候補算出部413は、メタデータ修正画面においてメタデータが格納されているセルに対するユーザの入力(選択)を受け付ける。
【0058】
ステップ1502では、修正候補算出部413は、選択されたメタデータ(Sとする)のエラーフラグを調べ、エラーフラグに応じて後の処理を行う。エラーフラグが「CORRECT」の場合は、メタデータは正しい値であるとみなし、処理はそのままステップ1508に進む。
【0059】
ステップ1503は、エラーフラグが「STRING」の場合の処理であり、このときはメタデータの文字列が誤認識されていることになる。修正候補算出部413は、正しい文字列を提示するため、まずSとメタデータDB402および辞書DB403の当該メタデータ項目の値を比較する。比較する際には、任意の文字列マッチング手法が適用可能であるが、例えば、DPマッチングでマッチング可能である。
【0060】
ステップ1507では、修正候補算出部413は、ステップ1503で行ったマッチング結果の中から、マッチ度が高い文字列の上位から順に表示装置407に表示する。図16Bは、この時のサジェスト画面例を示している。なお、太字はマッチした文字を表している。ユーザは、サジェスト表示された文字列の中から任意の文字列を選択可能である。このように修正候補の文字列が表示されることにより、ユーザは文字列の修正を容易に行うことができる。
【0061】
ステップ1504は、エラーフラグが「FORMAT」の場合の処理であり、このときはメタデータのフォーマットが異なっていることになる。修正候補算出部413は、正しいフォーマットを提示するため、メタデータ項目設定ファイル405における、処理中のメタデータ項目の「define」タグの内容をポップアップする。図16Aは、この時のポップアップ画面例を示している。なお、この例では、メタデータの定義以外に例が示されているが、これはメタデータ項目設定ファイル内に例えば「example」タグを規定し、その中に例示したい文字列を設定し、ポップアップ時にその文字列を表示することで実現可能である。
【0062】
ステップ1505は、エラーフラグが「ORDER」の場合の処理であり、このときはメタデータの順序関係が誤っていることになる。修正候補算出部413は、正しいデータの範囲を提示するため、メタデータ項目設定ファイル405における定義を読み取り、取りうる値の範囲をポップアップする。図16Cは、この時のポップアップ画面例を示している。
【0063】
ステップ1506は、エラーフラグが「DEPENDENT」の場合の処理であり、このときはメタデータの従属関係が誤っていることになる。修正候補算出部413は、正しい文字列を提示するため、メタデータ項目設定ファイル405における、処理中のメタデータ項目の「dependent item」タグを読み取り、従属しているメタデータ項目が共通するデータの確定済データを参照し、該当するメタデータをサジェスト表示する。図16Dは、この時のサジェスト画面例を示している。ユーザは、サジェスト表示された文字列を選択することで、文字列の修正を容易に行うことができる。
【0064】
ステップ1508では、修正候補算出部413は、文字列が修正されたか否かを判定する。文字列が修正されていれば、処理はステップ1509に進み、文字列が修正されていなければ処理は終了する。
【0065】
ステップ1509では、修正候補算出部413は、修正画面における処理中のメタデータの表示文字列を、修正後の文字列で更新する。
【0066】
ステップ1510では、修正候補算出部413は、修正後の文字列に対して再度修正の必要有無を判定する。修正後の文字列が正しい文字列とは限らないためである。この処理は、図10のフローチャートに従って行われる。
【0067】
ステップ1511では、修正候補算出部413は、ステップ1510の処理で設定されたエラーフラグに応じてアラート表示を行う。なお、前述したようにエラーフラグを項目毎に設定すれば、アラート処理と同様にサジェスト処理も複数同時に行うことが可能である。
【0068】
<まとめ>
以上説明したように、本実施形態によれば、メタデータデータベースに格納された複数の文書のそれぞれについて複数のメタデータの中で修正対象となるメタデータを抽出し、そのメタデータが修正必要であることを示すアラート表示を行う。また、修正対象のメタデータと辞書データベースに含まれる辞書データとを照合し、類似したデータを修正候補としてサジェスト表示を行う。これにより、紙文書に対してスキャン・OCRを施して得られた文字列を容易に発見・修正することが可能となり、ユーザにとってストレスのない形でのメタデータ設定を実現できる。
【0069】
処理対象データが修正された場合に、修正後のデータに対して、再度修正が必要か否か判断し、修正が必要な場合には、再度アラート表示をする。これにより、最終的に正しいメタデータが抽出されるようになる。
【0070】
また、複数のメタデータの中の処理対象データに対して形態素解析を実行し、当該形態素解析により得られるデータが形態素解析DBの形態素解析辞書データに存在するか否か判断する。そして、形態素解析により得られるデータの数が所定数未満の場合に、修正対象であると判定する。これにより、OCRの認識処理に用いる形態素解析DBをメタデータの修正の必要性有無の判定処理に流用することができるので、当該文書処理システムを実現する上でのコストを抑えることが可能となる。
【0071】
また、複数のメタデータの中の処理対象データが文字列以外のデータ(日付や案件ID番号等)である場合、処理対象データが予め定義されたフォーマットで記述されているか判断し、フォーマットで記述されていない処理対象データを修正対象のメタデータとして抽出する。これにより、辞書DBにない数字等の認識誤りを指摘して修正させることが可能となる。
【0072】
さらに、複数のメタデータの中の処理対象データが既に登録済のデータ(確定済のメタデータ)と比較し、処理対象データが登録済のデータと矛盾が生じているか否か判断する。矛盾が生じている場合に、処理対象データを修正対象のメタデータとして抽出する。なお、この場合の矛盾とは、登録済のデータの中に、処理対象データを持つ文書の案件IDと同一の案件IDを持つ他の文書がある場合、これらの文書間の作成順序が正当でない場合や、登録済のデータを持つ文書における各メタデータの項目の従属関係と、処理対象データを持つ文書におけるメタデータの項目の従属関係とが異なる場合等が該当する。これにより、1つのメタデータ項目の正誤だけでなく、項目間及び複数の文書との関係での正誤も判定でき、最終的に、適切なメタデータを抽出することができるようになる。
【0073】
また、サジェスト表示も、修正の原因に対応して行うことができる。つまり、文字列の場合、修正対象となった処理対象データと、メタデータデータベース及び辞書データベースを比較し、マッチング度が高い文字列データを修正候補としてサジェスト表示したり、メタデータの記述形式を定義するメタデータ項目設定ファイルにおいて定義されている適切なフォーマットを修正候補としてサジェスト表示したり、正当な作成順序が担保されるようなデータを修正候補としてサジェスト表示したり、正当な従属関係となるような文字列データを修正候補としてサジェスト表示したりすることが可能となる。
【0074】
なお、本発明は、実施形態の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をシステム或は装置に提供し、そのシステム或は装置のコンピュータ(又はCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、CD−ROM、DVD−ROM、ハードディスク、光ディスク、光磁気ディスク、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどが用いられる。
【0075】
また、プログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータ上のメモリに書きこまれた後、そのプログラムコードの指示に基づき、コンピュータのCPUなどが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。
【0076】
また、実施の形態の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することにより、それをシステム又は装置のハードディスクやメモリ等の記憶手段又はCD−RW、CD−R等の記憶媒体に格納し、使用時にそのシステム又は装置のコンピュータ(又はCPUやMPU)が当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしても良い。
【符号の説明】
【0077】
401…スキャンデータDB
402…メタデータDB
403…辞書DB
404…形態素解析DB
405…メタデータ項目設定ファイル
406…パラメータ設定ファイル
407…表示装置
408…キーボード
409…マウス
410…中央処理装置
411…修正画面表示部
412…修正対象算出部
413…修正候補算出部
601…ファイルID
602…状態
603…ファイルパス
604…メタデータ全体
605…文書種別名
606…顧客名
607…起票日
608…案件ID
801…修正実行メニュー
802…処理チェックボックス
1401…アラート表示されたメタデータ
1601…フォーマット表示ポップアップ
1602…入力候補文字列サジェスト
1603…データ範囲ポップアップ
1604…適正文字列サジェスト

【特許請求の範囲】
【請求項1】
複数の紙文書に対してスキャン・OCRを経て得られ、複数の文書毎に複数のメタデータを格納するメタデータデータベースと、
前記メタデータ文字列となりうる文字列を格納する辞書データベースと、
表示装置と、
入力デバイスと、
中央処理装置と、を有し、
前記中央処理装置は、
前記メタデータデータベースに格納された前記複数の文書のそれぞれについて前記複数のメタデータの中で修正対象となるメタデータを抽出し、そのメタデータが修正必要であることを示すアラート表示を前記表示装置に表示し、
前記修正対象のメタデータと前記辞書データベースに含まれる辞書データとを照合し、類似したデータを修正候補として前記表示装置にサジェスト表示することを特徴とする文書処理システム。
【請求項2】
請求項1において、
さらに、形態素解析に使用する形態素解析辞書データを格納する形態素解析データベースを有し、
前記中央処理装置は、前記複数のメタデータの中の処理対象データに対して形態素解析を実行し、当該形態素解析により得られるデータが前記形態素解析辞書データに存在するか否か判断し、前記形態素解析により得られるデータの数が所定数未満の場合に、前記修正対象のメタデータであると判定することを特徴とする文書処理システム。
【請求項3】
請求項1において、
前記中央処理装置は、前記複数のメタデータの中の処理対象データが文字列以外のデータである場合、前記処理対象データが予め定義されたフォーマットで記述されているか判断し、前記フォーマットで記述されていない前記処理対象データを前記修正対象のメタデータとして抽出することを特徴とする文書処理システム。
【請求項4】
請求項1において、
前記中央処理装置は、前記複数のメタデータの中の処理対象データが既に登録済のデータと比較し、前記処理対象データが前記登録済のデータと矛盾が生じているか否か判断し、矛盾が生じている場合に、前記処理対象データを前記修正対象のメタデータとして抽出することを特徴とする文書処理システム。
【請求項5】
請求項4において、
前記中央処理装置は、予め定義されたフォーマットで記述された文字列以外のデータである場合、前記登録済のデータの中に前記処理対象データを持つ文書の案件IDと同一の案件IDを持つ他の文書があるか否か判断し、これらの文書間の作成順序が正当でない場合に、前記処理対象データを前記修正対象のメタデータとして抽出することを特徴とする文書処理システム。
【請求項6】
請求項4において、
前記中央処理装置は、予め定義されたフォーマットで記述された文字列以外のデータである場合、前記登録済のデータの中に前記処理対象データを持つ文書の案件IDと同一の案件IDを持つ他の文書があるか否か判断し、前記登録済のデータを持つ文書における各メタデータの項目の従属関係と、前記処理対象データを持つ文書におけるメタデータの項目の従属関係とに矛盾がある場合に、前記処理対象データを前記修正対象のメタデータとして抽出することを特徴とする文書処理システム。
【請求項7】
請求項2において、
前記中央処理装置は、修正対象となった前記処理対象データと、前記メタデータデータベース及び前記辞書データベースを比較し、マッチング度が高い文字列データを前記修正候補としてサジェスト表示することを特徴とする文書処理システム。
【請求項8】
請求項3において、
前記中央処理装置は、修正対象となった前記処理対象データに対して、メタデータの記述形式を定義するメタデータ項目設定ファイルにおいて定義されている適切なフォーマットを前記修正候補としてサジェスト表示することを特徴とする文書処理システム。
【請求項9】
請求項5において、
前記中央処理装置は、修正対象となった前記処理対象データに対して、正当な作成順序が担保されるようなデータを前記修正候補としてサジェスト表示することを特徴とする文書処理システム。
【請求項10】
請求項6において、
前記中央処理装置は、修正対象となった前記処理対象データに対して、正当な従属関係となるような文字列データを前記修正候補としてサジェスト表示することを特徴とする文書処理システム。
【請求項11】
請求項1乃至10の何れか1項において、
前記中央処理装置は、前記処理対象データが修正された場合に、修正後のデータに対して、再度修正が必要か否か判断し、修正が必要な場合には、再度アラート表示をすることを特徴とする文書処理システム。
【請求項12】
コンピュータと記憶装置を、請求項1に記載の文書処理システムとして機能させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13A】
image rotate

【図13B】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16A】
image rotate

【図16B】
image rotate

【図16C】
image rotate

【図16D】
image rotate


【公開番号】特開2011−198285(P2011−198285A)
【公開日】平成23年10月6日(2011.10.6)
【国際特許分類】
【出願番号】特願2010−66834(P2010−66834)
【出願日】平成22年3月23日(2010.3.23)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.フロッピー
【出願人】(000233055)株式会社日立ソリューションズ (1,610)
【Fターム(参考)】