(57)【要約】【課題】構造化文書からの部分文書の切り出しに関し、ユーザが指定した抽出条件を基に対象の構造化文書の解析を行い、必要とする箇所の部分文書の抽出を行うプログラムとその方法を提供することを目的とする。【解決手段】本発明の部分文書の抽出プログラムは、ユーザが指定したタグの出現回数や階層数などの抽出条件を取得する抽出条件取得手順と、抽出条件にも基づいて対象の構造化文書を解析する解析手順と、解析結果に基づいて文書構造を保持しながら部分文書を作成する文書作成手順とで構成する。【選択図】    図１
2004303097.tif 000002
【特許請求の範囲】
【請求項１】
ユーザが指定した同一タグの出現回数を抽出条件として取得する抽出条件取得手順と、
抽出対象の構造化文書に対して、同一の階層で同一のタグ名が前記出現回数以上現れるタグの文書についてのみ解析を行い、解析結果を記憶する解析手順と、
前記解析手順で得られた解析結果に基づいて、文書構造を保持しながら新たに構造化文書を作成する文書作成手順と
をコンピュータに実行させることを特徴とする構造化文書の部分文書抽出プログラム。
【請求項２】
ユーザが指定した文書構造の階層数を抽出条件として取得する抽出条件取得手順と、
抽出対象の構造化文書に対して、前記階層数以上の階層のタグの文書についてのみ解析を行い、解析結果を記憶する解析手順と、
前記解析手順で得られた解析結果に基づいて、文書構造を保持しながら新たに構造化文書を作成する文書作成手順と
をコンピュータに実行させることを特徴とする構造化文書の部分文書抽出プログラム。
【請求項３】
ユーザが指定したタグ名を抽出条件として取得する抽出条件取得手順と、
抽出対象の構造化文書に対して、前記タグ名が包含する階層の文書についてのみ解析を行い、解析結果を記憶する解析手順と、
前記解析手順で得られた解析結果に基づいて、文書構造を保持しながら新たに構造化文書を作成する文書作成手順と
をコンピュータに実行させることを特徴とする構造化文書の部分文書抽出プログラム。
【請求項４】
ユーザが指定した属性を抽出条件として取得する抽出条件取得手順と、
抽出対象の構造化文書に対して、前記属性を有する文書についてのみ解析を行い、解析結果を記憶する解析手順と、
前記解析手順で得られた解析結果に基づいて、文書構造を保持しながら新たに構造化文書を作成する文書作成手順と
をコンピュータに実行させることを特徴とする構造化文書の部分文書抽出プログラム。
【請求項５】
ユーザが指定した同一タグの限定出現回数を抽出条件として取得する抽出条件取得手順と、
抽出対象の構造化文書に対して、同一の階層で同一のタグ名が前記限定出現回数を超えて現れる文書において最初に出現する文書から指定された前記限定出現回数分までの文書についてのみ解析を行い、解析結果を記憶する解析手順と、
前記解析手順で得られた解析結果に基づいて、文書構造を保持しながら新たに構造化文書を作成する文書作成成手順と
を有することを特徴とする構造化文書の部分文書抽出方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＳＧＭＬやＸＭＬ等の構造化文書から必要な箇所を部分抽出して新たな構造化文書を作成する構造化文書の部分文書抽出プログラムおよび部分文書抽出方法に関する。
【０００２】
【従来の技術】
インターネットの普及に伴って、Ｗｅｂページの記述に用いられるＨＴＭＬ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）や企業間（Ｂ  ｔｏ  Ｂ）の電子商取引に用いられるＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）、更にマニュアルなどの技術文書流通のためのＳＧＭＬ（Ｓｔａｎｄａｒｄ  Ｇｅｎｅｒａｌｉｚｅｄ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）などの構造化文書は身近なものになってきている。
【０００３】
構造化文書は、文章要素の内容を開始タグと終了タグで囲むことにより（インスタンスと称する）その文書要素の内容の階層構造を表すもので、このタグを基にコンピュータ処理がやり易くなっている。このため、例えばＸＭＬの世界では、Ｗｅｂ上に存在する大量のデータを規定のフォーマットで格納し、そのデータをＤＯＭ（Ｄｏｃｕｍｅｎｔ  Ｏｂｊｅｃｔ  Ｍｏｄｅｌ  ）やＳＡＸ（Ｓｉｍｐｌｅ  ＡＰＩ  ｆｏｒ  ＸＭＬ）  などのパーサで解析し、情報を取得するというＷｅｂサービスが一般化している。（例えば、非特許文献１）
また、構造化文書の利点として作成済の文書をデータベース化して、２次利用ができることである。例えば、ある大きなサイズのＸＭＬ文書が登録されていたとき、その文書から必要とする部分の文書を取り出して一つの文書とするような場合である。２次利用を意図して、データベース化される元の文書に記述されるべき項目の抜けがないように編集時に知らせる機能も提案されている。（例えば、特許文献１）
【０００４】
【特許文献１】
特開平７−１６０７０３公報（第３頁）
【０００５】
【非特許文献１】
アプリケーション統合関連ソリューション一覧、［ｏｎｌｉｎｅ］、ＣＩＯ  ｍａｇａｚｉｎｅｍａｒｃｈ／２００２、［  平成１５年  ３月  ６日検索、インターネット＜ＵＲＬ  ：  ｈｔｔｐ：／／ｗｗｗ．ｉｄｇ．ｃｏ．ｊｐ／ＣＩＯ／ｅａｉ／ｌｉｓｔ＿ｂ２ｂ．ｐｄｆ＞
【０００６】
【発明が解決しようとする課題】
上記に示したように、一つの構造化文書から必要な部分を抽出して元の構造化文書とは別に新たな構造化文書を作成したい場合がある。例えば、個人が複数の病院に掛かり、それらのカルテが一つの情報としてまとめられている場合に、内科だけを切り出して複数のカルテを一つの文書としたい、などの場合である。このようなときに、一般には構造化文書のソースデータを見ながらマニュアルで修正することは行わず、パーサを用いて対象の構造化文書を解析し、解析結果として得られた文書構造木を修正して新たな構造化文書を作成することが行われている。しかし、構造化の階層や形式を保ちながら正確に修正することは困難であり、構造化文書のサイズが大きい場合にはより困難な作業となる。また、従来のパーサは構造化文書に対して総ての構造化文書を解析するため多くの時間を要する、と言う問題があった。
【０００７】
本発明は上記の問題に鑑みて考案されたもので、ユーザからの簡単な指示に基づいて構造化文書の指定箇所を切り出し、元の文書構造を保ちながら新たに構造化文書を作成する方法を提案する。
【０００８】
【課題を解決するための手段】
上記課題を解決するため、本発明の構造化文書の部分文書抽出プログラムおよび部分文書抽出方法は以下のように構成される。
（１）第１の発明
第１の発明は、ユーザ指定したタグの出現回数を基に、対象とする構造化文書からその出現回数以上のタグを持つ文書（インスタンスのことである。以下、単に文書と称する）を抽出して新たな構造化文書を作成するものであり、その原理を図１を用いて説明する。本発明は、図１に示すように抽出条件取得手順１、解析手順２および文書作成手順３から構成する。
【０００９】
抽出条件取得手順１は、ユーザが指定したタグの出現回数を取得することを行う。例えば、ユーザが２回以上出現するタグについて抽出したければ「２」と入力した情報を取得する。
解析手順２は、対象とする構造化文書に対して同一の階層で同一のタグ名に対して指定された出現回数を満たすものであれば、そのタグ名を有する文書について解析を行い、解析結果を記憶しておく。言い換えると、指定の出現回数を満たさない文書に対しては解析を行わず無視することになる。また、条件を満たす文書がそれより下位階層の文書を有するものであれば、それらを含めて抽出することになる。
【００１０】
文書作成手順３は、抽出された部分文書が元の文書構造を保ちながら構造化文書を作成するものである。
第１の発明によれば、出現回数に満たない文書に対しては解析を行う必要がなく、短時間で元の構造化文書から部分文書（切り出し文書）の作成が可能なプログラムを提供できる。
（２）第２の発明
第２の発明は、ユーザが指定した階層数を基に、対象とする構造化文書からその階層以上の文書（その階層を含めた上位の文書）を抽出して新たな構造化文書を作成するものである。
【００１１】
ユーザが抽出条件取得手順１で取得する抽出条件は構造化文書におけるタグの階層数であり、解析手順２は対象の構造化文書から指定階層を含めた上位の階層の文書について解析を行って解析結果を記憶するものである。例えば、階層数が「２」と指定されれば、階層数が「１」および「２」の文書を解析対象とし、階層が「３」以下の文書については解析対象外とする。解析結果に基づいて、抽出した文書で新たな構造化文書を作成する。
【００１２】
第２の発明によれば、指定階層数を満足しない文書に対しては解析を行う必要がなく、短時間で元の構造化文書から部分文書の作成が可能なプログラムを提供できる。
（３）第３の発明
第３の発明は、ユーザ指定したタグ名を基に、対象とする構造化文書からそのタグ名の文書を抽出して新たな構造化文書を作成するものである。
【００１３】
ユーザが抽出条件取得手順１で取得する抽出条件は構造化文書におけるタグ名であり、解析手順２は対象の構造化文書から指定タグ名の文書について解析を行って解析結果を記憶するものである。指定されたタグ名の文書が下位の階層の文書を持つ場合は、それらの文書を含めて解析対象とする。そして、解析結果に基づいて、抽出した文書で新たな構造化文書を作成する。
【００１４】
第３の発明によれば、指定タグ名でない文書に対しては解析を行う必要がなく、短時間で元の構造化文書から部分文書の作成が可能なプログラムを提供できる。
（４）第４の発明
第４の発明は、ユーザ指定した属性を基に、対象とする構造化文書からその属性を持つ文書を抽出して新たな構造化文書を作成するものである。
【００１５】
ユーザが抽出条件取得手順１で取得する抽出条件は構造化文書における属性であり、解析手順２は対象の構造化文書から指定された属性を持つタグ文書について解析を行って解析結果を記憶するものである。指定された属性の文書が下位の階層の文書を持つ場合は、それらの文書を含めて解析対象とする。そして、解析結果に基づいて、抽出した文書で新たな構造化文書を作成する。
【００１６】
第４の発明によれば、指定された属性を持たない文書に対しては解析を行う必要がなく、短時間で元の構造化文書から部分文書の作成が可能なプログラムを提供できる。
（５）第５の発明
第５の発明は、ユーザ指定した同一タグの限定出現回数を基に、対象とする構造化文書から同一階層、同一タグ名の文書に対して最初の出現から指定出現回数分の該当する文書を抽出して新たな構造化文書を作成するものである。
【００１７】
ユーザが抽出条件取得手順１で取得する抽出条件は構造化文書における同一タグの限定出現回数であり、解析手順２は対象の構造化文書から同一の階層、同一のタグ名の文書が指定された出現回数以上現れるとき、その文書に対して最初に出現した文書から指定限定出現回数分の文書について解析を行って解析結果を記憶するものである。第１の発明では指定された出現回数以上を持つ文書については総て解析対象としたが、第５の発明は最初に現れる文書から限定指定回数分の文書のみを解析対象としているところに違いがある。
【００１８】
第５の発明によれば、限定指定出現回数以上に現れる文書に対して、指定された限定出現回数までは解析を行うが、それを超えて次に現れる文書（同一階層で同一タグ名の文書である）に対しては解析を行う必要がなく、短時間で元の構造化文書から部分文書の成が可能なプログラムを提供できる。
【００１９】
【発明の実施の形態】
次に、本発明について図２から図１５を参照して実施形態を説明する。
まず図２は、全体の構成を示すもので、計算機本体１０は、例えばパーソナルコンピュータであって、ユーザから指示を受ける入力装置２１、ユーザにプログラムからの情報や構造化文書などのソースデータを表示する表示装置２２と接続しており、図示しないＣＰＵ、メモリ、各種インターフェースを備えるものである。そして、計算機本体１０は抽出条件選択部１１、出現回数抽出ロジック部１２、階層数抽出ロジック部１３、タグ名抽出ロジック部１４および属性抽出ロジック部１５の各プログラムがメモリ上に展開されている。
【００２０】
抽出条件選択部１１は、ユーザが指定した抽出方法と抽出条件の情報を取得するプログラムである。また、出現回数抽出ロジック部１２から属性抽出ロジック部１５は、それぞれタグの出現回数指定、階層数指定、タグ名指定および属性指定による文書抽出を行うプログラムである。
また、計算機本体１０は抽出対象の構造化文書を格納した外部記憶２３、出現回数抽出ロジック部１２で生成する抽出タグテーブルを格納した外部記憶２４および抽出された部分文書の構造化文書を格納した外部記憶２５と接続している。
【００２１】
図３は、外部記憶２３に格納した抽出対象の構造化文書のデータ例で、ここではＸＭＬ文書を例としている。図４は詳細は後述するが、出現回数抽出ロジック部１２において抽出の前処理として生成した抽出タグテーブル格納部２４のデータ例で、抽出対象の構造化文書で出現するタグに対してその階層と出現回数を記録したものである。このデータは、出現回数抽出ロジック部１２の処理が終わった段階では消去する一時的なものである。図５〜図８は、出現回数抽出ロジック部１２〜属性抽出ロジック部１５のそれぞれの処理で格納された部分文書の構造化文書のデータ例を示すものである。
【００２２】
次に、プログラムの処理フローについて順次説明する。ここでは、抽出対象の構造化文書が予め記憶部２３に格納されているものとする。
抽出条件選択部１１のフローを図９に示す。本プログラムの起動に伴って、まず抽出条件選択部１１が作動し、ユーザに文書抽出の方法を選択させる。即ち、抽出方法はタグの出現回数指定、階層指定、タグ名指定および属性指定のいずれの抽出方法で行うか、を選択させる（Ｓ１１）。
【００２３】
次に、選択された方法に対する抽出条件をユーザに入力させ、抽出するプログラムの処理（出現回数抽出ロジック部１２〜属性抽出ロジック部１５）に入る（Ｓ１２〜Ｓ１９）。
図９の出現回数抽出ロジック（図２では出現回数抽出ロジック部１２）の処理は、ユーザが指定したタグの出現回数を基に抽出対象の構造化文書から抽出条件に該当する文書（部分文書）を抽出するものである。図１０と図１１はその処理フローを示すものである。図１０はタグの出現回数を予め調べておく処理を行うもので、文書抽出の前処理に相当する。そして、図１１は前処理で生成したタグの出現回数を基に文書の抽出を行う処理を行う。
【００２４】
図１０において、外部記憶２３から抽出対象の構造化文書のデータを取り出す。即ち、図３に示す構造化文書（ソースデータ）がメモリ上に読み込まれることになる。このソースデータに対して文字読取位置を先頭にセットして”＜”から”＞”までの文字列を読み取り、”＜”と”＞”間の文字列（以降、”＜”と”＞”間の文字列を要素と言う）が開始タグかどうかを判断する。この判断は、例えば要素の最初の文字が”！”であったり、”クエスチョンマーク”であるときはコメント文か宣言文であり開始タグではないと判断する。開始タグでないときは、文字位置を前進して次の”＜”から”＞”までの文字列を読み取る（Ｓ２１〜Ｓ２４）。
【００２５】
開始タグであるとき、そのタグの階層を調べる。最初に現れる開始タグの階層は「１」で、そのタグと同名の終了が現れる前に次の開始タグが現れれば、その開始タグの階層は「２」となり、同様にして開始タグが現れるようであれば順次階層が下がって行くことになる。開始タグのタグ名と階層が求められた段階で、抽出タグテーブル格納部２４を参照し、同名同層のタグが抽出タグテーブルに存在するかどうかを調べ、抽出テーブルになければタグ名、階層および出現カウント値「０」を抽出タグテーブルに格納する。文字読取位置を次に進め、ソースデータの終了位置でなければ、次の”＜”から”＞”迄の文字列を読み取り、前述と同様に開始タグのタグ名と階層を調べ、抽出タグテーブルに格納して行く。もし、抽出タグテーブルに同名同層のタグが格納さていれば、その出現カウント値に「＋１」を加える。以上により、ソースデータに現れるタグ名の出現回数が抽出タグテーブルに生成されることになる。図４の抽出タグテーブルのデータ例は、図３の構造化文書で生成されたデータの１部を示しており、例えば「ｂｏｏｋｓｔｏｒｅ  」のタグは第１階層で、出現の回数（  出現カウント値）  は１回であり、次の「ｂｏｏｋ」のタグは２階層で出現回数は３回（以下同様）であったことを示している（Ｓ２５〜Ｓ３０）。
【００２６】
抽出タグテーブルの生成が終了すると次に文書抽出ルーチンの処理に移る（Ｓ３１）。
次に、図１１を用いて文書抽出ルーチンの処理フローを説明する。文書抽出ルーチンは抽出タグテーブルを参照しながら、ユーザが指定したタグの出現回数以上となるタグの文書を抽出するものである。まず、構造化文書のソースデータの先頭位置からスタートし、最初の”＜”から次に現れる”＞”までの文字列を読み取り、要素を抽出する。前述のように開始タグであるかどうかを判断し、開始タグでなければコメント文や宣言文であるので読み取った文字列をそのまま外部記憶２５に格納する（Ｓ４１〜Ｓ４４）。
【００２７】
文字列が開始タグであるとき、そのタグの階層を求める。抽出タグテーブルを参照し、タグ名と階層が抽出タグテーブル中に一致するものがなければその文字列を棄却し、改めて”＜”から”＞”までの文字データを読み取る。もし、読み取ったタグ名と階層が抽出タグテーブルにある場合は、その出現カウント値を調べる。出現カウント値がユーザが指定した階層数以上の上位であるなら、読み取ったタグ名に対応する終了タグ名までの文字列を外部記憶２５に格納する。従って、このタグ名の下に更に下位階層のタグがあっても、それらを含めて格納されることになる（Ｓ４５〜Ｓ４９）。
【００２８】
文字読取位置がソースの終了位置まで同様の処理（Ｓ４２〜Ｓ４９）を行い、最終位置になったとき、外部記憶２５にはユーザが指定したタグの出現回数の条件を満たす文書が抽出されたことになる（Ｓ５０）。
以上の処理により、外部記憶２５には、元の文書構造を保持した部分文書の構造化文書のデータが作成された。図５は、ユーザがタグの出現回数を「２」と指定して図３の構造化文書を図１０および図１１に示す処理フローで抽出された部分文書である。図３にはタグ名「ｂｏｏｋ」が３回現れており、このタグ名が包含する下位の階層まで含めて図５に抽出されている。
【００２９】
次に、ユーザが階層数の指定を行う図９の階層数抽出ロジック（図２では階層数抽出ロジック部１３）の処理フローの説明を図１２を用いて行う。
ソースデータとなる構造化文書を外部記憶２３からメモリ上に取り出し、文字読取位置を先頭にセットする。そして、最初の”＜”から次に現れる”＞”までの文字列を読み取り、”＜”と”＞”の間の要素を抽出する。その要素が終了タグか、開始タグかを判断し、終了タグであれば読み取った文字列を棄却し、新たに文字列を読み取る。要素が終了タグでなく、開始タグでもなければ、宣言文やコメント文であるので読み取った文字列を外部記憶２５に格納する（Ｓ６１〜Ｓ６６）。
【００３０】
要素が開始タグであるときこのタグの階層を求め、求めた階層がユーザから指定された階層以上（即ち、指定さた階層を含めより上位にある）であるとき、読み取った文字列から更に文字読取位置を進めて次の”＜”が現れるまでの文字列を外部記憶２５に格納する。即ち、開始タグの”＜”から”＞”を過ぎて、次の”＜”の前までの文字列が格納されたことになる。指定階層でなかったときは、読み取った文字列を棄却し、改めて文字列を読み取ることになる。文字列格納後は次の”＜”から”＞”までの文字列を読み取り、その要素が終了タグであるとき読み取った文字列を外部記憶２５に格納する。終了タグでないときは、開始タグであるかどうかのチェックに戻る（Ｓ６８〜Ｓ７２）。
【００３１】
Ｓ６１〜Ｓ７２の処理フローでソースデータに対する文字読取位置は前進し、終了位置にきたときこの処理は終了する。この時点において、外部記憶２５にはユーザが指定した階層数以上の部分文書が文書構造を保持しながら抽出されたことになる。図６は、ユーザが階層数を「２」と指定して図３の構造化文書を図１２に示すフローで抽出された部分文書である。階層数が「１」と「２」の文書および宣言文やコメント文が抽出されている。
【００３２】
次に、ユーザがタグ名の指定を行う図９のタグ名抽出ロジック（図２ではタグ名抽出ロジック部１４）の処理フローの説明を図１３を用いて行う。
ソースデータを外部記憶２３からメモリ上に取り出し、ソースデータの先頭位置から最初の”＜”から次に現れる”＞”までの文字列を読み取り、”＜”と”＞”の間の要素を抽出する。要素が終了タグでなく開始タグであるかどうかを調べ、開始タグであれば更に指定されたタグ名と一致するかどうかを調べる。開始タグがユーザから指定されたタグ名と一致するようであれば、開始タグ名（即ち、指定のタグ名）と対応する終了タグまで外部記憶２５に格納する。このとき、開始タグが下位階層の文書を持つときは、その文書も含めて格納されることになる。開始タグが指定のタグ名でなかったとき、および終了タグであったときは、読み取った文字列を棄却し、新たに”＜”から次に現れる”＞”までの文字列を読み取って同様の処理を行う。更に、要素が終了タグでも開始タグでもない場合は、宣言文やコメント文と見なし、読み取った文字列を外部記憶２５に格納する。文字読取位置がソースデータの最終位置まで来るとこの処理は終了することになるが、外部記憶２５には指定されたタグ名の文書が文書構造を保持しながら抽出されている（Ｓ８１〜Ｓ８９）。
【００３３】
図７は、ユーザがタグ名を「ｍａｇａｚｉｎｅ」と指定して図３の構造化文書を図１３に示すフローで抽出された部分文書である。タグ名「ｍａｇａｚｉｎｅ」の文書および宣言文やコメント文が抽出されている。
次に、ユーザが属性の指定を行う図９の属性抽出ロジック（図２では属性抽出ロジック部１５）の処理フローの説明を図１４を用いて行う。
【００３４】
ソースデータとなる構造化文書を記憶部２３からメモリ上に取り出し、ソースデータの先頭位置から最初の”＜”から次に現れる”＞”までの文字列を読み取り、”＜”と”＞”の間の要素を抽出する。要素が終了タグでなく開始タグであれば要素から属性を取り出す。属性がユーザが指定した属性と一致すれば、その開始タグ名の”＜”の文字から対応する終了タグの”＞”までの文字列を外部記憶２５に格納する。このとき、開始タグが下位階層の文書を持つときは、その文書も含めて格納されることになる。要素が終了タグであったとき、読み取った文字列を棄却し、新たに文字列の読み取りを行う。また、要素が終了タグでなく、開始タグでもない場合は、宣言文やコメント文と見なし、読み取った文字列を外部記憶２５に格納する。文字読取位置がソースの最終位置まで来るとこの処理は終了するが、外部記憶２５には指定された属性の文書が抽出されている（Ｓ１０１〜Ｓ１１０）。
【００３５】
上記に述べた出現回数抽出ロジック〜属性抽出ロジックの処理例では、いずれも抽出対象となる構造化文書の文字列から直接抽出する文字列を取り出し、外部記憶２５に格納するようにしている。これを例えばＤＯＭのように抽出条件を考慮しながら解析して抽出した文書構造木を一旦生成し、それを基に部分文書を作成するようにしてもよい。
【００３６】
また、実施形態に掲げた例ではいずれか一つの抽出ロジックを選択するようにしたが、複数のロジックを組み合わせるようにしてもよい。
更に、出現回数ロジックでは、出現回数が指定数以上現れる同層のタグについて抽出しているが、同一のタグを指定回数分だけ抽出するようにしてもよい。
なお、本実施形態では、抽出対象の構造化文書、タグ抽出テーブルおよび部分文書の構造化文書をそれぞれハードディスク等の外部記憶２３〜２４格納するようにしているが、これらはメインメモリに記憶させるようにしてよい。
【００３７】
（付記１）  ユーザが指定した同一タグの出現回数を抽出条件として取得する抽出条件取得手順と、
抽出対象の構造化文書に対して、同一の階層で同一のタグ名が前記出現回数以上現れるタグの文書についてのみ解析を行い、解析結果を記憶する解析手順と、
前記解析手順で得られた解析結果に基づいて、文書構造を保持しながら新たに構造化文書を作成する文書作成手順と
をコンピュータに実行させることを特徴とする構造化文書の部分文書抽出プログラム。
（付記２）    ユーザが指定した文書構造の階層数を抽出条件として取得する抽出条件取得手順と、
抽出対象の構造化文書に対して、前記階層数以上の階層のタグの文書についてのみ解析を行い、解析結果を記憶する解析手順と、
前記解析手順で得られた解析結果に基づいて、文書構造を保持しながら新たに構造化文書を作成する文書作成手順と
をコンピュータに実行させることを特徴とする構造化文書の部分文書抽出プログラム。
（付記３）  ユーザが指定したタグ名を抽出条件として取得する抽出条件取得手順と、
抽出対象の構造化文書に対して、前記タグ名が包含する階層の文書についてのみ解析を行い、解析結果を記憶する解析手順と、
前記解析手順で得られた解析結果に基づいて、文書構造を保持しながら新たに構造化文書を作成する文書作成手順と
をコンピュータに実行させることを特徴とする構造化文書の部分文書抽出プログラム。
（付記４）  ユーザが指定した属性を抽出条件として取得する抽出条件取得手順と、
抽出対象の構造化文書に対して、前記属性を有する文書についてのみ解析を行い、解析結果を記憶する解析手順と、
前記解析手順で得られた解析結果に基づいて、文書構造を保持しながら新たに構造化文書を作成する文書作成手順と
をコンピュータに実行させることを特徴とする構造化文書の部分文書抽出プログラム。
（付記５）  ユーザが指定した同一タグの限定出現回数を抽出条件として取得する抽出条件取得手順と、
抽出対象の構造化文書に対して、同一の階層で同一のタグ名が前記限定出現回数を超えて現れる文書において最初に出現する文書から指定された前記限定出現回数分までの文書についてのみ解析を行い、解析結果を記憶する解析手順と、
前記解析手順で得られた解析結果に基づいて、文書構造を保持しながら新たに構造化文書を作成する文書作成成手順と
をコンピュータに実行させることを特徴とする構造化文書の部分文書抽出プログラム。
（付記６）  ユーザが指定した同一タグの出現回数を抽出条件として取得する抽出条件取得手順と、
抽出対象の構造化文書に対して、同一の階層で同一のタグ名が前記出現回数以上現れる文書についてのみ解析を行い、解析結果を記憶する解析手順と、
前記解析手順で得られた解析結果に基づいて、文書構造を保持しながら新たに構造化文書を作成する文書作成成手順と
を有することを特徴とする構造化文書の部分文書抽出方法。
【００３８】
【発明の効果】
本願発明によれば、構造化文書についてのスキルが低いユーザであっても簡単な指示で文書の抽出を短時間に行える効果がある。
【図面の簡単な説明】
【図１】本発明の原理図である。
【図２】実施形態の全体構成図である。
【図３】抽出対象の構造化文書のデータ例である。
【図４】抽出タグテーブルのデータ例である
【図５】出現回数抽出ロジックで作成した部分文書である。
【図６】階層数抽出ロジックで作成した部分文書である。
【図７】タグ名抽出ロジックで作成した部分文書である。
【図８】属性抽出ロジックで作成した部分文書である。
【図９】抽出方法選択部の処理フロー例である。
【図１０】出現回数抽出ロジックの処理フロー例（その１）である。
【図１１】出現回数抽出ロジックの処理フロー例（その２）である。
【図１２】階層数抽出ロジックの処理フロー例である。
【図１３】タグ名抽出ロジックの処理フロー例である。
【図１４】属性抽出ロジックの処理フロー例である。
【符号の説明】
１：抽出条件取得手順
２：解析手順
３：文書作成手順
１０：計算機本体
１１：抽出条件選択部
１２：出現回数抽出ロジック部
１３：階層数抽出ロジック部
１４：タグ名抽出ロジック部
１５：属性抽出ロジック部
２１：入力装置
２２：表示装置
２３：外部記憶
２４：外部記憶
２５：外部記憶
【図１】
2004303097.tif 000003
【図２】
2004303097.tif 000004
【図３】
2004303097.tif 000005
【図４】
2004303097.tif 000006
【図５】
2004303097.tif 000007
【図６】
2004303097.tif 000008
【図７】
2004303097.tif 000009
【図８】
2004303097.tif 000010
【図９】
2004303097.tif 000011
【図１０】
2004303097.tif 000012
【図１１】
2004303097.tif 000013
【図１２】
2004303097.tif 000014
【図１３】
2004303097.tif 000015
【図１４】
2004303097.tif 000016