(57)【要約】  構造化文書変換装置において、入力文書の全てを読み込むことなく、また、出力文書の全てを予めメモリ上に準備しておくことなく、変換処理を行うことを可能にする。  変換規則を解析し、状態の遷移条件や要素の抽出方法を示す状態遷移規則１４０および出力構造化文書の雛形となる出力雛形１５０を作成する変換規則解析部１２１を備え、状態遷移部１２４は、逐次解析の結果に応じて、その状態遷移規則１４０に従った状態遷移をする中で、出力構造化文書に適用する必要のある情報を出力箇所と対応づけられた差分情報として抽出する。差分適用部１２５は、状態遷移部１２４の指示に従い出力雛形１５０を順次読み出して、状態遷移部１２４が抽出した差分情報が次に出力すべき要素であれば即座に適用させ、そうでなければ一時蓄積して、出力構造化文書の一部として成形された情報が得られなくなるまで逐次出力を行う。
2008146781.tif 000002
【特許請求の範囲】
【請求項１】
構造化文書の文書構造を変換する構造化文書変換装置であって、  所定の変換規則に基づいて、変換後構造化文書の雛形と、変換前構造化文書の文書構造に対応させた各状態に対し、入力構造化文書に対する逐次解析結果としての解析情報をイベントとする状態遷移規則であって、遷移先の状態と前記雛形に適用させる所定の差分情報として抽出する情報とを定めた状態遷移規則とを作成する変換規則解析部と、  前記変換前構造化文書に対する逐次解析結果を示す解析情報を受け取ると、前記変換規則解析部によって作成された状態遷移規則に従い、状態を遷移させるとともに抽出すべき０個以上の差分情報を抽出する状態遷移部と、  差分情報を蓄積する差分情報蓄積部と、  前記雛形に対し、逐次、前記状態遷移部が抽出した差分情報または前記差分情報蓄積部に蓄積されている差分情報を適用させることで変換後構造化文書の一部として成形された情報を出力する差分適用部とを備え、  前記差分適用部は、前記状態遷移部によって抽出された差分情報が、すぐに雛形に適用できる情報であれば該差分情報を適用して出力し、そうでなければ該差分情報を前記差分情報蓄積部に蓄積させて次の差分情報の抽出を待つ  ことを特徴とする構造化文書変換装置。
【請求項２】
変換規則解析部は、変換後構造化文書において出力単位がひとかたまりのグループとなっている場合には、出力単位としてグループ化される部分構造毎に分割して雛形を作成し、  前記変換規則解析部は、出力単位としてグループ化される部分構造の最初の要素に対応する状態に遷移したときに前記部分構造に対応する雛形を出力する旨を定めた状態遷移規則を作成し、  状態遷移部は、前記状態遷移規則に従って出力対象とする雛形を指定する  請求項１に記載の構造化文書変換装置。
【請求項３】
差分適用部が出力を中断している箇所と、該箇所に適用させる差分情報を示す情報とを記憶する出力中断箇所記憶部を備え、  差分適用部は、逐次出力する過程で、雛形に対し差分情報蓄積部に蓄積されている差分情報を適用しても変換後構造化文書の一部として成形されている情報が得られない場合には逐次出力を中断して、中断した箇所とその個所に適用すべき差分情報を示す情報を前記出力中断箇所記憶部に記憶し、  前記差分適用部は、状態遷移部によって抽出された差分情報の識別子と前記出力中断箇所記憶部に記憶されている差分情報を示す情報とに基づいて、該差分情報がすぐに雛形に適用できるか否かを判断する  請求項１または請求項２に記載の構造化文書変換装置。
【請求項４】
変換規則解析部は、差分情報の抽出終了を識別するための条件を定めた状態遷移規則を作成し、  状態遷移部は、前記状態遷移規則に従って差分情報の抽出終了を検出し、  差分適用部は、前記状態遷移部によって現在出力を中断している箇所に適用すべき差分情報の抽出終了が検出された場合に、逐次出力を再開する  請求項１から請求項３のうちのいずれか１項に記載の構造化文書変換装置。
【請求項５】
変換規則解析部は、変換前構造化文書の文書構造の規定として示される要素の最大出現回数または要素の出現順序に基づいて、差分情報の抽出終了を識別するための条件を定めた状態遷移規則を作成する  請求項４に記載の構造化文書変換装置。
【請求項６】
構造化文書の文書構造を変換するための構造化文書変換方法であって、  所定の変換規則に基づいて、変換後構造化文書の雛形と、変換前構造化文書の文書構造に対応させた各状態に対し、入力構造化文書に対する逐次解析結果としての解析情報をイベントとする状態遷移規則であって、遷移先の状態と前記雛形に適用させる所定の差分情報として抽出する情報とを定めた状態遷移規則とを作成し、  前記変換前構造化文書に対する逐次解析結果を示す解析情報を受け取ると、前記変換規則解析部によって作成された状態遷移規則に従い、状態を遷移させるとともに抽出すべき０個以上の差分情報を抽出し、  前記雛形に対し、逐次、前記状態遷移部が抽出した差分情報または所定の差分情報蓄積部に蓄積されている差分情報を適用させることで変換後構造化文書の一部として成形された情報を出力する過程で、抽出された差分情報が、すぐに雛形に適用できる情報であれば該差分情報を適用して出力し、そうでなければ該差分情報を前記差分情報蓄積部に蓄積させて次の差分情報の抽出を待つ  ことを特徴とする構造化文書変換方法。
【請求項７】
変換後構造化文書において出力単位がひとかたまりのグループとなっている場合に、出力単位としてグループ化される部分構造毎に分割して雛形を作成するとともに、出力単位としてグループ化される部分構造の最初の要素に対応する状態に遷移したときに前記部分構造に対応する雛形を出力する旨を定めた状態遷移規則を作成し、  状態遷移に伴って前記状態遷移規則に従い、出力対象とする雛形を指定する  請求項６に記載の構造化文書変換方法。
【請求項８】
雛形に対し差分情報蓄積部に蓄積されている差分情報を適用しても変換後構造化文書の一部として成形されている情報が得られない場合に、逐次出力を中断して、中断した箇所とその個所に適用すべき差分情報を示す情報を所定の出力中断箇所記憶部に記憶し、  差分情報が抽出されると、抽出された差分情報の識別子と前記出力中断箇所記憶部に記憶されている差分情報を示す情報とに基づいて、該差分情報がすぐに雛形に適用できるか否かを判断する  請求項６または請求項７に記載の構造化文書変換方法。
【請求項９】
差分情報の抽出終了を識別するための条件を定めた状態遷移規則を作成し、  状態遷移に伴って前記状態遷移規則に従い、差分情報の抽出終了を検出し、  現在出力を中断している箇所に適用すべき差分情報の抽出終了が検出された場合に、雛形に対する逐次出力を再開する  請求項６から請求項８のうちのいずれか１項に記載の構造化文書変換方法。
【請求項１０】
変換前構造化文書の文書構造の規定として示される要素の最大出現回数または要素の出現順序に基づいて、差分情報の抽出終了を識別するための条件を定めた状態遷移規則を作成する  請求項９に記載の構造化文書変換方法。
【請求項１１】
構造化文書の文書構造を変換するための構造化文書変換用プログラムであって、  コンピュータに、  所定の変換規則に基づいて、変換後構造化文書の雛形と、変換前構造化文書の文書構造に対応させた各状態に対し、入力構造化文書に対する逐次解析結果としての解析情報をイベントとする状態遷移規則であって、遷移先の状態と前記雛形に適用させる所定の差分情報として抽出する情報とを定めた状態遷移規則とを作成する変換規則解析処理、  前記変換前構造化文書に対する逐次解析結果を示す解析情報を受け取ると、前記変換規則解析部によって作成された状態遷移規則に従い、状態を遷移させるとともに抽出すべき０個以上の差分情報を抽出する状態遷移処理、および  前記雛形に対し、逐次、前記状態遷移処理で抽出した差分情報または所定の差分情報蓄積部に蓄積されている差分情報を適用させることで変換後構造化文書の一部として成形された情報を出力する過程で、抽出された差分情報が、すぐに雛形に適用できる情報であれば該差分情報を適用して出力し、そうでなければ該差分情報を前記差分情報蓄積部に蓄積させて次の差分情報の抽出を待つ差分適用処理  を実行させるための構造化文書変換用プログラム。
【請求項１２】
コンピュータに、  変換規則解析処理で、変換後構造化文書において出力単位がひとかたまりのグループとなっている場合には、出力単位としてグループ化される部分構造毎に分割して雛形を作成させるとともに、出力単位としてグループ化される部分構造の最初の要素に対応する状態に遷移したときに前記部分構造に対応する雛形を出力する旨を定めた状態遷移規則を作成させ、  状態遷移処理で、前記状態遷移規則に従って出力対象とする雛形を指定させる  請求項１１に記載の構造化文書変換用プログラム。
【請求項１３】
コンピュータに、  差分適用処理で、雛形に対し差分情報蓄積部に蓄積されている差分情報を適用しても変換後構造化文書の一部として成形されている情報が得られない場合に、逐次出力を中断して、中断した箇所とその個所に適用すべき差分情報を示す情報を所定の出力中断箇所記憶部に記憶させるとともに、差分情報が抽出されると、抽出された差分情報の識別子と前記出力中断箇所記憶部に記憶されている差分情報を示す情報とに基づいて、該差分情報がすぐに雛形に適用できるか否かを判断させる  請求項１１または請求項１２に記載の構造化文書変換用プログラム。
【請求項１４】
コンピュータに、  変換規則解析処理で、差分情報の抽出終了を識別するための条件を定めた状態遷移規則を作成させ、  状態遷移処理で、前記状態遷移規則に従って差分情報の抽出終了を検出させ、  差分適用処理で、現在出力を中断している箇所に適用すべき差分情報の抽出終了が検出された場合に、雛形に対する逐次出力を再開させる  請求項１１から請求項１３のうちのいずれか１項に記載の構造化文書変換用プログラム。
【請求項１５】
コンピュータに、  変換規則解析処理で、変換前構造化文書の文書構造の規定として示される要素の最大出現回数または要素の出現順序に基づいて、差分情報の抽出終了を識別するための条件を定めた状態遷移規則を作成させる  請求項１４に記載の構造化文書変換用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、構造化文書を変換するための構造化文書変換装置、構造化文書変換方法およびプログラムに関する。
【背景技術】
【０００２】  逐次解析を可能とする構造化文書装置の一例が特許文献１および特許文献２に記載されている。【０００３】  例えば、特許文献１に記載されている構造化文書変換装置に適用される変換方法は、変換後の構造化文書における全てのタグと変換対象の構造化文書における末端のタグとの対応関係を示すテンプレート情報と、変換対象の構造化対象における要素名をキーとして変換後の構造化文書の対応する要素名を検索するための検索テーブル情報とに基づいて、変換後の構造化文書における全てのタグ、変換対象の構造化文書における末端タグおよびその要素の値を、変換後の構造化文書におけるタグ配置順にそれぞれ対応づけた逆引き表情報を生成する。そして、この逆引き表情報に基づいて、変換後の構造化文書におけるタグ配置順で変換対象の構造化文書の対応するタグの要素の値を当てはめることにより、当該変換対象の構造化文書に対応した変換後の構造化文書を生成する。【０００４】  また、例えば、特許文献２に記載されているデータ変換装置に適用される変換方法は、変換前データの構造を基本構造パタンの組み合わせとして表現した構造パタンと、タグ構造とに基づいて、変換前データの末端要素データ値を格納するデータ格納用配列の次元数を決定し、末端要素のデータ値をデータ格納用配列に格納する。そして、そのデータ格納用配列に格納された変換前データの末端要素のデータ値を変換命令に従って処理することにより、変換後データとして出力する。【０００５】  また、非特許文献１には、別の構造化文書変換方法が示されている。非特許文献１に記載されている構造化文書変換方法では、構造化文書に対して逐次解析を行い、変換規則に従って逐次変換しつつ出力を行う。なお、変換前の文書順とは異なる順序で出力すべき情報は、変換規則においてバファリングを行っている。【特許文献１】特開２００６−１１５４９号公報
【特許文献２】特開２００６−１６３８２０号公報
【非特許文献１】Ｏｌｉｖｅｒ  Ｂａｖｋｅｒ、”ＳＴＸ−Ｔｒａｎｓｆｏｒｍｉｎｇ  ＸＭＬ  ｏｎ  ｔｈｅ  Ｆｌｙ−Ｈｏｗ  ＳＴＸ  Ｅｎａｂｌｅｓ  ｔｈｅ  Ｐｒｏｃｅｓｓｉｎｇ  ｏｆ  Ｌａｒｇｅ  ｄｏｃｕｍｅｎｔｓ”、［online］、ＸＭＬ  Ｅｕｒｏｐｅ  ２００３、Ｌｏｎｄｏｎ、［平成１９年４月２０日検索］、インターネット、＜URL:http://www.idealliance.org/papers/xmle03/slides/baeker/index.html＞
【発明の開示】
【発明が解決しようとする課題】
【０００６】  第１の問題点は、特許文献１や特許文献２に示されている変換方法では、必ず全ての出力内容を蓄積する必要があり、計算機の記憶領域を大量に必要とするということである。その理由は、入力文書と出力文書に含まれる要素の順番が異なる場合があり、入力文書の全ての要素が揃わないと出力要素が揃っているかが判断できないためである。【０００７】  第２の問題点は、非特許文献１に示されている変換方法では、入力文書と出力文書に含まれる要素の順序が異なる場合には、変換規則内にバッファリングの方法を記載する必要があり、変換規則の記載が複雑になるということである。その理由は、入力文書を逐次処理するため、変換規則にバッファリング指示がない要素を後から使用することができないためである。【０００８】  第３の問題点は、特許文献１、特許文献２および非特許文献１に示されている変換方法では、標準仕様であるＸＳＬＴ（eXtensible Stylesheet Language Tree construction）によって記載された変換規則を処理できないということである。その理由は、特許文献１および特許文献２に示されている方法では、入力として出力文書スキーマ（タグの定義等の構造情報）が必要となるが、ＸＳＬＴには出力文書のスキーマが定義されていないためである。また、非特許文献１に示されている方法では、入力文書と出力文書に含まれる要素の順序が異なる場合には、変換規則内にバッファリングの方法を記載する必要があるが、ＸＳＬＴでは順序に関する定義を記載することなく、順序の異なる変換が指示されるためである。【０００９】  そこで、本発明は、必ずしも出力文書を全て蓄えるだけの記憶領域や、入力文書を全て読み込むだけの記憶領域を必要としなくても、逐次処理で変換を行える構造化文書変換装置、構造化文書変換方法およびプログラムを提供することを目的とする。【００１０】  また、本発明は、入力文書と出力文書に含まれる要素の出現順序が異なる場合、すなわち、変換前の構造化形式と変換後の構造化形式とで同じ要素の出現順序が異なる場合であっても、変換規則には順序に関する情報を記載することなく、逐次処理で変換を行えるようにすることを目的とする。【００１１】  また、本発明は、構造化文書に対し、ＸＳＬＴで記述された変換規則に従って、逐次処理で変換を行えるようにすることを目的とする。
【課題を解決するための手段】
【００１２】  本発明による構造化文書変換装置は、構造化文書の文書構造を変換する構造化文書変換装置であって、所定の変換規則に基づいて、変換後構造化文書の雛形と、変換前構造化文書の文書構造に対応させた各状態に対し、入力構造化文書に対する逐次解析結果としての解析情報をイベントとする状態遷移規則であって、遷移先の状態と雛形に適用させる所定の差分情報として抽出する情報とを定めた状態遷移規則とを作成する変換規則解析部と、変換前構造化文書に対する逐次解析結果を示す解析情報を受け取ると、変換規則解析部によって作成された状態遷移規則に従い、状態を遷移させるとともに抽出すべき０個以上の差分情報を抽出する状態遷移部と、差分情報を蓄積する差分情報蓄積部と、雛形に対し、逐次、状態遷移部が抽出した差分情報または差分情報蓄積部に蓄積されている差分情報を適用させることで変換後構造化文書の一部として成形された情報を出力する差分適用部とを備え、差分適用部は、状態遷移部によって抽出された差分情報が、すぐに雛形に適用できる情報であれば該差分情報を適用して出力し、そうでなければ該差分情報を差分情報蓄積部に蓄積させて次の差分情報の抽出を待つことを特徴とする。【００１３】  また、変換規則解析部は、変換後構造化文書において出力単位がひとかたまりのグループとなっている場合には、出力単位としてグループ化される部分構造毎に分割して雛形を作成し、変換規則解析部は、出力単位としてグループ化される部分構造の最初の要素に対応する状態に遷移したときに部分構造に対応する雛形を出力する旨を定めた状態遷移規則を作成し、状態遷移部は、状態遷移規則に従って出力対象とする雛形を指定してもよい。【００１４】  また、構造化文書変換装置は、差分適用部が出力を中断している箇所と、該箇所に適用させる差分情報を示す情報とを記憶する出力中断箇所記憶部を備え、差分適用部は、逐次出力する過程で、雛形に対し差分情報蓄積部に蓄積されている差分情報を適用しても変換後構造化文書の一部として成形されている情報が得られない場合には逐次出力を中断して、中断した箇所とその個所に適用すべき差分情報を示す情報を出力中断箇所記憶部に記憶し、差分適用部は、状態遷移部によって抽出された差分情報の識別子と出力中断箇所記憶部に記憶されている差分情報を示す情報とに基づいて、該差分情報がすぐに雛形に適用できるか否かを判断してもよい。【００１５】  また、変換規則解析部は、差分情報の抽出終了を識別するための条件を定めた状態遷移規則を作成し、状態遷移部は、状態遷移規則に従って差分情報の抽出終了を検出し、差分適用部は、状態遷移部によって現在出力を中断している箇所に適用すべき差分情報の抽出終了が検出された場合に、逐次出力を再開してもよい。【００１６】  また、変換規則解析部は、変換前構造化文書の文書構造の規定として示される要素の最大出現回数または要素の出現順序に基づいて、差分情報の抽出終了を識別するための条件を定めた状態遷移規則を作成してもよい。【００１７】  また、本発明による構造化文書変換方法は、構造化文書の文書構造を変換するための構造化文書変換方法であって、所定の変換規則に基づいて、変換後構造化文書の雛形と、変換前構造化文書の文書構造に対応させた各状態に対し、入力構造化文書に対する逐次解析結果としての解析情報をイベントとする状態遷移規則であって、遷移先の状態と雛形に適用させる所定の差分情報として抽出する情報とを定めた状態遷移規則とを作成し、変換前構造化文書に対する逐次解析結果を示す解析情報を受け取ると、変換規則解析部によって作成された状態遷移規則に従い、状態を遷移させるとともに抽出すべき０個以上の差分情報を抽出し、雛形に対し、逐次、状態遷移部が抽出した差分情報または所定の差分情報蓄積部に蓄積されている差分情報を適用させることで変換後構造化文書の一部として成形された情報を出力する過程で、抽出された差分情報が、すぐに雛形に適用できる情報であれば該差分情報を適用して出力し、そうでなければ該差分情報を差分情報蓄積部に蓄積させて次の差分情報の抽出を待つことを特徴とする。【００１８】  また、構造化文書変換方法は、変換後構造化文書において出力単位がひとかたまりのグループとなっている場合に、出力単位としてグループ化される部分構造毎に分割して雛形を作成するとともに、出力単位としてグループ化される部分構造の最初の要素に対応する状態に遷移したときに部分構造に対応する雛形を出力する旨を定めた状態遷移規則を作成し、状態遷移に伴って状態遷移規則に従い、出力対象とする雛形を指定してもよい。【００１９】  また、構造化文書変換方法は、雛形に対し差分情報蓄積部に蓄積されている差分情報を適用しても変換後構造化文書の一部として成形されている情報が得られない場合に、逐次出力を中断して、中断した箇所とその個所に適用すべき差分情報を示す情報を所定の出力中断箇所記憶部に記憶し、差分情報が抽出されると、抽出された差分情報の識別子と出力中断箇所記憶部に記憶されている差分情報を示す情報とに基づいて、該差分情報がすぐに雛形に適用できるか否かを判断してもよい。【００２０】  また、構造化文書変換方法は、差分情報の抽出終了を識別するための条件を定めた状態遷移規則を作成し、状態遷移に伴って状態遷移規則に従い、差分情報の抽出終了を検出し、現在出力を中断している箇所に適用すべき差分情報の抽出終了が検出された場合に、雛形に対する逐次出力を再開してもよい。【００２１】  また、構造化文書変換方法は、変換前構造化文書の文書構造の規定として示される要素の最大出現回数または要素の出現順序に基づいて、差分情報の抽出終了を識別するための条件を定めた状態遷移規則を作成してもよい。【００２２】  また、本発明による構造化文書変換用プログラムは、構造化文書の文書構造を変換するための構造化文書変換用プログラムであって、コンピュータに、所定の変換規則に基づいて、変換後構造化文書の雛形と、変換前構造化文書の文書構造に対応させた各状態に対し、入力構造化文書に対する逐次解析結果としての解析情報をイベントとする状態遷移規則であって、遷移先の状態と雛形に適用させる所定の差分情報として抽出する情報とを定めた状態遷移規則とを作成する変換規則解析処理、変換前構造化文書に対する逐次解析結果を示す解析情報を受け取ると、変換規則解析部によって作成された状態遷移規則に従い、状態を遷移させるとともに抽出すべき０個以上��差分情報を抽出する状態遷移処理、および雛形に対し、逐次、状態遷移処理で抽出した差分情報または所定の差分情報蓄積部に蓄積されている差分情報を適用させることで変換後構造化文書の一部として成形された情報を出力する過程で、抽出された差分情報が、すぐに雛形に適用できる情報であれば該差分情報を適用して出力し、そうでなければ該差分情報を差分情報蓄積部に蓄積させて次の差分情報の抽出を待つ差分適用処理を実行させることを特徴とする。【００２３】  また、構造化文書変換用プログラムは、コンピュータに、変換規則解析処理で、変換後構造化文書において出力単位がひとかたまりのグループとなっている場合には、出力単位としてグループ化される部分構造毎に分割して雛形を作成させるとともに、出力単位としてグループ化される部分構造の最初の要素に対応する状態に遷移したときに部分構造に対応する雛形を出力する旨を定めた状態遷移規則を作成させ、状態遷移処理で、状態遷移規則に従って出力対象とする雛形を指定させてもよい。【００２４】  また、構造化文書変換用プログラムは、コンピュータに、差分適用処理で、雛形に対し差分情報蓄積部に蓄積されている差分情報を適用しても変換後構造化文書の一部として成形されている情報が得られない場合に、逐次出力を中断して、中断した箇所とその個所に適用すべき差分情報を示す情報を所定の出力中断箇所記憶部に記憶させるとともに、差分情報が抽出されると、抽出された差分情報の識別子と出力中断箇所記憶部に記憶されている差分情報を示す情報とに基づいて、該差分情報がすぐに雛形に適用できるか否かを判断させてもよい。【００２５】  また、構造化文書変換用プログラムは、コンピュータに、変換規則解析処理で、差分情報の抽出終了を識別するための条件を定めた状態遷移規則を作成させ、状態遷移処理で、状態遷移規則に従って差分情報の抽出終了を検出させ、差分適用処理で、現在出力を中断している箇所に適用すべき差分情報の抽出終了が検出された場合に、雛形に対する逐次出力を再開させてもよい。【００２６】  また、構造化文書変換用プログラムは、コンピュータに、変換規則解析処理で、変換前構造化文書の文書構造の規定として示される要素の最大出現回数または要素の出現順序に基づいて、差分情報の抽出終了を識別するための条件を定めた状態遷移規則を作成させてもよい。
【発明の効果】
【００２７】  本発明の第１の効果は、必ずしも出力文書を全て蓄えるだけの記憶容量も入力文書を全て読み込むだけの記憶領域も必要とせずに、変換処理を行えることにある。その理由は、入力文書の解析に逐次解析を利用し、受け取った解析結果に従って、出力可能な箇所を逐次出力し、すぐに出力可能でない情報のみを蓄積するように動作するためである。【００２８】  第２の効果は、入力文書と出力文書に含まれる要素の出力順序が異なる場合でも、変換規則には入力の順序に関わらず、変換方法として個々の要素の対応関係を示す情報のみを記載することで、逐次出力することができることにある。その理由は、入力文書から抽出された差分情報を蓄積させるか否かを、変換規則に記された情報ではなく、現在出力を中断している箇所に該当するか否かによって判断するためである。【００２９】  第３の効果は、標準仕様であるＸＳＬＴによって記載された変換規則に従って変換処理を行えることにある。その理由は、ＸＳＬＴによって定義された情報のみを利用し、出力文書のスキーマも要素のバッファリング方法の指定も必要としないためである。
【発明を実施するための最良の形態】
【００３０】  以下、本発明の実施の形態を図面を参照して説明する。【００３１】  〔第１の実施の形態〕  図１は、本発明の第１の実施の形態における構造化文書変換システム１００の構成例を示すブロック図である。図１に示す構造化文書変換システム１００は、構造化文書解析部１１０と、構造化文書変換装置１２０と、構造化文書逐次出力部１３０とを備えている。【００３２】  構造化文書変換装置１２０は、変換規則解析部１２１と、状態遷移規則蓄積部１２２と、出力雛形蓄積部１２３と、状態遷移部１２４と、差分適用部１２５と、差分情報蓄積部１２６と、出力中箇所記憶部１２７とを含む。【００３３】  本構造化文書変換システム１００は、入力構造化文書の逐次解析に対して可能な限りの出力構造化文書の逐次出力を実現するための方法を実現するものである。また、本構造化文書変換システム１００に入力される変換規則には、変換後に生成されるべき構造化文書（出力構造化文書）の文書構造と、その文書構造に含まれる構成要素と入力される構造化文書（入力構造化文書）の文書構造に含まれる構成要素との対応関係とが含まれていればよい。例えば、変換規則は、出力構造化文書の文書構造を示す情報であって、その文書構造を構成する構成要素のうち、入力構造化文書から抽出される構成要素について、入力構造化文書の文書構造におけるどの構成要素に対応するかがわかるような記述形式で示されている情報であってもよい。【００３４】  ここで、各蓄積部または記憶部に記憶される情報について説明する。【００３５】  状態遷移規則蓄積部１２２は、変換規則解析部１２１によって作成される状態遷移規則１４０を蓄積する。状態遷移規則１４０とは、状態遷移部１２４が状態遷移処理を行う際の指針となる情報であって、入力構造化文書の文書構造に対応させて、どのような状態遷移をとりうるか、また各状態における少なくとも情報抽出に関する個別的な処理内容を定めた情報である。なお、入力構造化文書の文書構造に対応する雛形が複数存在する場合には、雛形出力に関する処理内容を定めた情報を含んでいてもよい。【００３６】  図２は、ある構造化文書の階層構造に対応させた状態遷移の例を示す説明図である。図２に示す例は、変換規則によって、入力構造化文書に含まれる’／ａ／ｂ１／ｃ’（タグａ中のタグｂ１中のタグｃ）と、’／ａ／ｂ２／ｃ’（タグａ中のタグｂ２中のタグｃ）とについて処理する必要があることが示されている場合の状態遷移の例である。図２に示すように、変換規則解析部１２１は、変換規則で示される入力構造化文書の階層構造（’／ａ／ｂ１／ｃ’および’／ａ／ｂ２／ｃ’）において、ルートから処理する必要があるタグに行き着くまでの各階層における各タグ（要素の開始タグ）を状態遷移のイベントとする各状態を定義する。なお、本例では、予め状態０を初期状態（対象文書入力前）、状態１をルートに対応づけている。その上で、具体的には、ルートにおいてタグａの開始にもとづく状態１からの遷移先の状態２、タグａ中においてタグｂ１の開始にもとづく状態２からの遷移先の状態３、タグａ中においてタグｂ２の開始にもとづく状態２からの遷移先の状態４、タグａ中のタグｂ１中においてタグｃの開始にもとづく状��３からの遷移先の状態５、タグａ中のタグｂ２中においてタグｃの開始にもとづく状態４からの遷移先の状態６を定義する。すなわち、各状態は各階層における各要素の処理中を表し、該当する要素の処理中に下位要素の開始を受け付けた場合にその下位要素を状態遷移のイベントとする状態（下位要素の処理中状態）に遷移する。なお、要素の終了を受け付けた場合に巻き戻し（状態遷移前の状態に戻すことをいう。）を行うことで、処理中であった要素の上位要素の処理中状態に戻る。【００３７】  このような遷移条件の状態を定めることによって、現在解析処理中の要素が入力構造化文書中のどこの階層に位置しているかが、状態識別子によって特定できるようになる。これは、入力構造化文書において同じ名前の要素（例えば、要素ｃ）が出現するような場合であっても、それ以前にどのような要素が出現していたかを確認することなく（すなわち、逐次出力される現要素の情報だけで）、処理対象の要素であるか否かを判断することができることを示している。【００３８】  なお、要素の終了等によって行われる巻き戻しのように、入力構造化文書の文書構造に依存しない状態遷移規則については、状態遷移規則蓄積部１２２に蓄積させる状態遷移規則１４０の対象外としてもよい。【００３９】  図３は、状態遷移規則１４０の一例を示す説明図である。図３に示すように、状態遷移規則１４０は、状態番号と、入力情報と、遷移先情報と、出力雛形情報と、抽出情報とを対応づけた情報であってもよい。なお、図３では、要素の開始によって行われる状態遷移についての状態遷移規則１４０の例を示している。ここで、状態番号は、状態を識別するための情報である。また、入力情報は、状態遷移の条件になるイベントであり、本実施の形態では、解析情報に相当する。また、遷移先情報は、その入力情報を受け取った際に遷移先の状態を示す情報である。また、出力雛形情報は、遷移先情報で示される状態に遷移したときに出力すべき雛形を示す情報である。また、抽出情報は、遷移先情報で示される状態に遷移したときに抽出すべき情報を差分情報と対応づけて示す情報である。なお、ＸＳＬＴにおけるｖａｌｕｅ−ｏｆやｃｏｐｙ−ｏｆのように選択された要素を抽出する必要がある場合には、雛形へ適用するための情報が示されていればよい。【００４０】  ここで、差分情報とは、出力構造化文書に適用される、入力構造化文書の一部を抽出した部分構造によって示される情報であって、出力構造化文書と雛形との差分となる情報である。好適な例は、連続する逐次解析結果列（入力構造化文書の一部を抽出した部分文書を示す情報）である。例えば、単一の要素名、属性名、要素値、属性値である場合もあるし、階層構造において上位に位置する要素のように、複数の要素名、属性名、要素値、属性値を構成要素とする構造をもった情報である場合もある。また、別の好適な例は、逐次解析結果列から構築される出力構造化文書の部分構造をなす情報である。例えば、入力構造化文書のある要素の対して所定の計算をした結果の情報である場合もある。なお、差分情報は、例えば特開２００４−３０２７９９号公報に示されているような、圧縮技術を用いて使用記憶領域を削減した構造化文書の一部であってもよい。【００４１】  本実施の形態では、差分情報に対し、その差分情報を識別するための識別子（差分情報ＩＤ）を付与することによって、後述する出力雛形１５０における適用箇所と状態遷移規則１４０の抽出情報で示される差分情報とを対応づけている。なお、同じ差分情報が複数箇所に適用される場合には、１つの差分情報ＩＤに対し、その適用回数を付与するなどして、その差分情報がその箇所に適用させた後も保持しておくべきか否かを管理するようにしてもよい。【００４２】  例えば、図３には、状態番号＝１と、入力情報＝”ａ”、遷移先情報＝２と、出力雛形情報＝”ｔｅｍｐｌａｔｅ−２”と、抽出情報＝”＠ａｔ→ＩＤ：２”とが対応づけられて登録されている。これは、状態１において、要素ａの開始を受け付けた場合に状態２に遷移すること、および状態２に遷移したときに、現要素ａの属性”ａｔ”の値を差分情報ＩＤ＝１として抽出することを示している。なお、抽出情報における”→”は差分情報との対応関係を示す記号として用いている。なお、Ａ→Ｂで、入力構造化文書におけるＡという情報を差分情報ＩＤ＝Ｂで識別される差分情報として抽出することを示している。また、”．”は現要素（すなわち、遷移先の状態に対応づけられた要素）を、”＠ｘｘ”は現要素に属する属性ｘｘを、”ｎｏｄｅ（）”は現要素に属する全ての属性、要素、文字列を示す特殊記号として用いている。なお、”．→Ｂ＋”で、その状態で抽出される全ての情報を差分情報ＩＤ＝Ｂに追加形式で抽出していくことを示す例も考えられる。【００４３】  出力雛形蓄積部１２３は、変換規則解析部１２１によって作成される出力雛形１５０を蓄積する。出力雛形１５０とは、入力構造化文書に対応する出力構造化文書を作成するための雛形（文書情報）であって、出力構造化文書の文書構造に従って出力構造化文書の枠組が記述されるとともに、入力構造化文書から抽出される構成要素を反映させる箇所等、差分情報が必要な箇所についてその差分情報を適用するための情報が示されている雛形である。なお、出力雛形を蓄積させる好適な例は、出力構造化文書を示す逐次解析結果列の形式で保持し、差分情報が必要な箇所は差分情報を識別するための識別子と対応づけた特別な擬似解析結果列を割り当てることである。なお、特別な疑似解析結果列とは、その構造化文書に対応する逐次解析結果列の標準仕様には定義されていないが、その標準仕様を模した解析結果列をいう。ＸＭＬにおける例は、ＳＡＸ（The Simple API for XML）を模した解析結果列である。なお、差分情報が必要な箇所についての記述は、差分適用部１２５が作成した雛形を逐次読み出しした際に、その箇所が、差分情報が必要な箇所であって、どのような差分情報が必要であるかがわかるような形式であればよい。【００４４】  なお、変換規則解析部１２１は、出力構造化文書を逐次出力可能にするために、出力構造化文書の文書構造において繰り返し出力する単位（ＸＳＬＴにおけるｔｅｍｐｌａｔｅ、ｆｏｒ−ｅａｃｈ、ｃｏｐｙ−ｏｆ等）が示されている場合など、出力単位がひとかたまりのグループとして処理される旨の記述がある場合には、出力単位となるグループ毎に（出力単位としてグループ化される部分構造毎に）分割した雛形を作成する。そのような場合には、それらの雛形の大枠となる雛形も作成する。なお、大枠の雛形においては、入れ子構造となっている分割された雛型が１つの差分情報として認識される。【００４５】  差分情報蓄積部１２６は、入力構造化文書を逐次解析する過程で状態遷移規則１４０の抽出情報によって抽出された差分情報であって、雛形の逐次出力処理における出力箇所に対応しない差分情報を蓄積する。具体的には、当該差分情報を適用させるべき箇所が、逐次出力される雛形において出力を中断している箇所よりも後に出現する差分情報を蓄積する。なお、一旦差分情報蓄積部１２６に蓄積された差分情報は、出力中断箇所に該当する差分情報の抽出終了によって再開される雛形の逐次出力処理において、その出力箇所に対応することによりその蓄積が解除される。【００４６】  出力中箇所記憶部１２７は、雛形の逐次読み出し処理における差分情報の適用待ち箇所となった雛形の出力中断箇所を記憶する。なお、出力中箇所記憶部１２７は、雛形の箇所が特定される情報だけでなく、その箇所に適用させるべき差分情報に関する情報も含んでいてもよい。【００４７】  次に、各処理部の処理の概略を説明する。【００４８】  構造化文書解析部１１０は、入力構造化文書に対して逐次解析を行い、その結果検出される入力構造化文書に出現する要素や内容についての情報を、逐次、解析情報として出力する。構造化文書解析部１１０は、例えば、ＳＡＸに対応するＸＭＬパーサであってもよい。具体的には、入力構造化文書を順次読み込み、入力構造化文書の文書構造に係る所定の記述を検出した場合に、その都度、その記述によって示される文書構造に関する情報や、要素・内容についての情報をイベントとして出力すればよい。本実施の形態では、少なくとも要素の開始（どの要素が開始されたかを含む）、要素の終了（どの要素が開始されたかを含む）、ドキュメントの終了が解析情報として逐次出力される。なお、文字列値や入力構造化文書の要素をそのまま用いるような文書構造に変換したい場合などには、要素内容の文字列や、要素に属している属性の内容等、上記に限らず入力構造化文書から取得できる他の情報についても解析情報として出力できるようにする。なお、必ずしもイベントとして出力しなくてもよく、例えば、ある部分構造から得られる解析情報について、その部分構造に関する情報をイベントとして出力する際に当該部分構造に係る解析情報を参照するための参照情報を付加して出力するなどして、当該部分構造の解析が完了するまでの間、別途取得できるようにしてもよい。【００４９】  変換規則解析部１２１は、入力構造化文書を所望の文書構造を有する構造化文書に変換するための変換規則が入力されると、その変換規則に基づいて、状態遷移規則１４０と出力雛形１５０とを作成する。また、作成した状態遷移規則１４０および出力雛形１５０を、それぞれ状態遷移規則蓄積部１２２および出力雛形蓄積部１２３に蓄積する。【００５０】  状態遷移部１２４は、逐次出力される解析情報を受け取って、その解析情報で示される情報を入力情報に対し定められている状態遷移規則に従って、状態遷移処理を行う。状態遷移処理では、遷移先状態が定められている場合には状態を遷移させ、出力すべき雛形が定められている場合にはその雛形を出力させ、抽出すべき情報が定められている場合にはその情報を差分情報として抽出し、雛形へ適用可能な場合は雛形へ適用させる。状態遷移規則は、状態遷移規則蓄積部１２２に蓄積されている、入力構造化文書の文書構造に対応させて作成された状態遷移規則１４０を用いる。なお、入力構造化文書の文書構造に依存しない状態遷移処理については、予め定められた状態遷移規則に従って処理することも可能である。状態遷移部１２４は、要素終了を示す入力情報を受け付けた場合には、その要素が差分情報を抽出する要素であった場合には、差分情報の適用を終了させる。また、雛形の出力処理および差分情報の雛形への適用処理は、状態遷移部１２４は差分適用部１２５にその指示（雛形出力指示、差分適用指示）を出すことによって、実際の処理は差分適用部１２５に行わせる。【００５１】  差分適用部１２５は、状態遷移部１２４からの指示に従い、雛形出力処理および差分情報の雛形への適用処理（以下、差分情報適用処理という。）を行う。雛形出力処理では、出力対象となっている雛形を出力雛形蓄積部１２３から逐次読み出して、出力構造化文書の一部として成形された情報が得られなくなるまで、その情報を逐次出力する。差分適用部１２５は、雛形に対し逐次解析を行った結果、差分情報が必要でない箇所であれば、読み出した雛形の情報をそのまま出力構造化文書の一部として成形された情報として出力すればよい。また、差分情報が必要な箇所であっても、その箇所に適用させる差分情報が差分情報蓄積部１２６に蓄積されている場合には、その差分情報をその箇所に適用させた上で出力構造化文書の一部として成形された情報として出力すればよい。なお、差分適用部１２５は、出力構造化文書の一部として成形された情報が得られなくなった場合、すなわち、差分情報が必要な箇所に該当する差分情報が差分情報蓄積部１２６に蓄積されていない場合には、逐次出力を中断し、その箇所を現在出力中の箇所として出力中箇所記憶部１２７に記憶させる。【００５２】  また、差分情報適用処理では、抽出された差分情報が出力中箇所記憶部１２７に記憶されている出力中の箇所に該当する差分情報であるか否かを判定し、該当する差分情報であった場合にはその箇所に差分情報を適用させる。なお、雛形出力処理を再開するのは、該当する差分情報の抽出が終了した旨の通知を受けたときである。ここで、繰り返し出力されるような雛形を１つの差分情報として認識している場合において、その差分情報の抽出終了については、その雛形に対応させた部分構造における上位要素の終了を検出したときに通知するようにすればよい。一方、該当する差分情報でなかった場合には、差分情報蓄積部１２６に蓄積させる。なお、差分情報を出力中箇所に適用させた場合であっても、その差分情報ＩＤに適用回数が付与されている場合には、その適用回数に達するまでは、その差分情報を、差分情報蓄積部１２６に蓄積させておく。【００５３】  構造化文書逐次出力部１３０は、差分適用部１２５から逐次出力される情報を文書化して逐次出力する。なお、差分適用部１２５から逐次出力される情報は、入力文書構造から抽出される差分情報が適用された、出力構造化文書の一部をなす情報であるから、その情報を文書化して逐次出力することは、出力文書構造の部分文書を逐次出力することを意味している。なお、差分適用部１２５が、出力構造化文書の一部として成形された情報を文書化された状態で出力することも可能である。そのような場合には、構造化文書逐次出力部１３０は省略される。【００５４】  次に、図４〜図８のフローチャートを参照して本実施の形態の動作について説明する。図４は、構造化文書変換システム１００の概略動作を示すフローチャートである。まず、構造化文書変換システム１００に変換規則が入力されると、変換規則解析部１２１がその変換規則を解析する（ステップＡ１）。変換規則解析部１２１は、受け取った変換規則に基づいて、状態の遷移条件や要素の抽出方法を示す状態遷移規則１４０および出力構造化文書の雛形となる出力雛形１５０を作成し（ステップＡ２）、それぞれ状態遷移規則蓄積部１２２、出力雛形蓄積部１２３に蓄積させる（記憶させる）。【００５５】  例えば、変換規則解析部１２１は、変換規則で示される出力構造化文書の文書構造をなす情報を出力単位となるグループ毎に分解して雛形の原型とし、その中で差分情報が必要な箇所については、その差分情報を識別するための識別子を割り当てているとともにその識別子と対応づけた特別な疑似解析結果列で記述することによって、出力雛形１５０を作成すればよい。【００５６】  また、例えば、変換規則解析部１２１は、変換規則で示される入力構造化文書の階層構造の各階層における各要素に対し状態番号を割り当てて状態を定義し、その各状態について、当該状態に対応する要素の下位に位置する要素（下位要素という。）がある場合には、その下位要素の開始を示す入力情報に対応づけて、その下位要素に対応する状態番号を遷移情報として状態遷移規則１４０に登録すればよい。また、変換規則解析部１２１は、出力雛形１５０を作成する際に割り当てた識別子によって示される差分情報について、その差分情報が抽出できる入力構造化文書の文書構造における位置（要素）を特定し、その差分情報を抽出するための情報を、その要素に対応する状態における抽出情報として状態遷移規則１４０に登録すればよい。【００５７】  次に、構造化文書変換システムは、入力構造化文書待ち状態に入り（ステップＡ３）、入力構造化文書が入力されると、構造化文書変換処理を開始する（ステップＡ４）。【００５８】  図５は、構造化文書変換処理（図３のステップＡ４）の処理の流れの一例を示すフローチャートである。構造化文書変換処理では、まず、構造化文書解析部１１０が、入力構造化文書に対し逐次解析を行って（ステップＢ１）、その解析結果を逐次、解析情報として出力雛形蓄積部１２３に出力する。状態遷移部１２４は、逐次出力される解析情報に従って、現在の状態に応じた状態遷移処理を行う。状態遷移部１２４は、まず、解析情報の種類によって処理を分岐する（ステップＢ２）。【００５９】  解析情報が要素の開始を示している場合には、まず、新たに開始された要素が状態を遷移すべき要素であるか否かを判定する（ステップＢ３）。状態を遷移すべき要素でない場合（ステップＢ３のＮｏ）にはステップＢ８に進み、状態を遷移すべき要素である場合には（ステップＢ３のＹｅｓ）、状態遷移規則１４０に従って、次の状態に遷移させる。なお、状態を遷移すべき要素であるか否か及び遷移先の状態は、現在の状態に対応する状態遷移規則１４０における遷移先情報の内容を確認すればよい。【００６０】  次に、出力すべき雛形があるか否かを確認し（ステップＢ５）、出力すべき雛形がある場合には（ステップＢ５のＹｅｓ）、状態遷移規則１４０に従って、新規雛形を出力対象に設定して（ステップＢ６）、雛形出力指示を差分適用部１２５に伝える。差分適用部１２５は、状態遷移部１２４からの指示に従い、出力対象となった新規雛形に対し、雛形出力処理を行う（ステップＢ７）。なお、出力すべき雛形があるか否かおよびどの雛形を出力対象とするかについては、現在の状態に対応する状態遷移規則１４０における出力雛形情報の内容を確認すればよい。また、雛形出力処理の詳細フローは後述する。【００６１】  次に、ステップＢ８では、抽出すべき情報があるか否かを確認し（ステップＢ８）、抽出すべき情報がある場合には（ステップＢ８のＹｅｓ）、その情報を差分情報としてその識別子と対応づけて抽出し（ステップＢ９）、抽出した差分情報についての差分適用指示を差分適用部１２５に伝える。差分適用部１２５は、状態遷移部１２４からの指示に従い、抽出された差分情報について出力中の雛形に対する差分情報適用処理を行う（ステップＢ１０）。なお、抽出すべき情報があるか否か及びどのような情報をどの差分情報として抽出するかについては、現在の状態に対応する状態遷移規則１４０における抽出情報の内容を確認すればよい。また、差分情報適用処理の詳細フローは後述する。【００６２】  また、ステップＢ２において、解析情報が要素の終了を示している場合には、状態遷移部１２４は、まず、該要素がステップＢ４で状態を遷移させた要素である場合（ステップＢ１１のＹｅｓ）には、遷移させる前の状態に巻き戻し（ステップＢ１２）、また、差該要素に対応する状態が差分情報を抽出すべき状態であった場合には、その差分情報の抽出が終了したことを差分適用部１２５に伝える（ステップＢ１３）。差分適用部１２５は、該差分情報が現在処理中の箇所に該当する場合には、その抽出終了を受けて雛形出力処理を再開させる（ステップＢ１４）。【００６３】  また、ステップＢ２において、解析情報が文書の終了を示している場合には、当該構造化文書変換処理を終了する。【００６４】  次に、各処理の詳細フローについて説明する。図６は、雛形出力処理の処理フローの一例を示すフローチャートである。差分適用部１２５は、状態遷移部１２４から雛形の出力を指示されると、図６に示すように、出力対象となっている雛形を出力雛形蓄積部１２３から逐次読み出して、差分情報が不要な部分を逐次出力する（ステップＤ１）。従って、差分情報が必要な箇所が出現するまで、雛形が逐次出力されることになる。ここで、出現した箇所において必要な差分情報が、差分情報蓄積部１２６に蓄積されている場合は（ステップＤ２）、雛形にその差分情報を適用して出力し（ステップＤ３）、次の差分情報が必要になる箇所まで、同様の処理を行う。必要な差��情報が蓄積されていない箇所が出現した場合には、その箇所を出力中箇所として、出力中箇所記憶部１２７に記憶し（ステップＤ４）、処理を終了する。ここで、出力中箇所記憶部１２７には、例えば、その箇所に適用すべき差分情報の識別子も合わせて記憶しておけばよい。【００６５】  図７は、差分情報適用処理の処理フローの一例を示すフローチャートである。差分適用部１２５は、状態遷移部１２４から差分情報の雛形への適用を指示されると、図７に示すように、その差分情報が出力中箇所記憶部１２７に記憶されている箇所に該当する差分情報であるか否かによって、すぐに出力できるか否かを判断し（ステップＣ１）、すぐに適用できると判断した場合には、雛形に適用させ逐次出力する（ステップＣ２）。すぐに適用できるか否かは、抽出された差分情報の識別子と、出力中箇所記憶部１２７に記憶されている差分情報の識別子と比較することによって判断すればよい。一方、すぐに出力できないと判断した場合には、その差分情報を差分情報蓄積部１２６に蓄積させて（ステップＣ４）、処理を終了する。【００６６】  次に、本実施の形態の効果について説明する。本実施の形態では、差分適用部１２５において出力可能な部分は逐次出力し、逐次出力ができなくなった時点でその箇所を記憶しておき、次の差分情報が到着すると現在処理中の箇所に該当するか否かを判断し該当する場合は逐次出力するように構成されているため、差分情報蓄積部１２６に蓄積する差分情報を少なく保つことができ、入力文書全体もしくは出力文書全体を保持するよりも少ない記憶領域を使用して変換処理を実行することができる。【００６７】  また、本実施の形態では、状態遷移部１２４において、出力構造化文書の文書構造と要素の対応関係とで示される変換規則に基づいて作成される状態遷移規則に従い、逐次解析結果から、雛形への適用箇所がわかるような差分情報を抽出するように構成されているため、差分適用部１２５は、入力文書内の順序と出力文書に出力する順序に関する情報を必要とせずに、その差分情報が現在処理中の箇所に該当するか否かを判断することができる。従って、変換規則には、変換方法として、個々の要素の対応関係のみを記載することで、入力文書内の順序と出力文書に出力する順序が異なる場合でも、少ない記憶領域を使用した変換処理を行うことができる。【００６８】  また、本実施の形態では、さらに、あらかじめ変換規則を受け取り、次に入力構造化文書を受け取り、変換結果を出力構造化文書として出力するように構成されているため、標準的な構造化文書変換装置と置き換えて使用することができる。【００６９】  〔第２の実施の形態〕  次に、本発明の第２の実施の形態について説明する。図８は、第２の実施の形態による構造化文書変換システム２００の構成例を示すブロックである。なお、図８において、図１に示す第１の実施の形態による構造化文書変換システム１００と同様の構成をなす部分については、同一の符号を付与してその詳細な説明を省略している。【００７０】  図８に示すように、構造化文書変換システム２００は、構造化文書解析部１１０と、構造化文書変換装置２２０と、構造化文書逐次出力部１３０とを備える。また、構造化文書変換装置２２０は、変換規則解析部２２１と、状態線規則蓄積部１２２と、出力雛形蓄積部１２３と、状態遷移部２２４と、差分適用部２２５と、差分情報蓄積部１２６と、出力中箇所記憶部１２７とを含む。【００７１】  なお、本実施の形態は、さらに、入力構造化文書の文書構造に関する情報（入力構造化文書構造情報）を入力する例である。【００７２】  変換規則解析部２２１は上述した変換規則解析部１２１と同様の機能を有し、さらに入力構造化文書構造情報を受け取ると、その入力構造化文書構造情報で示される入力構造化文書の文書構造に従って、状態遷移規則１４０に差分情報終了通知規則が追加された状態遷移規則２４０を作成する機能を有する。差分情報終了通知規則とは、ある差分情報が抽出しおわったことを識別するための条件である。変換規則解析部２２１は、入力構造化文書構造情報によって、要素の最大出現回数が示された場合は、該要素が最大出現回数分出現したときに該要素に係る差分情報の抽出終了を検出できる旨の差分情報終了通知規則を追加すればよい。要素の最大出現回数はＸＭＬＳｃｈｅｍａでは、ｍａｘＯｃｃｕｒｓ属性として示される。また、入力構造化文書構造情報によって、要素の出現順序が記載されている場合は、該要素の次の要素が出現したときに前の要素に係る差分情報の抽出終了を検出できる旨の差分情報終了通知規則を追加すればよい。要素の出現順序は、ＸＭＬＳｃｈｅｍａではｓｅｑｕｅｎｃｅ要素として示される。【００７３】  図９は、差分情報終了通知規則を追加した状態遷移規則２４０の例を示す説明図である。なお、差分情報終了通知規則は、図９に示す状態遷移規則１４０において終了通知情報として登録されている。例えば、図９では、遷移先状態２における終了通知情報に、”→＠ａｔ”が示されているが、これは状態２に１回でも遷移すれば、終了通知情報で示されている差分情報（属性ａｔに係る差分情報）の抽出終了を検出できることを意味している。なお、遷移先状態５における終了通知情報”＃１０→ｃ”は、状態５に１０回遷移したときに、終了通知情報で示されている差分情報（要素ｃに係る差分情報）の抽出終了を検出できることを意味している。また、例えば、図９では、遷移先状態４における終了通知情報に、”→ｂ１”と示されているが、これは、状態４に１回でも遷移すれば、終了通知情報で示されている差分情報（要素ｂ１に係る差分情報）の抽出終了を検出できることを意味している。なお、図９では、差分情報となる要素の記号を示しているが、差分情報ＩＤと対応づけて登録してもよい。【００７４】  状態遷移部２２４は上述した状態遷移部１２４と同様の機能を有し、さらに各状態遷移処理で、状態遷移規則２４０に追加された差分情報終了通知規則に従って、差分情報の抽出終了を示す終了通知を差分適用部２２５に伝える機能を有する。【００７５】  差分適用部２２５は上述した差分適用部１２５と同様の機能を有し、さらに差分情報終了通知を受け取ると、その終了通知で示される差分情報の抽出が終了したことを検出して、必要に応じて雛形出力処理を再開させる機能を有する。【００７６】  次に、図１０および図１１のフローチャートを参照して本実施の形態の動作について説明する。図１０は、本実施の形態による構造化文書変換処理の処理の流れの一例を示すフローチャートである。なお、図１０において、図５に示した構造化文書変換処理の処理フローと同様の動作については、同一の符号を付与してその詳細な説明を省略している。【００７７】  図１０のステップＥ１において、状態遷移部２２４は、現在の状態に対応する差分情報終了通知規則に基づいて、差分情報の抽出終了を検出した場合には（ステップＥ１）、その差分情報の終了を示す終了情報を２２５に通知する。差分適用部２２５は、終了情報を受け取ると、差分情報終了処理を行う（ステップＥ２）。【００７８】  図１１は、差分情報終了処理の処理フローの一例を示すフローチャートである。差分適用部２２５は、状態遷移部２２４から終了情報を受け取ると、受け取った終了情報が出力中箇所記憶部１２７に記載されている出力中の箇所に該当する差分情報に関するものである場合は（ステップＦ１）、該当差分情報の出力は全て完了したと判断し、続きの雛形を出力するために雛形出力処理を再開する（ステップＦ２）。雛形出力処理は、図６に示した雛形出力処理と同様である。一方、終了情報が出力中の箇所に該当しない差分情報に関するものである場合は、その終了情報を、終了を示す差分情報として差分情報蓄積部に保存し（ステップＦ３）、処理を終了する。【００７９】  このように、本実施の形態によれば、例えば、要素の終了の解析結果を待たずに終了情報を受け取ることができたり、いくつ出現するかわからないような要素に対し変換処理を行うような場合であっても、その上位要素の終了の解析結果を待たずに終了情報を受け取ることができたりするため、より早く雛形出力処理を再開させることができる。従って、その間の差分情報を蓄積させる量を削減できるようになる。【００８０】  〔第３の実施の形態〕  次に、本発明の第３の実施の形態について説明する。図１２は、第３の実施の形態による構造化文書変換システム３００の構成例を示すブロック図である。なお、図１２において、図１に示す構造化文書変換システム１００と同様の構成をなす部分については、同一の符号を付与してその詳細な説明を省略している。【００８１】  本実施の形態は、第１の実施の形態における構造化文書変換装置１２０の各手段の動作をプログラムにより実現した場合に、構造化文書変換装置１２０がそのプログラムを読み込んで動作するコンピュータである場合の構成例である。【００８２】  構造化文書変換装置３２０は、制御部３２８と記憶装置３２９を備える。【００８３】  記憶装置３２９には、制御部３２８に、第１の実施の形態における構造化文書変換装置１２０が備える各蓄積部または記憶部（状態遷移規則蓄積部１２２、出力雛形蓄積部１２３、差分情報蓄積部１２６、出力中箇所記憶部１２７）を記憶装置３２９内に構築させ、また、構造化文書変換装置１２０が備える各処理部（変換規則解析部１２１、状態遷移部１２４、状態遷移部１２４）の処理を実行させるためのプログラムが格納されている。【００８４】  制御部３２８は、記憶装置３２９から上記プログラムを読み出し、そのプログラムに従って動作する。具体的には、制御部３２８は、そのプログラムに従って、記憶装置３２９内に状態遷移規則蓄積部１２２、出力雛形蓄積部１２３、差分情報蓄積部１２６、出力中箇所記憶部１２７を構築する。また、制御部３２８は、記憶装置３２９にデータを読み出しながら、または書き込みながら、第１の実施の形態における変換規則解析部１２１、状態遷移部１２４、状態遷移部１２４による処理と同一の処理を実行する。【００８５】  なお、図８に示した第２の実施の形態における構造化文書変換装置２２０についても本実施の形態と同様に制御部３２８と記憶装置３２９によって実施することが可能である。【００８６】  次に、具体的な例（第１の具体例）を用いて本発明の実施の形態の動作を説明する。本例では、第２の実施の形態に示した構造化文書変換システム２００を用いてＸＭＬ文書をＸＳＬＴで記載された変換規則に従って変換する例を示す。【００８７】  図１３は本例における変換規則を示したＸＳＬＴ文書である。また、図１４は本例における入力構造化文書構造情報を示したＸＭＬＳｃｈｅｍａ文書である。【００８８】  これらの入力を受け取った変換規則解析部２２１は、状態遷移規則２４０、出力雛形２５０を作成する。図１５は、本例で作成される状態遷移規則２４０の例である。また、図１６は、本例で作成される出力雛形２５０の例である。【００８９】  図１３に示すＸＳＬＴ文書では、出力単位がひとかたまりのグループとして処理される”ｔｅｍｐｌａｔｅ”、”ｆｏｒ−ｅａｃｈ”、”ｃｏｐｙ−ｏｆ”が示されているので、図１６に示すような３つの分割された出力雛形２５０が作成される。すなわち、”ＲｏｏｔＴｅｍｐｌａｔｅ”と”Ｔｅｍｐｌａｔｅ−１”と”Ｔｅｍｐｌａｔｅ−２”の３つの雛形が出力雛形２５０としてが作成される。そして、各雛形において差分情報を適用させるべき箇所は、ＰＡＴＣＨ：ＸＸで示される差分情報ＩＤと対応づけて、ＳＡＸを模した特別な疑似解析列で記述されている。【００９０】  また、図１３に示すＸＳＬＴ文書を見ると、出力構造化文書において、”／”、”／ａ／ｂ１／ｃ＠ｎａｍｅ”、”／ａ／ｂ１／ｃ／ｄ２”、”／ａ／ｂ１／ｃ／ｄ１”、”／ａ／ｂ２／ｃ以下”が変換処理に必要であることがわかるので、これら要素を識別可能にする状態を定義する。本例では、図１５に示すように、初期状態０、ルート（”／”）に対応する状態１、ルートにおいてタグａの開始にもとづく状態１からの遷移先の状態２、タグａ中においてタグｂ１の開始にもとづく状態２からの遷移先の状態３、タグａ中においてタグｂ２の開始にもとづく状態２からの遷移先の状態４、タグａ中のタグｂ１中においてタグｃの開始にもとづく状態３からの遷移先の状態５、タグａ中のタグｂ２中においてタグｃの開始にもとづく状態４からの遷移先の状態６を定義している。なお状態が定義されれば、各階層関係に従って、状態番号、入力情報および遷移先情報を登録すればよい。なお、本例では、タグｄ１，ｄ２にもとづく状態５からの遷移先の状態の定義を省略している。これは、タグｄ１，ｄ２に対し必要な処理がその内容を抽出するだけであり、その下位要素についての処理を必要としないからである。【００９１】  そして、各状態において抽出すべき情報が、雛形における適用箇所と対応づけて抽出情報に登録される。こ���では、ＰＡＴＣＨ：ＸＸで示される差分情報ＩＤと対応づけて登録される。【００９２】  また、図１４に示すＸＭＬＳｃｈｅｍａ文書を見ると、要素ｂ２内の要素ｃの属性としてｍａｘＯｃｃｕｒｓ＝１０が定義されているので、状態遷移規則２４０には、要素ｃが１０回以上出現するとそれ以上要素ｃが出現しないことを示す情報が終了通知情報に登録される。【００９３】  さらに図１１を見ると、ｓｅｑｕｅｎｃｅ要素によって、要素ａの中で要素ｂ１と要素ｂ２はこの順でのみ出現することが記載されているため、状態遷移規則４４０には要素ｂ２が出現すると要素ｂ１がそれ以上出現しないことを示す情報が終了通知情報に登録される。要素ｄ２と要素ｄ１の順序についても同様である。さらに、属性はその要素に対し一度しか出現しないため＠ｎａｍｅについても終了通知情報に登録される。【００９４】  次に図１７に示す入力ＸＭＬが入力構造化文書として入力された場合を例にして、構造化文書変換処理の処理フローを説明する。入力ＸＭＬに対する逐次解析が始まると（ステップＢ１）、まず初めに、文書要素開始（ここでは、ルート要素’／’の開始を意味する）の解析情報が得られるため、状態遷移部２２４は、その種別による分岐によって、ステップＢ３に進む。状態遷移規則２４０を見ると、初期状態０においてルート要素’／’の開始を示す入力情報を得ると、状態１に遷移する旨が規定されているため、状態を遷移すべき要素であると判断し、状態を状態１に遷移させる（ステップＢ３，Ｂ４）。次に、状態１に遷移したときに出力すべき雛形として、”ＲｏｏｔＴｅｍｐｌａｔｅ”が登録されているため、出力対象の雛形をＲｏｏｔＴｅｍｐｌａｔｅと設定し、そのＲｏｏｔＴｅｍｐｌａｔｅに対する雛形出力処理を差分適用部２２５に実行させる（ステップＢ６，Ｂ７）。【００９５】  差分適用部２２５は、出力雛形蓄積部１２３に蓄積されているＲｏｏｔＴｅｍｐｌａｔｅを順次読み込み、差分情報が不要な箇所を逐次出力していく（ステップＤ１）。ここで、２番目の”｛Ｔｅｍｐｌａｔｅ−１｝”を読み込んだときに、差分情報が必要な箇所が出現するため、それまで読み込んだ情報である１番目の要素”＜ｒｏｏｔ＞”が出力される。なお、２番目の箇所に該当する差分情報（ここでは、Ｔｅｍｐｌａｔｅ−１に適用される全差分情報を意味する）は、差分情報蓄積部１２６に蓄積されていないため（ステップＤ２のＮｏ）、ＲｏｏｔＴｅｍｐｌａｔｅの２番目の要素が出力中であることがわかる情報（例えば、ＲｏｏｔＴｅｍｐｌａｔｅについての出力箇所として”２，Ｔｅｍｐｌａｔｅ−１”）を出力中箇所として出力中箇所記憶部１２７に記憶する（ステップＤ４）。ここまで、文書要素開始の解析情報に係る状態遷移処理が終了するため、ステップＢ２に戻る。【００９６】  次に、要素ａ開始の解析情報を得る。状態遷移部２２４は、その種別による分岐によって、ステップＢ３に進む。そして、状態遷移規則２４０に従って、状態１から状態２に遷移する。なお、状態２においては、出力雛形情報も抽出情報も終了通知情報も登録されていないので、このまま要素ａ開始の解析情報に係る状態遷移処理を終了する。さらに、要素ｂ１の開始の解析情報を得ると、同様に、状態２から状態３に遷移する。【００９７】  次に、要素ｃ開始の解析情報を得ると、状態遷移部２２４は、状態遷移規則２４０に従い、状態を状態５に遷移させる。そして、出力対象とする雛形をＴｅｍｐｌａｔｅ−１に設定し、そのＴｅｍｐｌａｔｅ−１に対する雛形出力処理を差分適用部２２５に実行させる（ステップＢ６，Ｂ７）。【００９８】  差分適用部２２５は、出力雛形蓄積部１２３に蓄積されているＴｅｍｐｌａｔｅ−１を順次読み込み、差分情報が不要な箇所を逐次出力していく（ステップＤ１）。ここで、３番目の”｛ｖａｌｕｅ−ｏｆ（Ｐａｃｔｈ：１−１）｝”を読み込んだときに、差分情報が必要な箇所が出現するため、それまで読み込んだ情報である１番目の要素”＜ｘ１＞”〜２番目の要素”＜ｙ１＞”までが出力される。なお、３番目の箇所に該当する差分情報Ｐａｃｔｈ：１−１は、差分情報蓄積部１２６に蓄積されていないため（ステップＤ２のＮｏ）、Ｔｅｍｐｌａｔｅ−１の３番目の要素が出力中であることがわかる情報（例えば、Ｔｅｍｐｌａｔｅ−１についての出力箇所として”３，Ｐａｃｔｈ１−１”）を出力中箇所として出力中箇所記憶部１２７に記憶する（ステップＤ４）。【００９９】  続いて、抽出すべき情報が状態遷移規則２４０に記載されているので（ステップＢ８）、属性ｎａｍｅの値（”ｎａｍｅ−１”）を差分情報Ｐａｔｃｈ：１−１として抽出し（ステップＢ９）、その差分情報Ｐａｔｃｈ：１−１を雛形へ適用させる差分適用処理を差分適用部２２５に実行させる（ステップＢ１０）。【０１００】  差分適用部２２５は、通知された差分情報Ｐａｔｃｈ：１−１は、出力中箇所記憶部１２７に記載されている現在の出力中箇所に該当する差分情報であるので（ステップＣ１のＹｅｓ）、その差分情報の内容（属性ｎａｍｅの値である”ｎａｍｅ−１”）をその箇所に適用させて、出力する（ステップＣ２）。ここでは、現在の出力中箇所で読み込んだ疑似解析結果列”｛ｖａｌｕｅ−ｏｆ（Ｐａｃｔｈ：１−１）｝”の”Ｐａｃｔｈ：１−１”の部分に、差分情報の内容を代入することで、出力構造化文書の一部をなす情報（”ｎａｍｅ−１”）として出力できる。【０１０１】  続いて、状態遷移規則２４０に終了情報が記載されているため（ステップＥ１）、属性ｎａｍｅに係る差分情報（すなわち、差分情報Ｐａｃｔｈ：１−１）の差分終了処理を差分適用部２２５に行わせる（ステップＥ２）。差分適用部２２５は、差分情報Ｐａｃｔｈ：１−１は現在出力中の箇所に該当する差分情報に関するものであるため（ステップＦ１）、該当差分情報の出力は全て完了したと判断し、続きの雛形を出力するために雛形出力処理を再開する（ステップＦ２）。雛形出力処理の再開によって、Ｔｅｍｐｌａｔｅ−１の４番目の要素”＜／ｙ１＞”〜５番目の要素”＜ｙ２＞”が出力され、６番目の要素である”｛ｖａｌｕｅ−ｏｆ（Ｐａｃｔｈ：１−２）｝”を読み込んで、逐次出力を中断する。ここで、出力中箇所記憶部１２７には、Ｔｅｍｐｌａｔｅ−１についての出力箇所として”６，Ｐａｃｔｈ１−２”が記憶される。【０１０２】  次に、要素ｄ１開始の解析情報を得ると、状態は遷移させずに、抽出情報に従って差分情報Ｐａｔｃｈ：１−３として要素ｄ１の値（”ｔｅｘｔ−１”）を抽出し（ステップＢ９）、その差分情報Ｐａｔｃｈ：１−３を雛形へ適用させる差分適用処理を差分適用部２２５に実行させる（ステップＢ１０）。差分適用部２２５は、差分情報Ｐａｔｃｈ：１−３は、出力中箇所記憶部１２７に記載されている現在の出力中箇所に該当する差分情報Ｐａｃｔｈ：１−２でないので（ステップＣ１のＮｏ）、その差分情報を差分情報蓄積部１２６に蓄積する（ステップＦ３）。本例では、ここで初めて差分情報蓄積部１２６に差分情報が蓄積されることになる。例えば、差分情報蓄積部１２６には、Ｐａｔｃｈ：１−３＝”ｔｅｘｔ−１”といった情報で蓄積してもよい。【０１０３】  次に、要素ｄ２の解析情報を得ると、状態は遷移させずに、抽出情報に従って差分情報Ｐａｔｃｈ：１−２として要素ｄ２の値（”ｔｅｘｔ−２”）を抽出する（ステップＢ９）。差分適用部２２５は、差分情報Ｐａｔｃｈ：１−２は、現在の出力中箇所に該当する差分情報であるので（ステップＣ１のＹｅｓ）、その差分情報の内容（要素ｄ２の値である”ｔｅｘｔ−２”）をその箇所に適用させて、出力する（ステップＣ２）。ここでは、”ｔｅｘｔ−２”が出力される。【０１０４】  また、終了通知情報に従って、要素ｄ１に係る差分情報の出現が終了したことを検出し、要素ｄ１に係る差分情報（差分情報Ｐａｔｃｈ：１−３）の終了を示す終了情報を通知して、差分適用部２２５に差分情報終了処理を実行させる（ステップＥ１，Ｅ２）。差分適用部２２５は、差分情報Ｐａｔｃｈ：１−３は、出力中の箇所に該当しない差分情報であるので、その終了情報を一種の差分情報として差分情報蓄積部１２６に蓄積させる（ステップＦ１のＮｏ，Ｆ３）。【０１０５】  次に、要素ｃ終了の解析情報を得ると（ステップＢ１０）、状態遷移した要素なので（ステップＢ１１）、状態遷移前の状態３に戻し（ステップＢ１２）、要素ｃに対応する状態で抽出すべき差分情報（ここでは、差分情報Ｐａｔｃｈ：１−２，Ｐａｔｃｈ：１−３）の抽出が終了したことを差分適用部２２５に伝える（ステップＢ１３）。差分適用部２２５は、差分情報Ｐａｔｃｈ：１−２が、出力中の箇所に該当する差分情報であるので（（ステップＦ１のＹｅｓ）、該当差分情報の出力は全て完了したと判断し、続きの雛形を出力するために雛形出力処理を再開する（ステップＦ２）。ここでは、Ｔｅｍｐｌａｔｅ−１の７，８番目の要素が出力される。次に、差分情報蓄積部１２６に蓄積されている差分情報Ｐａｔｃｈ：１−３を用いて９番目の要素が出力される。次に、１０，１１番目の要素が出力される。ここで、差分情報Ｔｅｍｐｌａｔｅ−１としての出力が全て完了する。このことにより、ＲｏｏｔＴｅｍｐｌａｔｅの３番目の要素である差分情報Ｔｅｍｐｌａｔｅ−１の出力が全て完了したと判断し、最終的に、ＲｏｏｔＴｅｍｐｌａｔｅの３番目の要素を読み出した時点で、”３，Ｔｅｍｐｌａｔｅ−２”がＲｏｏｔＴｅｍｐｌａｔｅについての出力中箇所として出力中箇所記憶部１２７に記憶される（ステップＤ４）。【０１０６】  以降同様に状態遷移処理を行うことで、要素’／ａ／ｂ２／ｃ’について出力し、最終的に、図１６に示す出力文書構造が出力され、文書終���の解析情報を得ると（ステップＢ１４）、変換処理を完了する（ステップＢ１５）。
【産業上の利用可能性】
【０１０７】  本発明は、複数のサービスを接続するために、入力構造化文書の構造を変換して適合させるエンタープライズサービスバスといった用途に適用できる。また、検索結果を成型してクライアントに返還するＸＭＬデータベースといった用途にも適用可能である。例えば、渡された検索式式に合致した構造化文書を入力として、クライアントが認識できる出力構造化文書に変換して返すようなＸＭＬデータベースや、検索式としてのＸＳＬＴが指定され、その時点でのデータベース内のＸＭＬ文書を入力文書として、指定されたＸＳＬＴによって変換した結果を検索結果として返すようなＸＭＬデータベースとしても適用可能である。【０１０８】  この出願は、２００７年５月２８日に出願された日本出願特願２００７−１３９９３４を基礎とする優先権を主張し、その開示を全てここに取り込む。
【図面の簡単な説明】
【０１０９】
【図１】第１の実施の形態における構造化文書変換システム１００の構成例を示すブロック図である。
【図２】ある構造化文書の階層構造に対応させた状態遷移の例を示す説明図である。
【図３】状態遷移規則１４０の一例を示す説明図である。
【図４】構造化文書変換システム１００の概略動作を示すフローチャートである。
【図５】構造化文書変換処理の処理の流れの一例を示すフローチャートである。
【図６】雛形出力処理の処理フローの一例を示すフローチャートである。
【図７】差分情報適用処理の処理フローの一例を示すフローチャートである。
【図８】第２の実施の形態による構造化文書変換システム２００の構成例を示すブロックである。
【図９】差分情報終了通知規則を追加した状態遷移規則２４０の例を示す説明図である。
【図１０】第２の実施の形態による構造化文書変換処理の処理の流れの一例を示すフローチャートである。
【図１１】第２の実施の形態による差分情報終了処理の処理フローの一例を示すフローチャートである。
【図１２】第３の実施の形態による構造化文書変換システム３００の構成例を示すブロック図である。
【図１３】第１の具体例における変換規則を示したＸＳＬＴ文書である。
【図１４】第１の具体例における入力構造化文書構造情報を示したＸＭＬＳｃｈｅｍａ文書である。
【図１５】第１の具体例で作成される状態遷移規則２４０の例である。
【図１６】第１の具体例で作成される出力雛形２５０の例である。
【図１７】第１の具体例における入力構造化文書の例を示すＸＭＬ文書である。
【図１８】第１の具体例で作成される出力構造化文書の例を示すＸＭＬ文書である。
【符号の説明】
【０１１０】  １００，２００，３００    構造化文書変換システム  １１０    構造化文書解析部  １２０，２２０，３２０    構造化文書変換装置  １２１，２２１    変換規則解析部  １２２，２２２    状態遷移規則蓄積部  １２３    出力雛形蓄積部  １２４，２２４    状態遷移部  １２５，２２５    差分適用部  １２６    差分情報蓄積部  １２７    出力中箇所記憶部  １３０    構造化文書逐次出力部
【図１】
2008146781.tif 000003
【図２】
2008146781.tif 000004
【図３】
2008146781.tif 000005
【図４】
2008146781.tif 000006
【図５】
2008146781.tif 000007
【図６】
2008146781.tif 000008
【図７】
2008146781.tif 000009
【図８】
2008146781.tif 000010
【図９】
2008146781.tif 000011
【図１０】
2008146781.tif 000012
【図１１】
2008146781.tif 000013
【図１２】
2008146781.tif 000014
【図１３】
2008146781.tif 000015
【図１４】
2008146781.tif 000016
【図１５】
2008146781.tif 000017
【図１６】
2008146781.tif 000018
【図１７】
2008146781.tif 000019
【図１８】
2008146781.tif 000020
【手続補正書】
【提出日】平成20年10月14日(2008.10.14)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００２
【補正方法】変更
【補正の内容】
【０００２】
順序で出力すべき情報は、変換規則においてバファリングを行っている。
特許文献１：特開２００６−１１５４９号公報
特許文献２：特開２００６−１６３８２０号公報
非特許文献１：Ｏｌｉｖｅｒ  Ｂｅｃｋｅｒ、”ＳＴＸ−Ｔｒａｎｓｆｏｒｍｉｎｇ  ＸＭＬ  ｏｎ  ｔｈｅ  Ｆｌｙ−Ｈｏｗ  ＳＴＸ  Ｅｎａｂｌｅｓ  ｔｈｅ  Ｐｒｏｃｅｓｓｉｎｇ  ｏｆ  Ｌａｒｇｅ  ｄｏｃｕｍｅｎｔｓ”、［ｏｎｌｉｎｅ］、ＸＭＬ  Ｅｕｒｏｐｅ  ２００３、Ｌｏｎｄｏｎ、［平成１９年４月２０日検索］、インターネット、＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｉｄｅａｌｌｉａｎｃｅ．ｏｒｇ／ｐａｐｅｒｓ／ｘｍｌｅ０３／ｓｌｉｄｅｓ／ｂｅｃｋｅｒ／ｉｎｄｅｘ．ｈｔｍｌ＞
発明の開示
発明が解決しようとする課題
［０００６］
第１の問題点は、特許文献１や特許文献２に示されている変換方法では、必ず全ての出力内容を蓄積する必要があり、計算機の記憶領域を大量に必要とするということである。その理由は、入力文書と出力文書に含まれる要素の順番が異なる場合があり、入力文書の全ての要素が揃わないと出力要素が揃っているかが判断できないためである。
［０００７］
第２の問題点は、非特許文献１に示されている変換方法では、入力文書と出力文書に含まれる要素の順序が異なる場合には、変換規則内にバッファリングの方法を記載する必要があり、変換規則の記載が複雑になるということである。その理由は、入力文書を逐次処理するため、変換規則にバッファリング指示がない要素を後から使用することができないためである。
［０００８］
第３の問題点は、特許文献１、特許文献２および非特許文献１に示されている変換方法では、標準仕様であるＸＳＬＴ（ｅＸｔｅｎｓｉｂｌｅ  Ｓｔｙｌｅｓｈｅｅｔ  Ｌａｎｇｕａｇｅ  Ｔｒｅｅｃｏｎｓｔｒｕｃｔｉｏｎ）によって記載された変換規則を処理できないということである。その理由は、特許文献１および特許文献２に示されている方法では、入力として出力文書スキーマ（タグの定義等の構造情報）が必要となるが、ＸＳＬＴには出力文書のスキーマが定義されていないためである。また、非特許文献１に示されている方法では、入力文書と出力文書に含まれる要素の順序が異なる場合には、変換規則内にバッファリングの方法を記載する必要があるが、ＸＳＬＴでは順序に関する定義を記載することなく、順序の異なる変換が指示されるためである。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
の出現順序に基づいて、差分情報の抽出終了を識別するための条件を定めた状態遷移規則を作成させてもよい。
発明の効果
［００２７］
本発明の第１の効果は、必ずしも出力文書を全て蓄えるだけの記憶容量も入力文書を全て読み込むだけの記憶領域も必要とせずに、変換処理を行えることにある。その理由は、入力文書の解析に逐次解析を利用し、受け取った解析結果に従って、出力可能な箇所を逐次出力し、すぐに出力可能でない情報のみを蓄積するように動作するためである。
［００２８］
第２の効果は、入力文書と出力文書に含まれる要素の出力順序が異なる場合でも、変換規則には入力の順序に関わらず、変換方法として個々の要素の対応関係を示す情報のみを記載することで、逐次出力することができることにある。その理由は、入力文書から抽出された差分情報を蓄積させるか否かを、変換規則に記された情報ではなく、現在出力を中断している箇所に該当するか否かによって判断するためである。
［００２９］
第３の効果は、標準仕様であるＸＳＬＴによって記載された変換規則に従って変換処理を行えることにある。その理由は、ＸＳＬＴによって定義された情報のみを利用し、出力文書のスキーマも要素のバッファリング方法の指定も必要としないためである。
発明を実施するための最良の形態
［００３０］
以下、本発明の実施の形態を図面を参照して説明する。
［００３１］
〔第１の実施の形態〕
図１は、本発明の第１の実施の形態における構造化文書変換システム１００の構成例を示すブロック図である。図１に示す構造化文書変換システム１００は、構造化文書逐次解析部１１０と、構造化文書変換装置１２０と、構造化文書逐次出力部１３０とを備えている。
［００３２］
構造化文書変換装置１２０は、変換規則解析部１２１と、状態遷移規則蓄積部１２２と、出力雛形蓄積部１２３と、状態遷移部１２４と、差分適用部１２５と、差分情報蓄積部１２６と、出力中箇所記憶部１２７とを含む。
［００３３］
本構造化文書変換システム１００は、入力構造化文書の逐次解析に対して可能な
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
抽出した部分構造によって示される情報であって、出力構造化文書と雛形との差分となる情報である。好適な例は、連続する逐次解析結果列（入力構造化文書の一部を抽出した部分文書を示す情報）である。例えば、単一の要素名、属性名、要素値、属性値である場合もあるし、階層構造において上位に位置する要素のように、複数の要素名、属性名、要素値、属性値を構成要素とする構造をもった情報である場合もある。また、別の好適な例は、逐次解析結果列から構築される出力構造化文書の部分構造をなす情報である。例えば、入力構造化文書のある要素の対して所定の計算をした結果の情報である場合もある。なお、差分情報は、例えば特開２００４−３０２７９９号公報に示されているような、圧縮技術を用いて使用記憶領域を削減した構造化文書の一部であってもよい。
［００４１］
本実施の形態では、差分情報に対し、その差分情報を識別するための識別子（差分情報ＩＤ）を付与することによって、後述する出力雛形（図１６）における適用箇所と状態遷移規則１４０の抽出情報で示される差分情報とを対応づけている。なお、同じ差分情報が複数箇所に適用される場合には、１つの差分情報ＩＤに対し、その適用回数を付与するなどして、その差分情報がその箇所に適用させた後も保持しておくべきか否かを管理するようにしてもよい。
［００４２］
例えば、図３には、状態番号＝２と、入力情報＝”ｂ１”、遷移先情報＝３と、出力雛形情報＝”ｔｅｍｐｌａｔｅ−２”と、抽出情報＝”＠ａｔ→ＩＤ：２”とが対応づけられて登録されている。これは、状態２において、要素ｂ１の開始を受け付けた場合に状態３に遷移すること、および状態３に遷移したときに、現要素ａの属性”ａｔ”の値を差分情報ＩＤ＝２として抽出することを示している。なお、抽出情報における”→”は差分情報との対応関係を示す記号として用いている。なお、Ａ→Ｂで、入力構造化文書におけるＡという情報を差分情報ＩＤ＝Ｂで識別される差分情報として抽出することを示している。また、”．”は現要素（すなわち、遷移先の状態に対応づけられた要素）を、”＠ｘｘ”は現要素に属する属性ｘｘを、”ｎｏｄｅ（）”は現要素に属する全ての属性、要素、文字列を示す特殊記号として用いている。なお、”．→Ｂ＋”で、その状態で抽出される全ての情報を差分情報ＩＤ＝Ｂに追加形式で抽出していくことを示す例も考えられる。
［００４３］
出力雛形蓄積部１２３は、変換規則解析部１２１によって作成される出力雛形（図
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１１
【補正方法】変更
【補正の内容】
【００１１】
１６）を蓄積する。出力雛形（図１６）とは、入力構造化文書に対応する出力構造化文書を作成するための雛形（文書情報）であって、出力構造化文書の文書構造に従って出力構造化文書の枠組が記述されるとともに、入力構造化文書から抽出される構成要素を反映させる箇所等、差分情報が必要な箇所についてその差分情報を適用するための情報が示されている雛形である。なお、出力雛形を蓄積させる好適な例は、出力構造化文書を示す逐次解析結果列の形式で保持し、差分情報が必要な箇所は差分情報を識別するための識別子と対応づけた特別な擬似解析結果列を割り当てることである。なお、特別な疑似解析結果列とは、その構造化文書に対応する逐次解析結果列の標準仕様には定義されていないが、その標準仕様を模した解析結果列をいう。ＸＭＬにおける例は、ＳＡＸ（Ｔｈｅ  Ｓｉｍｐｌｅ  ＡＰＩ  ｆｏｒ  ＸＭＬ）を模した解析結果列である。なお、差分情報が必要な箇所についての記述は、差分適用部１２５が作成した雛形を逐次読み出しした際に、その箇所が、差分情報が必要な箇所であって、どのような差分情報が必要であるかがわかるような形式であればよい。
［００４４］
なお、変換規則解析部１２１は、出力構造化文書を逐次出力可能にするために、出力構造化文書の文書構造において繰り返し出力する単位（ＸＳＬＴにおけるｔｅｍｐｌａｔｅ、ｆｏｒ−ｅａｃｈ、ｃｏｐｙ−ｏｆ等）が示されている場合など、出力単位がひとかたまりのグループとして処理される旨の記述がある場合には、出力単位となるグループ毎に（出力単位としてグループ化される部分構造毎に）分割した雛形を作成する。そのような場合には、それらの雛形の大枠となる雛形も作成する。なお、大枠の雛形においては、入れ子構造となっている分割された雛型が１つの差分情報として認識される。
［００４５］
差分情報蓄積部１２６は、入力構造化文書を逐次解析する過程で状態遷移規則１４０の抽出情報によって抽出された差分情報であって、雛形の逐次出力処理における出力箇所に対応しない差分情報を蓄積する。具体的には、当該差分情報を適用させるべき箇所が、逐次出力される雛形において出力を中断している箇所よりも後に出現する差分情報を蓄積する。なお、一旦差分情報蓄積部１２６に蓄積された差分情報は、出力中断箇所に該当する差分情報の抽出終了によって再開される雛形の逐次出力処理において、その出力箇所に対応することによりその蓄積が解除される。
［００４６］
出力中箇所記憶部１２７は、雛形の逐次読み出し処理における差分情報の適用待
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１２
【補正方法】変更
【補正の内容】
【００１２】
ち箇所となった雛形の出力中断箇所を記憶する。なお、出力中箇所記憶部１２７は、雛形の箇所が特定される情報だけでなく、その箇所に適用させるべき差分情報に関する情報も含んでいてもよい。
［００４７］
次に、各処理部の処理の概略を説明する。
［００４８］
構造化文書逐次解析部１１０は、入力構造化文書に対して逐次解析を行い、その結果検出される入力構造化文書に出現する要素や内容についての情報を、逐次、解析情報として出力する。構造化文書逐次解析部１１０は、例えば、ＳＡＸに対応するＸＭＬパーサであってもよい。具体的には、入力構造化文書を順次読み込み、入力構造化文書の文書構造に係る所定の記述を検出した場合に、その都度、その記述によって示される文書構造に関する情報や、要素・内容についての情報をイベントとして出力すればよい。本実施の形態では、少なくとも要素の開始（どの要素が開始されたかを含む）、要素の終了（どの要素が開始されたかを含む）、ドキュメントの終了が解析情報として逐次出力される。なお、文字列値や入力構造化文書の要素をそのまま用いるような文書構造に変換したい場合などには、要素内容の文字列や、要素に属している属性の内容等、上記に限らず入力構造化文書から取得できる他の情報についても解析情報として出力できるようにする。なお、必ずしもイベントとして出力しなくてもよく、例えば、ある部分構造から得られる解析情報について、その部分構造に関する情報をイベントとして出力する際に当該部分構造に係る解析情報を参照するための参照情報を付加して出力するなどして、当該部分構造の解析が完了するまでの間、別途取得できるようにしてもよい。
［００４９］
変換規則解析部１２１は、入力構造化文書を所望の文書構造を有する構造化文書に変換するための変換規則が入力されると、その変換規則に基づいて、状態遷移規則１４０と出力雛形（図１６）とを作成する。また、作成した状態遷移規則１４０および出力雛形（図１６）を、それぞれ状態遷移規則蓄積部１２２および出力雛形蓄積部１２３に蓄積する。
［００５０］
状態遷移部１２４は、逐次出力される解析情報を受け取って、その解析情報で示される情報を入力情報に対し定められている状態遷移規則に従って、状態遷移処理を行う。状態遷移処理では、遷移先状態が定められている場合には状態を遷移させ、
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００１４
【補正方法】変更
【補正の内容】
【００１４】
を再開するのは、該当する差分情報の抽出が終了した旨の通知を受けたときである。ここで、繰り返し出力されるような雛形を１つの差分情報として認識している場合において、その差分情報の抽出終了については、その雛形に対応させた部分構造における上位要素の終了を検出したときに通知するようにすればよい。一方、該当する差分情報でなかった場合には、差分情報蓄積部１２６に蓄積させる。なお、差分情報を出力中箇所に適用させた場合であっても、その差分情報ＩＤに適用回数が付与されている場合には、その適用回数に達するまでは、その差分情報を、差分情報蓄積部１２６に蓄積させておく。
［００５３］
構造化文書逐次出力部１３０は、差分適用部１２５から逐次出力される情報を文書化して逐次出力する。なお、差分適用部１２５から逐次出力される情報は、入力文書構造から抽出される差分情報が適用された、出力構造化文書の一部をなす情報であるから、その情報を文書化して逐次出力することは、出力文書構造の部分文書を逐次出力することを意味している。なお、差分適用部１２５が、出力構造化文書の一部として成形された情報を文書化された状態で出力することも可能である。そのような場合には、構造化文書逐次出力部１３０は省略される。
［００５４］
次に、図４〜図８のフローチャートを参照して本実施の形態の動作について説明する。図４は、構造化文書変換システム１００の概略動作を示すフローチャートである。まず、構造化文書変換システム１００に変換規則が入力されると、変換規則解析部１２１がその変換規則を解析する（ステップＡ１）。変換規則解析部１２１は、受け取った変換規則に基づいて、状態の遷移条件や要素の抽出方法を示す状態遷移規則１４０および出力構造化文書の雛形となる出力雛形（図１６）を作成し（ステップＡ２）、それぞれ状態遷移規則蓄積部１２２、出力雛形蓄積部１２３に蓄積させる（記憶させる）。
［００５５］
例えば、変換規則解析部１２１は、変換規則で示される出力構造化文書の文書構造をなす情報を出力単位となるグループ毎に分解して雛形の原型とし、その中で差分情報が必要な箇所については、その差分情報を識別するための識別子を割り当てているとともにその識別子と対応づけた特別な疑似解析結果列で記述することによって、出力雛形（図１６）を作成すればよい。
［００５６］
また、例えば、変換規則解析部１２１は、変換規則で示される入力構造化文書の階
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００１５
【補正方法】変更
【補正の内容】
【００１５】
層構造の各階層における各要素に対し状態番号を割り当てて状態を定義し、その各状態について、当該状態に対応する要素の下位に位置する要素（下位要素という。）がある場合には、その下位要素の開始を示す入力情報に対応づけて、その下位要素に対応する状態番号を遷移情報として状態遷移規則１４０に登録すればよい。また、変換規則解析部１２１は、出力雛形（図１６）を作成する際に割り当てた識別子によって示される差分情報について、その差分情報が抽出できる入力構造化文書の文書構造における位置（要素）を特定し、その差分情報を抽出するための情報を、その要素に対応する状態における抽出情報として状態遷移規則１４０に登録すればよい。
［００５７］
次に、構造化文書変換システムは、入力構造化文書待ち状態に入り（ステップＡ３）、入力構造化文書が入力されると、構造化文書変換処理を開始する（ステップＡ４）。
［００５８］
図５は、構造化文書変換処理（図３のステップＡ４）の処理の流れの一例を示すフローチャートである。構造化文書変換処理では、まず、構造化文書逐次解析部１１０が、入力構造化文書に対し逐次解析を行って（ステップＢ１）、その解析結果を逐次、解析情報として出力雛形蓄積部１２３に出力する。状態遷移部１２４は、逐次出力される解析情報に従って、現在の状態に応じた状態遷移処理を行う。状態遷移部１２４は、まず、解析情報の種類によって処理を分岐する（ステップＢ２）。
［００５９］
解析情報が要素の開始を示している場合には、まず、新たに開始された要素が状態を遷移すべき要素であるか否かを判定する（ステップＢ３）。状態を遷移すべき要素でない場合（ステップＢ３のＮｏ）にはステップＢ８に進み、状態を遷移すべき要素である場合には（ステップＢ３のＹｅｓ）、状態遷移規則１４０に従って、次の状態に遷移させる。なお、状態を遷移すべき要素であるか否か及び遷移先の状態は、現在の状態に対応する状態遷移規則１４０における遷移先情報の内容を確認すればよい。
［００６０］
次に、出力すべき雛形があるか否かを確認し（ステップＢ５）、出力すべき雛形がある場合には（ステップＢ５のＹｅｓ）、状態遷移規則１４０に従って、新規雛形を出力対象に設定して（ステップＢ６）、雛形出力指示を差分適用部１２５に伝える。差分適用部１２５は、状態遷移部１２４からの指示に従い、出力対象となった新規雛形に対し、雛形出力処理を行う（ステップＢ７）。なお、出力すべき雛形があるか否かおよびどの雛形を出力対象とするかについては、現在の状態に対応する状態遷移規則１４０における
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００１８
【補正方法】変更
【補正の内容】
【００１８】
［００６８］
また、本実施の形態では、さらに、あらかじめ変換規則を受け取り、次に入力構造化文書を受け取り、変換結果を出力構造化文書として出力するように構成されているため、標準的な構造化文書変換装置と置き換えて使用することができる。
［００６９］
〔第２の実施の形態〕
次に、本発明の第２の実施の形態について説明する。図８は、第２の実施の形態による構造化文書変換システム２００の構成例を示すブロックである。なお、図８において、図１に示す第１の実施の形態による構造化文書変換システム１００と同様の構成をなす部分については、同一の符号を付与してその詳細な説明を省略している。
［００７０］
図８に示すように、構造化文書変換システム２００は、構造化文書逐次解析部１１０と、構造化文書変換装置２２０と、構造化文書逐次出力部１３０とを備える。また、構造化文書変換装置２２０は、変換規則解析部２２１と、状態線規則蓄積部１２２と、出力雛形蓄積部１２３と、状態遷移部２２４と、差分適用部２２５と、差分情報蓄積部１２６と、出力中箇所記憶部１２７とを含む。
［００７１］
なお、本実施の形態は、さらに、入力構造化文書の文書構造に関する情報（入力構造化文書構造情報）を入力する例である。
［００７２］
変換規則解析部２２１は上述した変換規則解析部１２１と同様の機能を有し、さらに入力構造化文書構造情報を受け取ると、その入力構造化文書構造情報で示される入力構造化文書の文書構造に従って、状態遷移規則１４０に差分情報終了通知規則が追加された状態遷移規則２４０を作成する機能を有する。差分情報終了通知規則とは、ある差分情報が抽出しおわったことを識別するための条件である。変換規則解析部２２１は、入力構造化文書構造情報によって、要素の最大出現回数が示された場合は、該要素が最大出現回数分出現したときに該要素に係る差分情報の抽出終了を検出できる旨の差分情報終了通知規則を追加すればよい。要素の最大出現回数はＸＭＬＳｃｈｅｍａでは、ｍａｘＯｃｃｕｒｓ属性として示される。また、入力構造化文書構造情報によって、要素の出現順序が記載されている場合は、該要素の次の要素が出現したときに前の要素に係る差分情報の抽出終了を検出できる旨の差分情報終了通知規則を追加すればよい。要素の出現順序は、ＸＭＬＳｃｈｅｍａではｓｅｑｕｅｎｃｅ要素として示される。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００２２
【補正方法】変更
【補正の内容】
【００２２】
開始にもとづく状態２からの遷移先の状態４、タグａ中のタグｂ１中においてタグｃの開始にもとづく状態３からの遷移先の状態５、タグａ中のタグｂ２中においてタグｃの開始にもとづく状態４からの遷移先の状態６を定義している。なお状態が定義されれば、各階層関係に従って、状態番号、入力情報および遷移先情報を登録すればよい。なお、本例では、タグｄ１，ｄ２にもとづく状態５からの遷移先の状態の定義を省略している。これは、タグｄ１，ｄ２に対し必要な処理がその内容を抽出するだけであり、その下位要素についての処理を必要としないからである。
［００９１］
そして、各状態において抽出すべき情報が、雛形における適用箇所と対応づけて抽出情報に登録される。ここでは、ＰＡＴＣＨ：ＸＸで示される差分情報ＩＤと対応づけて登録される。
［００９２］
また、図１４に示すＸＭＬＳｃｈｅｍａ文書を見ると、要素ｂ２内の要素ｃの属性としてｍａｘＯｃｃｕｒｓ＝１０が定義されているので、状態遷移規則２４０には、要素ｃが１０回以上出現するとそれ以上要素ｃが出現しないことを示す情報が終了通知情報に登録される。
［００９３］
さらに図１４を見ると、ｓｅｑｕｅｎｃｅ要素によって、要素ａの中で要素ｂ１と要素ｂ２はこの順でのみ出現することが記載されているため、状態遷移規則４４０には要素ｂ２が出現すると要素ｂ１がそれ以上出現しないことを示す情報が終了通知情報に登録される。要素ｄ２と要素ｄ１の順序についても同様である。さらに、属性はその要素に対し一度しか出現しないため＠ｎａｍｅについても終了通知情報に登録される。
［００９４］
次に図１７に示す入力ＸＭＬが入力構造化文書として入力された場合を例にして、構造化文書変換処理の処理フローを説明する。入力ＸＭＬに対する逐次解析が始まると（ステップＢ１）、まず初めに、文書要素開始（ここでは、ルート要素’／’の開始を意味する）の解析情報が得られるため、状態遷移部２２４は、その種別による分岐によって、ステップＢ３に進む。状態遷移規則２４０を見ると、初期状態０においてルート要素’／’の開始を示す入力情報を得ると、状態１に遷移する旨が規定されているため、状態を遷移すべき要素であると判断し、状態を状態１に遷移させる（ステップＢ３，Ｂ４）。次に、状態１に遷移したときに出力すべき雛形として、”ＲｏｏｔＴｅｍｐｌａｔｅ”が登録されているため、出力対象の雛形をＲｏｏｔＴｅｍｐｌａｔｅと設定し、そのＲｏｏｔＴｅｍｐｌａｔｅ
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００２６
【補正方法】変更
【補正の内容】
【００２６】
−２”がＲｏｏｔＴｅｍｐｌａｔｅについての出力中箇所として出力中箇所記憶部１２７に記憶される（ステップＤ４）。
［０１０６］
以降同様に状態遷移処理を行うことで、要素’／ａ／ｂ２／ｃ’について出力し、最終的に、図１８に示す出力文書構造が出力され、文書終了の解析情報を得ると（ステップＢ１４）、変換処理を完了する（ステップＢ１５）。
産業上の利用可能性
［０１０７］
本発明は、複数のサービスを接続するために、入力構造化文書の構造を変換して適合させるエンタープライズサービスバスといった用途に適用できる。また、検索結果を成型してクライアントに返還するＸＭＬデータベースといった用途にも適用可能である。例えば、渡された検索式式に合致した構造化文書を入力として、クライアントが認識できる出力構造化文書に変換して返すようなＸＭＬデータベースや、検索式としてのＸＳＬＴが指定され、その時点でのデータベース内のＸＭＬ文書を入力文書として、指定されたＸＳＬＴによって変換した結果を検索結果として返すようなＸＭＬデータベースとしても適用可能である。
［０１０８］
この出願は、２００７年５月２８日に出願された日本出願特願２００７−１３９９３４を基礎とする優先権を主張し、その開示を全てここに取り込む。
図面の簡単な説明
［０１０９］
［図１］第１の実施の形態における構造化文書変換システム１００の構成例を示すブロック図である。
［図２］ある構造化文書の階層構造に対応させた状態遷移の例を示す説明図である。
［図３］状態遷移規則１４０の一例を示す説明図である。
［図４］構造化文書変換システム１００の概略動作を示すフローチャートである。
［図５］構造化文書変換処理の処理の流れの一例を示すフローチャートである。
［図６］雛形出力処理の処理フローの一例を示すフローチャートである。
［図７］差分情報適用処理の処理フローの一例を示すフローチャートである。
［図８］第２の実施の形態による構造化文書変換システム２００の構成例を示すブロックである。
［図９］差分情報終了通知規則を追加した状態遷移規則２４０の例を示す説明図であ
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】００２７
【補正方法】変更
【補正の内容】
【００２７】
る。
［図１３］第１の具体例における変換規則を示したＸＳＬＴ文書である。
［図１４］第１の具体例における入力構造化文書構造情報を示したＸＭＬＳｃｈｅｍａ文書である。
［図１５］第１の具体例で作成される状態遷移規則２４０の例である。
［図１６］第１の具体例で作成される出力雛形２５０の例である。
［図１７］第１の具体例における入力構造化文書の例を示すＸＭＬ文書である。
［図１８］第１の具体例で作成される出力構造化文書の例を示すＸＭＬ文書である。
符号の説明
［０１１０］
１００，２００，３００    構造化文書変換システム
１１０    構造化文書逐次解析部
１２０，２２０，３２０    構造化文書変換装置
１２１，２２１    変換規則解析部
１２２，２２２    状態遷移規則蓄積部
１２３    出力雛形蓄積部
１２４，２２４    状態遷移部
１２５，２２５    差分適用部
１２６    差分情報蓄積部
１２７    出力中箇所記憶部
１３０    構造化文書逐次出力部
【国際調査報告】
2008146781.tif 000021
2008146781.tif 000022
2008146781.tif 000023
2008146781.tif 000024