(57)【要約】【課題】テキストをＸＭＬに変換する変換ルールの設定を柔軟に行えるようにする。【解決手段】解析定義作成部２１は、テキストを解析してＸＭＬ（extensible markup language）に変換する変換ルールを設定するための設定画面として、少なくとも前記テキスト内の解析対象となる範囲の単位であるブロックを決定する条件の指定と、当該ブロック内の個別データを抽出する条件の指定とが可能な設定画面を生成し、前記設定画面を通じて指定される個々の条件に基づき、前記変換ルールとして、当該個々の条件を示す情報にそれぞれタグが付された文字列を含む解析定義データを作成する。【選択図】図２
2008217170.tif 000002
【特許請求の範囲】
【請求項１】
テキストを解析してＸＭＬ（extensible markup language）に変換する変換ルールを設定するための設定画面として、少なくとも前記テキスト内の解析対象となる範囲の単位であるブロックを決定する条件の指定と、当該ブロック内の個別データを抽出する条件の指定とが可能な設定画面を生成する手段と、
前記設定画面を通じて指定される個々の条件に基づき、前記変換ルールとして、当該個々の条件を示す情報にそれぞれタグが付された文字列を含む解析定義データを作成する手段と
を具備することを特徴とする情報処理装置。
【請求項２】
前記解析定義データに従って前記テキストをＸＭＬに変換する手段を更に具備することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記設定画面の中には、
前記ブロックを抽出する条件を指定するための第１の項目と、
前記ブロックに含まれる個別データを抽出する条件を指定するための第２の項目と、
前記第１の項目で指定される条件を繰り返し適用する範囲もしくは前記第２の項目で指定される条件を繰り返し適用する範囲を指定するための第３の項目と、
抽出対象のブロックを整形処理する条件を指定するための第４の項目と
が表示されることを特徴とする請求項１又は２記載の情報処理装置。
【請求項４】
前記設定画面の中に表示される所定の項目に対して条件の指定が行われなかった場合に不適切であることを示す情報を表示する手段を更に具備することを特徴とする請求項１乃至３のいずれかに記載の情報処理装置。
【請求項５】
前記設定画面の中に表示される所定の項目に対して条件の指定が行われなかった場合にその項目に対して予め定められた特別条件を指定する補完処理を行う手段を更に具備することを特徴とする請求項１乃至４のいずれかに記載の情報処理装置。
【請求項６】
テキストを解析してＸＭＬ（extensible markup language）に変換する変換ルールを設定するための設定画面として、少なくとも前記テキスト内の解析対象となる範囲の単位であるブロックを決定する条件の指定と、当該ブロック内の個別データを抽出する条件の指定とが可能な設定画面を生成する機能と、
前記設定画面を通じて指定される個々の条件に基づき、前記変換ルールとして、当該個々の条件を示す情報にそれぞれタグが付された文字列を含む解析定義データを作成する機能と
をコンピュータに実現させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ変換に使用される変換ルールの設定を行うことが可能な情報処理装置およびプログラムに関する。
【背景技術】
【０００２】
近年、通信社から新聞社などへ電文として配信される記事の形式をテキストからＸＭＬ（extensible markup language）（ＮｅｗｓＭＬなどのＸＭＬベースの言語を含む）へと順次推移する作業が進められている。各新聞社側においても、記事をＸＭＬ形式で管理する環境づくりが進められている。その一方で、新聞社が自社で発信するような記事は、依然としてテキスト形式で作成されることが少なくない。今後は、このようなテキストなどについても、ＸＭＬへの変換を行ってＸＭＬファイルとして管理し、更にはそのＸＭＬファイルを他の用途にも二次的に利用できるようにすることが望まれる。
【０００３】
テキストの解析やＸＭＬへの変換を行う技術には種々なものがある。例えば、特許文献１には、テキストを文単位に分割する等の処理を通じて読み上げに適した部分を切り出す手法が開示されている。また、特許文献２には、自然文テキストに対して形態素解析等により文節単位での切り出しを行う等の処理を通じてＸＭＬ文書を作成する手法が開示されている。
【特許文献１】特開２００２−３３４０７０号公報
【特許文献２】特開２００３−２８８３３２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記特許文献１および特許文献２を含む従来の手法では、テキストから抽出すべき対象を変更し又は設定したい場合や、その対象に対する変換結果の形態を変更し又は設定したい場合には、柔軟に対応することができない。特に、操作者にとって視覚的に分かりやすい設定画面上で上記した変更の作業や設定の作業を行わせる技術は今後非常に有望視される技術であり、これらの技術は未だ提案されていない。
【０００５】
本発明は上記実情に鑑みてなされたものであり、テキストをＸＭＬに変換する変換ルールの設定を柔軟に行うことが可能な情報処理装置およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る情報処理装置は、テキストを解析してＸＭＬ（extensible markup language）に変換する変換ルールを設定するための設定画面として、少なくとも前記テキスト内の解析対象となる範囲の単位であるブロックを決定する条件の指定と、当該ブロック内の個別データを抽出する条件の指定とが可能な設定画面を生成する手段と、前記設定画面を通じて指定される個々の条件に基づき、前記変換ルールとして、当該個々の条件を示す情報にそれぞれタグが付された文字列を含む解析定義データを作成する手段とを具備することを特徴とする。
【０００７】
本発明に係るプログラムは、テキストを解析してＸＭＬ（extensible markup language）に変換する変換ルールを設定するための設定画面として、少なくとも前記テキスト内の解析対象となる範囲の単位であるブロックを決定する条件の指定と、当該ブロック内の個別データを抽出する条件の指定とが可能な設定画面を生成する機能と、前記設定画面を通じて指定される個々の条件に基づき、前記変換ルールとして、当該個々の条件を示す情報にそれぞれタグが付された文字列を含む解析定義データを作成する機能とをコンピュータに実現させることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、テキストをＸＭＬに変換する変換ルールの設定を柔軟に行うことが可能となる。
【発明を実施するための最良の形態】
【０００９】
以下、図面を参照して、本発明の実施形態について説明する。
【００１０】
図１は、本発明の一実施形態に係る情報処理システムの構成の一例を示す図である。
【００１１】
情報処理システムは、例えば新聞社に設けられるものであり、サーバシステム１、通信部２、および複数の端末１１，１２，１３…により構成される。通信部２は、通信社から電文として配信されてくる記事を受信し、受信した記事をサーバシステム１へ渡す。サーバシステム１は、記事の素材を管理する素材管理サーバや、記事の素材を用いて記事の加工を行う記事加工サーバなど、各種のサーバを備えている。各サーバは、端末１１，１２，１３…からの要求に応じ、対応するデータベース（ＤＢ）を使用することにより要求された処理を実行する。端末１１，１２，１３…は、それぞれサーバシステム１に各種の処理の実行を要求することができる。
【００１２】
図２は、本実施形態に係る情報処理装置の構成の一例を示す図である。
【００１３】
情報処理装置（コンピュータ）２０は、例えば前述のサーバシステム１に含まれるあるサーバ（例えば記事加工サーバ）に相当する。この情報処理装置２０には、プロセッサ（ＣＰＵ（central processing unit）など）により実行されるコンピュータプログラムとして、解析定義作成部２１および解析部２２が搭載されている。記憶装置２３には、解析定義作成部２１により作成される解析定義ファイルを保存するための解析定義保存部が格納される。記憶装置２４には、解析部２２へ入力されるテキストファイルが格納される。記憶装置２５には、解析部２２から出力されるＸＭＬファイルが格納される。ここでいう記憶装置２４及び記憶装置２５は物理的に分かれている構成となっているが、物理的に一体の記憶装置としてその内部構成として論理的に分かれているようになっていても構わない。
【００１４】
なお、入力されるテキストファイル、及び出力されるＸＭＬファイルはファイル形式を想定して記載しているが、ファイル形式に限定せず、データベースのテーブル形式で構成されていても構わない。
【００１５】
解析定義作成部２１は、ある端末からの要求に応じ、記事のテキストを解析してそれをＸＭＬに変換する変換ルール（以下、「解析定義」と呼ぶ場合もある）を設定するための設定画面を生成する機能を有する。この設定画面では、少なくとも上記テキスト内の解析対象となる範囲の単位であるブロックを決定する条件の指定と、当該ブロック内の個別データを抽出する条件の指定とが可能である。生成された設定画面の情報は、要求元の端末へ送られ、当該端末の表示部に表示される。
【００１６】
また、解析定義作成部２１は、この生成された設定画面を通じて指定される個々の条件に基づき、上記変換ルールとして、当該個々の条件を示す情報にそれぞれタグが付された文字列を含む解析定義データ（ファイル）を作成し、これを記憶装置２３内の解析定義保存部に保存する。なお、解析定義データはファイル形式を想定して記載しているが、ファイル形式に限定せず、データベースのテーブル形式で構成されていても構わない。
【００１７】
解析部２２は、記憶装置２３内の解析定義保存部に保存されている解析定義データに従って、記憶装置２４に記憶されているテキストに対する解析範囲の決定と個別データの抽出とを行うことにより、当該テキストをＸＭＬに変換する変換処理を行い、変換処理後のＸＭＬデータを記憶装置２５に格納したり要求元の端末に送信したりする。
【００１８】
図３は、解析定義の一例を説明するための図である。
【００１９】
入力されるテキストが、例えば、東京商店の従業員３名の氏名、年齢、性別、居住地を示すデータ一覧である場合を考える。解析定義データには、「解析対象の範囲（ブロック）」を決定する条件と、解析対象の範囲の中の「個別データ」を抽出する条件とが定義される。
【００２０】
例えば、図３に示されるように、「解析対象の範囲」を決定する条件として、親ブロック３１および複数の子ブロック４１が定義される。親ブロック３１は、テキストの先頭から８行目までに相当し、ＸＭＬのタグとしてrootを割り付けることが定義される。複数の子ブロック４１は、それぞれ、親ブロック３１の中の２行分に相当し、ＸＭＬのタグとしてemployeeを割り付けることが定義される。
【００２１】
一方、「個別データ」を抽出する条件として、複数の子ブロック４１の中にそれぞれ存在する氏名、年齢、性別、居住地に対し、図４中の条件に示されるような位置で抽出を行うことが定義される。また、これら氏名、年齢、性別、居住地に対し、それぞれ、ＸＭＬのタグとしてname、age、sex、placeを割り付けることが定義される。
【００２２】
このような解析定義データに基づいて解析・変換が行われた結果であるＸＭＬデータが、図３の右側に示されている。この結果に示されるように、親ブロック３１と子ブロック４１との関係に応じた階層構造が形成され、かつ、抽出された個々の個別データにそれぞれタグが付されているので、各種の用途（例えば、従業員の平均年齢を算出する処理、性別の割合を算出する処理、居住地の都道府県別の分布を算出する処理など）に使用しやすい汎用性の高いデータ構造となっていることがわかる。また、上記ＸＭＬデータを利用する際に、タグを用いたデータアクセスが可能となる。
【００２３】
これにより、新たに抽出すべきデータ項目の追加が生じたり、逆に、削除が生じたりしても、ＸＭＬデータを利用する側のシステムにおいて処理手順の大幅な変更等を行う必要がない。
【００２４】
なお、複数の親ブロックのそれぞれの中に子ブロックがある場合、個々の子ブロック内の個別データ抽出条件を定義するにあたり、親ブロック毎に異なる個別データ抽出条件を定義することが可能である。例えば図５に示されるように、テキスト中にブロック５２，５２，５３があり、これらのブロックのそれぞれの中に子ブロックがある場合を考える。この場合、ブロック５１中の子ブロック内の個別データ抽出条件と、ブロック５２の中の子ブロック内の個別データ抽出条件と、ブロック５３の中の子ブロック内の個別データ抽出条件とを異ならせることも可能である。
【００２５】
また、解析定義を作成する際に指定可能な条件の種類としては、図６に示されるように「繰り返し定義」、「ブロック変換」、「ブロック抽出条件」、「個別抽出条件」の４種が挙げられる。以下、これら４種の条件について詳細に説明する。
【００２６】
１．繰り返し定義
繰り返し定義は、ブロック抽出条件、個別抽出条件を繰り返し適用する範囲を定義する事を目的として使用される。解析対象に対して繰り返し定義が適用された結果は“行単位”に変換（整形）され、ブロック抽出条件、個別抽出条件の全ての繰り返し（行）に対して適用される。
【００２７】
２．ブロック変換
ブロック変換は、ブロック抽出条件、個別抽出条件を設定可能にするために、ブロックを整形することを目的として使用される。解析対象に対してブロック変換が適用された結果は“行単位”に整形され、整形されたブロックに対し、繰り返し適宜、ブロック抽出条件、個別抽出条件が適用される。
【００２８】
３．ブロック抽出条件
ブロック抽出条件は、個別抽出条件の適用範囲を決定するために、解析対象をブロックという単位で分割する事を目的として使用される。解析対象に対してブロック抽出条件（複数可）が適用された結果は“行単位”となる。そのため、１つのブロックに対して複数のブロックを定義（入れ子定義）した場合は、元のブロックがそれぞれ別の行（ブロック）として扱われる。最終的には、複数のブロック条件を適用することにより個別抽出条件の適用範囲となる“最小ブロック単位”となるようにブロック条件を指定する。また、上位のブロック定義に繰り返し指定があるときは、繰り返し対象の全てのブロックに対して同じブロック抽出条件が適用される。
【００２９】
４．個別抽出条件
個別抽出条件は、入力テキストから最終的に抽出する個別データ項目とタグ名を定義することを目的として使用される。個別抽出条件（複数可）の適用範囲は１つのブロックのみである。そのため、個別抽出条件の定義のためには、必ず上位にブロックを定義して適用範囲を決定する。また、上位のブロック定義に繰り返し指定があるときは、繰り返し対象の全てのブロックに対して同じ個別抽出条件が適用される。
【００３０】
図７は、テキストをルビ付きＸＭＬデータに変換する処理の一例を示す図である。
【００３１】
例えば、テキストが「？本＊日（ほん＊じつ）は？晴＊天（せい＊てん）なり。」である場合を考える。
【００３２】
このテキストを解析対象として、ルビ付き文字の抽出を実現するためには、次のような処理を実行する。
【００３３】
（１）繰り返し解析を行う範囲を設定する。
【００３４】
（２）上記（１）の繰り返し解析の処理内容を設定する。
【００３５】
（２−１）「？▲＊■（△＊□）」の部分のみを他の文字列から分けて抽出する。
【００３６】
（但し、▲，■，△，□は、任意の文字であることを示している。）
（２−２）「▲と△」、「■と□」のペアで個別データを抽出する。
【００３７】
このような抽出を行ってタグを付す変換処理を行うことにより、次のような結果が得られる。
【００３８】
<root>
<Rb><R1>本</R1><R2>ほん</R2></Rb><Rb><R1>日</R1><R2>じつ</R2></Rb>
<Rb><R1>晴</R1><R2>せい</R2></Rb><Rb><R1>天</R1><R2>てん</R2></Rb>
</root>
図８は、解析定義の設定画面の一例を示す図である。ここでは、図７にて説明したルビ解析の例を適用している。
【００３９】
この設定画面は、領域７０Ａと領域７０Ｂとに分けられる。領域７０Ａには、作成する解析定義のファイル名、テスト電文（テストに使用するテキスト）のファイル名、表示方式などを指定することが可能である。
【００４０】
領域７０Ｂには、図６にて説明した各種の条件の指定が可能な項目が設けられる。ここでは、「繰り返し定義」を指定するための項目７１、「ブロック変換」を指定するための項目７２、および「ブロック抽出条件」を指定するための項目７３が設けられる。これらの項目の左側にある階層構造情報を見ることにより、設定対象となっているブロックもしくは項目がわかるようになっている。また、階層構造情報の中の所望の階層をクリック操作することにより、所望のブロックもしくは項目に対する条件指定を行えるようになっている。また、テスト電文の中の対象となっているテストデータを表示する領域７４、テストデータを作成中の解析定義で変換処理した実行結果をリアルタイムに表示する領域７５が設けられる。
【００４１】
ここで、領域７０Ｂ中に示される各種の項目についてより詳細に説明する。
【００４２】
・「繰り返し」は、現在選択されているブロックに対して同じ解析条件を繰り返し適用したいときに、その内容を以下から選択する。
【００４３】
「指定なし」：なにもしない。
【００４４】
「行方向」：「繰り返し値」で指定された行数で子ブロックとして取り出す。現在のブロックが空になるまで繰り返す。
【００４５】
「行方向（自動）」：現在のブロックが空になるまでブロック抽出を繰り返す。繰り返す行数が全く同一でない場合に指定する。（「終了位置」で「指定文字列＋」を指定した場合など）
「列方向」：「繰り返し値」で指定された列数（文字数）で子ブロックとして取り出す。現在のブロックが空になるまで繰り返す。
【００４６】
「列方向（ＣＳＶ列）」：「繰り返し値」で指定された文字列をＣＳＶの区切り文字とみなして列方向にブロックとして分割する。
【００４７】
・「繰り返し値」は、「繰り返し」の選択内容に応じた値を入力する。
【００４８】
・「ブロック変換」は、ブロックに対して行いたい変換内容を以下から選択する。
【００４９】
「縦横変換」：行と列を入れ替えることでブロックを変換する。
【００５０】
「指定字詰」：字詰め列数を「変換パラメータ」で指定した数となるようにブロックを変換する。
【００５１】
「指定文字区切」：「変換パラメータ」で指定した文字列を改行とみなしてブロックを変換する。
【００５２】
「指定文字区切（前ＳＰ）」：「変換パラメータ」で指定した文字列を改行とみなしてブロックを変換する。各行での列数が異なる場合は同一列数になるように全角スペースを行の先頭に付加する。
【００５３】
・「変換パラメータ」は、「ブロック変換」の選択内容に応じた値を入力する。
【００５４】
・「追加」は、現在のブロック内に、子ブロックもしくは子項目を追加する。ブロック内にはブロック、項目どちらか一種類のみ追加できる。ブロック、項目はそれぞれ複数追加できる。
【００５５】
・「削除」は、現在のブロック内の、子ブロックもしくは子項目を削除する。
【００５６】
・「タグ名」は、ブロック／項目のタグ名を入力する。
【００５７】
・「開始位置」は、ブロック／項目の開始位置の指定方法を以下から選択する。
【００５８】
「相対位置」：ブロック中の前の項目／ブロックの終了位置から「開始文字数」分の位置を開始位置とする。
【００５９】
「絶対位置」：ブロック内の先頭から「開始文字数」分の位置を開始位置とする。
【００６０】
「指定文字列」：「開始文字列」で指定された文字列が存在する行／列を検索、さらにそこから「開始文字数」で指定された数だけ行／列を移動する。
【００６１】
・「開始文字数」：「開始位置」の選択内容に応じた値を入力する。
【００６２】
・「終了位置」：ブロック／項目の終了位置の指定方法を以下から選択する。
【００６３】
「相対位置」：開始位置から「終了文字数」分の位置を終了位置とする。
【００６４】
「絶対位置」：ブロック内の先頭から「終了文字数」分の位置を終了位置とする。
【００６５】
「指定文字列」：「終了文字列」で指定された文字列が存在する行／列を検索、さらにそこから「終了文字数」で指定された数だけ行／列を移動する。
【００６６】
「最後まで」：現在のブロックの最終行を選択する。
【００６７】
「指定文字列＋」：現在行から次行を検査して「終了文字列」で指定された文字列が存在するならば、次の行も同様に検査していく。指定された文字列が存在しない場合にその行で検査を終了する。
【００６８】
・「終了文字数」：「終了位置」での選択内容に応じた値を入力する。
【００６９】
・「終了文字列」：「終了位置」での選択内容に応じた値を入力する。
【００７０】
図９は、解析定義の設定画面の別の例を示す図である。この設定画面は、図８の設定画面で編集対象としていたブロックの中に存在するある項目を編集対象とする画面である。図８の設定画面では、図９の設定画面と同様、「繰り返し定義」を指定するための項目８１、「ブロック変換」を指定するための項目８２が設けられる。特に、図８の設定画面とは異なり、「項目抽出条件」を指定するための項目８３が設けられる。また、テスト電文の中の対象となっているテストデータを表示する領域８４、テストデータを作成中の解析定義で変換処理した実行結果をリアルタイムに表示する領域８５が設けられる。
【００７１】
なお、実行結果の表示方式としては、領域７０Ａの中に示されるように「ＸＭＬ表示」と「テーブル表示」とが用意されており、所望の表示方式を選択することができる。図８および図９では、「ＸＭＬ表示」の方式で実行結果が表示されている。「テーブル表示」については、例えば図１０中の領域７５に示されるような形で表示される。ここでは、野球イニングの例が示されている。３つに分類された情報が横方向にテーブル形式で表示されている様子がわかる。
【００７２】
図１１に、図８〜図９にて説明した設定画面を通じて作成された解析定義ファイルの一例を示す。図１１からわかるように、抽出すべきブロックや項目がタグと組み合わせてＸＭＬ方式で定義されているので、ＸＭＬデータへの変換処理を確実に実行することができる。
【００７３】
次に、図１２を参照して、解析定義作成部２１による動作の一例を説明する。
【００７４】
解析定義作成部２１は、テスト電文を入力し（ステップＳ１１）、ブロック毎に、ブロック抽出のためのブロック変換の条件設定（ステップＳ１３）、ブロック抽出の条件設定（ステップＳ１４）、そのブロックの中での個別データ抽出の条件設定（ステップＳ２０）を含む第１のループ処理（ステップＳ１２〜Ｓ２１）を実行する。
【００７５】
第１のループ処理の中において、ブロック抽出の条件設定（ステップＳ１４）を行った後、もしそのブロックの中に子ブロックがあれば、子ブロック毎に、子ブロック抽出の条件設定（ステップＳ１７）および個別データ抽出の条件設定（ステップＳ１８）を含む第２のループ処理（ステップＳ１６〜Ｓ１９）を実行する。一方、子ブロックがなければ、第２のループ処理（ステップＳ１６〜Ｓ１９）は実行しない。
【００７６】
第１のループ処理（ステップＳ１２〜Ｓ２１）の後、操作者によって図８や図９にて示した実行ボタンが押下されるなどの操作がなされると、テスト電文の変換テストが実行される（ステップＳ２２）。テスト結果に問題が無く、操作者によって図８や図９にて示した保存ボタンが押下されるなどの操作がなされると、解析定義ファイルが作成され（ステップＳ２３）、解析定義作成部２１による動作が終了する。
【００７７】
次に、図１３および図１４を参照して、解析部２２による動作の一例を説明する。
【００７８】
図１３に示されるように、解析部２２は、解析定義作成部２１により作成された解析定義を読み込み（ステップＳ３１）、この解析定義に従って、対象のテキストをＸＭＬに変換する変換処理を実行する（ステップＳ３２）。この変換処理が完了すると、解析部２２による動作が終了する。次に、前述のステップＳ３２における変換処理の詳細を図１４に示す。
【００７９】
図１４に示されるように、解析部２２は、まず、与えられたテキストから変換対象となる処理範囲を抽出し（ステップＳ４１）、開始を示すタグを出力する（ステップＳ４２）。そして、変換対象となる処理範囲内の最初から最後まで、ブロック毎の変換処理（解析範囲の決定および個別データの抽出）を含むループ処理（ステップＳ４３〜Ｓ４７）を実行する。
【００８０】
このループ処理の中においては、現在の変換処理の対象となっているブロック内において子変換処理の条件が定義されているか否かが判定される（ステップＳ４４）。子変換処理は、親ブロックの中に１または２以上の子ブロックがある場合に、子ブロック毎に行われる変換処理（解析範囲の決定および個別データの抽出）を意味する。子変換処理の条件が定義されていなければ、現在の変換処理の対象となっているブロック内の個別データの抽出を行い、抽出した結果をタグと共に出力する（ステップＳ４５）。一方、子変換処理の条件が定義されていれば、子変換処理を実行する（ステップＳ４６）。
【００８１】
上記ループ処理（ステップＳ４３〜Ｓ４７）の完了後、終了を示すタグを出力し、解析部２２による動作が終了する。
【００８２】
このように、上記実施形態によれば、解析定義データの作成において、「繰り返し定義」、「ブロック変換」、「ブロック抽出条件」、「個別抽出条件」などの条件の指定を行える設定画面において、テストデータを用いた実行結果を見ながら設定の作業を行うことができるので、テキストをＸＭＬに変換する変換ルールを容易に作成できる。また、テキストから抽出すべき対象を変えたい場合や、変換結果の形態を変えたい場合にも、解析定義を容易に変更することができる。また、作成した解析定義に基づく変換結果をＸＭＬファイルとして作成することにより、要素の値以外にデータの持つ意味、関連、形式を一元的に扱うことが可能となるため、データ利用の汎用性を向上させることができる。具体的には、次のような効果が挙げられる。
【００８３】
・ＸＭＬから要素を抽出する手段は、いくつかの標準的な方法がさまざまなプラットフォームで実装されているため、汎用的に利用できる。
【００８４】
・テキストからの要素抽出と抽出した結果の加工とを分離して行うと、入力テキストフォーマットの変更を行う際には、変更のあった箇所に対する解析設定を変更するのみで良く、解析処理の変更箇所が局所化できる。
【００８５】
・要素の抽出結果に変更（追加、削除）が発生した場合でも、入力テキストを分析しその分析結果を二次的に利用する後段処理ではＸＭＬのタグ名や構造を元に値を取得するため、影響は変更があったタグを扱う箇所のみとなり、後段処理の変更箇所が局所化できる。
【００８６】
・同一のテキストフォーマットに対して後段処理で異なる加工を行う場合でも、テキスト解析部分は共通化できるため、汎用性が高くなる。
【００８７】
（変形例１）
上記実施形態における解析定義作成部２１の追加機能として、設定画面の中に表示される各種の解析用定義（ブロック定義、要素定義）の条件入力を行うための項目のうち、所定の項目に対して条件の指定が行われなかった場合に不適切もしくは不正であることを示すメッセージなどの情報を表示する機能を備えるようにしてもよい。この場合、所定の項目に対し、例えば「入力必須」を示す属性情報などを予め付与しておくことにより、その他の項目と区別することができる。この手法により、入力テキストを解析する時の事前フォーマット検証を容易に行える。
【００８８】
また、上記実施形態における解析定義作成部２１の追加機能として、設定画面の中に表示される各種の解析用定義（ブロック定義、要素定義）の条件入力を行うための項目のうち、所定の項目に対して条件の指定が行われなかった場合にその項目に対して予め定められた条件を指定する補完処理を行う機能を備えるようにしてもよい。この場合、所定の項目に対し、例えば、値が未入力のときに値を補うための仮の値である「暗黙値」の自動入力を行うことを示す属性情報などを予め付与しておけばよい。この手法により、入力テキストを解析する時に、動作しない等の不都合の発生を防ぐことができる。
【００８９】
（変形例２）
上記実施形態における解析定義作成部２１の追加機能として、入力テキスト解析時に使用する解析用定義（ブロック定義、要素定義）からＤＴＤ（document type definition）を自動生成する機能を備えるようにしてもよい。このようにすると、抽出結果（出力ＸＭＬファイル）を利用する側でフォーマット検証を行うことが可能となる。
【００９０】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００９１】
【図１】本発明の一実施形態に係る情報処理システムの構成の一例を示す図。
【図２】同実施形態に係る情報処理装置の構成の一例を示す図。
【図３】解析定義の一例を説明するための図。
【図４】抽出項目の条件を説明するための図。
【図５】各ブロックの中の子ブロック内の個別データ抽出条件を異ならせることが可能であることを説明するための図。
【図６】解析定義を作成する際に指定可能な４種類の条件を説明するための図。
【図７】テキストをルビ付きＸＭＬデータに変換する処理の一例を示す図。
【図８】解析定義の設定画面の一例を示す図。
【図９】解析定義の設定画面の別の例を示す図。
【図１０】テーブル形式の表示を含む設定画面の一例を示す図。
【図１１】設定画面を通じて作成された解析定義ファイルの一例を示す図。
【図１２】解析定義作成部による動作の一例を示すフローチャート。
【図１３】解析部による動作の一例を示すフローチャート。
【図１４】図１３中の変換処理の詳細の一例を示すフローチャート。
【符号の説明】
【００９２】
１…サーバシステム、２…通信部、１１，１２，１３…端末、２０…情報処理装置、２１…解析定義作成部、２２…解析部、２３，２４，２５…記憶装置。
【図１】
2008217170.tif 000003
【図２】
2008217170.tif 000004
【図３】
2008217170.tif 000005
【図４】
2008217170.tif 000006
【図５】
2008217170.tif 000007
【図６】
2008217170.tif 000008
【図７】
2008217170.tif 000009
【図８】
2008217170.tif 000010
【図９】
2008217170.tif 000011
【図１０】
2008217170.tif 000012
【図１１】
2008217170.tif 000013
【図１２】
2008217170.tif 000014
【図１３】
2008217170.tif 000015
【図１４】
2008217170.tif 000016