JP3079844B2 - 全文データベースシステム - Google Patents

全文データベースシステム

Info

Publication number
JP3079844B2
JP3079844B2 JP05204351A JP20435193A JP3079844B2 JP 3079844 B2 JP3079844 B2 JP 3079844B2 JP 05204351 A JP05204351 A JP 05204351A JP 20435193 A JP20435193 A JP 20435193A JP 3079844 B2 JP3079844 B2 JP 3079844B2
Authority
JP
Japan
Prior art keywords
search
pseudo
character
word
unique
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.)
Expired - Fee Related
Application number
JP05204351A
Other languages
English (en)
Other versions
JPH0756945A (ja
Inventor
広実 植木
浩二 牧之内
道彦 平澤
雅人 奈良
群二 濱谷
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.)
Toppan Inc
Original Assignee
Toppan Inc
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 Toppan Inc filed Critical Toppan Inc
Priority to JP05204351A priority Critical patent/JP3079844B2/ja
Publication of JPH0756945A publication Critical patent/JPH0756945A/ja
Application granted granted Critical
Publication of JP3079844B2 publication Critical patent/JP3079844B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は電子出版等に用いて好適
な全文データベースシステムに関する。
【0002】
【従来の技術】文書データから所定の文字列を検索する
手法には、大別して、キーワード検索と全文検索とがあ
る。キーワード検索では、キーワード登録者が、文書デ
ータを例えば、文章毎に細分化し、各文書データに適合
するキーワードを対応させる。この対応関係はインデッ
クスファイルに記憶され、当該ファイルにおいて、各キ
ーワードは例えば、文字コード順に木構造をなすように
記憶される。
【0003】このような構成において、検索操作者が抽
出したい文書データに対応するキーワードを入力するこ
とにより検索処理が為される。具体的には、入力キーワ
ードに一致するキーワードがインデックスファイルから
抽出され、このキーワードに対応する文書データが出力
される。
【0004】一方、全文検索では、文書データはシーケ
ンシャルファイル(全文データベース)として記憶され
る。この文書データに対する検索処理は、検索操作者
が、抽出したい文書データに含まれる文字列を入力する
ことにより為される。具体的には、入力された検索文字
列と文書データに含まれる全ての文字列とが比較され、
一致する文字列が含まれる文書データが出力される。な
お、検索文字列の文字数や適用するパターンマッチング
の手法によっては、文書データに含まれる全ての文字列
を検索文字列と比較する必要はない。各種パターンマッ
チングの手法については、公知であるので、その説明を
省略する。
【0005】
【発明が解決しようとする課題】一般に、データベース
検索を必要とする電子出版の分野において、取り扱われ
る文書データの容量は、極めて大きなものとなる。例え
ば、CD−ROMは数百MB(メガバイト)の記憶容量
を有しており、通常、数十〜数百MBの文書データが記
憶される。このように、極めて大容量の文書データに対
して、前述した全文検索を適用すると、公知のいかなる
パターンマッチングの手法を用いても、パーソナルコン
ピュータ程度の処理能力では、十分な応答時間を達成す
ることができないという欠点がある。
【0006】また、前述したキーワード検索を適用しよ
うとしても、CD−ROMに記憶される文書データは、
データベース化を前提として作成されていない為に、文
章毎に細分化する作業や、適合するキーワードを作成す
る作業が極めて困難になるという問題がある。さらに、
キーワード登録者と検索操作者は別人であるために、検
索操作者が、作成されたキーワードを有効に活用するこ
とが困難であるという欠点もある。
【0007】また、使用者が必要とする情報は、「経
済」、「製法」、「演算」等の数文字の文字列により特
定できる場合が多く、これらの文字列の中には、キーワ
ードとして登録しにくいものが含まれることがある。す
なわち、登録されたキーワード以外の文字列による検索
が必要となる場合がある。こうした場合に対応できるよ
うに、例えば、2文字からなる文字列を全てキーワード
とすることも考えられる。
【0008】しかしながら、日本語の場合、約7千種の
文字が存在するために、2文字の順列は約4千9百万と
いう膨大な数となる。この膨大な数のキーワードから特
定のキーワードを抽出する処理は極めて高負荷となり、
木構造を用いても、パーソナルコンピュータ程度の処理
能力では実用にならない。また、検索の為のインデック
スファイルも巨大(例えば、数百MB)なものとなり、
文書データの為の記憶領域が狭くなってしまう。
【0009】本発明は、このような背景に鑑みて為され
たもので、インデックステーブル群のサイズを小とし、
十分な検索速度を得ることができる全文データベースシ
ステムを提供することを目的とする。
【0010】
【課題を解決するための手段】本発明による全文データ
ベースシステムは、階層構造を有するインデックステー
ブル群を用いて、検索文字列に一致する文字列を文書デ
ータから抽出する全文データベースシステムであって、
前記文書データ中の各文字に連続するアドレスを付与す
るアドレス付与手段と、前記文書データ中の各文字と後
続する文字とで構成される合計k文字(kは2以上)の
疑似単語を作成し、各疑似単語の先頭文字列に付与され
る各アドレスを、対応する疑似単語の文字コード順にア
ドレステーブルへ記憶するアドレステーブル作成手段
と、固有の文字コードを有する疑似単語を固有疑似単語
として前記インデックステーブル群中の最下層テーブル
へ文字コード順に記憶するとともに、各固有疑似単語に
前記アドレステーブル中の各アドレスを対応付ける最下
層構築手段と、前記インデックステーブル群中の最上層
テーブルに記憶される固有疑似単語数が所定数以上であ
るか否かを判断する判断手段と、前記判断手段により前
記固有疑似単語数が所定数以上であると判断された場
合、前記最上層テーブルを略均等に分割するように複数
の固有疑似単語を抽出して前記最上層テーブルの上層の
テーブルを作成して新たな最上層テーブルとし、前記判
断手段により、新たに作成された最上層テーブル内の固
有疑似単語数が所定数未満となるまで、前記上層のテー
ブルを繰り返し作成する階層化手段とを具備し、前記イ
ンデックステーブル群は、合計k文字未満の疑似単語に
対応したテーブルをも有することを特徴としている。
【0011】
【作用】上記構成によれば、アドレス付与手段が、文書
データ中の各文字に連続するアドレスを付与し、アドレ
ステーブル作成手段が、前記文書データ中の各文字と後
続する文字とで構成される合計k文字(kは2以上)の
疑似単語を作成し、各疑似単語の先頭文字列に付与され
る各アドレスを、対応する疑似単語の文字コード順にア
ドレステーブルへ記憶する。そして、最下層構築手段
が、固有の文字コードを有する疑似単語を固有疑似単語
として前記インデックステーブル群中の最下層テーブル
へ文字コード順に記憶するとともに、各固有疑似単語に
前記アドレステーブル中の各アドレスを対応付ける。
た、判断手段が前記インデックステーブル群中の最上層
テーブルに記憶される固有疑似単語数が所定数以上であ
るか否かを判断し、固有疑似単語数が所定数以上である
判断された場合は、階層化手段が前記最上層テーブルを
略均等に分割するように複数の固有疑似単語を抽出して
前記最上層テーブルの上層のテーブルを作成して新たな
最上層テーブルとする。そして、階層化手段は、判断手
段によって最上層テーブルに記憶される固有疑似単語数
が所定数未満と判断されるまで、上述した新たな最上層
テーブルを繰り返し作成する。さらに、前記インデック
ステーブル群は、合計k文字未満の疑似単語に対応した
テーブルをも有している。インデックステーブル群は、
このような階層構造を有する為に、検索時において、十
分な検索速度が得られる。また、インデックステーブル
群中の各テーブルに記憶される疑似単語は、固有の文字
コードを有する固有疑似単語であるために、インデック
ステーブル群のサイズが小となる。さらに、インデック
ステーブル群が、合計k文字未満の疑似単語に対応した
テーブルをも有しているために、k文字数未満の検索文
字列による検索がなされる場合においても所定の応答速
度で検索処理が可能となる。
【0012】
【実施例】以下、図面を参照して、本発明の一実施例に
ついて説明する。(1)構築システム1の構成 図1は本発明の一実施例による全文データベースシステ
ムの概略構成を示す図であり、図1(a)は全文データ
ベースを構築する構築システム1の概略構成を示すブロ
ック図である。この構築システム1は、データベースの
提供者(もしくは編集者)に使用されることが想定され
る。電子出版においては、その提供者が当該システム1
により構築された全文データベースを、CD−ROM等
に記憶させる。
【0013】図1(a)において、2はキーボード等の
入力装置であり、オペレータにより入力される文書デー
タを構築処理装置3(後述する)へ供給する。構築処理
装置3は、入力装置2から供給される文書データに所定
の処理を施して、記憶装置4(後述する)へ供給すると
ともに、当該文書データに対応するインデックスファイ
ルを作成し、全文データベースを構築する。この全文デ
ータベース構築処理の内容については、後に詳述する。
【0014】記憶装置4は、例えば、数百MBの容量を
有するハードディスクからなり、構築処理装置3から供
給される文書データを実データファイルとして記憶する
とともに、構築処理装置3にて作成されるインデックス
ファイルを記憶する。ここで、実データファイル中の文
書データの一例を図4に示す。この図に示す文書データ
には、キーワード”東京都”および”京都”を識別する
為の位置マーク’@’が付加されている。
【0015】また、インデックスファイルに含まれる各
種テーブルの一例を図12に示す。図12は図4に示す
文書データの和文範囲JAに対するインデックステーブ
ル(以後、和文テーブルと称す)の構成例を示す図であ
り、この図において、J2−1は和文最下層テーブル、
J2−2は和文最下層テーブルJ2−1の上層テーブル
となる和文最上層テーブル、J1は1文字テーブルであ
り、和文最下層テーブルJ2−1の上層テーブルとな
る。また、CATはレコードR1を複数有する文字アド
レステーブルである。
【0016】和文最下層テーブルJ2−1はレコードR
2を複数有し、各レコードR2には、文書データの和文
範囲JA(図4参照)中に存在する2文字の文字列(以
後、疑似単語と称す)が格納されている。これらの疑似
単語は、ユニーク(同一綴りのものが無い)であり、文
字コードCC順にソートされている(以後、ユニークな
疑似単語を固有疑似単語と称す)。ここで、疑似単語の
文字コードCCは、当該疑似単語の先頭文字の文字コー
ドをC1、末尾文字の文字コードをC2とすると、例え
ば、以下に示す計算式(1)により算出される。 CC = C1 × m + C2 …(1) 文書データ中に現れる文字種は約7千種であるので、こ
の文字種以上の数「m(例えば、8千)」をC1に乗ず
ることにより、CCは疑似単語固有の文字コードとな
る。
【0017】また、各レコードR2は、当該レコードR
2に格納される固有疑似単語の文書データ中での存在数
を表す「サイズ」を有し、文字アドレステーブルCAT
中の所定のレコードR1に対応付けられている。ここ
で、レコードR2が対応付けられるレコードR1は、当
該レコードR2が有する固有疑似単語の先頭文字の位置
を表す「文字アドレス」を有する。
【0018】なお、和文最下層テーブルJ2−1におい
て、サイズが複数であるレコードR2には、複数のレコ
ードR1が対応付けられる。具体的には、サイズが複数
であるレコードR2に、当該レコードR2が有する固有
疑似単語に対応する複数の文字アドレスのうち、最小の
文字アドレスを有するレコードR1が対応付けられ、こ
のレコードR1に続いて、最小でない文字アドレスを有
するレコードR1が昇順に整列される。
【0019】また、和文最上層テーブルJ2−2はレコ
ードR3を複数有し、各レコードR3には、和文最下層
テーブルJ2−1中の固有疑似単語が格納される。な
お、このレコードR3の数は、レコードR2に較べて極
めて少ない。また、各レコードR3は、固有疑似単語の
文字コード順にソートされており、レコードR3が有す
る固有疑似単語と同一の固有疑似単語を有するレコード
R2に対応付けられる。この際、和文最下層テーブルJ
2−1において、各レコードR3に対応付けられる各レ
コードR2間の距離、すなわち、当該レコードR2間に
存在するレコードR2の数が、予め設定された数(例え
ば、99)となるように、各レコードR3に格納される
固有疑似単語が設定される。
【0020】1文字テーブルJ1はレコードR4を複数
有し、各レコードR4は、文書データの和文範囲JAに
出現する全種類の文字を格納する。これらの文字はユニ
ークであり、各レコードR4は文字コード順にソートさ
れている。また、各レコードR4は、和文最下層テーブ
ルJ2−1中の所定のレコードR2に対応付けられてお
り、対応付けられるレコードR4およびレコードR2が
有する文字および固有疑似単語の先頭文字は一致する。
ここで、1つのレコードR4が対応付けられるべきレコ
ードR2が複数である場合には、当該レコードR4は最
も先頭にあるレコードR2に対応付けられる。この際、
レコードR4が有するサイズは、対応付けるべき固有疑
似単語の数となる。
【0021】次に、文書データ(図4参照)の欧文範囲
EAに対応するインデックステーブル(以後、欧文テー
ブルと称す)の一例を図7および図9に示す。欧文テー
ブルは、図7に示すようなワードアドレステーブルWA
T,ワードリストWLと、図9に示すような仮想アドレ
ステーブルVAT,欧文基本テーブルEBTとからな
る。図7に示すように、ワードアドレステーブルWAT
はレコードR5を複数有し、各レコードR5には、欧文
範囲EAに存在する全ての「ワード(単語)」に対応す
るワード単位のアドレス(以後、ワードアドレスと称
す)が格納される。
【0022】また、ワードリストWLは、レコードR6
を複数有し、各レコードR6は、欧文範囲EAに存在す
るユニークなワード(以後、固有ワードと称す)を1つ
ずつ有し、各固有ワードの文字コード順にソートされて
いる。また、各レコードR6には、固有の「ユニーク符
号」が割り当てられ、各固有ワードを構成する各文字に
は、固有ワード内の先頭からの位置を示す「ワード内ア
ドレス」が付与される。
【0023】また、各レコードR6は、自身が有する固
有ワードが文書データ中で出現する頻度を表す「サイ
ズ」を有し、ワードアドレステーブルWAT中の所定の
レコードR5に対応付けられる。なお、サイズが複数で
あるレコードR6には、複数のレコードR5が対応付け
られる。具体的には、サイズが複数であるレコードR6
に、当該レコードR6が有する固有ワードに対応する複
数のワードアドレスのうち、最小のワードアドレスを有
するレコードR5が対応付けられ、このレコードR5に
続いて、最小でない文字アドレスを有するレコードR5
が昇順に整列される。
【0024】また、図9に示す欧文基本テーブルEBT
は、レコードR7を複数有し、各レコードR7には、ワ
ードリストWL(図7参照)中の各固有ワードに基づい
て生成される2文字単位の固有疑似単語が1つずつ格納
される。各レコードR7は、固有疑似単語の文字コード
順にソートされている。各レコードR7は、格納された
固有疑似単語のワードリストWL中での出現頻度を表す
「サイズ」を有し、仮想アドレステーブルVAT中の所
定のレコードR8に対応付けられる。
【0025】仮想アドレステーブルVATはレコードR
8を複数有し、各レコードR8には、ユニーク符号とワ
ード内アドレスとの組である「仮想アドレス」が格納さ
れる。この仮想アドレスは、欧文基本テーブルEBT中
の固有疑似単語に対応するものである。ここで、レコー
ドR7のサイズが複数である場合には、当該レコードR
7に複数のレコードR8が対応付けられる。この対応付
けの具体的内容は、図12に示す和文最下層テーブルJ
2−1のレコードR2と、文字アドレステーブルCAT
のレコードR1との対応付けと同様であるので、その説
明を省略する。
【0026】(2)検索システム5の構成 一方、図1(b)は構築システム1により構築された全
文データベースに対して、各種の検索処理を行う検索シ
ステム5の構成を示す図である。この検索システム5
は、データベースのユーザーによって用いられることが
想定される。電子出版においては、そのユーザーが当該
システム5を用いて、CD−ROM等に記憶された全文
データベースに対して各種の検索処理を行う。
【0027】図1(b)において、6はキーボード等の
入力装置であり、ユーザー(使用者)により入力される
指示に応じた指示データを検索処理装置7(後述する)
へ供給する。検索処理装置7は、一般的なパーソナルコ
ンピュータであり、図示せぬCPU、ROM、RAMお
よび各種I/Oインタフェースを有する。この検索処理
装置7はRAMに記憶される検索プログラムを実行し、
入力装置6から供給される指示データに応じた検索処理
を行う。この検索処理の内容は後に詳述する。
【0028】8はCD−ROMドライブであり、検索処
理装置7に制御され、挿入されるCD−ROMに記憶さ
れた情報を読み取る。9は検索処理装置7から供給され
る表示データに応じて、検索メニューや検索結果等を表
示するディスプレイ、10はプリンタであり、検索処理
装置7から供給される出力データに応じて、検索結果を
出力する。
【0029】(3)全文データベース構築処理 次に、構築処理装置3(図1(a)参照)がRAMに記
憶されたプログラムを実行して行う全文データベース構
築処理について、以下に説明する。ここでは、和文と欧
文が混在した文書データ(図3参照)をデータベース化
する場合について説明する。
【0030】まず、全文データベース構築に先だって、
図1(a)に示す構築システム1において、入力装置2
から文書データが入力される。この文書データは、構築
処理装置3を介して記憶装置4に供給され、ここで記憶
される。以下に説明する各処理は、記憶装置4に記憶さ
れた文書データに対して為される。文書データの入力処
理が終了し、入力装置2から所定の指示データが入力さ
れると、構築処理装置3は、図2のフローチャートに表
されるプログラムを実行する。
【0031】まず、ステップSA1では、文書データ
(図3参照)に位置マークを付加する。この位置マーク
とは、任意のキーワードの前後に挿入される特定の文字
であり、例えば、’@’のように、文書データ中に存在
しない記号を用いる。図4は、上述したマーク付加処理
が行われた後の文書データを示す図であり、この図にお
いて、”東京都”および”京都”という文字列(キーワ
ード)の前後には位置マーク’@’が挿入されている。
【0032】上述したマーク付加処理を行わない場
合、”京都”という地名を全文検索すると、”京都”は
もちろん、”東京都”まで抽出してしまう。マーク付加
処理は、このような無意味な抽出を避ける為に行われる
処理であり、全文検索において、検索文字列として”@
京都@”という文字列を入力すると、”@京都@”のみ
が抽出され、”@東京都@”は抽出されないという結果
を得ることができる。
【0033】次に、ステップSA2(図2参照)では、
文書データにアドレスが付与される。図5に示すよう
に、アドレスには文字アドレスとワードアドレスがあ
り、文字アドレスは文書データ全体に付与され、ワード
アドレスはアルファベットや数字等が連続する欧文範囲
EAに付与される。例えば、図5の和文範囲JAにおい
て、先頭文字’多’の文字アドレスは「1」、それに続
く文字’角’の文字アドレスは「2」となり、欧文範囲
EAにおいて、先頭文字’w’の文字アドレスは「31
7」となる。また、欧文範囲EAにおいて、先頭のワー
ド”world”のワードアドレスは「1」、それに続
くワード”wide”のワードアドレスは「2」とな
る。
【0034】後述する各処理において、欧文範囲EAに
はワード単位の処理が行われるため、欧文範囲EAにお
いて、文字アドレスを記憶する必要はない。しかしなが
ら、和文範囲JAとの位置関係を把握するために、欧文
範囲EAの最初および最後の文字アドレスを記憶装置4
(図1(a)参照)に記憶する。これらの文字アドレス
間の文書データは、後述する各処理において、欧文範囲
EAとみなされ、ワード単位の処理を施される。
【0035】次に、ステップSA3(図2参照)では、
欧文範囲EAのワードリストWLを作成する。まず、図
5の文書データの欧文範囲EAに出現する全てのワード
を抽出し、図6に示すように、欧文対照テーブルCTを
作成する。次に、欧文対照テーブルCT中の各レコード
R11を、各ワードの文字コード順およびワードアドレ
ス順にソートする。すると、同一のワード(例えば、図
6中のワード”world”参照)を有する複数のレコ
ードR11が隣接する。
【0036】次に、ソートされた各レコードR11から
ユニークな固有ワードを抽出し、ワードリストWL(図
7参照)の各レコードR6に格納するとともに、ワード
アドレスを有するレコードR5を複数作成し、ワードア
ドレステーブルWATを作成する。ワードリストWLの
各レコードR6に設けられるポインタは、ワードアドレ
ステーブルWAT中のレコードR5を指し示す。
【0037】この際、ポインタにより対応付けられるレ
コードR6の固有ワードとレコードR5のワードアドレ
スとは、欧文対照テーブルCTにおいて同一レコードR
11内に格納されていたもの同士となる。また、欧文対
照テーブルCTにおいて、同一のワードを有するレコー
ドR11が複数存在していた場合、そのワードに一致す
る固有ワードを有するワードリストWL中のレコードR
6には、当該ワードの欧文対照テーブルCT内での出現
数がサイズとして格納される。例えば、ワード”hel
p”は、欧文対照テーブルCT(図6参照)中に2つ出
現するので、ワードリストWLの固有ワード”hel
p”を有するレコードR6のサイズは「2」となる。
【0038】さらに、ワードリストWLの各レコードR
6には、固有のユニーク符号「A」,「B」,「C」,
・・・が付与され、各レコードR6の固有ワードを構成
する文字には、ワード内アドレスが付与される。例え
ば、固有ワード”can”に付与されるユニーク符号は
「A」であり、固有ワードを構成する文字’c’に対す
るワード内アドレスは「1」である。こうして作成され
たワードリストWLは、記憶装置4(図1(a)参照)
に記憶される。
【0039】次に、ステップSA4(図2参照)では、
文書データまたはワードリストWLから疑似単語を抽出
する。これに続くステップSA5では、抽出された疑似
単語を用いて、和文最下層テーブルJ2−1および欧文
基本テーブルEBTを作成する。これらの抽出処理およ
び作成処理は、文書データの形式により異なる為、以
下、欧文範囲EAと和文範囲JAとに分けて説明する。
【0040】A:欧文範囲EAに対する処理 欧文範囲EAにおいて、まず、ワードリストWL(図7
参照)から、文字列長が「2」である疑似単語を抽出す
る。この抽出処理は、各固有ワードの先頭から末尾にか
けて行われ、例えば、固有ワード”can”からは、”
ca”,”an”という疑似単語が抽出される。こうし
て抽出された複数の疑似単語は、図8に示すような構成
の疑似単語テーブルPWTの各レコードR9に格納され
る。
【0041】疑似単語テーブルPWTにおいて、疑似単
語が格納されたレコードR9は、当該レコードR9が有
する疑似単語の抽出元の固有ワードに付与されたユニー
ク符号と、その疑似単語の先頭文字のワード内アドレス
とから構成される「仮想アドレス」を有する。例えば、
疑似単語”an”を有するレコードR9は、抽出元の固
有ワード”can”に付与されたユニーク符号「A」
と、疑似単語”an”の先頭文字’a’のワード内アド
レス「2」とから構成される仮想アドレス「A−2」を
有する。
【0042】そして、ワードリストWL作成時と同様
に、疑似単語テーブルPWT内の各レコードR9を各疑
似単語の文字コード順にソートし、ユニークな固有疑似
単語を抽出する。ここで、抽出された固有疑似単語は、
図9に示す欧文基本テーブルEBTに格納される。ま
た、疑似単語テーブルPWT内の仮想アドレスのみで構
成される仮想アドレステーブルVATを作成する。図9
に示すように、欧文基本テーブルEBTの各レコードR
7に設けられるポインタは、仮想アドレステーブルVA
T中の対応するレコードR8を指し示す。
【0043】また、ワードリストWL作成時と同様に、
疑似単語テーブルPWTにおいて、同一の疑似単語が複
数存在していた場合、その疑似単語と同一の固有疑似単
語を有するレコードR7には、その疑似単語の出現数が
「サイズ」として格納される。こうして、図9に示す欧
文基本テーブルEBTが作成される。
【0044】B:和文範囲JAに対する処理 和文範囲JAにおいては、まず、文書データ(図5参
照)から、文字列長が「2」である疑似単語を抽出す
る。この抽出処理は、和文範囲JAの先頭から末尾にか
けて行われ、例えば、図5の文書データからは、順に”
多角”,”角経”という疑似単語が抽出される。抽出さ
れた疑似単語は、図10に示すような和文疑似単語テー
ブルJPTの各レコードR10に格納される。
【0045】和文疑似単語テーブルJPTにおいて、疑
似単語が格納されたレコードR10は、当該疑似単語の
先頭文字の「文字アドレス」を有する。例えば、疑似単
語”多角”を有するレコードR10は、疑似単語の先頭
文字’多’の文字アドレス「1」を有する。そして、ワ
ードリストWLや疑似単語テーブルPWT作成時と同様
に、各レコードR10を疑似単語の文字コード順にソー
トし、ユニークな固有疑似単語を抽出する。
【0046】ここで、抽出された固有疑似単語は、図1
1に示す和文最下層テーブルJ2−1に格納される。ま
た、和文疑似単語テーブルJPT内の文字アドレスのみ
で構成される文字アドレステーブルCATを作成する。
図11に示すように、和文最下層テーブルJ2−1の各
レコードR2に設けられるポインタは、文字アドレステ
ーブルCAT中の対応するレコードR1を指し示す。
【0047】また、和文疑似単語テーブルJPT(図1
0参照)において、同一の疑似単語が複数存在していた
場合、その疑似単語に一致する固有疑似単語を有するレ
コードR2には、当該疑似単語の文書データ中での出現
数が「サイズ」として格納される。こうして、図11に
示す和文最下層テーブルJ2−1が作成される。上述し
たように、欧文基本テーブルEBTおよび和文最下層テ
ーブルJ2−1が作成されると、処理はステップSA6
へ進む。
【0048】ステップSA6において、最上層の和文テ
ーブル(最初は和文最下層テーブルJ2−1)中のレコ
ード数が所定数n(例えば、n=500)以上であるか
否かが判断される。この判断が「Yes」であれば、処
理はステップSA7へ進み、「No」であれば、処理は
ステップSA8へ進む。
【0049】上記ステップSA6での判断により、必要
に応じて、和文テーブルが階層化されるのだが、ここ
で、当該階層化を行う理由を説明する。前述したよう
に、和文に用いられる文字種は約7千種と多く、文書デ
ータから抽出される固有疑似単語の種類、すなわち、和
文最下層テーブルJ2−1のレコードR2の数は極めて
大となる。後述する検索処理は、検索文字列に対応する
固有疑似単語を抽出する処理を繰り返して行われるた
め、検索対象となるテーブル(例えば、和文最下層テー
ブルJ2−1)のレコードR2の数が多いと、所定の時
間内に検索処理を終了することができない。
【0050】ここで、和文最下層テーブルJ2−1のレ
コードR2の数が多い場合には、図12に示すように、
上層のテーブル(和文最上層テーブルJ2−2)を作成
し、上層のテーブルで検索文字列に対応する固有疑似単
語を抽出できなかった場合には、下層テーブル(和文最
下層テーブルJ2−1)の所定の範囲で、固有疑似単語
を抽出するようにする。すると、比較すべき固有疑似単
語の数が減少し、所定の応答時間で検索処理を行うこと
ができる。
【0051】なお、欧文基本テーブルEBTに関して上
記階層化を行わないのは、当該テーブルEBT中の各固
有疑似単語は、文字種の少ないアルファベットや数字等
の組み合わせであるために、そのレコード数は、和文最
下層テーブルJ2−1のレコード数に較べて極めて少な
く(同一綴りの疑似単語が多い)、欧文基本テーブルE
BTのみでも十分な応答時間を得ることができるからで
ある。
【0052】ステップSA7は、ステップSA6での判
断が「Yes」となった場合の処理であり、ここでは、
既に作成された和文テーブルに対して上層の和文テーブ
ルを作成する。例えば、図10の和文最下層テーブルJ
2−1に対して、図11に示すように、和文最上層テー
ブルJ2−2を作成する。この和文最上層テーブルJ2
−2の各レコードR3には、”@東”や”経常”等の和
文最下層テーブルJ2−1から抽出された固有疑似単語
が格納される。また、各レコードR3は「ポインタ」を
有し、和文最下層テーブルJ2−1中の同一固有疑似単
語を有するレコードR2に対応付けられる。
【0053】なお、各レコードR3が有する固有疑似単
語は、隣接するレコードR3に対応する各レコードR2
間の距離(2つのレコードR2に含まれるレコードR2
の数)が、例えば、99となるように抽出される。この
距離は和文最下層テーブルJ2−1のレコード数に応じ
て設定される。そして、処理はステップSA6に戻る。
こうして、最上層の和文テーブルのレコード数が所定数
n未満となるまで、上述した階層化処理が行われる。図
12に示す例では、和文最上層テーブルJ2−2のレコ
ード数は所定数n(例えば、n=500)未満となるの
で、和文テーブルの階層は2段となる。
【0054】ステップSA8は、最上層の和文テーブル
のデータ数が所定数n未満となり、ステップSA6での
判断が「No」となる場合の処理であり、和文最下層テ
ーブルJ2−1に対する1文字テーブルJ1が作成され
る。和文には漢字が用いられるため、「山」や「川」等
の1文字の検索文字列による検索が行われる場合があ
る。こうした1文字検索をも所定の応答速度で実現する
為に、1文字テーブルJ1が作成される。
【0055】1文字テーブルJ1の作成過程を以下に説
明する。まず、図12に示す和文最下層テーブルJ2−
1から各固有疑似単語の先頭文字をレコード順に抽出す
る。各レコードR2は、既に文字コード順にソートされ
ている為、同一の文字が連続して抽出される。次に、抽
出された文字群からユニークな文字を抽出し、抽出元の
文字群に含まれる同一文字の数(サイズ)とともに、1
文字テーブルJ1の各レコードR4に格納する。
【0056】また、各レコードR4はポインタを有し、
和文最下層テーブルJ2−1内の抽出元レコードR2に
対応付けられる。こうして、1文字テーブルJ1が作成
される。そして、例えば、図7のワードアドレステーブ
ルWAT,ワードリストWLと、図9の仮想アドレステ
ーブルVAT,欧文基本テーブルEBTと、図12の文
字アドレステーブルCAT,和文最下層テーブルJ2−
1,和文最上層テーブルJ2−2,1文字テーブルJ1
と、欧文範囲EAの最初および最後の文字アドレスと
が、インデックスファイルとして、記憶装置4に記憶さ
れる。また、図5に示すような文書データが実データフ
ァイルとして記憶装置4に記憶され、全文データベース
が構築される。
【0057】(4)全文検索処理 次に、上述した過程を経て構築された全文データベース
に対して、検索処理装置7(図1(b)参照)が行う全
文検索処理について、図面を参照して説明する。図1
3,図14は検索処理装置7のRAMに予め記憶される
全文検索プログラムのフローチャートである。まず、検
索システム5において、CD−ROMドライブ8に、全
文データベースが記憶されたCD−ROMが挿入され、
入力装置6から所定の指示データが供給されと、検索処
理装置7はステップSB1を実行する。
【0058】ステップSB1では、所定の表示データを
ディスプレイ9へ供給し、例えば、図15に示す検索メ
ニューを表示させる。ユーザーは、表示された検索メニ
ューに応じて、入力装置6を操作し、後述する検索モー
ド、順位モードおよび指定距離等を設定する。検索モー
ドには1つの検索文字列を検索する通常検索モードの他
に、複数の検索文字列を文脈上の関係を意識して検索す
る文脈意識モードがあり、ユーザーは入力装置6を操作
して入力フィールド11へ所定の文字を入力し、どちら
かのモードを選択する。
【0059】文脈意識モードを選択した場合、ユーザー
は複数の検索文字列間の前後関係を意識するか否か(順
位モード)を指定する必要がある。また、文脈意識モー
ドでは、複数の検索文字列間の距離(先頭文字アドレス
の差)の上限を指定する必要がある。したがって、ユー
ザーは入力フィールド12に順位モードを指定する文字
を入力し、入力フィールド13に距離の上限を表す数値
(指定距離)を入力する。
【0060】次に、ステップSB2では、ユーザーが入
力装置6を操作し、図15の文字列入力フィールド1
4、あるいは文字列入力フィールド15へ検索文字列を
入力する。そして、入力装置6から所定の指示データが
供給されると、検索処理装置7は、検索メニュー上の各
入力フィールド11〜15に入力された各種のデータを
読み取り、これらのデータをRAMに記憶する。そし
て、処理はステップSB3へ進む。
【0061】ステップSB3では、検索文字列の各文字
に文字アドレスを付与し、検索文字列を2文字単位に分
割して、複数の検索用疑似単語を抽出する。例えば、図
17に示す”経営危機”という検索文字列からは”経
営”と”危機”という検索用疑似単語が抽出される。検
索文字列が2文字以下の長さであれば、上記抽出処理は
行われない。
【0062】次に、ステップSB4では、各検索用疑似
単語に一致する固有疑似単語を有するレコードを、記憶
装置4に記憶されたインデックスファイルから検索す
る。この検索処理は各検索用疑似単語の文字コードSC
と、インデックスファイル中の各固有疑似単語の文字コ
ードVCとを比較することにより行われる。ここで、検
索処理に使用されるテーブルは、欧文範囲EAでの検索
では欧文基本テーブルEBT、和文範囲JAでの検索で
は最上層の和文テーブル(例えば、和文最上層テーブル
J2−2)あるいは1文字テーブルJ1となる。そし
て、ステップSB5では、上記検索処理が全ての検索用
疑似単語に対して完了したか否かを判断する。この判断
が「No」の場合はステップSB6へ、逆に「Yes」
の場合はステップSB9へ処理が進む。
【0063】ステップSB6は、検索用疑似単語に対す
る検索処理が完了しなかった場合の処理であり、検索対
象となっている和文テーブルが最下層のテーブル(例え
ば、和文最下層テーブルJ2−1)であるか否かを判断
する。この判断が「No」の場合はステップSB7へ、
逆に「Yes」の場合はステップSB18(図14参
照)へ処理が進む。
【0064】ステップSB7は、検索対象となっている
和文テーブルが、さらに下層のテーブルを有する場合の
処理である。ここでは、検索対象となっている和文テー
ブル(例えば、和文最上層テーブルJ2−2)におい
て、検索用疑似単語の文字コードSCより小さく、最も
文字コードSCに近い文字コードVCの固有疑似単語を
有するレコード(以後、近似レコードと称す)を抽出す
る。
【0065】そして、検索対象とする和文テーブルを1
段下層のテーブル(例えば、和文最下層テーブルJ2−
1)とし、このテーブルの特定範囲に対して、上層のテ
ーブルに対する場合と同様な検索処理が施される。ここ
で、特定範囲とは、上層のテーブル中の近似レコードに
対応付けられた下層テーブル中のレコード、および、こ
のレコードに後続する99のレコードからなる。この検
索処理が終了すると、処理はステップSB5へ戻る。ス
テップSB9は、ステップSB5での判断が「Yes」
となる場合の処理であり、検索された各レコードが有す
る各種アドレスを抽出する。
【0066】検索されたレコードが和文テーブル(例え
ば、和文最上層テーブルJ2−2)に存在する場合は、
当該レコードに対応付けられた最下層の和文テーブル
(例えば、和文最下層テーブルJ2−1)中のレコード
を抽出し、当該レコードに対応付けられる文字アドレス
を抽出する。ここで抽出された最下層の和文テーブル中
のレコードが有するサイズが複数である場合は、上記文
字アドレスおよび後続する文字アドレス群から、順に、
サイズの数だけ文字アドレスを抽出する。
【0067】また、検索文字列が1文字である場合に
は、1文字テーブルJ1中の抽出されたレコードに対応
付けられる最下層の和文テーブル中のレコードを抽出す
る。この際、1文字テーブルJ1中の検索されたレコー
ドのサイズが複数であれば、当該レコードに対応付けら
れた和文最下層テーブルJ2−1のレコードおよびこの
レコードに後続するレコード群から、順に、サイズの数
だけレコードを抽出する。こうして抽出された和文最下
層テーブルJ2−1中の各レコードに対応する文字アド
レスを抽出し、昇順にソートする。
【0068】次に、ステップSB10では、各検索用疑
似単語に対応して抽出された文字アドレス群のうち、各
検索用疑似単語間の距離に相当する差を有する文字アド
レスの組を抽出し、抽出された組の先頭アドレスを抽出
する。例えば、図17に示すように、検索文字列が”経
営危機”であれば、検索用疑似単語”経営”および”危
機”間の距離は2である。
【0069】したがって、検索用疑似単語”経営”に対
応して抽出された文字アドレスと、検索用疑似単語”危
機”に対応して抽出された文字アドレスとの差が2とな
る組を抽出する。この際、各検索用疑似単語に対応する
文字アドレス群はソートされている為に、各々のアドレ
ス群から小さい順に文字アドレスを抽出し、これらを比
較することにより、差が2となる文字アドレスの組が容
易に抽出される。そして、抽出された文字アドレスの組
の先頭文字アドレス(”経営危機”の場合は’経’に対
応する文字アドレス)が抽出される。
【0070】また、検索文字列がアルファベットであ
り、例えば、欧文基本テーブルEBTから1つあるいは
複数のレコードR7が抽出された場合には、まず、当該
レコードR7に対応付けられた仮想アドレステーブルV
AT中のレコードR8を抽出する。そして、抽出された
レコードR8において、仮想アドレスのユニーク符号が
同一のレコードR8について、ワード内アドレスの差が
例えば、2となる仮想アドレスの組を抽出し、抽出され
た組の先頭文字アドレスを抽出する。
【0071】ここで、例えば、検索用文字列が”wor
ld”であれば、検索用疑似単語”wo”と”rl”と
の間隔は2、検索用疑似単語”rl”と”ld”との間
隔は1である。したがって、検索用疑似単語”wo”に
対応して抽出された仮想アドレス群と、検索用疑似単
語”rl”に対応して抽出された仮想アドレス群とか
ら、ユニーク符号が「A」であり、かつ、ワード内アド
レスの差が2となる仮想アドレスの組を抽出し、こうし
て抽出された仮想アドレスと、検索用疑似単語”ld”
に対応して抽出され、ユニーク符号が「A」である仮想
アドレスとから、ワード内アドレスの差が1となる仮想
アドレスの組を抽出する。
【0072】そして、抽出された組の仮想アドレスのう
ち、先頭の仮想アドレス中のユニーク符号からワードリ
ストWL中のワードを特定する。特定されたワードに
は、ワードアドレスが対応付けられており、かつ、欧文
範囲EAの先頭ワードには、和文範囲JAから連続する
文字アドレス「317」も対応付けられているため、文
書データ中における文字アドレスが得られる。もちろ
ん、検索文字列が1文字である場合には、上述した連続
性判断は行われない。
【0073】次に、ステップSB11では、文脈意識検
索か否かが判断される。この判断が「Yes」であれば
ステップSB12へ、「No」であればステップSB1
3へ処理が進む。ステップSB12は、文脈意識検索で
ある場合の処理である。文脈意識検索であれば、検索文
字列は複数(ここでは、説明を簡略化するために2つと
する。以後、各検索文字列を第1の検索文字列、第2の
検索文字列と称す)であり、ここでは、第1および第2
の検索文字列に対する検索処理が終了したか否かが判断
される。この判断が「No」であれば、ステップSB3
へ処理が戻り、未処理の検索文字列に対して上述した検
索処理が施される。逆に、「Yes」であればステップ
SB13へ処理が進む。
【0074】ステップSB13では、第1の検索文字列
に対応して抽出される先頭文字アドレス群と第2の検索
文字列に対応して抽出される先頭文字アドレス群とが比
較され、両者の差が指定距離以下となる文字アドレスの
組(以後、範囲内アドレス組と称す)を抽出する。この
際、2つの文字アドレスで規定される文書データ中に、
キャリッジリターン等の区切り記号が存在する場合に
は、両者の差が指定距離以下であっても、範囲内アドレ
ス組から除外される。
【0075】次に、ステップSB14では、範囲内アド
レス組の数が1以上であるか否かが判断される。この判
断が「Yes」であればステップSB15へ、「No」
であればステップSB18へ処理が進む。ステップSB
15では、順位指定があるか否かが判断される。この判
断が「Yes」であればステップSB16へ、「No」
であればステップSB17へ処理が進む。
【0076】ステップSB16は、順位指定があった場
合の処理であり、範囲内アドレス組内の文字アドレスの
順序が、指定された順序と一致する組(以後、順序一致
アドレス組と称す)を抽出する。ここで抽出される組が
0でない場合には、処理はステップSB17へ進む。逆
に、当該組が存在しない場合には処理はステップSB1
8へ進む。
【0077】ステップSB17では、まず、各検索文字
列に対応した先頭文字アドレス群に含まれる先頭文字ア
ドレスの数に応じた表示データをディスプレイ9へ供給
する。これにより、ディスプレイ9に表示されている検
索メニューの出力フィールド16に、抽出されたデータ
数が表示される。これを視認したユーザーが、入力装置
6を操作し、所定の指示データを検索処理装置7へ供給
すると、当該装置7は、先頭文字アドレス群中の文字ア
ドレスを有する文書データに応じた表示データをディス
プレイ9へ供給する。
【0078】こうして、図16に示すように、検索結果
がディスプレイ9上に表示される。この際、文書データ
中の検索文字列に一致する文字列は、例えば、反転表示
され、他の文字列と区別される。また、文脈意識モード
であった場合には、指定範囲外あるいは順位が一致しな
かった先頭文字アドレスの文字列に下線が付される。こ
こで、ユーザーは、入力装置6を操作し、他の検索結果
等をディスプレイ9上に表示させる。
【0079】また、ステップSB18は、ステップSB
6、ステップSB14、あるいはステップSB16にお
いて、検索対象文字列に一致する文字列を検索できなか
ったと判断された場合の処理であり、ディスプレイ9へ
所定の表示データを供給し、「指定された条件の検索文
字列は文書中に存在しませんでした」等のメッセージを
表示させる。
【0080】以上説明したように、本発明の一実施例に
よれば、文字列長が2の固有疑似単語を有する和文テー
ブルを階層的に構築する為に、和文テーブル自体のサイ
ズを大きくすることなく、検索効率に優れた全文検索を
行うことができる。また、1文字テーブルを設けた為
に、文字列長が1の検索文字列に対する検索処理を迅速
に行うことができる。さらに、ワードリストWLおよび
欧文基本テーブルEBTを作成した為に、各固有疑似単
語に対応するサイズを適度な大きさとすることができ、
検索効率を向上させることができる。
【0081】また、欧文範囲EAにおいて、ワード単位
よりも小さな疑似単語単位での検索が可能になるため
に、語尾変化したワードを一度に検索することができ
る。例えば、入力装置6を介して”econ”という検
索文字列を入力すると、”economic”,”ec
onomy”というワードを抽出することができる。
【0082】なお、上述した一実施例においては、CD
−ROMに全文データベースを記憶させる例を示した
が、十分な記憶容量を有する記憶媒体であれば、CD−
ROMでなくともよい。また、検索処理装置7はワーク
ステーション等でも良く、パーソナルコンピュータであ
る必要はない。さらに、1段下層のテーブルを分割する
単位は99である必要はなく、固有疑似単語の数に応じ
て設定することが望ましい。あるいは、検索作業をその
レコードで終了させるストップレコードを挿入するよう
にしてもよい。
【0083】また、上述した一実施例においては、疑似
単語の文字数を2文字として説明したが、2文字に限定
されるものではなく、例えば、3文字、4文字、…とい
うように複数文字であればよい。もちろん、疑似単語の
文字数は、データベースの内容や検索処理の特徴等に応
じて設定される。例えば、電子出版において、文書デー
タが一般的な日本文である場合には、2文字程度に設定
される。
【0084】さらに、上述した一実施例では、電子出版
に適用する例を示した為に、構築システム1が全文デー
タベースの提供者に使用され、検索システム5が全文デ
ータベースのユーザーに使用されるように、それぞれ個
別のシステムとして構成されるが、両者を一体のシステ
ムとして構成し、電子出版以外の分野で用いられる一般
的な全文データベースに対して適用可能であることは言
うまでもない。
【0085】
【発明の効果】以上説明したように、本発明によれば、
アドレス付与手段が、文書データ中の各文字に連続する
アドレスを付与し、アドレステーブル作成手段が、前記
文書データ中の各文字と後続する文字とで構成される合
計k文字(kは2以上)の疑似単語を作成し、各疑似単
語の先頭文字列に付与される各アドレスを、対応する疑
似単語の文字コード順にアドレステーブルへ記憶する。
そして、最下層構築手段が、固有の文字コードを有する
疑似単語を固有疑似単語として前記インデックステーブ
ル群中の最下層テーブルへ文字コード順に記憶するとと
もに、各固有疑似単語に前記アドレステーブル中の各ア
ドレスを対応付ける。また、判断手段が前記インデック
ステーブル群中の最上層テーブルに記憶される固有疑似
単語数が所定数以上であるか否かを判断し、固有疑似単
語数が所定数以上である判断された場合は、階層化手段
が前記最上層テーブルを略均等に分割するように複数の
固有疑似単語を抽出して前記最上層テーブルの上層のテ
ーブルを作成して新たな最上層テーブルとする。そし
て、階層化手段は、判断手段によって最上層テーブルに
記憶される固有疑似単語数が所定数未満と判断されるま
で、上述した新たな最上層テーブルを繰り返し作成す
る。さらに、前記インデックステーブル群は、合計k文
字未満の疑似単語に対応したテーブルをも有している。
インデックステーブル群は、このような階層構造を有す
るので、検索時において、十分な検索速度を得ることが
できるという効果がある。また、インデックステーブル
群中の各テーブルに記憶される疑似単語は、固有の文字
コードを有する固有疑似単語であるので、インデックス
テーブル群のサイズが小となるという効果を得ることが
できる。さらに、インデックステーブル群が、合計k文
字未満の疑似単語に対応したテーブルをも有しているの
で、k文字数未満の検索文字列による検索がなされる場
合においても所定の応答速度で検索処理が可能になると
いう効果を得ることができる。
【図面の簡単な説明】
【図1】本発明の一実施例による全文データベースシス
テムの概略構成を示すブロック図である。
【図2】同実施例による全文データベース構築処理の流
れを示すフローチャートである。
【図3】同実施例で用いられる文書データの一例を示す
図である。
【図4】マーク付加処理が行われた文書データの一例を
示す図である。
【図5】各種アドレスが付与された文書データの一例を
示す図である。
【図6】欧文対照テーブルCTの概略構成を示す図であ
る。
【図7】ワードアドレステーブルWATおよびワードリ
ストWLの概略構成を示す図である。
【図8】疑似単語テーブルPWTの概略構成を示す図で
ある。
【図9】仮想アドレステーブルVATおよび欧文基本テ
ーブルEBTの概略構成を示す図である。
【図10】和文疑似単語テーブルJPTの概略構成を示
す図である。
【図11】文字アドレステーブルCATおよび和文最下
層テーブルJ2−1の概略構成を示す図である。
【図12】和文最上層テーブルJ2−2および1文字テ
ーブルJ1等の概略構成を示す図である。
【図13】本発明の一実施例による全文データベースシ
ステムにおける検索処理の流れを示すフローチャートで
ある。
【図14】同システムにおける検索処理の流れを示すフ
ローチャートである。
【図15】検索メニューの一例を示す図である。
【図16】検索結果の一例を示す図である。
【図17】検索文字列の一例を示す図である。
【符号の説明】
3 構築処理装置(アドレス付与手段、アドレス
テーブル作成手段、最下層構築手段、階層化手段) 6 入力装置(入力手段) 7 検索処理装置(分割手段、検索手段) CAT 文字アドレステーブル(アドレステーブル) J2−1 和文最下層テーブル(最下層テーブル) J2−2 和文最上層テーブル(上層テーブル)
───────────────────────────────────────────────────── フロントページの続き (72)発明者 奈良 雅人 東京都台東区台東一丁目5番1号 凸版 印刷株式会社内 (72)発明者 濱谷 群二 東京都台東区台東一丁目5番1号 凸版 印刷株式会社内 (56)参考文献 特開 昭62−197822(JP,A) 特開 平3−118661(JP,A) 菊池忠一,「日本語文書用高速全文検 索の一手法」,電子情報通信学会論文誌 (D−▲I▼),Vol.J75−D−▲ I▼,No.9,1992年9月25日,p. 836−846 菊地芳秀、小川隆一、高橋恒介、杉本 欽一、金田悟,「全文検索の技術動向と システム事例」,情報処理学会研究報告 (92−FI−25),Vol.92,No. 32,1992年5月12日,p.1−8 (58)調査した分野(Int.Cl.7,DB名) G06F 17/30 G06F 12/00 520 JICSTファイル(JOIS)

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 検索文字列に一致する文字列を文書デー
    タから抽出する全文データベースシステムであって、 連続するアドレスが付与された前記文書データ中の各文
    字、および当該各文字に後続する文字から構成される合
    成k文字(kは2以上)の各疑似単語の先頭文字列に付
    与された各アドレスを、対応する疑似単語の文字コード
    順に記憶するアドレステーブルと、 階層構造を有するテーブル群であって、固有の文字コー
    ドを有する疑似単語を固有疑似単語として文字コード順
    に記憶するとともに、各固有疑似単語に前記アドレステ
    ーブル中の各アドレスが対応付けられる最下層テーブ
    ル、この最下層テーブルの上層に構築される複数の上層
    テーブルからなり、各上層テーブルは1段下層のテーブ
    ルを略均等に分割する位置に記憶された固有疑似単語を
    文字コード順に記憶する階層構造をなし、最上層テーブ
    ルに記憶された固有疑似単語の数が所定数未満となるよ
    う構成されるインデックステーブル群と、 検索文字列を入力する入力手段と、 該入力手段から供給される前記検索文字列をk文字単位
    に分割し、複数の検索用疑似単語を生成する分割手段
    と、 前記各検索用疑似単語と文字コードが同一である固有疑
    似単語を前記インデックステーブル群から抽出する抽出
    処理を行い、抽出された各固有疑似単語に対応する各ア
    ドレスの差から前記文書データ中で連続して存在する固
    有疑似単語の組を特定するとともに、前記組に対応する
    アドレス群に応じた文書データ中の文字列を出力する検
    索手段とを具備し、 前記検索手段は、前記検索用疑似単語と文字コードが一
    致する固有疑似単語が検索対象となるテーブル中に存在
    しない場合には、前記検索用疑似単語より小なる文字コ
    ードの固有疑似単語群から最も前記検索用疑似単語に近
    い文字コードの最小疑似単語と、この最小疑似単語の直
    後に記憶される最大疑似単語とを抽出するとともに、1
    段下層のテーブルを検索対象とし、当該1段下層のテー
    ブルにおいて、前記最小疑似単語に一致する文字コード
    の固有疑似単語と、前記最大疑似単語に一致する文字コ
    ードの固有疑似単語とに挟まれる範囲に対して前記抽出
    理を施し、 前記インデックステーブル群は、合計k文字未満の疑似
    単語に対応したテーブルをも有し、前記検索手段は前記
    検索文字列の長さに応じて前記検索対象とするテーブル
    を変更する ことを特徴とする全文データベースシステ
    ム。
  2. 【請求項2】 階層構造を有するインデックステーブル
    群を用いて、検索文字列に一致する文字列を文書データ
    から抽出する全文データベースシステムであって、 前記文書データ中の各文字に連続するアドレスを付与す
    るアドレス付与手段と、 前記文書データ中の各文字と後続する文字とで構成され
    る合計k文字(kは2以上)の疑似単語を作成し、各疑
    似単語の先頭文字に付与される各アドレスを、対応する
    疑似単語の文字コード順にアドレステーブルへ記憶する
    アドレステーブル作成手段と、 固有の文字コードを有する疑似単語を固有疑似単語とし
    て前記インデックステーブル群中の最下層テーブルへ文
    字コード順に記憶するとともに、各固有疑似単語に前記
    アドレステーブル中の各アドレスを対応付ける最下層構
    築手段と、 前記インデックステーブル群中の最上層テーブルに記憶
    される固有疑似単語数が所定数以上であるか否かを判断
    する判断手段と、 前記判断手段により前記固有疑似単語数が所定数以上で
    あると判断された場合、前記最上層テーブルを略均等に
    分割するように複数の固有疑似単語を抽出して前記最上
    層テーブルの上層のテーブルを作成して新たな最上層テ
    ーブルとし、前記判断手段により、新たに作成された最
    上層テーブル内の固有疑似単語数が所定数未満と判断さ
    れるまで、前記上層のテーブルを繰り返し作成する階層
    化手段と、 前記 検索文字列を入力する入力手段と、 該入力手段から供給される前記検索文字列をk文字単位
    に分割し、複数の検索用疑似単語を生成する分割手段
    と、 前記インデックステーブル群から前記検索用疑似単語と
    文字コードが同一である固有疑似単語を抽出する抽出処
    理を行い、抽出された各固有疑似単語に対応する各アド
    レスの差から前記文書データ中で連続して存在する固有
    疑似単語の組を特定するとともに、前記組に対応するア
    ドレス群に応じた文書データ中の文字列を出力する検索
    手段とを具備し、 前記検索手段は、前記検索用疑似単語と文字コードが一
    致する固有疑似単語が検索対象となるテーブル中に存在
    しない場合には、前記検索用疑似単語より小なる文字コ
    ードの固有疑似単語群から最も前記検索用疑似単語に近
    い文字コードの最小疑似単語と、この最小疑似単語の直
    後に記憶される最大疑似単語とを抽出するとともに、1
    段下層のテーブルを検索対象とし、当該1段下層のテー
    ブルにおいて、前記最小疑似単語に一致する文字コード
    の固有疑似単語と、前記最大疑似単語に一致する文字コ
    ードの固有疑似単語とに挟まれる範囲に対して前記抽出
    処理を施し、 前記インデックステーブル群は、合計k文字未満の疑似
    単語に対応したテーブルをも有し、前記検索手段は前記
    検索文字列の長さに応じて前記検索対象とするテーブル
    を変更することを特徴とする全文データベースシステ
    ム。
