JPS58501526A - ディジタルデータ処理方法 - Google Patents
ディジタルデータ処理方法Info
- Publication number
- JPS58501526A JPS58501526A JP57503570A JP50357082A JPS58501526A JP S58501526 A JPS58501526 A JP S58501526A JP 57503570 A JP57503570 A JP 57503570A JP 50357082 A JP50357082 A JP 50357082A JP S58501526 A JPS58501526 A JP S58501526A
- Authority
- JP
- Japan
- Prior art keywords
- word
- question
- character
- words
- entry
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/232—Orthographic correction, e.g. spell checking or vowelisation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Machine Translation (AREA)
- Document Processing Apparatus (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Input From Keyboards Or The Like (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるため要約のデータは記録されません。
Description
パターン分析による単l!類別のためのディジタルデータ処理方法および装置
11悲1L
この発明は、単語の容認できる騙りを容認できない騙りから分離、するた、めの
ディジタルデータ処理方法および装置に関する。
騙り誤りを訂正するためのプログラムされたディジタルコンピュータを用いるた
めの方法が提案されてきた。考慮されるべき纏り誤りの種類を限定することによ
って、効率が獲得される。この点に関し、綴り誤りの80%以上が、4種類の信
号誤り、すなわち、文字の置換9文字の削除、文字の挿入または隣接文字の交叉
のうちの1つにあるということが発見されてきた。
綴り誤りを訂正するための特定のコンピュータプログラムに実現された方法が、
1970年2月のco−sunlcatlona of the ACM第13
轡、No、2における)loward LM organによるrspelll
na CorrecHon In 5ystei+sP rogra■S」とい
う題の論文の90〜97ページにおいて轡諭されている。この論文は、エントリ
単語とディクショナリ単語が同一の長さである第1の場合を議論している。
その方法は、問題の単語を正確に柵られた単語のディクショナリと比較すること
を含む。その場合において、この方法は、同■の単語と正確に綴られた単語との
排他的ORをとりかつその結果生じるノンゼロ位置を調べることを含む1同層の
単語およびディクショナリ単語の両方において文字位置が同しであれば、排他的
ORは結果的にゼロを作り出す、′fJL/正確に1つのノンゼロ位置が存在す
れば、置換誤りが発生している。もし2つ以上のノンゼロ位置が存在すれば、著
の2つの位置の問等性が講へられる。もしそれらが等しければ、それらの位置で
1lIIIの単語およびディクショナリ単語において交叉の存在が調べられ、そ
して訂正が行なわれる。
第2の場合は、2つの単語の長さが1文字だけ興なる場合に起こる。この場合に
6いては、排他的ORは左で始まって第1の等しくない位置を発見するために用
いられる。
続いてディクショナリおよび問題の単語の残りの部分が右から整列され、排他的
ORを用いることによって再び震べられる。もし2つの単語が右から同一の等し
くない位置のところで一致すれば、問題の位置で1つの失われたまたは付加えら
れた文字の綴り誤りが発見されている。
1910年2月のCoaaunicatlons of the ACMにおい
CdA論された上述の方法は、以下のような不利益を受ける。
ディクショナリにお番プるすべての単語をサーチしなければならない。
質問単語の11尾変化された形の妥当な綴り治りであり得る、1R@サイズプラ
スまたはマイナス1よりも大きい0補と対処しない。
多重誤りを隅別しない。
他の技術が、1964年3月のCommunications of theA
CM第7轡、N083におけるF red J 、 Q aaerauニよる[
ATechnttlue for Co5puter DeteOtlOn a
ndQorreatlon of 3palllng l:rrors Jとい
う題の論文の171〜176ページにおいて開示されている。再び問題の単語は
、正確に綴られた単語のディクショナリと比較される。このサーチは、単語の比
較を問題の単語およびディクショナリからの単語の文字カウントが周じ長さであ
るときにのみ実行することによって早められる。もし単語が発見されれば処理は
終了され、I!IIIの単語は正確に騙られたものとされる。
もしTl411の単語が発見されなければ、プログラムはこのときは綴り訂正規
則を用いてディクショナリをサーチする。
もし2つの単語の閣の差が1よりも大きければ、w!Jliの単語はディクショ
ナリ単語の容認できる綴り誤りではあり得ない。もし2つの単語が等しいかまた
は1文字だけ興なっているか、または文字レジスタが2ピット位置よりも多く興
なっておれば、比較は不可能でありかつそれ以上の比較もし上述の後に一致がざ
らに考、膚されることが可能であれば、2つの単mH位置と位置とが比較される
。もし2つの単語にお番ブる文字の数が同じでありかつその単語が1つシIJ
は同一であるとさ礼る。もしその2つの単語が2つの隣合った文字位置において
異なっておれば、間Uの単語の2つの文字は交換されそしてディクショナリ皐關
の同一の2つの文字と比較され、そしてもし結果として一致すれば、その2つの
単語は同一であφとされる。等しい文字長さの池のすべての場合に対しては、無
一致状趨が仮定される。次のディクショナリエントリが、問題の単一と比較さ礼
る。
もし問題の41紐がディクショナリ*語よりe+長い文字であれば、問題の巣頭
の第1の貞な〕た文字がノさてられて、そして残りの文字が1つの位置だけ左t
\シフトされる。もし全ての位置において一致が起これば、単一は同一であると
される。もしディクショナリ単研がより長い文字であれば、ディクショナリ単語
の第1の興なった文字が捨てられて、そしてその単語は上述と同様に比較される
。
この方法は、問題の単語の一致が1@見されるか、またはディクショナリにおけ
るすべてのエントリが講ぺられてしまうまで繰返される。
1964年3月のC0m5unloations of the A C:vf
lにおいて開示されたこの方法に状は、次のようなλ点がある。
すべてのディクショナリをサーチしなければならない。
質問4[Rよりも+1大きいものよりも長い候補*+iを処理し得ない。
1980年12月のCommunlcations of the ACM第2
3巻、No、12は、r Computer programs for Qe
tacting and QOrrecting 3pelling [:rr
ors Jという層の論文を含んでいる。この論文もまた、すべての箸、り蒙り
のうちの80%が4つの分類のうちの1つであるという事実を引用する。二の論
文ば、ディクショナリにおける蒙って纏られた単語がディクショナリにおいてサ
ーチされているトークン(すなわちJIFF)と一致されてもよいという方法@
llI論するに及ん工・いる。これに関して、交叉ば、トークンにおける!II
I接文字の8対を一度に1つずつ転置し、かつその結itじるトークンをサーチ
することによって検出される。1つの特別な文字が、トークンにおける各文字を
一度に1つずつ削除し、かつその結果として生じるトークンをサーチすること(
よって操作される。1つの門失文字および1つの誤り文字は、2″)の方法のう
ちの1つによプて操作される。ixされた方法のうちの1つは、各文字位置に各
ポテンシャル文字なwIlp4シ、ディクショナリ内のトークンを調べることで
ある。この方法についての回置は、非常に多くの回数m返して読べることが必要
であるということである。他の提案された方法は、要するkW1語の容認できる
綴り誤りであるトークンのテーブルを作るということである。憂わしい単語が発
見されると、容認できる綴り誤りのテーブルを調べて開運のものと一致するトー
クンを位置決めしなければならない。明らかに非常(多数のviaできる綴り誤
りが含まれる場合には、そのサーチは非常に長いものとなる。
この論文Wおいで#l諭されている他の方法は、2文字対および3文字対の頓発
を含・弘、容1で98啜り誤りのテーブル内に零引を形成すうためにポテンシャ
ル綴り誤りを検出する、。
行なわれ
【きた他の方法は、いり1j)!相互乍用僧りチェッカを含む、よごれ
に関して、i!単語は正確に啜られた単語のディクショナリに対して1べら;1
、−そしてもし1鏝がデfクシ]ナリ内1ごな、夕れば、何をすべ考かが使用者
に尋ね・うれう4この方法は明ら、’)NIこ、1つ1つの単1のいかなう型の
自物的一致をも提供しない。探1される他の1術は、トークンをとってそれを標
準的な音声の1りに転換し、かつディクショナリ内に同じ発音の単語を1亀する
ことである。これはたとえば、r phJに対してrfJまたはrquJに対1
ノ゛ζ[k]を用いる24誤りに対してよく動作する。
文字のストリングぴ任意の単1の容認できる綴り誤りであるか否かを決定するた
めにコンピュータをプログラミングすることの同晒点は、幅広く考察されてきた
1、たとえば、1967年5月のCQllillUnlQarlOnS a4
the ACM第10着、N015の302〜313ページのC+°ri l
N 、 A Ibergaによる[3 jrinlJ 311i1.jrlr7
and 、’+yl ’、SSpelllngS J、19.90412月の
C・〕lpu口H3prveysl 12%、 No 。
4の381−402ページのpatrlck A、 V、 1−fallおよび
G aoff R、D oN It>gによS r A pproxlsate
5trlnOMatciling J 、および1980年12月のQ 0I
ILlnlCatlonsOf A C;MH231,Na 、 12の676
〜887ページのJ awes L 、P etersonによる「Q oip
uter p rograls for [)atactlng and C0
rreCtlnQ Spelling E rrorS」・2参照されたい。
綴り誤りを通年するためのこれらの先行技術の方法は、一般的に遍くかつ大きな
データベースに対しては不向きである。
1里m
簡単には方法は、単語の容認し得る纏りを容認し得ない綴りから分離するための
ディジタルデータ処理方法を用いてここに説明され、そこでは各単語は影−位置
を指定された文字を備える。各単語における文字の位置は成る単語から他の単語
へ鎧を増加して指定され、各単語の一端から同じ数の文字の位置には同一の値が
指定される。比較されるべき2つの単語は、質問単語および娩補単語と呼ばれる
。
方法は、質問単語の任違の位置における文字の表示を候補単語における次の低位
位置、同一位置および次の高位位置での文字の表示と比較して、比較された各質
問Q1語文字とそのような候補単語文字の各々との闇における一致または不一致
を表わす比較タイプの指示を形成すうステップと、比較された質問単語の任意の
位置を嘴同単語の次のm1位置に変換して池の比較タイプの指示を形成するよう
に前述のステップを繰返すステップと、比較タイプの指示を処理しかつ利用して
、それによって容認し得る夢りまたは容認し得ない霧りを示す比較された単語の
1つに対する綴り類別指示を形成するステップとを含む。
好ましくは方法は、1IWAの前記候補単語が質問単膳に対して比較されて、複
数の候補単一の各々に対して少なくと4)1つずつの、複数の纏り1134指示
が形成されるようにするステップを含む。さらに、受取られた質問4[llの$
lKシ得ない柵りであると示された候補単一の表示から、容認し得る纏りである
と示された候補単語の表示を物理的に分離するために、慶数7)挨捕単−の各々
に対して綴り類別指示を利用するステップを含む。
好ましくは、lIIし得る−りであると示される候補単語の各々の表示は、対応
する纏り類別指示の表示と粘合される。
好ましくは、慟通的分離のステップは、枯台された候補単一の表示と容認し傳る
綴り端別とを物理的に転送するステップを含む。
また好ましくは、比較しかつ比較タイプの指示を形成するステップは、候補lI
I語におけるl1Qk!次の低位位置、同一位置および次の高位位Uにそれぞれ
対応する第1、第2および第3の2進位置を有する比較タイプの指示を形成する
ステップな囃える。またdましくは、候補単一におけるそのような次の低位位置
、同−位Raよび次の高位位置にそれぞれ対応する態位ga億位置、同−記憶位
置、次の高位記憶位置を備える比較タイプ信号を比較された質問文字に対して形
成するステップと、竣補wanの対応する位置における候補文字との比較が等し
い結果であるときには第1の値の2進表示を各2進記憶位置に形成するステップ
と、候補単語の対応する位置における候補文字との比較が等しくない結果であ、
るときには第2の値の21表示を各231記憶位費に形成するステップとを含む
。
好ましい構成に従うて、第1および第2の比較タイプの指示に、第1の位置にお
ける質問、および質問単語の第2の高値位置におシする第2の質問文字を用いて
形成される。
@理および利用のステップは、第1の仮の綴り類別指示を形成するために少なく
とも第1の比較タイプ指示を利用し、また第2の仮の綴りll[tJ指示を形成
するために少なくとも第2の比較タイプ指示および第1の仮の綴り類別指示を利
用するステップを含む。
好ましくは第2の仮の綴り!ll別指示は、最終の綴り類別指示を形成するのに
用いられる。
好ましい実施例に従って、ディジタルコード化された信号が形成されて綴り類別
指示を表わす。
好ましくは穫り類別指示を形成するステップは、質問重器と候補単語との震の少
なくともは下の′S認し得る綴り誤りの任意のものを薫別するディジタルコード
化された信号を形成する。すなわち文字挿入誤り、文字削lI1wAす、文字交
叉誤りならびに責補単藷および質問単語における文字およびそれらの順序の同等
性である。
好ましくは比較タイプの指示を処理しかつ利用し綴り類別指示を形成するステッ
プは、各質問文字に対する各比軸タイプの指示の配列に従・)て部分的に実行さ
れる。
匿m鉦忍l−
第1A図番よ、この発明の一実施例であるディジタルデータ処理システムの概略
ブロック図である。
第1B図は、この発明による第1A図のシステムの処理の方法の全体的なフロー
チャートである。
第1図は、この発明の−*施例である第1A図のディジタルデータ処理システム
のより詳細なブロック図である。
第2図は、第1図のディジタルデータ処理システムに用いられるプログラ二ング
のブロック図であり、種々のプログラムが実行さるシステムの一部を示している
。
第3!!lは、第3八図ないし第31−(図を含み、第1図のディジタルデータ
処理システムの処理のシーケンスを示すフローチャートおよびそれが第1図のシ
ステムによって実行されるように内部ROMI”、22.1124内に記憶され
たプログラムP Q A P CN T RLによって1・;ミられる方法を含
む。
第4A図は、ROM1 ”! 22.1124内に含まれる類別テーブル120
0の様式および機構を示す図面である。
第4B図は、ROM1122.1124内に含まれる接尾辞剥取状態テーブル1
201の様式および機構を示す図面である。
第4図は、第1図のシステムの内部RO’V11122.1124内に記憶され
る容認し得る接尾辞テーブルの様式および機構を示す図面である。
第5図(よ、jli1図のシステムの内部ROM1122.1124内に含まれ
る接尾辞テーブルの様式および**を示す図面である。
第6図は、プログラムPQAPCNTRLおよび第1図の1イジタルデータ処理
システムを用いて実現される方法およU+段に代わる方法および手段を実滴する
慨略的ブロック図である。
Jl! 7図は、エントリの一部のフォーマットを示し、それらは外部RAM1
104に起流される。第7図はまた、外llRAM1i04におけるバケットバ
ッファおよび結果バッファの図面を含む。結果バッファは、原質問単語の**し
得る綴り誤りおよび容認し得る語尾変化を含む定められたエントリ単語を有する
ことからの結果を含む。この図面に示されているのは、種々のPARMI造の変
形(テーブル4参照]および−それらが可を指適しまたは指示しているかという
ことであ:りつ
第8図は、VIC31”l ”i 4の動作のために準備されたE■FOi 1
30の入力部分にお;するマイクロプロセッサ1118によって形成されう単語
エントリを示す図面である。
ts9図は、第85!lにおけるのと同様のエントリ単語の様式を示す[1であ
り、それらは原質間単語の容認し得る驕り誤りである定められたユ、ントリを有
した後にMC8I11/Iによって選択される。
第10図は、第10A図から第10D図を備え、第1図のディジタルデータ処理
システムの処理のシーケンスおよびそれが第1図のシステムによって実行される
ときのPSUFIXプロゲラt、によって作られる方法を示すフローチャートで
ある。
1@11図は、第1図の綴り誤り類別システム(MC8>1114、ならびにF
IFO1130の入力および出力部分、制御およびデータバス1218および1
216、マイクロプロセッサ1118、および内部RAM1126.1128の
概略ブロック図である。
1121gは、第12A図bM>J 12 L!!lヲ含ミ、wii図のMCS
システム1114の処理、Dシーケンスおよびそれ、!% M CSシステムに
よって実行されるときのMCSブロクラムによって作られる方法のフローチャー
トである。
1!13図は 第11図の啜り譲り類別システムの一部の選択的な実施例全孜吏
概唱ブロック図である。
第14図は、第11図の榛り誤り類別システムの一部の選択的な実施例と・Rす
緊略ブロック図で力み。
第15図および第151は、講11図のfイジタルデータ@1システムの一部の
選択的な実施例と示す4略ブロック図7ある、
第17図は、第11図のディジタルデータ処理システムの一部の選択的実施例を
示す概略ブロック図である。
第18図は、第11図のディジタルデータ処理システムの一部の選択的実施例を
示す概略ブロック図である。
11虹11
It
■、一般的な説明
A、コンピュータプログラム方法および手段1、前書
2、方法の概要
3、プログラム
1、ハードウェアー第1図のQAP111111ボードおよび外部回路
夏、ハードウェアー第11図のMC8
EV、QAP制御プログラムを用いる方法および手段(PQAPCNTRL>
A、類別テーブル1200.接尾辞剥取状態テーブル1201、容認し得る接尾
辞テーブル1202、および接尾辞テーブル1204の構造および使用
B、処理
C8第6図の選択的実施例
り、接尾辞剥取プログラム(PSUFIX)を用いる方法および手段
E、IIり誤り類別システム
1、前書
2、第11図および第12A図ないし第12L図のディジタルデータ処理方法お
よび手段
3、第14図の選択的実施例
4、第15図および第16図の選択的実施例5、第17図の選択的実施例
6、第18図の選択的実施例
■、テーブル
テーブル 1−単語フォーマットおよび5YNC信号テーブル 2−容認し得る
およびIF認し得ない綴り誤りの種類
テーブル 3−外部RAM1104におけるQRIO構造
テーブル 4−PARM構造
外部RAM1104から外部RAM1
126.1128内へ転送される質問
情報
テーブル 5−PQAPCNTRLによって用いられる変数/テーブル
テーブル 6−パラメータ、変数およびテーブルを含むデータアイテムに関する
PSUFI
X
テーブル 7−ENTrN構造
MC81114によってQAPボード
に対して繰返されるエントリ単語フォ
ーマット
テーブル 8−類別テーブル
テーブル 9−J1尾辞剥取状態フープルテーブル1〇−許容し轡る接尾辞テー
ブルテーブル11−接尾辞テーブル
テーブル12−剥取規則、容認し得る接尾辞および例テーブル13−使用せず
テーブル14−例
テーブル15−使用せず
テーブル16−比較タイプ指示
テーブル17−Itり誤り種類決定の例テーブル18−3重比較タイプ指示
テーブル19−ユニーク文字を持たない単語に対する綴り誤り種類決定の例
テーブル20−第7図および第8図の処理のシーケンス
第1図は、プログラマブルディジタルデータ処理システムの概略ブロック図であ
る。ハードウェアおよびコンピュータプログラムが含まれており、コンピュータ
プログラムはリードオンリメモリ内に記憶されており、質問単語の容認し得る綴
り誤りおよび容認し得る語尾変化の両方である記憶されたデータベース内に含ま
れる候補(またエントリとも呼ばれる)単語を位置決めおよび決定するためのも
のである。データベースは好ましくは、段落および記録に配列される原データベ
ースである。ハードウェアおよびソフトウェアがまた含まれ、質問単語の11m
1シ得る綴り誤りおよび容認し得る語尾変化であるエントリ単語を用い、かつ段
落が容認し得るエントリ単語といかによく一致するかに従うてデータベースの段
落を記録する。データベースの段落の表示は、スコアの減少する順に使用者に戻
され、最良のスコアされた段落は最初に戻される。
第1A図を参照すると、使用者は端末1102を用いて、システム内に質問単語
を入れ、各単語は1つまたはより多い文字で構成されている。次にインターフェ
イス1103゜マイクロプロセッサ1108.ランダムアクセスメモリ(RAM
)1104.およびリードオンリメモリ(ROM>1106を含む外部回路は、
質問単語を解剖し、かつストップ単語と呼ばれる質問に対してほとんどまたは全
く重要性のない単語を捨てる。残りの質問単語は、意味のある質問単語として参
照される。解剖後の意味のある質問単語は、RAM1104内にストアされ、か
つ次に1つずつ取出されて、意味のある質問単語の容認し得る綴り誤りおよび容
認し得る■尾表化の両方であるデータベースエントリ単語を位置決めするための
記憶されたデータベースにおけるエントリを間合せるために用いられる。データ
ベースのエントリ単語の表示は、種々の形態でメモリ、つまり外部ディスク記憶
装置1107内に記憶され、そして必要なときにディスク制御装置1105を通
じてランダムアクセスメモリ(RAM)1104に処理のために転送される。
QAP制御ボード1109は、プログラマブルマイクロプロセッサシステムであ
る。より詳しくは、QAP11制御ボード1109は、マイクロプロセッサ11
18および綴り誤り類別システム1114を含み、綴り誤り識別システム111
4&tプログラマブルマイクロプロセツサをまた含む。
このシステムには、簡単のため(1つであるとして示され、そしてここではリー
ドオンリメモリ(ROM)1122゜1124として示されている2つのり一ド
オンリメモリと、簡単のために1つとして示されそしてここではランダムアクセ
スメモリ(RAM)1126.1128として示されている2つのランダムアク
セスメモリと、先入れ先出しくFIFO)メモリ1130とがざらに含まれる。
包括的に1115で示されたインターフェイスおよび制御システムは、マイクロ
プロセッサ1118とバス1110との−をインターフェイスし、したがって残
りの外部回路をバス1110の右側にインターフェイスする。インターフェイス
制御システム1115はまたマイクロプロセッサ1118とROM1122.1
124.RAM1126.1128、およびFIFO1130との筒をインター
フェイスする。FIFO1130は、MC81114とマイクロプロセッサ11
18との閣でデータを転送するための主通信を与える。
マイクロプロセッサ1118の動作を制御するプログラムは、ROM1122.
1124内に記憶されている。RAM1126.1128は、探索パッドメモリ
ならびにマイクロプロセッサ1118によってその処理において用いられる種々
の懐に対する記憶を与える。
簡単には、各意味のある質問単語の表示は、RAMllO4からRAM1 ”L
26.1128に転送される。ここでマイクロプロセッサ1118は一度に1つ
ずつ質問単語を取出し、その質問単語から接尾辞を取り去り、語幹を残し、モし
て質問単語に対する接尾辞類別指示を形成する。次に質問単語は、FIFO11
30を通ってMC81114に送られる。さらに質問単語に対する一群のエント
リ単語が、RAM1104からFIFO1130を通ってMC81114に転送
される。次にMC81114におけるマイクロプロセッサは、質問単語の語幹を
取出し、それをエントリ単語の最初の文字と比較し、そして各エントリ単語に対
して橢り誤りの類別を決定する。質問率Im幹と比較されて容認し得る綴り誤り
類別を持つように決定されたこれらのエントリ単mは、エントリ単語に対する纏
り誤り類別とともeF f FOl 130へそしてそこからRAM1126゜
1128へ転送し返される。次にこの点で、 RAM1126.1128は、対
応する質問単語のII!I、得る欄り誤りであるエントリ単語、対応する質問単
語の語幹の長さ、および対応する質問単語に対する接尾辞類別指示を含んでいの
位置を決定し、さらに接尾辞類別指示を用いて、エントリー寵が原賀闇単■の容
認し得るIi尾変化であるかどうかを決定する。’1ilL、得る1り誤りであ
りかつ原質問単語の容認し得る語尾変化であるエントリ単語は、質問に対する相
当単語と呼ばれ、これらの相当単語の表示は次にRAM1104に転送し返され
、そこでそれらはこの後より詳細に説明されるように、記録のためのパッケージ
を形成しかつ使用者に対して出力するために用いられる。
2.9
第1A図のシステムの全体的ブロック図を晴において、ここで第1B!IIの全
体的なフローチャートを考察する。まず最初に3008で示されるように、使用
者は、オペレータコンソール1102(第1A図)のキーボード1102Aを用
いて、質問を作り出す。その質問は、使用者がディスク1107に記憶された原
データベースの段落における組合せにおいて見つけたいと思っている1つまたは
それ以上の質問単語から成っている。例示的に、その質問単層はrRA丁ES
OF INTERESTJであってもよい。
ブロック3012で示されるように、第1A図のデータ処理システムは次にスト
ップ単語の3010のテーブルを用いて、質問からストップ単語を識別しかつ除
去して、意味のある質問単語を残す。次に意味のある質問単語は、残りのフロー
に1つずつ送られる。
各質問単語は、質問単語の語幹および質問単語の語幹の長さを決定することによ
って、3015で示されるように処理される。ざらに質問単語の接尾辞が質問単
語から剥ぎ取られ、語幹のみが残される。質問単語の接尾辞のみまたは語幹の隣
接部分と組合せたものが、質問単語の語幹に対して容認し得る接尾辞のIIIを
決定するために用いられる。
より詳細に説明すれば、容認し得る接尾辞の種類は、その語i斐字が質問単語の
語幹の容認し得る纏り誤りであるエントリ(候補)単語が、容認し得る接尾辞を
持っており、したがってそのエントリ単語が容認し得る綴り誤りでありかつ質問
単語の容認し得るN尾変化であるかどうか、とい)こヒを決定するために用いら
れる。したがってフローの10ツク3015の債に、システムはその質問の各質
問単語に対して次のものを決定するつすなわち、除去された鴇尾辞(すなわち単
RrRATEsJに対して接尾辞rEsJが剥ぎ取られて質問語幹r RA T
、!2 Jを残している)を持つ原質間単語である質問語幹3016、語幹の長
さくすなわち質問単語rRATEsJに対して語幹長は3である)を示す語幹長
指示3018、および質問単語の接尾辞が含まれる種類を示す接尾辞種類指示3
02oである。
テキストのデータベースは、エントリ単語を含む。テキストのデータベースの成
る部分はエントリ単語のディクショナリであり、エントリ単語は最初の2文字に
よってアクセス可能でありかつ記憶される。同一の最初の2文字を持つ単語はす
べて一緒に記憶される。たとえば、文字AAで始まる意味のある単語の表示は一
緒に配列され、文字ASで始まる意味のある単語の表示は一緒に配列され、・・
・というようにされる。同一の最初の2文字を持つデータベースエントリ単語は
、データベースエントリ*iのファミリーと呼ばれる。エントリ単語のそのよう
な配列は、データベースの好ましい配列ではあるが、この発明の木賃ではない。
質問単語の1つに対応するエントリ単語のファミリーは、質問語幹3016を質
w*iの対応するファミリーにおけるエントリ単語の各々の語順文字と比較して
フローのブロック3024で最初に処理され、それによって質問単語語幹301
6の容認し得る綴り誤りであるエントリ単語のセット3026を形成する。した
がって質問単語に対応するエントリ単語のファミリーは、1肩が質問単語語幹の
1!認し得る啜り誤りであるエントリ単語のセットに襦小される。
フローのブロック3030の1に、iI!文字が質問単語語幹3016のIF認
し得る綴り誤りであるセット3026におけるエントリ単語が次に1へられて、
それらが原質間単語の容認し得る語尾変化であるがどうかが決定される。
このために、質問単語に対する接尾辞種類指示3020が、容認し得る接尾辞が
そこから得られる容認し得る接尾辞テーブル3028をアクセスするために用い
られ、またセラ1−3028にお(プるエンドり単語と比較されて、IF認し得
る接尾辞を持っておりしたがって容認し得る語尾変化であるものを決定プ゛る。
ブロック3o30に統いて、質問単語の1認し得う騙り誤りおよび容認し得る語
尾変化くすなわちf4v性)であるエンド・り単語のセラI−3031が存在す
る。
フローのブロック3032の間に、システムはセット3031の各エントリ単語
に対するパケットを有する質問単語に対づるパッケージ3038を形成する。各
パケットは、記憶されたデータベースにおける対応するエントリ*mに関して情
報を位置決めするために用いられるコード化された情報または指示のセットを含
む。この発明にとって興味あることは、各パケットが、以下に説明するように、
対応するエンj・す単語がテキストのデータベースに含まれるドキュメント内の
段落ちよび/′またはドキュメントの各々を位置決めづ゛るために用いられる指
示を持っているということである。
次に別の意味のあるjr間単語に対してブロック3015゜3024.3030
および3034における方法のステップが操返され、イれによって次の質問単語
に対する(上で議論されたタイプの)容認し得る綴り誤りおよび1!F認し得る
1尾変化の両方であ()エントリ単1を泣1決めす・ル、パッケージ3038が
次の冥間!II語に対して形成され、対応する*+!1単語の容重り得る啜り誤
りおよび容認1ノ得る語尾変化であるエントリ単語の各々に対するパケットを含
んでいる。この処理は、上で議論した方法で、質問単語の各々に対して?8I!
!2されているパッケージを持つ質問の意味のある*iの各々に対して繰返され
る7
フローのブロック303らの閂C,質問単語の各々に対して1つずつ、パッケー
ジ3038を用いて、問答性単語の各々が含まれている現実の段M(そして所望
ならばドキュメント)を1I9Jする段落!1準が得られるユテキストのデータ
ベースにおける各段落に対する段!基準は、次にそれらがいかによく同等性単語
と一致するかということに従って記録され、そしてIQIにはブロック3044
で、記録されてしまった段落基準に対応するデータベースの段落が、オペレータ
フンソール1102のCRT、J:の視覚的ディスプレイに対して出力される。
テキストの現段落を含むテキストのデータベースはフローにおいて3034で包
括的に示されており、段落基準を用いて、かつデータ処理技術において周知の技
術を用いて、アクセスされかつ読出される。
3、プログラム
12図は、第1図および第1A図のうちディジタルデータ処理手段の部分(関し
て構成された種々のコンピュータプログラムの概略ブロック図であり、各プログ
ラムを実行する。第2図の上部に示されるように、外部マイクロプロ4ay+j
1108オJ:tFRAM 1104G1、QPCNTL。
QDETWD、QSS、QDI’(MD、およびQFLPKGとしてI@される
プログラムを実行し、これらのコンピュータプロクラムは好ましくはROM11
08内に記憶されるファームウェアの形式である。QAPN御ボード1109は
、ROM1122.1124内に記憶されるコンピュータプロクラムPQAPC
NTRLおよびPsuFIXを実行する。MC81114内のマイクロプロセッ
サは、プログラムMC8を実行する。プログラムMC8は、第1A図におけるR
OM(図示せず)内にまた記憶されている。
したがってROM内に記憶されている種々のプログラムはファームウェアである
。より詳細に説明すると、第2図に示されたすべてのコンピュータプログラムは
、処理のシーケンス、したがって方法を制御する役割を果たし、それによって第
1図のディジタルデータ処理手段はデータを処理する。
種々のプログラムβよひそれらの動作を考慮すると、使用者は最初に端末110
2を用いて質問を入れる。外部回路1104〜1108および特にマイクロプロ
セッサ1108は、従来のプログラミング(詳細は記述せず)を用いて、貿同か
らストップ単語を剥ぎ取り、第1図のシステムによって処理されるべきRAM1
104内の意味のある質問単語を残す。ストy711!IIIは、「a J 、
jthe J 、[ofJなどのようなはとんど!味を持たない単語または無意
味な4紐である。このような形式の単副剥ぎ取りプログラムはよく知られており
、ここでさらに議論する必要はない。
賀調は、使用者がf−タベース内に位置決めすることを望む文または他の一群の
**であるような一組の単語である。たとえば使用1は、ストップ単語の剥ぎ取
りの後に、rHELi’;、rrNTEREsrJ、rRAT’EsJt7)よ
うな単14i:含Q賛同を位置決めしたいと思ってもよい。
これらの質問単語は、続く議論において参照例として用いられる。
、 質問処1111制御(QPCNTL)プログラムは、すべての賛同の処理を
制御する。意味のある質問単語は、最初に決定単語候補(QDETWD)プログ
ラムに送られる。QDETWDプログラムは、すべての意味のある質問単語を通
じてのルーピンクを制御して、各質問単語に対するデータベース内の単語の容認
し得るf&尾変化および響り誤りを決定するように応答可能な、1iIII+プ
ログラムモジユールである。このために、プログラムQDETWDは、一度に1
つの質問単唾ずつ、質問の単語を充填単語パッケージプログラムQFLPKGに
送る。
テキストのl−タベース(エントリ単m>は、単語の(すなわち「ファミリー」
における)最初の2文字によって、J2の記憶@置とも呼ばれる、ディスク記憶
装置1107内に配列され、記憶されそしてアクセス可能である。
データベースサービスプログラムを呼出すことによって、プログラムQFLPK
Gはディスク記憶装置111107から各質問単語に対すうエントリ単語のファ
ミリーを獲得し、そして外部RAM1104におけるエントリバッファ(第7図
書照)内にその浅水を記憶し、そして同時に、パケットバッファ(第4図)内に
エントリ単語の各々に対応するパケットを記憶する。、説明すれば、パケットは
、現実の可変長文字m幹とは反対に、データベース内の**の像画の固定長表示
である。例として貿同単饋r HE L P S lを用いると、最初の2文字
1−I Eを持つすべてのデータベースエントリ単語が、質**語に対しての9
a瑳のためにRAM1104のエントリバッファ内に置かれる。
エントリ単語のファミリーのすなわち最初の2文字による記憶および読出が便利
のために行なわれ、したがって好ましいものではあるが、この発明の本質ではな
い。
各質問単語、質@単語に対するエントリ単語のファミリー、および対応するパケ
ット1よ、QAP1m御ボード1109LのROM1122.1124内に位置
決めされたプログラムPQAP(、JTRLに送られる。プログラムPQAPC
NTRLは、質問単語の容認し得る啜り誤りおよび容認し愕るW!電変化のセッ
トに対しエントリ単語を減少するように応答回部であ8゜
このためにプログラムρQAPONTRLは、接電辞剥ぎ取りプログラム(ρ8
LJFIX)に賀四雫槽を送る。PStJFIXブワグラムは、11ヰし聾5妾
尾辞に対丈るテーブルおよび予め定められる川明を1いて、ゼロまたはより多い
文字Cすなわち接尾辞)を剥ぎ取うことによって!III単謂の単語を決定する
。より1橿に説明すると、P31J F■xプログラムは接尾辞および質問単語
の語幹部分を決定し、そして次に質問amの識別された接tViが含まれる複数
の興なったS類のうちの任意のものに対すする値を有する接尾辞種類指示を形成
する。たとえば質問単装置−+ELPSJは、そこから剥ぎ取られる接尾辞「S
ゴを有する。
次にプログラムP81JFIXは、決定された質問語幹およびエントリl1語の
ファミリーを綴り誤り類別サブシステム(MC8)1114に送る。
自身のファームウェアコンピュータプログラムを用いろMC81114内のプロ
グラマブルマイクロプロセッサは、質問単語の(前もって決定された)語幹の容
認し得る綴り誤りであるIl1文字を持つ(ファミリーの)エントリ単語を、決
定しかつプログラムPSUIIXに戻す。MC8は、識別された質m*m語幹を
エントリ単語の餌頭文字と比較し、特定のエントリ単語に対して、それがjlI
[間単語との容認し得るまたは容認し得ない一致のいずれであるかを決定する。
MC8はまた、質問の語幹とエントリ単語との簡の比較から生じる結果である複
数の種類のうちの任意のものを表わす一致種類指示を作り出す。
貿同*iim粋のIF認し噂る榎り誤りである1顕文字を持つように−数種類指
示によって示されるエントリ単園を受取った後、プログラムPQAPCNTRL
はそのようなエントリ幕開が任意の質問単語(対する容認し彎る接尾辞を持つか
どうかを決定する。この決定に、質問単語に対する(以前に決定された)接尾辞
、@類指示を用いて行なわれ、エントリ単語に対する容認し得る接尾辞を位置決
めする。
*ixシ得る接尾辞を有するエントリ単語は、質問単語の容認し得るwi尾変化
である。特定の質問単語の容認し得る綴り譲りでもあり11認し得る語尾変化て
もあるエントリ$@のりべてのファミリーは、好ましくは、RAM1104内の
精巣バッファC第7図)内へ各容認し得る・エントリ単語に対する表示またはパ
ケットを配備するこ、と゛によって、そのファミリーにおいて他のエントリ*語
から分離される。
子のパケ=tトまたは表示は、ディスク記憶装all”!07上のデータベース
内のそれらのエントリ単語藷の各々に関するデータを位置決めするために用いら
れる、ポインタまたはするすべてのパケットは、パッIf−ジ内に配グ1される
つ異なったパケットのパッケージは、各5jt間単語ごとに形成されるa各単語
パッケージは、外部回路内のプログラムQFL P K GをiAじてプログラ
ムQD’E丁1.V Dに戻され小。
すべての質問単語、ぢよび褥定の質問の各質rI4単語に対するエン1−Il事
四の対応するファミリーが、上述したように処理さ1t、また、各*′f4単o
1単口16二対ッケージが形成されて、プログラムPFLPKGを通じてプログ
ラムQDETWDに戻された後、プログラムQPCNTLは、パッケージの単語
を含むデータベース内の段落のセットを決定するプログラムQDPCMDにその
パッケージを送る。これらの段落は次に、段落内にあるパッケージの数に関して
記録される。次に一致段落の表示が、テキストのデータベース内の所望のデータ
を位置決めするのに用いるため、端末1102内の陰極線管(CRT)1102
b上に、使用者に対して送られて視覚的に表示される。好ましくは段落は、使用
者゛に対して戻されて、スコアによる値が減少する順にCRTl 102b上に
表示され、最も高いスコアを持つ段落が最初に戻される。
こで議論された技術を用いて、同義It3よびそれらの容認し得る綴り誤りおよ
び語尾変化に拡張するプログラムQSSを呼出す。プログラムQSSは、プログ
ラムQFLPKGを用いて拡張を実行する。プログラムQPCNTLは次に、拡
張されたパッケージをプログラムQDPCMDに送る。
■、バー゛ エアー 1 の
ボー゛ び
第1図はこの発明による方法および手段が具体化されている全体的なディジタル
データ処理システムを示している。
貿同補助プロセッサボード(QA Pa制御ボード)1109は、綴り誤り類別
システム(MC8)1114に基づくマイクロプロセッサおよび組合わせられた
メモリに加えてマイクロプロセッサ1118、および、MC81114とQAP
v411ボード1109内の他の回路との間でデータを移動するためのバッファ
として働(先入れ先出しくFIFO)メモリ113oを含む。バス1110は、
第1図における点線の右側に示される外部回路とQAPIIIIIIボード11
09との間の通信のために設けられ、オペレータコンソール1.102に対する
インターフェイス1103.マイクロプロセッサ1108、ランダムアクセスメ
モリ1104、リードオンリメモリ1106.および、ディスク記憶装置110
7をインターフェイスするディスク制御装置1105を含む。QAPIIIIボ
ード1109はバス上のマスクであり、バス1110に対してマイクロプロセッ
サ1118をインターフェイスするアービットレイション回路1172を含む。
QAP111JIIIボード1109は、テキストの質問機能と関連して用いら
れる語尾変化および綴り誤り許容限界方法および手段を与える。マイクロプロセ
ッサ1118は、リードオンリメモリ内に記憶されたコンピュータプログラムを
実行して、任意の質問単語に対するデータベース重囲の容認し得る語尾変化の形
態を決定する。MC81114は、誤りの種類または範躊のうちの1つにデータ
ベースエントリ単語を類別する。
QAP制御ボード1109の回路をより詳報に考察する。
マイクロプロセッサ1118に対するクロック信号は、従来のクロック発生器お
よびドライバ1150から導出される。クロックトライバ1150は付加的に持
ち状態論理またはジェネレータ1154と共に働いて、スローメモリおよび周辺
アクセスのためマイクロプロセッサ1118に対する準備信号を与える。
マイクロプロセッサ1118は、インテル社によって報還された8086型の従
来のプログラムされたマイクロプロセッサであり、その詳細はインテル社によっ
て刊行されかつ1979年2月の日付のMC8−86使用者のマニュアルに説明
されており、その内容をここに援用する。マイクロプロセッサ1118は処理関
数を実行し、またROM1122.1124としてここに参照されるリードオン
リメモリおよびRAM1126.1128としてこの後参照されるランダムアク
セスメモリをアクセスするために必要なアドレスおよび制御信号を発生し、そし
てその110@置はMC81114および外部回路を含んでいる。
マイクロプロセッサ1118のステータスライン5O1S1およびS2は、マイ
クロプロセッサによって駆動され、制御装置1176、アービットレイション回
路1172および制御回路1156と接続されている。マイクロプロセッサ11
18からのアドレスおよびデータバスラインは、アドレスおよびデータバス11
60を通って、トランシーバ1178.オンボードアドレスラッチ11B2.ア
ドレスラッチ1158.およびデータトランシーバ1162とamされる。l1
0QAPデコーダ1180およびRAM/ROMデコーダ1186は、制御゛バ
ス1183により“てオン/オフデコーダ1184と接続される。オン/オフデ
コーダ1184の出力は、アーピットレ゛イション回路1172の出力と接続さ
れる。アドレスバス116・8は、アドレスラインを、割込制御装置1132.
タイマi’+ai。
ROM1122.1=124.RAM1126.112.・8゜110QAPデ
コーダ1180.RAM/R’OM、デコー、ダ1186、およびオンボードア
ドレスラッチ1182のアドレスラインと接続する。データバス1170は、割
込制−装置I!1132.タイマ’:1131 、 F’I FOI 13.O
’、 ROMI 1 22. 1 1 24. RAMI 1 2.6. 1
128.、およびトランシーバ1178のデータラインと接続される。
制御バス1188は、割込制御@獣1132.タイマ1131、FIFOI 1
30.ROM1122.1124.RAM1126.1128.RAM/ROM
デコーダ1186、l10QAPy”:)−5j 180.*ち状態シx 2
L/ −タ1154−.およびm−装置1176の制御回路と接続さMC811
14内の回路との間にデータを接続する。アドレスバス1190は、QAP注意
回路114oの入力およびバス1110にアドレスラッチ115Bの出力をms
する。
1i1111I@lI!1156は、Il制御バス1166によってバス111
0と接続される。アービットレイションパス1192は、バス1110をアーピ
ットレイション回路1172と接続する。データバス1165は、データトラン
シーバ11.62をバス1110と接続する。QAPスワップバイト論1111
74$;t、、I制御装置1156の出力およびアドレスバス1190と掛快さ
れるその11置入力を有しておりj、そしてその出力はデータトラ・ンシーパ1
162と接゛統される。
簡単には、QAPIIil・御ボード1109は以下のように動作する。マイク
ロプロセッサは2位相の動作を持っている。
その1つはデータバス1160上にアドレスを与えることであり、第2の位相林
データパスライン1160上にデータ゛を与えまたは受取ることのいずれかであ
る。例として。
デ−タバス1160上のデータが16ピツトの長さであるとする。マイクロプロ
セッサ111Bは、アト1ノスラツチ1158によってラッチされるアドレスを
最初に出力する。
同時にマイクロプロセッサ1118は、SO,S1#よびS2出力でステータス
信号を与え、ステータス信@ハ、アドレスが与えられておりかつメモリサイクル
の一部であるかr10サイクルの一部・であるかどうかということ、または実際
にはメモリまたはI10サイクルがなく割込肯定応′答サイクルがあるかどうか
ということを示す、ステータス信号は、−一装置1176および1156を能動
化して、必要なサイクルおよびステータス信号のタイプに依存して、順&:II
の制御を取り出す。オンボードアドレスラッチ1182G!、デコーダ1180
および1186を通りてマイクロプロセッサ1118によって与えられたアドレ
スを能動化する。デコーダ1180および1186は、アドレスが正しいオンボ
ードアドレス(すなわちQAP11御ボード1109内で用いられるべきアドレ
ス)であるかどうかを決定し、もしそうであれば慢統の転送のためにアドレスさ
れたオンボード回路を選択する。アドレスされかつ選択される回路は次のとおり
である。すなわち、RAM1126゜ROMI 124.F f FOl 13
0.タイマ1131.および割込制御11111132である。デコーダ118
0および1186はまた、制御バス1183上の信号を、オン/オフデコーダ1
184に与え、それを能動化してアドレスがオンボードアドレスかまたはオフボ
ードアドレスかのいずかということに関する決定を作る。もしデコーダ1184
がこれがオンボードアドレスではないという決定をすれば、そのアドレスは外部
回路バス1110をアドレスするために用いられる。
デコーダ1184はアービットレイション回路1172のλ?16111を与え
、バス1110の制御を得るために応答可能であるということを知らせる。これ
に関してバス1110上には多くのマスクが存在するが、ただ1つのマスクのみ
が任意のときにパス1110上でアドレスおよびデータを置かれ得る。アービッ
トレイション回路1172はアーピットレイションバス1192を通じてバス1
110上に信号を与え、それが現在w4#されておりかつ他の回路はバスを用い
ることができないということを示す。この信号はバス1110にアクセスするこ
とを要求する他の回路によってS知され、したがって他の回路はバス上に衝突信
号を与えることを試みない。
一旦アーピットレイション回路1172がバス1110を介してwet、たとす
ると、アーピットレイション回路1172は制御回路1156に信号を与え、制
御回路1156がバス1116を介してバス1110上に制御信号を与えるよう
にする。アービットレインョン回路1172はまたアドレスラッチ1158に信
号を与え、アドレスラッチ1″158がその中に以前にラッチされたアドレスを
バス11′10上に与えるようにする。
ama回路1156&I&、データトランシーバ1162およびQAPスワップ
バイト論理1174に付加的に信号を与え、現在進行しているデータ転送のタイ
プおよびそれがアドレスおよびデータバス1160からバス1110へまたはバ
ス1110からアドレスおよびデータバス1160へ移動しているデータのいず
れであるかということを示す。
さらに制御1i置1156は回路1162および1174に信号を与え、そのデ
ータ転送が16ピツトまたは8ピツトのいずれを含んでいるかということ、およ
びもし8ピツトが転送されているのならその8ピツトが16ビツトバス上のどこ
で位置決めされるべきかということ、すなわちそれがバス上の下位位置または下
位位置のいずれであるかということを示す。
Q A P IIIJ御ボード1109をオンボードまたはオフボードするかの
いずれかである任意の転送は、持ち状態ジェネレータ1154を通じて終了され
ねばならない。したがって持ち状態ジェネレータはバス1110から信号を受取
り、次に待ち状態ジェネレータ1154をクロックトライバ1150を制御する
ようにし、マイクロプロセッサ1118を持ち状態におき、転送されるべきデー
タを待つ。
持ち状態ジェネレータは、マイクロプロセッサが、外部回路内にあるまたはQA
P!IIIボード1109内にオンボードしている任意の装置に対してアドレス
を出力するときに、データの転送の終了を決定する。ROM1122,1124
.7jよびRA1〜11126.1 ’123に対するf−夕報送に関して、持
ち状態は定められた1sra隔の後終了される。バス1110を通じる転送に関
して、涛ち状態は通信が行なわれている装置によって終了される。たとえばもし
通信が外部RAM1104と行なわれているなら、RAM置いてしまいそして持
ち状態が現在終了されてもよいということと示す信号をバス1110上に発生す
る。待ち状態ジェネレータ1154は、この信号を噛匍し、そして?イクロプロ
セッサ1118を開動化して涜ける。
この動作は、マイクロプロセッサ1118によって、アドレスおよびデータバス
1160上にアドレスを与えるときにS返される。
QAP注意回211140は、バス1110上に特別アドレスを置くことによっ
てバス1110と?!!映される任意の回路によってアドレスされ得る。QAP
注意回路1140は、独自のアドレスおよびバス1190および1166を通っ
てそこへ与えられる11111(1号に対してバス1190を単にモニタし、そ
して独自のアドレスおよび1lljl信号に応答して1次にライン1142上の
<m込−3信号と呼ばれる)!11信号を与える。割込1lIIII装置113
2は、マイクロプロセッサ111Bに対して次に割込を与える。このことは次に
、マイクロプロセッサ1118がQ A P @御ボード1109上の処理を中
止するようにして、要求装置(対して注意が与えられるようにする。ROM11
22.1124内に含まれるプログラムは、とられるべき動作の適当な順序を次
に決定する。このためにRAM1104は、メイルボックスと同様の特別バッフ
ァ記憶位置を有する。割込が割込−3ライン1142上に与えられると、QAP
M御ボード1109は特別バッファ記憶位置の内容を間合せて、注意を必要とし
ている装置を決定し、また何が行なわれるべきかを決定する。より詳細には、マ
イクロプロセラ? 1118 ハ手頓ヲ行fXイ、ソレニJ: => T、tl
Jm’8N 1132はバス1170上のデータをトランシーバ1178に送る
ようにされ、次にトランシーバ1178はマイクロプロセッサ1118に信号を
与えて、マイクロプロセッサ1118に割込をいかに処理すべきかを告げる。
ここでMC811”14との通信を考察する。マイクロプロセッサ1118から
のF I FOl 130に対し独自なアドレスは、バス1160上に瞳かれて
、転送がPIFO1130に対して行なわれるべきであるということを示す。
マイクロプロセッサ1118は、FIFO1130を通じてMC8と過信しなけ
ればならない、FIFO1130は、任意の他のメモリ(すなわちROM’ 1
22,1124゜RAMI 126,1128>と同様のアドレスを持っている
。しかしFIFO1130は、メモリ装置というよりもむしろI/’0111で
あると考えられる。マイクロプロセッサ1118はFIFO1130のアドレス
を形成し、ステータス信号はライン30.81みよびS2上で形成されて、I1
0書込サイクルであるということを示す。アドレスはオンボードアドレスランチ
1182によってラッチされ、またアドレスバス1168上に与えられる。l1
0QAPデコーダ1180は、アドレスをデコードし、それがFIFO1130
に対するものであるということを決定し、そしてデータを受取るようにFIFO
1130を信号で合図する。データは統いてアドレスおよびデータバス1160
上に与えられ、トランシーバ1178はバス1170上にデータを与え、そこか
らデータはFiFO1130の入力部分に記憶される。
FIFO1130の入力部分に与えられたデータは、MC81114の動作を指
示する。MC81114はこの後詳細に説明するように動作を行ない、そして綴
り講りが発見されると、その情報はF[01130の出力部分に記憶される。次
にMC81114はライン1133上の割込信号ラミ割込11!1lliiil
fl 132t、:与え、次ニ割込制御装w11132はマイクロプロセッサ1
118による処理を割込みそしてマイクロプロセッサ1118に信号を与え、マ
イクロプロセッサ1118はデータがMC8からFIFO1130の出力部分に
おいて利用可能であるということを示す。
次にマイクロプロセッサ1118はFIFO1130の出力部分におけるデータ
を調べ、そしてどのような動作が要求されているかを決定する。
上述の回路は、コンピュータの分野において周知の任意のものであってよい。そ
のような回路のいくつかの例を、ここで述べる。
制m装置1156は、インテル社製の8288型のバスl1IJ御装置であって
よく、それは上に参照したMC8−86使用者のマニュアルに説明されている。
プログラマブルタイマ1131はインテル社製の8253型のプログラマブル間
隔時計機構であってよく、それは上に参照したMC8−86使用者のマニュアル
に説明されている。割込制御装置1132は上に参照したMC8−86使用者の
マニュアルに説明されておりインテル社製の8259A型のものであってよい、
RAM1126および1128は共に好ましくは、コンピュータ分野において周
知のスタティック集積回路チップ回路からなり、外部回路によってで体なくQA
pmieボード1109によってのみアドレスバス1168を通じてアクセスさ
れる。マイクロプロセッサ1118によって実行される種々のプログラムによつ
て用いられる変数および定数は、説明するようにRAM1126.1128内の
予め定められる記憶位置に記憶される。
外部回路は、キーボード1102Aを有する標準的なオペレータ端末1102を
含み、オペレータはキーボード1102A上にil闇を含む原情報を構成する。
端末はキーされた原情報をデコードし、テキストを表わす機械読取可能な2進コ
ード化された出力11!@を与える。端末1102はまた陰極線1(CRT)デ
ィスプレイ1102Bを含み、そのディスプレイ上にはオペレータによる**お
よび使用のために111間の結果がディスプレイされる。従来のインターフェイ
ス110aは、端末1102をバス1110と接続する。
マイクロプロセッサ1118はコンピュータ分野において周知のコンピュータプ
ログラムlll1lマイクロプロセツサの多くの形式のうちの任意のものであっ
てよく、図示の目的で、上に参照したMC8−86使用者のマニュアルに説明さ
れたインテル社製の86/12g1のものである。マイクロプロセッサ1108
の動作を制御するためのコンピュータプログラムは、外部ROM1106内に記
憶されている。ROM1106は、コンピュータ分野において周知の従来の集積
回路リードオンリメモリである。ランダムアクセスメモリ1104は、マイクロ
プロセッサ1108のためのスクラッチパッドメモリである。マイクロプロセッ
サ1108によ?て用いられるプログラム変数は、RAM1104内に記憶され
ている。また各意味のある質問の単語に対応するディスク記憶装置1107内の
データベ、−スからのエントリ単語のファミリーは、QAP@御ボード1109
に転送される前に、マイクロプロセッサ1108によつrRAMl 104内G
C記憶サレル。QAPIII御ホード1109がエントリ単語のファミリーの中
から容認し得る綴り誤りおよび容認し得る語尾変化を決定した後、これらのエン
トリ単語を次に位置決めするために用いられ得るRAM1104内の結果バッフ
ァ内にパケットが記憶される。
システムの動作の他の様子は、上述の参照マニュアルから明らかであろう。
■、バー ゛ 工 −の CS
纏り誤り類別システム(MC8)1114は、この発明に関する綴り誤り類別方
法を実行するための手段を具体化するJMC911141よ、先入れ先出しバッ
フy(F(FO)1130の入力部分を通じて質問、エントリおよび関連するパ
ラメータを受ける。FIFO1130の入力部分(夏)は、MC81114のマ
イクロプロセッサ1118(811図)とのインターフェイスであるつMC81
1’!、1は、特別の喝り誤り類別方法を実行し、FIFO1130の出力部分
(0>を通じて?−/クロプロセ・Iす1118に結果を戻し、そして割込信号
を発生してマイクロプロセッサ1118にその動作の完了を知らせるつ第11図
はN、4C81114のプqヅク鳴であり、またFIFOバッファ1130,1
5よびバス1216および1218(第1図参照)を示1ノでいる。、FIFO
1130が接続される!!制御パス12115よびデータバス1216は、残り
のQApP1111ボード1109(11図II照)との1通倍を与えろ、MC
91114の心1部は、プログラムmsマイクロブQセツナ1240である。マ
イクロプロセッサ1240はコンピュータ分野において周知の任意のものであっ
てよいが、好ましくはシーネチフク社製の8 X 30 Q t<イボーラマ!
りロプロセラ汁であり、それはシーネチ・ツク社によりて1977年10月に米
国において刊行き4だシーネチツク8X3001*マニュアルに説明されており
、その内容をここに援用する。
マイクロプロセッサ1240は、プログラマブルリードオンリメモリ(FROM
>1236内に記憶されたファームウェアの形式のコンピュータプログラムによ
って制御される。好ましい実施例において、2つのFROMが用いられる。しか
しその数は、この発明にとって特別な重要性を持たない。ランダムアクセスメモ
リ(RAM>1242は、マイクロプロセッサ1240によってスクラッチパッ
ドメモリとして用いられる高速スタティックRAMである。RAMの数は、特定
の目的のために変化ざ臀智よい。
I10ポート1250は従来の入力/出力ポートであり、そのポートはマイクロ
プロセッサ1118に割込を与えて、FIFO1130の入力および出力部分の
動作をIIIIIシ、かつFIFO1130の入力および出力部分の状態をモニ
タするために用いられる。出力ポート1250はライン1133上に割込信号を
発生し、割込信号は、結果がFIFol 130の出力部分内に準備されている
ときには、QAPIN御ボード1109(第1図)内の割込−m装置1132と
拾俵される。
I10ポート1152および1154は、アドレスおよびデータバス1156と
FIFOの入力および出力部分との閤に接続される。、I10ボートl 252
は、データバス1156を通じて、FIFO1130の入力部分からマイクロプ
ロセッサ1240へ16ピツトの7−タを入力する。
T/′0ポート1254は、8ビツトの結果をマイクロプロセラ#1240から
FIFO’1130の出力部分へ出力する出力ボートを形成する。戻されるより
も多くの量の情報がMC8に対して送られるので、一度に16ビツトがFIFO
に対して入力され、そして一度に8ビツトだけが出力される。例えば、MC8に
対して送られるすべてではない情報が、QAPIIIIIボード内のマイクロプ
ロセッサ1118に対する容認し得る綴り誤りとして戻される。適当な■10ポ
ートの詳報は、当業者にとっては明らかであろう。
しかし例示のために、I10ボートはシーネチツク社親の8T32型のものであ
ってよく、それは上述のシーネチツク8X300基準マニュアルに説明されてい
る。
アドレスランチ1158は、アドレスおよびデータバス1156とRAM124
2との園に設けられる。アドレスラッチ1158は、マイクロプロセッサ124
0がランダムアクセスメモリ1242をアクセスするときに特定のアドレスをR
AM1242内にラッチするための出力アドレスラッチである。アドレスランチ
1158は当業者にとって周知の多くの型のうちのいずれのものであってもよい
が、好ましくはそれはシーネチツク社製の8T31型のものであり、それは上述
のシーネチツク8X300!1準マニュアルに説明されている。
QAPI11御ボード1109を通ずる質問およびエントリに対する典型的なフ
ローを、ここで第1図および第14図を参照して説明する。QAPIIIIIボ
ード1109上のマイクロプロセッサ1118がMC31114に対する入力を
持つとき、マイクロプロセッサ1118はI10出力命令を行なうことによって
、FIFO1130の入力部分(1)内に質問、エントリ、または制御シーケン
スを与える。マイクロプロセッサ1118に対して、FIFOの入力部分は、た
とえば同一のI10ポートアドレスで64X16ピツトの深さのちょうど別のI
10ボートである。マイクロプロセッサ1118がFIFOに対する出力命令を
行なうごとに、16ビツト単語がFIFOの入力部分内に、FrFOが一杯にな
るまでリプルする。このときもしMC81114が空でなければ、FIFOの入
力部分およびマイクロプロセッサ1118はFIFOに対する他の出力を行なお
うとし、持ちジェネレータ1154(第1図)が能動化され、MC8がFIFO
の入力部分からデータを除去し始めるまでマイクロプロセッサ1118に対する
持ちサイクルを発生するつしかしこの状況は、マイクロプロセッサ1118がF
IFO内に書込むよりも速い速度でMC8がFIFOの入力部分をアンロードす
るので、はとんど起こらあるかどうかを見ることである。このために〜IC31
114は、すべてのエントリ、質問、または制御シーケンスがロードされるまで
、入力FIFOからRAM1242内のそのスクラッチパッド内にできるだけ早
くデータをアンロードしようとする。次にMC81114は、第2図と関連して
議論された綴り誤り類別プログラム(MC8)1234によって制御される方法
を実行する。第11図に示されるようなMCSプログラムは、RAM1242内
のデータに基づいてFROM1236内に記憶されており、そして結果をFIF
O1i30の出力部分を通じてマイクロプロセッサ1118に送り戻す。すべて
の結果がFIFOの出力部分内に置かれると、MC8はマイクロプロセッサ11
18に知らせるためにライン1133上に割込を発生する。
統いてマイクロプロセッサ1118は、■10人力命令を行なうことによって出
力FIFOをアンロードすることを始める。
■、 AP プロ ラム PCTR
を いる および
A、テーブル120
き リ テーブル1201
し る テーブル1202および
テーブル12o4の および
4つのテーブルは、質問単語の接尾辞を類別するために、および(エントリ単語
の)7ミリーからの)エントリ単語が、対応する質問単語の容認し得る語尾変化
であるかどうかを決定するために、質問単語から接尾辞を剥ぎ取るための処理お
よび方法に用いられる。これらのテーブルは、第4A図に示された類別テーブル
1200.第4B図に示された接尾辞剥ぎ取り状態テーブル1201.第4図に
示された容認し得る接尾辞テーブル1202.および15図に示された接14!
辞テーブル1204である。これらのテーブルの各々は記憶されており、アドレ
ス可能であり、第1図のシステムのROM1122.1124内の別々の予め定
められた記憶位置内のデータ処理システムによってアクセス可能である。類別テ
ーブル120oおよび接f4辞剥ぎ取り状態テーブル1201は、(以後詳細に
示される)PSUFIXプログラムによって用いられるローカル変数である。容
認し得る接尾辞テーブル1202および接尾辞テーブル1204は、PQAPC
NTRLプログラム(テーブル5参照)によって用いられるローカル変数である
。
上述のテーブルを構成する前に、設計者は、剥ぎ取り規則のセットおよび対応す
る容認し得る接尾辞のリストを作らなければならない。これらの規則およびリス
トは、興味ある特定の書かれた言語をIII寮し、関連する1!語の語尾に現わ
れる文字のパターンに注意することによって作られる。
たとえば下に示すのは、4グループの単語である。
グループ1 、RAT、’E、RAT、/ビS。
RAT、/ED、RAT、、/ING
グループ2. 1NTEREST。
INTEREST/ED
グループ3. HELP、HELP、/S。
HELP/ED、HELP/ING
グループ4. COMPUT/E、COMPLJT/ESCOMPIJT/IN
G
各グループにおける*1FFlの各々は、同一グループ内の他の半語のIFll
!シ得る語尾変化として設計者によって考察される。また設計者は、興味ある言
語に従って、各単語のどの部分が冊幹であるべきかおよび各単語のどの部分が接
尾辞であるべきかを考える。上の例は、スラッシュの左側の文字を語幹として考
え、スラッシュの右側の文字を接尾辞として考えることによって与えられている
。
設計者は、単語に対するいかなる末尾または末尾の欠乏(すなわち空白)が、I
FIlシ得る語尾変化を形成するにおける容認し得る接尾辞であるかということ
を考えねばならない。たとえば、単11RATは、グループ1におけるいかなる
単語の容認し得るaji!変化でもない。同様に、単IHELPMATEはグル
ープ3における単語に対する容認し得る語尾変化ではなく、単1ICOMPLJ
TERはグループ4における単語に対するmat、得る語尾変化ではない。
したがってテーブルの設計者は、4つのテーブルの設計に用いるために、剥ぎ取
り規則のセットおよび対応する容認し得る接尾辞リストを作る。
第12図は、剥ぎ取り規則、容認し得る接尾辞リスト、および1111!シ得る
接尾辞を持つ単語の例を含むそのようなテーブルの一例である。成る記号が、便
利のために用いられる。たとえば、記号「−」はいかなる文字でもこの位置にあ
り得ることを意味し、記号「/」はそこが語幹の文字と接尾辞との圀の剥ぎ取り
点であることを意味し、また「空白」は接尾辞がゼロまたは文字がなりことを意
味する。
各番号の付いた列は、別々の規則に対応する。規則および列は、便利のために同
−lI@によって与えられる。
例として、列NO,1,テーブル12における規則1を考える。記号−/Eは、
文字Eがそれが語幹のいかなる文字に続くときにも接尾辞であるということを示
す。列No。
1の右側において、接尾辞Eに対する容認し得る接尾辞は、E、ED、ES、
およびlNG1’あり、まタコれらノamし得る接尾辞を用いる単■の例はRA
TEおよびTABLEである。はとんどの場合において、創造される語幹は、原
質間単語の容認し得る語尾変化として処理されるために戻されるべき原エントリ
単語と充分に類似する単語を創造するために語幹に付加される、いかなる容認し
得る接尾辞をも持ち得る。上に説明したように、もし原単語がRATEであった
なら、そのときは語幹はRATであり、またその語幹に対する容認し得る語尾変
化のリストはRATE。
RATED、RATES、およびRATINGである。
規則29列NG、2を参照して、記号−/’ESは、文字ESが語幹のいかなる
文字にも続く容認し得る接尾辞を形成することを本職する。列N0.2の右l1
lIP一対して、WrWti?Esに対する11Rし得る接尾辞はE、ED、E
S、およびINGを含むということが気付かれよう。これらの接尾辞を用いる単
語の例け、5TATESおよびCOMPLITESである。同様の解析が、容認
し得る接尾辞の規則および列NO,3,4および5における規則に対する例を調
べるために用いられ得る。列No、6は、Mill−/空白として示す、これは
、列No、1〜5における規則によって含まれない文字または文字の組合せが、
不履行または剥ぎ取り不可能な語尾、したがって接尾辞ではないとして考えられ
るということを意味する。列No、6の右側で、単語には接尾辞がなく、容認し
得る接尾辞は空白、S、ES、ED、およびINGである。剥ぎ取り可能な接尾
辞を持たないそのような単語の例は、HE8REW、0RED I T。
およびINTERESTである。
儒ぎ取り規則および容認し得る接尾辞を作ると、成る例外が具現化の簡単さおよ
び容易さのために決定される。テーブル12に対するそのような例外の例は、テ
ーブルの底部方向に認められる。たとえば、もし語幹長が2文字の長さよりも短
ければ、または語幹内に母音がな(かつ接尾辞が「S」でなければ、そのときは
文字は全く剥ぎ取られず、テーブル12の列6で示される不馴行刹ぎ取り規則が
容認し得る接尾辞を決定するのに用いられる。もし語幹がすべて数字であれば、
さらに例外が起こる。もし語幹がすべて数字であれば、そのときは容認し得る接
尾辞は空白または「S」のみである。
テーブル12の設計をより詳横に考察すると、各t!4周(すなわち各列)は単
語の末尾での成る特定の文字パターンの種類を認識して形成されており、ゼロま
たはより多い文字を剥ぎ取るために用いられるように意図されている。
ざらに接尾辞類別II(ここでは成るときは接尾辞類別指示と呼ばれる)は、*
iit、得る接尾辞のセットを組合わせた文字パターンの種類に対して指定され
る。質問単語から作られる語幹に付加されるとき各員なった値の接尾辞類別指示
に対する容認し得る接尾辞のセットは、jlrRI!71開の容認し得る語尾変
化であるべ8i*n*aと充分に類似であると考えられるJ1語を作る。より詳
細に説明すれば、接尾辞類別指示は各質問単語に対して形成され、そして(その
始めの文字が質問単語の容認し得る綴り誤りであると決定された)エントリ単語
が質問単語の適当なm**化であるかどうかを決定するために後で用いられる。
これは、エントリ単語の接尾i#をm尾辞類別指示によって指定された種類にお
ける容認し得る接尾辞と比較することによって行なわれる。
テーブル12にお番ツるように、一旦規則のセットが作られると、それらの甲の
曖昧3を取除いて、単語が1つの方法以外で剥ぎ取られ得ないというようにする
ことが重要である。規則は、質問単語から接尾辞を剥ぎ取るのにそれらが通用さ
れるべき順序に、テーブル内で位置決めされるべきである。テーブル12.1i
lj2および5におけるものは@味さが全くないということに注月されたい。そ
の理由は、WA門2が最!Aに1用され、そしてもしそれが失敗すれジ次に規則
5が適用されるからである。
一旦規則が作られると、その規則にulEされるべき丁べての可能な文字の目録
が作られる。この文字の目録は、次に類別チー・プル<11!4A図)を作るの
に用いられる。類別テーブルは、データベースにおいて見出されるべきすべての
可能な文字を、同じものとして扱われ得る文字の種類にマツプする。デープル1
2を参照すると、D、E、G、I。
さ1.S、おJ:び他のすべての文字、の7つの文字の種類が存在する。各文字
の種類は、次に文字タイプと呼ばれる値に指定される、。質問の文字は、ASC
IIコード化された文字に表わされる。類別テーブルは、各ASCIIコード化
された文字をその文字タイプに麦換するのに用いられる。
たとえば、7つの興なった文字の種類したがって文字タイプが用いられる。テー
ブル8は、英語のアルファベット文字に指定される文字タイプの値の一例として
含まれている。
たとえば、7つの文字の種類が10進数の文字タイプ0〜6に指定される。一般
的にテーブル8においておよび第4A図において示されるように、類別テープ1
1/1200の順序アドレス可能メモリ記憶位置に記憶され、またアドレスとし
てAS、CIrコード化された文字を用いてアクセス可能である。この方法にお
いて、質問単飴の特定の文字に対するASCIIコード化された文字は、類別テ
ーブル1200をアドレスするため、およびテーブルの対応する記憶位置から対
応する文字タイプを読出すために用いられ博る。
たとえば、ASCIIコード化された文字A、B、D、および2に対する文字タ
イプはO,0,1みよびOであり、また第4A図における類別チー1ル1200
の記憶位置1200a 、1200b 、および1200c で記憶される。
一旦頂別テーブル1200が構成されると、148図に示される接尾辞剥ぎ取り
状lテーブル1201が構成される。たとえば、接尾辞剥ぎ取り状態テーブル1
201は、各行および列の交渣点でノードを持つ列および(テに配列されて示さ
れている。j−プルの各行は、類別テーブル1200に含まれる文字タイプの別
々のものに対応する値に指定される。たとえば、テーブルの行は、別々の可a!
な文字タイプに対応する0〜6(第4B図)と、左から右へJ1号が付けられて
いる。このテーブルはさらに、状態に対応する列を持っている。各列またはテー
ブルの状態は、質問1語の末尾での文字を調べる処理過程におけるス1ツブを表
わしているっ各状態は、処理における1地点での質問*iの末尾での特定の文字
分!R表現を表わす。したがってテーブルの各列また(よ状態は、叉7タイプが
存在すうのと同じたけ多くの7−ドを有している。
各ノードで2億、ぎ土しろの蚤よ、2つの這すなわち ’J A CTl0Nコ
ードコ値く以後時々ACTfO’JまたはAとして1照される)、およびrNE
XT状III 、/選択コード」(以後時々NEXTまたはNとして参照される
)である。
ノード1201Aに対するACT ION(7\)およヒNEXT(N)は、た
とえば第4B図においてA/Nによって示される。ACT ION (A)およ
びNEXT (N)に対する値は、特定の*mおよび剥ぎ取られるべき!lFv
&シ得る接尾辞にとって必要とされるので、第4B図のテーブルを通じて分散さ
れる他のノードにもまた含まれるということが理解されよう。
各ノードでのAC−rIONの値は、起こるであろう特定の一作の実行を表わす
。各ノードでのNEXTの値は、マシンがアクセスするであろう接尾辞剥ぎ取り
状態テーブル1201の次の状態(または列)であるか、またはそうでなければ
、容認し得る接尾辞のリストを表わす(かつさらに状態テーブル処理が実行され
るべきでないということを示す)選択コード(または接尾辞類別指示ンである。
テーブル9は、テーブル12に示される規則および容認し得る接尾辞に対する接
尾辞剥ぎ取り状態テーブルの例を与える。テーブル9の右側は、理解の容易のた
めの状態の表示を与える。接尾辞テーブルにおいて各ACTION(A)*に対
してとられるべき動作は、テーブルの底部に示されている。NEXT(N>に対
応するいくつかの値は、その値の前にrSJを持っている。これは、それが状態
値でありかつ接尾辞剥ぎ取り状態テーブルの列を選択するために用いられるべき
であるということを意味する。「S」のないNEXT (N>に対する値は、選
択コードを意味し、接尾辞類別指示として用いられるべきである。たとえば、N
EXT (N)値S4は、接尾辞剥ぎ取り状態テーブルの列4に対応するが、N
E’XT(N)値4のみは4の選択コードまたは接尾辞種類指示を意味する。
接尾辞テーブル1204(第5図)は、テーブル12におけるすべての容認し得
る接尾辞リストからすべての可能な接尾辞の独自のリストを作ることによって構
成される。
次にこのリストは、処理にとって最も便利な方法で配列されかつ構成される。好
ましくはこれは、接尾辞の長さによって順に行なわれる。第5図を参照すると、
テーブルは各列および1行の交差点でノードをもって列および行に配列されてい
る。各列の最初の行1210におけるノードは、右に示された接尾辞における文
字の数を特定する文字計数である。第1の行1210の右側の行1212におけ
るノードは、0で始まって連続的に番号が付けられている。各ノードは、接尾辞
の文字を表わすASCIIコード化された文字を記憶するための記憶位置である
。したがって各列は、テーブル12における容認し得る接尾辞のリストに含まれ
る異なった容認し得る接尾辞の文字または文字のストリングを作り出す1つまた
はより多くの文字を含む。接尾辞テーブル1204における列は、0で始まる連
続数字が付けられている。より詳細に説明すれば、各列に対する数字は接尾辞索
引と呼ばれる。接尾辞指示は容認し得る接尾辞テーブル1202内に記憶され、
また接尾辞テーブル1204の対応する番号の付けられた列をアドレスして、そ
れによプてそこからIF沼し得る接M!辞に対する文字または文字のストリング
を読出すために用いられる。
容認し得るW1r@辞テーブル1202(第4図)は、特定の接尾辞種層指示(
WDSELECT)または接尾辞の種類に対するすべての¥!I隠し得る接11
!辞のリストを位置決めするために用いられる。このために設計者は、それぞれ
別々の接尾辞種1[i1i示(WDSELECT>に対するすべての独自の容イ
し得る接尾辞のリストを作り、そして大間の接尾辞の代わりに対応ず6接尾辞指
示を配置する。リスト内の各接尾辞種類指示に対するすべてのW4果n接尾辞指
示は、次に、実際の接曜陣が位IF決めされかつ請出され得るi題辞テーブル1
204の列に対する地点となる。
容〕し得る接尾辞テーブル1202(第4図)は、たとλば交楚鵡でノードを持
つ列および行に次に構成される。
列は、接尾辞種類指示(WD S E L E CT )と対応して、0で始ま
る連袂数字が付けられている。したがってテーブルに1′T3ける列は、接q>
mm指示を用いて7ドレス可lである。特定の攬尾辞類別摺示に対するすべての
接尾辞摺示己よ、テーブル4の行1208におけるノードでの対応する列に記憶
される。、(行1208の左側の)行1206内の各列におじるノードは、対応
する殉における接尾辞索引の1jttr与える計数値を記憶する。
テーブル11および10は、テーブル12にホされる規則および容認し得る接尾
辞に対する。接尾辞テーブル1204および容認し得る接尾辞テーブル1202
の内容の例を示す。容認し得る接尾辞テーブル1202の各列は、別々の値の容
認し得る接尾辞指示に対応する。たとえば、容認し得る接尾辞指示Oはテーブル
10の列0(よって第4図の列O)に対応し、またSat、得る接尾辞索引はO
および2である。テーブル11を参照すると、容認し得る接尾辞索引のOは、ゼ
ロを有するか、または容認し得る接尾辞を全く有さないかのいずれかである。容
認し得る接尾辞索引の2は、1つの容認し得る接尾辞文字すなわちSを含んでい
る。
ここでテーブル9〜12を参照して、それらがいかにして設計テーブル12に示
される規則および容認し得る接尾辞を具現化するかについて考察する。例として
、質問単語RATEおよびエントリ単11RATED、RAT、およびRAPT
INGを考える。質問単語の語幹はRATである。
エントリ単語のm頭の文字は、すべて語幹RATの容認し得る纏り誤り(ここで
この用語は正確な一致を含む)である。エントリ単語は、1文字挿入誤りがあり
したがって容認し帰る綴り誤りでもある単11RAPTINGを含む。まず最初
に質問単語RATEから接尾辞を剥ぎ取り、接尾辞種類指示を引出した後、その
接尾辞種類指示に対応する容認し得る接尾辞を選択し、そして質問単語のIFI
!シ得る語尾変化であるエントリ単語を決定するためにエントリ単語の接尾辞と
それらとを比較するのに、ディジタルデータ処理システムがどのようにテーブル
を用いるがということについて考察する。
最初にデータ処理システムは、質問単語RATEから接尾辞を剥ぎ取り、接尾辞
rEJを残す。このために(賀四単11RATEにおける)文字EのASCII
コード化された表示が、類別テーブル1200(テーブル8.第4A図)をアド
レスするために、および対応する輯憶位置から文字タイプを値2を読出すために
用いられる。接尾辞剥ぎ取り状態テーブル1201(テーブル9.第4B図)が
、次にアクセスされる。、初期状態のOおよび文字タイプ2に対応する列01行
2の交差点でのノードは、(−〇および2を用いて)アドレスされ、そして次の
ように読出される。
ACTION (A)−1,NEXT (N)−3゜ACTION (A)値1
は、質問単語に対するサイズ値が1だけ減少されて、それによって長さが4から
3文字になり、文字Eを剥ぎ取り、語幹RATを残すようにする。
NEXT (N)は「S」を含まないので、接尾辞は完全に剥ぎ取られてしまい
、NEXT (N)における値は接尾辞類別指示であり、そしてテーブル120
2を用いるそれ以上の状態または動作は必要とされない。次に接尾辞類別指示3
は、WDSELECTと呼ばれる変数として記憶される。次にシステムは、語幹
RATをエントリ単11RATES、RATED、RATおよびRAPTING
の11頭の文字と比較し、そしてすべてのエントリ単語が語幹の容認し得る騙り
誤りであることを決定し、したがってそれらを容認し得る纏り誤りとして戻す。
別の所で説明するように、―り誤り種類指示は、罠される各エントリ単語の綴り
誤りの種類を示してまた形成されている。この指示は、エントリ単語における接
尾辞の位置を決定するために用いられる。
戻されたエントリ単語は、ここで質問単語のIF酩し得る語尾変化をチェックさ
れる。特に接尾辞類別指示(WDSELECT−3)が容認し轡る接尾辞テーブ
ル1202(第4図、テーブル10)にアドレスを形成するために用いら°れ、
したがって接尾辞索引1.3.4および5が続出される。これらの接尾辞索引は
、接尾辞テーブル1204の対応して番号の付けられた列を形成しかつアドレス
するために用いられる、変数5UFF IXを形成する。対応して番号の付けら
れた列1.3.46よび5は、読出されて、(ASCIIコードにおける)容認
し轡る接尾辞の次のリスト、すなわちE、ED、ES、およびINGが形成され
るようにする。戻されたエントリ単語の各々における接尾辞の位置は、質問単語
の語幹に対するサイズll[<812E)および綴り誤り種類指示を用いて決定
される5次に容認し得る接尾辞のリストは、戻されたエントリ単語の各々におい
て決定された接尾辞と比較され、そして接尾辞りたがってこれらの単語−は、容
認し得るmyis変化ならびに質同単語の′f!認し得る驕り誤りであると決定
される。同等性がないことは単11RATにおける空白接尾辞で検出され、した
がって単IRATは容認し得ない語尾変化として拒否される。このようにテーブ
ル12の規則1(列1)は、4つのテーブルに具現化または規定されている。
テーブル12におけるl1IJ5は一/Sである。この規則は規則1、すなわち
−/Eと似ているが、これは規則1の場合のように初期状態においては操作され
得ない。これは1なわち、−/ESである規則2が、文字Eに続く語尾でSをま
た持つからである。このことは、質問単語からの接尾辞の剥ぎ取りの間に、テー
ブル1201を用いて*IIJ2がまずチェックされねばならないということを
意味する。
もし規則2が質尚単語における文字Sの前の文字を調べて満足されなければ、そ
のときは規則5が実施されよう。このプロセスは、列OにおけるSに対する文字
タイプ6に対応する行におけるテーブル9のテーブル1201に具現化されてい
る。これらの2つの行の交差点でACTION(A)&tOrあり、またNEX
T (N)値はS3である。
ACIION(A)値は、動作が実行されるべきでないということを意味し、値
S3は、接尾辞剥ぎ取り状態テーブルの対応して番号の付けられた列をアドレス
しかつアクセスするために値3がNEXT値として用いられるべきであるという
ことを意味する。NEXT値3に対応する状態列において、各ノードはEに対す
る文字タイプ2以下のものを除イr 問−r g ル。ACT ION (A>
eJ:?JNEXT(N)値がこのノードでテーブルから読出されると、ACT
ION (A)値2は語幹長値が2だけ減少されるようにし、それによって文字
ESを剥ぎ取り、モして(その前にSを持たない)NEXT (N)113は選
択コードまたは接尾i1F順別指示である。
NEXT(N)I[3は、接尾辞テーブル1204(テーブル11)をアクセス
するために次に用いられる対応する容認し得る接尾辞指示を読出すための容認し
得る接尾辞テーブル1202(テーブル10)の列3をアクセスするために統い
て用いられる。テーブル9を参照すると、Eに対する文字タイプ2JX下のもの
とは興なる残りの状態列3はAGTION (A)値1を有しており、したがっ
て語幹長値が1だけ減少されるようにし、そ゛れによって単語の11尾でSめみ
を剥ぎ取り、したがって規則5(テーブル12)を満たすというごとが気付かれ
よう。
テーブル12の規則4は、−/ T N Gであり、3つの状態つまり0.2お
よび4によってテーブル120″!(テーブル9)において操作される。初期状
態Oにおいて見出される文字Gは剥ぎ取りを引起こさず、そして状s2で処理が
続く。もしNが状s2の間に質問単語において見出されれば、語幹長を1だけ減
少することによってGが剥ぎ取られ、そして次に状態4に入る。もし状1!I4
において文字■が見出されれば、そのときは文字タイプ4および状態列値4を用
いτ対応ずbノードが運出され、八〇Tl0N(,1値2およびNEXT(\)
+@4が、糞土ざ4るようにす・5ユA Cr I (LJ (A 、l fg
12 U、 R’l?Nff121tケ減少8nルヨうにし、それによって質問
単語からNおよびfを剥ぎ取り、モしてii![3は容認し冑る接尾辞テーブル
12Q2および碕いて接尾辞テーブル1204(テーブル10および11)をア
クセスするための接尾辞類別指示として用いられる。
テーブル9に戻って、もし状s2においC文7N以外の任意の文字が質問単語に
おいて見出されれば、そのときはACTION (A)値0おヨヒN EXT
(1’J ) (1184出され、(剥ぎ取りに関する限り)Do N0THI
NG状態を、および容認し得る接尾辞指示1を引起こし、それらはテーブル10
および11に関してテーブル11から青られるべき規則6に対する容認し得る接
尾辞を引起こす。もし状1[4においてI以外の任意の文字が見出されれば、そ
のときはテーブル9に関して、語幹長が1だけ増加されるようにし、前の状態の
間に剥ぎ取られた語幹に付は戻される1次に再U’NEXT(N)値1は、テー
ブル1202(テーブル10’lの列1に対応する@認し得る接尾辞指示を形成
し、それは次にテーブル12C4,(テーフ゛ル11)の列6での容認し得る接
尾辞が読出されるようにする。これは次に効果的にN4則6を遂行する。
テーブル12の規則を具用化しかつ容認し得る接尾辞を作り出すために、異なっ
た方法が用いられてもよい。たとえば、状SO,行3に対してさらにACT 1
ONlI理を作ることによって、ディジタルデータ処理システムは文字rINJ
が現在の文字Gに先立つかどうかを自動的に決定し得る。もしそうであれば、値
NEXTは自動的に4にセットされ、語幹は3だけ減少される。もし文字rlN
Jが現在の文字Gに先立たなければ、そのときはデータ処理システムはNEXT
IIの自動的セツティングのために1の省略時の選択コード(すなわち接尾辞類
別指示)に配列され、次に省略時の選択コードは規則6で指示された容認し得る
接M!辞が読出されるようにする。
たとえばテーブル12の規則には、次の状態が必要である。
1、常に初期状態を持つ。
211則1は初期状態に満足される。
3.14則2および5は成る特定の「S1状態で満足される。
411則3は成る特定のr D 2状態で満足される。
5、規則4はrGJ状感およびr N a 、+状態によって満足されう。
6、規則6は上の状態のすべての省略時のノードによって満足される。
ACTIO−Nコードは必要とされるときに作られる。ACTIONコード0,
1.2はより共通である。ACTIONコード3は、「G」の不必要な剥ぎ取り
を妨げるために必要とされる。
いずれの、!!!I現化が良いかということが選択の問題であり、真理化の簡単
さまたは複雑ざに影響し得る。たとえば、八〇T IONコードタイプの数と状
態の数との開にはトレードオフが見られる。複雑な規則のセットに対して、状態
の激増が、多くの文字種類を必要とする規則セットに対してとりわけコード空閤
同嘔を発生するので、より多くのACT I ONコードタイプが61である。
新しい規則がテーブル12において作られるとき、存在するテーブル内に規則を
椀−または141I化するのにいくつかの方法が存在する。もし1w剤が以前に
量ったことのない新しい文字を扱うのであれば、他の文字タイプしたがってiI
尾#剥ぎ取り状態テーブル1201(テーブル9)における愉の行の創造を必要
とする。もし容認し得る接尾辞リスト内に新しい接尾辞が存在すれば、そのとき
は接li[辞テーブル1204内の適当な所で挿入が存在しなけれげならず、害
目し得る接尾辞テーブル12o2は、挿入が索引値を古い接尾辞に対して変更さ
せるところで修正される必要がある。
ここで、設計者がいかにしてテーブル8〜12に1ilJを付加するかというこ
との例を示す。テーブル8A、9A。
10^、11Aおよび12Aは、以下のものを加えるための、テーブル8〜12
に対する変更を示す。
JLIジー−一シ 墨 ス −Jl
−L/Y E、Y、IES ASSEMBLY。
PROBABLY
テーブル120に示されるようにテーブル12にこの規則を付加することは、次
のことを必要とする。
1、・ 類別テーブル1200 (テーブル8八参照)におけるしおよびYに対
して、それでれ2つの新たな文字タイプ7および8を作り出すこと。
2、2つの新たな行(7,8)を新しい文字タイプの各々ならびに新しいrYJ
状態列(5)に対する接質問単語がYで終了するならアクセスされる。もしLが
Yに先立つなら、新しい規則のみが適用される。このため、傭の状態(列5)が
付加されねばならない、(85)のノードは、「何も行なわずかつ状態5に移行
して次の85文字を最後に調べる」ということを詳報に示す。興味あるのはLが
先立つならYを剥ぎ取るということのみであるので、状態5の第71目の行のみ
が省略時の値とは興なるACT「単語の末尾から文字(Y)を剥ぎ取り、容認し
得る接尾辞テーブル1202の列5において発見されるべき容認し得る接尾辞リ
ストで停止する」 (テーブル10Aおよび4B以下参照)ということを詳報に
示す。新しい列および2つの新たな行によって付加される他のすべてのノードは
、テーブル12の他の規則をR睨化するために省I@時の値である。
3、Ill得る接尾*”t’およびIESは斬たな接尾辞であるので、両Iは1
題辞テーブル1204内の適当な位置で挿入されて、同一サイズの接尾II(テ
ーブル11A1iM)でのサイズおよびアルファベットの順序による整列を確実
りしなければならない。
4、 新たな規則の結果として、容認し得るII尾題辞−ブル’l 202u2
つのタイプの変更を必要とする。
A、 新たな容認し得る接尾辞をvi尾題辞−ブル内へ挿入することによって変
更されたすべての接尾辞ストリング索引;
たとえり、aから4へ変更されたED、4から5へ変更されたES、5から7へ
II更されたINGB、 第6列(索引の5)はテーブルに付加されてE。
Y、IESのこの新たな独自の容認し得る接尾辞な表わさなければならない。
この規則は、−幹の末尾ならびに貢四単■の接尾辞が接尾辞wllIN示の決定
を与える状況の一例であるということが注意されるべきである。
接尾1llI別がいかにして決定されかっi!尾題辞質m*iirAssEMB
LYJに対しいかにして剥ぎ取られるかということを**する0文字Yは、接尾
辞剥ぎ取り状態テーブル1201(テーブル9A>の列0行8がアクセスされ8
、J:うにLz、ACTION(A)−0NEXT(N)−85を読出t、NE
XT (N)=S54t、状態:l−t’15す、同一のテーブルの列(または
状態)5がアクセスされるようにする。ACllON (A>−0は、質問単語
に対する5IZEl[を減少するために何も行なわれずしたがって文字はまだ全
く剥ぎ取られるべきでないとい)ことを意味するう
質同の次の文字は、文字タイプの7に対応するしである。
したがってNEXT(N)状態コードの5および文字タイプ7に対応する列5行
7でのノードは、読出されてACTION(A)−1NEXT(N)−5(7)
結果となる。八〇Tl0N (A>−1t、5IZEIが1だけ減少サレテ、そ
れによりてASSEMBLYからYが剥ぎ取られるようにする。NEXT (N
)Iの5は、選択コードであり、したがうて容認し得る接尾辞テーブル1202
(テーブル10A>の列5から*iit、博る接尾辞リストを騰出すことにおけ
る後続の使用のため接尾辞原則指示WDSELECTとなる。
今rxは′X同軍語がORA I” T Yであるとする。接尾辞剥ぎ取り状態
テーブル1201(テーブル9A)の列0行8は、文字Yに対し文字タイプ8と
してアクセスされており、ACTION (A)−0およびNEXT(N)=8
5の結果となる。しかし、次の文字は文字タイプOである。したがってシステム
は、接尾辞剥ぎ取り状態テーブル1201の列(状態)5行Oをアクセスしてお
り、ACT l0N(A)−0およびNEXT (N)−1の結果トナル。AC
TION(A)−0は「何もしない」状態であり、文字が全く剥ぎ取られないこ
とを意味する。その結果CRAFTYに対する5EZE値は7で残り、文字は全
く剥ぎ取られない。NEXT (N)値1は、選択コードであり、したがって容
認し帰る接尾辞テーブル1202(テーブル10A)における省略時、剥ぎ取り
なし、または−/空白周期に対応する接尾辞類別である。
3−ILL
プログラムによって用いられる種々のデータ構造を簡単に考察する。データ構造
は、QR(O構造(テーブル3)。
PARM構造(テーブル4)、QA溝構造テーブル6)。
およびENTIN構造(テーブル7)である。これらのデータ構造の各々は、連
続メモリ記憶位置のブロックである。
構造は定まった記憶位置にあり、また構造内の各アイテムは対応するブロック内
の予め定められたオフセットである。
すべての構造は、外部RAMI 104内に記憶されるQRIO構造を除いて、
内部RAMI 126,1128内にある。
各構造における個々のアイテムを参照するために時々用いられる速記表記法は、
個々のアイテムの名前の前の構造の名前による。たとえば、QRIO構造に対し
てQRIO。
ENTRIES、QR10,NUMENT、QR10,PACKETSなど、P
ARM構造に対してPARM、ENTRIES、PARM、NLJMENT、P
ARM PACKETSなど、QS構造に対してQS、5IZEおよびQS、S
TEM (58)である。
コンピュータプログラムPQAPCNTRLはQA Pa制御ボード1109に
みける第1図のシステムによって実行され、質問単語と同一の最初の2文字で始
まるデータベースの意味のあるエントリ半開のファミリーの中から意味のある質
問単語の容認し得る綴り誤りおよび語尾変化を決定するための連続した処理を与
える。この発明は最初の2文字についての一致が必要であるということのみに限
定されるものではないということに注意されたい。たとえば、最初の1文字のみ
または2文字よりも多くの文字に一致が必要とされてもよい。PQAPCNTR
LプログラムはROM1122.1124内に記憶されており、マイクロプロセ
ッサ1118によってこれらのメモリから実行される。
第3図は、13A図から第3H図からなり、コンピュータプログラムPQAPC
NTRL、ならびに第1図のディジタルデータ処理手段の動作のその結果どして
の方法およびシーケンスを示すフローチャートである。第3A図から第3H図は
、記号表記法および動作のシーケンスを示す記号を用い、その意味は以下の説明
から明らかとなろう。第3A図から第3H図のPQAPCN丁RLフローチャー
トは、ブロックに配列され、便利のために1〜82の番号が付けられている。
第1図および第3図を参照すると、フローのブロック1の間に第1図のシステム
において電源が投入される。ブロック2(7)IIQAP!11111ホード1
109ハMC81114tr初期状態にリセットし、先入れ先出しくFIFO)
バッファ1130をゼロにクリアする。変数M8612は割込フラグ(テーブル
5参@)であり、ブロック3における持ちループに入るための準備においてゼロ
にセットされる。
QAP制御ボード1109とマイクロプロセッサ1108との薗のすべての通信
は、外部RAM1104(第1図)における1137で示される予め規定される
記憶位置でのバッフ?を通じる。すべての情報(質問単語情報およびエントリ単
語情報)および状態情報は、バッファ1137を通って移動される。MC811
14と残りのQAP制御ボード1109との間のすべての通信は、FIFO11
30を通じる。MC8に対する入力はFIFOの入力部分を通じるが、残りのQ
A P I制御ボード1109に対するMC3からの出力はFIFO1130
の出力部分を通じる。
テーブル1は、種々の単語および同期信号のフォーマットを示す、5つの異なっ
たアイテムが示されており、簡単のためにアイテムの番号の前のテーブル11@
によって参照される。すなわち、アイテム1はテーブル1−1であり、アイテム
2はテーブル1−2であるというようにである。
テーブル1−1を参照すると、リセットに続いて、4つの16進数字1−AAA
A」 (、λA A A l−! )からなる2バイトのmJ朋パターンが、Q
AP制御ボード1109内のマイクロプロセッサ1118によって、FIFO1
130の入力(1)部分に送られるつそのパターンはMC81114によってF
fFOi130から読出され、残りのQA P!1仰ボード]−109と通信を
確立する。一連の文字に続くr Hヨは、ここでは16進数字を表わすために用
いられる。
:vlcs’+ii+は同期パターンに応答して、間−の2バイトの同期パター
ンA A 、41 A i」をFIFO1130の出力(0)部分に送り返し、
かつライン1134上に割込信号eu成シテ制御ai@1132t−割込ミ、制
御1@lf1132はライン1134上に訓込浦号を5える。この割込によって
、コンピュータプログラムP Q A P CN T RLは、2バイトの同期
パターンがFTFO1130の出力部分から除去されるよ)にする。
フローのブロック3は、QAPIIJIIOボード1109が命汚待らループに
移行する状態であり、外部マイクロプロセッサ110 e、からの割込を待ち、
サービスの穫求を意味する。
一瞬フローから逸脱して、QAP制御ボード1109は第1図における外部RA
M1104内の通信バッファ1137を通じて、外部マイクロプロセッサ110
8と通信する。ROM1106内に位置決めされている特別のQAPドライバプ
ログラム(図示せず)は、命令およびパラメータが外部RAM1104内の通信
バッフ1内にセットされるようにし、プログラムQFLPKGによりて情報がセ
ットされたバッファからそれらを移動する。QAPI11御ボード1109が外
部マイクロプロセッサ1108からの割込のための入力を検出すると、QAPm
御ボード1109は適切なパラメータを、通信バッファ内のテーブル3に示され
るQRIO構造のデータからテーブル4に示されるPARM構造ニS動t、、P
ARMIIiiは外aftRAM1126゜1128内の予め定められたバッフ
y1125内に位置決めされている。QAPII御ボード1109は要求の結果
を得て外部RAM1104内の予め規定されたバッファで鬼子すると、外部プロ
セッサ1108がその結果を処理するようにする外部プロセッサ1108に対す
る割込を引起こす入力/出力命令を与える。
QRIO構造(テーブル3)は、命令バイトを含む。興味のある命令は、新たな
質問を示す命令バイト0および継続質問を示す命令バイト1である。これらの命
令に応答する動作は、この後議論する。構造はまた、質問単語と同一の2文字で
始まるエントリ単語のファミリーが位置決めされている外部RAM1104内の
記憶位置に対するポインTは、ENTRIESによって示されるRAMバッファ
内のエントリ単語の数を与える単語値である。QRIO構造における値PACK
ETSは、RAM1104内に位置決めされたパケットのバッファの始まりに対
するポインタである。PACKETSは、データベース内のエントリ単語の完全
な表示である固定長エントリである。このバッファ内のバケツ0.トは、ENT
RI ESによって示されるバッファ内のエントリ単語と1対1形式で対応する
(すなわち第1のパケットは第1のエントリ単語と対応する)。RESIJ L
T Sは、QRIO構造における値であり、PQAPCNTRLプログラムに
よって容認し得る綴り誤りおよび語尾変化であると決定されるエントリ単語に対
応するパケットを受ける外部RAM1104内のバッファの始まりに対スルポイ
ンタであ8.NLJMAVA I LGt、REStJLTSバッファが保持す
るPACKETSの最大値を識別するQRIO構造における単語である。これら
のアイテムのより完全な議論およびそれらの使用は、第3図のフローのブロック
28と関連して与えられる。QCHAR8は、質問単語におシする文字の総数を
識別するバイトである。QUERY (58)は、処理されている質問文字スト
リングの実際の文字を示すアレイである。記号(58)は、ここでは。
対応する文字のフィールドが58文字またはバイトの長さまでであってよいとい
うことを示すために用いられる。し1バイトの情報は、8ピツトの情報を有して
いる。文字は1バイトの情報である。
フローのブロック3に移って、マイクロプロセッサ1108がQAPに対する割
込を発生し、要求を示すとする。
この割込は、ROM1122.1124上の割込操作ルーチン(図示せず)が、
ゼロでない値を、変数M8612(テーブル5)におけるRAM1126.11
28内に記憶するようにする。このことは、ブロック4の閏のPQAPCNTR
LプログラムがM8612をゼロにクリアし、プロンでン6〜8に入るようにす
る。ここでPQAPCNTRLは、外部RAM内に位置決めされたQRIO構造
内の命令バイトがチェックされるようにする。ここで、ブロック8の園に、新た
な命令(0)または継続命令(2)のいずれかが外部RAM1104内のQRI
O構造において検出されるとする。このことは、PQAPCNTRLプロ・グラ
ムの制御に基づ<QAP制御ボードの動作が、フローのブリットB1を通じてフ
ローのブロック15Aにブランチするようにする。
もしフローのブロック15Aが到達されているなら、それはQAPIIIIボー
ド1109が質問を新たに始めるかまたは継続するためのマイクロプロセッサ1
108からの要求を受けてしまったからである。ブロック15Aの間に、外部R
AM1104 (テーブル3)におけるQRIO構造のコピーは、内部RAM1
126.1128内のバッファ内の定まりた記憶位置で、同一のPARM構造(
テーブル4)に転送される。
次にフローのブロック16に入る。ここで成る初期設定ステップがとられる(ブ
ロック16およびテーブル5における詳報な9照)。容認し得る接尾辞テーブル
および接尾辞テーブルを除いて、テーブル5にリストされたすべてのアイテムの
・表示は、RAMI ’+ 26.1128の定まった記憶位置にあるように記
憶されまたは宣言される。容認し得る接尾辞テーブルおにU接尾辞テーブルの表
示は、ROM1122.1’+24内に記憶される。次にブロック17に入る。
ブロック17の間に、内部RAM1126.1128に記憶されたPARM値、
QCHAR8およびNUMENTは、それらが正しいかどうかを決定するために
調べられる。
容認し得るものである。もしNUMENTがゼロよりも大きければ、それは質問
語幹と比軟するためのいくつかのエンド・す11語が存在りかつN U !L、
4 E N Tが容認し得るものであることを意味する。ブロック18に入り、
もしこれらのPARMIIのいずれかがさn7得るものでなげ礼は、ブロック1
8からNoルートに読き、ブロック23に入り、そこでパラメータ誤りが記録さ
れ、かつシステムはブリットH2を通じて存在し、最後にフローのブロック3に
戻る。
パラメータがSat、、得るものくOK)であるとすると、ブロック18からY
ESルートがブロック19に続き、ブロツク19ではPARM構造に与えられた
命令が新たに始める命令であるかどうかを見るためにチェックが行なわれる。
もし命令が新たに始める命令であれば、フローのブロック24に入り、そこでは
質問が既に進行状層にあるかどうかを見るためにチェックが行なわれる。
テーブル5に示される変数は質問進行中フラグを含む。
このフラグは、次のブロック26の聞に起こるPSLJFIXルーチンに対する
最初の呼出により真にセットされる。
ブロック24の間に、質問進行中フラグはそれが既に真であるかどうかを見るた
めにチェックされる。これがPSUFIXプログラムの最初の呼出であると仮定
すると、フラグは偽であり、ブロック26に入る。もしいくつかの理由のために
ブロック24の闇にフラグが真であれば、そのときはブロック25に入り、MC
81114およびQAPII御ボード1109がリセットされ、QAP制御ボー
ドエラーが記録され、次に動作はプリントH2を通って最後にブロック3に戻り
、ブロック3ではPQAPCNTRLがその持ちループに入る。
エラーがなくブロック26に入るとすると、内部ROM1122.1124に記
憶されているPSUFIXプログラム(第10図)が今度は呼出され、マイクロ
プロセッサ1118によって実行される。PSLIFIXを実行する闇の動作の
詳報は、第10図と関連して詳細に議論されよう。
しかしその概要をここで説明する。
PSUFIXが能動化されると、システムはPARM構造アイテム(テーブル4
)QCHAR8およびQLJERY(58)をとり、そして内部ROMI i
22.1124内に記憶された接尾辞剥ぎ取り状瑠テーブル(テーブル9〉Sお
よびQUERY (58)によって表わされる質問単語の霧幹および接尾辞部分
を位置決めし、かつ質問の識別された接尾辞が含まれている複数のIt類のうち
の1つを示す質問(QS)411造における接尾辞種類指示(WDSELECT
>を形成する。
テーブル6は、PSUFIXプログラムに対する呼出によって得られる情報の構
造であるQS構造を示す。テーブル6を参照すると、PSUFIXプログラムの
制御に基づきシステムは、質問命令を表わす値FFH,質問単Wj語幹内の文字
の数を示す値5IZE、および質問単語の語幹における実際の文字であるSTE
Mにおける文字のストリングを戻す。ざらにQTYPEIが戻され、質問が英数
字単語(0)であるか全て数字単語(1)であるかを示し、かつI[WDSEL
ECTが戻される。WDSELECTは、容認し得る接尾辞テーブルの列内への
索引であり、任意の質問単語から剥ぎ取られた容認し得る任意の接尾辞であるエ
ントリ単語上の接尾辞の種類の指示である。
さらにブロック26の間に、質問進行中フラグ(テーブル4)が上述のように真
にセットされる。
ここで第3図のフローに戻る。ブロック27の間に、テーブル6のQSII造の
QUERY命令部分は、FIFO1130の入力部分(1)を通じてMC8I
114に転送される。質問命令フラグ(FF)−1)は、MC81114に対し
て、続くのは質@語幹であるということを示し、MC81114はその内部RA
M (第11図)内に5IZEおよびS T E M文字を蓄える。
フローのブロック20の間に、PARM構造(テーブル4)内の命令がチェック
され、そしてもし実行中の命令が11M(CONTINUEI令でなければ、プ
ログラムはブリットC1を通じてブロック28に続く。もし一方実行中の命令が
継続命令であれば、そのときはブロック21に入り、質問語幹単語がMC811
14に送られてしまったかどうかを見るためにチェックする。
継続命令は、前にMC31114に与えられたQUERY命令を用いて動作が続
けられるべきであるということを示すものである。この状態は、質問単語と比較
されるべきエントリ$2のファミリーの数が大きすぎて、プログラムQ FL
P K Gによって与えられる外部RAM1104内のバッフ?内に適合し得な
いというときに起こる。次に新たに始める要求およびたぶん1つまたはより多く
の継続要求が、全エージトリ単語が退られるか、または厚質問単語の綴り誤りお
よび1I14i変化に対しIで割当てられた外部RAM1104内の結果バッフ
ァ空間がパケットで満たされるかのいずれかまで、QAP制御ボード1109に
送られる。もし質問が送られていなければ、そのときはブロック22に入り、m
sエラーが記録され、動作はブリットH2を通じて結局ブロック3に戻り、ブロ
ック3ではPQAPCNTRLの制御に基づきシステムはその命令持ちループに
入る。
質問単語が既にMC8に送られてしまったとすると、ブロック21またはブロッ
ク20に続いてブロック28に入る。この点で、プログラムループは、PARM
構造(テーブル4)内の値ENTRIESおよびNtJMENTによって示され
るすべてのエントリ単語を処理するように移行する。ブロック28において、外
部RAM1114内のエントリ単語は、PQAPCNTRLの制御の下で、PI
FO1130の入力部分を通じてMC81114に転送される。
非同期動作におけるMC8I 114は、受取ったエントリ単語の各々を、PS
UFIXプログラム上の呼出によって戻された質問語幹(STEM、テーブル6
)に対して比較する。MC81114に送られるエントリ単語の各々は、テーブ
ル1〜4に示されるタイプのフォーマットを持つ。
エントリ単語フォーマットの部分は以下のとおりである。
第1は不使用バイトである。不使用バイトの第1ビツトは、ソフトウェアmmの
下でゼロにセットされ、AAHおよびFFHのようなMCSプログラムにおける
他のtsmバイトとのINを避ける。第2はパケット索引値であり、パケット索
引値はエントリ単語に対応する外部RAM1104内に常駐するパケットバッフ
ァにおけるパケットの索引である。第3は、エントリストリングにおけるバイト
(すなわち文字)の数を示す5IZEバイトである。ENTRY(5日)は、エ
ントリの実際の文字であり、その実際の数は8!ZEによって示される。送られ
るエントリ文字の実際の数は常に例数である。たとえば、もし812E−8であ
れば、そのときは8文字が送られる。もし5IZE−9であれば、そのときは1
0文字が送られるa〜IC81114は、付加された(たとえば101目の)文
字を無視する。
このことは、FIFOの入力部分が16ビツトの広ざ(2バイトまたは文字)で
ある事実に上って必要とされる。
ここでMC81114が質問語幹単語およびエントリ単語(テーブル7参1i!
j)を持っているとするうそのときはMGSは質WR語幹をエントリ単語の左端
での文字と比較する動作に移行する。〜Qc31117+は、′Ili間迩語に
関しく上に周定されたような)容認し得る綴り誤りを持つエントリ単語を戻すの
みである。行なわれる比較は質問構造QS(−r−プルら)内の5IZE、パ、
イトによって示される質問語幹の夷さ壜でのみであり、それによってたとえば正
確な一致がCATの質問語幹およびCAT/’、TONICのエントリ単語に対
して戻されるということが注意されるべきである。エントリ単語cAT’ATO
N[cに対する例において、ATONICは優の処理における接尾辞であると考
えられる。
テーブル1〜5に示されるように、MC31114によって戻されるエントリ単
語のフォーマットは、MTYPE値が最初に付加されるものを除<MC8に与え
られるエントリ単m<テーブル1〜4)のフォーマットと本質的に同・−であり
、質問語幹およびエントリ単語の間の綴り誤り類別のタイプを示す。テーブル2
〜6は、エントリ単語のMTYPE値によって示される興なった綴り誤り類別の
リストを含む。不適号な組合せおよび置換が含まれるが、それらは実際にはMC
8によって外部マイクロプロセッサに戻されない。この発明はこの構成に限定さ
れるものではないということが理解されるべきである。たとえば、すべての単語
は、エラーのタイプを示すMTYPE値で戻されてもよく、かつ後続の処理は容
認し得ない綴り誤り類別を抹消テーブル5を参照すると、変数MC8に気付かれ
よう。
表敷MO8は、FIFO1130の出力部分における容認し得るエントリの数を
示す値を記憶するために用いられる内部RAM1126.1128内のバッファ
における記憶位置である。MC81114が容認し得るエントリを発見すると、
MC81114は次に割込制御装置1132がライン1134上に割込を与える
ようにするライン1133上の割込信号を形成し、かつマイクロプロセッサ11
18は変数MC8を次に増加し、それによって変数MO8の値は他のエントリが
FIFO内に位置決めされてしまったということを表わす。ブロック32に関し
て説明すれば、Mときに1だけ減少される。
ブロック28の閣の動作は、第7図、第8図および第9図の例を参照して以下の
議論を通じてより明らかとなろう。
第7図は、以下のエントリ単語、すなわち質問率11HELPSに対して比較さ
れるべきHEBREW、HELP、HELPS、およびHEPLSを含む外部R
AM1104内に位置決めされるバッファを示す。質問率11HELPSが処理
され、接尾辞Sを剥ぎ取り、語幹HELPを残し、そして語幹HELPはバッフ
ァ1402内のエントリ単語に対して比較されるべきであるということが理解さ
れよう。
実際の動作において、語幹単語は動作におけるこの地点で既にMC81114に
送られてしまっている。
バッファ1402内のエントリのフォーマットをより詳細に考察する。エントリ
単語の各々には、対応するエントリ単語における文字の数を与える長さ値が先行
する。たとえば、第1の値6は単11HEBREWの文字における長さを示す。
バッファ1402は、質問率11HELPに対するエントリ単語のすべてのファ
ミリー(たとえば、HEBREW、HELP、HELPS、およびHEPLS)
、すなわち質問率11)IELPと同一の最初の2文字で始まるすべての単■
を含む、バッファ1402内のエントリの数は内部RAM1128.1128
(テーブル4参照)におけるPARM構造に含まれる値NUMENTによって示
されるIn2図の下の部分で、バッフフシ領域1404および1406が示され
ている。バッファa域1404は、バッファ1402内に存在する単戸エントリ
と同一の数のエントリ ゛を持って示されている。バッファ1404内の各々の
エントリはパケットである。このパケットは、データベース内の単語の完全な表
現である固定長エントりである。たとえば、エントリ0は、重器HEBREW
(バッファ1402内の最初の単m>および/またはHEBREWに付属する情
報がディスク記憶@*1107内に位置決めされたデータベース内に位置決めさ
れかつアクセスされることを可能とするポインタまたは他のタイプの指示である
。同様にエントリ1,2および3は、バッファ14C2内の第2.第3および第
4の単11HELP、HELPS、 f3よびHEPLSに対するパケットを含
み、それらは同一の単l!またはディスク記憶装置1107内に記憶されたこれ
らの単語に関する情報に対するポインタである。
バッファ領域1406は、PQAPCNTRLllltjlllによる処理に対
する結果が記憶される結果フィールドである。
より特定的には、容認し得る綴り誤りでありかつ容認し得る接尾辞でもある各エ
ントリ単語に対するパケットがマイクロプロセッサ1118によってバッファ1
404からバッファ 1406に最特的に転送される。たとえば、単11HEL
P、HELPS、#よびHEPLS!*、*mし得る綴り誤りであり、質問単語
HELPに対する容認し得る接尾辞を持っており、それらのパケットは結果バッ
ファ1406内の最初の3つの記憶位鐙に転送される。エントリ単語HEBRE
W&it容認し得る−り誤りでなく、したがってそのパケットはバッファ140
4からバッファ1406に転送されない。PARMilPACKETSおよびR
ESULTS(テーブル4参照)は、バッファ1404およびバッファ1406
の始まりを示す。
ここで第3図のフローに戻り、ブロック28の園の動作を考察する。マイクロプ
ロセッサ1118はバッファ1402のようなバッファにおけるエントリおよび
他の変数を用いて、FIFO1130の入力部分に、テーブル1〜4に示される
フォーマットを持つ単語を記憶する。始めにブロック28の間に、マイクロプロ
セッサ1118はFIF01130の出力部分において不使用バイトを形成する
。
次にマイクロプロセッサ1118は、内部RAM1126゜1128 (7−フ
ル5 ) tfiら変数PACKET IX(7)内容をとり、そしてそれをF
IFO1130内に置く。第7図に示された例におけるこの地点で、変数PAC
KET−IXの値はゼロである。第8図は、たとえば第7図におけるバッファ1
402において示されたエントリに対するFIFO1130の入力部分において
形成されたエントリ命令ストリングの例を示す。第8図を参照すると、PACK
ET IXのゼロは、エントリ単IHEBREWに対するエントリ0に対応する
。エントリ単語フォーマットに値PACKET IXを配賦する目的は、もしエ
ントリ単語が容認し得る綴り誤りでありかつ容認し得る接尾辞を持っていると発
見されたなら、正確なパケットがパケットバッファ1404においてアクセスさ
れかつ結果バッファy1406に転送されるようにするためである。
次にマイクロプロセッサ1118は、エントリに対する長さ値を読出す。たとえ
ばバッファ1402における最初のエントリが転送されているとすると、長さ値
6がFIFO内にストアされ、第8図の第1列において示されるエントリ5IZ
E値を作り出す。
続いてマイクロプロセッサは、エントリ単1!ENTRY(58)の実際の表示
をFIFOに転送する。たとえば単1!HEBREWの6つの文字の各々が、バ
ッファ1402からFIFO内に順に転送され、したがって第8図の第1列に示
された完全なエントリ単語を転送する。
マイクロプロセッサ1118は、エントリ単語ポインタ(図示せず)を、エント
リバッファ1402における次の単語にセットする。この例においては、ポイン
タは単1t!HELPに対する長さ値4を次に指し示す。さらに(内部RAMI
124,1126における)変数PACKET IXが1だけ増加される。こ
の例において、PACKETIXは今、バケットバッファ1404における単1
!IHELPに対するパケットに対応するエントリ1を指し示している。
さらにブロック28の間に、マイクロプロセッサ1118はPARMI[NUM
ENT (テーブル4)を1だけ減少しくそれによって送られるべきバッファ1
402におけるエントリの残りの数を示す。
同様の処理がバッフy1402における残りのエントリに対しても行なわれ、第
8図の列2,3および4で示されたエントリ単語フォーマットがFIFO113
0の入力部分において形成されかつ記憶されるようにする。MC81114が第
8図において示されたエントリ単語を処理した後、MC81114はエントリ単
語HELP、HELPS。
およびHEPLSのみが質問語幹HELPの容認し得る綴り誤りである語幹を持
つということを決定する。MC8は、第9図に示されたENTINフォーマット
におけるFIFOの出力部分に3つの容認し得るエントリを戻す。各エントリ単
語は、MTYPE、不使用バイト、対応するPKINDEX、5IZE*、およ
びエントリ文字ストリング(E N T I N構造、テーブル7参照)を含む
。フローのブロック66〜73の闇に、マイクロプロセッサ1118は、いずれ
のエントリが容認し得る接尾辞を持っているかを決定した侵に、バケットバッフ
ァ1404をアクセスしかつ対応するパケットを結果バッファ1406に転送す
るために、各エントリにおけるPKINDEX値を利用する。
ブロック28に続いて、フローのブロック29(第3図)に入る。外部マイクロ
プロセッサ1108から割込が全く受取られなかったとすると、動作はブロック
29を通過してブロック30に移る。背景として、ブロック30は最後のエント
リがMC81114に選られてしまった後においてのみ興味あるものであり、ブ
ロック70.71において示されるように、そのときに場所マークパターン(テ
ーブル1〜2を参照)がマイクロプロセッサ1118によってMC8に送られ、
またタイマ1131がセットされてMC8が場所マークパターンを戻すまでMC
8をタイムする。
もしMC8がプログラマブルタイマ1131にセットされたプログラム時間内に
場所マークパターンを戻さなければ、タイマ1131は割込信号を制御装置11
32に与え、制御!!121132は次にマイクロプロセッサ1118が(ロー
カルRAMI 126,1128における)グローバル変数TIVERをゼロで
ない値にセットするようにし、処理が割込されるようにし、MCSタイムアウト
エラーが記録されるようにし、モして1yJIllは最後にブリットH1を通っ
てブロック3に戻る。MCSタイムアウトが起こらなかったとすると、ブロック
31に入る。
MC81114は、MC81114が容認し得る綴り誤りであるエントリ単語を
Fl、FO1130の出力部分内に置くときにはいつでも、マイクロプロセッサ
1118に割込を送る。マイクロプロセッサ1118の1llIIllの下でル
ーチンを操作する割込は、この割込の受取りによって能動化され、また内部RA
MI 126,1128内に位置決めされた変数MO8<テーブル5参照)を1
だけ増加する。
ブロック31(第3図)の闇に、MC8がFIFO1130の出力部分内に何か
を献いたかどうかを見るためにチェックが行なわれる。このために、もし変数M
O8(テーブル5)が現在ゼロでなければ、このことはPIFO1130の出力
部分内に容認し得るエントリが処理のために存在することを示しており、容認し
得るエントリはブロック32以下に入って処理される。一方もしMC8変数がゼ
ロであれば、そのときはブリットG3の次にフローのブロック67(第3G図)
が続き、それによって容認し得るエントリ単語に対する中間の処理ステップをス
キップする。
ブロック32(第3図)の間に、FIFO1130の出力部分から除去された最
初のバイトがチェックされる。これは、エントリ単語のMTYPEバイト(テー
ブル7)。
PLACE MARKの最初のバイト(MC81114r6答、テーブル1〜2
参照)、またはここでは興味のないエラーシーケンスの最初のバイトであり得る
。(マイクロプロセッサ1118によってPQAPCNTRLの@御の下に送ら
れる) P L A CE M A RK I F F OOHは、海侵のエン
トリが処理されたシステムを知らせるために、最後のエントリ単語の模に、FI
FO1130の出力部分にM081114によコて戻される。もしMC3が送ら
れたエントリとの何らかの矛盾を検出するかまたはMC8がそれ自身内の内部エ
ラーを検出すれば、エラーシーケンスに戻る。さらにブロック32の間に、PQ
APCNTRLは、MC8変数(テーブル5)が1だけ減少されて、それがさら
にの処理に対し1lFO1130の出力部分から何かを除去しているということ
を示すようにする。
ブロック38<13図)に移り、もしFIFO内の最初のバイトがMTYPE
(テーブル1〜59照)、すなわち特別の入力FFHでなければ、そのときはブ
ロック39以下に入り、そこでFIFO内のエントリ単語が処理される。
エラー状態が全く存在し・ないことを示すとすると、そのときはブロック46I
3よび47に入り、そこでは適当な準備ステップを行なわれて、処理が完了され
たことを示す。もし何らかのタイプのエラーフラグまたは不914閑な値が12
のバイトにおいて検出されれば、そのときはブロック45または48に入り、そ
こで誤りが記録される。しかしこれらのステップは、この発明にとってそればと
重大な興味のあるものではない。
ブロック38(第3図)の間に、最初のバイトがテーブル7に示されるように実
際にMTYPEバイトであるとすると、ブロック39に入り、そこでは対応する
エントリ単語の処理が開始される。MC8から戻されたFIFO1130内のI
i1!シ得るエントリ単語謂は質問単語語幹の容認し得る−り誤りである始まり
を持つものであるということが注意されるべきである。ブロック39以下の閏の
処理は、エントリ単語がまた質問単語の容認し得るll1i[変化であるかどう
か、すなわちPSuFIXによりて決定された接尾辞の容認し得るIIIII内
にある接尾辞を持つかどうかということを決定するために用いられる。
フローのブロック39〜72(第3図)の闇に、PQAPCNTRLは、エント
リ単語の語幹と容認し得る接尾辞との比較を引起こす。容認し得る接尾辞は、P
SLJFIXプログラムの制御の下で戻された質問構造QS(テーブル6)にお
ける接尾辞類別指示値WDSELEC丁によって示されるものである。QS貫同
語幹構造(テーブル6)における接尾辞暖別値WDSELECTは、容認し得る
接尾辞テーブル1202(第4図、テーブル10)における列のうちの1つを選
択するために用いられる。したがってQS構造(テーブル6)におけるWDSE
LEGT値は、第4図のテーブルにおける列のうちの1つを選択するために用い
られ、また選択された列の行1208のうちの1つにおける接題辞指示値のうち
の1つは読出されて、接尾辞テーブル1204(第5図)における列のうちの1
つを選択するための5UFF IX値またはアドレスポインタとして用いられる
。容認し得る接尾辞テーブルから読出された接尾辞指示は、ローカルRAM11
26.1128内のローカル変数5UFF IX(テーブル5)内に置かれ、こ
の変数は接尾辞テーブルの列を表わす索引である。RAM1126.1128内
に位置決めされたローカル変数■(テーブル5参照)は、接尾辞指示が読出され
るべきである容認し得る接尾辞テーブルのその列における特定の行を示す。
J変数(j115図、およびテーブル5)は、行、したがって接尾辞テーブル1
204(第5図、テーブル11)の選択された列における文字ストリングの表示
を選択するために用いられる。
C,16の
11116!!!は、第3図のフローのブロック40〜64に示された方法を実
行しかつこの発明を具体化するためのディジタルデータ処理手段の選択的実施例
を示す概略ブロック図である。第6図の選択的実施例の処理の方法は、第1図。
第2図および第3図の実施例の動作の部分と厳密に並列である。したがって2つ
の実施例の動作を簡単に説明するために、第6図の実施例の一部を、第1図、第
2図および第3図の実施例の動作および第6図の実施例の対応する動作を説明す
る前に、最初に説明する。
ここで第6図の要素を考察する。制御カウンタまたは制御l装置1301は、第
3因のフローのブロック40〜64に対応する出力40〜64をもって示されて
おり、そこにおいて制御信号が制御装置1301の状態40〜64にそれぞれ対
応して形成される。メモリまたは記憶@1F1300は、容認し得る接尾辞テー
ブル1202を記憶する。W認し得る接尾辞テーブルの行208における接尾辞
索引は、記MS、iによって示される。*aし得る接尾辞テーブルの行1206
における接尾辞カウントは、記号Cによって示される。
接尾辞テーブル1204は、メモリまたは記憶装置1304に記憶される。行1
212における文字ストリングの実際の文字は、記号Sによって示されるが、文
字カウント、これは接尾辞テーブルの行1210における長さ値とまた呼ばれる
が、これは記号しによって示される。記憶装置1300における容認し得る接尾
辞テーブル1202の行は、テーブルの最初の行1206を示す固定値の接尾辞
カウントを記憶するレジスタ1308によって、および行1208のうちの1つ
を示すカウントIを記憶するカウンタ1310によってアドレスされる。容認し
得る接尾辞テーブル1202の列は、質問構造QSからの接尾辞種類指示WDS
E L ECTを記憶するレジスタ1306によってアドレスされる。記憶装
置13o4内の接尾辞テーブル12o4の行は、テーブルの行1210における
文字カウントまたは長さ値を示す長さ値を記憶するレジスタ1316、ぢよびテ
ーブルの行1212のうちの1つを選択するJカウントを記憶するカウンタ13
18によってアドレスされる。
第3図に示されたコンピュータプログラムの制御の下に作られた第1図および第
2図のこのシステムに対し応用可能な方法と、第6図の選択的実施例におけるi
I&殉動作とを参難じて、以下にフローのブロック39〜63の閣の動作のシー
ケンスを説明する。
お び 3−フローのブロック39
(′s3図)での動作の間に、LX下の変数が第1図および第2図のデータ処理
手段によってRAM1126.1128内にロットされている。MTYPEは、
特定のエントリ単l!(MTYPE、テーブル7〉に対する許容し得る一致種類
指示を含む。質問QS131における5IZEは、PSUFIXサブルーチンに
対する呼出の閤に得られたバイトにおける賀*ti幹のサイズを含む(SIZE
、テーブル6)。
質問構造QSにおけるVVDSELECTは、PSUFIXルーチンに対する呼
出かうのwg+、、、臀る接尾辞テーブルの列索引に対応する値にセットされる
(テーブル6)。質問構造QSにおけるQTYPEは、容認し得るものであるM
C8から戻された結果のタイプにさらに限定を強制するためのO(英数字質lI
!lli!幹)または1(数字質問語幹)のいずれかを含む(すなわち、数字a
II!JI!幹は、PQAPCNTRLが、正確な一致タイブであるMC8から
戻されたエントリ**を調べることのみするようにする。ブロック53A参ff
l>、MTYPEt−越工ar残り(+)ENTINIl造(テーブル7参照)
ば、FIFO1130の出力部分から除去されるエントリアイテムにセットされ
る。
LLL 第6図の実施例における対応する動作は次のとおりである。レジスタ1
308は、レジスタ1306内に記憶された1llIWDsEL、EcTによっ
て示された容認し得る接尾辞テーブル列の最初の行1206における値5UFF
JX C0NTにセットされる。、Iカウンタ1310は、容認し得る接尾辞テ
ーブルの行208の行0にポツプする0に廿ソ;−される。長さレジスタ131
6は、接尾辞テーブルの長さまたは文字カウント値を含む行1210にポツプす
る○にセクトされる5Jカウンタ1318は、接尾辞テーブルにおける文字スト
リングの個々の文字を含む行1212の行OでポツプするOにセットされる。レ
ジスタENT[l 5IZE1322u、エントリQ!語7t−マットくT−プ
ル7〉に33ける値5LZEであるエントリ単語の4長ざにセットされる。レジ
スタQS 5IZE1320は、+R間単語(テーブル6)に対する語幹長また
はSIZ: E mにセットされる。、EN丁RY(58)(テーブル7)にお
けるエントリ単語の実際の文字は、EN’T−IN El’JT’ RYレジス
タコ328に2直される。レジスタQ T YPFI465は、英数7ストリン
グ(0)または数字ストリフフグ(1)であるとして質問語幹を示す値(QTY
PE)にセットされる。
1工lLiヱ盈立主L1止1 エントリ単語の接尾辞部分の文字は、エントリ単
語内に位置決めされなければならない、このことは、5IZE(テーブル6)お
よび現在処理されているエントリ*gに対するM T Y P Eによって特定
される質am幹のサイズを用いて行なわれる。より駐しくは、エントリ単語の文
字の位置は0で始蒙り順番に増加する値によって指定される。語幹における文字
の数を示す5IZE値は、したがって、wc尾題辞最初の文字を示す。
質問語幹のす1′ズ、すなわち5IZE(テーブル6)健、もし必要ならば、削
除または拝入のために調整され、質問構造QSにおし゛る11整された5IZE
値は次にエントリ線詔にお1ノる語幹の*際のサイズとなる。調整されたサイズ
は、エントリの接尾辞を識別しかつそれを語幹または残りのエントリ単語から区
別すためのポインタを形成する。このために、ここでフローのブロック4Cに入
り、そこではエントリ*mのm題辞の最初のパイ1〜が合成される。より詳報に
説明すれば、実際の計算がブロック41〜52の間に実行される。ブロック41
〜52のうちの特定のものに移行すルコトハ、ENTINIE数MT ’l’P
E (y ”:f)’v5 )に記憶された許容し詐る一致s&*1i示に依
存する。移行されるブロック41〜52のうちの特定のものは、変数EべTR’
l’ I NDEX (77/115)内に記憶され+amされたサイズ値を決
定する0次に変数ENTRY INDεXは、エントリ単語における接尾辞のI
IklJの文字を選択または法定するために用いられる。
もしMTYPEが多重誤りを示すゼロ(テーブル2)であれば、このエントリは
処Il!されるべきでなり、シたがりて変数1ミN下RY I N D E ’
、<はぜ口(ブロック、51>にセットされる。もしM E−Y PEが正確な
一致を示す1であれ一1エン1−り語幹の艮ざは質問語幹の長さと正確に同一で
あり、したがって質問語幹の畏さ、すなわちQS、5IZE (チー’フルロ)
L:変11RENTRY I NDEX (70ツク42)内に記憶される。も
しMTYPEが1つの転送謳つを示す2であれば、そのときはエントリの語幹と
質問語幹との長さは同一で・あり、QS、5IZEffi変数ENTRY IN
DEX(10ツク49)内に記憶される。もし。
MTYPEが(エンド・りに間して′R@にt3’+プる)1つの文字削除誤り
を示す3であれば、そのときはエントリ語幹は質問語幹よりも1文字長く、した
がって質ng’i幹長プラス1 (QS、S 1zE+1 )がE N T R
Y I ’< D E X変数ン1りに関して質問内の)1つの挿入エラーを示
す4であれば、そのときはエンドり語幹は質@語幹よりも1文字短り、質問語幹
fffi?イナス1 <QS、5(ZE−1)がENTRY INDEX変数(
ブロック51)内に記憶される。
6LM+YPεか1つのIF換誤りを示す5であれば、そのときはENTRY
INDEX変l!!はOにセットされる(ブロック52)1〜IT’/PEOお
よび5はちょうどこのMdで完全のために捜され、環孔の実行において戻され得
る可能な値ではな警1゜
!LiJL 陪6図の概略ブロック図の対応する動作を考察する。#J1111
111301は、状1l14oから、状1141〜52のうちの1つにブランチ
する。状態41〜52では、制御信号が、制御Hillの対応する出力41〜5
2で形成される。たとえば、もしMTYPEのOがレジスタ1306内に記憶さ
れておれば、IIIIIll装置1301は状態41にブランチし、状1141
では出力41での制御信号がENTRYINDEX1324を0にセットする。
もしレジスタ1306におけるMTYPEilが1であれば、そのときは状態4
2に入り、そ、:でuQS 5IZEL/ジスタ1320内の質問サイズ値は転
送回路1362を通って直接にENTRY INDEXレジスタ1324内に記
憶される。もしレジスタ1366内のMTYPE値が2であれば、その ′とき
は制御装置の状1149に入り、そこでは転送回路1362はレジスタ1320
内のサイズ値を直接にENTRYINDEXレジスタ1324に転送する。もし
レジスタ1360内のMTYPE値が3であれば、IIJ III 装置130
1は状態50にブランチし、そこでは演算回路1364はQS 5IZEレジス
タ1320内の値に1を加え、その増7Xlされた1lfENTRY INDE
XL/ジスタ1324内に記憶する。もしレジスタ1360内のMTYPE値が
4であれば、制W装置11301は状態51に入り、そこでは演算回路1365
はQS 5IZEレジスタ1320における値から1を引き、そしてその結果を
ENTRY rNDEXレジスタ1324内に記憶する。もしレジスタ1360
1、:おけるM T Y I” E !!がbであれば、υjIl′l装置13
01GJ、状11.52に75ンチし、そ、ニーr$tOがENTRYINOE
Xレジスタ1324内に記憶サレル、状l1141〜52のうちの任意のものに
続いて、制御装置13o1は状1m153に移行する。また第3図のフローに6
いて、ブロック52に続いて、フローのブロック53に入る。
工 2 および 3−この点で要約して、質問箭逍QSにおける変数5IZEの
調整された値(質問語幹における文字の数)は、許容し得る一致種類指示(MT
YPE)に依存、して調整されており、それによってそのsllされた値はここ
ではエントリに対する語幹の長さを正確に与え、その@果としての値はRAM1
126.1128にJ5G+61!IENTRY INDEX(7−7)tt5
>内におよび第6!Mの実施例におけるレジスタ1320内に含まれている。
ここで13図のフローチャートに戻る。ブロック53の間に、内部RAiv’l
l i 26.1128内の論11sUFFIX OK変数(デープル5)は偽
にセットされ、それによってエントリ単語の接尾辞と容認し得る接尾辞この園の
一致がまだR児されていないということを示す。ブロック62と1IJ1.、T
it!明thば、S LI F F I X OK変数は、エントリの*i辞と
11認し得る接尾辞との闇の一致が発見されたときに真にセットされる。
LL糺−3tJFFIX 0KiF17)偽状態ヘノセットが、2つの状態を持
つレジスタ1330によって第6図の実施例において示されている。tuuir
置13装1は、状態53の闇に、5UFFIX OKレジスタ1330が偽状態
にセットされるようにする。
1 2 および 3−ブロック53A(第3図)で、容認し樽る綴り誤りとして
限定され得るエントリ単語のタイプをさらに限定するためにチェックが行なわれ
る。
もし質問語幹が数字(QS、QTYPE−1)であれば、そのときは正確な一致
の綴り誤り類別タイプ(1)を持つMC8によって戻されたエントリ単語のみが
、さらに容認し得る接尾辞に対してチェックされることを認められ(ブロック5
4に進むことを認められたフロー)、一方処理はブロック66で続く。もし質問
語幹が英数字であれば、そのときはフローは常にブロック54に進むことを寓め
られる。
LIL−第6図における対応する動作は、以下のとおりである。制御装置130
1は状1fi53Aに移行すると、比較器1366は、レジスタ1360および
1365内の値を用いて同等性チェyりを実行し、いずれかの状態54または6
6に対して1lll#を転送する。特に比較器1366はMTYPEおよびQT
YPE値を比較し、そしてもしQTYPE−0またはくQTYPE−1およびM
TYPE−1”)であれば、そのときは比較器は制御装置1301が状態54に
入るようにする。もしQTYPE−1かつM丁YPEが1でなければ、そのとき
は比較ll11366は制御装置1301の状!166に入るようにする。
′181図、第2図および第3図−フローのブロック54(第3図)の間に、内
部RAM1126.1128内のローカル変数■はO状態にセットされる。変数
■は、容認し得る接尾辞テーブルの接尾辞指示cs、1.>を含む行に対する索
引として―く。変数Iは、続いて接尾辞指示として増加され、特定の列において
読出される。
1L1−Jjlli装置11301は状1154にI行L、出力54での制御信
号は■カウンタ1310をOにセットする。
1 2 および 3−フローのブロック55の闇に、質問構造QSの変数WDS
ELECTによって選択された容認し得る接尾辞テーブルの列における1によっ
て索引された接尾辞指示は、5UFF IXとして知られた内部RAMI 12
6,1128における記憶位置に読出されかつ記憶される。このために、WDS
ELECT変数およびI変数は、容認し得る接尾辞テーブルにおける特定の列お
よび行をアドレスするために用いられ、接尾辞指示が5tJFF IXにおいて
読出されかつ記憶されて接尾辞テーブルの列をアクセスするようにする。
第6図−この同じ動作が選択回路1303による制w装置1301の状態55の
闇に第6図において示されており、選択回路1303は■カウンタ1301内の
値によって識別される行およびWD 5ELECTレジスタ1306内の値によ
って識別される列から指示を読出し、そして5UFF IXレジスタ1312に
この値を与え、そこではこの値は制御信号の餉−の下で、mw装置F1301の
出力55で記憶される。
1 2 よぴ 3−フローのブロック56の関に、変数5UFF IXによって
識別された列における接尾辞内の文字の数がエントリ単語における接尾辞の長さ
と等しいかどうかを決定するために比較が行なわれる。もしそれらが等しくなけ
れば、そのときは一致が存在せずしたがってプログラムはブリットG1を通じて
ブロック56からブロック63へブランチし、個々の文字を比較する中間のブロ
ックにおける処理をバイパスするということが前もって知られる。もしそれらが
等しければ、接尾辞は一致し、フローのブロック57に入り、そこで比較の処理
が行なわれる。
このために、ブロック56の間に、エントリの語幹における文字の数であるEN
TRY 1NDEXfll(テーブル6)は、エントリ単語における文字の総な
がさまたは数を識別するENTIN変数5IZE(テーブル6)から減算される
。その差は、エントリ単語ストリングの接尾辞における文字の数を表わす値であ
る。したが゛つて値5UFF−IXによってm別される接尾辞テーブルの列にお
ける長さ値しまたは文字カウントは接尾辞テーブルから読出され、先の差の値と
比較される。もしそれらが等しくなければ、そのときはブリットG1を通じてブ
ロック63への前もって示されたブランチがとられる。もしその値が等しければ
、そのときはブロック56に続いてブロック57に入る。
!!IL−シたがって第6図は以下のように動作する。制御1llI@置130
1の状1156に入り、出力56で制御信号を発生する。このことは、減算回路
1334が、ENTINにおけるエントリ接尾辞サイズ値を減算するようにし、
そしてその結果は比較11336に与えられる。またこのことは、選択回路13
38が、レジスタ1316におけるLENGTH値によって特定された接尾辞テ
ーブルの行からかつ5UFF IXレジスタ1312における値によって特定さ
れた列において長さ値りを読出すようにし、そしてその長さ値を他方側の比較器
1336に与えるようにする。
もし同等性が不足しておれば、比較器1336によってNO制御信号が形成され
る。もし同等性が発見されれば、YESI!ll1i信号が比較器1336によ
って形成される。N。
制御信号は、1lilJ御装置1301が状@56から状1163cブランチす
るようにする。Y E S Ill 11111信号は、状11157にブラン
チするようにする。
12 および 3−フロー(第3図)に戻って、ブロック56の園に不同等性が
見出されたとすると、ブリットG1を通じてフ〇−のブロック63に入る。内部
RAMにおけるI変数〈テーブル5)は、ここで1だけ増加され、それによって
変数は容認し得る接尾辞テーブル(おける接尾辞索引を含む次の行を指し示す。
この動作は、制御装置11301の状1163に入る第6図の実施例において示
されており、!1IIIll信号63はIカウンタ1310が1だけ増加される
ようにする。
ブロック63に続いてフローのブロック64に入り、そこではRAM1126.
1128における変数Iが、RAM1126.1128におけるQS構造内の変
数WDSELECT (テーブル6)によって特定される容認し得る接尾辞テー
ブルの列に含まれるカウント値と比較される。もし変数■がカウント値と等しけ
れば、そのときはYESルーチンがとられ、ブロック66に入る。もし変数■が
小さければ、そのときはNoルーチンがとられ、ブリットE3を通じてブロック
55に再び入る。列におけるすべての接尾辞指示がアクセスされると、変数■は
カウント値と等しい。付加的な接尾辞指示がアクセスされるべき列に残っている
ときは、l1i1はより小さい。
Ll−第6図における対応する動作は以下のとおりである。制御装!11301
の状1164に入る。制御装置1301(7)64出力テノ5jIIl信41;
、 Ll択[11i1路1303がWDSELECTレジスタ1306にお1プ
る値によって特定される列における5UFFrX C04JNTレジスタ130
8内の値によって選択されるカウントを読出すようにする。
選択回路1303によって読出されるこのカウント値は、比較器1342に与え
られ、比較器1342はこのカウントをIカウンタ1310における増加された
値と比較する。
もし1カウンタ1310におけるカウントがより小さければ、そのときは比較@
1342はNo出力で制御信号を形成するが、もしそれが等しいかまたはより大
きければ、制御信号はYES出力で形成される。No出力での11御信号は、制
御回路1301が状!1164から状1155に戻ってブランチされるようにし
、YESIIIJ御信号は、制御装置1301が状態64から状態66に変化す
るようにする。
2 よび 3−フローのブロック56に戻って、エントリ重器の接尾辞における
文字の数と接尾辞テーブルの列5LIFF IXにおける文字の数との闇に同等
性が発見されたとする。フローのブロック57に入る。
ブロック57は、変数5UFF IXによって現在示されている接尾辞テーブル
列における接尾辞の文字カウントまたは長さがOであるかどうかを決定するため
に与えられる。
もし0であれば、エントリENTRY (58)(テーブル7)の接尾辞の比較
の後続ステップに移行する必要はなく、したがってブリットF3を通じてブロッ
ク62にブランチし、中間の比較ステップがスキップされる。この決定は、変数
5UFF IXによりて示され−た接尾辞テーブルの列から長さ値を読出すこと
によって、またその長さ値がOかどうかをみるためにチェックすることによって
行なわれる。
もし長さ値がOであれば、そのときはYESブランチがブリットF3を通ってブ
ロック62にとられる。もし長さ値が0でなければ、そのときはNoブランチが
とられて、ブロック58に入るようにする。
11乱−第6図の実施例は、この動作を以下のように達成する。もし制御l装置
1361の状1156の間に比較11336が同等性を検出すれば、制御@[1
301は状11!57に移行し、その出力57で制御信号を形成する。このこと
は、5LIFF rXレジスタ1312および長さレジスタ1316における値
によって特定される長さ値が、読出されてかつ選択回路1338によって比較回
路1350に与えられるようにし、比較回路1350は長さ値が0であればYE
S信号を発生し、長さ値がOでなければNO傷信号発生する。制御1111i1
11301は、YES信号に応答して状857から状1162にブランチし、回
路1350からのNO傷信号応答して状態57から状態58にブランチする。
2 および 3−ここでフローのブロック58に入るとする。ブロック59〜6
1は、その間に、エントリ単語の接尾辞の実際の文字が接尾辞テーブルから読出
された接尾辞の文字の表示と比較されるブロックである。
ブロック58のmt、内部RAM1126.1128内の変数ENTRY IN
DEX<チーフル5)&t、同−RAM内の、K変数と呼ばれるカウンタとして
用いられる変数に転送される。したがって今、K変数は、エントリ*mストリン
グENTRY(58)(テーブル6)における接尾辞の最初の文字のアドレスを
含む。RAM1126.1128内のJ変数は、接尾辞テーブル内の変数5LJ
FF−■×によって選択された列における接尾辞ストリングの文字を示すもので
ある。またブロック58の間に、J変数は0にセットされ、それにようぞJ変数
は今、接尾辞テーブル内の接尾辞ストリングの最初の文字を示す。
111−第6図の実施例は、前述の動作を以下のように達成する。IQ II
*置は状!158に移行し、結局比較!11350は0以外のものを検知する。
制御l1iA置1301の状態58の間に、転送回路1353はエントリ索引レ
ジスタ1324内の値をにカウンタ1352内にコピーし、それ仁よってレジス
タENTIN ENTRY内の接尾辞の最初の文字を選択し、t+1m@置の5
8出力での1111I信号はJカウンタ1318が0にセットされるようにする
。
1 2 および 3−フローに戻って、ブロック59に入る。エントリの接尾辞
内の文字は、KtF数の値を用いて、RAM1126.1128内のENTIN
It造(テーブル9)におけるエントリアレイENTRY (58)から選択さ
れる。変数S IJ F F I Xによって示された接尾辞テーブルの列内に
位置決めされた変数Jによって示された接尾辞ストリングの文字が選択される。
ブロック59に対する最初のエントリの闇に、K変数uENTRY (58)に
おける接尾辞の最初の文字を示すが、J変数はl!数5UFF IXによって示
された接尾辞テーブルの列からの接尾辞ストリングの最初の文字を示す。またブ
ロック590間に1選択されたエントリおよび接尾辞ストリング文字が比較され
て、それらが等しいかどうかが決定される。
もしそれらが等しくなければ、ブリットG1を通じてブロック63および64に
ブランチが取られ、そこでは上述したように、I変数が増加され、また他の容認
し得る接尾辞がエントリ接尾辞と比較されるべきかどうかを決定するためにチェ
ックが行なわれる。もし比較の結果同等性であれば、それは2つの文字が同一で
あることを意味し、そのときはブロック59に続いてブロック60に入る。
111−第6図の実施例は、次の点において上述の動作を311成する。すなわ
ちに変数を含むカウンタ1352および制御カウンタ1301の出力59での制
御信号は、選択回11t1354がENTIN ENTRYレジスタ1328内
の接尾辞文字を選択するようにし、そしてそれはにカウンタ1352内の値によ
って示されており、また選択された接尾辞文字を比較器1356に与える。さら
に選択回路1338 ハ、5UFF IXLzジスタ1312J5よCFJ、t
ウンタ1318内の値によって示された接尾辞テーブル内の接尾辞ストリングの
文字を設出す。請出された接尾辞文字は、比較!11356に与えられ、比11
1i1356け、もし比較が等1ノければYES出力で信号を形成し、もし比較
が等しくなければNo出力で信号を形成する。制御装置1301は比較器135
6の出力での制御信号に応答し、No出力でのm−信号に応答して状1163に
ブランチし、また制御装置1356のYES出力での制御信号に対しては状11
60にブランチする。
1 2 よび −フローのブロック6oの闇に、RAMI 126,1128内
の、J 、15よびに変数は1だけ増加され、それによってそれらの変数は今、
エントリ単語における接尾辞の次の文字および9J@辞テーブルの接尾辞ストリ
ングを示す。
1il−この動作は、以下のようにして第6図において達成される。制御@1M
301の出力6oでの1Ill−信号は、Kカウンタ1352が1だけ増加され
またJカウンタ1318の内容が1だけ増加されるようにする。
1 、 2 および第3−ここでフローのブロック61に入り、そこでは接尾辞
テーブル内の列の!&後の文字が比較されてしまったかどうかをみるためにチェ
ックが行なわれる。このために、変tJ内の現在の値が同一列内の長さ害と比較
され、その列はもちろんLtStJFF rXによって1訳されている。もし同
等性が検出されなければ、そのときは変数S !J F F I Xによって示
された接尾辞ストリングのすべての文字がエントリストリングの文字と比戻って
ブランチがとられ、そこではJおよびに変故における増加された値がエントリ単
語におけるおよび接尾辞テーブルの接尾辞ストリングにおける接尾辞の次の文字
を比較するために用いられる。もし同等性が検出されれば(J変数は今長さ瀘と
等しい)、そのときはブロック66の前にフローのブロック62に入る、
111−ille図の実施例は、次の点においてブロック6レジスタ1312お
よび長さレジスタ1316内の値によって71!枳さhた長さ値を読出すように
する3そのようにして選択された長さ値は、比11211.357の入力に与え
られ、比較器1357はその長さ値をJカウンタ1318内の億と比較する。も
し不同等性が検出されれば、そのときはNo出力で制御ll信号が形成されるが
、もし、同等性が検出されれば そのときはY[ES出うで制御信号が形成され
る。比較11357のNo出力での制’Jl浦号は、制弾装置1301が状!1
161から状態59に停行するようにし、またYES出力での制@ 7?号は、
制御装置1301が伏161から状1・3?に移1テするよう1こする。
l二lff1.J三LL、r!1ユ」−ここでフローのブロック62に入るとす
る。上述したよう:こ、もしブロック61にもしブロック57に涜いてブロック
62に入れば、変数5UFF rxによって示された接尾辞テーブルの接尾辞ス
トリング内には文字は存在しない。したがってブロック62の間に、内部RAM
1126.1128内の論理値5uFFIX OKが、接尾辞一致が検出された
ということを示す真状態にセットされる。
Ll−このことは、第6図のフローチャートにおいて、以下の点で達成される。
すなわち制御p@111301の62出力での制御信号は、5UFFIX OK
記憶装置1330を真状態にセットする。
1 2 および 3−ここでブロック66に運したとする。このことはたとえば
、QSII造のWDSELECI−によって示された容認し得る接尾辞テーブル
の列内の接尾辞指示によって識別されるすべての接尾辞がエントリ*iの可能な
接尾辞として考慮された後に起こる。ブロック66の閾に、論理値SL、IFF
IX OKがそれが真であるかどうかをみるためにチェックされ、その真は、接
尾辞テーブル内の列によって識別される接尾辞とエントリ単語の接尾辞との間に
一致または同等性が発見されたということを示す。もし論理値が真であれば、そ
のときはブロック72に入り、そこでは現在処理されているエントリに対するべ
をットバッフ?内の対応するパケットを置くために、外部RAM1104内の結
果バッファ内に利用できる部屋があるかどうかをみるためにチェックが行なわれ
る。このことは、変数RESULT−IX(テーブル5)をNUMへMAIL(
テーブル4〉に対してチェックすることによ)て行なわれる。もし部屋が利用可
能であれば(すなわちRESULT IXがNUMAVA I Lよりも小さい
)、そのときはブロック73に入り、そこではPKINDEXによって索引され
たエントリ単語に対するパケットバッファ内の対応するパケットが、変数RES
ULT IX(テーブル5)によって索引された外部RAM1104内の結果バ
ッファ内のパケット記憶位置内に移動され、また変数RESULT IXが1だ
Gttl加サレテす外部RAM1104内の結果バッファ内の次の利用可能なパ
ケット記憶位置を索引する。
ボックス66またはブロック31に続いて、フローのブロック67に入る。ここ
で内部RAMI 126,1128内に記憶されたMC8変数(テーブル5)が
、それが0よりも大きいかどうかをみるためにチェックされ、その0は処理され
るべきFIFO1130の出力部分内にさらにエントリ単語が存在することを意
味する。もし変数MC8が0よりも大きければ、そのときはブロック31にブラ
ンチがとられ、そこではFIFO1130における残りの結果が上述されたよう
に処理されるヮもし変数MC8がOよりも大きくなければ、さらに結果は存在せ
ず、フローのブロック68に入る。
ブロック68で、位置標識がFIFO1130の出力部分から除去されてしまっ
たかどうかをみるために、アイテニックが行なわれる。もしTASK COMP
LETEが処I!はブロック75で統いて、そこでは田口処衰が実行される。位
置標識パターンは最後のエントリ単語がMC8に送られてしまった後常にMC8
に送られ、それによってPQAPCNTRLはエントリ単語がMC5によって処
理されてしまつlζことを知る。このことは、MC611i4がその綴り誤り判
断基準に合うエントリ単語をR−1のみであり、したがってPQAPCNTRL
はすべてのエントリ単語が処Il!きれてしまったということを知るための何ら
かの方法を必要とするという理由のために必要とされる。この事寅は、位W11
1IIIがFIFO1130の出力部分から引抜かれるときに知られる。もしT
ASK COMPLETEがブロック68で偽であれば、そのときは処llμブ
ロック69で続く。
ブロック69で、位置1111IIパターンがMC8に送られてしまったかどう
かのチェックが行なわれる。もし送られてしまっておれば、そのときは処理はブ
ロック29で続き、ブロック29は(通常の場合において)結局処理をブロック
31に対してとり、そこで&tMC81114からの結果に対してチェックが行
なわれる。もし位置標識パターンがブロック69に送られてしまっていなければ
、そのときは処Mはブロック70に進む。
ブロック70で、さらに孝順エントリがMC81114に対してまだ送られねば
ならないかどうかを決定するためにチェックが行なわれる。もしそうであれば、
そのときは処理はブリットC1を通じてブロック28で続き、そこでは次のエン
トリがMC81114に対して送られる。もしさらにエントリが送られるべきで
なければ、そのときはPARM値N U M E N T (テーブル4)は0
であり、ブロック71に入るっ
ブロック71で、PQAPCNTRLは、位置標識パターンFF0OHがFIF
C1130の入力部分を通じてMO,S 1114に送られるようにし、論理値
PLACE MARK 5ENT(テーブル5)は真にセットされる。次に!6
IN!はブリットC2を通じてブロック29で続き、ブロック29は通常は、M
CSタイムアウトチェック(ブロック30)およびMC8結果チエツク(ブロッ
ク31)へと続く、
PQAPCNTRLの調憚り下でエラーが検出されかつ記録されたとき、すべて
の単語エントリが処理されてしまったとき−または結果′くラフ7が一不である
と検出されたときはいっても、ブリットl−i 1−濾通じてブロック75に入
る。この地点で、この点に到達した理由がM CSり、1゛ムアウトのためかど
うかをみるために千Lツクが行なわれる。
もしそうでありかつ再実行がまだ起こっておらなければ、そのときはMC8がリ
セットされ、RAM1126.1128内のアイテムM86−+2(テーブル5
)が、マイクロプロセッサ1108によって受取られた割込を模擬するために1
にセットされ、またブリットA1で処理が再び始まり、そこでは他の質問が試み
られる。もし再実行が既に起こっておれば、そのときはM CSをリセットし、
MCSタイムアウトエラーな記録し、そしてブロック76で処理を続ける。
ブロック76に達すると、エラーがPQ、〜P C; N ’r RLの制御の
下で記録されてしまったか、または、tべてのエントリが処理されたかまたは結
果バッファy(1406,第7図)が一杯でちるかの理由のために処理が完了さ
れるか、のいずれかである。もしエラーが検出されたなら、ブロック79に入り
、そのエラー記録は外部RAM1104内に位置決めされた予め定められた通信
バッファ(テーブル3のQRIO構造が位置決めされる同一のバッファ)内に記
憶され、処理はブロック7Bで精(。もしエラーが記録されなかったなら、ブロ
ック77に入り、通常のステータスおよび結果バッファ内に記憶された結果パケ
ットの数が、外部RA’v11104内に位置決めされた予め定められた通信ベ
ツフ1内に記憶きれる。次に処理が、ブロック78で椀く。
ブロック78で、マイクロプロセッサ1108に対する割込が、行なわれた要求
の完了(成功またはλ吠功)をマイクロプロセッサ1108に知らせるために、
PQAPCNTF?lの1111@の下で発生される。マイクロプロセッサ11
0B内でランする割込操作プログラムは、次にこの割込に応答して能動化され、
そしてマイクロプロセッサ1108の下でランしている他のプログラムは予め定
められた通信パンフッ内の結果情報をアクセスし、Q F L PKGプログラ
ムにデータを転送する。次にQFLPKGは、PQAPCNTRLによって戻さ
れた結果を処理する。l1ll込が発生された後、PQAPCNTRLは次に、
ブリットA1での持ちループでの処理を続け、マイクロプロセッサ1118から
の次の要求を持つ。
D、 ぎ プロ ラム PStJFIXを いる および
ROM1122.1124内に記憶された接尾辞剥ぎ取りプログラム(PSLI
FIX)は、第3図のフローのブロック26の間にPQAPCNTRLプログラ
ムによって呼出される。PSLIFIXプログラムは、11図のディジタルデー
タ処理手段を制御し、それによって賞同単語の語幹部分を決定し、賀間単語に対
する容認し得る接尾辞種類指示を形成し、また貢同単w聞幹が数字であるかまた
は英数字であるかを決定する5PSLIFIXプログラムのFIQ#の下で決定
された質問単語m幹は、エントリ単語における容認し得る綴り誤りに対するエン
トリ単語の語幹部分に対して比較される。PSuFIX処理に続いて、上述した
PQAFCNTF(Lは、IF寓し得る綴り譲りである語幹部分をにつエントリ
単2が、接尾辞種類指示によって示される容認し得る接尾辞の種類に該当する接
尾辞に対してチェックされ、いずれのエントリ単語が質問単語の容認し得る語尾
変化であるかを決定するようにする。
PSUFrXプログラムによって制御される動作からの実際の出力は、一般的に
テーブル6において示される。テーブル6は、質問命令を特定するQFLAGバ
イト、バイト(または文字)における質問のサイズを特定する5IZEハイド、
*際の質rP!Im幹文字ストリングであるSTEM(58)ストリング、ST
EM’(’58)が英数字文字であるかまたは全数字文字であるかを特定するQ
T¥PEバイト、および質問単語に対する接尾辞類別指示であるWDSE l−
E CT単語、(S認し轡る接尾辞テーブル内へ、の列索引)を含む。前述の情
報は、以下に説明するインターフェイス情報を用いて計算されろ1、
PSUFIXプログラムとの通信インターフェイスは、QAP制御ボード110
9の内部RΔ%w41126 + −!28における予め定められた記憶位置に
記憶されたりつのグローバル構造を通じでいる。W41のグワーパル青造は−テ
ープyし4に示されたP A RM 11造である。PSIノFTX卸制御プロ
グラムにおいて特別に用いられるものは、ffF!文字ストリングにおける文字
のね数を特定するQ CH、へ、 RS、および実際の質問文字ス1へリングで
あるQUERY<58)である。テーブル6はPStJFIXプログラムによっ
て用いられる変数を示し、そしてその変数は内部R八〜11126.1128内
の予め定められた記憶位置に位置決めされる。
ROM1122.1124は、予め定められた記憶位置に記憶される2つのデー
1ルを持っている。これらのテーブルは、類別テーブル1200 (第4A図、
テーブルB〉、および接尾辞剥ぎ取り状態テーブル1201(第481゜テーブ
ル9)である。
ここ7′第10!乃フロー千p−トおよびテーブル8および9を参照して、PS
ljPrン<プログラムにょっ−ζυ」御される第1図および第2図のシステム
の処理の実際の方法を考察する。第10図のPSUFIXの種々のブロックは、
参照を*易にするために1から28の番号が付けら杭ている。、記@表記法は処
理のシーケンスを描くために用い、3れており、以下の汎用を通じτ当業者にと
って毛らがとなろう。PS’JF lX70グラムjtRO”vt 1 ” 2
2.1124内に記憶されており1.RAM1126.1128を用いて、Q
A P !II 1i111ボー(ζ1′10つ内のフィクロプロセッサー11
1Bに上つこ′、■(うされる。
説 −リ を ’13 !二 −j 6 ;: め に 、r’ii R”I
:r’ fil B ’A Q H’r= j i)sから剥き取うキ″するち
つ〕と1jる。剥ぎ取りに則、;−yル12を1iI照し−011−の逍1目さ
4る規ニーリカ、−、’sr、qx、:とが理解σれ。−1,/Sは文?Sの前
の任意の文γが文?Sが′Bぎ取られるようにするということを意味する。
処理C−ま、フローの10ツイ?1く第)0図)に、F3いて始まる。ブロック
2の間に、RAM1126.1128 (テーブル6)内に位置決めされたQS
構造(QS、5IZE)における5IZE変数は、QCHAR8によってPAR
M構造において特定された質問単語における文字の総数にセットされ、また内部
RAM1126.1128 (テーブル4参照)内に位置決めされる。
またブロック2の間に、QUERY (58)、質問文字ストリングは、内部R
AMI 126,1128 (テーブル4)内のPARM構造から同様に内部R
AM1126.1128〈テーブル6参照)内のQS構造のSTEM (58)
フィールドに移動される。
さらに、ローカル変数における変数NEXT (テーブル6)は、128を示す
値にセットされる。値128が変数NEXT内に記憶されて、2進コード化され
た値NEXTの高位ピットは1であるが、値NEXT内の残りのすべてのピット
はく初期状態の0を示す)ゼロである。さらに、ローカル変数におけるCtJR
CHAR変数は、1未満のQS構造(テーブル6)における5IZEの値にセッ
トされる。5IZE値は、質問語幹構造QS(テーブル6)における質問語幹の
サイズまたは長さである。
フローのブロック3(第10図)の闇に、PSUFIXプログラムは、(128
を示す)高位ピットにおける値1がNEXT値の0を残して残りの変数NEXT
からマスクされるようにする。処理されている質問単語の現在の文字の位置は、
CURCHAR内の値によって現在指定されている。このことについて、質問ス
トリングの文字は0で始まる番号が付けられている。したがって、ブロック2の
後CLIRCHARがS IZE−1(7)値テ記憶さレタトキ、CURCHA
R値は、STEM (58)における質問文字ストリングの末尾の文字を指す。
動作を継続すると、今変数CURCHARによって指示されている質問率III
HE L PSの文字Sは、類別テーブル(テーブル8)内への索引として用い
られる。より詳しくは、文字Sを表わすASCI Iコード化された値は、(0
から索引される)テーブル内への索引として用いられて、類別テーブルから文字
タイプ値6を選択する。
現在の文字タイプ16は、今は、接尾辞剥ぎ取り状態テーブル(第4B図、テー
ブル9)における行を選択するために用いられる。このために、文字タイプ6が
、内部RAM1126.1128におけるCURCI(AR変数(テーブル6)
内に記憶される。したがって、この地点で心に留めておくべき値は、以下のとお
りである。すなわち、NEXT−0(マスキング後>、CHARTYPE−6,
CURCHAR−4(tなわt3SIZE−1)である。ココテ接題辞剥ぎ取り
状態テーブル(第4B図)は、列Oを選択するための値NEXTおよび行6を選
択するためのC)−(ΔRTYPEを用いてアクセスされる。テーブル9を参照
して、ACTION (A)lGtO’t’あるが、NEXT(N)値はS3で
あるということが理解されよう。Sは、状態値を指示するために、テーブル9に
おける番号の前に用いられる。もしSが特定のNEXT値に対する番号の前に現
われれば、(10進値128に対応する)高位ビットは1である。例に戻ッテ、
ACTIONmOt3よびNEXTllIs3は接尾辞剥ぎ取り状態テーブルか
ら読出され、かつ内部RAM1126.1128 (テーブル6)における変数
ACTI ONおよびNEXT内に記憶される。NEXTにおける値は、それが
後続のACTIONによって変更されるかまたはブロック18で経路が全くとら
れないのでなければ、ブロック3に八つに次に用いられる。
例に戻って、この点で適切な値はACTION−0およびNEXT−3である。
ここでフローのブロック4(第10図)に入る。ブロック4は、変数ACT夏O
Nに基づく処理フローを指示する決定ブロックである。
ACTION値は、フローの4つのブロックのうちの1つへの移行が行なわれる
ようにする。ACTIONは、0と3の闇で変化し得る。ACTIONO〜3は
、それぞれフローのブロック5〜8に対応する。
賀間単IHELPsに対する例において、変数AC71ON−0は、ブロック5
への移行が行なわれるようにし、そこでは動作は全くとられない(すなわち何も
行なわれない)。ブロック5に続いて、ブリットT1.2の後にフローのブロッ
ク16へのブリットS1,4が続く。
質問単11iHELPSに対する例を続ける前に、他のブロック6〜15(第1
0図)の闇にとられる動作を考察する。
質問単語HELPSに対する例に戻る。適切な値はなお、ACT[0N−0,N
EXT−31よ(FC(JRCHAR−4である。何もしないブロック5に続い
てブロック16(第10図)に入り、そこでは内部RAMI 126,1128
内に記憶されたCURCHARおよびNEXTがチェックされて、CIJRCH
ARがOであるか、およびNEXTが128よりも小さいか、(すなわちテーブ
ル9におけるNEXTに対する値に先行するSを持たなかった)ということの両
方が調べられる。もしこの条件が真であるならば、そのときはデータプロセッサ
は処理のための(CLJRCHAR−0)質問文字ストリングにおける文字以外
をランし、NEXTは状態値である。したがって、マシンは容認し得る接尾辞を
検出しなかった。これらの状態の下においてはいかなる文字の剥ぎ取りも行なわ
れるべきでなく、したがってフローのブロック21に入る。フローのブロック2
1は、変数NEXTが、省略時の無剥ぎ取り選択コードである30の選択コード
値にセットされるようにする。
したがって、ブロック21の間に、質問語幹構造QS(チーフルロ ) ICオ
$tルS I Z E値uPARMII造(テーブル4)における値QCHAR
8と等しくセットされ、したがって今、質問文字ストリングにおける文字の総数
を記憶する。
jl@単111HELPSに対する例に戻って、CLIRCHARは0でな(4
である。したがって、NEXTにおける値はブロック16において無視され、し
たがってブロック16からのNoルートを経てブロック17に進む。ブロック1
7の間に、内部RAM1126.1128内のCURCHAR値(テーブル6)
は1だけ減少されて3になり、それによって例における文字Pを指示する。
ここでフローのブロック18(第10図)に入り、そこテハ内llRAM112
8.1128内のNEXT値(テーブル6)が、それが128と等しいかまたは
128よりも大きいかどうかをみるためにチェックされ、すなわち、高位ビット
が1にセットされ、それによって状態コードを示す(このことは、テーブル9が
NEXTアイテムの先頭にSを示すときに起こる)。HELPSに対する例にお
いて、今NEXTはS3を記憶しており、したがってその状態は真である。した
がってブロック18からのYESルートからブリットS1.1を経てフローのブ
ロック3に戻る。より詳細に説明すれば、今NEXTは選択コードを記憶してい
るので、ブロック18からのNoルートへと進むべきで、質問語幹の末尾が位置
決めされておりかつブロック19の処理ステップが質問語幹にとられるので、ブ
ロック19に入る。
質問HELPSに対する例に戻って、ここでフローのブロック3に入り、そこで
は再び変数NEXT−83の高位ビットがマスクされ、変数3を発生する。NE
XTからマスクされた変数3は、接尾辞剥ぎ取り状態テーブル(テーブル9)の
列3を指示する。さらに、CLJRCHAR変数は今3であり、HELPSの文
字Pを指示する。文字PのASCIIコード化された同等のものはテーブル8に
入るために用いられ、そこでは文字タイプ値0が内部RAM1126.1128
(テーブル6)における変数CURCHAR内に位置決めされ、読出され、かつ
記憶される。
この点で適当な変数は(高位ビットをマスクした後の)NEXT−3,CHAR
TYPE−0,および(文字Pに対応する)CURCHAR−3である。したが
ってブロック3の間に、接尾辞剥ぎ取り状態テーブル(テーブル9)は、NEX
T値3およびCHARTYPEIIOを用いてアクセスされ、それによって列3
9行0をアクセスし、そこt’ハ値ACTION−1[:びNEXT−2が内部
RAM1126.1128(テーブル6)における変数AC71ONおよびNE
XT内に読出されて記憶される。再びフローのブロック4(第10図)に入り、
そこでは適切な変数はACTION−113よびNEXT−2である。したがっ
てブロック6に入り、質rad語幹構造QS(テーブル6)における5IZE値
が1だけ減少されるようにし、それによって1つの接尾辞文字、つまり文字S1
が決定されかつ質問文字ストリングから剥ぎ取られてしまったことを示す。
ブロック6に続いて、ブリットT1.2およびSl、4を経てブロック16に進
む。
ブロック16(第10図)の間に、質問語幹、したがって質問文字ストリングの
文字がなくなったかどうかをみるために、再びチェックが行なわれる。この点で
、適切な値はNEXT−2,CURCHAR−3である。したがってブロック1
6の闇に、CURCHARはOでなく、したがって第1の状態には合わず、した
がってブロック16からのNoルートを経てブロック17に進むということがわ
かる。 ブロック17の間に、内部RAM1126.1128(テーブル6)に
おけるCUR’CHAR−変数は1だけ減少され、それによってその変数は今、
HELPSの文字りを指示する。フローのブロック18に入り、そこではNEX
Tにおける値が状態コードであるかどうか、すなわち高位ビットが1にセットさ
れているかどうかをみるためにチェックが行なわれる。今NEXTは値2である
ので、高位ビットはセットされておらず、したがってNEXTIIは今は実際に
は選択コードである。次にブロック18からのNoルートを経てブロック19に
進む。
(Sを含まない)選択コードであるNEXT値は、実際に接尾辞類別指示である
。したがってこの値は質問単語HELPSの語幹に対するすべての容認し得る接
尾辞へのポインタまたはリンケージを示し、かつそのように考察されることがで
き、実際の容認し得る接尾辞はテーブル10および11を用いて決定される。
いずれにしても、ここでフローのブロック19(第10図)に入り、そこでは質
問語幹の成る最終の処理が行なわれる。この発明の本質ではないが、この実施例
はすべての質問語幹が少なくとも2文字の長さであると仮定する。もしそうでな
ければ、そのときは質問語幹構造QS(テーブル6)における語幹長値5IZE
が、PARM構造(テーブル4)における原質間単語長QCHAR3にセットさ
れ、またN0N−3TRIP容認し得る接尾辞リスト選択コーーブル6)内の値
が、それが2よりも小さいかどうかをみるためにチェックされる。もし2よりも
小さければ、そのときはブリットT1.5を通じてブロック19からのYESル
ートを経てブロック27に進み、そこでは変数NEXT(テーブル6)内に1が
記憶され、かつ質問語幹構造QS(テーブル6)における5IZE値はPARM
構造(テーブル4)内のQCHAR8の値にセットされる。
与えられている例におけるブロック19(第10図)に戻って、5IZEは2よ
りも大きく、したがってブロック19からのNoルートに従ってブロック20に
進む。
ブロック20の間に、語幹内に何らかの母音が存在するかどうかをみるためにチ
ェックが行なわれる。例に対する語幹はHELPであり、したがって語幹内に母
音が存在し、ブロック20からのYESルートに従って、ブリット81゜10ツ
ク24の間に、接尾辞を残した文字が剥ぎ取られ、これは質問文字ストリングの
語幹であり、それらがすべて数字であるかどうかを見るためにチェックされる。
もしそれらが数字であれば、そのときはブロック24からのYESルートに従っ
てブロック28に進み、そこでは内部RAM1126.1128内の変数NEX
T (テーブル6)が、0の数字語幹選択コードにセットされ、また内部RAM
1126.1128内の変数QTYPE (テーブル6)が1にセットされ、質
1!II!!I幹がすべて数字であることを示す。
ブロック28に続いて、ブロック26に入る。
質問単i!l!HELPSに対する例において、語幹はHELPであり、いかな
る数字も含まない。したがって、ブロック24において、質問文字ストリングに
おける残りの文字、すなわち語幹、はすべて数字でなく、Noルートに従ってブ
ロック25に進む。ブロック25の間に、内部RAM1126.1128(テー
ブル6)内の変数QTYPEはOにセットされて英数字質問語幹を示し、ブロッ
ク26に入る。
ブロック26の間に、(内部RAM1126.1128内の)質@構造QS(テ
ーブル6)における変数WDSELECTは、変数NEXTにみいて示された値
にセットされる。したがって、内部RAMにおける変数WDSELECTは今、
質問に対する接尾辞類別指示を含む。質問語幹はSTEM (58)における賛
同語幹文字ストリングによって表わされ、また語幹内の文字の数、すなわち賀n
si幹のサイズは、内部RAM1126.1128内に記憶された変数5IZE
(テーブル6)における値によって示される。
ブロック20に戻って、語幹内に母音が全く存在せず、したがってブリット81
.5を通じてNoルートがブロック21にとられると仮定する。ブロック21は
、NEXT内の選択コードが、Sが賛同文字ストリングから剥ぎ取られてしまっ
たということを示すかどうかを決定するために用いられる。したがってブロック
21の間に、もしNEXTl、:おける値2であれば、その値はSが単語の末尾
から剥ぎ取られてしまったことを示し、単語は任意の債の隣接する文字を語幹内
に含み、したがってYESルートに従ってブリット81.6を通じてブロック2
4に進む。テーブル9を参照すると、NEXT−2が−/Sに対する選択コード
であるということが理解されよう。もしテストブロック21の結果がNoであれ
ば、そのときはブロック27に入る。
YESルートがブロック21(第10図)からとられるとすると、(ブロック2
7を飛越して)ブロック24に入る。ブロック24では、前に説明したテストが
、語幹がすべて数字であるかどうかを決定するために行なわれる。もしブロック
21からのNoルートがとられるか、またはブロック19からのブリットT1.
5がとられれば、そのときはブロック27に入り、ブロック27では上述したよ
うに、NEXTにおit 6値がN0N−3TRI P選択コードの位置にセッ
トされ、また質問語幹構造QS(テーブル6)における5IZE値は質問ストリ
ング文字の原長さ、っまりQCHAR8(PARM構造、テーブル4)にセット
される。ブロック27は、N0N−3TRI P状態を作り出す。このことが行
なわれる理由は、S、ING、およびEDのような接尾辞として通常的に考えら
れる文字ストリングは、常に接尾辞ではあり得ないということに基づく。その例
として、単1tBRI NGおよび5HREDが挙げられる。単11BRING
および5HREDの場合において、末尾の文字を剥ぎ取ることは必要とされない
。したがって、ブO”/り27に入zr、QS、S I ZE値を質@NNに8
ける文字の総数(すなわちPARM、CHAR3)にセットする。
例に戻って、フローチャート(第10図)に示された処理の後、語幹HELPに
対するASCII文字は変数STEM(58)に含まれ、値4は変数5IZE内
にあり、また選択コードまたは接尾辞類別指示2はWDSELECT変数内に保
持され、すべては質問構造QS(テーブル6)内にある。PQAPCNTRLプ
ログラムの制御の下においてマイクロプロセッサ1118によって実行される処
理は、WDSELECT値を用いて、質問単語に対する容認し得る接尾辞を決定
する。
PQAPCNTRLプログラムによって制御される処理の間に、たとえば、WD
SELECT値2oは、容認し得る接尾辞テーブル(テーブル10)内の列2を
選択する。
この列におけるカウント値は4であり、これは4つの容認し得る接尾辞が存在す
ることをし示す。列2における次の4つの値は、接尾辞テーブル(テーブル11
)内への接尾辞索引である。列2における4つの値が読出されて、テーブル11
に示された対応する語尾を選択するために用いられ、その語尾は質問単I!語幹
HELPと結合されて、テーブル14に示された容認し得る語尾変化のされたエ
ントリ単語を与える。
ここでは包括的に質問単語として参照される目標の単語の位置的な綴り誤り、交
替の綴り誤り、または曲解である、記憶されたデータベースにおける、エントリ
として参照される、可能な候補を識別するための、方法および手段を説明する。
種々の綴り誤りが、テーブル2に要約されている。
より詳しくは、ここにおいて説明する方法は、単語の容スし得る綴り誤りを決定
しかつこれを容認し得ない綴り誤りから分離するためのディジタルデータ処理手
段による使用のためである。さらに、容認し得る綴り誤りおよび容認し得ない綴
り誤りは、類別される。テーブル2を参照して、綴り誤り種111〜4は典型的
に、容認し得る綴り誤りとして類別されており、かつ正確な一致が発見される状
況を含んでいる。種類Oおよび5は、容認し得ない騙り誤りである。種SOは、
多重綴り誤りが存在する状況である。
第13図は、この方′&および手段を実施するための、ディジタルデータ処理手
段の概略的ブロック図である。位置合わせされて習かれた文字ストリングによっ
て示された質問単語は、質問単語レジスタ2002または他の同様な手段に記憶
される。各エントリ単語が位置合わせして置かれた文字ストリングによって表わ
されるエントリ単語の組は、候補単語メモリ2006または同様の手段に記憶さ
れる。
最初に、文字ポインタ2008は、制御装置2009によって初期状態にセット
される。初期状態において、文字ポインタ2008、質問単語レジスタ2002
に記憶された質問単語の左端の位置を指示する。レジスタ2002内の質問単語
の文字に対するおよびメモリ2006内のエントリ単語に対する位置は、各単語
の一端から他端へ右から左に番号の付けられた値を増加して指定される。各単語
の左端から同じ数の文字だけ離れた位置は、同値で指定される。
このことは第13図において、レジスタ2002における質問単語が文字位置0
−Nを持つものとして示されているが、エントリ単語メモリ2006の各位置に
おけるエントリ単語の文字位置は同一番号によって指定されるということで示さ
れている。
w4IIll装置2009は、文字ポインタが順に増加されて、それによって質
問111F2002における文字の各々を、質問単語の左端の位置から右端の位
置へと指示するようにする。比較回路2011は、レジスタ2002における質
問単語の文字をメモリ2006におけるエントリ単語の文字と比較するために与
えられる。候補ポインタ2010は、比較されるべきメモリ2006における単
語のうちの1つを指示またはアドレスする。
文字ポインタ2008およびIIIIIIl装置2009の制御の下で、比較回
路は、以下のステップを実行するように動作可能である。最初に、文字ポインタ
2008によって示されるような、質問率!tiおよびエントリ単語における同
一位置での文字が同一、すなわち一致すれば、記号0を表わす値が出力ストリン
グレジスタ2012の、ポインタ2008によって指示された質問文字と同一の
番号を持つ位置に挿入される。
もしステップ1において一致がなければ、そのときは比較回路2011は、文字
ポインタ2008および制御装置2009の制御の下で、文字ポインタ200B
によって指示された位置における質問単語の文字を、エントリ単語における次の
低位番号の位置における文字(すなわち左側の文字)と比較し、もし一致が検出
されれば、記号「−」を表わす値が、文字ポインタ2008によって特定された
出力ストリングレジスタの同一番号の位置に挿入される。
31目に、前のいずれのステップも一致がなければ、比較回路2011は、文字
ポインタ2008および制御I!1iWL2009のIIJI!+の下で、文字
ポインタ2008によって示された質問単語の位置における文字を、エントリ単
語の次の高位値の位置における文字と比較し、もし一致が検出されれば、記号「
+」を表わす値が、文字ポインタ2008によって特定された文字ストリングレ
ジスタ2012の同−It号の位置に挿入される。
4番目に、上述の第1から第3のステップのいずれも一致がなければ、そのとき
は記@「X」を表わす値が、文字ポインタ2008によって特定された文字スト
リングレジスタ2012の同一の位置に挿入される。記号Q、−,+およびXは
、単に要理としてのみ用いられているということが理解されよう。デコーダ20
13は、記号Q、−,+およびXを表わす2道コード化された値をレジスタ20
12における記憶のために発生する。
実質的に、文字ポインタ2008は質問単語レジスタ2002にJ5ける次の高
位位置に】加され、その処理は、文字ポインタ200Bによって指示されるエン
トリ単語の同一位置1次の低位位置、および次の高位位置におけるエントリ単語
の文字を用いて繰返される。
質問単語のすべて文字が比較されてしまった優、レジスタ2012内における文
字ストリングは、文字ストリングレジスタ2012内に記憶された記号のパター
ンに従って、r−フル2に示された6種類のうちの1つの綴り誤り種類指示を発
生するために、出力ストリングパターン2014によって解析される。
レジスタ2002における質問単語がエントリ単語メモリ2006内の位置のう
ちの1つにおける単語と比較された後、IiljIm装置2009は、候補ポイ
ンタ2010が1だけ増加されるようにし、それによってそのポインタがメモリ
2006内の次の位置におけるエントリ単語を指示するようにし、そして前述の
処理が繰返される。
記号02−1+およびXは、ここでは比較タイプ指示として参照される。テーブ
ル16は、比較タイプ指示記号および参照を容易にするためのそれらの意味を示
す。
第13図の概略的なブロック図は、空白文字く図示せず)がエントリ単語の両端
(すなわち下位位W10および上位位置N)に位置決めされ、かつエントリ単語
および質問単語の各々における各文字はユニークである、すなわち同一の文字は
同一の単語において2回以上現われないと仮定している。空白文字は、単語に用
いられる他のいかなる文字とも異なっている。
簡単のために、1つ以上のエラーを含むいかなる単語も、多重エラーを持つとい
うように言い、かつ容認し得ない綴り誤りであると考察する。
データ処理方法は、テーブル17の例を考慮することによって、よりよく理解さ
れよう。6つの例がテーブル17に与えられており、そこでは質問1!1fIC
ARTONが、同−単調の種々の綴り誤りと比較される。2つのステップが、方
法を実行することにおいて基本的に含まれる。第1に、質問単語の各文字に対す
るテーブル16内に示されたタイプのうちの1つの比較タイプ指示を形成するよ
うに、この後説明される方法で、比較が行なわれる。第2に、その比較タイプ指
示は、テーブル2に示された綴り誤り類別のタイプのうちの1つを指示する斡り
誤り種類指示を形成するように処理される。
例1において、単ICARTONは、それ自身と比較される。すなわち、質問率
1t(Q)の文字の各々は、エントリ単語の同一位置における文字(E)の各々
と一致し、したがって0比較タイプ指示(C,T、1.’)が、位lIO〜5に
おける質問文字の各々に対して形成される。侵統の処理ステップの闇に、一連の
O比較タイプ指示が処理されて、テーブル17におけるM、S、C,で示される
ような綴り誤り種類指示を引起こす。
例2は、交叉された文字TおよびRを有するエントリ単語を示す。その結果、位
go〜5の各々における比較タイプ指示は、O,O,+、−、O,Oである。後
続の処理手順は、交叉を示す綴り誤り種類指示の2を引起こす。
例3は、エントリ単語から除去される文字Rを持っており、エントリ単語におけ
る削除の結果となり、すなわち、エントリ単語と比較される質問単語における挿
入である。
したがって、質問の文字位置O〜5の各々にお【する比較タイプ指示は、C,T
、1.で示されており、後続の処理ステップは挿入を示す綴り誤り種類指示の4
を引起こす。
例4は、エントリ11Rの文字AおよびRの間に挿入されるEを示1ノ、エント
リ単語と比較される質問単語における明らかな削除を引起こす。その結果、比較
タイプ指示はC0T、1.で示され、後続の処理手順は、削除を示す綴り誤り種
層指示番号の3を引起こす。
例5は、エントリ単語における文字Rに対して置換される文字Eを持っており、
明らかな置換を引起こす。したがって、比較タイプ指示はC,T、1.で示され
、侵統の処理手順は置換を示す綴り誤り種類指示の5を引起こす。
例6は多重エラーを持っている。より詳しくは、文字Eが文字Rと置換されてお
り、かつ文字TおよびRがエントリ単語において交叉されており、2つのタイプ
の綴り誤りの結果となる。での結果、文字位[10〜5に対する比較タイプ指示
はC,T、T、で示され、後続の処理ステップは多l誤り!示す1り誤り11指
示の6?引起こす。
チープレ17つ例1〜4の8々、すなわち一致1、置換、挿入 9上び1]除は
、質問11語の容フし!5!う橿り誤りであり、これらのエントリ*iは、例5
および6の11認し得ない綴り誤りから分離される。
2、第11図および第12.へ〜第12L のディジtルデータ処理方 および
手
第1111!11および第12図のディジタルデータ処理方法および手段は、第
1図のシステムにおいて用いるものとして示されている。また、この発明による
方@および手段は、第13図の実施例と、次の点において異なっている。すなわ
ち、この発明による方法およ手段は、文字が全くユニークでない場合であっても
、綴り誤りを類別することができる。たとえば、単語CA R’T OONのよ
うに、英R言語における多くの単語は、1つ以上の同一タイプの文字を持ってい
る。
さらに、第11図および第12図に示された方法および手段は、トリプレットに
よって示される比較タイプ指示を形成する。テーブル1Bは、比較タイプ指示の
フォーマットを示す。より詳しくは、比較タイプ指示は、1.2.4コードに従
って腫み付けされた2道ビツトで形成される。
テーブル18は、(位置1における)質問文字Qiと、(質問文字Qiの次の低
位位置、同一位置、および次の高位位置に対応する)質問文字El 1.6++
およびEi十1との闇の、可能な一致に対する真理値表を示す。真理値表におけ
るOは、一致がないことを示し、1は、文字Qiと行のトップで示されたエント
リ文字との間の一致を示す。真理値表の左端から2番目の行で、真理値表におけ
る2進ピツトのパターンに従って10道値で0〜7の番号の付けられた種々の比
較タイプ指示のリストが示されている。
簡単のために、第13図の実施例において用いられる比較タイプ指示は、テーブ
ル18の左側に沿って示されている。
したがって、(Jl印によって示される)比較タイプ指示0゜1.2および4は
、上の実施例における比較タイプ指示X。
+、0および−と対応する。
テーブル16において、ざらに比較タイプ指示3,5゜6および7が含まれると
いうことに気付かれよう。比較タイプ指示の3は、エントリ位1tEi−1t:
iよびElの両方での一致を示し、したがって1より多くのエントリ文字での一
致を示す。比較タイプ指示の5は、QiとEl−16よびE1+1との簡の一致
を示す。比較タイプ指示6は、QiとEiおよびE1+1との間の一致を表わす
。比較タイプ指示7は、QlとEl−1,Ei 、83よびE1+1との間の一
致を示す。第12図のフローチャートを用いてより詳細に説明すれば、トリブレ
ットは、単語内の文字がユニークでない場合においても、綴り誤りの種々のタイ
プを正確に類別するために用いられる。
第12図は、第12A図〜第12L図からなるが、これは第11図の綴り誤り種
類システムによって実行される処理方法を示す段階的なフローチャートを含む。
説明のために、フローの各ブロックは、ブロック番号と呼ばれる続き番号が付け
られている。この方法は、プログラマブルリードオンリメモリ(FROM>12
36に記憶された綴り誤り類別(MSC)コンピュータプログラム1234によ
って制御される。このプログラムは次に、マイクロプロセッサコ204の1h作
を1III31111する。
綴り誤り類別プログラム1234の実行は、命令部分が初期化されるシーケンス
ブロック1において始まる。シーケンスブロック2で、綴り誤り類別システムM
C31210は、F■Foの入力部分における次の単語を読出し、シーケンスブ
ロック3の藺に、その単語は同期パターンAAへAH(テーブル1−1)に対し
て肩べられる。もしそのような同期パターンが検出されなければ、11111は
シーケンスブロック2に戻る。この動作は、同期パターンAAAAHが検出され
るまで続く。縄り誤り類別システム1210による同期パターンAAAAHの検
出は、フラグとして用いられて、マイクロプロセッサ1118およびMC811
14が共に、動作しかつ2ウエイの通信を確立することを確実にする。
同期パターンAAAAHffiMC81114によって検出されたとする。RA
M1242はクリアされ、シーケンスブロック4の間にOにセットされる。この
ことは機能プログラムのデバッグに好ましい特徴であるが、この発明の本質では
ない、
ここでシーケンスブロック5に入り、そこではMC31114はMC8i15答
(テーブル1)を送る。この応答は、FIFOの出力部分に送られる同期パター
ンA A A A H、aよびライン1133に与えられる割込−1信号からな
る。
マイクロプロセッサ1118は、FIFOからの同期パターン△A A A H
を読出し、MC31114応答を認識し、そ()でスタートに移行して、テーブ
ル1において3で示されるタイプのフォーマットで質問1mを与える。
シーケンスブロック6の間に、M CSは、FIFOの入力部分から次の単語を
読出1ノ、またシーケンスブロック7の間に、MC31114はその果語を続出
]ノかつ調べる。
質問フラグFI’4−1が命令バイトにおいて検出されるとする。
Ijt間!41語(テーブル1−3)は、読出されており、したがって、ブリッ
ト1−3を通じて、シーケンスブロック10にブランチがとらt′17、そこで
は質問1IliはFIFOの入力部分から読出されて、RAM1242内に記憶
される。
シーケンスブロック6に再び入り、そこでは次の入力がFIFOの入力から1出
され8.IN間単1を与えた後、次にマイクロプロセッサ1118は、エントリ
!@TRを与える。
エントリ単1(テーブル1−4〉は、今、MC31114に上ってFTFつから
読出される準備ができているとする。
シーデンスブロック8およ可19の間に、MC31114は、FIFO1’3つ
の1、力部分内の工語?チェックし、質問単曙、場所マーク11、また(ま同期
が与え′31でυらずしたがってシーγンスブーノク1?二人、)ということを
発見すう。シーケンスプコ゛−Iり12の間に、=■Fo1”+30の入力部分
におけるエントリ単語が、R,11242内に2住され7う。
シーケンスブロック13の1問に、啜り誤り類31?a理のために:必dなプロ
グラムポインタがセットアツプされる。これらは準備スjッグCのり、発明の完
全な理解のために説明される必要はない。
次にνj御は、シーケンスグロック100に進む。シーケンスグロック100r
始まる第12B図〜#ll2J図は、綴り誤り決定のための!uグラム方法をボ
ッ。このブロックは、参照を容易にするために、100C始まる播号が付けら(
LCいる。ノードの7 tJラック、便利のための10ツク番号に加え−(、参
照記@N’1−N10.N12−N13゜N13−N2O,N28およびN、3
2によって4別される。
ノードN 1− N 32の各々は、互いに類似しCいるが、各ノードに続く処
理のシーケンスは、3叉字のエントリを持つ任這の質問文字の比較のために形成
された比較タイプ指示に依存する。各ノードは、比較手順に対する呼出かうなる
。
比較手順の闇に処理のシーケンスを示すフローチャートが、第i2L図に含よれ
でいる。比較手順の呼出に続いて、処理は、叩出ノードゾロツクに戻り、第12
13図・〜第12J図に示されるよつな9・クエイのジャンプが仔在し、これら
は比較手順によつr:戻され〕こ比較タイプ指示の値に故存する。いく〕かの比
較タイプ指示は、特定のノードで可能なりのではない。たとえば、N12B図に
おけるノード10ツクN1以下に示された比較タイプ4.5.6.7および8に
注目されたい。星印は、特定の比較タイプが特定のノードで可能なものではない
というときを示すために用いられる。
各ノードのブロックに続く比較タイグ指示は、仮の綴り誤り1類を決定する。仮
の啜り誤り種類は、比較タイプ指示に続く記号M、T、D、I、S、およびMS
によって示される。これらの記号の意味は、テーブル2の第2M目の行に示され
ている。
土岐タイプ指示によって決定される実行は、一致誤りが発生するか、またはRA
M1242内に記憶された開局単語の質問語幹文字ストリングがなくなるまで続
けられる。
ここで、第12 L図のフローチャートに示された比較手順を考える。第12B
図〜i12.J図のノードの各々によって利用される比較手顎は、シーケンスブ
ロック26で開始し、そこではRAM内の質問語幹文字ストリングにおけるため
にチェックが行なわれる。もしすべての質問文字が処理ざ1でおれば、制御はN
Oi路を通じてシーケンスブロック27に移り、そこで:ま比較タイプ1示7メ
8にセラ1〜される。比較タイプ指示は RAM内の予め定められに記憶位置に
記憶さ+′LうCOMPARE TYl’Eと呼ばれう変数にセットされる値で
あう、変改GOMP、ARE TYPEは、トリブレット比較タイプ指示を記1
するものと同一である。比較タイプ指示の8は、ここ?こおいては、すべての質
問文字が@5!されてしまったことを示すために用いられる。シーケンスブロッ
ク27の優に、その手順を離れて、そして処理は比較手順が呼出されたノードブ
ロックに戻される。
他の質問文字が存在すうとすると、シーケンスブロック26からYESルートが
ブロック28にとられ、ブロック28では、(1在処理されまたは比較されてい
る)質問文字Q1の関係が、エントリ文字E+ −1(すなわちRAM1242
におけうエントリ文字ストリンの次の低位エントリ文字、テーブル1〜4訓1に
対して比較され、そしてもし同等性が存在すれば、そのときは1llljtlは
シーケンスブロック2つに移動し、ブロック29では変数COMPARE TY
PEが4にセットされる。テーブル2および18に見られるように、比較タイプ
指示の4は、10進比較タイプ指示の4またはトリブレット比較タイプ指示の1
00の結果となる。
もしシーケンスブロック28の間に、質問文字Qiがエントリ文字Ei −1<
すなわち次の低位エントリ文字)と等しくなければ、制御はシーケンスブロック
30に移行し、そこではRAM1242内の変数COMPARE TYPEが、
10進のOまたはトリブレットCOMPARE TYPE指示のOOQにセット
されろう
シーケンスブロック31および32の間に、質問文字Qiは、エントリの対応す
る位置におけるエントリ文字と比較され、すなわち質問文字Qlはエントリ文字
E1と比較される。もしQiおよびEiとの間に同等性か存在すれば、そのとき
はシーケンスブロック32に入り、そこでは変数COMPARE TYPEに2
が加えられる。より詳しくは、COMPARE TYPEにおけるトリブレット
の2進ビツト2が1にセットされる。シーケンスブロック31およびシーケンス
ブロック32に続いて(QlがEi と等しくないときには)、シーケンスブロ
ック33に入り、そこでは質問文字Qiがエントリ文字E+ +1 <次の高位
1ントリ文字)と比較される。もしQlがEi〒1と等しければ、そのときはシ
ーケンスブロック34に入り、そこでは変数COMPARE TYPEにおける
トリブレットに1が加算される(すなわちビット1が1にセットされる)。
QiがEi÷1と等しくないときには、シーケンスブロック34に続いて、シー
ケンスブロック35に入り、そこでは比較される質問文字およびエントリ文字の
トラックを維持するプログラムポインタ(図示せず)が1だけ増加される。シー
ケンスブロック35に続いて、処理のシーケンスは、比較手順を呼出すノードに
戻る(すなわち比較手1gIを離れる)。
上述の説明からおよびテーブル18を参照して、比較手順が完了した後、もしテ
ーブル18に示された対応するエントリ文字が質問文字Qiと一致するなら、ト
リブレットCOMPARE TYPE指示のピッ1−1.ビット2f3よびビッ
ト3は1であるということが理解されよう。もし1より多くのエントリ文字の一
致があれば、そのときは一致するものの各々が1状態における対応するピットを
有する。
ここで、wSl 2B図〜第12J閲および対応する動作を考寮する。ノード番
号のN1によって示される第12B図のシーケンスブロックの間に、比較手順が
呼出されて、変数COMPARE TYPEが第1の質問文字Q1に対して形成
されるようにする。エントリ文7Ei以下に文字は存在しないので、空白文字が
El−1位置に対して用いられる。したがって、質問文字Q 1は次の文字、す
なわち空白、El、およびE2と比較され、トリプレットはRAM1242内の
予め定められた記憶位置におけるデープル18内に示されたもののうちの1つに
対応する変数COMPARE TYPEに記憶される。手順が比較手順から戻る
とき、フローのブロック102に入り、そこではRAM1242内の変数COM
PARE TYPEが調べられ、ブロック102以下のラインに示される変数C
OMPARET’ Y P Eに6けるものと等しい′10進値を有するライン
を通じてジャンプが行なわれる。
上述したように、Ei−i位atは空白であり、エントリ単Rhの第1の文字は
エントリの第1の文¥と常に一致yる。
したがって、制御は通常は、シーケンスブロック102から10進値2または3
に対応する経路のうちのいずれかにブランチし、10進Vi2はQlがElと一
致することな示し、10進値3はQlとElおよびE2との闇の一致を示す。も
シ変数COMPARE TYPEか10進数字0または1であれば、一致誤りが
存在し、ブロック104を通じてブリット11−Aにブランチが行なわれるよう
にし、そこで手順は終了する。比較タイプ変数の4〜8は、可能な後続のノード
N1ではなく、エラーである。
ブロック102の闇にCOMPARE TYPE変数が2または3のいずれかで
あるとすると、シーケンスブロックN2ブロック104にブランチがとられ、そ
こでは比較手順が、RAM1242内の質問語幹文字ストリングにおける次の質
問文字に対する比較タイプを決定するように、再び呼出される。与えられている
例において、これは質問文字Q2である。しかし、ノードN1と組合わせて変数
COMPARE TYPEは、ジャンプポイント2および3でMによって示され
るように、一致の仮の綴り誤り種類指示を与えるということに注意されるべきで
ある。しかしこれは仮の一致のみであり、ノードN2に続く処理は、同一または
異なった仮の綴り誤り種類指示が与えられるかどうか、または最終の綴り誤り種
類指示が決定されることができるかどうか、ということを決定するというふうに
考えられることが必要である。
ここで、ノードN2ブロック106.15よびその対応する一遍の動作を考察す
る。このとき再び第2の質問文字、すなわちQ2に対して比較手順が呼出され、
ここでエントリ文字E1.E2.およびE3は比較に用いられ、また他の9ウエ
イジヤンプが、前の比較手順からの結果であるRAM1242に記憶された変数
COMPARE TYPEにおける比較タイプ指示に依存して発生する。このた
めに、シーケンスブロック108の闇に、変数COMPARETYPEにおける
比較タイプ指示が誦べられる。もし比較タイプ指示が10進数字の0であれば、
仮の挿入が存在し、そしてブリット3Aを通じてノードN3ブロック112にジ
ャンプがとられる。もし10進数字の1であれば、仮の削除が存在し、そしてブ
リット3Bを通じてノードN4ブロツク112にジャンプがとられる。もし10
進数字の一致タイブ2.3.6.および7のうちのいずれかであれば、仮の一致
(M)が存在し、制御はノードN2ブロック106に戻る。もし10進数字4で
あれば、仮の置換がまた存在し、そしてブリット3Aを通じてノードN3ブロッ
ク122にジャンプがとられる。上述したように、比較手順は、RAM1242
におけるCOMPARE TYPE変数における10進数字の一致タイブ8を与
える。これは、トリブレットに第4のビットを加算してそれを1にすることによ
って行なわれる。これが発生したときに、その変数は、その質問が今完全に処理
されて、かつ仮の一致(M)が最終結果となったということを示す。したがって
、ブロック110を通じてブリット11Aにジャンプがとられ、動作は終了する
。
ノードN5−N32に対する動作および各ノードに対する後続の9つのブランチ
は、ノードN1およびN2に関してここで説明したのと同様の方法で解析される
。9つのブランチの各々に対し、比較手順が呼出されるようにするノードブロッ
クおよび先行する比較手順によって形成される変数COMPARE TYPEに
よって決定されるような仮のまたは最終的な綴り誤り種類指示が存在する。各回
、ブリット11Aを通じてジャンプが行なわれ、処理は終了しかつ第12に図に
おける同一の場所に移る。
任意のノードのブロックのブリット11Aを通じるジャンプに続いて、シーケン
スブロック24に入る。ブロック24に入ると、COMPARE TYPEにお
ける最終の変数は、ブランチが発生したノードブロックと組合せて、綴り誤り種
類指示を形成するために用いられる。最終の綴り誤り種類指示は、RAM124
2内の予め定められた記憶位置に位置決めされたMTYPEと呼ばれる変数に形
成される。MTYPEに記憶された変数の値は、ジャンプを引起こした変数CO
MPARE TYPE、およびそこからブロック24に入るノードブロックN1
−N32によって決定される。実際のMTYPE値は、記号M、T、D。
I、S、、f′3よびMSによって指示され、それらの記号はテーブル2におけ
るジャンプを引起こす比較タイプ指示Q−8の隣に現われる。たとえば、比較タ
イプ指示8〈M)でのジャンプによるノードブロックN2からのブランチは、正
確な一致に対するMに対応するMTYPEの1の結果となり、比較タイプ指示0
(MS)でのジャンプによるノードブロックN3からのブランチは、多重綴り
誤りに対するMSに対応するMTYPEの6の結果となる。
ブロック24に戻って、MTYPEにおける綴り誤り積項指示は、それが容認し
得る綴り誤り種類指示のうちの1つであるかどうか、またはそれが容認し得ない
種類指示であるかどうかを見るためにチェックされる。第1図および1!11図
に示されたこの発明の実施例は、容認し得る綴り誤り種類指示2−5のみを考察
している。もし容認し得る綴り誤り種類指示(PMCI)が特定のエントリ単語
に対して形成されてしまっておれば、そのときはシーケンスブロック25に入り
、そこではテーブル5に示された応答単語フォーマットが、RAM1242から
上述したようなFIFO1130<第11図)の出力部分に再び転送され、それ
に続いて処理はプリント1Aを通じてシーケンスブロック6に戻る。
シーケンスブロック6の間に、FIFOの入力部分から次の’Jam)が浸出さ
れる。もしそれがテーブル1に4で示されたタイプの他のエントリ単語であれば
、シーケンスブロック12.flよび13に再び入り、それに続いてノードN1
〜N32のうちの1つ以上のものに入って、比較手順を呼出す。これらはすべて
、上述したとおりである。マイクロプロセッサ1118(第11図)がRAMI
126.1128からの最侵のエントリ単語を送った後、テーブル1−2に2
で示された場所マークパターンが発生される。したがって、制御はシーケンスブ
ロック6からシーケンスブロック8に移り、シーケンスブロック8では、場所マ
ークパターンFFQQHがFIFOの入力部分で検出されて、ブリット1Cを通
じてのシーケンスブロック11へのブランチを引起こし、シーケンスブロック1
1では、MC81114はFIFOの出力部分にMC3応答FF0OHを送る。
第11図および第12図に示されたMCSシステム1114および制御MCSプ
ログラム1234の詳細を念頭に置いて、実際の例を考察する。テーブル19は
、テーブル17に示されたのと同様の例1〜6を持つ。さらに、テーブル19は
、2つのユニークでない文字OOを持つ単WiCARTOONを含む例7を含ん
でいる。テーブル19は、MC8がそこを通じて続くノードブロック、したがっ
て質問およびエントリの文字を比較するデータ処理方法、各ノードに従って形成
される10進数字の比較タイプ指示(DCTり、およびテーブル2に示された略
符を用いる仮の綴り誤り種類指示を示す。ここで例2および7を詳細に説明する
。これらの例に対して用いられるのと同様の解析が、他の例に対しても用いられ
る。
例2 k: e イT、単i!ICARTONは、綴Gl)IICATRONと
比較される。したがって、交叉エラー(MC8−1)が存在する。綴り誤り類別
処理に対するポインタおよびカウンタの初期設定の後、シーケンスブロック13
に示されるように、ノードのブロックN1に入り、そこでは比較手順が呼出され
る。比較手順の闇に、質問文字Cが、エントリ単語の次の低位位置、同−位置、
および次の高位位置における文字と比較され、それらの文字は空白、clおよび
Aである。一致だけが同一位置にあるので、比較タイプ指示の2が形成される。
シーケンスブロック102の闇に、比較タイプ指示の2が検出され、したがって
M(テーブル2)の仮の綴り誤り種類指示(MC3)が存在し、シーケンスブロ
ックN2にブランチが行なわれる。シーケンスブロックN2の闇に、再び比較手
順が呼出される。ここで質問文字Aが、エントリ文字C,A、 f3よびTと比
較される。
一致のみがエントリの同一位置にあるので、したがって10進数字の比較タイプ
指示の2が再び形成される。シーケンスブロック゛106の闇に、比較タイプ2
が検出され、それによって一致(M)の仮の綴り誤り種類指示を示し、したがっ
てシーケンスブロックN2にブランチがとられる。
比較手順の次の呼出は、質問文字RをエンI−り文字A。
T、および1(と比較し、一致は次の高位位置におけるエントリ文字でのみ発見
される。したがって、比較タイプ指示の1が形成される。シーケンスブロック1
08の間に、比較タイプ指示1は、削除(D)の仮の纏り誤り種類指示の結果と
なり、ブリット3Bを通じてノードのシーケンスブロックN4にブランチがとら
れる。
シーケンスブロックN4の間に、比較手順の呼出は、質問文字Tがエントリ文字
T、R,I3よびOと比較されるようにする。一致のみが、エントリの次の低位
位置における文字と起こる。したがって、比較タイプ指示の4が形成される。シ
ーケンスブロック108の闇に、10進数字の比較タイプ指示の4は、検出され
て、交叉(T)に対する仮の綴り誤り類別を示し、したがってブリット6Bを通
じてノードのシーケンスブロックN10にブランチがとられる。
シーケンスブロックN10の闇に、比較手順の呼出は、質問文字0をエントリ文
字R,O,およびNと比較する。
一致のみがエントリおよび貿間の同一位置にあり、したがって比較タイプ指示の
2が形成される。続くシーケンスブロック168の間に、10進数字の比較タイ
プ指示の2が検出され、交叉<T)エラーに対する仮の纏り誤り類別指示を示す
。したがって、ブリット10Bを通じて、ノードのシーケンスブロックN32に
ブランチがとられる。
ノードのシーケンスブロックN32の闇に、比較手順の呼出は、質問文字Nがエ
ントリ文字0.N、および空白と比較されるようにする。一致のみがエントリお
よび質問の同一位置における文字で起こり、したがって10*数字の比較タイプ
指示の2が形成される。シーケンスブロック234の間に、比較タイプ指示2が
検出されて、交叉(T>の仮の綴り誤り類別指示を示し、したがってノードのシ
ーケンスブロックN32に戻るジャンプがとられる。
シーケンスブロックN32の闇に、比較手順の呼出は、質問の最後の文字が既に
処理されてしまったということを検出する。このことは、質問単語文字から5T
ZE値をとり、かつそれを変数NoとしてRAM1242内に記憶し、そしてそ
の変数を質問単語の文字が処理されるごとにカウントダウンすることによって、
比較手順において達成される。したがって、この時点で、変数NQにおける値は
0にカウントダウンされて1ノまっている。*12L図の前述した比較手順を自
照すると、シーケンスブロック26は、変*NQがOにカウントされてしまって
いる〈質問文字は存在しない〉という事実を検出し、したがっC1シーケンスブ
ロック26からシーケンスブロック27にブランチがとられ、シーケンスブロッ
ク27では比較タイプ指示は8にセットされる。
第12J図のフローに戻って、ブロック234に入り、そこでは比較タイプ指示
の8が検出され、交叉の最終の綴り濃り種wA指示が検出されてしまったという
ことを示し、したがって、1リツト11Aを通じてシーケンスブロック24に1
ランチがとられる。
ノードの10ツクN32に続<amの比較タイプ斯示は、交叉を示t8 (T)
である。したがって、M T Y P Eに記憶されるべき纏り誤りallI指
示は、交叉(チー1ル2)に対する2である。これは容認し得る綴り誤り種類指
示のうちの1つであるので、シーケンスブロック25に入り、そこではテーブル
1に5で示された応答単語が合成される。
より詳しくは、綴り誤り種類指示の2は、MTYPEに位置決めされ、かつテー
ブル1のエントリ単語フォーマットの左端で加えられる。その結果、テーブル1
のアイテム5の単語フォーマットが形成され、マイクロプロセッサ1118によ
る処理のために、FIFOの出力部分に送り返される。
ここで、テーブル19の例7を考察する。テーブル19では、2つのユニークで
はない文字が同−拳品に含まれている。ノードのシーケンスブロックN1に入り
、そこではとなり、一致の仮の綴り誤り類別を示す。そこからブランチがノード
のシーケンスブロックN2にとられ、ブロックN2では、比較手順の呼出が10
進数字の比較タイプ指示の2を再び検出する。10進数字の比較タイプ指示の2
は、仮の一致(M)を示し、したがつてノードのシーケンスブロックN2に戻る
ブランチがとられる。比較手順の呼出の間に、質問文字Rはエントリの文字のい
かなるものとも一致しないということが発見され、したがって10進数字比較タ
イプ指示のOが形成され、iI換(S)の仮の綴り遺り種類指示を示し、したが
ってブリット3Aを通じてノードのシーケンスブロックN3にブランチがとられ
る。ノードのシーケンスブロックN3の闇に、比較手順に呼出が行なわれ、10
進数字の比較タイプ指示の2の結果となり、置換(S)に対する仮の綴り誤り種
類指示を示す。したがって、ブリット4Aを通じて、ノードのシーケンスブロッ
クN5にブランチが形成される。
シーケンスブロックN5の園の比較手順の呼出の間に、質問における最初の文字
が、エントリ文字T、O,13よびOと比較される。質問およびエントリの同一
位置および次の高位位置の胃に一致が存在し、比較タイプ指示の3の結果となる
。したがって、続くシーケンスブロック130の闇に、10進数字の比較タイプ
指示の3が検出され、仮の置換を示し、ノードのシーケンスブロックN5に戻る
ブランチが形成される。
シーケンスブロックN5の間に、比較手順の呼出は、質問における2番目のOが
エントリ文字O,O,aよびNと比較されるようにする。このとき、エントリに
おける次の低位位置および同−位置における文字との一致が存在する。
したがって10進数字の比較タイプ指示の6の結果となる。
シーケンスブロック103の闇に、10進数字の比較タイプ指示6が検出され、
仮の置換(S)を示し、したがってノードのシーケンスブロックN5にジャンプ
が行なわれる。シーケンスブロックN5の間に、質問文字Nはエントリ文字0.
N、および空白と比較され、したがって10進数字の比較タイプ指示の2の結果
となり、置換(S)に対する仮の綴り誤り種類指示を示す。したがって、シーケ
ンスブロックN5に再び入る。
これは、シーケンスブロックN5に対する最後のエントリである。また、質問の
R優の文字が処理されてしまった。
したがって、比較タイプ指示の8に、比較手順から再入する。
シーケンスブロック130は、10進数字の比較タイプ指示の8を検出し、した
がって置換<S)に対する最終の仮の綴り誤り種類指示に到達し、したがって、
ブリット1Aを通じて、第12に図のブロック24にブランチがとられる。ブロ
ック24に入る直前の比較タイプ指示の8およびノードのブロックN5ば、1つ
のit!1if(Sンに対する綴り誤り1類指示の5の結果となる。この5は、
RAM1242内の変数M + YPEに記憶される。MTYPE値の5は置換
に対するものであるので、これはこの発明のこの実施例における容認し得ない綴
り置ってあり、エントリ単語と質問単語との間のFIFOに戻されず、したがっ
てエントリ単語は質問単語と比較されている残りのエントり単語から分離される
。
3、 第14 の 択6 実、(91
こ:て゛、択−的なディジタルデータ処理手段の顕洛的ブコック図を考察する。
114図;よ、出校タイプ指R19よび仮のかつ最終の啜り誤り81類指示を決
定するための、この発明による択一的な方法LI3よび手段を示すj第14図は
、質問レジスタ2110、およびメモリまたはデータベース記11M12211
2を含む。質問レジスタ2110は、質問単語のfi1文字QO−QXを記憶す
るための、O−X記憶位置を持つ。ン゛−タベース記憶装[2112iよ、第1
4図に列として示されでいるメモリ記憶位置1〜lを持つ。各メモリ記t!位置
は、エン1〜り単語の文字EO〜EXを記憶するための文字記憶位NO〜Xを持
つ。
データベースカウンタ2114は、記憶装置12112の記憶位W11〜2のう
ちの任意のものをアドレスし、対応fる記憶位1ilfにおけるエントリ単語が
読出されて、記憶装置21 ’+ 2の上部に示ざnた選択回路またはゲート2
116の入力に現われるようにする。文字カウンタ211Bは、選択回路211
6に対する入力である。文字カウンタは、質問レジスタ2110内の質問単語の
別々の文字に対応する状!lO〜Xも持つ。文字カウンタ2118の各状態は、
質問レジスタ2110内の対応する文字およびデータベースカラン92114に
よってアドレスされた記憶装置2112のエントリ*iにおける3つの文字が、
比較回路2コ20の入力に対し″C連結されるようにする。特に、任意の特定の
質問文字Qiに対する比較回路2120の入力に対して連結されたエンiり単語
の文字は、Ei−1,Ei。
d3よびIg:i+1Cある。ここで、Iは、質問文字の位置を指定する。3i
−1,Ei 、およびEi−i−”1は、エントリ41語に6ける次の低位位置
、同一位置、および次の高位位置における文字Cある。質問文字Q1に対しで、
EO文字は、図示の目的でレジスタ2122に記憶されている空白文字<Nc)
である。最後の質問文字QXに対し、EX+1文字は、図示の目的でレジスタ2
1 ’、24内に記憶さn(い8′?!白文字にある。空白文字は、E11ス■
の文字および質n*iよたはエンI・り単語のいずれかに8ける他の文字のいず
れとも一致しない文rが明らかに存任し、よいので、用いられる一代わりに、好
ましくは、空白文字との比較が存在すべきであるということを検出することによ
って同じ結果を作り出す論理が与えられてもよい。
比較回路2120は、實間文FQiを、遺沢回δ2116によってそこに連結さ
れたエントリ文字三i−1,cEl。
、お上・びEi t−1の各・贅と比較し、質問単語の文字と比較されうエント
リiiの3つの文字との1121の関係に依存して、テーブル16に示された4
′〕の比較タイプ指示のうちの1つと表わす4つの1ニークな2進コー1ζ化さ
れた信δのうちの1つを発生する。比較回路2120によって形成される各比較
タイプJ旨示は、レジスタ2126内に記憶される。
レジスタ2126は、記憶位10〜Xを持っており、これらの各記憶位1は、比
較タイプ指示の別ンのものを記憶するためのものである。文字が記憶されるレジ
スフ2]26内の21泣1は、文字=っンン9211sの状態トニよって決定さ
れる。
パターン解析器2127は、レジスタ2126内の位置0〜X内の比較タイプ指
示をスキャンするノこめ、および比較される記憶装[2112のメモリ記憶位置
における特定のエントリIIIに対するテーブル2に示された6つの綴り扁りI
I煩種指示うちの1つを形成するために与えられる。
纏り員り種類指示は、2進コード化された信号である。
綴り謳り橿填記憶装置2128は、データベース記憶装置1f2112内のメモ
リ記憶位置1〜Zのう5の各々のものに対する記憶位置を持っている。エントリ
31謂の各々に対”611り原り81頌指示は、比較されるエントリ単語、すな
わちレジスタ2126内の一運の比較タイプ指示を引起こしたエントリ単語、に
対応する綴り誤り種類記憶装置2128の記憶位置内に記憶される。
・デコーダ2130と組合せて、ゲート回路2132は、質問単語の容認し得る
纏り誤りであるデータベース記憶装置2112内のエントリ単語を読出し、それ
によって容認し得ない綴り譲りのものからそれらを分離するための分離器を形成
する。このために、データベースカウンタ2114の各状態は、データベース記
憶装置21 ’+ 2内の異なった記憶位置、8よび綴り誤り類別記憶装置21
28内の対応する記憶位置を選択し、両記憶装置2112および2128内の1
達した記・1位1の内容が読出され−C、ゲート2132の入力に与えられるよ
うにする。デコーダ2130はまた、記憶!1l12128からの綴り誤り種類
指示をモニタし、そしてもし記憶装置12128からの警り誤り種類指示が容認
し得る綴り誤り種類指示2〜5のうちのいずれかのものであれば、デコーダ21
30は制御信号をゲート2132に与えて、選択されたメモリ記憶位置における
エントり単語がメモリ2134内にシフトされるようにする。
ゲート2132はまた、対応する綴り誤りIl類指示を、エントリ単語に従って
、記憶装[2128からの対応する綴り誤り種類指示をメモリ2134内の同一
の記憶位置に記憶する。メモリ2134は、たとえば、先入れ先出しメモリであ
り、6新しい綴り誤り種類指示およびエントリ31謂の組合せを、別々のメモリ
記憶位置に記gIする。制御装置2141は、第14図の回路の動作のシーケン
スを制御し、したがって、上述の説明および以下の例に従った方法を制御する。
ここで、容認し得る綴り誤りをe認し得ない綴り誤りから分離するための、第1
4区のディジタルデータ処理手段の動作の例を考察する。最初に、11311回
M2141は、手段(図示せず)によって#114図におけるカウンタ、レジス
タ、記憶%am、およびメモリの各々と、ラインで結合されるリセット出力21
44で制御信号を与え、各々が0状態にクリアまたはリセットされるようにする
。質問単PcARTONが質問レジスタ2110に記憶され、かつテーブル17
の例1〜6で示されたエントリ単語がデータベース記憶装置2112のメモリ記
憶位置1〜6に記憶されて2110に入力され、エントリ文字は入力2142を
通ってデータベース記憶装置2112に入力され、したがってこれらの回路によ
って受取られる。
文字カウンタ2118は、gi間文字QOを指している状態にあり、カウンタ2
114は、データベース記憶装置12112および綴り誤り煩別記憶装fi21
28のメモリ記憶位filに対応する状態にある。このことは、ゲート2116
が質問文字QOを比較回路2120の入力に接続するようにし、またレジスタ2
122内の空白文字およびデー14ベース記41Il@W内のメモリ記憶位l!
1の文字EOおよびElか比較回路21200Å力と後続されるようにする。ラ
ーーブル]7における例1を参照すると、QOはCであるが、文字EO−1,E
OおよびEO+1は文字¥白、C,JよびAである。比較回路2120は、文字
QOおよびト0の間の同等性を検出し、したがって、比較タイプ指示のO(テー
ブル″!6ンが、制御@1t2141からの制御信号で図示せず)のIll御の
下で、レジスタ2126の記憶位置0内に記憶される。
次に制御カウンタ214]は、文字カウンタ21 i 8に1する入力2!48
′C″カウント信@を形成し、文字カラ〕Iり2コ18か質問単音01に対応づ
る次の状態にカラン)−丁′つ・ブするJ:うにする。この時点で、エン艷り単
語の質問およびエン(・り文字E O* t: 1+およびE2の文字Q1は、
ゲ・−1〜2116に五つて、比較回路2120の入力ど接続される。比較回路
2120は、文字Q1およびElの間の一致を検出し、再び比較タイプ指示の○
がレジスタ2126内にシフトされて、新しい比較タイプ指示がレジスタ212
6内に記憶されるときに、前の比較タイプ指示が左ヘシフトされるようにする。
この動作が継続して、質問1gの語尾の文字に達するまで、文字カウンタ211
8が質問レジスタ2110の各後続の文字に対して増加されるようにする。
図示の目的で、最下位文字の後、質問レジスタ2110内の記憶位置の各々は、
空白文字で一杯である。したがって、文字カウンタ2118は今、ゲート211
6が空白文字を比較回路2120の入力、したがってデコーダ21500Å力と
接続するようにする。デコーダ2150は、空白文字を検出し、対応する信号を
出力2152に与え、その信号は次に、IIIIIII装置2141が比較タイ
プ指示が発生されるフェーズから、綴り誤り種類指示が形成される解析フェーズ
にスイッチされるようにする。
パターン解析器2128は、好ましくは、レジスタ2126内の比較タイプ指示
のパターンを調べるプログラムされたマイクロプロセッサである。テーブル17
の例1に戻って、すべての比較タイプ指示はOである。したがって、一致(M)
に対する綴り誤り種類指示、つまり1111(テーブル2および17参照)が形
成され、綴り誤り種類記憶装置2128に与えられ、そこに記憶される。
レジスタ2126内の比較タイプ指示が解析されてしまった優、次に制御装置2
141は、その出力2156で制御信号を形成し、データベースカウンタ211
4が、次の状態をカウントし、したがってデータベース記憶装置2112内の記
憶位置2を指すようにし、そして出力2149を通じて文字カウンタ2118に
信号を与えて、文字カウンタ2118をOにリセットする。データベース記憶W
il12112の記憶位置2は、エントリ単語cATRONを含cnエントリl
ft!1cATRONは、テーブル17を参照すると、交叉であることが理解さ
れよう。文字カウンタ2118は、質問文字QOを指す。レジスタ2116は、
質問文字QOを、データベース記憶装置2112の記憶位置2からの文字空白、
C9およびAとともに、比較回路2120に接続する。比較回路2120は、一
致を検出し、したがって、比較タイプ0がレジスタ2126の記憶位置0内に記
憶される。文字カウンタ2118は今、質問文字Q1を指す1つの状態によって
増加される。再び一致が検出され、そして比較タイプ指示Oがレジスタ2126
の記憶位置1内に記憶される。文字カウンタ2118は再び増加され、このとき
は文字Q2を指す。テーブル17を参照すると、例2.Q2はRであるが、E2
は王である。デーi−,2116は今、質問単一からの文字Rおよびエントリ単
語からの文字A9丁、およびRを、比較回路2120の入力に接続する。比較回
路2120は今1、エントリ単語における次の高位位置と質問文字との闇に一致
を検出し、したがつC、レジスタ2126の記憶位置2に記憶されている十比I
ll Ill 装置2142は今、文字カウンタ2118が、質問文字Q3を指
す次の状態にカウントアツプするようにする。
したがって、ゲート2116は今、質問文字下およびエントリ文字T、R,およ
びOを、比較回路2120と接続する。比較回路2120は、エントリ単語の次
の低位位置と質問文字との闇に一致を検出し、−比較タイプ指示が形成されかつ
レジスタ2126の記憶位置3に記憶されるようにする。制御装置2141は今
、文字カウンタ2118を増加し、質問文字Q4を指す。ゲート2116は、質
問文字゛0およびエントリ文字R,O,およびNを比較回路2120に接続する
。比較回12120は今、質問およびエントリの同一位置の闇に一致を検出し、
比較タイプ指示を形成し、この比較タイプ指示はレジスタ2126の記憶位置4
に記憶される。
文字カウンタ2118は、再び増加され、したがって質問文字Q5を指す。質r
llll+5よびエントリの同一の記憶位置の闇に一致が再び検出され、比較回
路2120は、O比較タイプ指示がレジスタ2126の記憶位′#t5に記憶さ
れるようにする。
文字カウンタ2118は、再び増加される。このとき、質問文字Qiは空白であ
る。デコーダ2150は、2152でIll 111(1号を作り、l1li御
装置2141が次に2.54で制御信号を作るようにする。この制御信号は、パ
ターン解析器がその動作を開始するようにする。レジスタ2126内に示された
パターン、つまりo o + −o oから、交叉が発見され、したがって解析
器2127は、綴り誤り種類指示の2(テーブル2および17参照)を形成する
。
四−の解析が、挿入、削除、および習換に対する例の3゜4、および5に対して
用いられる。各場合において、綴り誤り種類記憶装置12128に記憶された綴
り誤り種類指示によって示されるエントリ単語は、′11WKシ得る綴り誤りで
あるとして発見され、したがつ−でエントリおよび対応する綴り誤り種類指示は
データ記憶装置2112および綴り譲り種類記憶装置2128からメモリ213
4に転送される。
この動作は、実質的に、比較タイプooxo+十がレジスタ2126内に記憶さ
れている場合を除く残りの例6に対して上述したのと同様である。このことは、
記憶H@2128の記憶位置6で記憶される多重綴り誤りエラーに対する綴り誤
り種類指示(MS)の6を引起こす。記憶装置2128の記憶位置6における綴
り誤り種類指示は多重エラーを示しているので、データベース記憶装置2112
の記憶位W16にお(プるエントリ単語は、ぞれが容認し得ないまたは多重のエ
ラーであるので、記憶装fit 2 ”+ 34に転送されない。
上述の説明では、パターン解析器2128は、質問のすべての文字が比較されて
しまった侵レジスタ2126内の比較タイプ指示を解析するのに効果的であると
考えた。パターン解析器は、特定の質問単記に対する比較タイプ指示のすべてが
形成されてしまうまで持つよりもむしろ、各比較タイプ指示が形成されるときに
その動作を行ない得るということが理解されよう。
4、第15図および第16図の゛択的寅第15図および第16図は、比較タイプ
指示および綴り誤り種類指示を決定するだめの第11図および第12図に関連し
てホされた方法および処理の部分を実行するための、選択的な構成の概略ブロッ
ク図である。第15図は、システムの動作のシーケンスを制御する記@Sによっ
て指定されるシーケンスカウント出力を有する鯛lll1装置2130を含む。
シフトタイプのエントリレジスタ2312は、エントリ単語の3つの文字に対す
る記憶をもって与えられ、3つの単語の記憶が、任意の質問文字Qiと比較され
るエントリ単語の次の低位位置、同一位置、および次の高位位置に対応する、E
t−1,El 、およびl:i+1の記号が付けられている。
質問文字2314は、比較される質問の文字を記憶するために与えられる。比較
タイプ指示(C−rI)レジスタ2316は、1.2.4.8番号コードと対応
する1、2゜4.8の記号の付けられた記憶の4つのビットを持っている。CT
Iレジスタ2316は、テーブル18に示されたトリブレット比較タイプ指示が
そこにおいて形成されるものである。ビット8が、質問の最後の文字が処理され
てしまった後、値8の配列を許容するために加算される。
ベース関連アドレス配列は、エントリおよび質問の文字を、テーブル1において
4および3で示されたカウントバイトの右にアドレスするために設けられる。こ
のために、エントリベースレジスタ2318は、基本アドレスを記憶し、基本ア
ドレスは、ENTRY (58)の最後のエントリ文字のすぐ右側にRAM内の
文字を指し示す。N Eレジスタ2322は、エントリフォーマットからの5I
ZEt!を記憶し、E!!本レジしク2318における基本アドレスに加えられ
るとき、RA M ’、 242に含まれるE N + R’r’(58)にお
けるエントリ文字ストリングの最初の文字または左端のアドレスを形成する。
同様に、041本レジスタ2320は、QUERン(58)における質問文字ス
トリングの最後の文字のすぐ右側の文字に対するR A M 1242内の記憶
位置のアドレスを記憶する。NQカウンタ2324は、質問単語に対する5IZ
Elを記憶する。たとえば、NQにおけるS?ZEMは、Q?171本レジスフ
232のアドレスに加えられるとき、E\1丁RY(58)における211間文
字スミ )jングの左端のまたは最初の文字のアドレスを形成する。
加算器2326は、レジスタ2318および2322における(il ’c 結
合し、エントリにおける文字のRAM1242内のアドレスを形成し、また01
本レジスタ2320および2324内の値を結合して、質問における文字のRA
M1242内のアドレスを形成する。加、算112326の出力は、RAMアド
レスレジスタ2328内に記憶され、次にRAM1242を7ドレスするために
用いられる。
空白レジスタ2330は、空白値(エントリまたは質問の他の文字のいかなるも
のとも一致しないユニークな文字)を記憶する。
ゲート2340.2342.2344.および2346は、c−riレジスタ2
316のビット1,2,4.8を、この俊説明する方法で1状態にセットするた
めに設けられる。CLRライン2348は、CTIレジスタ2316をOにクリ
アする。ゲート2350および2351は、レジスタ2330からの空白文字、
およびRAM1242からのエントリ文字を、エントリレジスタ2312のEi
+1記憶位置内に記憶する。エントリレジスタ2312は、シフトタイプレジ
スタであり、文字が記憶位置Ei+1内にシフトされるときに、[:i+1の内
容を記憶位置Eiにシフトし、かつ記憶位置E1の内容を記憶位置Ei −1内
にシフトする。
ゲート2354.2356.、+5よび2358は、記憶位置Ei −1,Et
およびEi +iを、比較回路2360の入力に接続する。比較回路2360は
、エントリレジスタの記憶位置E+ −1,Et 、およびEi +1のうちの
1つにおける文字を、質問レジスタ2314における文字と比較する。もし一致
が発生すれば、真信号が比較回路2360の出力2362で形成される。一致が
ないときには、偽信号が出力2362で発生される。
ゲート2364は、RAM1242から読出された賛同文字を、711!lレジ
スタ2314内に&!lする。制−装置2310は、#112図のフローのノー
ドのブロックN1.N2〜N32に対して指定された番号に対応するa号の出力
を持つでいる6第12因を参照すると、ノードの11コツンN1.N2・・・〜
32は、それぞれ3100.3108・・・3232の記号が付けられている。
′s15図のみは、ノードの70ツタN1.N2およびN32に対応する出力3
100.510633よび5232を示し、他のものは点纏によって示されてい
る。これらの出力は、第16図のデコーダ2310に対する入力である。
第16図を参照して、デコーダ2370は、CTIレジスタ2316の出力23
17からの入力を持ち、かつノードのブロックN1〜N 32に対応する制′a
装置2310の出力8100.3106・・・5232からの入力を持って与え
られている。デコーダ2370は、(ノードのブロックN1〜1N32のうちの
1つに対応する)゛出力S1ΩO,5106・・3232のうちのいずれのちの
が真でありかつCTlレジスタ2316内の比較タイプ指示の値であるかという
ことに依存する、綴り員りlWA指示(]11・〜6のううの1つ)を形成する
ように構成されている。
たとえば、シーケンスブロック100(N1)の間に、真信号が、i制御装置2
310の5100出力で形成される。
CTIレジスタ2316における比較タイプ指示がOであるとすると、デコーダ
2370は、騙り誤り種類指示のO(MS)(テーブル2)を形成する。同様の
コメントが、比較タイプ指示の1に対して適用される。比較タイプ指示の2は、
デコーダ2370が、纏り誤り種類指示の1(M)を形成するようにする。W!
4mの解析が、第12因のフローチャートにおける他のノードの各々に対して行
なわれる。
r@14Jボックス104.110,118,120.126.128.134
.136.142.144.150゜152.158.160.165,166
.172.174.180,182.188.190.198.198゜204
.206.212,214.220.222を通って進む、第12図のフローチ
ャートに示されたジャンプは、制御l@置2310のRES出力での11御信号
を引起こす7゜コノw4IIIl信号ハ、’7”−ト2376が、テ’:J−’
j 2370(7)出力で形成された綴り譲り類別指示値を結果レジスタ237
8内にゲートするようにする。デコーダ2380は、結果レジスタ2378に記
憶された綴り誤り種類指示値をデコードし、2つの出力23815よび2384
のうちの1つでIIJ1jIl信号を形成する。結果レジスタ2378における
纏り誤り種類指示が容認し得る綴り誤りのうちのいずれかのものに対するもので
ゐるとき、真信号がデコーダ2380によって出力2382で形成される。もし
結果レジスタ2378における値が容看し得ない纏り誤りのうちのいずれかのも
のに対するものであるとき、真信号が出力2384で形成される。
ここで、制御lII′lA雪2310の状態と同一の番号を持つ第12図のフロ
ーのブロックを参照して、第15因および第16図のシステムの動作をより詳細
に考察する。最初に、制W装誼2310は、状態13に入り、そこでは、第15
図および第16図に示されたすべてのレジスタが@御装獣2310によって0に
初期設定またはリセットされ、質問基本アドレスおよびエントリ基本アドレスは
レジスタ2318および2320内に、(図示されていなり・手段によって〉記
Iaされる。制御装置2310は状態13(フローのブロック13)に入り、そ
の出力S−+3a 、513b 、513c 、513d 、513eおよび5
13f(制W装買2310には図示せず)で制御信号を形成する。ざらに、質問
l1mに対する5IZE!!およびエントリ■語に対する5IZE値は、順にR
,AMi242から読出されて、ゲート2351に与えられる。8131でのI
iJm tit号は、NQ力つ〕り2324が、質問に対″gる5IZEj![
’、i’:こ憶コるようにし、その後513bでの参制御氾号賢1、〜eカウン
/(/2322が、エントリに対するS′izE値を記憶するようにする。
制御信号は、313cで形成され、ゲート23′50は、エントリルレジスタ2
312の記憶位[El→・1内にレジス々9”(n(’)からの空白性を記憶す
るようにする。加算器2326は、E!1本レジしメ231B内のアドレスとN
eカウンタ2322内の値とを結合して、エンPり文字スト1ノングの最初の文
字のアドレスを形成し、その結果はRAM加算レジスタ2328に記憶される。
次に、レジスタ2328におけるアドレスは、アドレスランチ1158(第11
図)に与えられ’U1RAM1242をアドレスし、エントリ文字ストリングの
最初のく左端の)文字を読出し、それをゲート2 ;351に与える。制mV装
置2310によって出力513dで形成されたIII御信号は、ゲート2351
に与オ、られたエントリの最初の文字が、記憶位1ilEi−1−1内にシフ1
〜され、かつ空白値がエントリレジスタ23°12の記憶位WEi内にシフトさ
れるようにする。ざらに8130での!IIIJw偏りは、Neカウンタ232
2のカラン1−(CT)入力での制御信@を引起こし、5IZE値が1だ(プカ
ウントタウンされて、そnによってエン1〜り単語の次の高位位胃におけるエン
トリ文字を示づようにする。
制御信号は今、813e出力で形成され、また加算器2326は・今、E基本レ
ジスタ2318とt< eカウンタ2322との内容を結合し、RAM加算レジ
スタ2328に記fflされるアドレスを形成し、そのアドレスは次に、pドレ
スラッチに与えられて、RAM1242をアドレスして2番目のエントリ文字を
読出すため相用いられ、2番目のエントリ文字はゲート2351に与えられ、る
ようにされる。518dでの制・御信−号は、グー、ト、、2.351が2番目
の文字を記憶位置1’Jgi+ii内にシフトするようにし、かつ記憶立置E
i +13よびr; +1の内容が1つの記憶位置だけ左にシフ1−されるよう
′こする。エントリレジスタ2312は今、記憶位置[i−1に1Hける空白値
、Eiに3ける最初のエントリ文ア、およびr:i+1における2番目のエント
リ文字を含む。
S 13 +、!での制御信号はまた、Ne77つ〕/夕23 ’22 +ニー
!3’j6S I / ”:1.sが、1.につも大きいl直カウンごダウ〉さ
4る。にう:こlノ、それによってエン(−りの3番目の文字を指し示すように
する。。
l1lJ′gIJ傳号は今、$13を出力で形成され、加算器2,326(よ、
Q基本レジスタ2 ;320 、ffよびNQカウンタ2324の内容を結合し
、目間文字スi・リングの肩初ので7慣の)記憶泣1における文字のアドレスを
1戊する。この7ド1ノスはRA ’1/l加憚レジスタ232Bに記憶され、
アドレスラッチに与えられて、RA ff1.41242をアドレスすうなめに
用いられ、質問の最初の文字が読出されτjゲート351に5.t′うするよう
にする。513fでの制御1号は ゲーl−233・、1が1問レジスタ231
・111こ預初の質問文字を21オbようにする。
この点で、エントリレジスタ2312は、左から右の領序に、エントリ文字スト
リングの空白文字、#l初の文字E1、、t5よび2番目の文字F2を含むが、
質問レジスタ2314は、ffn文字ストリングの最初の記憶位置からの文字Q
1を含む。
フローのジーケンスブ[コック13に続い−C1ノートのブロック100CNi
)に入り、そごでは比較手順の呼出が存在し、そこでシーケンスブロック26〜
35に入る。上に指摘したように、比較手順の呼出は、f7n12図に示された
比較手順に入るようにする。続く動作は、比較手順の基本的部分を実行する。
第15図および第16図のシステムに戻って、制御装置の状!1t26の間に、
@御装置は828出力で制御信号を形成する。エントリレジスタ2312が文字
空白、El、およびE3をまだ含んでおり、かつ質問レジスタ2314が文字Q
1をまだ含んでいるとすると、828での制御信号は、ゲー1−2354が空白
文字を比較回路2360に接続するようにし、比較回路2360は、次に空白文
字をレジスタ2314にお番プる質問文字Q1と比較する。比較が存在せず、し
たがって偽信号がゲート2344に与えられる。
828出力での制御信号の間に、制御信号が829出力で形成される。しかし・
、ゲート2344は、比較回路236Cからの偽信号のために、能動化されない
、その結果、CTlレジスタ2316に記憶された各ビットは、O状態のまま残
る。これは、第20図のシーケンスブロック30で示された状態である。 Er
−1aよびQiにおける文字の比較が一致の結果となったとすると、326での
制御信号は、ゲート2344がレジスタ2316のビット4を1にセット吏るよ
うにする。これは、フローのブロック29に対応する。
制御&1ia12310ノ状131 U)5AItZ、uJ神信Qが331出力
で形成されて、ゲート2356がEiにおける文字を比較器2360に接続プる
ようにし、比較器2360は次に、その文字をQi レジスタ23)4に63
Gノる質問文字と比較する。もし比較がなければ、偽信号が2362出力で形成
され、上述したように、ケート2342が能動化されないようにする。比較があ
ったどすると、真信号が2362出力で形成される。
一゛致があり、したがって真信号が2362出力で形成されるとすると、信号が
831出力でまだ形成されている閏に、制御信号が332出力で形成される。8
32出力での真信号は、2362出力での真信号と協力して、ゲート2342が
CTlレジスタ2316のビット2を1にセットして、それによ〕て値2がCT
Iレジス52316内に記憶されるようにする。
ここで制御装置の状態33に入り、制御信号が出力S33で形成されて、ゲート
2358がノジスタ2312のEi+−1に位置決めされたエントリ文字な比I
Q32360に接続するようにして、その文字がQ:レジスタ2314内の文字
Q1と比較されるようにする。比較がなかったとすると、偽信号が出力2362
で形成されて、ゲート2340〜2344のいずれもが能動化されないようにす
る。一致があったとすると、真信号が2362出力で形成される。
真信号が2362出力で形成されでいる闇、制御信号が334出力で形成されて
、ゲート2340がCTIレジタ2316のビット1に1値を記憶するようにす
る。これは、フローのブロック34に対応する。またこれは、たとえば、ビット
位置1および2の両方が10進数字の値3の表示を形成するという意味において
、実際には付加的な処理である。すべての3つのビット位置における1は、10
進値7である。テーブル18で示されたものと対応する値との比較タイ1′指示
がレジスタ2316において形成されるということが今明らかであろう。
ここでフローのブロック26および1111Ill装置2310の状態26に戻
って、制御信号が826出力で形成されて、ゲート2346に対する1つの入力
を形成する。もしNQカウンタ2324が0にカウントダウンされてしまってお
り、それによって処理のためにそれ以上の質問文字が存在しないということを示
しておれば、そのときは制御装置2310の状態27に入り、それはフローブロ
ック27に対応する。ここで、制御信号が、制御装置2310の827出力で与
えられる。0のNQにおける値は、NQ−0出力での真信号を引起こし、この真
信号は次にゲート2346がCTlレジスタ2316のビット8を1状態にセッ
トするようにする。次にこれは、フローのノードN1〜N32の各々からのジャ
ンプポイント8に対応する。
ここで、比較器−が完了されてしまったとし、ノードのブロックのうちの1つに
統(フローのリセットの間の、第15図および:1116図のシステムの動作を
考察する。最初に、ノードのブロックNl(第12B図)を考察し、比較手順の
呼出が完了されて、その結果比較タイプ指示が第15図のCTIレジスタ231
6内に形成されてしt−またとする。CT I レシス92316$:t、11
11111v111231(1:対する入力であり、かつfローダ23フ0(1
16図)に対する入力である。IIIIl]装置は、状態100に峡いて呼出手
順に対応するステップに入った。したがって、ノ・−ドのレジスタ2371はノ
ード1に対応する纏を記憶しており、その値はノードレジスタ2371内にまだ
含まれている。
この値は、CTIレジスタ2316内の比較タイプ指示と組合せて、デコーダ2
370が70−からのジャンプポイントでの文字M、T、D、1.S、およびM
Sζテーブル2参照)に対応する仮の綴り誤り種類指示を形成するようにする。
たとえば、ノード1に続く例において、もし比較タイプがOf、たは1のうちの
いずれかであれば、デコーダ2370はMSに対応する出力信号を形成し、多1
綴り誤りを示す。
ここで他の例を考察し、フローのノードN2に対応するブロック106に入った
後、呼出手順が行なわれたとする。
ノードのレジスタ2371は今、ノードN2に対応する麿を記憶している。比較
手順は完了されてしまいかつCTrレジスタ2316はブロック108に続く8
つ比較タイプ指示のうちの1つを含むとする。もしたとえば、比較タイプ指示が
Oであれば、そのときはデコーダ2370は置換(S)に対応する仮の綴り誤り
種類指示を形成する。もしCTIレジスタ2316内の種類指示が1であれば、
そのときはデコーダ2370は削除(D)に対応する出力信号ら明白であろう。
仮の綴り誤り種類指示がブロック104゜136.142,144,150,1
52.158,160.166.172,174,180,182,188゜1
90.196,198,204,206,212,214.220,222,2
28,230,236.または238のうちのいずれか1つの結果となるところ
で、最終の綴り誤り種類指示が決定された。したがって、制御装置2310は、
ゲート2376に対する入力2377でのW*倍信号引起こす状態に入り、その
制御信号は、ゲート2376が、デコーダ2370によって形成された綴り誤り
種類指示の表示を、上述した目的のための結果レジスタ2378内に記憶するよ
うにする。
5、第17図の選択的実施例
第17図は、比較タイプ指示を決定するための、この発明の選択的実施例を示す
。テーブル20は、記号表記法を用いて、第17図の概略ブロック図の動作のシ
ーケンスを示す。テーブル20に用いられる記号の意味は、以下の説明から明ら
かとなろう、第17図およびテーブル20をここr:1照して、動作を考ml。
エントリ単語に対する文字のソースが、メモリ2410に;1まれている。′B
問′j41の文字は、他のメモリ24]2に記憶されているウスデツプ0.デー
プル20’7)!:Iに、エントリ単語の最初の文字がメモリ241Qによって
与えられて Aレジスフ2414に記憶される。
ス子ツブ1の1に、以下の動作がとられ:!J、△−・ジスタ2414における
エントリ文字は、Bレジ:ζり24″i6にシフトされる。2番目の文字はメモ
リ2410によつで与えられT、Aレジスタ2314に記憶される。メモリ24
12は、質問*iの最初の文字を与え、その文字はレジスタ2420内に記憶さ
れる。カウンタ2442は、ソース2412によって与えられている質問単語に
おける文字の総数を表わす5IZEf*を最初に記憶するために、与えられる。
またステップ1の間に、カウンタ2442内の5IZEfilWが1だけ減少さ
れて、1つの質問文字がレジスタ2420内に記憶されてしまったという事実を
承り。±較器24.34.2432および2430は今、エントリ文字および質
問文字を比較し、比較タイプ指示(CTI)レジスタ2.441)に比較タイプ
指示を形成する。Cレジスタ2418は、t:+−1文字を記憶するためのもの
であり、B、、lzジスタ2416は、E1文字を記憶するためのものであり、
、またAレジスタ2414は、エントリのEi÷1文字を記憶するためのもので
ある。ここで、「i」は、Dレジスタ2420に含まれる質問文字の記憶位置で
ある。比較器2434は、レジスタ2418におけるE;−1文字を、レジスタ
2420における01文字と比較し、そしてもし同等性があれば、真信号を形成
し、もし同等性がなければ、出力D−Cで0を形成する。もし真出力が出力D−
Cで形成されれば、CT■レジスタ2440のビット4ツメ1にでツトされる。
これは質問の最初の文字であり、エントリ文字E1−1に対するCレジスタ24
18はOまたは空白値を含む。したがって、比較器2434は、同等性を検出せ
ず、CTIレジスタ2440のビット4はO状態に残る。
比較lI2432は、レジスタ2416内のEi文字をレジスタ2420内のQ
i文字と比較し、もし同等性が検出されれば、D−8出力で真信号を形成し、も
し同等性が検出されなければ、D−8出力で偽信号を形成する。もし真信号が形
成されれば、CTIレジスタ2440のビット2は1にセットされるが、もし偽
信号がD−8出力で形成されれば、ビット2はO状態に残る。比較器2430は
、レジスタ2414におけるEi +1文字をレジスタ2420にみしプるQ1
文字と比較し、もし同等性が発見されれば、D−A出力で真信号を形成する。も
し同等性が障見されなげ。
れば、偽信号がD−A出力で形成される。比較器2430のD−A出力での真信
号品、C,T 、Iレジスタ2440のごット1を1状態5セツトするが、偽信
号はデッド1がO状態に残るようにする。したがって、CTIレジスタ2440
は、状態2の終りで、レジスタ2420内の文字Q1とレジスタ2418.24
16.および2414におけるエントリの文字El−1,ElおよびE1+1と
の閣の比較の結果を表わす比較タイプ指示を持つ、パターン解析!52444は
今、第12B図に示されたフローの最初のブロックN](100)に続いて示さ
れたジャンプ状態に従って、その比較タイプ指示を解析する。たとえば、もし比
較タイプ指示がOまたは1であれば、多itsり訳りエラー(MS)が検出され
るので、動作は終了する。もし比較タイプ指示が2または3であれば、そのとき
は比較器は次のノードブロックN2<106)に進む。
ステップ1に続いて、テーブル20に示された処理のステップ2に入り、そこで
は以下の動作が取られる。Bレジスタ2416内の文字は、Cレジスタ2418
にシフトされる。Aレジスタ2417!I内の文字は、Bレジスタ2416にシ
フトされる。エントリ単語の31目の文字は、メモリ2410によって与えられ
、Aレジスタ2414内に記憶される。さらに、質問翠語の2番目の文字は、メ
モリ2412によって与えられ、Dレジスタ2420内に記憶され、またカウン
タ2442内の減少された5IZE11紘、再び1だけ減少される。比較f!5
2434.2432.および2430は今、Dレジスタ2420内の質問文字Q
1を、レジスタ2418.2416.15よび2414内のエントリ文字と、上
)!シた方法で比較し、CTlレジスタ2440内に他の比較タイプ指示を形成
する。パターン解析12444がブロックN1(100)1からノードのブロッ
クN2 <106)に進んだとすると、そのときはCTlレジスタ2440内の
比較タイプ指示は、フローの以下のノードのブロックN2 (106)に示され
たジャンプステップに従って、解析される。たとえば、0丁丁レジスタ2440
内の罐がOまたは4であれば、その埴は仮の置換(S)を示し、したがって、次
にパターン解析はフローのノードのブロックN3 (112)に対応する状態に
進む。もしCTlレジスタ2440内の比較タイプ指示が2.3.6゜または7
であれば、そのときはノードのブロックN2(106)に再び入り、CTlレジ
スタ2440内の次の比較タイプ指示を待つうちしCTlレジスタ2440内の
比較タイプ指示が1または5であれば、そのときはフローのノードのブロックN
4(122)に対応する状態に入り、次の比較タイプ指示を持つ。もしこれが質
問単語の最後の文字であったなら、カウンタ2.442はって・あってかつCT
■レジスタのビット8はOにセットされており、その場合にはその結果に到達1
4ノでいろ。1ノたがって、テ・−プル20のステップ3に入っており、そこで
はパターン解析器は最終の綴り誤り種類指示を形成して、一致(M>に対する綴
り誤り種類指示を形成している。
第8図のシステムの動作のシーケンスは、上述した方法で、第12B図〜!11
2.)図のフローを通って進む。たとえば、エントリの次の質問はへレジスタ2
414内にシフトされ、AおよびBレジスタ内の文字はBおよびCiノジスタヘ
左へシフトされる。また質問の次の文字はレジスタ2420内に記憶される一方
、カウンタ244?は1だけ減少される。比較器2434. ?432.おムび
?430は、それらの比較を形成し、新たな比較り!ブ指示がCTXレジスタ2
440内に形成さる、たとえ、ば、パ々〜ン誓折器2444がフロー(第128
図)のノーげのプロパ/ j N 2(106)に対応する状態にあるとし、ま
たたとえば、CTlレジスタ2440内の比較タイプ指示がff換エラーに対応
するOであるとすると、パターン解析fi 2 /1.44は、仮の置換(S)
に対する綴り誤り種類指示に対応する70−のノードのブロックN5(172)
に対応する状態に移行する。
次にパターン解析器244dは、メートのブロックN5(112)に対応する状
態に残り2.レジフタ24・10内の次の比較タイプ指示を待ち、次に、(、T
Iレジスタ?440内の比較タイプ指示に依存して、フローの、ノーシのブロッ
クN3 (112)に続いて示されたVl路のうちの1つに従ってジャンプする
。
第17図のシステムは、比較タイプ指示がCTlレジスタ2440内で形成され
るときに、比較タイプ指示がパターン解析112444によって順に解析される
ように構成されでいる。
第18図は、この発明の通訳的実施例を示し、そこでは、比較タイプ指示はメそ
りに1積され、次に、質問のすべでの文字がエントリの文字と比較されてしまっ
た債に解析されろう第18図は、第17図に示されたのと同一のレジスタ24.
18.2413.24’14.2420および同一の比912器2434,24
32.・5よび2.4.30をホし1.その識別のために第17図と同一の参照
数字を用いている。同種に、エントリ文字に対するメモリ2410おにび質問文
字に対する同一のメモリ2414が与えられる。同様に、第18図のシステムは
、メモリ2412に共って与えられた質問における文字の数に対応する5rZF
値を記憶しかつ減少するための カウンタ2,1・↓2を含む、。
上述の回路の構成、bよび動作は、第17図における1つのレジスタ2440内
のビットを2種す・5比校器2434゜2432、ijよy 24.30 ノ代
:?) 1ツニ、比較器27I’:>4゜2・H32,、うよび24′30の出
力が比咬々rプ指示メeす2452の出力と接読されることを除いて、117図
に関して上述したの二同罎であ馬。<、 ’E J+9452は、比較タイプ指
示のビット4に対応するど゛ツトと記憶V)ための比較器2434の出力ど接読
されたシフトレジスタ2458を持ら、シフ1〜レジスタ2456は比較タイプ
指示のビット2に対応するビットを記憶するために比較器2432の出力と接続
される。レジスタ2454は、比較タイプ指示のビット1に対応するビットを記
憶するための比較!!2434の出力、および比較タイプ指示のビット8に対応
するビットを記憶するためのシフトレジスタ2460と接続される。レジスタ2
460は、カウンタ2442の出力と接続される。レジスタ2418.2416
.2414.および2420内の−の任意の組に対し、比較器2434は、もし
同等性が検出されたならレジスタ2458内に1を記憶し、また不同等性が検出
されるならOを記憶する。また比較器2432は、同等性が検出されるなら、レ
ジスタ2456内に1を記憶し、また不同等性が検出されるなら、0を記憶する
。また比較器2430は、同等性が検出されるなら、レジスタ2454内に1を
記憶し、もし不同等性が検出されるなら、0を記憶する。同様に、レジスタ24
20.2418.2416.および2414の値の任意の組に対し、レジスタ2
460は、もしカウンタ2442が任意の状態においてOg、外であれば0を記
憶し、カウンタ2442が0であれば1を記憶する。CTIレジスタ2452内
のレジスタは、同一の数のビット記憶位置を持っており、各レジスタ内のビット
記憶位置は1〜Mの番号が付けられている。任意の比較タイプ指示は、ビットN
で始まるレジスタの同一番号のビット位置に記憶される。各新たな比較タイプ指
示が記憶されるとき、レジスタ内の前の比較タイプ指示のビットは、1ビツト記
憶位置だけ左へシフトされる。質問のすべての文字が比較されてしまった後、最
後の比較タイプ指示は8であり レジスタ2460内の1によって示される。次
にパターン解析12450は、その動作を開始し1gkも古いもので始めて最も
新しいしの(比較タイプ指示の8)に′g勤しながら、1つずつ比較タイプ指示
を見る。解析器は1.E述した方法で、第12BN〜第12J図のフローチャー
トに示された動作のシーケンスに従うユ各ノードのブロックに対し 1在のノー
ドlロックおよび比較タイプ指示に履づいて、仮の比較タイプ:旨示が形成され
る。もし比較タイプ指示の3に1する前に多1エラーが検出されるなら、そのと
きは動作はその点で格子され、仮の慴り誤り種類指示はR柊の啜り誤り?1項指
示となるうたとえば、ノードのプロ7りNl<T・つ0゛・t:対し、比較タイ
プ指示が0または1であれば、最終の櫂つ)り種類指示(を多!!啜りlリエラ
ー< M S )であるっもしノードのブロックN3 (112)の間に比咬夕
・′ブ噌示が0゜1、または5であれば、聾り1つ’l堵指示’、、E %重1
iスリ/ 34 !’q >であり、動作は磐了されうつ多重誤りのために動作
が早くに1了されな・ハとす8と。
プログラム解析器は、比較タイプ指示3 、#; ′:tT:すを二1するまで
噂続し2.この点でノードブロックの)ちの1つ:T笥く特定のジャンプが用い
う机で、最終の綴り誤り種類指示を決定すも、、たとえば、比較タイプ指示8が
ノードのブロックN9(146)に続いて発見されるとすると、(lFmaりが
発見され、プログラム解析器は置換誤り(S)に対応する最終の綴り誤り種類指
示を形成する。
その代わりに、レジスタ246Qが1つの7リツプ70ツブまたは同様の記憶手
段と置換えられてもよく、そして真にセットされるときに、パターン解析器がそ
の動作を開始するようにするために用いられてもよ(Xoこの発明の典型的な実
施例が説明されてきたが、種々の変更、修正および置換えが、以下の請求の範囲
によって規定されるこの発明の精神から逸脱することなく、実施例に組入れられ
得るということが理解されよう。
1、ヱニニa
1 )SYNGパターン
CPLJtoMC3■止影表1
AAAA)−I AAAAH
割込1
2)場所マークパターン
CPUtoMC3正史り昼I
F Fool−I F FOOH
割込1
3)質問単語フォーマット
1命令バイト1サイズバイト1 間(58)14)エントリ単語フォーマット
1不使用IPK索引1サイズ11
1パイi・12バイト1バイトiエントリ(58’)15)応答単品フォーマッ
ト
1Mタイプ1不使用jPK索引1サイで1エントリ 1L二lノと、−i、4
綴り誤り
堕l」LL 咀−」L
OMS 多重線り誤り一質問軍am幹はエンド 5す11語の最初のN文字に関
する多Ii誤りを含む。ここで、Nは質問単語語幹
の長さである。
1 M 一致一質問単Wi語幹およびエントリ単語が、各々の最初の文字が一致
するよ
うに配列されるとき、質問単語語幹は、質問単語語幹の各文字に対し、エント
リ単語と正確に一致する。
2 丁 交叉−質問単語語幹は、エントリ単語の最初のN文字に関し、2文字の
1つ
の交叉を含む。ここでNは、質問単語
語幹の長さである。
3 0 削除−質問11m1幹は、エントリ単語の最初のN文字に関し、1つの
文字の
削除、すなわち1つの削除誤りを含む。
ここでNは、質問単語語幹の長さであ
る。
I 挿入−質問単語語幹は、エン1り単語の最初のN文字に関し、1つの文字の
挿入、すなわち1つの挿入誤りを含む。
ここでNは、質問単語語幹の長さであ
る。
Sl!換−質問単語語幹は、エントリ単語の最初のN文字に関し、1つの文字の
置換、すなわち1つの置換誤りを含む。
ここでNは、質問率R語幹の長さであ
る。
二二二UJ N U M
外 RAM1104における RIO
八Vへ11 311!、 パケット結果バッフ?の最大数が保持
ヱ二二Lルー−L
P〜R竺璽J−
RAM1104がら RAM1126.1128に ゛された 同
命令 バイト QAPに対する命令二
〇−初期状蝶
1−I!続
2−診断
エントリ ポインタ、 実行のための質問またはコードに対するエントリ
データに対するポインタ
NLIMENTS III、 X>トリがMcsに送られるときはいつでも1つ
だけ決定されるエントリ
の数
パケット ポインタ、 エントリパケットに対応するポインタ、エントリ
ごとに1つ
結果 ポインタ、QAPIFMIL、得るパケットを受けるためのバッフ
ァに対するポインタ。
すなわち正しいエントリ
結果
NLIMAVAIL RIN、 パケット結果バッファの最大数が保持
QCHAR3バイト、質問単語における文字の数
QUERY (58)バイト、賛同文字ストリングヱ:二乙上−」し
容認し得る接尾辞テーブル(1202)質問語幹に対して比較されるときに、M
GS1114によって容認し得る綴り誤りであると考察されるエントリ単語に現
われる容認し得る接尾辞を決定する、ROM1122.1124内のテーブル。
テーブルの各列は、論理的に言う、容認し得る接尾辞ストリングのリストを含む
。用いられる特定の列は、接尾辞剥ぎ取りプログラムPSLJFtXに送られる
質問単語内の文字パターンに依存する。PSLIFIXは質問単語の語尾を調べ
、いくつかの文字(接尾辞)を剥ぎ取り、接尾辞および接尾辞の前の文字に基づ
いて、接尾辞のどの組がエントリ単語に現われ得るかを決定する。決定された組
は、このテーブルの列の表示である変数QS。
WDSELEC+ (テーブル6)におけるPSuFIXによって示される。実
際は、接尾辞剥ぎ取りテーブルは実際の接尾辞ストリングを含まないが、他のテ
ーブル(接尾辞テーブル)内・\の索引を含み、そこに実際のストリングが位置
決めされている。各列において、このダjにおいて何個の索引が興味あるもので
あるかということを示すカウント値がこの索引の前にある。
接尾辞テーブル(2104>
すべての可能な質問単語に対するエントリ単語における容認し得る接尾辞として
考察され得るすべての可能な接尾辞ストリングを含む、ROM1122.112
4内のテーブル。テーブルの各列は、1つの接尾辞ストリングを決定する。列は
、ストリング内の文字の数のカウントを含み、その後実際のASCII文字スト
リングが続く。
二二二乙匙二一二」」iよ」−
内部R1へ\、41’26.’1128もこおけるM8612 割込を示すグロ
ーバル変数が、もしそれが0でないなら、マイクロプロ
セッサ1108から受信された。変
数は0に初期設定されろ。
MCS 現在F I FOl 130の出力部分に記憶されているエンティティ
の数を
示すグローバル変数。この変数は、
MC81114が、その変数がFI
FO1130の出力部分における結
果を記憶してしまったということを
示す割込を始めるときはいつでも、
1つだけ増加される。MC8は、0
に初期設定される。
タイマ その変数が0でないときに、MCSタイムアウトが発生したことを示す
グローバル変数。その変数は、0に
初期設定される。
接尾辞OK エントリ単語の接尾辞と容認し得る接尾辞の組とを比較するときの
論理
アイテムの組。真−接尾辞一致、偽
−一致発見せず
質問進行中 PSUFIXに対する呼出が行なわれて質問語幹を決定した後に真
にセ
ットされる論理アイテム。すべての
エントリ単語がMC8に送られかつ
場所マークパターンが送られかつ受
取られた後に偽にセット。これは偽
に初期設定される。
質問送信 質問がMC8に送られてしまったときはいつでも真にセットされる論
理
アイテム。マイクロプロセッサ11
08(ブロック21)からの違法継
続命令をキャッチするために用いら
れる。
タスク完了 場所マークパターンがMC31114に戻されるときに真にセット
され
る論理アイテム。これは、質問単語
に対する処理が現行の初期または継
続命令に対して完了されるというこ
とを示す。これは、偽に初期設定さ
れる。
場所マーク送信 場所マークパターンがMC3に送られるときに真にセットされ
る論理ア
イテム。偽に初期設定される。
エントリ索引 MC81114によって戻されるエントリ単語スむリングの接尾
辞に対
するオフセット。
5UFF IX 接尾辞テーブルの特定の列内への索引
RESLJLT IX 結果エントリ単語に対応する何個のパケットが外部RA
M1104内の
結果バッファに記憶されているかを
示すカウンタ/索引。結果パンツ?
記憶オフセットとしてまた用いられ、
次のパケットが記憶される記憶位置
に対するオフセットを与える。この
アイテムは○に初期設定される。
PACKET IX Mcsi’1・↓に送られるべき次のエンにすA11こ対
応するパケットバ
ッファにおけるバヶッ1−を示す索引。
0に初期設定される。エンド911語
が送られた棲1だけ4加さルる。
■ 容1ツ昭lる接1辞干−プル12o2での容認し得る接尾辞索引に対する
索引。 、
J 接尾、辞テーブル12o4の列内の文字ストリング内の文字に対する索引。
、K 、 MC311,’14によって戻されるエントリ*m文字ストリ〉グの
接尾辞
、 における文字に対する索引。
L:≦Lルー」L
パラメータ、 数、およびテーブルを含むPSUFIX関 データアイテム
1 )QS構造−内部RAM1126.1128内に位置決めされた質問語幹変
数の構造
QFLAG バイト、 質問命令フラグ(FFHに初期設定される)
S、1.Z、E バイト1.バイトにおける質問語幹のサイズ
S T E、、、M、、、< 58 ) バイト、 質問語幹文字ストリング2
)RAMjl 26..11・28に記憶される質問と組合せられるパラメータ
QJYP、E ノS・イト・、 質問のタイプ:〇−英数字
1−数字
WDSELECT 単語 選択コード−容認し得る接尾辞テーブル内への
索引
3)RAM1126,1128に記’jlさnるQS構造を形成する際のPSU
FIXによって用いられるローカル変数
CURCHAR3−処理されている語幹における現在の文字の索引
八CT I ON −現在の動作値
NEXT −保持状*/M択コード
CI−IARTYPE −現在の語幹文字の文字タイプ4)ROM1122.1
124内に記憶されたPSUFIXによって用いられるテーブル類別テーブル1
200−質問単語文字を接尾辞剥ぎ取り状態テーブル処理のために
文字タイプにマツプする。
接尾辞剥ぎ取り状態
テーブル1201 −質問単語からの接尾辞剥ぎ取りの際にPSUFIXの論理
を導くために用いられる。
ヱ:≦LルーニL
旦さ」二LΣIL
MC31114によって APボード
1109上のRAM1126.1128にされるエントリ 語フォーマット
MTYPE バイト、 一致タイブ:
0−一致誤り
(多層誤り)
1−正確な一致
2−1つの交叉
3−1つの文字削除
4−1つの文字挿入
5−1つの文字胃換
UNUSED バイト、 不使用バイト(−〇)PKiNDEX 単語、エント
リ単語に対応するパケット索引
5IZE バイト、 バイトにおけるエントリのサイズ
ENTRY (58) パイi〜、 エントリ文字ストリング。
エントリは58文字の
長さまでである。
ヱニ」乙土−」L
つ、OQ、O,O,Q、O,Q。
/)、 O,O,/)、 0. !J、 O,0゜0、 O,O,O,iつ 、
0 、 、つ 、 0 。
0、 O,O,G、 G、 0. 0. 0゜0、 O,O,O,O,O,O,
0゜
0、0. 0. 0. O,O,0,0゜0、 O,0,0,O,O,G、 O
。
o、 o、 o、 o、 o、 o、 o、 o。
ABCDE FG
O,O,O,0,1、2,0,3゜
1−I I J K L M :〜 OO,4,O,O,O,つ、 5. O。
P Q RS T IJ V W
O,O,0,6,O,0,0,O。
x Y z
o、 o、 o、 o、 o、 o、 o、 o。
o、 o、 o、 o、 o、 o、 o、 o。
o、 o、 o、 o、 o、 o、 o、 o。
o、 o、 o、 o、 o、 o、 o、 o。
ヱ二=1」−一」し
ぎ取り テーブル1201
文字タイプ→
”; 0 1 2 3 4 5 6
最後の文字を使用)
G剥ぎ取り
ACT I ON (A) −0何もせずACTION(A>−11だけ語幹長
を減少ACTION (A>−22だけ語幹長を減少ACTION(A>−31
だけ語幹長を減少NEXT (N): 84は「状態4」を意味する。
NEXT<N): 4は選択コード4、すなわち容認し得る接尾辞テーブルの(
Oから索引された)列4を意味する。
* 他のすべての文字に対する
** テーブルの各列または状態を選択するために用いられるNEXT
−1
容認し得る 容認し得る 接尾辞剥ぎ取り11111 カウント ! 見糺土影
>−一0 2 02−−−一 数字語幹
1 5 02345− 省略時の無剥ぎ取りニー/空白
4 6 012345−/ED。
−/ING
−。
テーブル1204
* 空白接尾辞
x Y z
o、 o、 o、 o、 o、 o、 o、 o。
o、 o、 o、 o、 o、 o、 o、 o。
o、 o、 o、 o、 o、 o、 o、 o。
o、 o、 o、 o、 o、 o、 o、 o。
ヱニニLニー−」二り
律−L 、/ Y 1・、に禾寸づる
ぎ リ テーブル1202
文字タイプ→
*”N O12345678
ル 状1m説明
ACT ION (A)−0何もせず
ACTION (A)−1語幹長を1だけ減少ACTION(A)−2ft!幹
長を2だけ減少ACT ION <A>−3語幹長を1だけ減少NEXT (N
): 34はr状114Jf意味す8゜NEXT(N): 4は選択コード4、
ずなわち容認し得る接尾辞テーブルの(0から索引された)列4を意味する。
* 他のすべての文字に対する
** テーブルの各列または状態を選択するために用いられるNEXT
−ノ
1− L 、’ Y 1= 侵の 。し得るテーブル1202
容認し得る 容認し得る 接尾辞剥ぎ取り1111K カウント m 規則(S
)0 2 02−−−一 数字語幹
1 5 02457− 省略時の無剥ぎ取りニー/空白
2 4 0247−− −/S
3 4 1457−− −/E、−/ES4 6 012457−/ED。
−/lNG
5 3 136−−−−L/Y
−ノ
陣−L /’ Y付加に対する接尾辞テーブル1204* 空白接尾辞
一ア − ブ )し 1 ) ・
表記上の約束:
「−」−任意の文字
「7/」−剥ぎ取り点
「空白」−〇文字の接尾辞
(吐 容認し得る接尾n q−
1)−/E E、 ED、田、 ING 航π、顎証2 ) −/ES E、
ED、 IS、 ING 5TAffES、 QllM[’TJrES3 )
−/ED 空白、 E、 S、 ED、 ES、 nqa INTERESTE
D、 コ豹コ4 ) −/ING 空白、 E、 S、 ED、 ES、 IN
G RATING、 D工♀3酎G5 ) −/s 空白、 S、 ED、 I
NG、 ms、 ADDS、 INTERESTS6 ) −L7Y E、 Y
、 IES ASSEMBLY、 PROBABLY7>*−/空白 空白、
S、 ES、 ED、 ING HEB(6)、四■工T、 ■E5T*(省略
時の無剥ぎ取り規則)
上の例に対する例外:
もし語幹長が2よりも小さいかまたは語幹および接尾辞内の母音でないものが「
3 jでなければ、そのときは文字を何も剥ぎ取らず、省略時の無剥ぎ取り容認
し得る接尾辞リストを用いる。
もし語幹が全部数字であれば、そのときは容認し得る接尾辞は、空白、Sである
。
ヱニニ11−−1!L
エントリ単語における
!IL糺えL 容認し得る
O N ON E HE L P
2 S HELP3
3 ED HELP三D
5 1NG HELPING
?−7し 1.)
土凌夕1’ L’ 4旨1;
工盈lコ匹勺L1
0 −エントリ単語の同一位置における文字が一致
一−−エントリ単語の次の低位位置における文字が一致
一ト −エントリ単語の次の1立泣置における文字が一致
X −(次の低位位置、同一位置9次の高位位Vt>のいずれの位置における文
字も一致せず
ヱニ≦a−ユニし
く1) E CARTON
Q CARTON
C,T、1. 000000 一致
(2) E CATRON
Q CARTON
C2毛1. OO+−00交叉
5C−2
(3) E CA下ON
Q CARTON
(4) E ICA ERT(1)N
Q CARTON
C,T、l 、OO+++十 削除
(5) E ;C,〜E −0;=1
Q :〕\゛R「つX+
C,T、L 0OXOO011操
M S C−5
<6) E CAETRON
Q Cj\RTON
C,T、1. O・つ ゛< O” +−多 113寓 リMS C−□ 3
2− レ
トリ、fレット止)交タイプ指示
x o* o oつ
+ 1!: OO1
02* 0 1 0
0、+30 1 1
−4* 1 0 0
+、O,−7111
ヱ:−1五二一ユ」し
1 )
Q CA RT ON
ノード−NI N2 N2 N2 N2 N2 N2D、C,T、工、−222
2228
5C−1
E 空白CATRON 空白
Q−CARTON
ノード−NI N2 N2 N4 NION32 N32D、C,T、■、−2
214228
M S C= 2
3) l 2 3 4 5 6
E 空白 CA T ONt白
Q−CA RT ON
ノード − NI N2 N2 N3 N6 N6 N651 1 2 3 4
5 6
E 空毛 CAETON 空白
Q −CARTON
ノード −NI N2 N2 N3 N5 N5 N5E 空白 CAETRO
N 空白
E 9ac p、E T OON ’IQヱ:−1A−−2」と
第7図、第8図の動作のシーケンス
パターン解析
パターン解析 CTI
もしQSがOと等しくなければ、2に進む。
もしQSが0であれば、そのときはCTl−8であり、3に進む。
パターン解析器
zZz冴74ヲ
Ej、E’
2り7ジ=4′
Zりで31ぞり4
Δワ7百−fクタ
/Zz−27
外fPRAM
I
2ワZ夏jfA
EE
−7シワテコクV召2
7りZ【;!Z?’12ZF
/Z冴E4σz1℃7
シワ形ヨノiろり
EE
ノZz[fzf
ノワをY17?12fF;
ツタを「χ747
シフシダflJ
ツクシフ!d予て
比軟)1
/グで=f夕2
さ
国際調査報告
Claims (1)
- 1. 単語の容認し得ない纏りから単語の容認し得る纏りを分離するためのディ ジタルデータ処理手段を用いる方法であって、各単語は映像位置に指定された文 字を備え、各単語における文字の位置は単語の一端から他端へと増加する値が指 定され、各単語の一端から同一の数の文字の位置には同一値が指定され、比較さ れるべき2つの単語は質問率l1I3よび候補単語と呼ばれ、 a) 質問単語の任意の位置における文字の表示を、候補単語における次の低位 位置、同一位置、I3よび次の高位位置における文字の表示と比較し、かつ、比 較される候補単語文字の各々と質問単語文字との園の一致または不一致を表わす 比較タイプ指示を形成するステップと、b) 比較される質問率■の任意の位置 を質rI!l単語の次の高位値の位置に変更し、かつ、前のステップを繰返して 他の比較タイプ指示を形成するステップと、C) *記比較タイプ指示を処理し かつ利用して、それによって、容認し得る綴りまたは容認し得ない纏りを表わす 、比較される単語のうちの1つに対する綴り類別指示を形成するステップとを備 える方法。 2、 複数の前記候補111iiが前記質問lll1l!と比較されるようにし 、前記複数の候補単語の各々に対して少なくとも1つの、複数の綴り類別指示を 形成するステップと、前記複数の候補単語の各々に対する前記綴り類別指示を利 用して、受取られた質問単語の容認し得るmv*あると指示された候補単語の表 示を、容認し得ない綴りであると指示された候補単語の表示から物理的に分離す るステップ゛とをさらに備える、請求の範囲第1項記載の方法。 3、 容認し得る綴りであると指示された前記候補率iの各々の表示を、対応す る綴り類別指示の表示と結合するステップをさらに備える、請求の範囲第2項記 載の方法。 4、 前記物理的に分離するステップは、前記結合された候補単語の表示および 容認し得る綴り類別を物理的に転送するステップをさらに備える、請求の範囲第 3項記載の方法。 5、 前記比較しかつ比較タイプ指示を形成するステップは、 エントリ単語における前記法の低位位置、同一位置やおよび次の高位位置にそれ ぞれ対応する、第1.第2.および第3の2進位置を有する比較タイプ指示を形 成するステップと、 比較される質問文字に対し、候補単語における次の低位位置、同一位置、および 次の高位位置とそれぞれ対応する、低位記憶位置、同一記憶位置、13よぴ次の 高位記憶位装置を含む比較タイプ信号を形成するステップと、前記各2進記憶位 置において、前記候補単語の対応する記憶位置における前記候補文字との比較が 同等性の結果となったとき、第1の値の2進表示を形成するステップと、前記各 2進記憶位置において、前記候補単語の対応する記憶位置における前記候補文字 との比較が不同等性の結果となったとき、第2の値の2進表示を形成するステッ プとをさらに備える、請求の範囲第1項記載の方法。 6、 前記第1および第2の比較タイプ指示は、前記賛同単語の第1の位置にお ける質問文字および第2の高位値位置における第2の質問文字を用いて形成され 、前記処理および利用のステップは、 少なくとも前記第1の比較タイプ指示を利用して、第1の仮の綴り類別指示を形 成するステップと、少なくとも前記第2の比較タイプ指示および前記第1の仮の 綴り類別指示を利用して、第2の仮の纏り類別指示を形成するステップとを備え る、請求の範囲第1項記載の方法。 7、 前記第2の仮の纏り類別指示を、前記綴りWA別指示を形成することに利 用するステップを含む、請求の範囲第6項記載の方法。 8、 前iamり類別指示を表わすディジタルコード化された信号を形成するス テップをさらに備える、請求の範囲第1項記載の方法。 9、 質問単語と候補単語との閣の容認し得る騙り誤り、すなわち 文字挿入誤り 文字削除誤り 文字交叉誤り のうちの任意のものを識別するディジタルコード化された信号を備える綴り類別 指示を形成するステップをさらに備える、請求の範囲第1項記載の方法。 10、 前記寄寓し得る纏り誤りは、前記候補単語と前記質問単語とにおける文 字およびその順序の閤の同等性を含む、請求の範囲第9項記載の方法。 11、 前記比較タイプ指示を処理しかつ利用して綴り類別指示を形成するステ ップは、各質問文字に対する各比較タイプ指示の配列に従って、部分的に実行さ れる、請求の範囲第1項記載の方法。 12、 記憶装置において前記比較タイプ指示を累算する付加的なステップをさ らに備え、 前記比較タイプ指示を処理しかつ利用するステップは、前記比較タイプ指示が記 憶装置において累算されてしまった後、前記比較タイプ指示を処理しかつ利用す るステップを備える、請求の範囲第1項記載の方法。 13、 単一の容認し得る纏りを容認し得ない綴りから分離するためのディジタ ルデータ処理手段を用いる方法であって、各単語は映像位置が指定される文字を 備え、各単語における文字位置は単語の一端から他端へと増加する値が指定され 、各単語の一端から同一数の文字の位置には同一の値が指定され、比較されるべ き2つの単語は賛同単語および候補単層と呼ばれ、 a)、質問単語の異なった任意の位置の各々における複比較するステップと、 b) 複数の比較タイプ指示の表示を形成するステップとを備え、異なった比較 タイプ指示は、前記質問単語の前記複数の文字の各々に対するものであり、各比 較タイプ指示は、前記賛同単語の対応する文字と、前記質問軍警の対応する文字 と比べて次の低位位置、同一位置、および次の高位位置に位置決めされた候補単 語の3つの文字との閾の比較のステップにおいて、一致が発見されたかどうかを 表わし、 G) 前記賛同単語の対応する文字の順序で、前記比較タイプ指示を処理しかつ 利用して、容認し得る綴りまたは寄寓し得ない纏りを表りす、比較される単語の うちの1つに対する綴り類別指示を形成するステップをざらに備える!5法。 14、 前記ディジタルデータ処理手段はプログラマブルであり、 データプロセッサを能動化して複数の比較タイプ指示の表示を比較しかつ形成す るステップを実行する、比較手順の実行を初期設定するステップを備える、請求 の範囲第13項記載の方法。 15、 ブランチ手順の動作を初期設定して、前記比較タイプ指示を処理しかつ 利用するステップを実行するステップを備え、 前記ブランチ手順は複数のノードの接続を備え、各ノードの接続はそこから1つ 以上の他のノードの接続への複数のブランチを備え、 異なったノードの接続は、前記比較タイプ指示の各々に対して到達され、 成るノードの接続から他のノードの接続への特定のブランチは、そのような接続 および他のノードの接続に対応する比較タイプ指示によって表わされる値に基づ いて条件付けられる、請求の範囲第14項記載の方法。 16、 単語の寄寓し得る纏りを容認し得ない纏りから分離するためのディジタ ルデータ処理手段であって、各単語は映−位置が指定される文字を備え、各単語 における文字位置は、単語の一端から他端へと増加する値が指定され、各単語の 一端から同一数の文字の位置には同一値が指定され、比較されるべき2つの単語 は賛同単語および候補単語と呼ばれ、 a) 前記質問単語の任意の位置における文字の表示を、前記候補単語における 次の低位配置、同−位置、および次の高位位置における文字の表示と比較し、か つ、比較される質問単語文字と候補単語文字の各々との闇の一致または不一致を 表わす比較タイプ指示を形成する手段と、b) 比較される諌記質問単語の任意 の位置を、tIJ1F!質を繰返して、他の比較タイプ指示を形成する手段と、 C) 前記比較タイプ指示を処理しかつ利用して、それによって、IFI!L、 得る綴りまたは容認し得ない纏りを表わす、比較される前記単語のうちの1つに 対する綴り類別指示を形成する手段とを備える、ディジタルデータ処理手段。 17、 複数の前記候補単語が前記質問単語と比較されるようにして、前記複数 の候補単語の各々に対して少なくとも1つの、I!!数の綴り類別指示を形成す る手段と、前記複数の候補単語の各々に対する機り贋別指示を利用して、容認し 得る綴りであると指示される候補単語の表示を、受取られた質問単語の容認し得 ない綴りであると指示される候補単語の表示から物理的に分離する手段とをさら に備える、請求の範囲第1611記載のディジタルデータ処理手段。 18、 容1し得る綴りであると指示されるtlJ記候補単語の各々の表示を、 対応する綴り類別指示の表示と結合する手段をさらに備える、請求の範囲第17 項記載のディジタルデータ処理手段。 19、 前記物理的に分離する手段は、前記浩合された候補1語および容認し得 る綴り類別の表示を物理的に転送する手段を含む、請求の範囲第18項記載のデ ィジタルデータ処理手段。 20、 前記比較しかつ比較タイプ指示を形成する前記手段は、 前記候補単語における前記法の低位位置、前記同一位置。 および前記法の高位位置とそれぞれ対応する、第1.第2゜および第3の2進記 憶位置を備える比較タイプ指示を形成する手段と、 比較される質問文字に対し、前記候補単語における前記法の低位位置、前記同一 位置、および前記法の高位位置にそれぞれ対応する低位記憶位W、同一記憶位置 、および次の高位記憶位置を備える比較タイプ信号を形成する手段と、各2進記 憶位置において、前記候補単語の対応する記憶位置における前記候補文字との比 較が同等性の結果であるときに、第1の値の2進表示を形成する手段と、各2進 記憶位置において、前記候補単語の対応する記憶位置における前記候補文字との 比較が不同等性の結果であるとき、第2の値の2進表示を形成する手段とをさら に備える、請求の範囲第16]II記載のディジタルデータ処理手段。 21、 前記容認し得る綴り誤りは、前記候補単語と前記質問単語とにおける前 記文字およびそれらの順序の間の同等性を含む、請求の範囲第16項記載のディ ジタルデータ処理手段。 22、 前記比較タイプ指示を処理しかつ利用して綴り類別指示を形成する手段 は、各質問文字に対する各比較タイプ指示の配列に従って、部分的に実行される 、請求の範囲第16項記載のディジタルデータ処理手段。 23、 前記比較タイプ指示を記憶して累算する記憶手段をざらに備え、 前記比較タイプ指示を処理しかつ利用する手段は、前記比較タイプ指示が前記記 憶@胃内に累算されてしまった後、前記比較タイプ指示を処理しかつ利用する手 段を含む、請求の範囲第16項記載のディジタルデータ処理手段。 24、 単語の容認し得る纏りを容認し得ない綴りから分離するためのディジタ ルデータ処理手段であって、各単語は映像記憶位置が指定される文字を備え、各 単語における文字位置は単語の一端から他端へと増加する値が指定され、単語の 一端から同一数の文字の位置には同一値が指定され、比較される2つの単語は質 問単語および候補単語と呼ばれ、 a) 前記質問単語の異なった任意の記憶位置の各々における複数の文字の各々 の表示を、前記候補単語における文字の表示と比較する手段と、 b) 複数の比較タイプ指示の表示を形成する手段とを備え、 異なった比較タイプ指示は前記質問単語の前記複数の文字の各々に対するもので あり、各比較タイプ指示は、質問単語の対応する文字と、質問単語の対応する文 字に比べて次の低位位置、同一位置、および次の高位位置に位置決めされた前記 候補単語の3つの文字との閏の比較のステップにおいて、一致が発見されたかど うかを表わし、C) 前記質問単語の対応する文字の順序で前記比較タイプ指示 を処理しかつ利用して、容認し得る綴りまたは容認し得ない纏りを表わす、比較 される前記単語のうちの1つに対する綴り類別指示を形成する手段をざらに備え る、ディジタルデータ処理手段。 25、 1記デイジタルデ一タ処理手段はプログラマブルであり、 比較手順の実行を初期設定して、表示を比較しかつ複数の比較タイプ指示の表示 を形成するステップを実行するためのディジタルデータ処理手段を能動化する手 段をさらに備える、請求の範囲第24項記載のディジタルデータ処理手段。 26、 ブランチ手順の動作を初期設定して、前記比較タイプ指示を処理しかつ 利用するステップを実行する手段を備え、 前記ブランチ手順は、複数のノードの接合を備え、各ノードの接合は、そこから 1つ以上の他のノードの接合への複数のブランチを備え、 異なったノードの接合は、前記比較タイプ指示の各々に到達され、 成るノードの接合から他のノードの接合への特定のブランチは、その接合および 前記成るノードの接合に対応する比較タイプ指示によって表わされる値に基づい て条件付けられる、請求の範囲第25項記載のディジタルデータ処理手段。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US06/307,631 US4471459A (en) | 1981-09-30 | 1981-09-30 | Digital data processing method and means for word classification by pattern analysis |
| US307,631 | 1981-09-30 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPS58501526A true JPS58501526A (ja) | 1983-09-08 |
Family
ID=23190559
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP57503570A Pending JPS58501526A (ja) | 1981-09-30 | 1982-09-28 | ディジタルデータ処理方法 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US4471459A (ja) |
| EP (1) | EP0079450A3 (ja) |
| JP (1) | JPS58501526A (ja) |
| WO (1) | WO1983001316A1 (ja) |
Families Citing this family (38)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5600556A (en) * | 1982-01-29 | 1997-02-04 | Canon Kabushiki Kaisha | Word processor that automatically capitalizes the first letter of sentence |
| US4580241A (en) * | 1983-02-18 | 1986-04-01 | Houghton Mifflin Company | Graphic word spelling correction using automated dictionary comparisons with phonetic skeletons |
| US4771401A (en) * | 1983-02-18 | 1988-09-13 | Houghton Mifflin Company | Apparatus and method for linguistic expression processing |
| US4674066A (en) * | 1983-02-18 | 1987-06-16 | Houghton Mifflin Company | Textual database system using skeletonization and phonetic replacement to retrieve words matching or similar to query words |
| US4845610A (en) * | 1984-07-13 | 1989-07-04 | Ford Aerospace & Communications Corporation | Target recognition using string-to-string matching |
| US4672571A (en) * | 1984-10-24 | 1987-06-09 | International Business Machines Corporation | Compound word suitability for spelling verification |
| US4783758A (en) * | 1985-02-05 | 1988-11-08 | Houghton Mifflin Company | Automated word substitution using numerical rankings of structural disparity between misspelled words & candidate substitution words |
| US4728925A (en) * | 1985-07-03 | 1988-03-01 | Tektronix, Inc. | Data communications analyzer |
| US4829472A (en) * | 1986-10-20 | 1989-05-09 | Microlytics, Inc. | Spelling check module |
| US5062074A (en) * | 1986-12-04 | 1991-10-29 | Tnet, Inc. | Information retrieval system and method |
| US4972349A (en) * | 1986-12-04 | 1990-11-20 | Kleinberger Paul J | Information retrieval system and method |
| US4873634A (en) * | 1987-03-27 | 1989-10-10 | International Business Machines Corporation | Spelling assistance method for compound words |
| US4980917A (en) * | 1987-11-18 | 1990-12-25 | Emerson & Stern Associates, Inc. | Method and apparatus for determining articulatory parameters from speech data |
| US4849898A (en) * | 1988-05-18 | 1989-07-18 | Management Information Technologies, Inc. | Method and apparatus to identify the relation of meaning between words in text expressions |
| US5212697A (en) * | 1988-09-13 | 1993-05-18 | Ricoh Company, Ltd. | Variable length character string detection apparatus |
| US5086504A (en) * | 1989-02-28 | 1992-02-04 | Hewlett-Packard Co. | Method for performing computer system functions defined by a hierarchial programming language having default nodes |
| JP2832988B2 (ja) * | 1989-03-07 | 1998-12-09 | ヤマハ株式会社 | データ検索システム |
| US5008818A (en) * | 1989-04-24 | 1991-04-16 | Alexander K. Bocast | Method and apparatus for reconstructing a token from a token fragment |
| US5265065A (en) * | 1991-10-08 | 1993-11-23 | West Publishing Company | Method and apparatus for information retrieval from a database by replacing domain specific stemmed phases in a natural language to create a search query |
| US5523946A (en) * | 1992-02-11 | 1996-06-04 | Xerox Corporation | Compact encoding of multi-lingual translation dictionaries |
| US5329598A (en) * | 1992-07-10 | 1994-07-12 | The United States Of America As Represented By The Secretary Of Commerce | Method and apparatus for analyzing character strings |
| US5392212A (en) * | 1993-07-07 | 1995-02-21 | The United States Of America As Represented By The Secretary Of Commerce | Apparatus for identifying unknown words by comparison to known words |
| DE4323241A1 (de) * | 1993-07-12 | 1995-02-02 | Ibm | Verfahren und Computersystem zur Suche fehlerhafter Zeichenketten in einem Text |
| US5692176A (en) * | 1993-11-22 | 1997-11-25 | Reed Elsevier Inc. | Associative text search and retrieval system |
| US7293231B1 (en) * | 1999-03-18 | 2007-11-06 | British Columbia Ltd. | Data entry for personal computing devices |
| EP1171813B1 (en) | 1999-03-18 | 2003-06-04 | 602531 British Columbia Ltd. | Data entry for personal computing devices |
| US6618697B1 (en) | 1999-05-14 | 2003-09-09 | Justsystem Corporation | Method for rule-based correction of spelling and grammar errors |
| US6459810B1 (en) * | 1999-09-03 | 2002-10-01 | International Business Machines Corporation | Method and apparatus for forming variant search strings |
| CA2323856A1 (en) * | 2000-10-18 | 2002-04-18 | 602531 British Columbia Ltd. | Method, system and media for entering data in a personal computing device |
| US7266553B1 (en) * | 2002-07-01 | 2007-09-04 | Microsoft Corporation | Content data indexing |
| US8552984B2 (en) * | 2005-01-13 | 2013-10-08 | 602531 British Columbia Ltd. | Method, system, apparatus and computer-readable media for directing input associated with keyboard-type device |
| US7548652B1 (en) * | 2005-04-28 | 2009-06-16 | Sun Microsystems, Inc. | Rapid comparison of similar data strings |
| US7577646B2 (en) * | 2005-05-02 | 2009-08-18 | Microsoft Corporation | Method for finding semantically related search engine queries |
| US7797629B2 (en) * | 2006-04-05 | 2010-09-14 | Research In Motion Limited | Handheld electronic device and method for performing optimized spell checking during text entry by providing a sequentially ordered series of spell-check algorithms |
| CA2581824A1 (en) * | 2007-03-14 | 2008-09-14 | 602531 British Columbia Ltd. | System, apparatus and method for data entry using multi-function keys |
| US8176080B2 (en) * | 2009-03-06 | 2012-05-08 | Hewlett-Packard Development Company, L.P. | Desensitizing character strings |
| US10228819B2 (en) | 2013-02-04 | 2019-03-12 | 602531 British Cilumbia Ltd. | Method, system, and apparatus for executing an action related to user selection |
| US10043036B1 (en) * | 2017-08-22 | 2018-08-07 | TokenEx, LLC | Systems and methods for tokenization to support pseudononymization of sensitive data |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS54104747A (en) * | 1978-02-03 | 1979-08-17 | Canon Inc | Small sized electronic unit |
| JPS56101248A (en) * | 1979-12-28 | 1981-08-13 | Ibm | Word selection method |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3707725A (en) * | 1970-06-19 | 1972-12-26 | Ibm | Program execution tracing system improvements |
| US3648249A (en) * | 1970-12-08 | 1972-03-07 | Ibm | Audio-responsive visual display system incorporating audio and digital information segmentation and coordination |
| JPS5335434A (en) * | 1976-09-13 | 1978-04-01 | Lexicon Corp | Information processor |
| US4092729A (en) * | 1976-12-28 | 1978-05-30 | International Business Machines Corporation | Apparatus for automatically forming hyphenated words |
| US4159536A (en) * | 1977-04-08 | 1979-06-26 | Willard E. Kehoe | Portable electronic language translation device |
| FR2458848B1 (fr) * | 1979-06-11 | 1986-02-28 | Iria | Procede et appareil informatique de reconnaissance des mots |
-
1981
- 1981-09-30 US US06/307,631 patent/US4471459A/en not_active Expired - Lifetime
-
1982
- 1982-09-25 EP EP82108878A patent/EP0079450A3/en not_active Ceased
- 1982-09-28 JP JP57503570A patent/JPS58501526A/ja active Pending
- 1982-09-28 WO PCT/US1982/001337 patent/WO1983001316A1/en not_active Ceased
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS54104747A (en) * | 1978-02-03 | 1979-08-17 | Canon Inc | Small sized electronic unit |
| JPS56101248A (en) * | 1979-12-28 | 1981-08-13 | Ibm | Word selection method |
Also Published As
| Publication number | Publication date |
|---|---|
| EP0079450A3 (en) | 1985-04-10 |
| WO1983001316A1 (en) | 1983-04-14 |
| EP0079450A2 (en) | 1983-05-25 |
| US4471459A (en) | 1984-09-11 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPS58501526A (ja) | ディジタルデータ処理方法 | |
| JPS58501603A (ja) | ディジタルデータ処理方法および手段 | |
| US6018736A (en) | Word-containing database accessing system for responding to ambiguous queries, including a dictionary of database words, a dictionary searcher and a database searcher | |
| US6173251B1 (en) | Keyword extraction apparatus, keyword extraction method, and computer readable recording medium storing keyword extraction program | |
| CN107463666A (zh) | 一种基于文本内容的敏感词过滤方法 | |
| CN109582772A (zh) | 合同信息提取方法、装置、计算机设备和存储介质 | |
| JP2000181920A (ja) | 質問ワ―ドを用いて多数のワ―ドグル―プのうちの1つを識別する方法 | |
| Rupp et al. | Linguistic Perspectives on a Variable English Morpheme: Let's talk about–s | |
| CN110020429A (zh) | 语义识别方法及设备 | |
| JP4671164B2 (ja) | 文書クラスタリング装置、クラスタリング方法及びクラスタリングプログラム | |
| CN107220381A (zh) | 一种面向问答系统的输入文本自动纠错方法 | |
| CN112905024A (zh) | 单词的音节记录方法及装置 | |
| CN114282540B (zh) | 构建语言模型及语音识别的方法、装置、设备及存储介质 | |
| CN117539987A (zh) | 一种关键词查找方法、装置、电子设备及介质 | |
| JPH08221091A (ja) | 音声認識装置 | |
| JP2014164403A (ja) | 読みがな割当装置およびプログラム | |
| JP3616126B2 (ja) | 特殊範囲抽出装置および文抽出装置 | |
| CN113901212A (zh) | 目标领域对应类别信息的确定方法及装置 | |
| KR20040062773A (ko) | 자연어처리를 위한 완성형 한글코드 음소정보 추출 방법 | |
| JP3996886B2 (ja) | 対訳対抽出装置及びそのためのコンピュータプログラム | |
| JP4646078B2 (ja) | 相互に関係する固有表現の組抽出装置及びその方法 | |
| JP3773410B2 (ja) | 商標類否判断システム | |
| CN121935360A (zh) | 文本匹配方法、装置、设备及介质 | |
| JPS6029823A (ja) | 適応型記号列変換方式 | |
| JP2795754B2 (ja) | データ検索処理方式 |