(57)【要約】【課題】異表記文字を区別する場合と区別しない場合のどちらの検索処理においても、無駄な入出力データを排除し、効率のよい文書検索を行う。【解決手段】異表記文字を同一とみなすか区別するかを指定する異表記条件に基づいて、入力された検索キーワード中の各文字を、１つの文字専用の文字コードあるいは異表記文字の組に割り当てられた文字コードに変換する文字列変換部と、索引データベースを参照し、各文字コードの、検索対象文書中での出現位置情報を読み出す位置情報読み出し部と、各文字コードの出現位置情報と、文字コード列を照合する照合部と、照合結果に基づいて、検索キーワードの出現位置情報を出力する照合結果出力部を備える。【選択図】        図１
2004199282.tif 000002
【特許請求の範囲】
【請求項１】
１の文字とこの文字の異表記文字とを同一文字として照合する処理とこれらの文字を別の文字として照合する処理とのいずれかを指定する２以上の異表記文字を同一とみなすか区別するかを指定する異表記区別条件に基づいて、入力された検索キーワード中の各文字を、１の文字専用の文字コードあるいは該文字の異表記文字候補の組に割り当てられた文字コードを保持する文字コード記憶部を参照することにより文字コードに変換し、文字コード列を生成する文字列変換部と、
検索対象文書データベースから、上記文字コード列中の各文字コードの出現位置情報を読み出し、上記文字コード列と読み出した出現位置情報を照合する照合部と、
上記照合部による照合結果を出力する照合結果出力部を備えた文書検索装置。
【請求項２】
文字列変換部は、前期検索キーワードと共に、その上記検索検索キーワード中の文字単位に指定された異表記区別条件の入力を受けることが可能であり、各文字について上記異表記区別条件に従って文字コードに変換することを特徴とする請求項１記載の文書検索装置。
【請求項３】
１の文字専用の文字コードあるいは該文字の異表記文字候補の組に割り当てられた文字コードを保持する文字コード記憶部を参照し、入力された文書中の各文字についてその文字専用の文字コードを抽出するとともに、各文字を含む異表記文字候補の組がある場合には、上記異表記文字候補の組に割り当てられた文字コードを抽出する文字コード割り付け部と、
上記文書中の各文字に対して抽出された全ての文字コードの、上記文書中における出現位置情報を生成する文字コード出現位置索引生成部と、
上記文字コード出現位置索引生成部により生成された索引を記憶装置に格納する索引格納部を備えた文書登録装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、文書検索装置および文書登録装置に関するものである。
【０００２】
【従来の技術】
近年、大量の電子文書の蓄積が進み、文書データベースから効率良く所望の文書を検索する方法が求められている。
【０００３】
一般の文書検索装置においては、文書データベースの作成時に、登録する文書中の各文字の出現位置情報を文字コード等によって検索する索引を作成し、記憶装置等に格納する。検索時には、索引を参照することにより、検索キーワードの出現位置を高速に検索することが出来る。
【０００４】
一方、文書検索において、例えば、「ウイスキー」というキーワードを含む文書を検索したい場合、他に「ウィスキー」或いは「ウヰスキー」という語句を含む文書も検索対象とした方が、ユーザの目的にかなう場合もあれば、含めない方がよい場合もある。この「イ／ィ／ヰ」のように用例によっては同一とみなすことが出来る文字（以下、異表記文字という）の例としては、他にも「渡辺」と「渡邊」における「辺／邊」などがある。
【０００５】
従来の文書検索方法では、「ウイスキー」、「ウィスキー」、「ウヰスキー」のように、２つ以上の異表記の存在する文字列については、固定的に異表記を区別して検索するか、もしくは区別しないで検索してきた。固定的に区別する検索方法では、異表記の語句を含む文書は検索対象とならないため、入力された検索キーワードの異表記を含む文書も必要なユーザにとっては検索漏れということになる。逆に、区別しないで検索する方法では、異表記の語句を含む文書もすべて検索対象となるので、異表記を区別したいユーザにとっては必要のない文書までが余計に得られるという問題がある。
【０００６】
この問題を解決するために、検索時に検索キーワードの異表記を区別するか区別しないかをユーザが選択できるようにしているものもある。例えば特許文献１に開示された従来の文書検索装置においては、文書データベースの索引中では、文字の全角と半角、英文字の大文字と小文字などの異表記文字同士を共通文字として扱う。索引には、各文字の文書データベース中での出現位置を表す場所情報と共に、各文字について大文字・小文字のような異表記文字の区別をする文字種別情報を保持する。検索時には、検索キーワードは索引中で用いられている共通文字に変換される。異表記を区別しない検索を行う場合には、文字種別情報は参照せず、共通文字に変換された検索キーワードと同一の共通文字の出現位置情報を索引中から取得する。一方、異表記を区別する検索が指定された場合には、共通文字を検索するだけでなく、文字種別情報を参照し、文字種別までが一致する場合にのみ出現位置情報を取得する。
【０００７】
【特許文献１】
特開平０８−７７１８８号公報（図１、図２）
【０００８】
【発明が解決しようとする課題】
以上に述べたように、文書検索装置においては、異表記文字を区別して検索するか、区別せずに検索するかをユーザの目的によって選択できる方が検索の精度も上がり、使い勝手もよい。
【０００９】
しかし、上記の文書検索装置では、検索時にキーワード中の文字の共通文字化を行っているため、異表記を区別する検索を行う場合でも、不要な文字種別情報の索引まで読み出すことになり、無駄なデータの入出力が発生するという問題がある。
【００１０】
また、上記の文書検索装置では、検索キーワードの共通文字化により、異表記を区別して検索する場合に、文字種別情報を参照するという処理が必要となり、検索処理のステップが増加してＣＰＵ負荷が増大する。
【００１１】
さらに、上記の文書検索装置では、文書索引には、出現位置情報のほかに文字種別情報が含まれるため、文書登録時および検索時における索引参照時のデータ入出力量が増加する。
【００１２】
この発明は、以上のような問題を解決するため、用途に応じて異表記文字を区別する場合と区別しない場合のどちらの検索処理においても、無駄なデータの入出力を防止すると共に処理ステップを可能な限り少なくし、効率のよい文書検索を行う文書検索装置を得ることを目的とする。
【００１３】
また、この発明は、検索対象文書を効率のよい検索が行える形式で登録する文書登録装置を得ることを目的とする。
【００１４】
【課題を解決するための手段】
この発明に係る文書検索装置は、１の文字とこの文字の異表記文字とを同一文字として照合する処理とこれらの文字を別の文字として照合する処理とのいずれかを指定する異表記区別条件に基づいて、入力された検索キーワード中の各文字を、１の文字専用の文字コードあるいは該文字の異表記文字候補の組に割り当てられた文字コードを保持する文字コード記憶部を参照することにより文字コードに変換し、文字コード列を生成する文字列変換部と、検索対象文書データベースから、文字コード列中の各文字コードの出現位置情報を読み出し、文字コード列と読み出した出現位置情報を照合する照合部と、照合部による照合結果を出力する照合結果出力部を備えたものである。
【００１５】
この発明に係る文書登録装置は、１の文字専用の文字コードあるいは該文字の異表記文字候補の組に割り当てられた文字コードを保持する文字コード記憶部を参照し、入力された文書中の各文字についてその文字専用の文字コードを抽出するとともに、各文字を含む異表記文字候補の組がある場合には、異表記文字候補の組に割り当てられた文字コードを抽出する文字コード割り付け部と、文書中の各文字に対して抽出された全ての文字コードの、文書中における出現位置情報を生成する文字コード出現位置索引生成部と、文字コード出現位置索引生成部により生成された索引を記憶装置に格納する索引格納部を備えたものである。
【００１６】
【発明の実施の形態】
以下、この発明の実施の形態を説明する。
実施の形態１．
図１は、この発明の実施の形態１による、文書検索装置と文書登録装置を備えたシステムの構成を示すブロック図である。
検索対象文書の登録時には、ユーザは、文書登録装置２０の入力処理部２４を介して文書を入力する。文書登録装置２０は、内部文字コード割り付け部２１（文字コード割り付け部）、出現位置情報作成部２２（文字コード出現位置索引生成部）、索引作成部２３（文字コード出現位置索引生成部、索引格納部）によって文書を処理し、検索のための索引を生成する。生成された索引は、索引データベース３０（検索対象文書データベース）に格納する。また、また、入力された文書も記憶装置等（図示せず）に格納される。なお、内部文字コード割り付け部２１、出現位置情報作成部２２、索引作成部２３、および入力処理部２４は、プログラムに従ってコンピュータの中央演算処理装置が行う動作のモジュールを表しており、これらは実際には一体として中央演算処理装置を構成する。
【００１７】
文書検索時には、ユーザは、文書検索装置１０の入力処理部１５を介して検索キーワードを入力する。文書検索装置１０は、入力された検索キーワードに基づいて、文字列変換部１１、位置情報読み出し部１２（照合部）、照合部１３、照合結果出力部１４によって検索処理を行い、索引データベース３０から、入力された検索キーワードを含む文書を検索し、検索結果を出力する。なお、文字列変換部１１、位置情報読み出し部１２、照合部１３、照合結果出力部１４、および入力処理部１５は、プログラムに従ってコンピュータの中央演算処理装置が行う動作のモジュールを表しており、これらは実際には一体として中央演算処理装置を構成する。
【００１８】
内部文字コードテーブル４０（文字コード記憶部）は、例えばリレーショナル型データベースによって実現されており、文字をキーとし、その文字専用の文字コードが関係付けられている。さらに、その文字を含む異表記文字候補の組がある場合には、その異表記文字候補の組に対して割り当てられた内部文字コードも関係付けられている。図２に示すように、内部文字コードテーブル４０に登録されている内部文字コードには、１つの文字に対して一義的に割り当てられる内部文字コードと、「イ／ィ／ヰ」や「辺／邊」などのような異表記文字の組に対して割り当てられる内部文字コードがある。
異表記文字の組は、内部文字コードテーブル４０の図示しない管理装置の入力手段（パーソナルコンピュータ等）を用いて、ユーザが任意に登録することが出来る。
【００１９】
なお、文書検索装置１０および文書登録装置２０は、異なるサーバ装置等であってもよいし、１つの装置であってもよい。また、索引データベース３０および内部文字コードテーブル４０は、同一の記憶装置に格納されていてもよいし、別々の装置に格納されていてもよく、文書検索装置１０および文書登録装置２０とは回線により接続される。あるいは、文書検索装置１０または文書登録装置２０と同一の装置に格納されていてもよい。
【００２０】
次に、文書登録処理について説明する。図３は、この発明の実施の形態１による文書登録装置２０が実行する文書登録処理のフローチャートである。まず、入力処理部２４は、登録文書の入力を受け付ける（ステップＳＴ２０１）。ここでは、図４に示す登録文書５１が入力されたとする。
【００２１】
次に、内部文字コード割り付け部２１は、内部文字コードテーブル４０を参照し、入力された登録文書中の各文字について内部文字コードの割り付けを行う。すなわち、各文字に関係付けられたその文字専用の文字コードを抽出すると共に、その文字を含む異表記文字の組の内部文字コードが登録されている場合には、その文字コードも抽出する（ステップＳＴ２０２）。例えば、図４の例では、登録文書５１中の「ウ」に対しては内部文字コード「Ａ２」、「ィ」に対しては文字コード「Ａ５２」と「Ａ１０１」、「イ」に対しては「Ａ１」および「Ａ１０１」が抽出される。
【００２２】
次に、出現位置情報作成部２２は、ステップＳＴ２０２で登録文書５１の各文字に対して割り付けられた内部文字コード毎に、登録文書５１中での出現位置情報を作成する（ステップＳＴ２０３）。例えば、「イ」を表す「Ａ１」については、「イ」は登録文書５１の７文字目に出現するので「７」が取得される。同様に、「ィ」を表す「Ａ５２」については「２」が取得される。また、「イ／ィ／ヰ」を表す「Ａ１０１」については２文字目の「ィ」と７文字目の「イ」が対象なので「２，７」が取得される。
【００２３】
次に、索引作成部２３は、登録文書５１の索引を生成し、索引データベース３０に格納する（ステップＳＴ２０４）。図４に、索引データベース３０に格納される内容の一部を示す。索引は、ステップＳＴ２０２で得られた内部文字コードを見出しとし、その内部文字コードに対応する文字と、ステップＳＴ２０３で得られた登録文書中での出現位置情報（登録文書番号―文書中での位置番号）が登録されている。
【００２４】
次に、文書検索処理について説明する。図５は、この発明の実施の形態１による文書検索装置１０が実行する文書検索処理のフローチャートである。まず、入力処理部１５は、ユーザから、検索キーワードと異表記条件（異表記区別条件）の入力を受け付ける（ステップＳＴ５０１）。
【００２５】
ここでは例として、検索キーワードが「ウィスキー」である場合について説明する。異表記条件とは、ユーザが検索キーワード中の文字ごとに指定する、該当文字を異表記区別するか、区別しない（異表記文字を同一とみなす）かの条件である。各文字について、異表記区別する場合には「０」を、区別しない場合には「１」を指定する。例えば、検索キーワード「ウィスキー」の「ウ」、「ス」、「キ」、「ー」については異表記区別し、「ィ」については区別しないのであれば、異表記条件は「０１０００」となる。これにより「ィ」については、「イ」および「ヰ」が使われていても同一の語句とみなされ、「ウイスキー」および「ウヰスキー」も検索対象となる。
【００２６】
文字列変換部１１は、入力された検索キーワードを１文字づつ読み込む（ステップＳＴ５０２）。
【００２７】
次に、文字列変換部１１は、読み込んだ文字について、入力された異表記条件を参照し、異表記区別するかしないかを判定する（ステップＳＴ５０３）。
【００２８】
ステップＳＴ５０３で異表記区別すると判定された文字については、文字列変換部１１は内部文字コードテーブル４０を参照し、当該文字をその文字専用の内部文字コードに変換する（ステップＳＴ５０４）。
【００２９】
一方、ステップＳＴ５０３で異表記区別しないと判定された文字については、文字列変換部１１は、内部文字コードテーブル４０を参照し、当該文字を異表記文字の組に対して割り当てられる内部文字コードに変換する（ステップＳＴ５０５）。
【００３０】
文字列変換部１１は、検索キーワードの全ての文字を読み込んだかどうか判定する（ステップＳＴ５０６）。すべての文字の読み込みが終了するまで、ステップＳＴ５０２からステップＳＴ５０６の処理を繰り返す。読み込みが終了すると、得られた変換結果が連結され、文字コード列が生成される（ステップＳＴ５０７）。検索キーワードの文字列変換処理を具体例で説明する。キーワード「ウィスキー」の「ウ」については、異表記条件より、異表記区別するので、図２より「Ａ２」に変換される。一方、異表記区別をしない「ィ」については、「イ／ィ／ヰ」を表す「Ａ１０１」に変換される。最終的に、文字コード列「Ａ２Ａ１０１Ａ１２Ａ６Ａ９０」が得られる。
【００３１】
次に、位置情報読み出し部１２は、索引データベース３０から図４に示すような索引データを読み出す。位置情報読み出し部１２は、ステップＳＴ５０７で得られた文字コード列中の各文字コードをキーにして、索引から該当する内部文字コードの出現位置情報を取得する（ステップＳＴ５０８）。文字コード列「Ａ２Ａ１０１Ａ１２Ａ６Ａ９０」については、図６に示すような各内部文字コードの出現位置情報が得られる。
【００３２】
次に、照合部１３は、ステップＳＴ５０５で取得した出現位置情報とステップＳＴ５０７で取得した文字コード列との照合を行う（ステップＳＴ５０９）。具体的には、各文字コードの出現位置情報を調べ、文字コード列と一致する並びがあるかどうか調べる。図６の例では、「１−１，１−２，１−３，１−４，１−５」の並びが該当する。
【００３３】
照合の結果、検索キーワードの文字列コードと、同じ長さで、連続した出現位置情報が存在した場合には、照合結果出力部１４は、出現位置情報を出力して終了する（ステップＳＴ５１０）。図６の例では、検索キーワードに相当する部分の先頭番号である「１−１」を出力する。
【００３４】
一方、一致する並びが存在しない場合には、照合結果出力部１４は、「該当キーワードなし」を返す（ステップＳＴ５１１）。
【００３５】
なお、内部文字コードテーブル４０に登録する異表記文字の組み合わせとしては、他にも英字の大文字と小文字の組、英字の全角と半角の組、ひらがなの長音と母音の大文字または母音の小文字との組、ひらがなの現代仮名遣いと歴史的仮名遣いの組、カタカナの長音と母音の大文字または母音の小文字との組、カタカナの現代仮名遣いと歴史的仮名遣いの組、カタカナの全角と半角の組、数字のアラビア数字と漢数字の組、アラビア数字の全角と半角の組、漢字の正字と略字または俗字の組等を登録してもよい。あるいは、これらの２種以上の組み合わせ等を登録してもよい。
【００３６】
以上のように、この実施の形態１によれば、異表記条件に基づいて、文書検索装置１０の文字列変換部１１が、検索キーワードを１つの文字専用の文字コードあるいは異表記文字の組に割り当てられた文字コードに変換し、索引データベース３０と照合するようにしたので、異表記文字を区別する場合と区別しない場合のどちらの検索処理においても、無駄なデータの入出力を防止し、少ない処理ステップで文書検索を行うことができるという効果がある。
【００３７】
また、この実施の形態１によれば、異表記条件は検索キーワード入力時にユーザが文字単位に指定するようにしたので、ユーザの使用目的に応じて検索条件を指定することが出来る。
【００３８】
また、この実施の形態１によれば、文書登録装置２０の内部文字コード割り付け部２１が、登録文書中に含まれる各文字に対し、１つの文字専用の文字コードと異表記文字の組に割り当てられた文字コードとをそれぞれ割り付け、出現位置情報とともに索引を生成するようにしたので、文書を効率のよい検索が行える形式で登録することが出来るという効果がある。
【００３９】
【発明の効果】
以上のように、この発明によれば、異表記区別条件に基づいて、入力された検索キーワード中の各文字を、その文字専用の文字コードあるいはその文字の異表記文字候補の組に割り当てられた文字コードに変換し、検索対象データベース中に存在するか否か照合するようにしたので、用途に応じて異表記文字を区別する場合と区別しない場合のどちらの検索処理においても、無駄なデータの入出力を防止すると共に処理ステップを可能な限り少なくし、効率のよい文書検索を行う文書検索装置を得られるという効果がある。
【００４０】
この発明によれば、登録する文書中の各文字に、その文字専用の文字コードを割り付けるとともに、各文字を含む異表記文字候補の組がある場合にはその異表記文字候補の組に割り当てられた文字コードをその文字に割り付け、文書中での出現位置情報とともに索引を作成するようにしたので、文書を効率のよい検索が行える形式で登録する文書登録装置を得られるという効果がある。
【図面の簡単な説明】
【図１】この発明の実施の形態１による、文書検索装置と文書登録装置を備えたシステムの構成を示すブロック図である。
【図２】この発明の実施の形態１による、内部文字コードテーブルに記憶されている内容の一部を示す図である。
【図３】この発明の実施の形態１による、文書登録装置が実行する文書登録処理のフローチャートである。
【図４】この発明の実施の形態１による、索引データベースに記憶されている内容の一部を示す図である。
【図５】この発明の実施の形態１による、文書検索装置が実行する文書検索処理のフローチャートである。
【図６】この発明の実施の形態１による、位置情報読み出し部の出力内容を示す図である。
【符号の説明】
１０  文書検索装置、１１  文字列変換部、１２  位置情報読み出し部（照合部）、１３  照合部、１４  照合結果出力部、１５  入力処理部、２０  文書登録装置、２１  内部文字コード割り付け部（文字コード割り付け部）、２２  出現位置情報作成部（文字コード出現位置索引生成部）、２３  索引作成部（文字コード出現位置索引生成部、索引格納部）、２４  入力処理部、３０  索引データベース（検索対象文書データベース）、４０  内部文字コードテーブル（文字コード記憶部）、５１  登録文書。
【図１】
2004199282.tif 000003
【図２】
2004199282.tif 000004
【図３】
2004199282.tif 000005
【図４】
2004199282.tif 000006
【図５】
2004199282.tif 000007
【図６】
2004199282.tif 000008