JP05204351A 1993-08-18 1993-08-18 全文データベースシステム Expired - Fee Related JP3079844B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP05204351A JP3079844B2 (ja) 1993-08-18 1993-08-18 全文データベースシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP05204351A JP3079844B2 (ja) 1993-08-18 1993-08-18 全文データベースシステム

Publications (2)

Publication Number Publication Date
JPH0756945A JPH0756945A (ja) 1995-03-03
JP3079844B2 true JP3079844B2 (ja) 2000-08-21

Family

ID=16489073

Family Applications (1)

Application Number Title Priority Date Filing Date
JP05204351A Expired - Fee Related JP3079844B2 (ja) 1993-08-18 1993-08-18 全文データベースシステム

Country Status (1)

Country Link
JP (1) JP3079844B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3665112B2 (ja) * 1995-09-26 2005-06-29 新日鉄ソリューションズ株式会社 文字列検索方法及び装置
JP4444677B2 (ja) 2004-01-20 2010-03-31 クラリオン株式会社 検索データの更新方法および更新システム
KR100740690B1 (ko) * 2006-08-23 2007-07-18 (주)하이엘리더스투모로우 컨텐츠 검색 시스템을 탑재한 정보단말기
JP5014219B2 (ja) * 2008-03-19 2012-08-29 ヤフー株式会社 広告サーバ及び広告キーワード検索方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
菊地芳秀、小川隆一、高橋恒介、杉本欽一、金田悟,「全文検索の技術動向とシステム事例」,情報処理学会研究報告(92−FI−25),Vol.92,No.32,1992年5月12日,p.1−8
菊池忠一,「日本語文書用高速全文検索の一手法」,電子情報通信学会論文誌(D−▲I▼),Vol.J75−D−▲I▼,No.9,1992年9月25日,p.836−846

