JPH04503584A - キャラクタ符号化方法 - Google Patents

キャラクタ符号化方法

Info

Publication number
JPH04503584A
JPH04503584A JP2-515589A JP51558990A JPH04503584A JP H04503584 A JPH04503584 A JP H04503584A JP 51558990 A JP51558990 A JP 51558990A JP H04503584 A JPH04503584 A JP H04503584A
Authority
JP
Japan
Prior art keywords
character
attribute
characters
code
string
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2-515589A
Other languages
English (en)
Inventor
フィッシャー エドワード ジー
ジルベルト ピーター ディー
Original Assignee
ディジタル イクイップメント コーポレーション
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ディジタル イクイップメント コーポレーション filed Critical ディジタル イクイップメント コーポレーション
Publication of JPH04503584A publication Critical patent/JPH04503584A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるため要約のデータは記録されません。

Description

【発明の詳細な説明】 [キャラクタ符号化方法 発明の背景 本発明はキャラクタの符号化に関するものである。
キャラクタの符号化には多くの手段が存在する。例えば、情報交換用米国基準コ ード(ASCIυ及びマルチナショナル キャラクタ セット(MC3)によっ て符号の値が任意に順序付けられたキャラクタ群のキャラクタに位置にあるキャ ラクタに対して2進符号を割当てる。例えばASCIIはアルファベット文字( “A−Z”及び“a−z”)、数字(“O−9”)その他の記号(例えば“!” 、“#”、“$”、“%”又は“&“)を含有している。各キャラクタはキャラ クタ群の位置を有し、その値はキャラクタの符号である。例えばキャラクタ“A ”、“B”又は“C”は位置65.66及び67に位置し、且つ夫々割当てられ た符号1000001.1000010及び1QOOO1lである。
又、MC3はASCIIキャラクタ群を包含すると共にいわゆる“マルチナショ ナル”キャラクタを含有する。これらマルチナショナル キャラクタは連字(例 えば“1”)及び区別マークを有するキャラクタ(例えば“A”、“h”及び” を)並びに他のキャラクタ(例えば“i”及び“a″)のような音声キャラクタ を具える。再び各キャラクタはキャラクタ群に位置し、その値はキャラクタの符 号でる。例えばキャラクタ“A″。
“A”及び“A”は位置193.194及び195にあり、夫々割当てられた符 号11000001.11000010及び11000011である。
ASCII及びMC3の符号はしばしば同一キャラクタ群から2つのキャラクタ を比較するために用いる。第1のキャラクタは、その符号の値か第2のキャラク タの符号の値より大きいか、小さいか或いはこの値に等しい場合に第2のキャラ クタより太きいか、小さいか又はこれに等しくなる。例えば、MC3において、 “A″は“A′よりも小さい。その理由は1000001が11000001よ りも小さいからである。
又、ASC[r及びMC5の符号を用いて同一のキャラクタ群から2つ以上のキ ャラクタのストリングを比較する。第1ストリング及び第2ストリングを比較す るために、上述したキャラクタの比較を用いて第1ストリングのキャラクタ及び 第2ストリングの関連するキャラクタに適用する。この比較は、第1ストリング からのキャラクタか第2ストリングの関連するキャラクタより大きくなるか又は 小さくなるまで順次の関連するキャラクタで繰返し、この作動は“キャラクタ順 次”比較と称される。
例えば、ストリングcanoes”及び“canos”のキャラクタ順次比較は 、“canoes”がCan0nS″より小さいことを示す。
その理由は“C”、“、“n”及び“Q”に対する符号が等しい場合でも“e″  (01100101)に対する符号の値が“n”(01101110)に対す る符号の値より小さいからである。しかし、キャラクタ順次比較は、一旦等しく ないキャラクタが見出されると、終了する。本例ではキャラクタ“S”は永久に 比較しない。このキャラクタ順次比較は、ストリングが上段キャラクタ、下段キ ャラクタ及び音声キャラクタの組合せを有する場合には不所望な結果を生じ得る ようになる。例えば、MC3ではキャラクタ順次比較は、“McDougal” が“λ1cdonald”より小さく、且つ“Muttle″が“Mjller ”より小さいことを示す。上段キャラクタ、下段キャラクタ及び音声キャラクタ の組合せを含むストリングを比較するために用いる1つの方法は、以下に説明す る“3パス比較法”である。
この3パス比較法では、第1パスのステップは、1)2つのストリングのキャラ クタを全部上段キャラクタに変換し、2)任意の音声キャラクタをそのベース  キャラクタに低減し、3)残りのキャラクタにキャラクタ順次比較を行う必要が ある。例えば“Muller”が“Miiller”は“MULLER”及び“ MUD、LEER’となり、“MacDonald”及び”Macdonald ”は“MACDONALD”及び“MACDONALD ”となり、”MacD ougal ’及び“MacDougal”は“MACDOUGAL”及び”  MACDOUGAL”となり、“Muttle”及び“λ1jiller”は“ MUTTLE”及び“MLIL[、ER”となる。キャラクタ順次比較が等しい 値に戻ると、この方法は第2パスに進むようになる。例えば“MULLER”= “MULLER”、“MACDONALD”=“MACDONALD”及び“M ACDOUGAL”=“MACDOUGAL”となる。
その他では、キャラクタ順次比較は一方が他方より大きいか又は小さくなる結果 にリターンし、比較法は終了する。例えば、“MUTTLE” >“MULLE R”。
第2バスのステップは、 1)2つのストリングのキャラクタを全部上段キャラ クタに変換するも音声キャラクタをそのままにし、2)ストリングをキャラクタ 順次に比較する。例えば“Muller”及び”Miiller”は“MULL ER”及び“yUttER”、“MacDonald″及び“Macdonal d ”は“MACDNALD”及び“MACDNALD″、“MacDouga l″及び“λ(acDougal”は“MACDOUOAL″及び“MACDO UGAL”となる。比較が、ストリングが等しいことをリターンすると、比較法 は第3パスに進行する。例えば“MACDNALD”=“MACDNALD”及 び“MACDOUGAL”=“MACDOUGAL”。
その他の点では、比較は1方が他方より大きいか又は小さい結果にリターンし、 比較法は終了する。例えば、“MULLER”〈ラクタと音声キャラクタとの混 合キャラクタに変換し、且つ2)ストリングをキャラクタ順次に比較する必要が ある。例えば、“MacDonald ”及び“Macdonald″は“Ma cDonald ”及びMacdonald ”となり、“MacDougal ”及びMacDouga1″は“MacDougal ”及び“MacDoug al ”となる。比較が双方共等しい結果にリターンすると、比較法は終了する 。例えば“MacDougal”=“MacDougal”。その他の点では比 較が、一方が他方より大きいか又は小さい結果にリターンすると、比較法は終了 する。
例えば、“MacDonald ” > ”Macdonald”。
発明の概要 一般に、本発明は、キャラクタが複数の属性(例えばベース、区別及びケース  キャラクタ)を有し、各属性が複数の値を有するキャラクタ群のキャラクタを符 号化する方法を特徴とする。この方法は、多重ディジット符号を複数の部分に分 割し、夫々の該部分に各属性を割当て、各部分に対しこの部分に割当てられた属 性の各界る値に異る数値符号を割当てるようにしたステップを具える。
好適な例では、前記各部分の長さ、即ちディジットの数が、属性の種々の異る値 の数に依存し、キャラクタから前記キャラクタ群のキャラクタに変化するように する。前記符号の全体の長さをキャラクタ群の全キャラクタに対し同一とする。
前記属性はベース属性、区別属性及びケース属性を具えるようにする。測定のベ ース属性に対する区別値の数に依存し、区別属性に割当てられた部分の長さをベ ース属性に割当てられた部分の長さよりも長くするようにする。キャラクタ符号 化方法を用いてキャラクタのストリングの各キャラクタを符号化する。前記スト リングの各キャラクタから同一の属性に相当する符号の部分を連結して各属性に 対し各キャラクタから連結された部分のセグメントを形成するようにする。前記 セグメントを連結して前記キャラクタストリングを表わす連結された符号の全体 を連結の順序に従って形成し、照合順序で第1重要度の属性に相当するセグメン トが連結総合符号の最高順序位置を有し、残りのセグメントが照合順序で降順重 要度に従って順序付けされるようにする。空キャラクタの欄を特定の属性に相当 する連結部分の2つのセグメント間に介挿し、空キャラクタの欄の長さを2つの セグメントのオーバーラツプ部から照合順序誤差が生ずるのを防止し得るように する。比較作動は、前記キャラクタ ストリングに対する総合連結符号と優勢的 に比較して前記規定照合順序で2つのキャラクタ ストリングの相対位置を決め るようにして行う。この比較作動によって連結セグメントの単一比較を行う。第 1及び第2属性(例えばベース及び区別属性)に対する特定の符号は、第1属性 の各位に対し第2属性の種々の値の数を計数することにより選択し、且つ、第2 属性に割当てられた符号の部分の長さは計数値(例えばビットが属性の全部の可 能な値を表わすに充分であっても)計数値に依存して変化する。
本発明の利点は2つのキャラクタ ストリングに対する比較作動を1ステツプで 行う点にある。他の利点は、キャラクタに対する標準符号(例えばMCS符号) の任意の順序で構成されることなく、ユーザが照合順序(即ち分類順序)を所望 のように変化させることができる点である。これがため、例えば、特定のアルフ ァベットにおいて“C”を“d”の前でなく、後に位置させる必要がある場合に は、標準の符号を用いてキャラクタ(例えばMCS )を表わすことが“d”の 前に“C”が位置すると云う事実は制約ではない。又、2つの文字キャラクタ、 例えばスペイン語の“ch”及び“11”を、照合順序を確立する上で単一キャ ラクタとして処理し得ることは他の利点である。
好適例の説明 図1は本発明キャラクタ符号システムの構成部分を示すブロック図であり、 図2は成る値を成る部分に割当てる際における一般的なステップのフローチャー トである。
本発明はテキスト ファイル又はデータ ベースに見出されるキャラクタのよう なキャラクタを符号化し、比較し、関連付けることにある。かかるキャラクタは 、各々が1以上の可能な値を有するベース キャラクタ、区別マーク及びケース  キャラクタを含む多数の可能な属性を有する。ベース属性の値は、例えば“A ”、“B”又は“CHとすることができる。区別属性の値は例えば曲折アクセン ト記号“^”、低アクセント記号“1”又は波形符号記号“〜”とすることがで きる。又、ケース属性は上段、下段又はこれら上段及び下段の組合せ、例えばス ペイン語のキャラクタにおける“CH”、“ch”、“ch”及び“cH”とす ることができる。例えばキャラクタ“h”はベース、その値は“A”、区別、そ の値は低アクセント記号“\”、及びケース、その値は下段を有する。キャラク タの属性に従って発生した符号の記述を以下に行う。
本発明の第1の例では、キャラクタをその属性に従って符号化する。キャラクに 対する符号は数個の部分に分割し、符号の各部分をキャラクの属性に割当てる。
以下に示す所ではキャラクタに対する符号を9ビツトの長さとすると共に3つの 可変長さ部分、即ちベース部分、区別部分及びケース部分に分割し、これら部分 をキャラクタのベース属性、区別属性及びケース属性に夫々割当てる。例えばキ ャラクタ“a”はベース部分、その値は00110 、区別部分、その値は00 0及びケース部分、その値は0を有する。表1はキャラクタのサンプリング及び その符号を示す。
表1 キャラクタ ベース部分 区別部分 ケース部分a 00110 000 0 c 0011101 0 0 C001110101 E 010 00000 1 を 010 00001 1 倉 010 00010 1 E 010 00011 1 E 010 00100 1 e 010 00000 − O e 010 00001 0 e 010 00010 0 e 010 00011 0 e 010 00100 0 o 1000 1000 0 ハ o 1000 1011 0 p 10010000 0 t 10110000 0 表1及び上述した所から明らかなように、1つの符号の各部分は長さが変化する 。例えば、 “t”に対する符号のベース部分は8ビツトの長さであるが、“e ”に対する符号のベース部分は単に3ビツトの長さである。その理由は、属性が 有する可能な値の数が変化するからである。例えば、“e”の区別属性は可能な 多数の値を有する。これがため、“e”の他の属性に割当てられる部分の長さが 短くなって区別属性に割当てられた部分に各可能な値を表わすに充分なビットを 提供し得なくなる。
更に、一つの属性に同一の値を有する任意のキャラクタはこの属性に割当てられ たその符号の部分に同一の値を有する。例えば、“E”及び“白”はそのベース 及びケース属性に同一の値を有するが、その区別属性には同一の値を有さない。
これがため、“E”及び”白”はそのベース部分に同一の値(010)を有する が、その区別部分には同一の値を有さない。キャラクタを符号化し、表1と同様 のテーブルを形成するために用いられるシステム及び方法を図1につき以下に説 明する。
図1に示すように、符号化システム10は特定のキャラクタ群、例えばMCSに よって供給される照合シーケンス11と、この照合シーケンスを変更するために ユーザが供給する変更リスト12とを具える。以下に詳述するようにテーブル発 生器14は照合シーケンス11及び変更リスト12を用いて表1と同様の符号化 されたキャラクタのテーブル16を形成する。又、この符号化キャラクタのテー ブル16は特定のケースキャラクタ、例えばスペイン語のキャラクタと見做され る“ch”及び“lド及び2つのキャラクタ“SS“ど見做されるドイツ語のβ ”に対する符号を有している。
これら特定のケースキャラクタを種々の相対作動に関し以下詳細に説明する。し かし、まず最初照合シーケンス11及び変更リスト12について説明する。
ユーザは、各々が上述した属性の1つに対応する多数の属性クラスを変更リスト 12で規定することによりキャラクタ群の照合シーケンス11を修正する。1つ の属性に対し1つの値を有する全てのキャラクタは1つの属性クラスに入るが、 選択された属性に対し他の値を有する全てのキャラクタは他の属性クラスに入る 。例えば“A”、“、“A”、“i”、“A”及び“當”は全て“A”のベース 属性値を有すると共に1つの属性クラスに入るが、“B”及び“b”は “B” ベース属性値を有し、他の属性クラスに入る。各属性クラス内には1つ以上の属 性値が存在する。例えば、“A”属性クラスは1つのベース属性値と、4つの区 別属性値と、2つのケース属性値とを有する。これらの属性値を割当てる方法を 図1の回路素子に関し、図2のフローチャートにより以下に説明する。
図2に示すステップに対しテーブル発生器14によって変更すスト12を読出し 、属性クラスを設定する。即ち、キャラクタ群の各キャラクタに対し、テーブル 発生器14によってキャラクタをこれが属する任意且つ全ての属性クラスに加え 、且つこれらの属性クラスのキャラクタの数を1つ宛増大する。
図2を参照し、キャラクタ群のキャラクタの全部を一旦読出すと、テーブル発生 器14によってキャラクタに対する符号の長さ、即ち照合シーケンス11のキャ ラクタの数を表わすに必要な長さを計算する(ステップ100)。例えば、51 2のキャラクタは9ビツトで表わすことができる。処理すべき第1の属性クラス は照合シーケンスJ1の第1キヤラクタの第1属性クラスである。従って第1ベ ース部分の値(b値)を表わす変数はlに初期化する(ステップ102)。この 時点で、特定の属性のビットの。
数個の組合せを使用しないように全ての符号を設計する必要がしばしばある。例 えば“A”に関し5つの区別か存在する場合には区別部分に対し3ビツトを必要 とする。3ビツトか8区別部分まで表わし得るため、3ビツトの組合せは使用し ない。
次に各属性クラス(ステップ104)及びこの属性クラスの各キャラクタ(ステ ップ106)に対し、テーブル発生器14によってキャラクタの種々の属性に割 当てられた部分に対する値を計算する。先ず最初、テーブル発生器14によって 種々のケース属性値を表わすに必要なビットの数を計算する(ステップ108) 。ステップ105では区別部分の値(d−値)を表わす変数を各キャラクタの処 理前に0に初期化する。
属性クラスの各キャラクタに対しテーブル発生器14によって種々のケース属性 値を表わすに必要なビットの数を計算しくステップ108)、且つキャラクタに 対するケース部分の値を割当てる(ステップ110)。
キャラクタの区別部分に対する値を割当てるために、テーブル発生器I4によっ て種々の区別属性値を表わすに必要なビットの数を計算しくステップ112)、 d−値に等しいキャラクタに対する区別部分値を割当て(ステップ114)、且 つd−値の変数を増大させる(ステップ116)。例えば“A”属性クラスには 区別属性に対する1つ以上の値が存在する。これがため、“A”属性クラスのキ ャラクタに対する区別部分の値は、キャラクタが属性クラスに加えられる際、こ れに依存して計算される。次いで、キャラクタのベース部分に対する値を割当て るために、テーブル発生器14は残りのビットを用いてキャラクタのベース属性 値即ちb−値を表わすようにしくステップ118)、且つこのb−値を増大する (ステップ120)。
キャラクタの種々の属性に対する部分を割当てた後、テーブル発生器14はステ ップ106に戻り、属性クラスの次のキャラクタを処理する(ステップ122) 。属性クラスに他のキャクラクタが存在しない場合にはテーブル発生器14はス テップ104に戻り、次の属性クラスを処理する(ステップ124)。他の属性 クラスか存在しない場合には処理は終了する(ステップ126)。
本発明の他の例では、符号化キャラクタのテーブル16が一旦発生すると、1対 のキャラクタストリング22を比較することができる。標準符号例えばMC3に よって表わされるストリング22はトランスレータ24に供給し、これによって ストリングをテーブル16に供給して変換されたストリング25を発生させるよ うにする。次いで変換されたストリング25をトランスレータ24で連結して1 ステップ比較作動を行なうようにする。
先ず最初、各ストリングに対し、各キャラクタの符号のベース部分を互いに連結 する。例えば表1のキャラクタ群を与えて、ストリングcote”および“co te”のベース部分を次に示すように連結する。
次に、ベース部分を次に示すように5つのビット空キャラクタパッドと連結する 。(この空キャクラクタパッドによって、種々の長さのストリングが後の例に示 されるように比較されるようにする。)。
へ c o t (pad) c o t (pad) 次いでベース部分および空パッドを、次に示すように互いに連結されるキャラク タの区別部分と連結する。
c o t e (pad)co e ooll 1011000101100000100000001011000 00c o t e (pad)co e ool 11011000101100000100000001000000 00先ず最初、ベース部分、空キャラクタパッドおよび区別部分をキャラクタの ケース部分と連結し、このケース部分を次に示すように互いに連結する。
上述したように、空キャラクタによって異なる長さのストリングが粗く比較され るようにする。変換ストリングを比較する際の誤りは、特に異なる長さの2つの ストリングがストリングの一方の終了点まで等しい際に属性の連結部分即ち変換 ストリングのセグメントが他の属性から発生したセグメントとオーバーラツプす る場合に発生する。かかる場合には空のキャラクタパッドによって長いストリン グのベース部分が短いストリングの区別又はケース部分と比較されるのを防止す る。例えば、次に示すように空キャラクタを用いることなく変換ストリング“? ”および“?a”を比較する。
この例ではストリング?”のキャラクタ“?”の区別部分はストリングya”の キャラクタ“a”のベース部分と一致する。これらストリングを比較した結果は “?”〉“?a”となり、これは意図する所とは逆となり、即ち、ストロング? ”はストロングψa”より小さくし、即ちこれより大きくしてはならない。かか る結果が生じるのを防止するために、空キャラクタパッドを各ストリングのベー ス部分と区別部分との間で連結する空キャラクタパッドおよびその上述した例へ の適用について以下説明を行なう。
空キャラクタパッドは全部を零で構成し、これによってパッドを、これと比較す る任意のベース部分よりも常時小さくする。
(全部が零であるベース部分は存在せず、空キャラクタパッドの零の数が過剰の 先行零となる)。これがため、異なる長さの2つのストリングが一方のストリン グの終了点に等しい場合には短いストリングの空キャラクタパッドは長いストリ ングの次のキャラクタのベース部分と一致し、これによって短いストリングが長 いストリングより長くなるのを防止する。例えば、次に示すようにストリング9 ”および“9a”を空キャラクタパッドと比較する。
(:60111018011O品′000冒ooog:この例ではストリング9 ″に対する空キャラクタパッドをストリング♀a”のキャラクタ“a”に対する ベース部分と比較する。
変換例を完了するためには次に示すストリングを変換する。
cot = 001110110001011000000000010000 00cope= 0011101100010010000010000000 1000000000000yat = 00111010011010110 000000000000000Cope= 001110110001001 00000100000001000000001000Cot = 0011 1011000101100000QQOQ O1000100図1に示すよう に、トランスレータ24は上述した所と同様の変換ストリング25を比較処理部 26に供給し、この比較処理部2Gは2つのオペランド及び長さを受けてこれら が短いか、長いか或いは等しいかの結果をリターンする。次いで分類アルゴリズ ム28は上記結果を受けてストリング22を順序付けるようにする。例えば上述 したように変換したストリングは次に示すように分類する。
li:at = 0021101001101011000000000000 0000cope= 00111011000100100000100000 001000000000000cope= 001110110001001 00000100000001000000001000cot = 0011 1011000101100000000001000000cot = 00 111011000101100000000001000100cote=  001110110001011000001000000010000000 00000本発明の他の例では“MATCHING“、“C0NTA IN r NG″及び“5TART[NG WITf(″のような種々の関連操作は符号化 キャラクタのテーブル16を用いてキャラクタのストリング及びサブストリング を比較し、且つ整合する。これらの操作は例えばキャラクタの成るストリングに 対するテキストファイル又はデータベースを探索する際に有利である。特に、こ こでは、符号化キャラクタ16のテーブルにつき前述したように、いわゆる特定 のケースキャラクタの整合に有利である。
各関連の操作は、比較及び整合されるストリングのキャラクタに対する符号の値 に依存して真又は偽の値をリターンする。
第1ストリングが第2ストリングの任意のサブストリングと一致する場合には“ λ(ATCHrNG”操作によって真の値をリターンする。第1ストリングが第 2ストリング内に見出される場合には“C0NTA IN rNG“操作によっ て真の値をリターンする。第1ストリングの初期キャラクタが第2ストリングの 初期キャラクタに一致する場合には“5TARTING WITH”操作によっ て真の値をリターンする。
上述したキャラクタの関連操作の実行は容易であり、上述したキャラクタ順次比 較を用いる。即ち第1ストリングの順次の単一キャラクタを第2ストリングの関 連する単一キャラクタと比較する。しかし、“ch”、“11”及び“β”のよ うな特定のケースキャラクタは個々に処理する必要がある。例えば、操作“5T ARTING WITHC“はスペイン語の“chile”に対する真の値をリ ターンしない。その理由は“ch“がスペイン語では1キヤラクタであるからで ある。
特定のケースキャラクを比較するためには、“ch”のような特定のケースキャ ラクタを含む関連操作によって先ず最初符号化キャラクタのテーブル16の1区 分にストリングの各キャラク夕を位置させる。スペイン語のキャラクタ群に対す る符号化キャラクタのテーブルは参考記事として添付する(このテーブルは、添 付されたマイクロフィッシュ参考記事のソース符号に関連するものである。従っ て部分の値はソース符号に従い、後述する理由で右から左に読出す。しかし、操 作の原理はそのままである)。例えば、添付記事に示されるスペイン語の符号化 キャラクタのテーブルを用い、操作“5TARTING WITHT”がストリ ングの“T”を探索する場合には、これにより特定のケースの区分をチェックし てこの“T”が任意の特定のケースキャラクタの第1キヤラクタであるかどうか をみる。“T”か任意の特定のケースキャラクタの第1キヤラクタでないため、 上記操作は、これにより特定のケースキャラクタでないものを含むテーブル16 の区分に“T″を位置させてここに見出した符号を用いる。
又、操作“5TART[NG WITHC”がストリングの“C”を探索する場 合には、特定のケースキャラクタの区分をチェックしてこの“C“が任意の特定 のケースキャラクタの第1キヤラクタであるかどうかをみる。“C”が特定のケ ースキャラクタ″CH”の第1キヤラクタであるため、操作によってストリング の次のキャラクタが“H″であるかどうかをみる。次のキャラクタが“H”であ る場合には操作はテーブル16の特定のケースキャラクタの区分に見出される“ CH”に対する符号を用いる。しかし、“C”の次が“H”でなかった場合には 、操作は、これによって特定のケースキャラクタでないものを含むテーブルの区 分に“C”を位置させ、ここに見出される符号を用いる。例えば、操作“5TA RT[NG WITHC”は“chile”に対する偽の値をリターンすると共 に“casa”に対する真の値をリターンする。
CFR37目 1.96(b)によれば、テーブル発生器14を実行するソース 符号は62フレームを含むマイクロツイツチ参考記事として添付され、基準とし てここに組込まれる。使用するプログラミング語はブリス(VAX B115s −32V 4.3−808)、即ちデジタルイクイプメント コーポレーション のプログラミング語であり、その詳細は、プリス ランゲージ基準マニアルAA −H275D−TK。
1987年5月としてデジタル社から出版され、市販されている。
ソース符号はVMS5.2オペレイテイング システムによって実行されるVA X 8800コンピユータでビルス コンパイラ4.3−808を用いてコンパ イルされる。VAXコンピュータのアーキテクチュアはストリングの左端ビット をバイトの最上位ビットとみなしている。これがため、ソース符号の例によって キャラクタを符号化し、これらキャラクタは右から左に向かって読出され、連結 される。次いで変換されたストリングのビットの順序リッピングと称する。本発 明において符号化及び連結の方法は説明の便宜土庄から右に実施するようにした 。
FIGURE 1 図2 開始 100 照合シーケンスのキャラクタの数を表わすに必要なビットの数を計算す る。
102b−値=1(ベース部分の変数)104 各属性クラスに対し上記計算を 行なう。
105 b−値=0(区別部分の変数)106属性クラスの各キャラクタに対し 上記計算を行なう。
108 種々のケース属性の値を表わすに必要なビットの数を計算する。
112 f!々の区別属性値を表わすに必要なビットの数を計算する。
114 キャラクタ(d−値)に対する区別部分値を割当てる。
116 d−値を増大する。
120 b−値を増大する。
122 次のキャラクタを処理するためのリターン124 次の属性クラスを処 理するためのリターン126終了 国際調査報告 IIll−−tm−,1^峠wa++11’ M PCT/US 901059 471m−歯!嚇・lムー嘲−、、i、、PCT/US 90105947国際 調査報告 US 9005947

Claims (25)

    【特許請求の範囲】
  1. 1.キャラクタが複数の属性を有し、各属性が複数の値を有するキャラクタ群の キャラクタを符号化するに当り、多重ディジット符号を複数の部分に分割し、夫 々の該部分に各属性を割当て、各部分に対しこの部分に割当てられた属性の各異 る値に異る数値符号を割当てるようにしたことを特徴とするキャラクタ符号化方 法。
  2. 2.前記各部分の長さ、即ちディジットの数が、属性の種々の異る値の数に依存 し、キャラクタから前記キャラクタ群のキャラクタに変化するようにしたことを 特徴とする請求項1又は22に記載のキャラクタ符号化方法。
  3. 3.前記符号の全体の長さをキャラクタ群の全キャラクタに対し同一としたこと を特徴とする請求項2記載のキャラクタ符号化方法。
  4. 4.前記属性はベース属性、区別属性及びケース属性を具えることを特徴とする 請求項2又は22に記載のキャラクタ符号化方法。
  5. 5.前記属性はベース属性、区別属性及びケース属性を具え、且つ多数の区別値 を有するキャラクタに対し、区別属性に割当てられた部分の長さをベース属性に 割当てられた部分の長さよりも長くするようにしたことを特徴とする請求項4記 載のキャラクタ符号化方法。
  6. 6.請求項1記載のステップを用いてキャラクタのストリングの各文字記号を符 号化することを特徴とする請求項1記載のキャラクタ符号化方法。
  7. 7.前記ストリングの各文字記号から同一の属性に相当する符号の部分を連結し て各属性に対し各文字記号から連結された部分のセグメントを形成することを特 徴とする請求項6記載のキャラクタ符号化方法。
  8. 8.前記セグメントを連結して前記字記号ストリングを表わす連結された符号の 全体を連結の順序に従って形成し、照合順序で第1重要度の属性に相当するセグ メントが連結総合符号の最高順序位置を有し、残りのセグメントが照合順序で降 順重要度に従って順序付けされるようにしたことを特徴とする請求項7記載のキ ャラクタ符号化方法。
  9. 9.前記属性がベース属性、区別属性及びケース属性を具え、且つベース属性に 相当するセグメントが総合連結符号の最高順序位置を有し、区別属性に相当する セグメントが総合連結符号の中間順序位置を有し、ケース属性に相当するセグメ ントが総合連結符号の最低順序位置を有することを特徴とする請求項8記載のキ ャラクタ符号化方法。
  10. 10.前記各部分の長さ、即ち、ディジットの数は属性の種々の異る値の数に依 存し、キャラクタから前記文字記号組のキャラクタに変化するようにしたことを 特徴とする請求項8記載のキャラクタ符号化方法。
  11. 11.空キャラクタの欄を特定の属性に相当する連結部分の2つのセグメント間 に介挿し、空キャラクタの欄の長さを2つのセグメントのオーバーラップ部から 照合順序誤差が生ずるのを防止し得るようにしたことを特徴とする請求項10記 載のキャラクタ符号化方法。
  12. 12.前記キャラクタに対する多重ディジット符号と優勢的に比較して前記規定 照合順序で2つのキャラクタの相対位置を決めるステップを更に具えることを特 徴とする請求項1,5又は22記載のキャラクタ符号化方法。
  13. 13.前記キャラクタ ストリングに対する総合連結符号と優勢的に比較して前 記規定照合順序で2つのキャラクタ ストリングの相対位置を決めるステップを 更に具えることを特徴とする請求項8記載のキャラクタ符号化方法。
  14. 14.前記キャラクタ ストリングに対する総合連結符号と優勢的に比較して前 記規定照合順序で2つのキャラクタ ストリングの相対位置を決めるステップを 更に具えることを特徴とする請求項9記載のキャラクタ符号化方法。
  15. 15.前記キャラクタ組に各々が複数の値を有する第1及び第2属性を存在させ 、更に、前記第1属性の各値に対し、前記第2属性の種々の異る値の数を計数し 、第1属性に関連し第2属性の種々の異る値の計数に基づき前記第2の属性に割 当てられた部分、即ち第2部分の長さを測定し、前記第1属性の各値に対し、前 記第2部分の長さ、及び前記符号の全体の長さに基づき、第1属性に割当てられ た部分すなわち第1部分の長さを測定するようにしたことを特徴とする請求項2 記載のキャラクタ符号化方法。
  16. 16.前記符号の全長は前記文字記号組の全部のキャラクタに対し同一とし、全 部のキャラクタに対し同一とした部分の長さの和とすることを特徴すとる請求項 15記載のキャラクタ符号化方法。
  17. 17.前記属性の端異なる値に対し異る数字符号を割当てるステップは、属性の 数値順序が照合順序に相当するような値を割当てるステップとすることを特徴と する請求項2記載のキャラクタ符号化方法。
  18. 18.キャラクタを表わす標準符号の順序及び特定の文字記号組に対する1組の 変更順序から照合順序を導出するステップを更に具えることを特徴とする請求項 17記載のキャラクタ符号化方法。
  19. 19.単一のベース属性は2つのキャラクタのストリングに相当し、単一の数字 符号を前記符号のベース部分に割当てて2つのキャラクタのストリングを表わす ようにしたことを特徴とする請求項4記載のキャラクタ符号化方法。
  20. 20.キャラクタを表わすために用いられる標準符号の数値順序とは異る所望の 照合順序に基づきキャラクタの2つのストリングを比較するに当り、照合符号に 対するキャラクタに関するトランスレーション テーブルを設け、所望の照合順 序が前記照合符号の数値順序に相当するようにキャラクタに照合符号を割当て、 前記トランスレーション テーブルを用いてキャラクタの各ストリングに対する 標準符号をトランスレーション ストリングの各キャラクタに対する照合符号を 形成し、この照合符号を比較することを特徴とするキャラクタの2つのストリン グを比較する方法。
  21. 21.各キャラクタ ストリングを形成するキャラクタに対する照合符号を連結 し、1方のストリングに対する連結符号と他のストリングに対する連結符号とを 比較することを特徴とする請求項20記載のキャラクタの2つのストリングを比 較する方法。
  22. 22.前記キャラクタは複数の属性を有し、各属性は複数の値を有し、前記照合 符号は複数の部分で構成し、各部分は異る属性を割当て、各部分内で異なる数値 符号を属性の各異なる値に割当てるようにしたことを特徴とする請求項21記載 のキャラクタの2つのストリングを比較する方法。
  23. 23.前記符号を2進数とし、最上位ビットを右側に、最下位ビットを左側に位 置させるようにしたことを特徴とする請求項1又は20記載のキャラクタ符号化 方法。
  24. 24.前記符号を2進数とし、最上位ビットを左側に、最下位ビットを右側に位 置させるようにしたことを特徴とする請求項1又は20記載のキャラクタ符号化 方法。
  25. 25.前記比較ステップは次のステップの1つ、即ち、第1ストリングが第2ス トリングの任意のサブストリングと整合する場合に、真の値がリターンする整合 作動と、第1ストリングが第2ストリング内に見出される際に真の値がリターン する包含作動と、第1ストリング内の初期キャラクタが第2ストリング内の初期 キャラクタと調合する場合に、真の値がリターンする開始作動とを具えることを 特徴とする請求項23記載のキャラクタの2つのストリングを比較する方法。
JP2-515589A 1989-10-20 1990-10-16 キャラクタ符号化方法 Pending JPH04503584A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US425,848 1989-10-20

Publications (1)

Publication Number Publication Date
JPH04503584A true JPH04503584A (ja) 1992-06-25

Family

ID=

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005517221A (ja) * 2001-05-31 2005-06-09 オラクル・インターナショナル・コーポレイション 多数の文字を扱うための効率的な照合要素構造

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005517221A (ja) * 2001-05-31 2005-06-09 オラクル・インターナショナル・コーポレイション 多数の文字を扱うための効率的な照合要素構造

Similar Documents

Publication Publication Date Title
US8095526B2 (en) Efficient retrieval of variable-length character string data
US8190613B2 (en) System, method and program for creating index for database
US20100131476A1 (en) Computer product, information retrieval method, and information retrieval apparatus
WO2004062110A1 (ja) データ圧縮方法、プログラム及び装置
JPS63316231A (ja) コンピユーター・ソーテイングを容易にする方法
US5225833A (en) Character encoding
US20080275898A1 (en) List update employing neutral sort keys
JPH09288676A (ja) 全文インデックス作成装置および全文データベース検索装置
Lippert et al. A space-efficient construction of the Burrows–Wheeler transform for genomic data
US7433880B2 (en) Method and system for high speed encoding, processing and decoding of data
JPH04503584A (ja) キャラクタ符号化方法
JP2993540B2 (ja) 昇順整数列データの圧縮および復号システム
US6731229B2 (en) Method to reduce storage requirements when storing semi-redundant information in a database
JPH056398A (ja) 文書登録装置及び文書検索装置
JP2729416B2 (ja) テキストデータの復元方法
WO1996011442A1 (en) Character information processing method and apparatus for the same
JP3253657B2 (ja) 文書検索方法
JP2018200546A (ja) 分類用符号生成ソフトウェアを記録した記録媒体
JPH0228879A (ja) 化学構造式の完全一致検索方式
WO1991013395A1 (fr) Procede de compression et de reconstitution de donnees et dispositif prevu a cet effet
Cooper et al. Compression of Wiswesser Line Notations using variety generation
JP3344755B2 (ja) 昇順整数列データの圧縮および復号システム
EP1585033A1 (en) Method and device for preparing an index of a database and for retrieving data from the database
JPS5850044A (ja) インデクス・レコ−ドの検索処理方式
JPH06162096A (ja) レコード検索方法