(57)【要約】【課題】文書データを階層構造を有する構造化データへと、論理構造にエラーを生じさせることなく自動的に変換させることができる構造化データ生成装置を提供する。【解決手段】構造化データ生成装置は、抽出部と、定義記憶部と、親子関係記憶部と、取得部と、検索部と、決定部と、生成部とを備える。抽出部は、文書データを解析して、文書情報と、文書情報に対応する体裁情報とを抽出する。取得部は、抽出された体裁情報に対応する論理情報を定義記憶部から取得する。検索部は、抽出された文書情報に対して文書データ内で１つ前に位置する文書情報が構造化データとして出力される際の論理構造を規定する出力論理情報を基準に、予め定められた親子関係の範囲内に含まれる１の論理情報を検索する。決定部は、検索部により検索された１の論理情報を出力論理情報として決定する。生成部は、文書情報と、決定された出力論理情報とを用いて構造化データを生成する。【選択図】図１
2013206261.tif 000002
【特許請求の範囲】
【請求項１】
文書情報と、及び前記文書情報の体裁を規定する体裁情報と、を含む文書データから親子関係に階層化された論理構造をもつ構造化データを生成する構造化データ生成装置にあって、
前記文書データを解析して、前記文書情報と、前記文書情報に対応する前記体裁情報とを抽出する抽出部と、
前記体裁情報と、前記文書情報の前記論理構造を規定する１以上の論理情報とを対応付けて記憶する定義記憶部と、
前記論理情報同士の親子関係を記憶する親子関係記憶部と、
抽出された前記体裁情報に対応する前記論理情報を前記定義記憶部から取得する取得部と、
抽出された前記文書情報に対して前記文書データ内で１つ前に位置する前記文書情報が前記構造化データとして出力される際の論理構造を規定する出力論理情報として決定された前記論理情報を基準に、前記親子関係記憶部において予め定められた前記親子関係の範囲内に含まれる１の前記論理情報を検索する検索部と、
前記検索部により検索された１の前記論理情報を前記出力論理情報として決定する決定部と、
前記文書情報と、決定された前記出力論理情報とを用いて前記構造化データを生成する生成部と、
を備えることを特徴とする構造化データ生成装置。
【請求項２】
前記取得部によって、前記体裁情報と対応する前記論理情報が取得できなかった場合、または前記検索部によって、前記論理情報が検索できなかった場合に、前記体裁情報を、前記定義記憶部において対応する前記論理情報が定義された別の前記体裁情報へと変更する変更部と、
を更に備え、
前記取得部は、変更後の前記体裁情報に基づき、前記定義記憶部から対応する前記論理情報を取得する
ことを特徴とする請求項１に記載の構造化データ生成装置。
【請求項３】
前記定義記憶部には、前記体裁情報と対応付けられて前記体裁情報の分類情報が記憶されており、
前記変更部は、前記体裁情報を同一の前記分類情報と対応付けられた別の前記体裁情報に変更する、
ことを特徴とする請求項２に記載の構造化データ生成装置。
【請求項４】
前記検索部は、抽出された前記文書情報に対して前記文書データ内で１つ前に位置する前記文書情報が前記構造化データとして出力される際の論理構造を規定する出力論理情報として決定された前記論理情報と、前記親子関係記憶部において同じ親を有する前記論理情報を起点にその子の階層の範囲を検索する
ことを特徴とする請求項１に記載の構造化データ生成装置。
【請求項５】
検索された前記論理情報の論理構造が正しいか否かを、予め定めた論理エラー判定基準に基づき判定する判定部と、
前記論理構造が正しくないと判定された場合、前記親子関係記憶部に従い、前記検索部により検索された前記論理情報と、抽出された前記文書情報に対して前記文書データ内で１つ前に位置する前記文書情報の前記出力論理情報と、の間に必要な他の前記論理情報を、前記論理情報毎に予め定められた仮文書情報とともに前記構造化データとして生成する補完部と、
を更に備えることを特徴とする請求項１に記載の構造化データ生成装置。
【請求項６】
前記体裁変更部が前記体裁を変更した場合に、利用者に対して変更通知を行なう通知部を、
更に備えることを特徴とする請求項２に記載の構造化データ生成装置。
【請求項７】
構造化データ生成装置、及び文書データ生成装置からなるデータ処理装置にあって、
前記構造化データ生成装置は、
文書情報と、及び前記文書情報の体裁を規定する体裁情報と、を含む文書データから親子関係に階層化された論理構造をもつ構造化データを生成する構造化データ生成装置であり、
前記文書データを解析して、前記文書情報と、前記文書情報に対応する前記体裁情報とを抽出する抽出部と、
前記体裁情報と、前記文書情報の前記論理構造を規定する１以上の論理情報とを対応付けて記憶する定義記憶部と、
前記論理情報同士の親子関係を記憶する親子関係記憶部と、
抽出された前記体裁情報に対応する前記論理情報を前記定義記憶部から取得する取得部と、
抽出された前記文書情報に対して前記文書データ内で１つ前に位置する前記文書情報が前記構造化データとして出力される際の論理構造を規定する出力論理情報として決定された前記論理情報を基準に、前記親子関係記憶部において予め定められた前記親子関係の範囲内に含まれる１の前記論理情報を検索する検索部と、
前記検索部により検索された１の前記論理情報を前記出力論理情報として決定する決定部と、
前記文書情報と、決定された前記出力論理情報とを用いて前記構造化データを生成する生成部と、
を備え、
前記文書データ生成装置は、
前記構造化データを解析して、前記論理情報と前記文書情報との組み合わせを抽出する文書抽出部と、
抽出された前記論理情報と対応する前記体裁情報を前記定義記憶部から選択する体裁選択部と、
選択された前記体裁情報に基づいて前記文書情報を出力する文書生成部と、
を備えることを特徴とするデータ処理装置。
【請求項８】
文書情報と、及び前記文書情報の体裁を規定する体裁情報と、を含む文書データから親子関係に階層化された論理構造をもつ構造化データを生成する構造化データ生成方法にあって、
前記文書データを解析して、前記文書情報と、前記文書情報に対応する前記体裁情報とを抽出する抽出ステップと、
抽出された前記体裁情報に対応する前記論理情報を前記体裁情報と、前記文書情報の前記論理構造を規定する１以上の論理情報とを対応付けて記憶する定義記憶部から取得する取得ステップと、
抽出された前記文書情報に対して前記文書データ内で１つ前に位置する前記文書情報が前記構造化データとして出力される際の論理構造を規定する出力論理情報として決定された前記論理情報を基準に、前記論理情報同士の親子関係を記憶する親子関係記憶部において予め定められた前記親子関係の範囲内に含まれる１の前記論理情報を検索する検索ステップと、
前記検索部により検索された１の前記論理情報を前記出力論理情報として決定する決定ステップと、
前記文書情報と、決定された前記出力論理情報とを用いて前記構造化データを生成する生成ステップと、
を含むことを特徴とする構造化データ生成方法。
【請求項９】
文書情報、及び前記文書情報の体裁を規定する体裁情報を含む文書データから親子関係に階層化された論理構造をもつ構造化データを生成する構造化データ生成プログラムにあって、
コンピュータに、
前記文書データを解析して、前記文書情報と、前記文書情報に対応する前記体裁情報とを抽出する抽出ステップと、
抽出された前記体裁情報に対応する前記論理情報を前記体裁情報と、前記文書情報の前記論理構造を規定する１以上の論理情報とを対応付けて記憶する定義記憶部から取得する取得ステップと、
抽出された前記文書情報に対して前記文書データ内で１つ前に位置する前記文書情報が前記構造化データとして出力される際の論理構造を規定する出力論理情報として決定された前記論理情報を基準に、前記論理情報同士の親子関係を記憶する親子関係記憶部において予め定められた前記親子関係の範囲内に含まれる１の前記論理情報を検索する検索ステップと、
前記検索部により検索された１の前記論理情報を前記出力論理情報として決定する決定ステップと、
前記文書情報と、決定された前記出力論理情報とを用いて前記構造化データを生成する生成ステップと、
を実行させるための構造化データ生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、構造化データ生成装置、データ処理装置、構造化データ生成方法、及び構造化データ生成プログラムに関する。
【背景技術】
【０００２】
従来、文書編集を行うソフトウェアには、文書情報の体裁を変更することができる体裁情報編集機能が設けられている。例えば、文書を見出しやリストなどの体裁へと変更することが可能である。また、こうした文書情報ごとに設定された体裁情報を、ＸＭＬなどの構造化データを記述する論理タグと対応付け、文書データを体裁の形式にしたがって、構造化データへと変化する技術が知られている。こうした技術の一例としては、体裁情報と論理タグとの対応関係を定義しておき、この定義に従って、体裁情報の変換が行われている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１０−２４０７２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述のように自動的に体裁情報を論理タグへと変換する方法を、文書データを階層化された構造化データへと変換する場合に適用すると、必ずしも体裁が同じだからといって、同じ論理タグを割り当てられるわけではない場合が存在する。例えば、「標準」のように、通常の文書情報を記述する体裁であって、「章」に続く文書情報なのか、「節」に続く文書情報なのかによって、体裁情報に対応する論理タグも異なってくる。こうした場合に、これらの異なる論理タグを区別して文書データを変換しないと、構造化データの論理構造にエラーが発生してしまうという問題が生じる可能性があった。
【０００５】
本発明は、上記に鑑みてなされたものであって、文書データを階層構造を有する構造化データへと、論理構造にエラーを生じさせることなく自動的に変換させることができる構造化データ生成装置を提供することにある。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明の実施形態の構造化データ生成装置は、抽出部と、定義記憶部と、親子関係記憶部と、取得部と、検索部と、決定部と、生成部とを備える。抽出部は、前記文書データを解析して、前記文書情報と、前記文書情報に対応する前記体裁情報とを抽出する。定期記憶部は、前記体裁情報と、前記文書情報の前記論理構造を規定する１以上の論理情報とを対応付けて記憶する。親子関係記憶部は、前記論理情報同士の親子関係を記憶する。取得部は、抽出された前記体裁情報に対応する前記論理情報を前記定義記憶部から取得する。検索部は、抽出された前記文書情報に対して前記文書データ内で１つ前に位置する前記文書情報が前記構造化データとして出力される際の論理構造を規定する出力論理情報として決定された前記論理情報を基準に、前記親子関係記憶部において予め定められた前記親子関係の範囲内に含まれる１の前記論理情報を検索する。決定部は、前記検索部により検索された１の前記論理情報を前記出力論理情報として決定する。生成部は、前記文書情報と、決定された前記出力論理情報とを用いて前記構造化データを生成する。
【図面の簡単な説明】
【０００７】
【図１】図１は、第１の実施形態の構造化データ生成装置の機能ブロック図である。
【図２】図２は、第１の実施形態の構造化データ生成装置のハードウェア構成図である。
【図３】図３は、第１の実施形態の文書編集装置のユーザインタフェースの一例である。
【図４】図４は、第１の実施形態の構造化データ生成にかかる処理の流れを示すフロー図である。
【図５】図５は、第１の実施形態の論理情報検索処理にかかる処理の流れを示すフロー図である。
【図６】図６は、第１の実施形態の出力論理情報補完処理にかかる処理の流れを示すフロー図である。
【図７】図７は、第１の実施形態の親子関係記憶部のデータ構造を示す図である。
【図８】図８は、第１の実施形態の親子関係記憶部のデータ構造をツリー状に示す図である。
【図９】図９は、第１の実施形態の定義記憶部のデータ構造を示す図である。
【図１０】図１０は、第１の実施形態において処理される文書データの一例を示す図である。
【図１１】図１１は、第１の実施形態において文書データから生成された構造化データの一例を示す図である。
【図１２】図１２は、第１の実施形態の親子関係記憶部における現在出力論理情報の位置を示す図である。
【図１３】図１３は、第１の実施形態において処理される文書データの一例を示す図である。
【図１４】図１４は、第１の実施形態の親子関係記憶部における現在出力論理情報の位置を示す図である。
【図１５】図１５は、第１の実施形態において処理される文書データの一例を示す図である。
【図１６】図１６は、第１の実施形態において文書データから生成された構造化データの一例を示す図である。
【図１７】図１７は、第１の実施形態において処理される文書データの一例を示す図である。
【図１８】図１８は、第１の実施形態において処理される文書データの一例を示す図である。
【図１９】図１９は、第１の実施形態において文書データから生成された構造化データの一例を示す図である。
【図２０】図２０は、第１の実施形態において処理される文書データの一例を示す図である。
【図２１】図２１は、第１の実施形態において処理される文書データの一例を示す図である。
【図２２】図２２は、第１の実施形態において文書データから生成された構造化データの一例を示す図である。
【図２３】図２３は、第１の実施形態の親子関係記憶部のデータ構造をツリー状に示す図である。
【図２４】図２４は、第１の実施形態の定義記憶部のデータ構造を示す図である。
【図２５】図２５は、第１の実施形態において処理される文書データの一例を示す図である。
【図２６】図２６は、第１の実施形態において処理される文書データの一例を示す図である。
【図２７】図２７は、第１の実施形態において文書データから生成された構造化データの一例を示す図である。
【図２８】図２８は、第２の実施形態の構造化データ生成装置、及び文書データ生成装置の機能ブロック図である。
【発明を実施するための形態】
【０００８】
以下に、本発明の実施形態にかかる構造化データ生成装置１の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
（第１の実施形態）
【０００９】
図１は、本発明の実施形態にかかる構造化データ生成装置１の機能ブロック図である。構造化データ生成装置１は、文書編集装置１０によって作成、及び編集された文書データ２０を入力データとし、ＸＭＬなどの論理タグによって記述された構造化データを生成して出力する。文書編集装置１０は、例えばＷｏｒｄ（登録商標）などの、文書編集用のプログラムにより実現される。なお、以下の説明において、文書情報とは、文書データを構成する段落単位の文書のまとまりを意味する。また、体裁情報とは、文書情報に対して設定された「見出し」や「標準」などの体裁を示す情報である。また、論理情報とは、「／ｂｏｏｋ／ｃｈａｐｔｅｒ」などのように、階層構造で示すことができる論理タグを意味しており、この論理情報からは、＜ｂｏｏｋ＞、及び＜ｃｈｐｔｅｒ＞の開始論理タグと、＜／ｃｈａｐｔｅｒ＞、及び＜／ｂｏｏｋ＞の終了論理タグとが、構造化データの生成時には生成される。
【００１０】
構造化データ生成装置１は、抽出部４１、取得部４２、検索部４３、体裁変更部４４、決定部４５、生成部４６、判定部４８、及び補完部４９を備えている。また、構造化データ生成装置１は、ＲＯＭである記憶装置５０を備えており、記憶装置５０には、定義記憶部５１、親子関係記憶部５２、及び設定記憶部５３が設けられている。
【００１１】
図２は、構造化データ生成装置１のハードウェア構成を示している。図２に示されるように、構造化データ生成装置１はＣＰＵ１０１、ＲＯＭ５０、ＲＡＭ６１、及び通信Ｉ／Ｆ６２がそれぞれバス６１によって接続された構成をなっている。図１における、抽出部４１、取得部４２、検索部４３、体裁変更部４４、決定部４５、生成部４６、判定部４８、及び補完部４９はＲＯＭ５０にプログラムとして記憶されており、ＣＰＵ１０１がＲＡＭ６０上でプログラムを実行することでその機能が実現される。
【００１２】
抽出部４１は、入力された文書データ２０から文書情報と、体裁情報とを抽出する。抽出部４１は、本実施形態においては、文書データの先頭から順に、段落単位で文書情報と体裁情報とを抽出する。図３は、文書編集装置１０によって編集中の文書データ２０の一例を示しており、図３においては、２１ａ〜２１ｌで示された文書情報がそれぞれ、抽出部４１によって抽出される１単位の文書情報である。また、文書編集装置１０においては、右側に表示される体裁情報２２を選択して、文書情報２１ａ〜２１ｌごとに体裁情報を設定することができる。例えば、文書情報２１ｃにおいては、「章タイトル」が選択されており、文書情報２１ｇにおいては「節タイトル」が選択されている。
【００１３】
続いて、図１に戻り、取得部４２は、抽出された体裁情報と対応する論理情報を定義記憶部５１から取得する。定義記憶部５１は、体裁情報毎に、対応する論理情報を記憶している。なお、それぞれの体裁情報に対応する論理情報は一つとは限らず複数存在する場合もある。例えば、体裁「標準」は、文書の通常の段落を示す体裁であるが、「章」における本文と、「節」における本文は、体裁としては同じ「標準」が設定される一方、論理情報としてはそれぞれ異なる論理情報のパスが割当られている。
【００１４】
検索部４３は、取得部４２が取得した論理情報を親子関係記憶部５２の親子関係に基づき検索する。親子関係記憶部５２は、論理情報同士の親子関係を記憶する。検索の方法としては、検索対象とする論理情報に対応した文書情報に対して、文書データ２０内において１つ前に位置する文書情報の構造化データ３０として出力される際の論理構造を規定する出力論理情報として選ばれた論理情報（以下、「現在出力論理情報」と示す）を基準として、予め定めた親子関係の範囲内を検索する。例えば、図３において、文書情報２１ｄに対応する論理情報を検索する場合は、文書情報２１ｃの出力論理情報として決定された論理情報を基準として検索が実行される。
【００１５】
また、検索部４３は、予め設定された検索範囲の中で、検索を行う。例えば、検索範囲が１と設定されている場合は、現在出力論理情報を基準に、親子構造における兄弟関係にある論理情報を起点として下位側の論理情報までが検索範囲となる。また、検索範囲が２と設定されている場合は、現在出力論理情報を基準に、親に該当する論理情報と兄弟関係にある論理情報を起点として下位側の論理情報までが検索範囲となる。
【００１６】
また、検索部４３は、現在出力論理情報に対応する体裁のタイプに応じて、検索範囲を変更することもできる。例えば、本実施形態においては、体裁が「リスト」のものと、「リスト」以外のものとで、検索範囲を変更する。「リスト」以外のものの場合は、上述のように現在出力論理情報を基準とした検索範囲となる。一方、「リスト」の場合は、リストの階層の深さであるリストレベルの値の差から検索対象範囲を決定する。
【００１７】
具体的には、現在出力論理情報に対応する体裁が「リスト」であって、リストレベルが１である場合、文書データ２０において次に位置する文書情報が、１つ深い階層のリストの体裁であれば、この文書情報のリストレベルは２となる。この場合、現在出力論理情報と、検索対象となる体裁に対応した論理情報とのリストレベルの差は＋１であるため、親子関係記憶部５２において現在出力論理情報より一層分深い位置に対応するリスト形式の論理情報があるか否かが検索されることとなる。検索部４３は、取得部４２により取得した論理情報が検索できた場合は、検索結果を決定部４５へと出力する。一方、検索部４３は、取得した論理情報が検索しても見つからなかった場合は、その旨を体裁変更部４４へと通知する。
【００１８】
体裁変更部４４は、取得部４２によって体裁情報に対応する論理情報が定義記憶部５１から取得できなかった場合、又は検索部４３によって取得された論理情報が検索できなかった場合に、該当する文書情報の体裁を変更する。どのような体裁に変更するかについては、後述する。
【００１９】
決定部４５は、文書情報を構造化データとして出力する際に利用する出力論理情報にどの論理情報を用いるかを決定する。決定部４５は、検索部４３が検索した論理情報を出力論理情報として決定する。
【００２０】
判定部４８は、出力論理情報として決定されたそれぞれの論理情報の間で予め定めた論理エラー基準に基づき、論理構造のエラーがないかを判定する。論理構造のエラーとは、例えば「章見出し」と「副節見出し」との間に「節見出し」がない等のように、論理構造としてあってはいけない態様を示している。論理エラー基準は、予め自由に設定することができる。本実施形態においては、論理エラー基準の一例として、前後の論理情報間の見出しレベルやリストレベルの差が＋２以上、又は−２以下であるか否か、検索範囲が２以上の範囲で論理情報が検索されたか否かがあげられる。これらの場合、論理タグが不完全となり論理エラーを起こすため、判定部４８が論理エラーと判定するようにする。
【００２１】
判定部４８によって論理構造にエラーが存在すると判定された場合は、補完部４９によって、正しい論理構造になるために必要な出力論理情報が補完される。この際、補完部４９は論理情報だけではなく、仮の文書情報も補完して生成するようにすることもできる。
【００２２】
生成部４６は、出力論理情報と、文書情報とから、論理タグによって記述された構造化データを生成する。例えば、上述した論理情報「／ｂｏｏｋ／ｃｈａｐｔｅｒ」からは、＜ｂｏｏｋ＞、及び＜ｃｈｐｔｅｒ＞の開始論理タグと、＜／ｃｈａｐｔｅｒ＞、及び＜／ｂｏｏｋ＞の終了論理タグとで文書情報を挟んだ構造化データが最終的には生成される。
【００２３】
設定記憶部５３は、文書データを構造化データへ変換する際に用いられるデータを予め記憶している。例えば、上述した検索部４３がどこまでの範囲を検索するかを示した最大検索範囲や、体裁変更部４４がどの体裁に変更するかを決める設定、補完部４９が仮の文書情報として補完する内容を決める設定などが設定記憶部５３に記憶されている。
【００２４】
次に、図４を用い構造化データの生成にかかる処理の流れを説明する。処理は、例えば文書データを選択した状態で、利用者が構造化データへの変換を指示した場合などに開始される。まず始めに、初期化処理が実行される（ステップＳ１０１）。初期化処理では、現在出力論理情報Ｎｒを未定義の状態に設定する。続いて、抽出部４１は、文書データから文書情報と、体裁情報とをそれぞれ１つずつ抽出する（ステップＳ１０２）。続いて、取得部４２は、抽出した体裁情報と対応する論理情報を取得するべく定義記憶部５１へ問い合わせる（ステップＳ１０３）。次いで、対応する論理情報が定義記憶部５１に存在するか否かの判定が行われる（ステップＳ１０４）。
【００２５】
論理情報が存在すると判定された場合（ステップＳ１０４：Ｙｅｓ）、次いで抽出された文書情報が文書データにおいて、１つ目の文書情報であるか否かの判定が行われる（ステップＳ１０５）。１つ目の文書情報でないと判定された場合（ステップＳ１０５：Ｎｏ）、論理情報検索処理が実行される（ステップＳ１０６）。１つ目の文書情報であると判定された場合（ステップＳ１０５：Ｙｅｓ）、決定部４５は、取得された論理情報を出力論理情報として決定する（ステップＳ１１０）。
【００２６】
ステップＳ１０６の論理情報検索処理について、図５を用いて説明する。図５に示されるように、取得した論理情報のうち、ｊ番目であることを示すパラメータｊを初期化して１とする（ステップＳ２０１）。次いで、検索部４３は取得された論理情報のうちｊ番目の値Ｉｊを選択する（ステップＳ２０２）。次いで、検索部４３は検索範囲ｉを初期化して１とする（ステップＳ２０３）。検索範囲ｉは出力論理情報Ｎｒを基準として、親子関係記憶部５２に記憶された親子関係のうち距離ｉの範囲が検索されることを示す値である。
【００２７】
次いで、検索部４３は取得した論理情報Ｉｊが、親子関係記憶部５２の検索範囲ｉの範囲にあるか否かを判定する（ステップＳ２０４）。論理情報Ｉｊが、親子関係記憶部５２の検索範囲ｉの範囲にあると判定された場合（ステップＳ２０４：Ｙｅｓ）、決定部４５は、その論理情報Ｉｊを出力論理情報として決定し、ステップ１０７へと戻る（ステップＳ２０５）。一方、論理情報Ｉｊが、親子関係記憶部５２の検索範囲ｉの範囲にないと判定された場合（ステップＳ２０４：Ｎｏ）、検索範囲ｉが最大検索範囲であるか否かが判定される（ステップＳ２０６）。最大検索範囲とは、現在出力論理情報Ｎｒを基準としてどこまでの範囲を検索するかを定めた最大の範囲である。
【００２８】
検索範囲ｉが最大検索範囲でないと判定された場合（ステップＳ２０６：Ｎｏ）、検索範囲ｉに１加算され、もう一つ広い検索範囲において、ステップＳ２０４から再度論理情報Ｉｊが検索される（ステップＳ２０７）。一方、検索範囲ｉが最大検索範囲であると判定された場合（ステップＳ２０６：Ｙｅｓ）、取得部４２によって取得された全ての論理情報について、検索が完了したかの判定が実行される（ステップＳ２０８）。
【００２９】
全ての論理情報について、検索が完了していないと判定された場合（ステップＳ２０８：Ｎｏ）、検索部４３はｊに１加算し、取得した論理情報のうち次の論理情報に対してステップＳ２０２からの処理を繰り返す（ステップＳ２０９）。一方、全ての論理情報について、検索が完了したと判定された場合（ステップＳ２０８：Ｙｅｓ）、すなわち取得した全ての論理情報が検索しても見つからなかった場合、検索対象の論理情報に対応する体裁を変更する旨設定し、ステップＳ１０７へと戻る（ステップＳ２１０）。
【００３０】
次いで、図４に戻り、体裁の変更が必要か否かが判定される（ステップＳ１０７）。体裁変更が必要か否かは、ステップＳ２１０における設定がなされたか否か、あるいは取得部４２により論理情報が定義記憶部５１から取得できたか否かによる。体裁の変更が必要でないと判定された場合（ステップＳ１０７：Ｎｏ）、判定部４８は、出力する論理情報に論理エラーが存在し、補完が必要か否かを判定する（ステップＳ１０８）。補完が必要と判定された場合（ステップＳ１０８：Ｙｅｓ）、補完部４９は出力論理情報補完処理を実施する（ステップＳ１０９）。一方、補完が必要ではないと判定された場合（ステップＳ１０８：Ｎｏ）、ステップＳ１０９の出力論理情報補完処理はスキップされ、ステップＳ１１１に移行する。
【００３１】
次いで、図６を用いて、出力論理情報補完処理の流れについて説明する。図６に示されるように、まず補完部４９は新たに決定された出力論理情報と、文書データ２０においてその前に位置する現在出力論理情報Ｎｒとの間に挿入する開始論理タグ、および終了論理タグを生成する（ステップＳ３０１）。次いで、補完部４９は、挿入する開始論理タグ、及び終了論理タグの間に仮の文書情報を生成し、ステップＳ１１１へと戻る（ステップＳ３０２）。仮の文書情報とは、利用者に対して新たに論理情報が挿入されたことを認知させるために予め設定された文書情報である。例えば、論理情報の種類ごとに予め設定しておくことができる。
【００３２】
次いで、生成部４６は、一つ前に位置する出力論理情報の終了論理タグと、今回の処理で処理対象となっている文書情報と、決定された出力論理情報から導かれる開始論理タグと、をこの順番で生成する。（ステップＳ１１１）。次いで、現在出力論理情報Ｎｒが今回決定された出力論理情報に変更される（ステップＳ１１２）。そして、全ての文書情報に対して、構造化データの出力が完了したか否かの判定が行われる（ステップＳ１１３）。全ての文書情報に対して、構造化データへの出力が完了したと判定された場合（ステップＳ１１３：Ｙｅｓ）、文書データの終了を示す終了論理タグが出力されて、処理は終了する。この時点で文書データの構造化データへの変換が完了する。一方、構造化データの出力が完了していないと判定された場合（ステップＳ１１３：Ｎｏ）、ステップＳ１０２から、次の文書情報と体裁情報との抽出が開始される。
【００３３】
また、体裁の変更が必要と判定された場合（ステップＳ１０７：Ｙｅｓ）、又は論理情報が存在しないと判定された場合（ステップＳ１０４：Ｎｏ）、体裁変更部４４は体裁変更処理を実施する（ステップＳ１１５）。体裁変更処理においては、文書情報の体裁が予め設定された定義記憶部５１に記憶済みの体裁へと変更される。
【００３４】
以上に示した構造化データ生成装置１において、実際の文書データを用いて変換の態様について説明する。図７は、論理情報の親子関係を記憶する親子関係記憶部５２の一例を示している。例えば、「／ｂｏｏｋ」という論理情報は、子として「／Ｃｈａｐｔｅｒ」を有することが定義されている。図８はこの親子関係の構造をツリーとして表示したものである。
【００３５】
図９は、定義記憶部５１のデータ構造の一例を示した図である。図９に示されるように、定義記憶部５１は、データとして、体裁名、体裁タイプ、見出しレベル、及び論理情報パスを備えている。体裁名とは、体裁の名称であり、文書編集装置１０にて選択される体裁と同一の名称がつかわれており、「章タイトル」、「節タイトル」、「副節タイトル」、「標準」、「箇条書き」、及び「番号付きリスト」が図９の例では示されている。
【００３６】
体裁タイプとは、体裁の分類情報であり、「見出し」、「標準段落」、及び「リスト」の３種類に分類されている。見出しレベルとは、見出しの階層の深さを示すパラメータであり、論理構造のエラー判定の際に用いられる。すなわち、見出しレベルは構造化データ中では連続している必要があり、見出しレベルが「１」と「３」の見出しが連続することはできない。
【００３７】
論理情報パスは、それぞれの体裁に対応する論理情報の親子関係記憶部５２におけるパスの位置が記されている。論理情報パスによって、体裁情報は、対応する論理情報が特定される。なお、１つの体裁情報に対して、複数の論理情報が対応付けられている場合もあり、例えば「標準」に対しては、「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｐａｒａ」、「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｓｅｃｔｉｏｎ／ｓｕｂｓｅｃｔｉｏｎ／ｐａｒａ」、及び「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｓｅｃｔｉｏｎ／ｐａｒａ」の３つの論理情報のパスが設定されている。
【００３８】
図１０は、ある文書データの一例を示した図であり、図１１はこの文書データを構造化データへと変換した後の状態を示している。図１０では、体裁「章タイトル」によって記述された「ＸＭＬについて」という文書情報６０ａと、体裁「標準」によって記述された「本節ではＸＭＬについて説明する」という文書情報６０ｂとからなる。この文書データから構造化データを生成する場合について説明する。
【００３９】
まず、文書情報６０ａは、取得部４２により論理情報は「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｔｉｔｌｅ」の論理情報パスが１つのみ取得され、１つ目の文章情報であるため（ステップＳ１０５：Ｙｅｓ）、また前の文書情報との補完の必要性もない（ステップＳ１０８：Ｎｏ）。したがって、「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｔｉｔｌｅ」が出力論理情報として決定され（ステップＳ１１０）、図１１に示されるように、＜／ｂｏｏｋ＞、＜ｃｈａｐｔｅｒ＞、及び＜ｔｉｔｌｅ＞３つの開始論理タグが生成された後に、文書情報「ＸＭＬについて」が生成された状態となる。また、現在出力論理情報Ｎｒに「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｔｉｔｌｅ」が設定される。
【００４０】
次いで、次の文書情報６０ｂが抽出部４１により抽出され、「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｐａｒａ」、「「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｓｅｃｔｉｏｎ／ｓｕｂｓｅｃｔｉｏｎ／ｐａｒａ」」、及び「「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｓｅｃｔｉｏｎ／ｐａｒａ」の３つの論理情報パスが取得部４２により取得される（ステップＳ１０２〜Ｓ１０４）。文書情報６０ｂは、１つ目の文書情報ではないため（ステップＳ１０５：Ｎｏ）、検索部４３は、現在出力論理情報Ｎｒである「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｔｉｔｌｅ」を起点にそれぞれの取得した論理情報について検索を実施する（ステップＳ１０６）。
【００４１】
図１２は、論理情報の親子関係において現在出力論理情報Ｎｒを起点としたツリーを示している。そして、検索がされると、「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｐａｒａ」がヒットするため（ステップＳ２０４：Ｙｅｓ）、「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｐａｒａ」が文書情報６０ｂの出力論理情報として決定される（ステップＳ２０５）。「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｔｉｔｌｅ」と、「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｐａｒａ」との間には論理エラーはないため（ステップＳ１０８：Ｎｏ）、図１１に示されるように、１つ前の文書情報６０ａの終了論理タグ＜／ｔｉｔｌｅ＞、及び文書情報６０ｂの開始論理タグ＜ｐａｒａ＞と、文書情報６０ｂの「本節はＸＭＬにいついて説明する」が出力される。そして、全ての文書情報６０ａ、及び６０ｂについて出力が完了したため（ステップＳ１１３：Ｙｅｓ）、「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｐａｒａ」の出力論理情報から、文書の終了を示す終了タグとして、＜／ｐａｒａ＞、＜／ｃｈａｐｔｅｒ＞、及び＜／／ｂｏｏｋ＞が順に出力されて処理が終了する（ステップＳ１１４）。
【００４２】
次いで別の文書データから構造化データを生成する例について図１３〜図１６を用いて説明する。この例においては、検索部４３による検索の結果、該当する論理情報が見つからず、体裁が変更される処理が実施される場合について説明する。図１３は、別の文書データの一例を示している。なお、この例においては、定義記憶部５１、及び親子関係記憶部５２の構成は、図７〜図９において示したものと同様のものである。
【００４３】
なお、文書情報の体裁を変更する方法としては、現在出力論理情報Ｎｒに対応する体裁情報の体裁タイプがリストである場合は、検索対象の論理情報に対応する体裁はこの現在出力論理情報Ｎｒに対応する別のリスト形式の体裁に変更される。また、現在出力論理情報Ｎｒに対応する体裁情報の体裁タイプがリスト以外である場合は、検索対象の論理情報に対応する体裁は「標準」へと変更される。なお、変更の方法は、このような例でなくともよく、例えば全て「標準」に変更することもでき、構造化データの論理構造上エラーにならない態様であれば、変更の方法は適宜変更することができる。
【００４４】
図１３に示されるように、この文書データは、体裁が「章タイトル」である「ＸＭＬについて」という文書情報７０ａ、体裁が「箇条書き」の「箇条書き１」という文書情報７０ｂ、体裁が「番号付リスト」の「入れ子のリスト」という文書情報７０ｃ、及び体裁が「箇条書き」の「箇条書き２」という文書情報７０ｄの４つの文書情報を含んでいる。文書情報７０ｂ、及び文書情報７０ｄはリストレベルが１、番号付リストはリストレベルが２である。
【００４５】
検索部４３による検索の結果、該当する論理情報が見つからないのは、文書情報７０ｃに対する処理の部分であるため、この部分を中心に説明する。まず、文書情報７０ｂに対する出力論理情報を決定する処理が完了した時点で、現在出力論理情報Ｎｒは図１４に示されるように、「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｐａｒａ」となっている。次の文書情報７０ｃが抽出部４１により抽出され、「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｏｒｄｅｒｅｄｌｉｓｔ／ｏｌｉｔｅｍ／ｐａｒａ」、「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｏｒｄｅｒｅｄｌｉｓｔ／ｏｌｉｔｅｍ／ｏｒｄｅｒｅｄｌｉｓｔ／ｏｌｉｔｅｍ／ｐａｒａ」の２つの論理情報パスが取得部４２により取得される（ステップＳ１０２〜Ｓ１０４）。１つ目の文書情報ではないため（ステップＳ１０５：Ｎｏ）、検索部４３は、現在出力論理情報Ｎｒである「ｂｏｏｋ／ｃｈａｐｔｅｒ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｐａｒａ」を起点にそれぞれの取得した論理情報について検索を実施する（ステップＳ１０６）。
【００４６】
そして、検索がされると、文書情報７０ｂと、文書情報７０ｃそれぞれの体裁におけるリストレベルの差である＋１の範囲、すなわち現在出力論理情報のパスである「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｐａｒａ」より一つ深い階層である「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｐａｒａ」と、取得された２つの論理情報パスが一致しないため（ステップＳ２０４：Ｎｏ）、体裁変更がされる旨設定される（ステップＳ２１０）。そして、体裁変更が必要と判定されて（ステップＳ１０７：Ｙｅｓ）、体裁変更処理が実施される（ステップＳ１１５）。図１５に示されるように、体裁変更は上述したとおり、現在出力論理情報Ｎｒに対応する体裁の体裁タイプが「リスト」であることから、体裁は「箇条書き」の体裁に変更される。
【００４７】
次いで、変更された体裁に対して論理情報を取得する処理が繰り返され、「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｐａｒａ」、及び「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｐａｒａ」の２つの論理情報パスが取得部４２により取得される（ステップＳ１０２〜Ｓ１０４）。１つ目の文書情報ではないため（ステップＳ１０５：Ｎｏ）、検索部４３は、現在出力論理情報Ｎｒである「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｐａｒａ」を起点にそれぞれの取得した論理情報について検索を実施する（ステップＳ１０６）。
【００４８】
この場合、取得された「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｐａｒａ」の論理情報パスが、現在出力論理情報Ｎｒに比べて１つ深い階層のパスであることから、検索部４３による検索の結果、「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｐａｒａ」がヒットするため（ステップＳ２０４：Ｙｅｓ）、「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｐａｒａ」が文書情報７０ｃの出力論理情報として決定される（ステップＳ２０５）。
【００４９】
次いで、現在出力論理情報Ｎｒと、決定された論理情報「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｐａｒａ」との間で論理エラーはないため（ステップＳ１０８：Ｎｏ）、構造化データ出力に必要となる終了論理タグと開始論理タグとが出力される（ステップＳ１１１）。終了論理タグは、図１６に示されるように、「箇条書き１」に続く＜／ｐａｒａ＞であり、開始タグ列は＜ｉｔｅｍｉｚｅｄ  ｌｉｓｔ＞＜ｉｌｉｔｅｍ＞＜ｐａｒａ＞の３つである。そして、文書情報「入れ子のリスト」が出力される。
【００５０】
次いで、現在出力論理情報Ｎｒが「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｐａｒａ」に変更される（ステップＳ１１２）。まだ、全ての文書情報について構造化データへの変換へと出力完了していないため（ステップＳ１１３：Ｎｏ）、次の文書情報である７０ｃの「箇条書き２」についての処理がステップＳ１０２から繰り返される。
【００５１】
次の文書情報７０ｄが抽出部４１により抽出され、体裁が「箇条書き」に該当する「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｐａｒａ」、「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｐａｒａ」の２つの論理情報パスが取得部４２により取得される（ステップＳ１０２〜Ｓ１０４）。１つ目の文書情報ではないため（ステップＳ１０５：Ｎｏ）、検索部４３は、現在出力論理情報Ｎｒである／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｐａｒａ」を起点にそれぞれの取得した論理情報について検索を実施する（ステップＳ１０６）。
【００５２】
文書情報７０ｄのリストレベルは１であり、文書情報７０ｃのリストレベルは２であることから、文書情報７０ｄにおけるリストレベルの差は−１である。したがって、現在出力論理情報Ｎｒである「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｐａｒａ」を基準に、一つ浅い階層の検索を行うと、「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｐａｒａ」がヒットするため、（ステップＳ２０４：Ｙｅｓ）、「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｐａｒａ」が文書情報７０ｄの出力論理情報として決定される（ステップＳ２０５）。
【００５３】
次いで、現在出力論理情報Ｎｒと、決定された論理情報「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｐａｒａ」との間で論理エラーはないため（ステップＳ１０８：Ｎｏ）、構造化データ出力に必要となる終了論理タグと開始論理タグとが出力される（ステップＳ１１１）。終了論理タグは、図１６に示されるように、「入れ子のリスト」に続く＜／ｐａｒａ＞、＜／ｉｌｉｔｅｍ＞、＜／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ＞、及び＜／ｉｌｉｔｅｍ＞であり、開始タグ列は＜ｉｌｉｔｅｍ＞、及び＜ｐａｒａ＞の２つである。そして、文書情報「箇条書き２」が出力される。そして、全ての文書情報７０ａ〜７０ｄについて出力が完了したため（ステップＳ１１３：Ｙｅｓ）、「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ／ｉｌｉｔｅｍ／ｐａｒａ」の現在出力論理情報Ｎｒから、文書の終了を示す終了タグとして、＜／ｐａｒａ＞、＜／ｉｌｉｔｅｍ＞、＜／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ＞、＜／ｃｈａｐｔｅｒ＞、及び＜／／ｂｏｏｋ＞が順に出力されて処理が終了する（ステップＳ１１４）。
【００５４】
次いで、別の文書データから構造化データを生成する例について図１７〜図１９を用いて説明する。この例においては、図１７に示されるように、「章タイトル」の見出しと、「副節タイトル」との間に「節タイトル」がないため、論理構造上のエラーが存在している。本例では、「章タイトル」の見出しと、「副節タイトル」との間に「節タイトル」を補完することで、論理構造として正しい状態に修正する処理の流れについて説明する。なお、詳細な説明は省略するが、上述の方法で「副節タイトル」の体裁を「節タイトル」に変更するようにして論理エラーを解消することも可能である。
【００５５】
図１７に示されるように、この文書データは、体裁が「章タイトル」である「ＸＭＬについて」という文書情報８０ａ、体裁が「標準」の「本節ではＸＭＬについて説明する」という文書情報８０ｂ、体裁が「副節タイトル」の「これまでの経緯」という文書情報８０ｃ、及び体裁が「標準」の「これまでの経緯について説明する」という文書情報８０ｄの４つの文書情報を含んでいる。文書情報８０ａの見出しレベルは１、文書情報８０ｃの見出しレベルは３である。
【００５６】
まず、文書情報８０ｂに対する出力論理情報を決定する処理が完了した時点で、現在出力論理情報Ｎｒは「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｐａｒａ」となっている。次の文書情報８０ｃが抽出部４１により抽出され、「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｓｅｃｔｉｏｎ／ｓｕｂｓｅｃｔｉｏｎ／ｔｉｔｌｅ」の論理情報パスが取得部４２により取得される（ステップＳ１０２〜Ｓ１０４）。１つ目の文書情報ではないため（ステップＳ１０５：Ｙｅｓ）、論理情報検索処理が実施される（ステップＳ１０６）。論理情報パス「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｓｅｃｔｉｏｎ／ｓｕｂｓｅｃｔｉｏｎ／ｔｉｔｌｅ」は、現在出力論理情報Ｎｒは「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｐａｒａ」を基準とすると、兄弟の階層に位置する現在出力論理情報Ｎｒの下位に位置するため、検索の結果ヒットする（ステップＳ２０４：Ｙｅｓ）。したがって、この論理情報パス「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｓｅｃｔｉｏｎ／ｓｕｂｓｅｃｔｉｏｎ／ｔｉｔｌｅ」は、出力論理情報として決定される（ステップＳ２０５）。ここで、文書情報８０ａと文書情報８０ｃとの見出しレベルの差が＋２であり、論理エラーとなり、補完が必要と判定される（ステップＳ１０８：Ｙｅｓ）。
【００５７】
現在出力論理情報Ｎｒのパスは「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｐａｒａ」であり、対象となっている論理情報のパスは、「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｓｅｃｔｉｏｎ／ｓｕｂｓｅｃｔｉｏｎ／ｔｉｔｌｅ」であるため、共通するパスである「／ｂｏｏｋ／ｃｈａｐｔｅｒ／」がこの２つのパスの分岐点となる。そして、分岐点から現在対象となっている「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｓｅｃｔｉｏｎ」が親子関係記憶部５２に存在しているが、このパスに更に一つの論理タグを追加したパス「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｓｅｃｔｉｏｎ／ｔｉｔｌｅ」が、「節タイトル」の体裁情報に対応する論理情報として存在しているため、この論理情報が補完される。
【００５８】
そして、図１８に示されるように、この「節タイトル」の論理情報に該当する論理タグとして、終了論理タグの＜／ｐａｒａ＞と、開始論理タグの＜ｓｅｃｔｉｏｎ＞、＜ｔｉｔｌｅ＞が挿入される（ステップＳ３０１）。次いで、この「節タイトル」に対応する仮の文書として予め設定された「節タイトルを入力してください」という文章が挿入される（ステップＳ３０２）。
【００５９】
そして、ステップＳ１１１へと戻り、文書情報８０ｃの論理情報として、終了論理タグの＜／ｔｉｔｌｅ＞と、開始論理タグの＜ｓｕｂｓｅｃｔｉｏｎ＞、及び＜ｔｉｔｌｅ＞と、文書情報として「これまでの経緯について説明する。」を順に出力する。
【００６０】
次いで別の文書データから構造化データを生成する例について図２０〜図２２を用いて説明する。この例においては、図２０に示されるように、この文書データは、体裁が「章タイトル」である「ＸＭＬについて」という文書情報９０ａ、体裁が「段落」の「本節ではＸＭＬについて説明する」という文書情報９０ｂの２つの文書情報を含んでいる。この場合、定義記憶部５１に記憶されていない、「段落」という体裁が含まれている。
【００６１】
まず、文書情報９０ａに対する出力論理情報を決定する処理が完了した時点で、現在出力論理情報Ｎｒは「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｔｉｔｌｅ」となっている。次の文書情報９０ｂが抽出部４１により抽出され、「段落」に対応する論理情報が取得部４２により参照されるが、定義記憶部５１には存在しないため（ステップＳ１０４：Ｎｏ）、体裁情報変更処理が行われる（ステップＳ１１５）。
【００６２】
この例の場合、図２１に示されるように「段落」の体裁は「標準」の体裁に変更される。以降は、図１０〜図１２の例で示した場合と同じ処理の流れとなり、最終的には図２２で示した構造化データが得られる。
【００６３】
次に、図２３〜図２７の例を用い、検索範囲として２つ以上先祖まで検索範囲を拡大した例について説明する。この例においては、定義記憶部５１、及び親子関係記憶部５２に記憶されたデータ構造もこれまで説明した例とは異なっている。図２３は、親子関係記憶部５２に記憶された論理情報の親子関係を示している。また、図２４は、定義記憶部５１に記憶された体裁情報のデータ構造を示している。図２４に示されるように、新たに体裁情報として「参考文献タイトル」、「付録タイトル」、「タスクタイトル」、「参考文献」、及び「操作」が定義されている。
【００６４】
図２５に示されるように、この文書データは、体裁が「章タイトル」である「ＸＭＬについて」という文書情報１００ａ、体裁が「標準」の「本節ではＸＭＬについて説明する」という文書情報１００ｂ、体裁が「参考文献」の「参考文献１」という文書情報１００ｃ、及び体裁が「参考文献」の「参考文献２」という文書情報１００ｄの４つの文書情報を含んでいる。
【００６５】
この例において、３番目の文書情報１００ｃである「参考文献１」と、体裁情報「参考文献」が抽出部４１により抽出されたところから説明する。なお、文書情報１００ｂに対する出力論理情報を決定する処理が完了した時点で、現在出力論理情報Ｎｒは「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｐａｒａ」となっている。まず、取得部４２により「／ｂｏｏｋ／ｒｅｆｅｒｅｎｃｅ／ｒｅｆｅｎｔｒｙｌｉｓｔ／ｒｅｆｅｎｔｒｙ／ｐａｒａ」の論理情報パスが取得される（ステップＳ１０２〜Ｓ１０４）。この論理情報「／ｂｏｏｋ／ｒｅｆｅｒｅｎｃｅ／ｒｅｆｅｎｔｒｙｌｉｓｔ／ｒｅｆｅｎｔｒｙ／ｐａｒａ」について、論理情報検索処理が実施されると、検索範囲ｉ＝１として設定された場合、「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｔｉｔｉｅ」、及び「／ｂｏｏｋ／ｃｈａｐｔｅｒ／ｉｔｅｍｉｚｅｄ  ｌｉｓｔ」以下の範囲が検索範囲となることから、検索にはヒットしない（ステップＳ２０４：Ｎｏ）。そして、最大検索範囲が２として設定されているため（ステップＳ２０６：Ｎｏ）、ｉが１加算され（ステップＳ２０７）、新たに検索が実施される。
【００６６】
検索範囲が２の場合においては、「／ｂｏｏｋ／ｒｅｆｅｒｅｎｃｅ」以下の範囲が検索範囲となることから、論理情報「／ｂｏｏｋ／ｒｅｆｅｒｅｎｃｅ／ｒｅｆｅｎｔｒｙｌｉｓｔ／ｒｅｆｅｎｔｒｙ／ｐａｒａ」もヒットする（ステップＳ２０４：Ｙｅｓ）。そして、論理情報「／ｂｏｏｋ／ｒｅｆｅｒｅｎｃｅ／ｒｅｆｅｎｔｒｙｌｉｓｔ／ｒｅｆｅｎｔｒｙ／ｐａｒａ」が出力論理情報として決定される（ステップＳ２０５）。
【００６７】
次いで、論理エラー基準に基づき、補完が必要か否かの判定においては、検索範囲が２以上の領域で検索されたものであるため、このままでは論理エラーが発生することから（ステップＳ１０８：Ｙｅｓ）、出力論理情報補完処理が実施される。
【００６８】
挿入する終了論理タグ、及び開始論理タグを決定する方法は、図１７で示した方法と同様であるため、説明は省略する。結果としては、図２６に示されるように、体裁が「参考文献タイトル」である「参考文献一覧」という文書情報が補完部４９により、生成される。図２７は最終的に出力される構造化データを示している。
【００６９】
なお、検索範囲を拡大するか否かを、検索対象の論理情報によって決めることもできる。具体的には、定義記憶部５１に記憶されるデータとして、新たに「拡大フラグ」を設定し、拡大フラグで検索範囲を許可しないフラグを設定した論理情報パスの場合は、ステップＳ２０６の判定でｉが最大検索範囲となっていなくとも、強制的に判定結果をＮｏとするような処理を行うことにより、この構成は実現することができる。
【００７０】
以上に示した本実施形態の構造化データ生成装置１においては、体裁情報に対応する論理情報が複数存在する場合であっても、現在出力論理情報を基準として、検索可能な論理情報を、実際に構造化データとして出力する出力論理情報として決定することとしたため、利用者の手を煩わすことなく、文書データを構造化データへと自動的に変換することができるようになる。
【００７１】
また、文書データから抽出される文書情報と、体裁情報とに対応する論理情報が、論理構造として好ましくないものの場合に、体裁情報を適切なものに変換したり、新たな論理情報を挿入したりすることにより、自動的に正しい構造化データが生成されるようになる。
【００７２】
また、体裁情報を変更する際に、体裁情報のタイプによって、その変更の態様を変更できるようにすることで、よりフレキシブルで、精度の高い体裁の変更をすることができるようになる。
【００７３】
（第２の実施形態）
次に第２の実施形態にかかるデータ処理装置について説明する。図２８は、第２の実施形態におけるデータ処理装置１０００を示している。データ処理装置１０００は、第１の実施形態で示した構造化データ生成装置１に加え、文書データ生成装置２００が新たに設けられている。文書データ生成装置２００は、構造化データ３０から文書データ２０を生成する装置である。
【００７４】
文書データ生成装置２００は、文書抽出部２０１、体裁選択部２０２、及び文書生成部２０３を備えている。文書抽出部２０１は、構造化データ３０から論理情報と、文書情報とを抽出する。体裁選択部２０２は、抽出された論理情報と文書情報との組み合わせごとに、定義記憶部５１を参照して、論理情報から文書情報に対応する体裁情報を選択する。文書生成部２０３は、体裁情報に基づき、文書情報の表示態様を決定して、文書データを生成する。
【００７５】
このような文書データ生成装置２００を設けることで、構造化データ３０から文書データ２０への変換もできるようになる。文書データ生成装置２００と構造化データ生成装置１とを両方備えることで、構造化データから文書データへと再変換した内容をチェックしつつ、より望むべく構造化データの形式へと近づけることができるようになる。
【００７６】
以上の各実施形態において述べた構成は以下のように変更することもできる。
【００７７】
例えば、体裁情報の変更や、論理情報の保管があった場合には、利用者にその旨を通知して、どういう変更があったかの確認を促すような通知部を備えた構成をとることもできる。その場合、文書編集装置１０上の表示画面にその旨を表示するといった構成で実現可能である。
【００７８】
また、記憶装置５０は構造化データ生成装置１と同じハードウェア上に設ける構成を示したが、別のハードウェアに設け、文書データ生成装置２００とデータを共有するようにしてもよい。また、構造化データ生成装置１、及び文書データ生成装置２００のそれぞれの別の記憶装置を設けるようにしてもよい。
【００７９】
また、論理エラーの基準は適宜変更することができ、またエラー判定は構造化データの生成時には実施せず、生成後の構造化データを手動で論理エラーのチェックをするようにしてもよい。
【００８０】
また、体裁変更部や補完部は設けなくてもよく、文書データの体裁情報を論理エラーが発生しないように記載していれば、この場合でも文書データを適切に構造化データへと変換することができる。
【００８１】
また、本実施形態にかかる構造化データ生成装置１で実行される各プログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ（Compact  Disk  Read  Only  Memory）、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ（Compact  Disk  Recordable）、ＤＶＤ（Digital  Versatile  Disk）等のコンピュータで読み取り可能な記録媒体に記録されてコンピュータプログラムプロダクトとして提供されてもよい。
【００８２】
また、本実施形態にかかる構造化データ生成装置１で実行される各プログラを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、本実施形態にかかる構造化データ生成装置１で実行される各プログラをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【００８３】
また、本実施形態にかかる構造化データ生成装置１で実行される各プログラを、ＲＯＭ等に予め組み込んで提供するように構成してもよい。
【００８４】
本発明の実施形態を説明したが、実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００８５】
１  構造化データ生成装置
１０  文書編集装置
２０  文書データ
３０  構造化データ
４１  抽出部
４２  取得部
４３  検索部
４４  体裁変更部
４５  決定部
４６  生成部
４８  判定部
４９  補完部
５０  記憶装置
５１  定義記憶部
５２  親子関係記憶部
５３  設定記憶部
６１  バス
６２  通信Ｉ／Ｆ
２００  文書データ生成装置
２０１  文書抽出部
２０２  体裁選択部
２０３  文書生成部
１０００  データ処理装置
【図１】
2013206261.tif 000003
【図２】
2013206261.tif 000004
【図３】
2013206261.tif 000005
【図４】
2013206261.tif 000006
【図５】
2013206261.tif 000007
【図６】
2013206261.tif 000008
【図７】
2013206261.tif 000009
【図８】
2013206261.tif 000010
【図９】
2013206261.tif 000011
【図１０】
2013206261.tif 000012
【図１１】
2013206261.tif 000013
【図１２】
2013206261.tif 000014
【図１３】
2013206261.tif 000015
【図１４】
2013206261.tif 000016
【図１５】
2013206261.tif 000017
【図１６】
2013206261.tif 000018
【図１７】
2013206261.tif 000019
【図１８】
2013206261.tif 000020
【図１９】
2013206261.tif 000021
【図２０】
2013206261.tif 000022
【図２１】
2013206261.tif 000023
【図２２】
2013206261.tif 000024
【図２３】
2013206261.tif 000025
【図２４】
2013206261.tif 000026
【図２５】
2013206261.tif 000027
【図２６】
2013206261.tif 000028
【図２７】
2013206261.tif 000029
【図２８】
2013206261.tif 000030