Also Published As

Publication number Publication date
JPH0756945A (ja) 1995-03-03

Similar Documents

Publication Publication Date Title
EP0818010A1 (en) Method and apparatus for improved information storage and retrieval system
GB2331816A (en) Searching a database using a phonetically encoded inverted index
JP2005038395A (ja) データベース検索装置
JP2791106B2 (ja) 文字列検索装置
US6620207B1 (en) Method and apparatus for processing chinese teletext
JP3079844B2 (ja) 全文データベースシステム
JP3022079B2 (ja) 全文データベースシステム
JPH06162115A (ja) 地図情報システムにおける曖昧検索方式
JP3022080B2 (ja) 全文データベースシステム
JPH05113964A (ja) 電子辞書
JP3071703B2 (ja) 表作成装置およびその方法
JPS60176169A (ja) 文章処理装置
JP2943791B2 (ja) 言語識別装置,言語識別方法および言語識別のプログラムを記録した記録媒体
JPH0756944A (ja) 全文データベースシステム
JP3470930B2 (ja) 自然語解析方法及び装置
JPH08115330A (ja) 類似文書検索方法および装置
JPH07114565A (ja) 電子辞書
JPH10283368A (ja) 情報処理装置及びその方法
JPH0944521A (ja) インデックス作成装置および文書検索装置
JPH1185765A (ja) タグ付文書検索システム
JPH01214963A (ja) 辞書引き装置
JP2001265762A (ja) 文書構造抽出装置及び文書構造情報抽出方法
JPH09146955A (ja) 単語間概念関係の抽出方法及びシステム
JPH06309360A (ja) 否定論理条件の処理に適したフルテキストサーチ方法
JPH09212520A (ja) 電子化辞書装置

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19991214

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20000523

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080623

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090623

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100623

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100623

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110623

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110623

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120623

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120623

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130623

Year of fee payment: 13

LAPS Cancellation because of no payment of annual fees