JP2000003366A - 文書登録方法と文書検索方法及びその実施装置並びにその処理プログラムを記録した媒体 - Google Patents

文書登録方法と文書検索方法及びその実施装置並びにその処理プログラムを記録した媒体

Info

Publication number
JP2000003366A
JP2000003366A JP10163901A JP16390198A JP2000003366A JP 2000003366 A JP2000003366 A JP 2000003366A JP 10163901 A JP10163901 A JP 10163901A JP 16390198 A JP16390198 A JP 16390198A JP 2000003366 A JP2000003366 A JP 2000003366A
Authority
JP
Japan
Prior art keywords
index
document
character string
data
identifier
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP10163901A
Other languages
English (en)
Inventor
Katsumi Tada
勝己 多田
Takuya Okamoto
卓哉 岡本
Natsuko Sugaya
菅谷  奈津子
Tadataka Matsubayashi
忠孝 松林
Yasushi Kawashita
靖司 川下
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP10163901A priority Critical patent/JP2000003366A/ja
Publication of JP2000003366A publication Critical patent/JP2000003366A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】 目的とする論理構造だけを対象に指定する構
造指定検索を高速に実現することが可能な技術を提供す
る。 【解決手段】 登録対象文書における論理構造定義情報
またはインデックスグループ定義情報により、検索時に
一括して参照される可能性の高い文字列データの組に所
定のインデックスグループ識別子を付与し、登録対象文
書中に出現した文字列データにインデックスグループ識
別子を付与し、メタ要素群及びメタ文字列群の木構造か
ら構成される構造インデックスを生成し、登録対象文書
中に出現した各論理構造に属する文字列データに対し
て、前記構造インデックスの文脈識別子とインデックス
グループ識別子を対応付け、当該文字列データの文書識
別子、文脈識別子及び構造化文字位置情報をインデック
スグループ識別子毎に蓄積、管理するものである。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は構造化文書の検索を
行う構造化文書検索システムに関し、特にSGML形式で記
述された文書等の様に、1件の文書が複数の論理構造で
構成される構造化文書に対し、目的とする論理構造だけ
を対象とした検索を高速に行う構造化文書検索システム
に適用して有効な技術に関するものである。
【0002】
【従来の技術】近年、情報化社会の急速な進展に伴い、
ワードプロセッサやパーソナルコンピュータ等を用いて
作成される電子化文書情報も爆発的な勢いで増加しつつ
ある。この様な状況下で、蓄積された膨大な電子化文書
群の中から、必要とする情報を含んだ文書を高速かつ高
精度に検索したいという要求が高まっている。
【0003】この様な要求に応える技術として全文検索
がある。全文検索では、登録時に登録対象文書中のテキ
スト全体を計算機システムに入力してデータベース化
し、検索時には該当データベース中からユーザの指定し
た文字列(以下、検索タームと呼ぶ)を含む全ての文書
を探し出すことにより、登録時にキーワード付けを行な
うことなく、目的とする文書を漏れなく検索することが
可能である。
【0004】また、例えばSGML(ISO 8879:Standard Gen
eralized Markup Language)で記述された文書等、文書
を構成する個々の論理的な構造要素を識別できる文書
(以下、構造化文書と呼ぶ)を対象として、目的とする
論理構造だけを対象に指定する検索(以下、構造指定検
索と呼ぶ)を行うことにより精度の高い検索を実現する
ことができる。構造指定検索を可能にする方法として
は、例えば特願平9−41855号に記載された発明
(以下、公知例1と呼ぶ)がある。
【0005】以下、公知例1の概要について説明する。
公知例1における文書検索方法では、構造化文書をデー
タベースに登録する際に、登録対象文書の持つ論理構造
の解析を行う。
【0006】そして、文書の登録順に従って各文書の持
つ論理構造を順次重ね合わせ、文書中における出現位置
及び種別が同じである論理構造の要素群及び文字列デー
タ群を、それぞれ単一の構造要素(以下、メタ要素と呼
ぶ)及び文字列データ(以下、メタ文字列と呼ぶ)とし
て代表させることにより、メタ要素群及びメタ文字列デ
ータ群(以下、これらを総称してメタノードと呼ぶ)に
よる木構造データを作成する。そして、これらのメタノ
ードを識別する為の一意の識別子(以下、文脈識別子と
呼ぶ)を付与することにより、文書データベース中の全
文書の論理構造を表わすインデックス(以下、構造イン
デックスと呼ぶ)を作成する。
【0007】次に、登録対象文書について該当文書中に
含まれる全ての文字列と、前記構造インデックスにおけ
るメタ文字列データの識別子との対応関係を記録したデ
ータ(以下、構造化全文データ)を生成する。更に、登
録対象文書に関する構造化全文データにおいて、各文字
列から所定の部分文字列を抽出し、それらを文書データ
ベース中で識別する為の文書識別子、メタ文字列データ
の文脈識別子及び登録対象文書中での文字位置と対応付
けたデータ(構造化文字位置情報)として登録すること
により検索用のインデックスを生成する。
【0008】そして、検索時には、始めに前記構造イン
デックスを参照し、検索対象に指定された構造に対応す
るメタ文字列データの文脈識別子を抽出する。
【0009】次に、検索タームから所定の部分文字列を
抽出し、各部分文字列について検索用のインデックスを
参照することにより、検索タームを構成する部分文字列
に関する構造化文字位置情報を抽出する。
【0010】最後に、各部分文字列の構造化文字位置情
報について、これらの隣接判定処理を行なう。すなわ
ち、検索タームを構成する各部分文字列の構造化文字位
置情報から検索対象に指定した論理構造に対応する文脈
識別子を持つものを抽出し、その中で指定された検索タ
ームと同じ部分文字列の並びを持つ文書の文書識別子を
抽出することにより構造指定検索を実現している。
【0011】以上が、公知例1における登録処理及び検
索処理の概要である。次に、本公知例における登録処理
について、図22に示す構造化文書が登録された場合を
例に説明する。
【0012】図22はSGML形式で記述された構造化文書
の例を示す図である。図23は図22に示した構造化文
書の構造定義であるDTD(Document Type Definition)を
示す図である。図24は公知例1における解析済み木構
造データの例を示す図である。図25は公知例1におけ
る構造インデックスの例を示す図である。文書登録時に
は、まず図23のSGML文書における文書の型定義文であ
るDTDを基に、論理構造の解析処理を行い図24の木構
造データに展開する。
【0013】そして、各登録対象文書についてこの木構
造の重ね合わせ処理を行うことにより構造インデックス
を生成する。本例では、構造インデックスは初期状態
(空)である為、図24の解析済み文書と等価な木構造
を生成し、これに対しメタ要素に対する文脈識別子とし
てE1〜E26を、またメタ文字列データに対する文脈識別
子としてC1〜C16を割り当てることにより図25の構造
インデックスを生成する。
【0014】図26は公知例1における構造化全文デー
タの例を示す図である。次に、登録対象文書中の文字列
について、図25の構造インデックスにおけるメタ文字
列データの文脈識別子を対応付けることにより、図26
の構造化全文データを生成する。
【0015】図27は公知例1における検索用インデッ
クスの例を示す図である。更に検索用インデックスの生
成処理として、構造化全文データ中の内容文字列から本
公知例では隣り合う2文字の部分文字列を抽出し、該当
する文書識別子、文脈識別子及び文書中での文字位置の
組を構造化文字位置情報として追記、登録することによ
り、例えば図26の構造化全文データにおける“SGML”
については図27のインデックスを生成する。
【0016】次に、検索時の処理例として“本文”にお
ける“章題”の論理構造中に検索ターム“SGML”を含む
文書を検索する際の処理について説明する。
【0017】検索時には、検索ターム“SGML”から隣り
合う2文字の文字列として“SG”及び“ML”を抽出す
る。そして、検索用インデックスから“SG”及び“ML”
に関するデータを抽出する。そしてその中で、文脈識別
子が検索対象の論理構造である“本文”における“章
題”のメタ文字列データに対応するC5またはC8であるも
のを取得する。
【0018】最後に、こうして得られた検索用インデッ
クスデータに対し、図28の様に文書識別子及び文脈識
別子が同一であり、かつ文字位置が2文字離れて隣接す
るものを判定することにより、“本文”における“章
題”の論理構造中に検索ターム“SGML”を含む文書を検
索することが可能になる。
【0019】
【発明が解決しようとする課題】この様に、前記従来の
技術では登録対象文書中に出現した各論理構造に対し、
それらを一意に識別する為の文脈識別子を登録時に割り
当て、登録対象文書中に現われた各文字列に対し、該当
文書の文書識別子と各文書内での出現文字位置に加え文
脈識別子を付加したインデックスを生成することによ
り、目的とする論理構造だけを対象に指定した検索を実
現している。
【0020】しかし、前記従来の技術における構造化文
書の検索方法では、図27の様に各文字列について全て
の構造におけるインデックスデータを一連のデータ領域
に格納している為、検索時には検索対象に指定した論理
構造以外の、照合に必要のないインデックスも参照する
ことになり、検索に不要な時間を要してしまうという問
題がある。
【0021】すなわち、検索用インデックスは一般にテ
キストの数倍程度の容量となり、大規模な構造化文書を
対象とした場合には磁気ディスク等の二次記憶上に格納
されることになるが、例えば図28の様に、照合処理に
必要となるインデックスは“本文”における“章題”の
構造(文脈識別子=C5またはC8)に関するデータのみで
あるにもかかわらず、全ての論理構造におけるインデッ
クスが混在した形で登録されている為、“SG”と“ML”
に関する全てのインデックスを二次記憶から読み出す処
理が必要が生じてしまう。
【0022】例えば、図22に示した構造化文書の平均
文字数が約2,000文字(A4約2頁分)であり、その内
“本文”における“章題”の構造に対応する文字数の総
和が約20文字(図22の例では17文字)であった場合に
は、検索対象に指定されている“本文”における“章
題”の構造の約100倍(=2,000文字÷20文字)に相当す
る論文全体のインデックスデータを参照することにな
る。この為、検索に不必要な時間を要してしまうことに
なる。
【0023】また、これを回避する方法として、各論理
構造毎にインデックスを分割して格納する方法が考えら
れる。しかし、この方法では“本文”における“章題”
の様に、繰り返しを持つ論理構造において、繰り返し数
が増加した場合にはインデックスデータを読み出す為の
二次記憶に対するリード回数が増加してしまう為、検索
に多くの時間を要してしまうことになる。
【0024】すなわち、図25の構造インデックスにお
いては“本文”における“章題”を検索対象とした場合
には、文脈識別子C5とC8に対するインデックスデータ
を、二次記憶上の別領域から読み出すことになる。この
様に、繰り返し回数の多い論理構造が検索対象に指定さ
れた場合には検索レスポンスが著しく低下してしまうと
いう問題がある。
【0025】本発明の目的は上記問題を解決し、目的と
する論理構造だけを対象に指定する構造指定検索を高速
に実現することが可能な技術を提供することにある。
【0026】
【課題を解決するための手段】本発明は、1件の文書が
複数の論理構造で構成される構造化文書を検索する構造
化文書検索システムにおいて、検索時に一括して参照さ
れる可能性の高い文字列データに所定のインデックスグ
ループ識別子を付与して文書登録し、インデックスグル
ープ識別子の等しいインデックスデータを用いて文書検
索を行うものである。
【0027】本発明の構造化文書検索システムで文書登
録を行う場合には、まず論理構造管理テーブル生成登録
ステップで、登録対象となる構造化文書データベースに
おいて、既に登録済みの文書が存在するか否かを判定
し、存在しない場合には該登録対象文書における論理構
造定義情報を解析し、該構造化文書データベースに関す
る論理構造の階層関係を管理すると共に、該論理構造定
義情報またはデータベース設計者が予め作成したインデ
ックスグループ定義情報を参照することにより、検索時
に一括して参照される可能性の高い文字列データの組を
判定し、それらに対して所定の識別子をインデックスグ
ループ識別子として付与した論理構造管理テーブルを作
成して登録する。
【0028】次にインデックスグループ識別子付加型解
析済みデータ生成ステップで、該論理構造管理テーブル
を参照しながら登録対象文書の持つ論理構造を解析し、
登録対象文書における論理構造を木構造データとして抽
出すると共に、該登録対象文書中に出現した文字列デー
タに対応してインデックスグループ識別子を付与した解
析済みデータを生成する。
【0029】構造インデックス生成ステップでは、該イ
ンデックスグループ識別子付加型解析済みデータを入力
として、各登録対象文書の持つ論理構造を登録対象文書
順に従って順次重ね合わせ、文書中における出現位置が
同じである要素群は単一のメタ要素によって代表させ、
文書中における出現位置が同じである文字列データは単
一にメタ文字列データによって代表させることにより、
メタ要素群及びメタ文字列群の木構造から構成される構
造インデックスを生成し、該構造インデックスを構成す
る全てのメタノードに対して、それらを構造インデック
ス内で一意に識別する識別子である文脈識別子を付与
し、これを管理する。
【0030】インデックスグループ識別子付加型構造化
全文データ生成ステップは、該インデックスグループ識
別子付加型解析済みデータと構造インデックスを入力と
して、該登録対象文書中に出現した各論理構造に属する
文字列データに対して、文脈識別子とインデックスグル
ープ識別子を対応付けて構成したインデックスグループ
識別子付加型の構造化全文データを生成する。
【0031】そして文字列インデックス生成ステップ
で、該インデックスグループ識別子付加型構造化全文デ
ータにおける文字列データから所定の部分文字列を抽出
し、前記登録対象文書を文書データベースにおいて一意
に識別する為の文書識別子と、前記部分文字列に対応す
る論理構造の文脈識別子と、該登録対象文書中での文字
位置情報を組とした構造化文字位置情報を生成し、これ
を各部分文字列に関する論理構造のインデックスグルー
プ識別子毎に蓄積、管理することにより、構造指定検索
用の文字列インデックスを生成する。
【0032】次に本発明の構造化文書検索システムで文
書検索を行う場合には、検索条件解析ステップで、検索
条件式を解析し、指定された構造指定検索条件を満たす
要素名と、検索タームからインデックスの照合処理に用
いる部分文字列を抽出し、更に前記構造インデックスを
参照することにより該当する要素名に関する文脈識別子
を抽出する。
【0033】次にインデックスグループ識別子抽出ステ
ップで、前記論理構造管理テーブルを参照し、指定され
た検索条件を満たす文脈識別子に対応するインデックス
グループ識別子を抽出する。
【0034】構造化文字位置データ抽出ステップでは、
検索タームから所定の部分文字列を抽出し、該部分文字
列に関し、前記インデックスグループ識別子抽出ステッ
プにおいて抽出されたインデックスグループ識別子に関
する構造化文字位置情報を前記文字列インデックスから
抽出する。
【0035】そしてインデックス検索ステップでは、前
記構造化文字位置情報の集合中から、前記検索条件解析
ステップで決定した集合中に含まれる文脈識別子を持
ち、かつ前記検索タームにおける部分文字列の並びと同
じ位置関係を持つ構造化文字位置情報を抽出する。
【0036】前記の様に本発明によると、検索用の文字
列インデックスは構造指定検索時に参照される単位に分
割して二次記憶上に格納される為、検索時に検索対象に
指定されている論理構造以外の検索に不要なインデック
スデータを読み出し対象から除外し、ひいては高速な構
造指定検索機能を実現することが可能になる。
【0037】以上の様に本発明の構造化文書検索システ
ムによれば、検索用の文字列インデックスを構造指定検
索時に参照される単位に分割して二次記憶上に格納する
ので、目的とする論理構造だけを対象に指定する構造指
定検索を高速に実現することが可能である。
【0038】
【発明の実施の形態】(実施形態1)以下に1件の文書
が複数の論理構造で構成される構造化文書に対し、目的
とする論理構造だけを対象とした検索を高速に行う実施
形態1の構造化文書検索システムについて説明する。
【0039】本実施形態は、構造化文書において、繰り
返し構造を持つメタ要素化の同一要素型に属する文字列
データ群(例えば図22の構造化においては、“論文”
における“執筆者”の構造に属する“東京一郎”や“神
奈川二郎”等)については、検索時に一括参照される可
能性が高いものとして、それら全体に対し1個のインデ
ックスグループ識別子を割り当て、インデックスを分割
管理するものである。
【0040】図1は本実施形態の構造化文書検索システ
ムの概略構成を示す図である。図1の様に本実施形態の
構造化文書検索システムは、論理構造管理テーブル生成
プログラム130と、インデックスグループ識別子付加
型解析済みデータ生成プログラム140と、構造インデ
ックス生成プログラム150と、インデックスグループ
識別子付加型構造化全文データ生成プログラム160
と、文字列インデックス生成プログラム170と、検索
条件解析プログラム180と、インデックスグループ識
別子抽出プログラム190と、構造化文字位置データ抽
出プログラム200と、インデックス検索プログラム2
10とを有している。
【0041】論理構造管理テーブル生成プログラム13
0は登録対象文書における論理構造定義情報により、検
索時に一括して参照される可能性の高い文字列データの
組に所定のインデックスグループ識別子を付与した論理
構造管理テーブルを作成する処理部である。
【0042】インデックスグループ識別子付加型解析済
みデータ生成プログラム140は該論理構造管理テーブ
ルを参照しながら登録対象文書の持つ論理構造を解析
し、該登録対象文書中に出現した文字列データにインデ
ックスグループ識別子を付与した解析済みデータを生成
する処理部である。
【0043】構造インデックス生成プログラム150は
該インデックスグループ識別子付加型解析済みデータを
入力として、メタ要素群及びメタ文字列群の木構造から
構成される構造インデックスを生成し、該構造インデッ
クスを構成するメタノードを構造インデックス内で一意
に識別する識別子である文脈識別子を付与する処理部で
ある。
【0044】インデックスグループ識別子付加型構造化
全文データ生成プログラム160は該インデックスグル
ープ識別子付加型解析済みデータと構造インデックスを
入力として、該登録対象文書中に出現した各論理構造に
属する文字列データに対して、文脈識別子とインデック
スグループ識別子を対応付けて構成したインデックスグ
ループ識別子付加型の構造化全文データを生成する処理
部である。
【0045】文字列インデックス生成プログラム170
は該インデックスグループ識別子付加型構造化全文デー
タにおける文字列データから所定の部分文字列を抽出
し、前記登録対象文書を文書データベースにおいて一意
に識別する為の文書識別子と、前記部分文字列に対応す
る論理構造の文脈識別子と、該登録対象文書中での文字
位置情報を組とした構造化文字位置情報を生成し、これ
を各部分文字列に関する論理構造のインデックスグルー
プ識別子毎に蓄積、管理することにより、構造指定検索
用の文字列インデックスを生成する処理部である。
【0046】検索条件解析プログラム180は検索条件
式を解析し、指定された構造指定検索条件を満たす要素
名と、検索タームからインデックスの照合処理に用いる
部分文字列を抽出し、更に前記構造インデックスを参照
することにより該当する要素名に関する文脈識別子を抽
出する処理部である。
【0047】インデックスグループ識別子抽出プログラ
ム190は前記論理構造管理テーブルを参照し、指定さ
れた検索条件を満たす文脈識別子に対応するインデック
スグループ識別子を抽出する処理部である。構造化文字
位置データ抽出プログラム200は検索ターム中の所定
の部分文字列について、インデックスグループ識別子抽
出プログラム190において抽出されたインデックスグ
ループ識別子に関する構造化文字位置情報を文字列イン
デックスから抽出する処理部である。
【0048】インデックス検索プログラム210は前記
構造化文字位置情報中から、検索条件解析プログラム1
80で抽出した文脈識別子を持ち、かつ前記検索ターム
における部分文字列の並びと同じ位置関係を持つ構造化
文字位置情報を抽出するインデックス検索処理部であ
る。
【0049】コンピュータを構造化文書検索システムと
して機能させる為の論理構造管理テーブル生成プログラ
ム130、インデックスグループ識別子付加型解析済み
データ生成プログラム140、構造インデックス生成プ
ログラム150、インデックスグループ識別子付加型構
造化全文データ生成プログラム160、文字列インデッ
クス生成プログラム170、検索条件解析プログラム1
80、インデックスグループ識別子抽出プログラム19
0、構造化文字位置データ抽出プログラム200及びイ
ンデックス検索プログラム210は、CD−ROM等の
記録媒体に記録され磁気ディスク等に格納された後、メ
モリにロードされて実行されるものとする。なお前記プ
ログラムを記録する媒体はCD−ROM以外の他の媒体
でも良い。
【0050】本図の構造化文書検索システムは、検索結
果を表示するディスプレイ10、登録及び検索のコマン
ドを入力するキーボード20、登録処理及び検索処理を
実行する中央演算処理装置CPU30、フロッピディス
ク50からデータを読み出すフロッピディスクドライブ
40、データベースへ登録する構造化文書データを格納
したフロッピディスク50、登録及び検索用のプログラ
ム並びにデータ等を一時的に格納する主メモリ60、各
種データ及びプログラムを格納する磁気ディスク装置7
0及びこれらを接続するバス80で構成される。
【0051】主メモリ60にはシステム制御プログラム
100、登録制御プログラム110、検索制御プログラ
ム120、論理構造管理テーブル生成プログラム13
0、インデックスグループ識別子付加型解析済みデータ
生成プログラム140、構造インデックス生成プログラ
ム150、インデックスグループ識別子付加型構造化全
文データ生成プログラム160、文字列インデックス生
成プログラム170、検索条件解析プログラム180、
インデックスグループ識別子抽出プログラム190、構
造化文字位置データ抽出プログラム200及びインデッ
クス検索プログラム210が磁気ディスク装置70から
読み出されると共に、ワークエリア220が確保され
る。
【0052】また、磁気ディスク装置70には論理構造
管理テーブル格納領域300、インデックスグループ識
別子付加型解析済みデータ格納領域310、構造インデ
ックス格納領域320、インデックスグループ識別子付
加型構造化全文データ格納領域330及び文字インデッ
クス格納領域340が確保されている。なお、本実施形
態ではこれらの格納領域を磁気ディスク装置70上に確
保したが、光磁気ディスク装置等他の二次記憶装置であ
っても構わない。
【0053】以上が本実施形態の構成である。次に本実
施形態の文書登録時の処理の概要について説明する。始
めに、キーボード20から入力される登録コマンドによ
りシステム制御プログラム100は登録制御プログラム
110を起動し、文書の登録処理を開始する。文書登録
処理の流れを図2に示すPAD(Problem Analysis Diagra
m)を用いて説明する。
【0054】図2は本実施形態の文書登録処理の処理内
容を示すPAD図である。登録制御プログラム110は、
まずステップ1000を実行し、フロッピディスク50
に格納されている全ての登録対象文書について、ステッ
プ1010からステップ1090までに示す一連の処理
を繰り返し実行する。
【0055】まず、ステップ1010でフロッピディス
クドライブ40を通じてフロッピディスク50に格納さ
れている登録対象文書群から未処理の文書を1個選択
し、主メモリ60上のワークエリア220に読み出し、
ステップ1020で登録対象文書に対し、文書データベ
ース中で該当文書を一意に識別する為の番号である文書
識別子を割り当てる。更に、ステップ1030において
登録対象SGML文書の先頭行から該当するDTDのファイル
名を抽出し、該当ファイルから主メモリ60上のワーク
エリア220にDTDを読み込む。
【0056】次に、ステップ1040で該当構造化文書
データベースに既に登録済みの文書が存在するか否かを
判定し、登録済みの文書が存在しない場合にはステップ
1050において論理構造管理テーブル生成プログラム
130を実行する。すなわち、論理構造管理テーブル生
成プログラム130では、DTDに記述されている論理構
造を解析し、DTDに内部矛盾等のエラーがないか検証し
た後、各論理構造の階層関係を管理する為の木構造デー
タと、その中のメタ文字列データに対して、それらを一
意に識別する為のインデックスグループ識別子を付与し
た論理構造管理テーブルを生成する。
【0057】更に、登録制御プログラム110はステッ
プ1060でインデックスグループ識別子付加型解析済
みデータ生成プログラム140を実行し、ワークエリア
220内に読み込まれたの登録対象文書に対し、論理構
造管理テーブルを参照しながら論理構造の解析処理を行
い、該当文書中に論理構造の誤りが存在しないか否かを
判定する。また、登録対象文書内に出現した論理構造を
木構造データとして展開すると共に、文字列データに対
しては該当するインデックスグループ識別子を付与した
インデックスグループ識別子付加型解析済みデータを生
成する。
【0058】更に、ステップ1070で構造インデック
ス生成プログラム150を実行し、インデックスグルー
プ識別子付加型解析済みデータ中に出現したメタ要素を
重ね合わせることにより、登録対象文書中に出現したメ
タ要素を一意に識別する為の構造インデックスを生成す
る。
【0059】また、ステップ1080においてインデッ
クスグループ識別子付加型構造化全文データ生成プログ
ラム160を起動し、登録対象文書の文書識別子と、該
当文書中に出現した各論理構造に対する文脈識別子、該
当文脈識別子に対するインデックスグループ識別子及び
該当構造中に含まれる文字列データを対応付けたインデ
ックスグループ識別子付加型構造化全文データを生成す
る。
【0060】最後に、ステップ1090において文字列
インデックス生成プログラム170を実行し、インデッ
クスグループ識別子付加型構造化全文データ中の文字列
データから所定の部分文字列を抽出し、該当文書の文書
識別子、文脈識別子、文書内での文字位置を汲みにした
構造化文字位置情報を作成し、これをインデックスグル
ープ識別子毎に分割管理することにより検索用の文字列
インデックスを生成する。
【0061】以上が本実施形態における登録処理の概要
である。次に図2に示した登録処理フローに関するPAD
における、各ステップの処理内容について、更に詳細に
説明する。はじめに、ステップ1050における論理構
造管理テーブル生成プログラム130の処理内容につい
て説明するが、その前に本実施形態が対象としているSG
ML文書及びDTD(Document Type Definition)の内容につ
いて説明する。
【0062】SGMLでは、特定の種別に属する論理構造を
DTDにより定義している。図23がDTDの一例である。DT
Dは文書を構成する論理要素(以下、単に要素と呼ぶ)
の集合を定義することによって、文書の論理的構造を定
義する。図23において文字列“<!ELEMENT”と“>”に
囲まれた部分を要素型宣言と呼び、1個の要素型宣言
が、1種類の要素型宣言に属する要素群が共通して持つ
名前(これを要素型名前と呼ぶ)とその構造を規定して
いる。要素型宣言中の左側に示されている文字列が要素
型名、右側に示されている部分がその内容が取る構造の
定義である。
【0063】図23のDTDにおいて、要素型“論文”に
関する要素型宣言は、この要素型に属する要素の内容が
“タイトル”、“執筆者”、“日付”、“本文”及び
“文献リスト”という要素型に属する要素1個ずつを、
この順序に従って並べた構造を持つことを規定してい
る。すなわち、複数の要素型名を文字“,”で区切って
並べることにより、それらの要素型名に属する要素が指
定した順番で出現しなければならないことを表現してい
る。
【0064】要素型“執筆者”に関する要素型宣言は、
この要素型に属する要素の内容が、要素型“名前”に属
する要素の1個以上の繰り返しからなる構造を持つこと
を規定している。すなわち、要素型名の後ろに文字
“+”を付加することにより、その型名に属する要素が
1個以上出現することを表現している。
【0065】要素型“本文”に関する要素型宣言は、こ
の要素型に属する要素の内容が“章”に属する要素が0
個以上の繰り返しからなる構造を持つことを規定してい
る。すなわち、要素型名の後ろに文字“*”を付加する
ことにより、その型名に属する要素が0個以上出現する
ことを表現している。
【0066】要素型“章”に関する要素型宣言は、この
要素型に属する要素の内容が、要素型“章題”に属する
要素1個の後ろに、要素型“段落”または“節”に属す
る要素を0個以上繰り返した構造を持つことを規定して
いる。すなわち、複数要素型名を文字“|”で区切って
並べることにより、それらのいずれかの要素型に属する
要素が出現することを表現している。
【0067】また、要素型“節”に関する要素型宣言
は、この要素型に属する要素の内容が、要素型“節題”
に属する要素1個の後ろに、要素型“段落”に属する要
素を0個以上繰り返した構造を持つことを規定してい
る。
【0068】要素型“文献リスト”に関する要素型宣言
は、この要素型に属する要素の内容が、要素型“文献”
に属する要素の1個以上の繰り返しからなる構造を持つ
ことを規定している。要素型“文献”に関する要素型宣
言は、この要素型に属する要素の内容が、要素型“タイ
トル”に属する要素1個の後ろに、要素型“執筆者”に
属する要素を1個以上繰り返した後、要素型“出典”に
属する要素が出現する構造を持つことを規定している。
【0069】また、“タイトル”、“名前”、“日
付”、“章題”、“節題”、“段落”及び“出典名”に
属する要素の内容は、単に“#PCDATA”と規定されてい
る。これは、これらの要素がそれ以上の下位構造を持た
ず、単なる文字の列からなる内容を持つことを規定して
いる。
【0070】図23のDTDに従って記述されたSGML文書
の一例が図22に示されている。文書先頭の文字列“<!
DOCTYPE”と文字列“>”で囲まれた部分を文書型宣言と
呼び、そのSGML文書が従うDTDと、最上位要素の要素型
名を宣言する。図22に示した例では、この文書がファ
イル“ronbun.dtd”に格納されているDTDに従い、最上
位要素の要素型名が“論文”であることが規定されてい
る。ここでは、ファイル“ronbun.dtd”に図23に示し
た前記DTDが格納されているものとする。
【0071】図22の通り、SGMLでは文書を構成する個
々の要素について、その先頭位置と末尾位置を示すマー
クを付加することにより、文書構造を明示的に記述す
る。各要素の先頭位置を示すマークを“開始タグ”、末
尾位置を示すマークを“終了タグ”と呼ぶ。開始タグは
文字列“<”と“>”の間に、その要素の要素型名を記述
することによって示す。終了タグは文字列“</”と
“>”の間に、その要素の要素型名を記述することによ
って示す。また、SGML文書において、これらのタグを用
いて文書構造を記述している部分を「文書インスタン
ス」と呼ぶ。
【0072】以上でSGML文書並びにDTDに関する説明を
終了し、引き続き論理構造管理テーブル生成プログラム
130(図2におけるステップ1050)の処理内容に
ついて、図3に示すPADを用いて説明する。
【0073】図3は本実施形態の論理構造管理テーブル
生成プログラム130の処理内容を示すPAD図である。
本実施形態における論理構造管理テーブル生成プログラ
ム130では、はじめにステップ1100を実行し、主
メモリ60上のワークエリア220に読み込んだDTDに
示される文書の論理構造を上位から順々に展開してい
き、要素の内容が文字列“#PCDATA”で表される最下位
構造に至るまで主メモリ上のワークエリア220に木構
造データとして展開する。
【0074】また、ステップ1110においてDTDの構
文内部矛盾や未定義要素が存在する等のエラーがあった
か否かを判定し、エラーがあった場合にはステップ11
20でエラーメッセージを出力して処理を中断する。
【0075】そして、ステップ1130において該当木
構造データ中の最下位の要素である文字列データに対し
てそれらを一意に識別する為の識別子を割り当て、これ
をインデックスグループ識別子として格納することによ
り論理構造管理テーブルを生成する。最後に、ステップ
1140でこれを磁気ディスク装置70上の論理構造管
理テーブル格納領域300に格納し、処理を終了する。
【0076】次に、図2におけるステップ1060の処
理、すなわちインデックスグループ識別子付加型解析済
みデータ生成プログラム140の処理内容について図4
に示すPADを用いて説明する。
【0077】図4は本実施形態のインデックスグループ
識別子付加型解析済みデータ生成プログラム140の処
理内容を示すPAD図である。本実施形態におけるインデ
ックスグループ識別子付加型解析済みデータ生成プログ
ラム140では、はじめにステップ1200を実行し、
論理構造管理テーブルを参照しながら登録対象文書イン
スタンスに対して論理構造の解析処理を行い、登録対象
文書中に出現した論理構造を木構造データとして展開す
る。
【0078】また、ステップ1210において、該当文
書中に、定義されていないタグが存在する等のエラーが
あったか否かを判定し、エラーがあった場合にはステッ
プ1220でエラーメッセージを出力して処理を中断す
る。
【0079】更に、ステップ1230において、ステッ
プ1200で生成した木構造データから文字列データに
関するノードを抽出し、該当ノードにインデックスグル
ープ識別子を付加することによりインデックスグループ
識別子付加型解析済みデータを生成する。
【0080】最後にステップ1240では、前記生成し
たインデックスグループ識別子付加型の解析済みデータ
を磁気ディスク装置70上のインデックスグループ識別
子付加型解析済みデータ格納領域310に格納し、処理
を終了する。
【0081】また、図2におけるステップ1070の処
理、すなわち構造インデックス生成プログラム150の
処理内容について図5に示すPADを用いて説明する。
【0082】図5は本実施形態の構造インデックス生成
プログラム150の処理内容を示すPAD図である。構造
インデックス生成プログラム150では、ステップ13
00において該当構造化文書データベースにおいて既に
生成された構造インデックスが磁気ディスク装置70上
の構造インデックス格納領域320に既に存在するか否
かを判定する。
【0083】そして、該当領域に構造インデックスが存
在しない場合には、ステップ1310において初期状態
(空)の構造インデックスを生成する。また、存在する
場合には、ステップ1320において既存の構造インデ
ックスを主メモリ60上のワークエリア220に読み込
む。
【0084】次に、ステップ1330において、インデ
ックスグループ識別子付加型解析済みデータ格納領域3
10から登録対象文書に関するインデックスグループ識
別子付加型の解析済みデータを読み込み、ステップ13
40において、インデックスグループ識別子付加型の解
析済みデータの木構造を構成する全てのノード(要素及
び文字列データ)を対象としてステップ1350からス
テップ1380に示す一連の処理を実行することによ
り、構造インデックスの重ね合わせ処理を行う。
【0085】すなわち、ステップ1350ではインデッ
クスグループ識別子付加型の解析済みデータにおいて、
現在着目しているノードについて構造インデックス中に
対応するメタノード(メタ要素またはメタ文字列デー
タ)が存在するか否かを判定し、存在しない場合にはス
テップ1360において該ノードに対応するメタノード
を生成し、ワークエリア220上の構造インデックスに
登録した後、ステップ1370において該メタノードを
構造インデックス内で一意に識別する番号である文脈識
別子を新たに割り当てる。
【0086】そしてステップ1380では、インデック
スグループ識別子付加型解析済みデータで着目している
ノードと、構造インデックス中で該ノードに対応するメ
タノードを識別する文脈識別子との対応関係を解析済み
データに付加してインデックスグループ識別子付加型解
析済みデータを更新する。
【0087】更に、ステップ1390においてワークエ
リア220上のインデックスグループ識別子付加型解析
済みデータをインデックスグループ識別子付加型解析済
みデータ格納領域310に格納する。また、最後にステ
ップ1400において、主メモリ60のワークエリア2
20上の構造インデックスを構造インデックス格納領域
320に出力して処理を終了する。
【0088】更に、図2におけるステップ1080の処
理、すなわちインデックスグループ識別子付加型構造化
全文データ生成プログラム160の処理内容について図
6に示すPADを用いて説明する。
【0089】図6は本実施形態のインデックスグループ
識別子付加型構造化全文データ生成プログラム160の
処理内容を示すPAD図である。インデックスグループ識
別子付加型構造化全文データ生成プログラム160で
は、はじめにステップ1500においてインデックスグ
ループ識別子付加型解析済みデータ格納領域310から
登録対象文書に関するインデックスグループ識別子付加
型の解析済みデータをワークエリア220に読み込む。
【0090】そして、ステップ1510において、該当
文書を識別する為の文書識別子をインデックスグループ
識別子付加型構造化全文データ格納領域330に出力す
る。
【0091】更に、ステップ1520においてインデッ
クスグループ識別子付加型解析済みデータの木構造を構
成する全てのノードについてステップ1530からステ
ップ1560に至る一連の処理を繰り返す。
【0092】すなわち、ステップ1530では現在着目
しているインデックスグループ識別子付加型解析済みデ
ータ上のノードが文字列データに関するノードであるか
否かを判定し、文字列データに関するノードである場合
にはステップ1540において該当ノードに対する文脈
識別子を、ステップ1550においてインデックスグル
ープ識別子を、ステップ1560においては内容文字列
を、インデックスグループ識別子付加型構造化全文デー
タ格納領域330に出力する。
【0093】そして、ステップ1520においてインデ
ックスグループ識別子付加型解析済みデータの木構造を
構成する全てのノードについて処理が終了した場合に本
プログラムは終了する。
【0094】最後に、図2におけるステップ1090の
処理、すなわち文字列インデックス生成プログラム17
0の処理内容について図7に示すPADを用いて説明す
る。
【0095】図7は本実施形態の文字列インデックス生
成プログラム170の処理内容を示すPAD図である。文
字列インデックス生成プログラム170では、ステップ
1600において磁気ディスク装置70上の文字インデ
ックス格納領域340に既作成の文字列インデックスデ
ータが存在するか否かを判定し、該当領域に文字列イン
デックスが存在しない場合には、ステップ1610にお
いて初期状態(空)の文字列インデックスを生成する。
【0096】そして、ステップ1620において、イン
デックスグループ識別子付加型構造化全文データ格納領
域330から登録対象文書に関するインデックスグルー
プ識別子付加型の構造化全文データを読み込み、ワーク
エリア220に読み込む。そして、ステップ1630に
おいて該当文書の識別子を抽出する。
【0097】更に、文字列インデックス生成プログラム
170はステップ1640を実行し、インデックスグル
ープ識別子付加型構造化全文データに格納されている全
ての構造要素について現在着目している構造要素につい
て該当する文脈識別子、インデックスグループ識別子並
びに文字列データの抽出(ステップ1650)及び文字
列データに対するインデックスの生成処理(ステップ1
660)を実行する。
【0098】ここで、ステップ1660における文字列
データに対するインデックス生成処理としては、文字列
データの先頭から末尾に至る全ての文字列に対し、ステ
ップ1670からステップ1730に至る一連の処理を
繰り返す。
【0099】すなわち、ステップ1670では文字列デ
ータからインデックス作成対象となる部分文字列(本例
では、連続する2文字の部分文字列)を抽出する。そし
て、ステップ1680では当該2文字について文字列イ
ンデックスを参照し、当該2文字が既に文字列インデッ
クスに登録されているか否かを判定し、まだ登録されて
いない時にはステップ1690において、文字列インデ
ックスに対し当該2文字の連接情報を格納したノード
と、該当ノードに関するインデックスを参照する為のポ
インタ情報をインデックスグループ単位に管理する為の
インデックスポインタテーブルの初期化、生成処理を行
う。
【0100】更に、ステップ1700において、現在着
目している論理構造に関するインデックスグループ識別
子がインデックスポインタテーブルに格納されているか
を判定し、格納されていない場合にはステップ1710
においてインデックスポインタテーブルに対し、該当イ
ンデックスグループ識別子に関するエントリを付加す
る。
【0101】そしてステップ1720において、現在着
目している論理構造に関するインデックスグループ識別
子に対応するインデックスデータ格納領域の末尾に該当
する文書識別子、文脈識別子並びに文字位置情報をイン
デックスデータとして追加登録する。また、ステップ1
730ではデータ追加登録に伴い該当インデックスグル
ープ識別子に対するインデックスポインタテーブルの末
尾文字位置情報を更新する。
【0102】以上が、本実施形態の文書登録時処理の説
明である。次に本実施形態において図23のDTDに従う
文書構造を持つ図22の文書が登録された時の処理につ
いて例を挙げて説明する。
【0103】始めに、登録制御プログラム110は図2
におけるステップ1010を実行することにより、図2
2の登録対象文書をワークエリア220に読み込む。更
に、ステップ1020を実行することにより、文書デー
タベースにおいて本文書を一意に識別する為の文書識別
子としてD1を割り当てる。そして、ステップ1030に
おいて図22の文書の一行目の文字列である“<!DOCTYP
E 論文 SYSTEM "ronbun.dtd">”から“ronbun.dtd”と
いう名称のファイルが該当文書のDTDであることを識別
し、これをワークエリア220に読み込読み込んでく
る。
【0104】図8は本実施形態の論理構造管理テーブル
の構成例を示す図である。次に、ステップ1040にお
いて本構造化文書データベースに登録済みの文書がある
か否かを判定するが、ここでは図22の文書が最初の登
録対象文書であり、登録済みの文書が存在しない為、ス
テップ1050を実行する。
【0105】すなわち、図3におけるステップ1100
において、図23のDTDを図8の様に上位から順々に展
開していき、これを最下位構造である文字列データ(図
23のDTDにおいては“#PCDATA”と定義されている)ま
で繰り返すことにより要素間の階層関係を記述した木構
造データを生成する。
【0106】なお、本図における“SEQ”,“REP(+)”,
“REP(*)”及び“OR”は要素間の関係を表しており、
“SEQ”は該当階層における各要素がこの順序で出現す
ることを、“REP(+)”は該当構造が1回以上繰り返して
出現することを、“REP(*)”は該当構造が0回以上繰り
返して出現することを、また“OR”は該当階層の構造の
内のいづれかが出現することを表している。
【0107】また、図23のDTDにおいては内部矛盾や
未定義要素が存在しない為、ステップ1110における
判定処理の結果は“エラーなし”となり、ステップ11
20を実行することなくステップ1130を実行するこ
とになる。
【0108】そして、ステップ1130では、図8に示
した木構造データにおける文字列データ(図8において
“#PCDATA”で記述)に対してインデックスグループ識
別子G1〜G10を割り当てることにより論理構造管理テー
ブルを生成する。これを、ステップ1140において論
理構造管理テーブル格納領域300に格納することによ
り、図2におけるステップ1050の処理を終了する。
【0109】図9は本実施形態のインデックスグループ
識別子付加型解析済み構造木の例を示す図である。次
に、登録制御プログラム110は図2におけるステップ
1060を実行する。すなわち、図4におけるステップ
1200を実行し、図8の論理構造管理テーブルを論理
構造管理テーブル格納領域300から読み出し、これを
参照しながら図22の文書インスタンスの解析処理を行
うことにより図9の木構造データを生成する。なお、本
図において楕円形は要素を、矩形は文字列データを表し
ている。
【0110】また、本SGML文書インスタンスにおいて
は、定義されていないタグが存在する等のエラーが存在
しない為、ステップ1210における判定結果は“エラ
ーなし”となり、ステップ1220を実行することなく
ステップ1230を実行する。すなわち、図8の各文字
列データとの対応関係から、図9の木構造の最下位に位
置する文字列データに対し、インデックスグループ識別
子を付与することにより、インデックスグループ識別子
付加型の解析済みデータを生成する。これをステップ1
240においてインデックスグループ識別子付加型解析
済みデータ格納領域に格納することにより、図2におけ
るステップ1060の処理を終了する。
【0111】更に、登録制御プログラム110は図2に
おけるステップ1070を実行する。すなわち、図5に
おけるステップ1300を実行し、該当データベースに
ついて既に作成済みの構造インデックスが存在するか否
かを判定する。
【0112】本例の場合、本登録対象文書の前に登録さ
れた文書が存在しない為、ステップ1300における判
定結果は“なし”であり、ステップ1310において初
期(空)の構造インデックスを生成する。
【0113】引き続き、ステップ1330において登録
対象文書のインデックスグループ識別子付加型解析済み
データ、すなわち図9のデータをインデックスグループ
識別子付加型解析済みデータ格納領域310からワーク
エリア220に読み出してくる。
【0114】そして、ステップ1340において、登録
対象文書に関するインデックスグループ識別子付加型解
析済みデータの全てのノードに対しステップ1350か
らステップ1380に至る一連の処理を繰り返すが、構
造インデックスは空の状態である為、登録対象文書にお
けるインデックスグループ識別子付加型解析済みデータ
の全てのノードが構造インデックスにコピーされること
になる。
【0115】また、その全てのノードに対し各ノードを
一意に識別する為の文脈識別子を割り当てることにより
図10における構造インデックスが生成されることにな
る。
【0116】図10は本実施形態の構造インデックスの
例を示す図である。なお、本例では最初の文書が登録さ
れる場合の処理について説明した為、全てのノードが新
たに生成されることになったが、2番号目の文書以降に
ついては新規に出現した要素に対してのみ新たなノード
及び文脈識別子が割り当てられることになる。
【0117】更に、ステップ1380においてノードと
文脈識別子との対応をインデックスグループ識別子付加
型の解析済みデータに追加し、ステップ1390におい
て該当のインデックスグループ識別子付加型解析済みデ
ータをインデックスグループ識別子付加型解析済みデー
タ格納領域310に出力した後、構造インデックスを構
造インデックス格納領域320に出力して、図2におけ
るステップ1070の処理、すなわち構造インデックス
の更新処理を終了する。
【0118】図11は本実施形態のインデックスグルー
プ識別子付加型の構造化全文データの例を示す図であ
る。登録制御プログラム110は、図2におけるステッ
プ1080を実行することによりインデックスグループ
識別子付加型の構造化全文データを生成する。すなわ
ち、図6におけるステップ1500を実行し、登録対象
文書に関するインデックスグループ識別子付加型解析済
みデータをインデックスグループ識別子付加型解析済み
データ格納領域310から読み出し、ステップ1510
において、登録対象文書における文書識別子であるD1
を出力する。
【0119】そして、ステップ1520からステップ1
560に至る一連の処理を繰り返し、インデックスグル
ープ識別子付加型解析済みデータに格納された全ての文
字列データに対し、文脈識別子並びにインデックスグル
ープ識別子との対応を記録することにより、図11のイ
ンデックスグループ識別子付加型の構造化全文データを
生成し、図2におけるステップ1080の処理を終了す
る。
【0120】最後に、登録制御プログラム110は図2
におけるステップ1090を実行することにより検索用
の文字列インデックスを生成する。すなわち、まずはじ
めに図7におけるステップ1600を実行し、既に作成
された文字列インデックスが存在するか否かを判定す
る。本例においては本登録対象文書が最初の文書であ
り、未だ文字列インデックスが生成されていない為、判
定結果は“なし”となり、ステップ1610において初
期状態(空)の文字列インデックスを生成する。
【0121】そして、ステップ1620で図11のイン
デックスグループ識別子付加型の構造化全文データをイ
ンデックスグループ識別子付加型構造化全文データ格納
領域330からワークエリア220に読み出し、ステッ
プ1650において文書識別子としてD1を抽出する。
【0122】そして、インデックスグループ識別子付加
型の構造化全文データの全ての構造の全ての文字列デー
タから所定の部分文字列、すなわち本例においては隣り
合う2文字の文字列を抽出しステップ1660からステ
ップ1730までの処理を実行することによって検索用
の文字列インデックスを生成する。
【0123】本例に示す文字列インデックスは、部分文
字列の接続情報を管理する文字列接続情報管理部、各部
分文字列の出現情報を追加格納していく文字列インデッ
クスデータ並びに各部分文字列に対する各インデックス
グループ識別子毎に、対応するインデックスデータの存
在領域を格納するインデックスポインタテーブルにより
構成され、図12に示す構成を取るものとする。以下、
本処理の内容を図12を用いて説明する。
【0124】図12は本実施形態の文字列インデックス
更新処理の第1の例を示す図である。まず、インデック
スグループ識別子付加型構造化全文データの先頭の要素
に対応する文字列“SGML文書変換機能の概要と適用事
例”に着目する。そして、先頭から連続する2文字を順
に抽出していく。初め、“SG”が文字列接続情報管理部
に存在しない為、この2文字の連なりを文字列接続情報
管理部に登録する。そして“SG”に対して、初期状態の
インデックスポインタテーブルを割り当てる。
【0125】次に、ステップ1700において、該当す
るインデックスグループ識別子がインデックスポインタ
テーブルに格納されているか否かを判定するが、当然未
登録である為、インデックスポインタテーブルにインデ
ックスグループ識別子G1を登録する。そして、ステップ
1720で“SG”に関するインデックス情報、すなわち
文書識別子D1と文脈識別子C1と文字位置情報“1”を組
みとして文字列インデックスデータに追加登録する。
【0126】また、文字列インデックスデータは複数の
物理的なファイルから構成されるものとして、インデッ
クスデータを格納したファイル識別子“3”、該当デー
タの先頭ポインタ“Ps3”をインデックスポインタテー
ブルに記録する。また、ステップ1730でインデック
スポインタテーブルにおける末尾位置“Pe3”を更新す
る。以下、“GM”,“ML”等の文字列に対しても同様の
処理を繰り返すことにより図12に示す、文字列インデ
ックスを生成する。
【0127】更に、登録処理が進み、図11のインデッ
クスグループ識別子付加型構造化全文データにおける文
脈識別子“C6”に関する内容文字列“文書記述にSGMLを
用いることで”中の“SGML”に対して文字列インデック
スを生成する処理を図13を用いて説明する。
【0128】図13は本実施形態の文字列インデックス
更新処理の第2の例を示す図である。“SGML”からは、
図7におけるステップ1670において“SG”,“GM”
及び“ML”を抽出することとなるが、これらはいずれも
図12の登録処理において文字列インデックスにおける
文字列接続情報管理部に登録済みであり、ステップ16
80における判定結果はいずれも“yes”である為、ス
テップ1690に示す処理は実行されない。
【0129】次に、ステップ1700において該当イン
デックスグループ識別子がインデックスポインタテーブ
ル中に存在するか否かを判定するが、この時点ではイン
デックスグループ識別子G1は存在するが、今回登録対象
となるインデックスグループ識別子G5は未だ登録されて
いない為、ステップ1710を実行する。すなわち、図
13におけるインデックスポインタテーブルにインデッ
クスグループ識別子G5に関するエントリを作成し、更
にステップ1720において“SG”,“GM”及び“M
L”に関する文書識別子、文脈識別子及び文字位置をイ
ンデックスデータに格納した後、ステップ1730にお
いて該当インデックスデータに関するファイル識別子、
先頭ポインタ及び末尾ポインタを更新する。
【0130】最後に、図11のインデックスグループ識
別子付加型構造化全文データにおける文脈識別子“C7”
に関する内容文字列“作成したSGML文書をさまざまな・・
・”中の“SGML”に対して文字列インデックスを生成す
る処理を図14を用いて説明する。
【0131】図14は本実施形態の文字列インデックス
更新処理の第3の例を示す図である。ここでも、図7に
おけるステップ1670において“SGML”からは、“S
G”,“GM”及び“ML”を抽出することとなるが、これら
はいずれも図12の登録処理において文字列インデック
スにおける文字列接続情報管理部に登録済みである為、
ステップ1680における判定結果はいずれも“yes”
である為、ステップ1690に示す処理は実行されな
い。
【0132】次に、ステップ1700において該当イン
デックスグループ識別子がインデックスポインタテーブ
ル中に存在するか否かを判定するが、既にインデックス
グループ識別子G5はインデックスポインタテーブルに登
録されているので、ステップ1720において“SG”,
“GM”及び“ML”に関する文書識別子、文脈識別子及び
文字位置をインデックスデータを該当するインデックス
グループのデータ末尾に付加する。そして、ステップ1
730において該当インデックスデータに関する末尾ポ
インタを更新する。
【0133】以上が本実施形態における登録処理の内容
である。次に、本実施形態における検索時の処理につい
て説明する。本実施形態に対してネットワーク(図示せ
ず)を介してユーザから検索コマンドが入力されると、
システム制御プログラム100は検索制御プログラム1
20を起動し、文書の検索処理を開始する。文書検索時
の処理を図15に示すPADを用いて説明する。
【0134】図15は本実施形態の文書検索処理の処理
内容を示すPAD図である。始めに、検索制御プログラム
120はステップ2000で検索条件解析プログラム1
80を実行する。すなわち、本処理では検索条件式を解
析し、検索タームからインデックスの照合処理に用いる
部分文字列を抽出する。部分文字列の抽出方法として
は、文字列インデックスとして隣接する2文字を抽出し
ている本例においては、検索タームが2文字以内の場合
には検索タームそのものを、検索タームが4文字以上の
偶数の文字数(文字数=4、6、8、…)の場合には検
索ターム中の隣り合う2文字を互いに重複する文字が存
在しない様に抽出する。また検索タームが3文字以上の
奇数の文字数(文字数=3、5、7、…)の場合には、
先頭から互いに重複しない2文字を抽出していき、最後
の2文字についてのみ1文字重複させる様に抽出する。
また、指定された構造指定検索条件で、構造インデック
ス格納領域320に格納された構造インデックスを参照
することにより、指定された要素の下位に存在する全て
の文字列データに関する文脈識別子を抽出する。
【0135】次に、ステップ2010においてインデッ
クスグループ識別子抽出プログラム190を実行し、論
理構造管理テーブル格納領域300に格納された論理構
造管理テーブルを参照することにより検索対象に指定さ
れた要素に関するインデックスグループ識別子を抽出す
る。
【0136】更に、ステップ2020において構造化文
字位置データ抽出プログラム200を実行し、ステップ
2000において抽出した部分文字列についてステップ
2010において抽出したインデックスグループ識別子
に関するインデックスデータを文字インデックス格納領
域340からワークエリア220に読み出した後、検索
対象に指定した要素に関する文脈識別子に関するインデ
ックスデータのみを抽出する。
【0137】最後に、検索制御プログラム120はステ
ップ2030においてインデックス検索プログラム21
0を実行し、ステップ2020において抽出した検索タ
ームから抽出した部分文字列に関するインデックスデー
タ間の隣接判定を行うことにより、指定した検索ターム
が指定した論理構造中に含まれる文書を抽出する。この
結果を検索制御プログラム120がユーザに返送し、検
索処理を完了する。
【0138】以上が本実施形態における検索処理の内容
である。引き続き、登録処理の例において示した様に、
図22に示した文書が登録された構造化文書データベー
スを対象として、“論文”における“本文”中の“章”
に含まれる“段落”を対象として“SGML”という検索タ
ームを含む文書の検索処理について例を挙げて説明す
る。
【0139】まず、図15におけるステップ2000に
おいて、検索ターム“SGML”から、インデックスの照合
処理に使用する部分文字列を抽出する。すなわち、検索
ターム“SGML”は4文字以上の偶数文字列であるから、
部分文字列としては互いに重複しない隣接する2文字の
部分文字列として“SG”と“ML”を抽出する。更に、検
索対象の構造名である“論文”における“本文”中の
“章”に含まれる“段落”をキーに図10における構造
インデックスを参照していくことにより、該当要素の下
位に存在する文字列データに関する文脈識別子として
“C6”と“C7”を抽出する。
【0140】次に、図15におけるステップ2010に
おいて、検索対象の構造名である“論文”における“本
文”中の“章”に含まれる“段落”をキーに、図8の論
理構造管理テーブルを参照することにより、該当するイ
ンデックスグループ識別子“G5”を抽出する。
【0141】図16は本実施形態の文字列インデックス
の抽出処理を示す図である。更に、図15におけるステ
ップ2020において構造化文字位置データ抽出プログ
ラム200を実行することにより、文字インデックス格
納領域340中に格納されたインデックスデータの中か
ら、照合処理に必要となるインデックスデータを抽出す
る。すなわち、図16の様に文字列インデックスを参照
し、まず文字列接続情報を“SG”で探索することによ
り、部分文字列“SG”に関するインデックスポインタテ
ーブルを参照する。
【0142】そして、インデックスポインタテーブルに
おいて検索対象構造に関するインデックスグループ識別
子G5を抽出することにより読み出し対象となるインデッ
クスデータのファイル識別子として“3”を、また先頭
ポインタ及び末尾ポインタとして、それぞれ“Ps6”及
び“Pe6”を抽出し、その中から文脈識別子が所定の条
件を満たす、すなわち“C6”または“C7”に属するもの
を抽出し、インデックスデータ[D1,C6,6]及び[D1,C7,5]
を得る。また、“ML”についても同様にインデックスデ
ータ[D1,C6,7]及び[D1,C7,6]を読み出す。
【0143】図17は本実施形態の構造化文書検索シス
テムのインデックス検索処理を示す図である。最後に、
図15におけるステップ2030においてインデックス
データ間の隣接関係を判定することにより、検索ターム
で指定された論理構造中に含まれる文書を抽出する構造
化文字位置データ抽出プログラム200を実行する。す
なわち、ステップ2020において、抽出されるインデ
ックスデータは検索対象構造の文脈識別子に属すること
が保証されている為、ここでは図17の通り、(1)文書
識別子が同一であり、(2)文脈識別子が同一であり、(3)
文字位置が2文字隣接している条件で照合することによ
り、これら2組のインデックスが検索条件を満たしてい
ることを判定できる。
【0144】以上が本実施形態における検索処理の内容
である。この様に、本実施形態では構造化文書の論理構
造定義情報(DTD)を基に、繰り返しを持つ要素におい
て、同一の要素名を持つ文字列データに対し、同一のイ
ンデックスグループを割り当て、これらを連続したデー
タ領域に格納する。そして検索時には、該当インデック
スグループのインデックスデータのみを読み込み、それ
以外の論理構造のインデックスデータを読み込みの対象
から外すことにより、無駄なデータ読み出しを省き、ひ
いては高速な構造指定検索を実現することが可能にな
る。
【0145】なお、本実施形態では文字列インデックス
として、文書中の隣接する2文字の部分文字列を抽出す
る方法について述べたが、1文字または3文字以上の文
字列を抽出する方法についても同様に適用することが可
能である。また、形態素解析、文字種別情報、データベ
ース内の頻度情報及び単語辞書等を用いて抽出した単語
を単位にインデックスを作成する方法についても同様に
適用することが可能である。
【0146】更に、本実施形態では構造化文書としてSG
ML文書を対象として説明を行ったが、そのサブセットで
あるXML(eXtensible Markup Language)や、別の構造化
文書形式であるODA(Office Document Architecture)に
ついても適用可能である。
【0147】以上説明した様に本実施形態の構造化文書
検索システムによれば、検索用の文字列インデックスを
構造指定検索時に参照される単位に分割して二次記憶上
に格納するので、目的とする論理構造だけを対象に指定
する構造指定検索を高速に実現することが可能である。
【0148】(実施形態2)以下に1件の文書が複数の
論理構造で構成される構造化文書に対し、文書の登録時
に該当データベースに対して設定されたインデックスグ
ループ定義ファイルを参照することにより、検索時に同
時に指定される可能性の高い論理構造群を抽出し、これ
らに対して同一のインデックスグループ識別子を割り当
てて、目的とする論理構造だけを対象とした検索を高速
に行う実施形態2の構造化文書検索システムについて説
明する。
【0149】実施形態1では、文書データベースに登録
済み文書が存在しない状態の段階、すなわちデータベー
スの初期時に論理構造管理テーブル生成プログラム13
0を実行し、構造化文書の論理構造定義情報DTDから繰
り返しのある論理構造を抽出し、その中の同一の要素名
を持つ文字列データに対し、同一のインデックスグルー
プ識別子を付与し、検索時には、該当インデックスグル
ープのインデックスデータのみを読み出し、それ以外の
論理構造のインデックスデータを読み込みの対象から外
すことにより、無駄なデータ読み出しを省き、ひいては
高速な構造指定検索を実現する方法について説明した。
【0150】これに対し、以下に説明する実施形態2で
は、文書の登録時に該当データベースに対して設定され
たインデックスグループ定義ファイルを参照することに
より、検索時に同時に指定される可能性の高い論理構造
群を抽出し、これらに対して同一のインデックスグルー
プ識別子を割り当てる。そして、検索時に該当インデッ
クスグループに属する構造が検索対象に指定された場合
には、これらのインデックスデータを一括して読み出
し、データの読み出し回数を低減することにより、高速
な構造指定検索を実現する方法について説明する。
【0151】図18は本実施形態の構造化文書検索シス
テムの概略構成を示す図である。図18の様に本実施形
態の構造化文書検索システムは定義ファイル参照型論理
構造管理テーブル生成プログラム131を有している。
定義ファイル参照型論理構造管理テーブル生成プログラ
ム131はインデックスグループ定義情報により、検索
時に一括して参照される可能性の高い文字列データの組
に所定のインデックスグループ識別子を付与した論理構
造管理テーブルを作成する処理部である。
【0152】コンピュータを構造化文書検索システムと
して機能させる為の定義ファイル参照型論理構造管理テ
ーブル生成プログラム131は、CD−ROM等の記録
媒体に記録され磁気ディスク等に格納された後、メモリ
にロードされて実行されるものとする。なお前記プログ
ラムを記録する媒体はCD−ROM以外の他の媒体でも
良い。
【0153】本図に示す構造化文書検索システムの構成
は、図1に示した実施形態1における構成図において論
理構造管理テーブル生成プログラム130が定義ファイ
ル参照型論理構造管理テーブル生成プログラム131に
置き換わる構成となっている。
【0154】まず、本実施形態における構造化文書検索
方法では、文書登録の前にシステム管理者が検索時に同
時に参照される可能性の高い構造群を、例えば、図19
の構成のインデックスグループ定義ファイルとして格納
しておく。
【0155】図19は本実施形態のインデックスグルー
プ定義ファイルの例を示す図である。また、ここで言
う、検索時に同時に参照される可能性の高い構造群とし
ては、主に以下に示す構造群を想定している。
【0156】・ 同一の構造を親(上位)の構造として
持つ構造群(例えば、図22の構造化文書における<タ
イトル>と<出典>等。出典を指定して論文タイトルを検
索する時に、同時に指定される可能性が高い。この様な
例としては他に、<姓>と<名>の構造(図示せず)、<氏
名>の構造の下位構造としての定義や<所属>と<氏名>
(図示せず)、<著者>の構造の下位構造としての定義等
がある)。
【0157】・ ある構造の下位の構造全てを含む構造
群(例えば図22の構造化文書における<論文.本文.章>
の下位構造である、<章題>、<段落>及び<論文.本文.章.
節>の下位構造である<節題>、<段落>等。検索時には、
本文を対象として検索を実行される可能性が高く、その
場合にはこれらの構造に関するインデックスは一括して
参照される可能性が高い)。
【0158】そして、図19のインデックスグループ定
義ファイルでは、最上位構造である<論文>の構造からの
階層関係を“.”(ピリオド)で区切って記述してお
り、またこれらの構造群の間を“,”(コンマ)で区切
って記述することにより、これらの構造群を同一のイン
デックスグループとして扱うものとして定義している。
【0159】次に、実施形態1と構成の異なる定義ファ
イル参照型論理構造管理テーブル生成プログラム131
の処理内容について説明する。はじめに、定義ファイル
参照型論理構造管理テーブル生成プログラム131の処
理フローを説明する。
【0160】図20は本実施形態の定義ファイル参照型
論理構造管理テーブル生成プログラム131の処理内容
を示すPAD図である。本実施形態における定義ファイル
参照型論理構造管理テーブル生成プログラム131で
は、はじめにステップ1101を実行し、主メモリ60
上のワークエリア220に読み込んだDTDに示される文
書の論理構造を上位から順々に展開していき、要素の内
容が文字列“#PCDATA”で表される最下位構造に至るま
で主メモリ上のワークエリア220に木構造データとし
て展開する。
【0161】また、ステップ1111においてDTDの構
文内部矛盾や未定義要素が存在する等のエラーがあった
か否かを判定し、エラーがあった場合にはステップ11
21でエラーメッセージを出力して処理を中断する。こ
こまでは、図3に示した実施形態1における論理構造管
理テーブル生成プログラム130と同一の処理内容であ
る。
【0162】そして、ステップ1131において図20
に示したインデックスグループ定義ファイルを参照し、
検索時に同時に参照される可能性の高い構造群を抽出す
る。論理構造管理テーブルの最上位から該当構造名で順
次照合していき、図21の様に、該当する構造群に対し
て同一のインデックスグループ識別子を割り当てること
により、論理構造管理テーブルを生成する。
【0163】図21は本実施形態の論理構造管理テーブ
ルの構成例を示す図である。すなわち、〈論文.文献リ
スト.文献.タイトル〉の構造と〈論文.文献リスト.文
献.出典〉の構造に同一のインデックスグループ識別子
“G8”を、また〈論文.本文.章.章題〉,〈論文.本文.
章.段落〉,〈論文.本文.章.節.節題〉及び〈論文.本文.
章.節.段落〉の構造に同一のインデックスグループ識別
子“G4”を割り当てる。最後に、ステップ1141でこ
れを磁気ディスク装置70上の論理構造管理テーブル格
納領域300に格納し、処理を終了する。
【0164】以上が本実施形態における定義ファイル参
照型論理構造管理テーブル生成プログラム131の処理
内容である。
【0165】この様に、本実施形態における定義ファイ
ル参照型論理構造管理テーブル生成プログラム131で
は、登録時に予め作成されたインデックスグループ定義
ファイルを参照することにより、同時に参照される可能
性の高い構造群に対して同一のインデックスグループ識
別子を割り当てた論理構造管理テーブルを生成する。こ
れにより、検索時には該当する構造群に関するインデッ
クスデータを一括して読み出すことが可能になり、デー
タの読み出し回数を低減することにより高速な構造指定
検索を実現することが可能になる。
【0166】なお、本実施形態においてはインデックス
グループの作成対象となる構造群をシステム管理者が予
め定義しておく方法について説明したが、例えば〈書
誌〉と〈本文〉等の様に検索目的が異なる構造群に対し
ては、システムが自動的にインデックスグループを設定
することも可能である。
【0167】以上説明した様に本実施形態の構造化文書
検索システムによれば、検索用の文字列インデックスを
構造指定検索時に参照される単位に分割して二次記憶上
に格納するので、目的とする論理構造だけを対象に指定
する構造指定検索を高速に実現することが可能である。
【0168】
【発明の効果】本発明によれば検索用の文字列インデッ
クスを構造指定検索時に参照される単位に分割して二次
記憶上に格納するので、目的とする論理構造だけを対象
に指定する構造指定検索を高速に実現することが可能で
ある。
【図面の簡単な説明】
【図1】実施形態1の構造化文書検索システムの概略構
成を示す図である。
【図2】実施形態1の文書登録処理の処理内容を示すPA
D図である。
【図3】実施形態1の論理構造管理テーブル生成プログ
ラム130の処理内容を示すPAD図である。
【図4】実施形態1のインデックスグループ識別子付加
型解析済みデータ生成プログラム140の処理内容を示
すPAD図である。
【図5】実施形態1の構造インデックス生成プログラム
150の処理内容を示すPAD図である。
【図6】実施形態1のインデックスグループ識別子付加
型構造化全文データ生成プログラム160の処理内容を
示すPAD図である。
【図7】実施形態1の文字列インデックス生成プログラ
ム170の処理内容を示すPAD図である。
【図8】実施形態1の論理構造管理テーブルの構成例を
示す図である。
【図9】実施形態1のインデックスグループ識別子付加
型解析済み構造木の例を示す図である。
【図10】実施形態1の構造インデックスの例を示す図
である。
【図11】実施形態1のインデックスグループ識別子付
加型の構造化全文データの例を示す図である。
【図12】実施形態1の文字列インデックス更新処理の
第1の例を示す図である。
【図13】実施形態1の文字列インデックス更新処理の
第2の例を示す図である。
【図14】実施形態1の文字列インデックス更新処理の
第3の例を示す図である。
【図15】実施形態1の文書検索処理の処理内容を示す
PAD図である。
【図16】実施形態1の文字列インデックスの抽出処理
を示す図である。
【図17】実施形態1の構造化文書検索システムのイン
デックス検索処理を示す図である。
【図18】実施形態2の構造化文書検索システムの概略
構成を示す図である。
【図19】実施形態2のインデックスグループ定義ファ
イルの例を示す図である。
【図20】実施形態2の定義ファイル参照型論理構造管
理テーブル生成プログラム131の処理内容を示すPAD
図である。
【図21】実施形態2の論理構造管理テーブルの構成例
を示す図である。
【図22】従来のSGML形式で記述された構造化文書の例
を示す図である。
【図23】図22に示した構造化文書の構造定義DTDを
示す図である。
【図24】公知例1における解析済み木構造データの例
を示す図である。
【図25】公知例1における構造インデックスの例を示
す図である。
【図26】公知例1における構造化全文データの例を示
す図である。
【図27】公知例1における検索用インデックスの例を
示す図である。
【図28】公知例1において各構造の構造長を検索用イ
ンデックス内に格納する方法の概略を示す図である。
【符号の説明】
10…ディスプレイ、20…キーボード、30…CP
U、40…フロッピディスクドライブ、50…フロッピ
ディスク、60…主メモリ、70…磁気ディスク装置、
80…バス、100…システム制御プログラム、110
…登録制御プログラム、120…検索制御プログラム、
220…ワークエリア、300…論理構造管理テーブル
格納領域、310…インデックスグループ識別子付加型
解析済みデータ格納領域、320…構造インデックス格
納領域、330…インデックスグループ識別子付加型構
造化全文データ格納領域、340…文字インデックス格
納領域、130…論理構造管理テーブル生成プログラ
ム、140…インデックスグループ識別子付加型解析済
みデータ生成プログラム、150…構造インデックス生
成プログラム、160…インデックスグループ識別子付
加型構造化全文データ生成プログラム、170…文字列
インデックス生成プログラム、180…検索条件解析プ
ログラム、190…インデックスグループ識別子抽出プ
ログラム、200…構造化文字位置データ抽出プログラ
ム、210…インデックス検索プログラム、131…定
義ファイル参照型論理構造管理テーブル生成プログラ
ム。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 菅谷 奈津子 神奈川県横浜市都筑区加賀原二丁目2番 株式会社日立製作所システム開発本部内 (72)発明者 松林 忠孝 神奈川県横浜市都筑区加賀原二丁目2番 株式会社日立製作所システム開発本部内 (72)発明者 川下 靖司 神奈川県横浜市戸塚区戸塚町5030番地 株 式会社日立製作所ソフトウェア開発本部内 Fターム(参考) 5B075 ND03 ND35 NK02 NK22 NK43 NR06 NR12 UU06

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 1件の文書が複数の論理構造で構成され
    る構造化文書を登録する文書登録方法において、 登録対象文書における論理構造定義情報またはインデッ
    クスグループ定義情報により、検索時に一括して参照さ
    れる可能性の高い文字列データの組に所定のインデック
    スグループ識別子を付与した論理構造管理テーブルを作
    成する論理構造管理テーブル生成登録ステップと、 該論理構造管理テーブルを参照しながら登録対象文書の
    持つ論理構造を解析し、該登録対象文書中に出現した文
    字列データにインデックスグループ識別子を付与した解
    析済みデータを生成するインデックスグループ識別子付
    加型解析済みデータ生成ステップと、 該インデックスグループ識別子付加型解析済みデータを
    入力として、メタ要素群及びメタ文字列群の木構造から
    構成される構造インデックスを生成し、該構造インデッ
    クスを構成するメタノードを構造インデックス内で一意
    に識別する識別子である文脈識別子を付与する構造イン
    デックス生成ステップと、 該インデックスグループ識別子付加型解析済みデータと
    構造インデックスを入力として、該登録対象文書中に出
    現した各論理構造に属する文字列データに対して、文脈
    識別子とインデックスグループ識別子を対応付けて構成
    したインデックスグループ識別子付加型の構造化全文デ
    ータを生成するインデックスグループ識別子付加型構造
    化全文データ生成ステップと、 該インデックスグループ識別子付加型構造化全文データ
    における文字列データから所定の部分文字列を抽出し、
    前記登録対象文書を文書データベースにおいて一意に識
    別する為の文書識別子と、前記部分文字列に対応する論
    理構造の文脈識別子と、該登録対象文書中での文字位置
    情報を組とした構造化文字位置情報を生成し、これを各
    部分文字列に関する論理構造のインデックスグループ識
    別子毎に蓄積、管理することにより、構造指定検索用の
    文字列インデックスを生成する文字列インデックス生成
    ステップとを有することを特徴とする文書登録方法。
  2. 【請求項2】 前記インデックスグループ定義情報は、
    同一の構造を上位構造として持つ構造群におけるインデ
    ックスデータを同一のインデックスグループとして集約
    化するものであることを特徴とする請求項1に記載され
    た文書登録方法。
  3. 【請求項3】 前記インデックスグループ定義情報は、
    所定の構造の下位の構造として位置付けられる構造群に
    おけるインデックスデータを同一のインデックスグルー
    プとして集約化するものであることを特徴とする請求項
    1に記載された文書登録方法。
  4. 【請求項4】 1件の文書が複数の論理構造で構成され
    る構造化文書を検索する文書検索方法において、 検索条件式を解析し、指定された構造指定検索条件を満
    たす要素名と、検索タームからインデックスの照合処理
    に用いる部分文字列を抽出し、更にメタ要素群及びメタ
    文字列群の木構造から構成される構造インデックスを参
    照することにより該当する要素名に関する文脈識別子を
    抽出する検索条件解析ステップと、 検索時に一括して参照される可能性の高い文字列データ
    を示すインデックスグループ識別子を付与した論理構造
    管理テーブルを参照し、指定された検索条件を満たす文
    脈識別子に対応するインデックスグループ識別子を抽出
    するインデックスグループ識別子抽出ステップと、 検索ターム中の所定の部分文字列について、前記インデ
    ックスグループ識別子抽出ステップにおいて抽出された
    インデックスグループ識別子に関する構造化文字位置情
    報を文字列インデックスから抽出する構造化文字位置デ
    ータ抽出ステップと、 前記構造化文字位置情報中から、前記検索条件解析ステ
    ップで抽出した文脈識別子を持ち、かつ前記検索ターム
    における部分文字列の並びと同じ位置関係を持つ構造化
    文字位置情報を抽出するインデックス検索ステップとを
    有することを特徴とする文書検索方法。
  5. 【請求項5】 1件の文書が複数の論理構造で構成され
    る構造化文書を登録する文書登録装置において、 登録対象文書における論理構造定義情報またはインデッ
    クスグループ定義情報により、検索時に一括して参照さ
    れる可能性の高い文字列データの組に所定のインデック
    スグループ識別子を付与した論理構造管理テーブルを作
    成する論理構造管理テーブル生成登録処理部と、 該論理構造管理テーブルを参照しながら登録対象文書の
    持つ論理構造を解析し、該登録対象文書中に出現した文
    字列データにインデックスグループ識別子を付与した解
    析済みデータを生成するインデックスグループ識別子付
    加型解析済みデータ生成処理部と、 該インデックスグループ識別子付加型解析済みデータを
    入力として、メタ要素群及びメタ文字列群の木構造から
    構成される構造インデックスを生成し、該構造インデッ
    クスを構成するメタノードを構造インデックス内で一意
    に識別する識別子である文脈識別子を付与する構造イン
    デックス生成処理部と、 該インデックスグループ識別子付加型解析済みデータと
    構造インデックスを入力として、該登録対象文書中に出
    現した各論理構造に属する文字列データに対して、文脈
    識別子とインデックスグループ識別子を対応付けて構成
    したインデックスグループ識別子付加型の構造化全文デ
    ータを生成するインデックスグループ識別子付加型構造
    化全文データ生成処理部と、 該インデックスグループ識別子付加型構造化全文データ
    における文字列データから所定の部分文字列を抽出し、
    前記登録対象文書を文書データベースにおいて一意に識
    別する為の文書識別子と、前記部分文字列に対応する論
    理構造の文脈識別子と、該登録対象文書中での文字位置
    情報を組とした構造化文字位置情報を生成し、これを各
    部分文字列に関する論理構造のインデックスグループ識
    別子毎に蓄積、管理することにより、構造指定検索用の
    文字列インデックスを生成する文字列インデックス生成
    処理部とを備えることを特徴とする文書登録装置。
  6. 【請求項6】 1件の文書が複数の論理構造で構成され
    る構造化文書を検索する文書検索装置において、 検索条件式を解析し、指定された構造指定検索条件を満
    たす要素名と、検索タームからインデックスの照合処理
    に用いる部分文字列を抽出し、更にメタ要素群及びメタ
    文字列群の木構造から構成される構造インデックスを参
    照することにより該当する要素名に関する文脈識別子を
    抽出する検索条件解析処理部と、 検索時に一括して参照される可能性の高い文字列データ
    を示すインデックスグループ識別子を付与した論理構造
    管理テーブルを参照し、指定された検索条件を満たす文
    脈識別子に対応するインデックスグループ識別子を抽出
    するインデックスグループ識別子抽出処理部と、 検索ターム中の所定の部分文字列について、前記インデ
    ックスグループ識別子抽出処理部において抽出されたイ
    ンデックスグループ識別子に関する構造化文字位置情報
    を文字列インデックスから抽出する構造化文字位置デー
    タ抽出処理部と、 前記構造化文字位置情報中から、前記検索条件解析処理
    部で抽出した文脈識別子を持ち、かつ前記検索タームに
    おける部分文字列の並びと同じ位置関係を持つ構造化文
    字位置情報を抽出するインデックス検索処理部とを備え
    ることを特徴とする文書検索装置。
  7. 【請求項7】 1件の文書が複数の論理構造で構成され
    る構造化文書を登録する文書登録装置としてコンピュー
    タを機能させる為のプログラムを記録した媒体におい
    て、 登録対象文書における論理構造定義情報またはインデッ
    クスグループ定義情報により、検索時に一括して参照さ
    れる可能性の高い文字列データの組に所定のインデック
    スグループ識別子を付与した論理構造管理テーブルを作
    成する論理構造管理テーブル生成登録処理部と、 該論理構造管理テーブルを参照しながら登録対象文書の
    持つ論理構造を解析し、該登録対象文書中に出現した文
    字列データにインデックスグループ識別子を付与した解
    析済みデータを生成するインデックスグループ識別子付
    加型解析済みデータ生成処理部と、 該インデックスグループ識別子付加型解析済みデータを
    入力として、メタ要素群及びメタ文字列群の木構造から
    構成される構造インデックスを生成し、該構造インデッ
    クスを構成するメタノードを構造インデックス内で一意
    に識別する識別子である文脈識別子を付与する構造イン
    デックス生成処理部と、 該インデックスグループ識別子付加型解析済みデータと
    構造インデックスを入力として、該登録対象文書中に出
    現した各論理構造に属する文字列データに対して、文脈
    識別子とインデックスグループ識別子を対応付けて構成
    したインデックスグループ識別子付加型の構造化全文デ
    ータを生成するインデックスグループ識別子付加型構造
    化全文データ生成処理部と、 該インデックスグループ識別子付加型構造化全文データ
    における文字列データから所定の部分文字列を抽出し、
    前記登録対象文書を文書データベースにおいて一意に識
    別する為の文書識別子と、前記部分文字列に対応する論
    理構造の文脈識別子と、該登録対象文書中での文字位置
    情報を組とした構造化文字位置情報を生成し、これを各
    部分文字列に関する論理構造のインデックスグループ識
    別子毎に蓄積、管理することにより、構造指定検索用の
    文字列インデックスを生成する文字列インデックス生成
    処理部としてコンピュータを機能させる為のプログラム
    を記録したことを特徴とする媒体。
  8. 【請求項8】 1件の文書が複数の論理構造で構成され
    る構造化文書を検索する文書検索装置としてコンピュー
    タを機能させる為のプログラムを記録した媒体におい
    て、 検索条件式を解析し、指定された構造指定検索条件を満
    たす要素名と、検索タームからインデックスの照合処理
    に用いる部分文字列を抽出し、更にメタ要素群及びメタ
    文字列群の木構造から構成される構造インデックスを参
    照することにより該当する要素名に関する文脈識別子を
    抽出する検索条件解析処理部と、 検索時に一括して参照される可能性の高い文字列データ
    を示すインデックスグループ識別子を付与した論理構造
    管理テーブルを参照し、指定された検索条件を満たす文
    脈識別子に対応するインデックスグループ識別子を抽出
    するインデックスグループ識別子抽出処理部と、 検索ターム中の所定の部分文字列について、前記インデ
    ックスグループ識別子抽出処理部において抽出されたイ
    ンデックスグループ識別子に関する構造化文字位置情報
    を文字列インデックスから抽出する構造化文字位置デー
    タ抽出処理部と、 前記構造化文字位置情報中から、前記検索条件解析処理
    部で抽出した文脈識別子を持ち、かつ前記検索タームに
    おける部分文字列の並びと同じ位置関係を持つ構造化文
    字位置情報を抽出するインデックス検索処理部としてコ
    ンピュータを機能させる為のプログラムを記録したこと
    を特徴とする媒体。
JP10163901A 1998-06-11 1998-06-11 文書登録方法と文書検索方法及びその実施装置並びにその処理プログラムを記録した媒体 Pending JP2000003366A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10163901A JP2000003366A (ja) 1998-06-11 1998-06-11 文書登録方法と文書検索方法及びその実施装置並びにその処理プログラムを記録した媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10163901A JP2000003366A (ja) 1998-06-11 1998-06-11 文書登録方法と文書検索方法及びその実施装置並びにその処理プログラムを記録した媒体

Publications (1)

Publication Number Publication Date
JP2000003366A true JP2000003366A (ja) 2000-01-07

Family

ID=15782987

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10163901A Pending JP2000003366A (ja) 1998-06-11 1998-06-11 文書登録方法と文書検索方法及びその実施装置並びにその処理プログラムを記録した媒体

Country Status (1)

Country Link
JP (1) JP2000003366A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002007439A (ja) * 2000-06-20 2002-01-11 Nec Corp 文書情報を管理するidテーブル作成方法
JP2005215743A (ja) * 2004-01-27 2005-08-11 Fuji Xerox Co Ltd ファイル属性情報管理プログラム、ファイル属性情報管理方法、ファイル属性情報管理装置
WO2009154241A1 (ja) * 2008-06-18 2009-12-23 日本電気株式会社 検索式生成システム、検索式生成方法、検索式生成用プログラム、及び記録媒体
US8914370B2 (en) 2010-10-29 2014-12-16 International Business Machines Corporation Generating rules for classifying structured documents
US9160771B2 (en) 2009-07-22 2015-10-13 International Business Machines Corporation Method and apparatus for dynamic destination address control in a computer network
US9767191B2 (en) 2013-07-23 2017-09-19 International Business Machines Corporation Group based document retrieval
KR20200094074A (ko) * 2019-01-29 2020-08-06 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 인덱스 관리 방법, 장치, 기기 및 저장 매체
US10956505B2 (en) 2017-01-31 2021-03-23 Fujitsu Limited Data search method, data search apparatus, and non-transitory computer-readable storage medium storing program for data search

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002007439A (ja) * 2000-06-20 2002-01-11 Nec Corp 文書情報を管理するidテーブル作成方法
JP2005215743A (ja) * 2004-01-27 2005-08-11 Fuji Xerox Co Ltd ファイル属性情報管理プログラム、ファイル属性情報管理方法、ファイル属性情報管理装置
WO2009154241A1 (ja) * 2008-06-18 2009-12-23 日本電気株式会社 検索式生成システム、検索式生成方法、検索式生成用プログラム、及び記録媒体
JP5429165B2 (ja) * 2008-06-18 2014-02-26 日本電気株式会社 検索式生成システム、検索式生成方法、検索式生成用プログラム、及び記録媒体
US11165869B2 (en) 2009-07-22 2021-11-02 International Business Machines Corporation Method and apparatus for dynamic destination address control in a computer network
US9160771B2 (en) 2009-07-22 2015-10-13 International Business Machines Corporation Method and apparatus for dynamic destination address control in a computer network
US10079894B2 (en) 2009-07-22 2018-09-18 International Business Machines Corporation Method and apparatus for dynamic destination address control in a computer network
US10469596B2 (en) 2009-07-22 2019-11-05 International Business Machines Corporation Method and apparatus for dynamic destination address control in a computer network
US8914370B2 (en) 2010-10-29 2014-12-16 International Business Machines Corporation Generating rules for classifying structured documents
US9767191B2 (en) 2013-07-23 2017-09-19 International Business Machines Corporation Group based document retrieval
US10956505B2 (en) 2017-01-31 2021-03-23 Fujitsu Limited Data search method, data search apparatus, and non-transitory computer-readable storage medium storing program for data search
KR20200094074A (ko) * 2019-01-29 2020-08-06 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 인덱스 관리 방법, 장치, 기기 및 저장 매체
KR102368775B1 (ko) 2019-01-29 2022-02-28 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 인덱스 관리 방법, 장치, 기기 및 저장 매체
US11308060B2 (en) 2019-01-29 2022-04-19 Beijing Baidu Netcom Science And Technology Co., Ltd. Method, apparatus, device and storage medium for managing index

Similar Documents

Publication Publication Date Title
US6510425B1 (en) Document search method for registering documents, generating a structure index with elements having position of occurrence in documents represented by meta-nodes
JP3887867B2 (ja) 構造化文書の登録方法
JP4141556B2 (ja) 構造化文書管理方法及びその実施装置並びにその処理プログラムを記録した媒体
JP5038939B2 (ja) 情報検索システム、方法及びプログラム
US20090024384A1 (en) Data processing method and system, program for realizing the method, and computer readable storage medium storing the program
US20020099685A1 (en) Document retrieval system; method of document retrieval; and search server
US20050060306A1 (en) Apparatus, method, and program for retrieving structured documents
JP2000231563A (ja) 文書検索方法及び文書検索システム及び文書検索プログラムを記録したコンピュータ読み取り可能な記録媒体
JPH0765035A (ja) 構造化文書検索装置
JP2001075969A (ja) 画像管理検索装置、画像管理検索方法及び記憶媒体
JP2000003366A (ja) 文書登録方法と文書検索方法及びその実施装置並びにその処理プログラムを記録した媒体
JP7103763B2 (ja) 情報処理システムおよび情報処理方法
JPH08147311A (ja) 構造化文書検索方法及び装置
JP3767763B2 (ja) 情報検索装置およびその装置としてコンピュータを機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2005242416A (ja) 自然言語文の検索方法および検索装置
JP3632643B2 (ja) 構造化文書管理装置
JPH1027183A (ja) データ登録方法および装置
JPH09198396A (ja) 文書検索装置
JP2000163445A (ja) データベース管理システム
JP4289022B2 (ja) 構造化文書処理方法及び装置及び構造化文書処理プログラム及び構造化文書処理プログラムを格納した記憶媒体
JPH08190571A (ja) 文書検索方法
WO2013069149A1 (ja) データ検索装置、データの検索方法及びプログラム
JP2002132789A (ja) 文書検索方法
JP3555181B2 (ja) 構造化文書検索方法
JP3842574B2 (ja) 情報抽出方法および構造化文書管理装置およびプログラム