(57)【要約】【課題】表領域を含んだ対象物に出力される表形式データにおける各行の特徴を、正しく識別する。【解決手段】表領域を含んだ対象物のデータから、表領域に出力される表形式データを取得する。そして、表形式データの各行について、各列のセルにおける実データの有無、及び行の特徴を示す属性パターンを識別する。ここで、実データを含まないセルが存在する行を識別した場合は、当該識別した行の属性パターン及び当該識別した行の直前の行の属性パターンに基づいて、実データを含まないセルにおいてデータ表示が省略されているか否かを判定する。その結果、実データを含まないセルにおいてデータ表示が省略されている場合に、直前の行から対応データを取得して、当該対応データを識別した行の実データを含まないセルに補完する。そして、識別した行に対応データが補完された状態で、当該識別した行の属性パターンを再識別する。【選択図】  図１０
2015191277.tif 000002
【特許請求の範囲】
【請求項１】
表領域を含んだ対象物のデータから、前記表領域に出力される表形式データを取得し、
前記表形式データの各行について、各列のセルにおける実データの有無、及び行の特徴を示す属性パターンを識別し、
実データを含まないセルが存在する行を識別した場合は、当該識別した行の前記属性パターン及び当該識別した行の直前の行の前記属性パターンに基づいて、前記実データを含まないセルにおいてデータ表示が省略されているか否かを判定し、
前記実データを含まないセルにおいてデータ表示が省略されている場合に、前記直前の行から対応データを取得して、当該対応データを前記識別した行の前記実データを含まないセルに補完し、
前記識別した行に前記対応データが補完された状態で、当該識別した行の前記属性パターンを再識別する
処理をコンピュータが実行するデータ識別方法。
【請求項２】
前記属性パターンは、行に含まれる各列のセルのデータ型及び行の書式情報を含む、請求項１記載のデータ識別方法。
【請求項３】
前記取得する処理は、前記対象物のデータが複数のページの表領域に出力される表形式データを含んでいるときに、前記対象物のデータに含まれる位置情報に基づいて各ページの表領域の位置を特定し、当該表領域の位置に基づいて、複数のページのそれぞれの表領域に出力される前記表形式データが連続していることを検出し、
前記補完する処理は、前記識別した行が、２ページ目以降のページにおける表領域の最初の行であって、当該表領域に出力される前記表形式データが直前のページに出力される表形式データと連続しているときに、当該識別した行が出力されるページの直前のページに出力される表形式データの最後の行を前記直前の行とする、請求項１又は２に記載のデータ識別方法。
【請求項４】
前記補完する処理は、前記識別した行における前記実データを含まないセル以外の前記属性パターンが、前記直前の行における前記実データを含まないセルと同一の列以外の前記属性パターンと一致するときに、前記対応データを前記識別した行の前記データが無い列に補完する、請求項１〜３のいずれか１項に記載のデータ識別方法。
【請求項５】
前記補完する処理は、前記対応データの表記形式が、補完対象となり得るデータの所定の表記形式と一致するときに、前記対応データを前記識別した行の前記実データを含まないセルに補完する、請求項１〜４のいずれか１項に記載のデータ識別方法。
【請求項６】
前記識別した行に前記対応データが補完された状態で、前記表形式データの各行を前記属性パターンごとに分類した分類データを生成する処理をさらに含む、請求項１〜５のいずれか１項に記載のデータ識別方法。
【請求項７】
行の所定の書式情報が異なり且つ当該書式情報以外の属性パターンが一致している２つの前記属性パターンにそれぞれ該当する複数の行が存在する場合であって、それぞれの前記属性パターンに該当する行の行数の差分が所定閾値以下のときに、当該２つの前記属性パターンにそれぞれ該当する行を、同一の前記属性パターンとして統合する処理をさらに含む、請求項１〜６のいずれか１項に記載のデータ識別方法。
【請求項８】
表領域を含んだ対象物のデータから、前記表領域に出力される表形式データを取得し、
前記表形式データの各行について、各列のセルにおける実データの有無、及び行の特徴を示す属性パターンを識別し、
実データを含まないセルが存在する行を識別した場合は、当該識別した行の前記属性パターン及び当該識別した行の直前の行の前記属性パターンに基づいて、前記実データを含まないセルにおいてデータ表示が省略されているか否かを判定し、
前記実データを含まないセルにおいてデータ表示が省略されている場合に、前記直前の行から対応データを取得して、当該対応データを前記識別した行の前記実データを含まないセルに補完し、
前記識別した行に前記対応データが補完された状態で、当該識別した行の前記属性パターンを再識別する
処理をコンピュータに実行させるデータ識別プログラム。
【請求項９】
表領域を含んだ対象物のデータから、前記表領域に出力される表形式データを取得するデータ取得部と、
前記表形式データの各行について、各列のセルにおける実データの有無、及び行の特徴を示す属性パターンを識別する属性識別部と、
実データを含まないセルが存在する行を識別した場合は、当該識別した行の前記属性パターン及び当該識別した行の直前の行の前記属性パターンに基づいて、前記実データを含まないセルにおいてデータ表示が省略されているか否かを判定し、前記実データを含まないセルにおいてデータ表示が省略されている場合に、前記直前の行から対応データを取得して、当該対応データを前記識別した行の前記実データを含まないセルに補完するデータ補完部と、
前記識別した行に前記対応データが補完された状態で、当該識別した行の前記属性パターンを再識別する属性再識別部と
を備えたデータ識別装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表形式の出力データに含まれる行の特徴を識別する技術に関する。
【背景技術】
【０００２】
電子帳票を利用する業務においては、帳票の閲覧、検索や印刷等を行うだけでなく、帳票データに含まれる表領域において表形式で出力される明細データを、他のアプリケーションや分析ツール等の入力データとして利用する場合がある。このような場合に、明細データから、特定の共通した特徴（属性）を有する明細行を抽出することがある。
ここで、帳票の明細データにおいては、例えばデータベースのテーブルや表計算ソフトの表等と異なり、同一の列のセルであっても、明細行によって、異なる項目内容のデータが不規則に配置される場合がある。したがって、明細行の特徴を規則的に自動識別することが難しい場合がある。
なお、従来技術の一例として、次のようなものがある。すなわち、当該技術では、電子帳票に含まれる文字列、文字列の位置情報、及び文字列の書式情報（フォント名、サイズ等）を含むテキストデータから、各行毎の特徴を示す行情報を抽出する。そして、電子帳票内の繰り返し明細の領域において抽出した行情報を解析する。これにより、繰り返し明細が何行単位で構成されているかを特定する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−３０９６１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、帳票の明細データでは、例えば、同一列のセルにおいて直前の明細行と同じ内容のデータが格納される箇所については、そのデータの表記（表示）を省略する場合がある。この場合、その列のセルは空欄となり、本来同じ意味を示すデータが格納されるはずのセルであっても、書式情報が異なるものとなる。また、例えば、文字列のフォントやサイズ等が同一であっても、特定の行に網掛けをしたりすることによって、ユーザに別の項目であることを示す場合もある。このため、従来技術を適用した場合、各行の特徴を正しく識別できない場合がある。
【０００５】
なお、このような問題は、帳票に限らず、表領域を含んだ他の態様の対象物においても発生し得るものである。
そこで、本発明の１つの側面では、表領域を含んだ対象物に出力される表形式データにおける各行の特徴を、正しく識別できるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
本発明の１つの側面では、表領域を含んだ対象物のデータから、表領域に出力される表形式データを取得する。そして、表形式データの各行について、各列のセルにおける実データの有無、及び行の特徴を示す属性パターンを識別する。ここで、実データを含まないセルが存在する行を識別した場合は、当該識別した行の属性パターン及び当該識別した行の直前の行の属性パターンに基づいて、実データを含まないセルにおいてデータ表示が省略されているか否かを判定する。その結果、実データを含まないセルにおいてデータ表示が省略されている場合に、直前の行から対応データを取得して、当該対応データを識別した行の実データを含まないセルに補完する。そして、識別した行に対応データが補完された状態で、当該識別した行の属性パターンを再識別する。
【発明の効果】
【０００７】
本発明の１つの側面によれば、表領域を含んだ対象物に出力される表形式データにおける各行の特徴を、正しく識別することが可能となる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態における帳票データの出力イメージの一例を示す説明図である。
【図２】本実施形態における帳票データの出力イメージの一例を示す説明図である。
【図３】本実施形態における分類済み明細データの一例を示す説明図である。
【図４】本実施形態におけるシステムの全体構成及び帳票提供サーバの機能構成の一例を示す説明図である。
【図５】本実施形態における帳票データ（項目情報）の一例を示す説明図である。
【図６】本実施形態における帳票データ（罫線情報）の一例を示す説明図である。
【図７】本実施形態におけるパターンリストの一例を示す説明図である。
【図８】本実施形態における補完形式リストの一例を示す説明図である。
【図９】本実施形態におけるデータ抽出処理の一例を示すフローチャートである。
【図１０】本実施形態における明細行解析処理の一例を示すフローチャートである。
【図１１】本実施形態における帳票提供サーバ及びクライアントのハードウェア構成の一例である。
【発明を実施するための形態】
【０００９】
［本実施形態の背景及び概要］
まず、本実施形態において処理対象とするデータと、本実施形態において実現するデータ抽出処理の概要について説明する。
【００１０】
本実施形態では、表領域を含んだ対象物のデータの一例として、帳票データを処理対象とする。図１及び図２に、本実施形態において処理対象とする帳票データの帳票印刷イメージ（出力イメージ）の一例を示す。図１は帳票印刷イメージの１ページ目、図２は２ページ目を示している。帳票データは、このような帳票を出力するために必要な情報、すなわち、帳票出力する対象となる文字列、各文字列の位置情報、データ型（文字、日付、数値等）、書式情報（フォント、網掛け、強調表示等のプロパティ）、及び罫線等の情報を有している。なお、具体的なデータ構造については後述する。
【００１１】
当該図１及び図２に示す帳票データの一例は、ヘッダ部分（帳票のタイトル、帳票の発行日付等、伝票番号等）、表領域の明細部分、フッタ部分（ページ番号等）を備える。このうち、明細部分に出力される表形式の明細データは、日次明細行（図１の明細部分では１〜３行目、５〜８行目及び１０〜１３行目、図２の明細部分では１〜２行目、４〜６行目）、月小計行（図１の明細部分では４行目及び９行目、図２の明細部分では３行目及び７行目）、及び合計行（図２の明細部分の８行目）の３種類の特徴を有する明細行を含む。
【００１２】
ここで、例えば当該帳票データの明細部分に出力される明細データのうち、日次明細行のデータを、他のアプリケーションや分析ツール等において利用する場合を想定する。この場合、当該帳票データの明細部分から、日次明細行を識別して抽出することとなる。
【００１３】
通常、同じ特徴を有する明細行は、各列のセルのデータ型が共通し、且つ共通する書式情報を有することが多い。換言すれば、明細行に含まれる各列のセルのデータ型及び行の書式情報を識別することで、その明細行の特徴を識別することができる。なお、本実施形態において、明細行に含まれる各列のセルのデータ型及び行の書式情報を含んだ情報を、明細行の属性パターンという。同じ特徴の明細行を抽出するには、同じ属性パターンを有する明細行を抽出すればよい。
【００１４】
しかし、例えば図１の明細部分の７行目の日次明細行に着目すると、月日の列のセルの実データが含まれず、空欄となっている。これは、１つ上の６行目の日次明細行の月日と、当該７行目の日次明細行の月日が同じであるため、帳票の見易さを向上するべく、７行目の月日の表記が省略されているためである。このような表記方法は、帳票では一般的に行われるものである。この場合、同じく日次明細行であっても、その属性パターンが明細行によって異なるものとなる。その結果、各明細行の属性パターンに応じて明細行の特徴を識別した場合、６行目と７行目は別の特徴を有する明細行として識別されてしまう。
【００１５】
このため、本実施形態では、明細行の特徴を示す属性パターンを識別する際において、実データが含まれないセルが存在する場合に、当該明細行の属性パターンと、直前の明細行の属性パターンとの比較をし、セルのデータ表示が省略されているのか、元々実データが存在しないのかを判定するようにする。そして、列のデータ表示が省略されている場合には、直前の明細行から、実データが含まれないセルと同一の列のセルの対応データを取得し、省略されたセルのデータを補完する。その上で、当該明細行の属性パターンを再識別する。これにより、同じ特徴を有する複数の明細行の一部においてセルのデータ表示が省略されていることにより、一見属性パターンが異なるように見えても、正しい属性パターンを識別することができ、同じ特徴を有する明細行として識別することができる。
【００１６】
なお、図２の明細行の１行目のように、明細行がページを跨って続いていて、かつ、１行目のデータ表示が省略されている場合がある。このため、本実施形態では、帳票データが複数のページを含んでいる場合、各ページにおける明細領域の位置に基づいて、明細行がページを跨って続いていることを検出する。そして、明細行がページを跨って続いている場合において、２ページ目以降の表領域の最初の明細行に実データが含まれないセルが存在する場合には、当該明細行の属性パターンと、直前ページの表領域の最後の明細行の属性パターンとの比較をして、データ表示が省略されている状態を検出する。そして、データ表示が省略されている場合には、直前ページの表領域の最後の明細行から対応データを取得して、省略されたセルのデータを補完する。
【００１７】
このような処理により、本実施形態では、各行の属性パターンを正確に識別することができる。その結果、図３に示すように、図１及び図２に示した帳票データの明細行を、省略されたセルのデータを補完した上で、明細行の特徴ごとに正確に分類することが可能となる。なお、当該図３に示すデータは、そのままクライアント端末に返信してもよいし、クライアント端末による要求に応じて、日次明細行のみを返信してもよい。
【００１８】
なお、そもそも帳票データは、テキストデータ（ＣＳＶデータ等）と、帳票のレイアウト等を予め定義した帳票定義体から生成される。このため、新規に生成する帳票については、帳票定義体に含まれる行の定義を帳票データ内の各行に関連付けておくことで、行の特徴を容易に識別することができる。しかし、すでに帳票データが生成され、元のテキストデータが消去されている場合には、このような関連付けをすることができない。本実施形態で説明する技術は、このように、帳票データがすでに生成され、データの抽出対象が帳票データのみとなっている状態において、特に有効に用いることができる。
【００１９】
また、本実施形態で説明する技術は、いわゆる帳票に限らず、表領域を含んだ他の態様の出力対象物においても適用可能である。
【００２０】
［システムの全体構成、帳票提供サーバの機能構成及びデータ構成］
図４は、本実施形態におけるシステムの全体構成、並びに帳票提供サーバ１の機能構成及びデータ構成を示す。
【００２１】
本システムは、帳票提供サーバ１及びクライアント端末２を備える。帳票提供サーバ１及びクライアント端末２は、ネットワーク３を介して相互に通信可能に接続されている。ネットワーク３は、例えばＬＡＮ（Local Area Network）やＷＡＮ（Wide Area Network）等であり、有線接続又は無線接続のいずれであってもよい。
【００２２】
帳票提供サーバ１は、ユーザが使用するクライアント端末２からの要求に応じて、帳票に関連する様々な情報を提供する。一般的な機能の一例として、クライアント端末２は、帳票提供サーバ１に対し、帳票を指定して帳票表示要求を行う。帳票提供サーバ１では、要求された帳票の帳票データ２１をクライアントに返信する。クライアント側では、受信した帳票データ２１を表示し、印刷等の処理を行う。
【００２３】
そして、本実施形態では、クライアント端末２は、帳票を指定して、分析ツール等の入力データとする特定の特徴を有する明細データの抽出を要求する。そして、帳票提供サーバ１では、指定された帳票に対応する帳票データ２１から明細データを抽出し、さらに、明細データを、明細行の特徴ごとに分類する。そして、分類された明細データから、要求された特徴を有する明細行を抽出し、クライアント端末２に返信する。
【００２４】
以下、帳票提供サーバ１につき、図４に図示している、帳票データ２１からの明細行の抽出に関連する機能及びデータについて説明を行う。なお、図４では、帳票提供サーバ１の機能及びデータのうち、明細行の抽出に関連するもの以外については図示を省略している。
【００２５】
帳票提供サーバ１は、プログラムがロードされ実行されることによってその機能が実現される、抽出要求受付部１１、明細行取得部１２、明細行解析部１３（属性識別部１４、データ補完部１５及び属性再識別部１６）、明細行分類部１７を備える。
【００２６】
抽出要求受付部１１は、クライアント端末２から受信した、帳票を指定したデータの抽出要求を受け付け、明細行取得部１２に通知する。
明細行取得部１２は、クライアント端末２からのデータ抽出要求において指定された帳票の帳票データ２１から、帳票データ２１に含まれる表領域に出力される表形式の明細データ（表形式データ）を特定して取得する。
【００２７】
明細行解析部１３は、明細データの各明細行を解析し、各明細行の属性パターンを識別する。具体的には、明細行解析部１３は、属性識別部１４、データ補完部１５及び属性再識別部１６を含む。
属性識別部１４は、帳票データ２１を参照して、各明細行の各列のセルの実データの有無、並びに各列のセルのデータ型及び明細行の書式情報を特定し、これらの各列のセルのデータ型及び明細行の書式情報で特定される属性パターンを識別する。
【００２８】
データ補完部１５は、空欄のセル（実データが含まれないセル）を含んだ明細行が存在するときに、当該明細行及び当該明細行の直前の明細行の属性パターンに応じて、当該実データが含まれないセルにおいてデータ表示が省略されているか否かを判定する。そして、データ表示が省略されているときに、当該実データが含まれないセルに、データを補完する。具体的には、データ補完部１５は、直前の明細行から、実データが含まれないセルと同一の列のセルの対応データを取得して、当該対応データを、実データが含まれないセルを含んだ明細行における実データが含まれないセルに補完する。
【００２９】
属性再識別部１６は、実データが含まれないセルを含んだ明細行に対応データが補完された状態で、当該明細行の属性パターンを再識別する。
明細行分類部１７は、識別した各明細行の属性パターンに基づいて、属性パターンごと、すなわち明細行の特徴ごとに各明細行を分類した、分類済み明細データ２４を生成する。そして、明細行分類部１７は、分類済み明細データ２４から、クライアント端末２の要求に応じた特徴を有する明細行を、クライアント端末２に返送する。
【００３０】
次に、帳票提供サーバ１が備える各データにつき、前述した図１〜図３、及び図５〜図８を参照しながら説明する。
【００３１】
帳票データ２１は、帳票の出力内容を示す情報を有するデータである。帳票データ２１は、図５に示すように、帳票出力されるページごとに、出力される文字列の位置情報である横位置（Ｘ座標）及び縦位置（Ｙ座標）、出力される文字列、文字列のデータ型（文字、日付、数値等）及び書式情報（フォント、網掛け、太字等のプロパティ情報）を備える。また、帳票データ２１は、帳票において描画される罫線情報を備える。罫線情報は、図６に示すように、帳票出力されるページごとに、描画される罫線の開始位置及び終了位置の横位置（Ｘ座標）及び縦位置（Ｙ座標）をそれぞれ備える。なお、前述したように、図１及び図２が、これらの帳票データ２１に基づいて出力された帳票印刷イメージを示している。
【００３２】
パターンリスト２２は、各明細行について識別した属性パターンを記録するためのリストであり、明細行の属性パターン別に明細行を分類するためのリストである。パターンリスト２２は、図７に示すように、明細行の各列のセルのデータ型及び明細行の書式情報を含んだ属性パターンと、属性パターンに該当する明細行の識別子とを備える。
【００３３】
補完形式リスト２３は、明細行に空欄のセルがある場合において、当該空欄のセルにデータを補完する対象となり得るデータの表記形式が予め設定されたリストである。補完形式リスト２３は、図８に示すように、データ型及び当該データ型における表記形式を備える。
【００３４】
分類済み明細データ２４は、明細データを明細行の属性パターンごと、すなわち明細行の特徴ごとに分類した結果のデータである。分類済み明細データ２４では、図３に示したように、明細行の特徴ごとに明細行がグルーピングされている。
【００３５】
［処理説明］
次に、帳票提供サーバ１において実行される処理につき、図９及び図１０を用いて説明する。
【００３６】
図９は、帳票提供サーバ１において実行されるデータ抽出処理の全体を示すフローチャートである。帳票提供サーバ１は、クライアント端末２から、帳票を指定したデータ抽出要求を受信したときに、当該処理を実行する。
【００３７】
ステップＳ１で、抽出要求受付部１１は、クライアント端末２から受信したデータ抽出要求を受け付け、明細行取得部１２に通知する。
以下のステップＳ２〜ステップＳ８は、帳票に含まれるページごとに処理を行う。
ステップＳ２で、明細行取得部１２は、クライアント端末２からのデータ抽出要求において指定された帳票の帳票データ２１を取得し、明細行が配置されている表領域を特定する。具体的には、明細行取得部１２は、例えば、帳票データ２１に含まれる罫線情報を参照し、罫線の開始位置及び終了位置により、罫線が表を描画している表領域を特定することが可能である。そして、明細行取得部１２は、帳票データ２１の項目情報に含まれる各項目の横位置及び縦位置から、特定した表領域に配置されている明細データを特定して取得する。
【００３８】
ステップＳ３で、明細行取得部１２は、取得した明細データが、直前のページから連続している明細データであるか否かを判定する。一般的に、帳票の明細データが複数ページに連続して出力される場合、１ページ目には、帳票の宛先等の諸情報が含まれる一方、２ページ目以降にはこのような情報が含まれないため、２ページ目以降の明細データが出力される表領域の上端は、１ページ目における表領域の上端よりも上方になることが多い。このため、明細行取得部１２は、例えば、特定した表領域の横位置が、当該表領域に出力される明細データが出力される最初のページにおける表領域の横位置と一致している場合において、当該特定した表領域の上端の縦位置が、当該最初のページにおける表領域の上端の縦位置よりも所定閾値以上上方に位置するときに、当該特定した表領域が直前のページから連続していると判定することができる。なお、「所定閾値以上」上方に位置することを条件とするのは、本来同じ位置に配置されるべき明細データであっても若干のずれが生じる場合があり、このような場合に、直前のページから連続している明細データであると判定してしまうことを防ぐためである。特定した明細データが、直前のページから連続している場合には、ステップＳ５に進み（Ｙｅｓ）、そうでない場合（直前のページが存在しないか、存在しても明細データが連続していない場合）には、ステップＳ４に進む（Ｎｏ）。
【００３９】
ステップＳ４で、明細行取得部１２は、新たなパターンリスト２２を生成する。なお、この時点では、パターンリスト２２はデータが空の状態である。
【００４０】
以下のステップＳ５〜ステップＳ８は、さらに明細行ごとに処理を行う。
ステップＳ５で、明細行解析部１３は、各明細行を解析し、各明細行の属性パターンを識別する明細行解析処理を行う。明細行解析処理の詳細については後述する。
【００４１】
ステップＳ６で、明細行解析部１３は、識別した明細行の属性パターンが、既にパターンリスト２２に登録されているか否かを判定する。すでに登録されている場合には、ステップＳ８に進み（Ｙｅｓ）、まだ登録されていない場合には、ステップＳ７に進む（Ｎｏ）。
【００４２】
ステップＳ７で、明細行解析部１３は、識別した明細行の属性パターンを、パターンリスト２２に追加する。
ステップＳ８で、明細行解析部１３は、パターンリスト２２に、処理対象の明細行の識別子を、該当する属性パターンに対応付けて登録する。
【００４３】
ステップＳ９で、明細行解析部１３は、本来同じ属性パターンの明細行が別の属性パターンに分類されてしまうケースの対応処理を行う。このようなケースの具体例として、明細行が、視認性のために１行おきに網掛けになっているケースがある。この場合、本来同じ種類に属する明細行であっても、書式情報が異なるため、後述する明細行解析処理によれば、別の属性パターンとして識別されてしまう。このため、明細行分類部１７は、ある属性パターンと別の属性パターンとで網掛け以外の属性が全て一致し、かつ、それぞれの属性パターンに分類されている明細行の数の差が所定閾値（例えば１）以下の場合には、これらの属性パターンにそれぞれ分類されている明細行が全て同じ属性パターンであるものとして分類する。具体的には、明細行分類部１７は、このような場合、パターンリスト２２において、どちらか一方の属性パターンに明細行を統合する。なお、当該処理は、それぞれの属性パターンに分類されている明細行の数が所定閾値以上であること、又は、他の属性パターンに分類されている明細行の数よりも多いこと等を前提として行ってもよい。
【００４４】
ステップＳ１０で、明細行分類部１７は、パターンリスト２２の各属性パターンに分類された明細行の識別子に基づき、帳票データ２１の各明細行を属性パターンごとにグルーピングした分類済み明細データ２４を生成する。換言すれば、明細行分類部１７は、処理対象の明細行を、明細行の特徴に応じて分類する。
ステップＳ１１で、明細行分類部１７は、分類済み明細データ２４から、クライアント端末２の要求に応じた特徴の明細行のデータを抽出し、クライアント端末２に返信する。
【００４５】
図１０は、明細行解析処理を示すフローチャートである。
ステップＳ２１で、属性識別部１４は、帳票データ２１における明細行の項目情報の書式情報を参照し、明細行単位で書式情報を特定する。なお、本実施形態では、１つの明細行に含まれる各列のセルは書式情報が共通していることを前提としている。
【００４６】
ステップＳ２２で、属性識別部１４は、帳票データ２１における明細行の項目情報のデータ型を参照し、各列のセルごとに、データ型を特定する。なお、実データが含まれないセルが存在する場合、明細行解析部１３は、当該列のデータ型を「空欄」として特定する。そして、明細行解析部１３は、特定したデータ型及び書式情報に基づき、これらの情報を含んだ属性パターンを識別する。
【００４７】
ステップＳ２３で、データ補完部１５は、処理対象の明細行について特定したデータ型において、空欄のセルがあり、且つ当該明細行の前に明細行があるかを判定する。当該条件を満たす場合にはステップＳ２４に進み（Ｙｅｓ）、当該条件を満たさない場合には明細行解析処理を終了する（Ｎｏ）。
【００４８】
ステップＳ２４で、データ補完部１５は、処理対象の明細行における空欄のセル以外の全てのセルのデータ型及び当該明細行の書式情報が、直前の明細行における、当該空欄のセルと同一の列のセル以外の全てのセルのデータ型及び当該直前の明細行の書式情報と一致するかを判定する。当該条件を満たす場合にはステップＳ２５に進み（Ｙｅｓ）、当該条件を満たさない場合には明細行解析処理を終了する（Ｎｏ）。
【００４９】
ステップＳ２５で、データ補完部１５は、処理対象の明細行における空欄のセルと同一のセルにおける、直前の明細行の対応データの表記形式が、補完形式リスト２３に含まれる表記形式と一致しているかを判定する。当該条件を満たす場合にはステップＳ２６に進み（Ｙｅｓ）、当該条件を満たさない場合には明細行解析処理を終了する（Ｎｏ）。
なお、上記ステップＳ２４及びステップＳ２５における判定は、空欄のセルにつき、データ表示が省略されているのか、元々データが存在しないのかを判定するものである。
【００５０】
ステップＳ２６で、データ補完部１５は、処理対象の明細行における空欄のセルに、当該直前の明細行の対応データを補完する。
ステップＳ２７で、属性再識別部１６は、処理対象の明細行について、ステップＳ２６で補完したデータを含め、当該データ補完後の属性パターンを再識別する。
【００５１】
［データ具体例を示した処理説明］
ここで、上記データ抽出処理及び明細行解析処理について、図５及び図６に示す帳票データ２１から、日次明細行のデータを抽出する具体例を示して説明する。なお、当該説明では、図５及び図６に示す帳票データ２１とともに、当該帳票データ２１の出力イメージである図１及び図２を参照しながら説明する。
【００５２】
まず、帳票の１ページ目の明細の処理について説明する。
明細行取得部１２は、図６に示す帳票データ２１の１ページ目の罫線情報の横位置及び縦位置に基づいて、１ページ目において罫線が表を描画している表領域を特定する。これにより、明細行取得部１２は、図５に示す帳票データ２１の１ページ目の項目情報に含まれる各項目の横位置及び縦位置から、特定した表領域に配置されている明細データ、すなわち、図１に示す帳票イメージの明細行の１〜１３行目に相当する明細データを特定して取得する（ステップＳ２）。
【００５３】
そして、明細行解析処理で、属性識別部１４は、明細行の１行目について、明細行の書式情報、すなわち、「ＭＳゴシック、１２ｐｔ（網掛け、太字なし）」を特定する（ステップＳ２１）。さらに、属性識別部１４は、明細行の１行目について、各列のセルごとにデータ型を特定し、明細行に含まれる各列のセルのデータ型、すなわち、「日付 文字 文字 文字 数値」を特定する。これにより、属性識別部１４は、明細行の１行目の属性パターンを識別する（ステップＳ２２）。
【００５４】
ここで、明細行の１行目には、空欄のセルがないため（ステップＳ２３の判定）、データ抽出処理に戻る。そして、明細行解析部１３は、当該データ型及び書式情報を含んだ属性パターンが、初めて識別された属性パターンであるため（ステップＳ６の判定）、図７に示したパターンリスト２２の１行目を追加する（ステップＳ７）。その上で、当該明細行が何行目かを示す行番号である「１」を、明細行の識別子として、パターンリスト２２における当該属性パターンに対応する明細行の識別子に追加する。
【００５５】
さらに、明細行解析部１３は明細行を順次処理していく。ここで、明細行の４行目の処理について説明する。属性識別部１４は、明細行の４行目について、明細行の書式情報、すなわち、「ＭＳゴシック、１２ｐｔ、網掛け」を特定する（ステップＳ２１）。さらに、属性識別部１４は、明細行の４行目について、各列のセルごとにデータ型を特定し、明細行に含まれる各列のデータ型、すなわち、「空欄 空欄 空欄 文字 数値」を特定する（ステップＳ２２）。ここで、当該明細行の４行目には、空欄のセルがあり、かつ、前に明細行がある（ステップＳ２３の判定）。そして、空欄のセル以外のセル、すなわち、４つ目と５つ目の列のセルのデータ型である「文字、数値」が、１つ上の３行目における４つ目と５つ目の列のセルのデータ型と一致する。しかし、書式情報が、４行目は「ＭＳゴシック、１２ｐｔ、網掛け」であるのに対し、３行目は「ＭＳゴシック、１２ｐｔ」であるため、異なっている（ステップＳ２４の判定）。このため、データ抽出処理に戻る。そして、明細行解析部１３は、当該データ型及び書式情報を含んだ属性パターンが、初めて識別された属性パターンであるため、図７に示したパターンリスト２２の２行目を追加する（ステップＳ６〜ステップＳ７）。その上で、当該明細行の行番号である「４」を、パターンリスト２２における当該属性パターンに対応する明細行に追加する。
【００５６】
さらに、明細行解析部１３は明細行を順次処理していく。ここで、明細行の７行目の処理について説明する。属性識別部１４は、明細行の７行目について、明細行の書式情報、すなわち、「ＭＳゴシック、１２ｐｔ」を特定する（ステップＳ２１）。さらに、属性識別部１４は、明細行の４行目について、列のセルごとにデータ型を特定し、明細行に含まれる各列のデータ型、すなわち、「空欄 文字 文字 文字 数値」を特定する（ステップＳ２２）。ここで、当該明細行の７行目には、空欄のセルがあり、かつ、前に明細行がある（ステップＳ２３の判定）。そして、空欄のセル以外のセル、すなわち、２つ目〜５つ目の列のセルのデータ型である「文字 文字 文字 数値」が、１つ上の６行目における２つ目〜５つ目の列のセルのデータ型と一致する。さらに、明細行の書式情報も一致している（ステップＳ２４の判定）。また、空欄のセルに対応する６行目のデータ、すなわち空欄のセルと同一の列のセルにおける「０５／１６」の表記形式が、図８に示した補完形式リスト２３の「ｍｍ／ｄｄ」と一致している（ステップＳ２５の判定）。このため、データ補完部１５は、７行目の空欄のセルに、６行目の「０５／１６」を補完する（ステップＳ２６）。その上で、属性再識別部１６は、当該「０５／１６」を補完した状態の７行目につき、明細行の属性パターンを識別する。その結果、当該７行目のデータ型は、「日付 文字 文字 文字 数値」となる。
【００５７】
データ抽出処理に戻り、明細行解析部１３は、当該７行目の属性パターンが、既に図７に示すパターンリスト２２に登録されている属性パターンであると判定する（ステップＳ６の判定）。このため、明細行解析部１３は、当該明細行の行番号である「７」を、パターンリスト２２における当該属性パターンに対応する明細行の識別子に追加する。
また、明細行解析部１３が明細行を順次処理し、１３行目についても、上記７行目の処理と同様にして、１つ目の列に、１２行目の「０６／１７」を補完する。
【００５８】
次に、帳票の２ページ目の処理に移る。
明細行取得部１２は、図６に示す帳票データ２１の２ページ目の罫線情報の縦位置及び横位置に基づいて、罫線が表を描画している表領域を特定する。そして、図５に示す帳票データ２１の２ページ目の項目情報に含まれる各項目の横位置及び縦位置から、特定した表領域に配置されている明細行のデータ、すなわち、図２に示す帳票イメージの明細行の１〜８行目に相当するデータを特定して取得する（ステップＳ２）。ここで、当該２ページ目において罫線が描画する表領域の横位置が「８」〜「１５２」であり１ページ目と一致している。さらに、当該２ページ目における表領域の上端の縦位置が「３８」であって、１ページ目における表領域の上端の縦位置である「７８」よりも上方である。なお、項目情報を参照すると、当該表領域に含まれる明細データの位置の上端が「４０」であって、１ページ目における表領域に含まれる明細データの上端の縦位置である「８０」よりも上方である。いずれにしても、例えば所定閾値を「３」に設定しておいた場合、２ページ目における表領域の上端の縦位置は、１ページ目における表領域の上端の縦位置よりも所定閾値以上上方に位置する。このため、明細行取得部１２は、当該特定した表領域が１ページ目から連続していると判定する（ステップＳ３の判定）。
【００５９】
さらに、明細行解析処理で、属性識別部１４は、１ページ目と同様に、当該２ページ目の明細行の１行目について、明細行全体の書式情報、すなわち、「ＭＳゴシック、１２ｐｔ（網掛け、太字なし）」を特定する（ステップＳ２１）。さらに、明細行解析部１３は、明細行の１行目について、各列のセルごとにデータ型を特定し、明細行に含まれる各列のセルのデータ型、すなわち、「空欄 文字 文字 文字 数値」を特定する（ステップＳ２２）。ここで、当該２ページ目の明細行の１行目には、空欄のセルがある。そして、当該２ページ目の明細行が配置された表領域は、ステップＳ３で判定したように１ページ目から連続しているため、当該２ページ目の明細行の１行目には、前に明細行があると判定する（ステップＳ２３の判定）。そして、空欄のセル以外のセル、すなわち、２つ目〜５つ目の列のセルのデータ型である「文字 文字 文字 数値」が、直前の明細行、すなわち、１ページ目の１３行目における２つ目〜５つ目の列のセルのデータ型と一致する。さらに、明細行の書式情報も一致している（ステップＳ２４の判定）。また、前述したように、１ページ目の１３行目のデータの空欄のセルには、すでに「０６／１７」が補完されている。このため、２ページ目の明細行の１行目における空欄のセルに対応する１ページ目の１３行目のデータ、すなわち「０６／１７」の表記形式が、図８に示した補完形式リスト２３の「ｍｍ／ｄｄ」と一致している（ステップＳ２５の判定）。したがって、データ補完部１５は、２ページ目の明細行の１行目の空欄のセルに、「０６／１７」を補完する（ステップＳ２６）。その上で、属性再識別部１６は、当該「０６／１７」を補完した状態の７行目につき、明細行の各列のセルのデータ型を特定する。その結果、当該７行目の各列のセルのデータ型は、「日付 文字 文字 文字 数値」となる。
【００６０】
データ抽出処理に戻り、明細行解析部１３は、当該２ページ目の明細行の１行目の属性パターンが、既に図７に示すパターンリスト２２に登録されている属性パターンであると判定する（ステップＳ６の判定）。このため、明細行解析部１３は、当該明細行につき、１ページ目から連続した行番号である「１４」を、パターンリスト２２における当該属性パターンに対応する明細行の識別子に追加する。
【００６１】
以降の明細行についても同様にして処理をした後、明細行分類部１７が、パターンリスト２２の明細行に記録された各明細行の行番号に従って、帳票データ２１の明細行のデータを分類する。この際、ステップＳ２６でデータが補完された明細行については、補完された状態でデータを分類する。このようにして、明細行分類部１７は、図３に示すように、明細行が分類された分類済み明細データ２４を生成する（ステップＳ１０）。さらに、当該分類済み明細データ２４のうち、日次明細行のみをクライアントに返信する（ステップＳ１１）。なお、どのグループの明細行のデータが日次明細行であるかは、次のように識別することができる。例えば、日次明細行の属性パターンをクライアントから受信するか予め記憶手段に保持しておき、当該属性パターンと一致する属性パターンに分類されたグループを、日次明細行として識別すればよい。
【００６２】
［本実施形態による効果、変形例等］
本実施形態によれば、帳票データ２１から、特定の特徴の明細行のデータを抽出する場合において、明細行の一部の列のセルが空欄のときに、直前の明細行のデータを補完した上で、明細行の属性パターンを特定する。そして、当該属性パターンにしたがって明細行を分類し、データを抽出する。このため、明細行の一部のセルにおけるデータ表示が省略されている場合であっても、明細行の属性パターンを正しく識別することができる。また、このとき、当該明細行の属性パターンと直前の明細行の属性パターンとに基づいて、当該列のデータ表示が省略されているのか否かを判定する。具体的には、空欄のセルを含む明細行における当該空欄のセル以外の属性パターンが、直前の明細行における当該セルと同一の列のセル以外の属性パターンと一致するときに、セルのデータ表示が省略されていると判定する。そして、データ表示が省略されているときにのみ、データの補完をする。これにより、当該空欄がデータ表示の省略ではなく元々空欄である場合にまでデータを補完してしまうことを回避することができる。
【００６３】
そして、このように明細行の属性パターンを正しく識別することができることにより、特定の特徴を有する明細行のデータを正しく抽出することが可能となる。
また、本実施形態によれば、各ページに含まれる明細データが、前ページから連続しているか否かを判定し、連続している場合には、一連の明細データであるものとして、上記データの補完処理を行う。このため、明細行が複数ページに跨っている場合において、２ページ目以降の明細行の１行目の一部のセルの表記が省略されているような場合でも、適切に省略されたデータを補完し、明細行の属性パターンを識別することができる。
【００６４】
また、本実施形態によれば、明細行における空欄のセルに対応する、直前の明細行の対応データの表記形式が、補完形式リスト２３に含まれる表記形式と一致しているときにのみ、上記データの補完を行う。このため、データ表示の省略が行われ得る表記形式を補完形式リスト２３に設定しておくことで、当該空欄がデータ表示の省略ではなく元々空欄である場合にまでデータを補完してしまうことを、より高い精度で回避することができる。
【００６５】
また、本実施形態によれば、明細行が、視認性のために１行おきに網掛けになっていることによって本来同じ属性パターンの明細行が別の属性パターンに分類されてしまう場合に、これらの属性パターンに分類されている明細行の属性パターンを統合し、同じ属性パターンであるものとして分類する。これにより、一見属性パターンが異なっている場合であっても、本来同じ属性パターンの明細行を同じ属性パターンとして正しく分類することができる。
【００６６】
なお、本実施形態では、属性パターンが各列のデータ型及び明細行の書式情報を含むものとしているが、このような内容に限定されるものではない。属性パターンは、それぞれの帳票の特性に応じて、明細行を特徴ごとに分類するのに適切な内容とすればよい。
【００６７】
また、上記データ抽出処理は、帳票提供サーバ１側ではなく、クライアント端末２側で行ってもよい。すなわち、帳票提供サーバ１は、クライアント端末２から要求のあった帳票データ２１をクライアント端末２に送信し、クライアント端末２側において、帳票データ２１から、必要な明細行の抽出処理を行うようにしてもよい。
【００６８】
なお、本実施形態では、帳票データ２１にデータ型の情報が保持されているが、帳票データ２１においてこのような情報が保持されていなくても、本実施形態の技術を実現することは可能である。その場合には、例えば、帳票データ２１に含まれる文字列の１つ１つの文字種別（文字、数値）を解析し、当該文字種別に基づいて、各列のセルのデータ型を特定すればよい。
【００６９】
また、本実施形態では帳票の例について記載したが、前述したように、帳票に限らず、表形式データを出力する他の態様の対象物にも、上記機能構成及び各処理を適用することが可能である。
【００７０】
［ハードウェア構成等］
前述した帳票提供サーバ１又はクライアント端末２として機能するコンピュータのハードウェア構成の一例を図１１に示す。本コンピュータは、プロセッサ１０１、メモリ１０２、ストレージ１０３、可搬記憶媒体駆動装置１０４、入出力装置１０５及び通信インタフェース１０６を備える。
【００７１】
プロセッサ１０１は、制御ユニット、演算ユニット及び命令デコーダ等を含み、実行ユニットが、命令デコーダで解読されたプログラムの命令に従い、制御ユニットより出力される制御信号に応じ、演算ユニットを用いて算術・論理演算を実行する。かかるプロセッサ１０１は、制御に用いる各種情報が格納される制御レジスタ、既にアクセスしたメモリ２等の内容を一時的に格納可能なキャッシュ、及び、仮想記憶のページテーブルのキャッシュとしての機能を果たすＴＬＢを備える。なお、プロセッサ１０１は、ＣＰＵ（Central Processing Unit）コアが複数設けられている構成でもよい。
【００７２】
メモリ１０２は、例えばＲＡＭ（Random Access Memory）等の記憶装置であり、プロセッサ１０１で実行されるプログラムがロードされるとともに、プロセッサ１０１の処理に用いるデータが格納されるメインメモリである。また、ストレージ１０３は、例えばＨＤＤ（Hard Disk Drive）やフラッシュメモリ等の記憶装置であり、プログラムや各種データが格納される。可搬記憶媒体駆動装置１０４は、可搬記憶媒体１０７に記憶されたデータやプログラムを読み出す装置である。可搬記憶媒体１０７は、例えば磁気ディスク、光ディスク、光磁気ディスク又はフラッシュメモリ等である。プロセッサ１０１は、メモリ１０２やストレージ１０３と協働しつつ、ストレージ１０３や可搬記憶媒体１０７に格納されたプログラムを実行する。なお、プロセッサ１０１が実行するプログラムや、アクセス対象となるデータは、当該コンピュータと通信可能な他の装置に格納されていてもよい。なお、本実施形態で記載した帳票提供サーバ１の記憶手段とは、メモリ１０２、ストレージ１０３及び可搬記憶媒体１０７若しくは当該コンピュータと通信可能な他の装置の少なくともいずれかを示す。
【００７３】
入出力装置１０５は例えばキーボードやタッチパネル、ディスプレイ等であり、ユーザ操作等による動作命令を受け付ける一方、コンピュータによる処理結果を出力する。
通信インタフェース１０６は、例えば、例えばＬＡＮ（Local Area Network）カード等の他、無線周波受信機および送信機、ならびに光受信機および送信機を含むことができる。前述の受信機および送信機は、Ｗｉ−Ｆｉネットワーク、ブルートゥース・ネットワーク、ロング・ターム・エボリューションなどの１つまたは複数の通信ネットワークにより動作するように実現することができる。
これらのコンピュータの各構成要素は、バス１０８で接続されている。
【００７４】
＜その他＞
なお、本明細書で説明したコンピュータの機能的構成及び物理的構成は、上述の態様に限るものではなく、例えば、各機能や物理資源を統合して実装したり、逆に、さらに分散して実装したりすることも可能である。
また、本明細書において、閾値等との比較において「〜以上」や「〜以下」とした記載箇所は、特記した場合を除き当該記載に限定されるものではなく、「〜より大きい（〜を上回る）」や「〜より小さい（〜を下回る）」に適宜置き換えることが可能である。
【００７５】
以上の実施形態に関し、更に以下の付記を開示する。
（付記１）
表領域を含んだ対象物のデータから、前記表領域に出力される表形式データを取得し、
前記表形式データの各行について、各列のセルにおける実データの有無、及び行の特徴を示す属性パターンを識別し、
実データを含まないセルが存在する行を識別した場合は、当該識別した行の前記属性パターン及び当該識別した行の直前の行の前記属性パターンに基づいて、前記実データを含まないセルにおいてデータ表示が省略されているか否かを判定し、
前記実データを含まないセルにおいてデータ表示が省略されている場合に、前記直前の行から対応データを取得して、当該対応データを前記識別した行の前記実データを含まないセルに補完し、
前記識別した行に前記対応データが補完された状態で、当該識別した行の前記属性パターンを再識別する
処理をコンピュータが実行するデータ識別方法。
【００７６】
（付記２）
前記属性パターンは、行に含まれる各列のセルのデータ型及び行の書式情報を含む、付記１記載のデータ識別方法。
【００７７】
（付記３）
前記取得する処理は、前記対象物のデータが複数のページの表領域に出力される表形式データを含んでいるときに、前記対象物のデータに含まれる位置情報に基づいて各ページの表領域の位置を特定し、当該表領域の位置に基づいて、複数のページのそれぞれの表領域に出力される前記表形式データが連続していることを検出し、
前記補完する処理は、前記識別した行が、２ページ目以降のページにおける表領域の最初の行であって、当該表領域に出力される前記表形式データが直前のページに出力される表形式データと連続しているときに、当該識別した行が出力されるページの直前のページに出力される表形式データの最後の行を前記直前の行とする、付記１又は２に記載のデータ識別方法。
【００７８】
（付記４）
前記補完する処理は、２ページ目以降のページにおける表領域の横位置が、直前のページに出力される前記表形式データが出力される最初のページにおける表領域の横位置と一致し、且つ、前記２ページ目以降のページにおける表領域の上端の縦位置が、前記最初のページにおける表領域の上端の縦位置よりも所定閾値以上上方であるときに、当該２ページ目以降のページに出力される前記表形式データが直前のページに出力される表形式データと連続していることを検出する、付記３記載のデータ識別方法。
【００７９】
（付記５）
前記補完する処理は、前記識別した行における前記実データを含まないセル以外の前記属性パターンが、前記直前の行における前記実データを含まないセルと同一の列以外の前記属性パターンと一致するときに、前記対応データを前記識別した行の前記データが無い列に補完する、付記１〜３のいずれか１項に記載のデータ識別方法。
【００８０】
（付記６）
前記補完する処理は、前記対応データの表記形式が、補完対象となり得るデータの所定の表記形式と一致するときに、前記対応データを前記識別した行の前記実データを含まないセルに補完する、付記１〜４のいずれか１項に記載のデータ識別方法。
【００８１】
（付記７）
前記対応データは、前記直前の行における、前記識別した行の前記実データが含まれないセルと同一の列のセルのデータである、付記１〜６のいずれか１項に記載のデータ識別方法。（図３）
【００８２】
（付記８）
前記識別した行に前記対応データが補完された状態で、前記表形式データの各行を前記属性パターンごとに分類した分類データを生成する処理をさらに含む、付記１〜５のいずれか１項に記載のデータ識別方法。
【００８３】
（付記９）
行の所定の書式情報が異なり且つ当該書式情報以外の属性パターンが一致している２つの前記属性パターンにそれぞれ該当する複数の行が存在する場合であって、それぞれの前記属性パターンに該当する行の行数の差分が所定閾値以下のときに、当該２つの前記属性パターンにそれぞれ該当する行を、同一の前記属性パターンとして統合する処理をさらに含む、付記１〜６のいずれか１項に記載のデータ識別方法。
【００８４】
（付記１０）
前記表形式データが、帳票データに含まれる明細部分のデータである、付記１〜９のいずれか１項に記載のデータ識別方法。
【００８５】
（付記１１）
表領域を含んだ対象物のデータから、前記表領域に出力される表形式データを取得し、
前記表形式データの各行について、各列のセルにおける実データの有無、及び行の特徴を示す属性パターンを識別し、
実データを含まないセルが存在する行を識別した場合は、当該識別した行の前記属性パターン及び当該識別した行の直前の行の前記属性パターンに基づいて、前記実データを含まないセルにおいてデータ表示が省略されているか否かを判定し、
前記実データを含まないセルにおいてデータ表示が省略されている場合に、前記直前の行から対応データを取得して、当該対応データを前記識別した行の前記実データを含まないセルに補完し、
前記識別した行に前記対応データが補完された状態で、当該識別した行の前記属性パターンを再識別する
処理をコンピュータに実行させるデータ識別プログラム。
【００８６】
（付記１２）
表領域を含んだ対象物のデータから、前記表領域に出力される表形式データを取得するデータ取得部と、
前記表形式データの各行について、各列のセルにおける実データの有無、及び行の特徴を示す属性パターンを識別する属性識別部と、
実データを含まないセルが存在する行を識別した場合は、当該識別した行の前記属性パターン及び当該識別した行の直前の行の前記属性パターンに基づいて、前記実データを含まないセルにおいてデータ表示が省略されているか否かを判定し、前記実データを含まないセルにおいてデータ表示が省略されている場合に、前記直前の行から対応データを取得して、当該対応データを前記識別した行の前記実データを含まないセルに補完するデータ補完部と、
前記識別した行に前記対応データが補完された状態で、当該識別した行の前記属性パターンを再識別する属性再識別部と
を備えたデータ識別装置。
【符号の説明】
【００８７】
１…帳票提供サーバ、２…クライアント端末、３…ネットワーク、１１…抽出要求受付部、１２…明細行取得部、１３…明細行解析部、１４…属性識別部、１５…データ補完部、１６…属性再識別部、１７…明細行分類部、２１…帳票データ、２２…パターンリスト、２３…補完形式リスト、２４…分類済み明細データ
【図１】
2015191277.tif 000003
【図２】
2015191277.tif 000004
【図３】
2015191277.tif 000005
【図４】
2015191277.tif 000006
【図５】
2015191277.tif 000007
【図６】
2015191277.tif 000008
【図７】
2015191277.tif 000009
【図８】
2015191277.tif 000010
【図９】
2015191277.tif 000011
【図１０】
2015191277.tif 000012
【図１１】
2015191277.tif 000013