(57)【特許請求の範囲】
【請求項１】
構造化文書のタグまたは文書型定義から得られる要素名とその要素名に対応する識別番号である要素ＩＤを格納する要素ＩＤ格納手段と、構造化文書に出現する要素内容の位置をその要素の文書における出現の順位で表わした要素内容番号と、その要素の要素ＩＤと、その要素の親要素の要素内容番号である親要素番号と、その要素の親要素内における同一要素の出現順位を示す順位番号を格納するノード情報格納手段と、要素内容に出現する文字の出現位置の情報をその要素内容番号、要素ＩＤとともに格納する文字位置情報格納手段を備え、要素の範囲をその要素内容番号を親要素番号にもつ子要素をノード情報により検出し、これを要素内容番号の最後まで繰り返して求め、構造化文書を入力すると、構造化文書の構造情報を要素ＩＤ格納手段およびノード情報格納手段に格納し、構造化文書の各要素内容に含まれる文字情報を文字位置情報格納手段に格納し、前記要素ＩＤ格納手段およびノード情報格納手段の情報より構造化検索を行い、文字列検索を前記文字位置情報格納手段より行って、文字列検索の該当する要素内容番号から構造化条件に該当する要素内容番号を検出することにより、構造化文書検索を行うことを特徴とする文書処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報検索、情報処理分野における構造化文書の登録検索に利用されるもので、構造化文書の検索情報を構造化情報と文字位置情報に分け、これらの情報を別々に、または同時に処理を行い、登録検索処理する文書処理装置に関する。
【０００２】
【発明が解決しようとする課題】
文書情報処理分野における構造化文書の登録検索に利用される文書処理装置に関して従来行われている登録および検索の方法としては、特開平８−３２９１１６号のように構造単位にビットを立てる方法、特開平１０−１４３５１１号のようにタグをもとに領域を分割する方法、特開平６−２６６７６４号のように構造と単語を別々に管理する方法がある。
【０００３】
たとえば、特開平８−３２９１１６号では、構造単位にビットを立て、文字索引ファイルに構造化情報を埋め込むことが可能である。また、特開平１０−１４３５１１号では、タグの情報のみを扱うため索引情報の格納が簡単にすることが可能となる。また、特開平６−２６６７６４号では、構造と単語の検索を別々に行うことによりそれぞれの処理の効率化が図れる。
【０００４】
しかし、以上のような方法においては、たとえば、特開平８−３２９１１６号では、構造化文書の構造にビットを対応させており、構造の繰り返しや階層の深さなどによる構造の大きさに制限を受けてしまう。たとえば、対応ビット列が８ビットの場合は８階層までの構造化文書というようにである。また、特開平１０−１４３５１１号では、構造化情報がタグの情報のみであるためタグ示す要素の文書構造における位置や各要素間の前後関係などの情報が欠落しており、他の方法で補う必要がある。また、特開平６−２６６７６４号では、管理が分離しているため処理に無駄が生じる恐れがある。
【０００５】
本発明は従来技術の以上のような問題を解決し、構造化文書の検索において検索条件に要素指定の構造化検索と要素内容における文字列検索を効率よく行うことが可能となる文書処理装置を提供することにある。
【０００６】
【課題を解決するための手段】
本発明は、上記の課題を解決するために、構造化文書のタグまたは文書型定義から得られる要素名とその要素名に対応する識別番号である要素ＩＤを格納する要素ＩＤ格納手段と、構造化文書に出現する要素内容の位置をその要素の文書における出現の順位で表わした要素内容番号と、その要素の要素ＩＤと、その要素の親要素の要素内容番号である親要素番号と、その要素の親要素内における同一要素の出現順位を示す順位番号を格納するノード情報格納手段と、要素内容に出現する文字の出現位置の情報をその要素内容番号、要素ＩＤとともに格納する文字位置情報格納手段を備え、要素の範囲をその要素内容番号を親要素番号にもつ子要素をノード情報により検出し、これを要素内容番号の最後まで繰り返して求め、構造化文書を入力すると、構造化文書の構造情報を要素ＩＤ格納手段およびノード情報格納手段に格納し、構造化文書の各要素内容に含まれる文字情報を文字位置情報格納手段に格納し、前記要素ＩＤ格納手段およびノード情報格納手段の情報より構造化検索を行い、文字列検索を前記文字位置情報格納手段より行って、文字列検索の該当する要素内容番号から構造化条件に該当する要素内容番号を検出することにより、構造化文書検索を行うことにより、上記目的を達成するものである。
【０００７】
【発明の実施の形態】
以下、本発明の実施例について図面を参照しながら説明する。
【０００８】
（実施の形態１）
図１は本発明の第１の文書処理方法の概念を示し、図２は本発明の第１の文書処理装置のブロック構成図、を示している。
【０００９】
図１は本発明の第１の文書処理方法の概念を示している。図１において、２０１は文書処理装置が扱う構造化文書の構造、２０２は構造２０１の要素名と要素ＩＤを示す要素ＩＤ表、２０３は構造２０１に基づく文書番号ｎの構造化文書、２０４は構造化文書２０３の要素内容番号とその要素ＩＤ、要素の終端の要素内容番号である要素終端番号からなるノード情報、２０５は要素内容に出現する文字列の文字列位置情報、２０６は構造化文書２０３に出現する文字列「構造」の文字列位置情報、２０７は構造化文書２０３に出現する文字列「造化」の文字列位置情報である。本発明の登録方法では入力する文書２０３の構造を要素ＩＤ表２０２に従い要素内容番号が１の＜本文＞は要素ＩＤが１でその要素終端番号は８であり、要素内容番号が２の＜タイトル＞は要素ＩＤが２でその要素終端番号はその要素内容番号と同じ２、要素内容番号が３の＜章＞は要素ＩＤが３でその要素終端番号は５であり、以下それぞれ要素は要素内容番号４から８に応じてノード表２０４のノード情報が格納される。この時同時に、各要素内容に出現する文字列は２文字の連鎖の文字列に分解され、各文字列は位置を一意に定める文書番号、要素内容番号、要素ＩＤ、文字の出現順位（順番）または出現位置（要素内容における相対的・絶対的位置）の情報で与えられる文字列位置情報２０５を作成する。たとえば、文字列「構造化・・」は２文字連鎖の文字列「構造」、「造化」に分解し、文字列が出現する要素内容番号２、５、８に従い「構造」の文字列位置情報２０６と「造化」の文字列位置情報２０７に格納する。この時、２番目の＜章＞の＜段落＞にある文字列「構造化」を検出する構造化検索は、＜章＞の要素ＩＤ「３」と＜段落＞の要素ＩＤ「５」を要素ＩＤ表２０２より検出し、２番目の＜章＞をノード表２０４の要素ＩＤ欄の「３」を計数して、２番目の＜章＞の要素内容番号に対応している要素を求め、その要素の要素終端番号までの範囲における要素ＩＤ「５」の要素として要素内容番号「８」を検出する。以上で、構造化文書の構造検索として該当する要素が検出される。この構造検索で検出された要素内容番号「８」と文書番号をもとに文字列位置情報の文字の連続性を検出し（たとえば、「構造化」は「構造」の位置情報の次の値が「造化」の位置情報となる）、上記構造化文字列検索を行うことが可能となる。
【００１０】
図１において、２１１は終端情報を追加したノード表で、第１の方法ではさらに、ノード表２１１で示すようにノード情報に要素が子要素を持つかどうかの情報として、終端で子要素がないときは０で、子要素を持つときは１の終端情報を追加し、文書構造における各要素の意味付けを分類し、たとえば、文書の実体情報である要素内容をこの終端情報が０の要素に限定して行ったりして処理の効率を上げることが可能である。
【００１１】
図１において、２２１は終端情報の代わりにノードＩＤとリーフＩＤを追加したノード表で、第１の方法ではさらに、ノード表２２１で示すようにノード情報に要素が子要素を持つ場合は要素ＩＤをノードＩＤとし、終端で子要素がないときは要素ＩＤをリーフＩＤとする情報を追加し、文書構造における各要素の意味付けを分類し、たとえば、文書の実体情報である要素内容をリーフＩＤの要素に限定して行ったりして処理の効率を上げることが可能である。
【００１２】
図１（ｂ）において、２３１は要素の範囲を示す要素終端番号の代わりに要素の終端までの差分を要素範囲としたノード表である。この時、要素の範囲は、その要素の要素内容番号に要素範囲を加えた要素内容番号の要素までである。この方法は、図１でのノード表２０４、２１１、２２１において要素終端番号の代わりに用いることができる。
【００１３】
図２は本発明の多言語文書を管理する文書処理装置の構成を示したものである。
【００１４】
図２において、１０１は構造化文書を読み込み構造を要素毎に分解し構造化文書のタグに応じて要素毎にデータを取り込む文書入力部、１０２は文書入力部より文書の構造とタグ名を取り込みタグ名を一意に対応づける要素ＩＤを作成する要素ＩＤ作成部、１０３はタグ名の要素ＩＤを記憶する要素ＩＤ格納部、１０４は取り込んだ構造化文書の要素ＩＤ表と構造をもとに各要素の要素内容番号、要素ＩＤ、要素終端番号、終端情報を要素のノード情報として作成する文書構造情報作成部、１０５は各要素のノード情報を格納するノード情報格納部、１０６は取り込んだ構造化文書の各要素に出現する文字列を２文字の文字列に分解し各文字列の位置を構造化文書の文書番号、出現した要素の要素内容番号、要素ＩＤと、要素内の出現位置により文字列位置情報を作成する文字位置索引作成部、１０７は文字位置索引作成部１０６が作成する文字列位置情報を格納する文字位置情報格納部、１０８は構造化文書文字列検索の条件を入力する検索条件入力部、１０９は検索条件入力部１０８の構造化検索条件に応じて要素ＩＤ格納部１０３とノード情報格納部１０５から構造検索を行い該当する要素の検出を行う構造化検索部、１１０は検索条件入力部１０８の文字列検索条件の文字列に応じて構造化検索部１０９で検出する要素と文字位置情報格納部１０７から該当する文字列を検出する文字列検索部である。
【００１５】
要素の範囲をその要素の要素内容番号から要素終端番号２０４までの範囲として求め、構造化文書２０３を入力すると、構造化文書２０３の構造情報を要素ＩＤ格納部１０３およびノード情報格納部１０５に格納し、構造化文書２０３の各要素内容に含まれる文字情報を文字位置情報格納部１０７に格納し、構造化文書の検索時に構造化検索を前記要素ＩＤ格納部１０３およびノード情報格納部１０５の情報より行い、文字列検索を前記文字位置情報格納部１０７より行って、文字列検索の該当する要素内容番号から構造化条件に該当する要素内容番号２０４を検出することにより、文字列検索部１１０より該当する文書番号と要素内容番号が出力される。以上により構造化文書の登録と構造化文書の構造化文字列検索が可能となる。
【００１６】
（実施の形態２）
本発明の第２の方法による文書処理装置は、図１の構成と同じ構成で実現することができる。図３は、本発明の第２の文書処理方法の概念を示している。
【００１７】
図３において、３０１は要素の位置関係を要素の親要素の要素内容番号を親要素番号、親要素内におけるこの要素と同じ要素名要素における出現の順位を同一要素順位として設定するノード情報である。このとき、本発明の登録方法では入力する文書２０３の構造を要素ＩＤ表２０２に従い要素内容番号が１の＜本文＞は要素ＩＤが１で親要素がないので親要素番号と同一要素番号は空欄で、要素内容番号が２の＜タイトル＞は要素ＩＤが２で要素内容番号が１の親要素をもつので親要素番号が１で同一要素順位は１、要素内容番号が３の＜章＞は要素ＩＤが３で要素内容番号１の親要素をもつので親要素番号が１で同一要素順位は１である。以下それぞれ要素は要素内容番号４から８に応じてノード表３０１のノード情報が格納される。この時、要素内容番号が６の＜章＞では要素ＩＤが３でこの要素の出現はこの要素をもつ親要素＜本文＞内で２番目であるから同一要素順位は２となる。この時、２番目の＜章＞の＜段落＞にある文字列「構造化」を検出する構造化検索は、＜章＞および＜段落＞の要素ＩＤを要素ＩＤ表２０２より検出し、２番目の＜章＞をノード表３０１の要素ＩＤ欄の「３」を計数して、２番目の＜章＞の要素内容番号「６」に対応している要素を求め、その要素を親要素とする要素を親要素番号欄より検出してその要素の範囲の子要素の要素内容番号「７」「８」を得る。これらの要素の要素ＩＤと求める＜段落＞の要素ＩＤ「５」を照合し目的の要素として要素内容番号「８」を検出する。以上により、構造化文書の構造検索として該当する要素が検出される。この構造検索の結果の要素内容番号「８」と文書番号をもとに文字列位置情報の文字の連続性を検出し（たとえば、「構造化」は「構造」の位置情報の次の値が「造化」の位置情報となる）、上記構造化文字列検索を行うことが可能となる。
【００１８】
図３において、３１１は終端情報を追加したノード表で、第１の方法ではさらに、ノード表３１１で示すようにノード情報に要素が子要素を持つかどうかの情報として、終端で子要素がないときは０で、子要素を持つときは１の終端情報を追加し、文書構造における各要素の意味付けを分類し、たとえば、文書の実体情報である要素内容をこの終端情報が０の要素に限定して行ったりして処理の効率を上げることが可能である。
【００１９】
要素の範囲をその要素内容番号を親要素番号にもつ子要素をノード情報により検出し、これを要素内容番号の最後まで繰り返して求め、構造化文書２０３を入力すると、構造化文書２０３の構造情報を要素ＩＤ格納部１０３およびノード情報格納部１０５に格納し、構造化文書２０３の各要素内容に含まれる文字情報を文字位置情報格納部１０７に格納し、構造化文書２０３の検索時に構造化検索を前記要素ＩＤ格納部１０３およびノード情報格納手段１０５の情報より行い、文字列検索を前記文字位置情報格納部１０７より行って、文字列検索の該当する要素内容番号から構造化条件に該当する要素内容番号を検出することにより、構造化文書検索を行う。
【００２０】
（実施の形態３）
図４は、本発明の第３の文書処理方法の概念を示している。
【００２１】
図４において、４０１は要素の位置関係を要素の要素内容番号とその要素ＩＤ、要素の出現する階層を最上位を１とした階層番号を格納するノード表である。この時、要素内容番号は、要素の出現する順に振られ、結果的にグラフアルゴリズムにおける深さ優先の順位で番号付けされ、構造化文書２０２の場合は、ノード表４０１のように番号付けられる。本発明の登録方法では入力する文書２０３の構造を要素ＩＤ表２０２に従い要素内容番号が１の＜本文＞は要素ＩＤが１でこの要素の出現する階層は階層番号が１、要素内容番号が２の＜タイトル＞は要素ＩＤが２でこの要素の出現する階層は階層番号が２、要素内容番号が３の＜章＞は要素ＩＤが３でこの要素の出現する階層は階層番号が２、要素内容番号が４の＜章題＞は要素ＩＤが４でこの要素の出現する階層は階層番号が３、要素内容番号が５の＜段落＞は要素ＩＤが５でこの要素の出現する階層は階層番号が３となる。以下それぞれ要素は要素内容番号６から８に応じてノード表４０１のノード情報が格納される。この時、２番目の＜章＞の＜段落＞にある文字列「構造化」を検出する構造化検索は、＜章＞の要素ＩＤ「３」と＜段落＞の要素ＩＤ「５」を要素ＩＤ表２０２より検出し、２番目の＜章＞をノード表４０１の要素ＩＤ欄の「３」を計数して、２番目の＜章＞の要素内容番号「６」に対応している要素を求め、その要素の範囲をその要素内容番号に続けて要素の階層より１つ下の階層番号までの範囲（ここでは要素内容番号が６以上で階層番号が２の要素内容番号「７」、「８」の要素が該当する）における要素ＩＤ「５」の要素として要素内容番号「８」を検出する。以上で、構造化文書の構造検索として該当する要素が検出される。
【００２２】
この構造検索で検出された要素内容番号「８」と文書番号をもとに文字列位置情報の文字の連続性を検出し（たとえば、「構造化」は「構造」の位置情報の次の値が「造化」の位置情報となる）、上記構造化文字列検索を行うことが可能となる。
【００２３】
図４において、４１１は終端情報を追加したノード表で、第３の方法ではさらに、ノード表４１１で示すようにノード情報に要素が子要素を持つかどうかの情報として、要素が終端で下位層がないときは０、終端でなく下位層があるときは１の終端情報を追加し、文書構造における各要素の意味付けを分類し、たとえば、文書の実体情報である要素内容をこの終端情報が０の要素に限定して行ったりして処理の効率を上げることが可能である。
【００２４】
図２において、要素の範囲をその要素内容番号の下位の階層番号４０１から検出し、構造化文書を入力すると、構造化文書の構造情報を要素ＩＤ格納部１０３およびノード情報格納部１０５に格納し、構造化文書の各要素内容に含まれる文字情報を文字位置情報格納部１０７に格納し、構造化文書の検索時に構造化検索を要素ＩＤ格納部１０３およびノード情報格納部１０５の情報より行い、文字列検索を文字位置情報格納部１０７より行って、文字列検索の該当する要素内容番号から構造化条件に該当する要素内容番号を検出することにより、構造化文書検索を行う。
【００２５】
（実施の形態４）
図５は、本発明の第４の文書処理装置のブロック構成図を示し、図９で文書処理装置で格納する索引情報を、図１０では文書検索の例を示す。
【００２６】
はじめに使用するデータとその構造を説明する。図６は本発明の構造化文書の文書構造６０１と検索対象としての構造化文書データの例６０２である。６０１では、構造化文書のタグ名を＜＞で囲まれた文字列とする。６０１において、＜資料＞をルートとして＜ヘッダ＞、＜章＞がその子、以下＜タイトル＞＜節＞＜説明文＞が子としてつながっている構造を持っている。この構造に対して６０２に構造化文書データがタグ＜要素名＞で囲まれ、そのタグ＜要素名＞の内容として開始タグ＜要素名＞と終了タグ＜／要素名＞となっている。
【００２７】
本発明のブロック図に戻って、文書構造入力部５０１は、上記６０１の構造を読み取り、要素ＩＤ表作成部５０２が、文書構造を識別し、要素ＩＤとその番号を作成する。作成する表は図７の７０１、７０２である。たとえば、７０２において６０２の要素にしたがって要素ＩＤで＜資料＞が１、＜ヘッダ＞が２、＜説明文＞が４、以下同様に作成され要素ＩＤ表格納部５０３に格納される。さらに文書構造要素階層表作成部５０４は、各要素ＩＤに対して親の要素ＩＤを作成する。７０２の例では＜説明文＞に対する親は、＜ヘッダ＞と＜節＞が要素名として存在することから２と６を親の要素ＩＤ１，２として格納する。以下同様に親の要素および子の要素を作成し、７０１と７０２の表を作成し文書構造要素階層表データとして文書構造要素階層表格納部５０５に格納される。
【００２８】
また、文書構造要素階層表格納部５０５で作成された文書構造要素階層表データをもとにして、構造化文書データ６０２を要素に分解する。最初に図５の文書入力部５０６で構造化文書データ６０２を読み取り文書番号を付与し、文書構造要素順位作成部５０７は文書構造要素階層表データにしたがって要素ごとに分解する。図８の８０１は分解された図である。このとき、同一要素ＩＤに対する要素名が複数存在する場合には、要素ＩＤ別に出現の回数を記憶する。たとえば、要素ＩＤ＝６の＜節＞の場合には４個が出現することから＜節＞（１）〜＜節＞（４）と番号がふられる。また＜章＞の場合には▲１▼▲２▼がふられる。
【００２９】
一方、文字位置索引作成部５０８では要素ＩＤ別かつ文字種別に文字位置の出現位置を計算する。たとえば、図６の６０２の１０行目、＜説明文＞の要素は「全文検索の方法は…」であり、文字種「全」は１番目、「文」は２番目となっている。
【００３０】
次に、図５の索引情報格納部５０９は、図８の文書構造と前記文字位置索引作成部の結果を合わせて、図９の索引情報を作成する。図９において索引情報は９０１のように、文字種および連続する文字連鎖ごとに文書番号と親の要素ＩＤ、親と同じ要素ＩＤの出現順位、自分の要素ＩＤ、文字位置情報を格納する。たとえば９０２のように「全文検索…」の場合には、文字種（全）と文字種（文）から（全、文）の組み合わせに対して索引情報を作成し、同じく（文、検）の組み合わせに対しても索引情報を作成する。このとき索引情報のソートの順位は前記索引情報格納手段の索引情報が文字種が含まれる文書ＩＤと、文字種が含まれる親の要素ＩＤと、文字種が含まれる親の要素ＩＤに対する同一文書の出現順位と、文字種が含まれる要素ＩＤと、同一要素ＩＤ内での文字位置情報の順番で格納し、かつ各情報は優先度を持ってソートされ、ソートの優先順位は、文字種が含まれる要素ＩＤ、親の要素ＩＤ、親の要素ＩＤに対する同一文書の出現順位、文書番号、文字位置情報となるように索引情報を格納するようにしている。
【００３１】
９０４には（全、文）と（文、検）の索引情報の例が示されている。９０４では、＜説明文＞ＩＤ＝４での親のＩＤが６（＝節）であり、節の順位は１、２、４である（図８の節の(  )の数字参照）。この時の文字種「全」の文字位置が１となっている。同様にして（文、検）については「文」の文字位置は２である。なお、文書番号はともにＮの場合とした。
【００３２】
次に図１０で文字列を指定した時の検索と、要素を指定した時の検索の処理の流れを説明する。
【００３３】
図１０（ａ）で文字列を「全文検」として説明する。図５において検索条件入力部５１０が図１０（ａ）の文字列「全文検」を読み取り、構造化文書検索部５１１が図７の文書構造要素階層表格納データを取得する。ここでは要素名、ＩＤが指定されていないことからに文字列検索部５１２が（全、文）と（文、検）に分解し、各々の文字種を含む索引情報から文字種が連続しているかどうかを調べる。図１０（ｂ）において２つの索引情報１００１、１００２から１００４の文字位置１と１００５の文字位置２を算出しかつ文書番号Ｎが一致していることから文書番号Ｎを取り出す。
【００３４】
次に要素を指定した時の検索として図１０（ｃ）の４番目の＜節＞で＜説明文＞に「全文検」が含まれる検索条件の場合の文書および要素の取得を考える。この時、図５の構造化要素検索部５１１が図５の要素照合部５１３に文書構造要素階層表データを送付し、要素照合部５１２は索引情報格納部５０９から文字種別の索引情報を取得する。すなわち図１０（ｄ）において（全、文）の索引情報１００７と（文、検）の索引情報１００８を取得する。照合の方法は、＜節＞の４番目であることから、親の要素ＩＤ＝６（１０１０）であり要素ＩＤの出現回数は４（１００９）、しかも＜説明文＞の要素ＩＤ＝４（１００８）であることから、文書番号はＮを取得し、さらに要素の組み合わせは１０１３として、（文、検）に対しても１０１３の組み合わせで照合を実施する。これに該当するのは１０１４であることから、要素照合部５１２は文字列照合部５１３に１０１３と１０１４を含む索引情報を送付する。文字列照合部５１４は、（全、文）の文字位置が１、（文、検）の文字位置が２であることから一致していると判断し、検索結果として１０１３、１０１４の索引情報を照合結果をして返し、結果として文書番号Ｎを取得することができる。
【００３５】
（実施の形態５）
図１１は、本発明の第５の文書処理装置のブロック構成図を示し、図１２で文書処理装置で追加される階層関係を記述した要素情報を、図１３では文書検索の例を示す。使用するデータは実施の形態４と同様である。索引情報の格納に関する処理の流れは実施の形態４と同様である。したがって図７，９、１０に関しては実施の形態４と同様である。また、図１１のブロック図では１１０１〜１１１３までは図５の５０１〜５１３までと同様となっており番号のみ付け替えて本実施の形態で説明する。
【００３６】
図１１において、文書構造要素順位作成部１１０７（図５では５０７）では、構造化文書の親子の関係を図１２で示すような親子表を作成し、要素順位格納部１１１４に格納する。これはタグ＜＞の関係のみを記述した表であり、要素ＩＤに対するそのＩＤに対する同一文書の順位と子の要素ＩＤと子の要素ＩＤに対する同一文書の順位を格納した表である。たとえば、１１０１において要素ＩＤ＝１＜資料＞に対しては、子の要素ＩＤは＜ヘッダ＞ＩＤ＝２、と＜章＞ＩＤ＝５が存在し、＜章＞に対しては出現回数が１と２が存在する。
【００３７】
同様に、１１０２において要素ＩＤ＝５＜章＞に対しては、出現回数１についての＜章＞の子の要素ＩＤは＜タイトル＞ＩＤ＝３、と＜節＞ＩＤ＝６が存在し、＜節＞に対しては出現回数が１と２が存在する。以下同様に、＜章＞に対しては、出現回数２についても表として作成される。
【００３８】
次に図１３で文字列と要素ＩＤの範囲を指定した時の文書番号と要素番号を取得する検索の処理の流れを説明する。
【００３９】
図１０（ａ）の＜節＞の出現回数が２番目以上で＜説明文＞に「全文検」が含まれる検索条件の場合の文書および要素の取得を考える。この時、図１１の構造化要素検索部１１１１が図７より（節のＩＤ番号、説明文の要素ＩＤ）が（６、４）を判定し（図１３（ｂ））、さらに図１１の要素照合部１１１２に文書構造要素階層表データを送付し、要素照合部１１１２は索引情報格納部１１０９から文字種別の索引情報を取得する。すなわち図１３（ｃ）において（全、文）の索引情報１３０１と（文、検）の索引情報１３０２を取得する。照合の方法は、＜節＞の要素ＩＤ＝６、＜説明文＞の要素ＩＤ＝４であることから、１３０４で＜説明文＞でありことを探索し、１３１０で要素ＩＤ＝６であることから１３０３全てが候補になることを絞り込む。続いて、＜節＞の出現回数が２以上であることから、親の出現回数１３０３で２と４が候補となる。同様に（文、検）の文字連鎖に対しても１３０６で＜説明文＞に対して１３０５で２、４が候補となり、さらに図１１の文字列検索部１１１３で文字の連続性（１３０１の文字位置が１、１３０２の文字位置が２）を判定し、該当文書番号Ｎを取得する。
【００４０】
一方、要素照合部１１１２は要素順位格納部１１１４から、子の要素ＩＤ＝６、子の要素ＩＤの出現回数が２と４の親の要素ＩＤを検索する。図１３（ｄ）において１３０７は要素順位格納部のデータであり、子の要素ＩＤ＝６（１３０８）に注目して、子の要素ＩＤの出現回数が２、４の子の要素ＩＤと子の要素ＩＤの出現回数の組み１３０９（６，２）、１３１０（６，４）を検出するため、さらに１３０９、１３１０を含む親の要素ＩＤと出現回数の組み合わせを探し、１３１１（５，１）、１３１２（５，２）を取得する。取得した結果を文字列検索部１１１２に送付し、すでに文字列検索を実施した結果とあわせて、文書番号、要素番号６、親の要素番号５、子の要素番号６が付与される。
【００４１】
（実施の形態６）
図１５は、本発明の第６の文書処理装置のブロック構成図を示し、図１５で文書処理装置で格納する索引情報の例を示す。
【００４２】
はじめに使用するデータとその構造を説明する。図１４は本発明の構造化文書の文書構造１４０１と検索対象としての構造化文書データの例１４０２である。６０１との相違は＜章＞の子として＜補足＞というタグが入ったことであり、１４０２のデータでは１４０２の行番号７の下Ａの行と、１４０２の行番号１５の下のＢの行が新たに挿入された場合の索引の管理方法について記述したものである。
【００４３】
文字位置情報に関して索引情報の格納に関する処理の流れは実施の形態４と同様である。したがって図７、９、１０に関しては実施の形態４と同様である。また、図１５のブロック図では１５０１〜１５１３までは図１１の１１０１〜１１１３までと同様となっており番号のみ付け替えて本実施の形態で説明する。
【００４４】
図１５において、文書構造変更入力部１７１０は、１４０１の構造を読み取り、要素番号変更部１７１１に通知する。要素番号変更部１７１１は要素ＩＤ表作成部１７０２と要素ＩＤ表格納部１７０３から作成された図７に対して、追加された要素名、要素ＩＤを検出し、要素階層関係変更部１７１２に検出結果（要素名、要素番号）を通知する。要素階層関係変更１７１２は、検出結果をもとに図１６１６０１に示すように要素名が追加された場合の親子関係を作成する。この際、追加された要素名に対しては、「入れ替え」の列を設け、その列の中に新しい要素ＩＤ＝７を追加し（１６０２を参照）、文書構造要素階層格納部１７０５に格納する。
【００４５】
続いて、文書構造要素順位作成部１７０７は、図１０（ｂ）の１５０３に示すような要素順位格納データを書き換える。要素ＩＤ＝７の親の要素である＜章＞要素ＩＤ＝５の出現回数1の子の要素ＩＤとして配置され（１６０４）、同時に要素ＩＤ＝７の子の要素ＩＤ＝６（要素名では＜節＞）の親の要素ＩＤとして配置される（１６０５）。
【００４６】
次に図１６の場合の文字列を指定した時の検索、および要素を指定した時の検索の処理の流れであるが、索引情報に関しては検索処理の変更点は発生しないため実施例４，５の場合と同様である。本発明により構造が挿入された場合の索引の変化を最小にとどめる工夫がされている。
【００４７】
【発明の効果】
以上のように本発明は、文書処理における構造化文書の登録および構造化文書検索において、構造化情報を格納するノード表から構造化条件に対応する要素を抽出し、該要素において出現する文字位置情報を格納する文字位置情報から検索文字列条件に該当する文字列を検出し、構造化文書検索の目的を達成することができる。また、要素の範囲および任意の位置関係においても構造の階層の制限を受けることなく対応できる。さらに、特定の要素の追加、削除などの登録処理に対しても柔軟に対応することができ、その効果は大きい。
【図面の簡単な説明】
【図１】本発明の第１の方法による構造化文書処理方法を示す概念図
【図２】本発明の第１の方法による文書処理装置のブロック構成図
【図３】本発明の第２の方法による構造化文書処理方法を示す概念図
【図４】本発明の第３の方法による構造化文書処理方法を示す概念図
【図５】本発明の第４の方法による文書処理装置のブロック構成図
【図６】本発明の第４、第５の方法による構造化文書データの例を示す図
【図７】本発明の文書構造要素階層表データの説明図
【図８】本発明の第４、５の方法による構造化文書の構造図
【図９】本発明の第４の方法による構造化文書処理方法を示す概念図
【図１０】本発明の第４の方法による文書検索の概念図
【図１１】本発明の第５の方法による文書処理装置のブロック構成図
【図１２】本発明の第５の方法による構造化文書処理方法を示す概念図
【図１３】本発明の第５の方法による文書検索の概念図
【図１４】本発明の第６の方法による構造化文書データの例を示す図
【図１５】本発明の第６方法による文書処理装置のブロック構成図
【図１６】本発明の第６の方法による構造化文書処理方法を示す概念図
【符号の説明】
１０３  要素ＩＤ格納部
１０５  ノード情報格納部
１０７  文字位置情報格納手段
１０９  構造化検索部
１１０  文字列検索部
５０３  要素ＩＤ表格納手段
５０４  文書構造要素階層表格納手段
５０７  文書構造要素順位作成手段
５０８  文字位置索引作成手段
５０９  索引情報格納手段
５１２  要素照合部
５１３  文字列検索部
１１０４  文書構造要素階層表作成部
１１０７  文書構造要素順位作成部
１１０９  索引情報格納部
１１１３  要素照合部
１５１１  構造化要素検索部
１５１２  要素照合部
１５１４  要素順位格納部
１５１７  要素階層関係変更部
【図１】
0003719089.tif 000002
【図２】
0003719089.tif 000003
【図３】
0003719089.tif 000004
【図４】
0003719089.tif 000005
【図５】
0003719089.tif 000006
【図６】
0003719089.tif 000007
【図７】
0003719089.tif 000008
【図８】
0003719089.tif 000009
【図９】
0003719089.tif 000010
【図１０】
0003719089.tif 000011
【図１１】
0003719089.tif 000012
【図１２】
0003719089.tif 000013
【図１３】
0003719089.tif 000014
【図１４】
0003719089.tif 000015
【図１５】
0003719089.tif 000016
【図１６】
0003719089.tif 000017