(57)【要約】【課題】テキストをＸＭＬに変換する変換ルールの設定を柔軟に行うことができ、縦書き・横書き混在の複雑なテキストにも対応することができるようにすること。【解決手段】解析設定処理部５１は、テキストＴ１を解析してＸＭＬに変換する変換ルールを設定するための設定画面として、少なくともテキストＴ１内の解析対象となる範囲の単位であるブロックの中の文字列を縦書きとして解析するのか横書きとして解析するのかを指定するための書式指定項目と、当該ブロックを行方向に分割して解析するのか列方向に分割して解析するのかを指定するための分割モード指定項目とが表示される第１の表示領域と、当該ブロックを分割して得られる個々のブロック毎に文字列の切り出し範囲を指定するための切り出し範囲指定項目が表示される複数の第２の表示領域とを含む設定画面を生成し、設定画面を通じて指定される個々の条件に基づき、前記変換ルールとして当該個々の条件を示す情報にそれぞれタグが付された文字列を含む解析設定情報を作成する。【選択図】      図２
2009059110.tif 000002
【特許請求の範囲】
【請求項１】
テキストを解析してＸＭＬ（extensible markup language）に変換する変換ルールを設定するための設定画面として、少なくとも前記テキスト内の解析対象となる範囲の単位であるブロックの中の文字列を縦書きとして解析するのか横書きとして解析するのかを指定するための書式指定項目と、当該ブロックを行方向に分割して解析するのか列方向に分割して解析するのかを指定するための分割モード指定項目とが表示される第１の表示領域と、当該ブロックを分割して得られる個々のブロック毎に文字列の切り出し範囲を指定するための切り出し範囲指定項目が表示される複数の第２の表示領域とを含む設定画面を生成する手段と、
前記設定画面を通じて指定される個々の条件に基づき、前記変換ルールとして、当該個々の条件を示す情報にそれぞれタグが付された文字列を含む解析設定情報を作成する手段と
を具備することを特徴とする情報処理装置。
【請求項２】
前記複数の第２の表示領域の各々には、更に、前記切り出し範囲指定項目において切り出し範囲が指定された文字列の抽出を行うか否かを指定するための抽出指定項目が表示されることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記複数の第２の表示領域の各々には、更に、少なくとも前記切り出し範囲指定項目および前記抽出指定項目において行われた指定を無効とするか否かを指定するための無効指定項目が表示されることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記複数の第２の表示領域は、互いに異なる色で色付けされた色付け部分を有し、
前記設定画面は、テキストが表示されるテキスト表示領域を含み、各第２の表示領域の色付け部分の色と同じ色によって、当該テキスト中の対応する文字列が色付けされることを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記第１の表示領域には、更に、文字列をどのように整形するかを指定するための整形指定項目が表示されることを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記第１の表示領域には、更に、文字列の切り出しをどのような条件で繰り返すかを指定するための繰り返し指定項目が表示されることを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
テキストを解析してＸＭＬ（extensible markup language）に変換する変換ルールを設定するための設定画面として、少なくとも前記テキスト内の解析対象となる範囲の単位であるブロックの中の文字列を縦書きとして解析するのか横書きとして解析するのかを指定するための書式指定項目と、当該ブロックを行方向に分割して解析するのか列方向に分割して解析するのかを指定するための分割モード指定項目とが表示される第１の表示領域と、当該ブロックを分割して得られる個々のブロック毎に文字列の切り出し範囲を指定するための切り出し範囲指定項目が表示される複数の第２の表示領域とを含む設定画面を生成する機能と、
前記設定画面を通じて指定される個々の条件に基づき、前記変換ルールとして、当該個々の条件を示す情報にそれぞれタグが付された文字列を含む解析設定情報を作成する機能と
をコンピュータに実現させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テキストを解析してＸＭＬ（extensible markup language）に変換する変換ルールの設定を行うことが可能な情報処理装置およびプログラムに関する。
【背景技術】
【０００２】
近年、通信社から新聞社などへ電文として配信される記事の形式をテキストからＸＭＬ（ＮｅｗｓＭＬなどのＸＭＬベースの言語を含む）へと順次推移する作業が進められている。各新聞社側においても、記事をＸＭＬ形式で管理する環境づくりが進められている。その一方で、新聞社が自社で発信するような記事は、依然としてテキスト形式で作成されることが少なくない。今後は、このようなテキストなどについても、ＸＭＬへの変換を行ってＸＭＬファイルとして管理し、更にはそのＸＭＬファイルを他の用途にも二次的に利用できるようにすることが望まれる。
【０００３】
テキストの解析やＸＭＬへの変換を行う技術には種々なものがある。例えば、特許文献１には、テキストを文単位に分割する等の処理を通じて読み上げに適した部分を切り出す手法が開示されている。また、特許文献２には、自然文テキストに対して形態素解析等により文節単位での切り出しを行う等の処理を通じてＸＭＬ文書を作成する手法が開示されている。
【特許文献１】特開２００２−３３４０７０号公報
【特許文献２】特開２００３−２８８３３２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記特許文献１および特許文献２を含む従来の手法では、テキストから抽出すべき対象を変更し又は設定したい場合や、その対象に対する変換結果の形態を変更し又は設定したい場合には、柔軟に対応することができない。
【０００５】
更には、従来の手法では、横書きの単純なテキストを対象としているため、縦書き・横書き混在の複雑なテキストに対しては全く対処することができない。
【０００６】
特に、操作者にとって視覚的に分かりやすい設定画面上で上記した変更の作業や設定の作業を行わせる技術は今後非常に有望視される技術であり、これらの技術は未だ提案されていない。
【０００７】
本発明は上記実情に鑑みてなされたものであり、テキストをＸＭＬに変換する変換ルールの設定を柔軟に行うことができ、縦書き・横書き混在の複雑なテキストにも対応することができる情報処理装置およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明に係る情報処理装置は、テキストを解析してＸＭＬ（extensible markup language）に変換する変換ルールを設定するための設定画面として、少なくとも前記テキスト内の解析対象となる範囲の単位であるブロックの中の文字列を縦書きとして解析するのか横書きとして解析するのかを指定するための書式指定項目と、当該ブロックを行方向に分割して解析するのか列方向に分割して解析するのかを指定するための分割モード指定項目とが表示される第１の表示領域と、当該ブロックを分割して得られる個々のブロック毎に文字列の切り出し範囲を指定するための切り出し範囲指定項目が表示される複数の第２の表示領域とを含む設定画面を生成する手段と、前記設定画面を通じて指定される個々の条件に基づき、前記変換ルールとして、当該個々の条件を示す情報にそれぞれタグが付された文字列を含む解析設定情報を作成する手段とを具備することを特徴とする。
【０００９】
本発明に係るプログラムは、テキストを解析してＸＭＬ（extensible markup language）に変換する変換ルールを設定するための設定画面として、少なくとも前記テキスト内の解析対象となる範囲の単位であるブロックの中の文字列を縦書きとして解析するのか横書きとして解析するのかを指定するための書式指定項目と、当該ブロックを行方向に分割して解析するのか列方向に分割して解析するのかを指定するための分割モード指定項目とが表示される第１の表示領域と、当該ブロックを分割して得られる個々のブロック毎に文字列の切り出し範囲を指定するための切り出し範囲指定項目が表示される複数の第２の表示領域とを含む設定画面を生成する機能と、前記設定画面を通じて指定される個々の条件に基づき、前記変換ルールとして、当該個々の条件を示す情報にそれぞれタグが付された文字列を含む解析設定情報を作成する機能とをコンピュータに実現させることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、テキストをＸＭＬに変換する変換ルールの設定を柔軟に行うことができ、縦書き・横書き混在の複雑なテキストにも対応することができる。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照して、本発明の実施形態について説明する。
【００１２】
図１は、本発明の一実施形態に係る情報処理システムの構成の一例を示す図である。
【００１３】
情報処理システムは、例えば新聞社に設けられるものであり、サーバシステム１００、通信部２００、および複数の端末１０１，１０２，１０３…により構成される。通信部２００は、通信社から電文として配信されてくる記事を受信し、受信した記事をサーバシステム１００へ渡す。サーバシステム１００は、記事の素材を管理する素材管理サーバや、記事の素材を用いて記事の加工を行う記事加工サーバなど、各種のサーバを備えている。各サーバは、端末１０１，１０２，１０３…からの要求に応じ、対応するデータベース（ＤＢ）を使用することにより要求された処理を実行する。端末１０１，１０２，１０３…は、それぞれサーバシステム１００に各種の処理の実行を要求することができる。
【００１４】
次に、図２および図３を参照して、図１中のサーバシステム１００に設けられる情報処理装置（コンピュータ）の機能について説明する。図２は、サーバシステム１００中の情報処理装置３００に備えられる解析設定処理部の機能を説明するためのブロック図である。一方、図３は、サーバシステム１００中の情報処理装置３００に備えられる解析実行処理部の機能を説明するためのブロック図である。
【００１５】
情報処理装置３００は、例えば前述のサーバシステム１００に含まれるあるサーバ（例えば記事加工サーバ）に相当するものであり、テキスト解析ライブラリ５０および記憶部Ｄ１，Ｄ２を有する。
【００１６】
テキスト解析ライブラリ５０は、プロセッサ（ＣＰＵ（central processing unit）など）により実行されるコンピュータプログラムとして実現されるものであり、解析設定処理部５１および解析実行処理部５２を有する。
【００１７】
記憶部Ｄ１は、解析設定処理部５１に入力される解析対象テキスト（テスト用のテキスト）Ｔ１や、解析実行処理部５２に入力される解析対象テキスト（運用上のテキスト）Ｔ２を記憶する記憶装置である。
【００１８】
記憶部Ｄ２は、解析設定処理部５１から出力され且つ解析実行処理部５２に入力されるＸＭＬ形式の解析設定情報Ｘ１や、解析実行処理部５２から出力されるＸＭＬ形式の解析結果Ｘ２を記憶する記憶装置である。
【００１９】
上述の解析対象テキストＴ１、解析対象テキストＴ２、解析設定情報Ｘ１、解析結果Ｘ２は、ファイル形式を想定しているが、その他の形式で構成されていてもよい。
【００２０】
解析設定処理部５１は、図４に示すように設定画面生成部５１Ａおよび解析設定情報作成部５１Ｂを有する。
【００２１】
設定画面生成部５１Ａは、ある端末からの要求に応じ、解析対象テキストＴ１を解析してそれをＸＭＬに変換する変換ルール（解析定義）を設定するための設定画面を生成する機能である。この設定画面は、少なくとも当該テキスト内の解析対象となる範囲の単位であるブロックの中のテキスト（即ち、文字列）を縦書きとして解析するのか横書きとして解析するのかを指定するための書式指定項目と、当該ブロックを行方向に分割して解析するのか列方向に分割して解析するのかを指定するための分割モード指定項目とが表示される第１の表示領域と、当該ブロックを分割して得られる個々のブロック毎に文字列の切り出し範囲を指定するための切り出し範囲指定項目が表示される複数の第２の表示領域とを含む。生成された設定画面の情報は、要求元の端末へ送られ、当該端末の表示部に表示される。
【００２２】
解析設定情報作成部５１Ｂは、設定画面生成部５１Ａにより生成された設定画面を通じて指定される個々の条件に基づき、上記変換ルールとして、当該個々の条件を示す情報にそれぞれタグが付された文字列を含む解析設定情報Ｘ１を作成し、これを記憶部Ｄ２に格納したり要求元の端末に送信したりする機能である。
【００２３】
解析実行処理部５２は、記憶部Ｄ２に保存されている解析設定情報Ｘ１に従って、記憶部Ｄ１に記憶されている解析対象テキストＴ２からＸＭＬ形式の解析結果Ｘ２を生成する機能であり、当該解析対象テキストＴ２に対する解析範囲の決定と文字等の抽出とを行うことにより、当該解析対象テキストＴ２をＸＭＬに変換する変換処理を行い、変換処理後のＸＭＬ形式の解析結果Ｘ２を記憶部Ｄ２に格納したり要求元の端末に送信したりすることができる。
【００２４】
図５は、図４中の設定画面生成部５１Ａにより生成される設定画面において操作者がブロック毎に入力することのできる主な設定項目を示す図である。
【００２５】
主な設定項目には、書式６１、分割モード６２、整形指定６３、繰り返し指定６４、切り出し指定６５、および抽出６６がある。
【００２６】
書式６１は、上でも述べたように、テキスト内の解析対象となる範囲の単位であるブロックの中の文字列を縦書きとして解析するのか横書きとして解析するのかを指定するための項目である。ここで指定した内容は、切り出し指定６５（後述）で指定される文字列に適用される。横書きを指定すれば、文字列の起点が左上、終点が右下となる。一方、縦書きを指定すれば、文字列の起点が右上、終点が左下となる。
【００２７】
分割モード６２は、上でも述べたように、ブロックを行方向に分割して解析するのか列方向に分割して解析するのかを指定するための項目である。例えば、図６（ａ）のようにあるブロックを行方向に３行単位で分割して複数の子ブロックを作り、更に、ある子ブロックを図６（ｂ）のように列方向に２列単位で分割して複数の孫ブロックを作り、更に、ある孫ブロックを図６（ｃ）のように行方向に１行単位で分割して複数のひ孫ブロックを作るといった階層的な分割処理が可能である。ここで指定した内容は、切り出し指定６５（後述）で指定される文字列に適用される。
【００２８】
整形指定６３は、文字列をどのように整形するかを指定するための項目である。例えば、文字列の改行の条件となる文字を指定することにより、所望の整形を行うことができる。
【００２９】
繰り返し指定６４は、文字列の切り出しをどのような条件で繰り返すかを指定するための項目である。例えば、分割モード６２で指定された方向（行方向または列方向）に、切り出し指定６５（後述）で指定される文字列の切り出し・抽出を繰り返すことを指定したり、あるいは、繰り返し指定６４に付随するパラメータとして指定したある文字を区切りとする切り出し・抽出を繰り返すことを指定したりすることができる。例えば、図７のように、テキストを行方向に２行単位で分割して所望の文字列を切り出して抽出する処理を繰り返すことを指定することができる。
【００３０】
切り出し指定６５は、当該ブロックを分割して得られる個々のブロック毎に文字列の切り出し範囲を指定するための項目である。切り出し範囲は、開始位置と終了位置とで定義される。
【００３１】
抽出６６は、切り出し指定６５において切り出し範囲が指定された文字列の抽出を行うか否かを指定するための項目である。なお、抽出の対象は、末端のブロックについて切り出し指定がなされた文字列である。
【００３２】
図８は、図３中の解析設定処理部５１に入力される解析対象テキストＴ１および出力される解析設定情報Ｘ１の例を示す図である。
【００３３】
解析対象テキストＴ１は、縦書き・横書き混在の複雑なテキストである。このような複雑なテキストをＸＭＬに変換する変換ルール（解析定義）の設定を実現するためには、テキスト全体を複数のブロックＢ１，Ｂ２，Ｂ３，Ｂ４，Ｂ５，Ｂ６に分割する。また、個々のブロックを、必要に応じて子ブロック（図示せず）に分割したり、更に孫ブロックやひ孫ブロック（図示せず）に分割したりする。このようにブロックを階層構造にし、末端のブロックにおいて抽出したい文字を特定できるようにする。このような分割や抽出に関する設定処理は、図５に示される設定項目を含む設定画面を通じて行うことができる。
【００３４】
解析設定情報Ｘ１は、<BLOCK>タグを解析設定の基本単位とするＸＭＬである。<BLOCK>タグ７０は、テキスト全体に相当する。<BLOCK>タグ７０の下には、複数の<BLOCK>タグ７１，７２，…がある。また、<BLOCK>タグ７１，７２，…の下には、それぞれ、<BLOCK>タグ８１，８２，…がある。こうした個々の<BLOCK>タグの下には、各種の<TAG..>（実際のタグ名は、もっと解りやすい名称である）がある。これらの<TAG..>には、前述した書式６１、分割モード６２、整形指定６３、繰り返し指定６４などを通じて指定された内容がそれぞれ定義される。特に、末端の<BLOCK>タグ（例えば、<BLOCK>タグ８１，８２，…）の中の<TAG..>には、切り出し指定６５や抽出６６などを通じて指定された内容もそれぞれ定義される。
【００３５】
ここで、図８に示される解析対象テキストＴ１のブロックＢ１〜Ｂ６と、解析設定情報Ｘ１の中の<BLOCK>タグ７１，７２，８１，８２，…との対応関係について説明する。
【００３６】
例えば、解析対象テキストＴ１を、最初、行方向に３つの領域（即ち、ブロックＢ１の領域、ブロックＢ２とＢ３とを含む領域、ブロックＢ４とＢ５とＢ６とを含む領域）に分割するものとする。
【００３７】
このとき、解析設定情報Ｘ１の中の<BLOCK>タグ７０の下には、「行方向」を示す「分割モード」タグ（例えば、<TAG1>タグもしくは<TAG2>タグ）が設けられる。上記３つの領域は、解析設定情報Ｘ１の中の<BLOCK>タグ７１，７２，…に対応する。
【００３８】
この後、ブロックＢ１は分割しないが、ブロックＢ２とＢ３とを含む領域を列方向に２つの領域（即ち、ブロックＢ２、ブロックＢ３）に分割し、ブロックＢ４とＢ５とＢ６とを含む領域を列方向に３つの領域（即ち、ブロックＢ４、ブロックＢ５、ブロックＢ６）に分割するものとする。なお、ブロックＢ１内の文字列は横書きであり、ブロックＢ２，Ｂ３の文字列は縦書きであり、ブロックＢ４，Ｂ５，Ｂ６の文字列は横書きである。
【００３９】
このとき、解析設定情報Ｘ１の中において、ブロックＢ１に対応する<BLOCK>タグ７１の下には、「横書き」を示す「書式」タグ（例えば、<TAG11>タグ）が設けられる。なお、この例では、ブロックＢ１は分割しないため、図中の<BLOCK>タグ８１は使用されない。
【００４０】
また、ブロックＢ２とＢ３とを含む領域に対応する<BLOCK>タグ７２の下には、「縦書き」を示す「書式」タグ（例えば、<TAG21>タグ）と、「列方向」を示す「分割モード」タグ（例えば、<TAG22>タグ）とが設けられる。
【００４１】
また、ブロックＢ４とＢ５とＢ６とを含む領域についても、対応する<BLOCK>タグ（図示せず）の下には、「横書き」を示す「書式」タグと、「列方向」を示す「分割モード」タグとが設けられる。
【００４２】
次に、図９および図１０を参照して、図４中の解析画面設定部５１Ａにより生成される設定画面の例を説明する。
【００４３】
なお、図５において主要な設定項目として説明した、書式６１，分割モード６２，整形指定６３，繰り返し指定６４，切り出し指定６５，抽出６６は、それぞれ、図９中の項目(8)，(9)，(10)，(12)，(18)，(17)に相当するものである。
【００４４】
図９の設定画面の例では、領域３１，３２，３３が表示された状態にある。
【００４５】
領域３１には、次のような項目が表示される。
【００４６】
(1) 記事加工パターン名称
記事加工パターン（記事を構成する個々の素材を選択的に用いて当該記事をどのような体裁で掲載するべきかを定めたもの）の名称を表示する項目である。
【００４７】
(2) 説明
本解析設定の説明文である。
【００４８】
(3) テスト電文リスト選択
テスト表示に使用する電文を選択するための項目である。一般に、「電文」は「テキスト」または「ＸＭＬ」で構成されているが、当該テスト表示に使用する電文は「テキスト」である。
【００４９】
(4) 仮見出し
記事加工パターンに適用するためのテスト電文のリスト（保存原稿）の仮見出しを表示する項目である。
【００５０】
(5) ファイル名
記事加工パターンに適用するためのテスト電文のリスト（保存原稿）のファイル名を表示する項目である。
【００５１】
また、領域３１には、次のようなボタンも表示される。
【００５２】
[1] 選択
テスト電文を選択するための選択画面を別ウインドウにて表示するためのボタンである。
【００５３】
[2] クリア
選択したテスト電文を一覧から削除するためのボタンである。
【００５４】
[3] 全クリア
全テスト電文を一覧から削除するためのボタンである。
【００５５】
[4] テスト電文表示／非表示
テスト電文の欄（領域３１の内容）の表示／非表示を選択するためのボタンである。
【００５６】
また、領域３２には、次のような項目が表示される。
【００５７】
(6) 項目名一覧
現在のテキスト解析設定の対象をツリー状に表示する項目である。アンダーバーのある項目（ブロックに相当）は、子項目（子ブロックに相当）を有する。
【００５８】
(7) 項目名
項目名一覧において現在選択されている項目（ブロックに相当）の名称を表示する項目である。
【００５９】
(8) 書式
対象のテキストを「縦書き」として解析するか、「横書き」として解析するかを選択するためのチェック項目である。
【００６０】
(9) 分割モード
対象のテキストを「行方向」に分割して解析するか、「列方向」に分割して解析するかを選択するためのチェック項目である。
【００６１】
(10) 整形指定
対象のテキストに施す整形の種類（文字区切など）を選択するための項目である。
【００６２】
(11) 整形指定用パラメータ
整形指定で選択した種類に応じた文字数や文字列などのパラメータを指定するための項目である。
【００６３】
(12) 繰り返し指定
現在選択されている項目（ブロックに相当）に対して繰り返し適用すべき条件を選択するための項目である。
【００６４】
(13) 繰り返し指定用パラメータ
繰り返し指定で選択した条件に応じたパラメータを指定するための項目である。
【００６５】
(14) 項目一覧
現在選択されている項目（ブロックに相当）に所属する子項目の一覧を表示する項目である。個々の子項目は、互いに異なる色で色付けされた部分を有する。例えばそれぞれ緑（Ｇ）、赤（Ｒ）、青（Ｂ）、黄（Ｙ）などの色で色付けされる。
【００６６】
(15) 項目名
子項目の名称を入力するための項目である。
【００６７】
(16) タグ名
タグの名称を入力するための項目である。
【００６８】
(17) 抽出
子項目から値を抽出するか否かを選択するためのチェック項目である。
【００６９】
(18) 切出し指定（始／終）
切り出したい文字列の開始位置（始）と終了位置（終）を特定する方法を選択するための項目である。例えば「指定文字列」や「相対位置」がプルダウンにより選択できる。
【００７０】
(19) 番目
切出し指定（始／終）で選択した方法に応じた文字列の番目（何番目の文字列か）を指定するための項目である。
【００７１】
(20) 文字列
切出し指定（始／終）で選択した方法に応じた文字列を指定するための項目である。
【００７２】
(21) 字数
切出し指定（始／終）で選択した方法に応じた文字数を指定するための項目である。
【００７３】
(22) 説明（項目）
子項目の説明を入力するための項目である。
【００７４】
(23) 無効
当該子項目の設定が無効であるか有効であるかを示す項目である。
【００７５】
また、領域３２には、次のようなボタンも表示される。
【００７６】
[5] 削除
子項目を削除するためのボタンである。
【００７７】
[6] 無効
子項目を無効とするか有効とするかを選択するためのボタンである。
【００７８】
[7] 追加
子項目を追加するためのボタンである。
【００７９】
また、領域３３には、次のような項目が表示される。
【００８０】
(24) 結果表示方式
実行結果の表示方式が何であるかを示す項目である。表示方式には、テーブルとして表示する方式と、ＸＭＬとして表示する方式とがある。
【００８１】
(25) テストデータ
「[1] 選択」にて選択したテスト電文の内容（テストデータ）を表示するエリアである。前述の「(14) 項目一覧」に所属する個々の子項目に色付けされた色と同じ色によって、当該テストデータ中の対応する文字列が色付けされるようになっている。例えばそれぞれ緑（Ｇ）、赤（Ｒ）、青（Ｂ）、黄（Ｙ）などの色で色付けされる。このような色分けを施すことにより、子項目の設定などにおいて現在どのテキスト部分に対して設定の作業を行っているのかを把握しやすい。
【００８２】
(26) 表示結果
テスト電文を解析設定処理した結果を出力するエリアである。
【００８３】
また、領域３３には、次のような項目もボタンされる。
【００８４】
[8] 結果表示方式
表示結果の表示形式を選択するためのボタンである。
【００８５】
[9] 出力
表示結果のＸＭＬの構造情報を表示させるためのボタンである。
【００８６】
[10] 詳細表示
処理結果の詳細を表示させるためのボタンである。
【００８７】
[11] テスト表示
解析設定情報の実行テストを行うためのボタンである。
【００８８】
[12] 再読込
保存済みの解析設定情報を再度読み込むためのボタンである。
【００８９】
[13] 保存
解析設定情報を保存するためのボタンである。
【００９０】
[14] 閉じる
ところで、図１０の設定画面の例では、領域３１が表示されておらず、領域３２，３３が表示された状態にある。すなわち、図９の設定画面において領域３１内の[4]ボタンを押下操作することにより、図１０の設定画面のように領域３１が非表示となる。例えば、テスト電文を選択した後に、領域３１を非表示とすることにより、図１０の設定画面のように領域３２，３３の内容が見やすくなるので、設定作業を効率よく進めることができる。
【００９１】
図１１は、解析設定情報Ｘ１の作成に使用されるタグの一覧を示す図である。
【００９２】
この図１１に示されるように、<BLOCK>タグの下には、「バージョン」、「項目名」、「設定名」といった書誌的な事項を示すタグのほか、前述した「書式」（図９中の項目(8)に相当）、「分割モード」（図９中の項目(9)に相当）、「整形指定」（図９中の項目(10)に相当）、「繰り返し指定」（図９中の項目(12)に相当）を示すタグが用意されている。また、これらのタグのほか、末端の<BLOCK>タグの下には、前述した「無効」（図９中の項目(23)に相当）、「抽出」（図９中の項目(17)に相当）、「切出し指定（始／終）」（図９中の項目(18)に相当）、「番目」（図９中の項目(19)に相当）、「文字列」（図９中の項目(20)に相当）、「字数」（図９中の項目(21)に相当）、「説明」（図９中の項目(22)に相当）などを示すタグも用意されている。このような各種のタグと共に対応するパラメータ等のデータを記述することにより、所望の変換ルールが定義された解析設定情報Ｘ１を作成することができる。
【００９３】
次に、図１２および図１３を参照して、解析設定処理部５１による動作の一例を説明する。
【００９４】
解析設定処理部５１は、テスト電文を入力し（ステップＳ１１）、ブロック毎に、分割や整形に関する設定処理（図９中の(8)書式、(9)分割モード、(10)整形指定、(12)繰り返し指定などを通じて指定された条件の設定処理）などの処理を含む第１のループ処理（ステップＳ１２〜Ｓ１９）を実行する。
【００９５】
第１のループ処理の中において、分割や整形に関する設定処理を行った後、当該ブロックの中に子ブロックに対する解析設定の情報が存在しなければ（ステップＳ１４の「無」）、当該ブロックが末端のブロックであるものとみなし、当該ブロック内の文字列の切り出し・抽出に関する設定処理（切り出し指定６５、抽出６６などを通じて指定された条件の設定処理）を行う（ステップＳ１５）。一方、当該ブロックの中に子ブロックに対する解析設定の情報が存在すれば（ステップＳ１４の「有」）、子ブロック毎に、後述する子ブロック内処理（ステップＳ１７）を含む第２のループ処理（ステップＳ１６〜Ｓ１８）を実行する。
【００９６】
第１のループ処理（ステップＳ１２〜Ｓ１９）の後、操作者によって図８や図９にて示したテスト表示ボタンが押下されるなどの操作がなされると、テスト電文の変換テストが実行され、その結果が表示される（ステップＳ２０）。テスト結果に問題が無く、操作者によって図８や図９にて示した保存ボタンが押下されるなどの操作がなされると、作成された解析設定情報Ｘ１が保存され（ステップＳ２１）、解析設定処理が終了する。
【００９７】
上記子ブロック内処理（ステップＳ１７）の詳細を、図１３中のステップＳ３１〜Ｓ３８に示す。すなわち、子ブロック内処理は、図１２中のステップＳ１２〜Ｓ１９と同様となる。
【００９８】
図１３に示されるように、子ブロック内処理においては、分割や整形に関する設定処理（書式６１、分割モード６２、整形指定６３、繰り返し指定６４などを通じて指定された条件の設定処理）などの処理を含む第３のループ処理（ステップＳ３１〜Ｓ３８）を実行する。
【００９９】
第３のループ処理の中において、分割や整形に関する設定処理を行った後、当該子ブロックの中に孫ブロックに対する解析設定の情報が存在しなければ（ステップＳ３３の「無」）、当該子ブロックが末端のブロックであるものとみなし、当該子ブロック内の文字列の切り出し・抽出に関する設定処理（切り出し指定６５、抽出６６などを通じて指定された条件の設定処理）を行う（ステップＳ３４）。一方、当該子ブロックの中に孫ブロックに対する解析設定の情報が存在すれば（ステップＳ３３の「有」）、孫ブロック毎に、孫ブロック内処理（ステップＳ３６）を含む第４のループ処理（ステップＳ３５〜Ｓ３７）を実行する。
【０１００】
上記孫ブロック内処理（ステップＳ３６）の詳細は、既に説明した子ブロック内処理の詳細と同様となるため、その説明を省略する。
【０１０１】
次に、図１４〜図１６を参照して、解析実行処理部５２による動作の一例を説明する。
【０１０２】
解析実行処理部５２は、解析設定処理部５１により作成された解析設定情報Ｘ１に従って、解析対象テキストＴ２をＸＭＬ形式の解析結果Ｘ２に変換する。これを実現するために、解析実行処理部５２は、解析設定情報Ｘ１のスクリプト解析処理を実行する。
【０１０３】
スクリプト解析処理において、解析実行処理部５２は、解析設定情報Ｘ１に記述されているタグを一つずつ解析し（ステップＳ４１）、テキスト全体に相当する<BLOCK>タグに含まれる別のタグが<BLOCK>タグであるか否か（子ブロックの解析設定情報があるか否か）を判定する（ステップＳ４２）。
【０１０４】
対象のタグが<BLOCK>タグ以外のタグであれば（ステップＳ４２のＮｏ）、そのタグに記述されているパラメータ等の情報（前述した「書式」、「分割モード」、「整形指定」、「繰り返し指定」などに関する情報）を所定の記憶領域に保存する（ステップＳ４３）。ここで保存した情報は、後述する「値の抽出処理モード」や「子の抽出処理モード」の中の処理において使用される。
【０１０５】
一方、対象のタグが<BLOCK>タグ（子ブロックのタグ）であれば（ステップＳ４２のＹｅｓ）、その<BLOCK>タグに別の<BLOCK>タグ（孫ブロックのタグ）が含まれているか否か（孫ブロックの解析設定情報があるか否か）を判定する（ステップＳ４４）。
【０１０６】
別の<BLOCK>タグが含まれていなければ（ステップＳ４４のＮｏ）、現在の対象となっている子ブロックが末端のブロックであるため、後述する「値の抽出モード」を実行する（ステップＳ４５）。一方、別の<BLOCK>タグが含まれていれば（ステップＳ４４のＹｅｓ）、現在の対象となっている子ブロックは末端のブロックでないため、後述する「子の解析処理モード」を実行する（ステップＳ４６）。
【０１０７】
上記ステップＳ４１〜Ｓ４６の処理をタグが無くなるまで繰り返すことにより、ＸＭＬ形式の解析結果Ｘ２が生成される。
【０１０８】
上記「値の抽出モード」の詳細を図１５に示す。また、上記「子の解析処理モード」の詳細を図１６に示す。
【０１０９】
図１５に示される「値の抽出モード」では、末端の<BLOCK>タグに含まれているタグに定義されている情報（前述した「無効」、「抽出」、「切出し指定」、「番目」、「文字列」、「字数」などに関する情報）に基づき、解析対象テキストＴ２内の該当する文字等の切り出し・抽出を行う。その際、図１４中のステップＳ４３にて保存したパラメータ等の情報（前述した「書式」、「分割モード」、「整形指定」、「繰り返し指定」などに関する情報）に示される条件に従って、個々の文字等の切り出し・抽出の処理を進める。
【０１１０】
すなわち、解析実行処理部５２は、解析対象テキストＴ２内の該当する文字範囲（親ブロックの設定内容に示される文字範囲）を切り出し（ステップＳ５１）、整形処理を施す（ステップＳ５２）。この整形処理においては、テキストについて、何の条件で、行としてみなしているのか（例えば、「固定文字数取り返し」なのか、「改行コード」折り返しなのか、「特殊文字」を起点に折り返すのか等）を決定する。そして、ＸＭＬデータとして、開始タグを記述し（ステップＳ５３）、該当する文字等を抽出して記述し（ステップＳ５４）、最後に終了タグを記述する（ステップＳ５５）。
【０１１１】
一方、図１６に示される「子の解析処理モード」では、図１４中のステップＳ４３にて保存したパラメータ等の情報（前述した「書式」、「分割モード」、「整形指定」、「繰り返し指定」などに関する情報）に示される条件に従って、解析対象テキストＴ２内の子ブロックの切り出し・抽出の処理を進める。
【０１１２】
すなわち、解析実行処理部５２は、解析対象テキストＴ２内の子ブロックを切り出し（ステップＳ６１）、整形処理を施す（ステップＳ６２）。そして、ＸＭＬデータとして、開始タグを記述し（ステップＳ６３）、当該切り出し・整形処理を施した子ブロックの解析処理を行って得られる解析結果を記述し（ステップＳ６４）、最後に終了タグを記述する（ステップＳ６５）。
【０１１３】
上記ステップＳ６４の子の解析処理の中では、対象の<BLOCK>タグに別の<BLOCK>タグが含まれている限り、上記ステップＳ６１〜Ｓ６５と同様の処理を繰り返す。対象の<BLOCK>タグに別の<BLOCK>タグが含まれないことが確認できたときに、前述した図１５のステップＳ５１〜Ｓ５５と同様の処理を行う。
【０１１４】
以上詳述したように本実施形態によれば、例えば次のような効果が得られる。
【０１１５】
・設定画面上に表示される「(8)書式」や「(9)分割モード」を通じて、縦書き・横書きの指定や分割する方向の指定を行えるため、横書きだけの単純な構造のテキストのみならず、縦書き・横書き混在の文書など、複雑な構造のテキストにも柔軟に対応できる。
【０１１６】
・設定画面上に表示される「(17)抽出」を通じて、「(18)切出し指定」にて切り出し範囲が指定された文字列の抽出を行うか否かを指定することができるため、切り出し範囲として一度入力したデータを消去したり、再び入力し直したりするといった煩わしさを解消できる。
【０１１７】
・設定画面上に表示される「(23)無効」を通じて、「(18)切出し指定」や「(17)抽出」において行われた指定を無効とするか否かを指定することができるため、例えばテスト段階において解析を省略したい部分を一時的に無効にすることができ、試行作業がしやすくなる。
【０１１８】
・設定画面上に表示される「(14)項目一覧」を構成する複数の「子項目」は、互いに異なる色で色付けされた色付け部分を有し、「(25)テストデータ」の表示領域においては、上記「子項目」の色付け部分の色と同じ色によって、当該テストデータ中の対応する文字列が色付けされるので、「子項目」の設定において現在どのテキスト部分に対して設定の作業を行っているのかを把握しやすい。
【０１１９】
・設定画面上に表示される「(10)整形指定」を通じて、文字列をどのように整形するかを指定することができるため、その形のままでは解析が困難な文字列を解析しやすい形に変えることができ、解析の精度を向上させることが可能となる。
【０１２０】
・設定画面上に表示される「(12)繰り返し指定」を通じて、文字列の切り出しをどのような条件で繰り返すかを指定することができるため、表形式のように、同じ解析条件を繰り返したい場合に容易に解析設定をすることができる。
【０１２１】
・設定画面上に表示される「(15)項目名」を通じて、タグ名とは別にタグの意味を示す項目名を日本語などで入力できるため、解析設定内容を把握しやすくなる。
【０１２２】
・設定画面上に表示される「(22)説明（項目）」を通じて、項目の説明文を入力できるため、設定者の意図やこれまでの経緯を他の設定者に容易に伝えることができる。
【０１２３】
なお、上述した実施形態で述べた本発明に係る各種の処理手順は、コンピュータプログラムとして、コンピュータ（情報処理装置）により読み取り可能な記憶媒体（例えば磁気ディスク，光ディスク，半導体メモリ）に記憶させておき、必要に応じてそれをプロセッサにより読み出して実行するようにしてもよい。また、このようなコンピュータプログラムは、通信媒体を介してあるコンピュータから他のコンピュータに伝送することにより配布することも可能である。
【０１２４】
本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【０１２５】
【図１】本発明の一実施形態に係る情報処理システムの構成の一例を示す図。
【図２】図１中に示されるサーバシステムの中の情報処理装置に備えられる解析設定処理部の機能を説明するためのブロック図。
【図３】図１中に示されるサーバシステムの中の情報処理装置に備えられる解析実行処理部の機能を説明するためのブロック図。
【図４】図２中および図３中に示される解析設定処理部の構成の一例を示すブロック図。
【図５】図４中に示される設定画面生成部により生成される設定画面において操作者がブロック毎に入力することのできる主な設定項目を示す図。
【図６】分割モードを説明するための図。
【図７】繰り返し指定を説明するための図。
【図８】図３中に示される解析設定処理部に入力される解析対象テキストおよび出力される解析設定情報の例を示す図
【図９】図４中に示される解析画面設定部により生成される設定画面の一例を示す図。
【図１０】図４中に示される解析画面設定部により生成される設定画面の別の例を示す図。
【図１１】解析設定情報の作成に使用されるタグの一覧を示す図。
【図１２】図２中に示される解析設定処理部による動作の一例を示すフローチャート。
【図１３】図１２中に示される子ブロック内処理の詳細を示すフローチャート。
【図１４】図３中に示される解析実行処理部による動作の一例を示すフローチャート。
【図１５】図１４中に示される「値の抽出モード」の詳細を示すフローチャート。
【図１６】図１４中に示される「子の抽出モード」の詳細を示すフローチャート。
【符号の説明】
【０１２６】
５０…テキスト解析ライブラリ、５１…解析設定処理部、５１Ａ…設定画面生成部、５１Ｂ…解析設定情報作成部、５２…解析実行処理部、１００…サーバシステム、１０１，１０２，１０３…端末、２００…通信部、３００…情報処理装置、Ｄ１，Ｄ２…記憶部、Ｔ１，Ｔ２…解析対象テキスト、Ｘ１…解析設定情報、Ｘ２…解析結果。
【図１】
2009059110.tif 000003
【図２】
2009059110.tif 000004
【図３】
2009059110.tif 000005
【図４】
2009059110.tif 000006
【図５】
2009059110.tif 000007
【図６】
2009059110.tif 000008
【図７】
2009059110.tif 000009
【図８】
2009059110.tif 000010
【図９】
2009059110.tif 000011
【図１０】
2009059110.tif 000012
【図１１】
2009059110.tif 000013
【図１２】
2009059110.tif 000014
【図１３】
2009059110.tif 000015
【図１４】
2009059110.tif 000016
【図１５】
2009059110.tif 000017
【図１６】
2009059110.tif 000018