(57)【要約】【課題】効率的に作成可能な辞書データを用い、複数の単語列からなる使用頻度の高い表現を簡易な操作によって入力する。【解決手段】記憶部４００は、入力端末１が用いられる業務内容などに基づいて、入力内容に応じて用意された辞書データとして、入力される読みに基づいて構成された「読み補完辞書データ」と、変換後の綴りに基づいて構成された「綴り補完辞書データ」とを対応付けて保持している。それぞれのデータは、互いに係り受け関係にある単語を、ノードとして木構造に構成される。制御部１００は、入力された文字列から得られる検索キーを用いて、読み補完辞書データ、綴り補完辞書データを検索し、変換候補となるノード列を綴り補完辞書データから読み出す。変換候補を読み出すとき、制御部１００は、補完辞書データにおいて、同一の補完単位番号が付与されているノード列については、１つのノード列としてまとめて読み出す。【選択図】図１
2010266946.tif 000002
【特許請求の範囲】
【請求項１】
入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置であって、
入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語を、ノードとして木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部と、
ユーザの入力に基づき検索キーを生成する検索キー生成部と、
前記検索キー生成部により生成された検索キーに基づき前記読み補完辞書データ及び前記綴り補完辞書データを検索して当該検索キーに対応した前記綴り補完辞書データのノードを特定し、特定したノードの綴りと、当該特定したノードと同一の補完単位番号が付与されている当該特定したノードの下流のノードの綴りとを前記綴り補完辞書データから読み出して結合した変換候補を取得する変換候補抽出部と、
前記変換候補抽出部が取得した変換候補を出力する変換候補出力部と、
を備えることを特徴とする文字列入力装置。
【請求項２】
前記変換候補抽出部は、前記検索キーが未確定ひらがなからなる場合、前記読み補完辞書データから当該検索キーと前方一致かつ部分一致する最上流のノードを検出し、検出した当該ノードに対応した前記綴り補完辞書データのノードを特定し、当該特定したノードの綴りと、当該特定したノードと同一の補完単位番号が付与されている当該特定したノードの下流のノードの綴りとを結合した変換候補を取得する、
ことを特徴とする請求項１に記載の文字列入力装置。
【請求項３】
前記変換候補抽出部は、前記検索キーが未確定ひらがなからなる場合、前記読み補完辞書データから当該検索キーと完全一致する最上流のノードを検出し、検出した当該ノードに対応した前記綴り補完辞書データのノード及び１つ下流のノードを特定し、当該特定したノード及び１つ下流のノードの綴りと、当該１つ下流のノードと同一の補完単位番号が付与されている当該１つ下流のノードのさらに下流のノード綴りとを結合した変換候補を取得する、
ことを特徴とする請求項１に記載の文字列入力装置。
【請求項４】
前記変換候補抽出部は、前記検索キーが確定文字からなる場合、前記綴り補完辞書データから検索キーと前方一致かつ部分一致する最上流のノードを特定し、当該特定したノードの綴りと、当該特定したノードと同一の補完単位番号が付与されている当該特定したノードの下流のノードの綴りとを結合した変換候補を取得する、
ことを特徴とする請求項１に記載の文字列入力装置。
【請求項５】
前記変換候補抽出部は、前記検索キーが確定文字からなる場合、前記綴り補完辞書データから検索キーと完全一致する最上流のノードと、当該特定したノードの１つ下流のノードを特定し、当該特定したノード及び１つ下流のノードの綴りと、当該１つ下流のノードと同一の補完単位番号が付与されている当該１つ下流のノードのさらに下流のノード綴りとを結合した変換候補を取得する、
ことを特徴とする請求項１に記載の文字列入力装置。
【請求項６】
前記変換候補抽出部は、
前記検索キーが確定文字及び未確定ひらがなからなる未確定文字列からなる場合、当該検索キーの確定文字によって、前記綴り補完辞書データの最も上流のノードを検索して一致するノードを特定し、
特定したノードに対応する前記読み補完辞書データのノードの下流のノードと前記検索キーの未確定ひらがなとの一致を判断し、
前記綴り補完辞書データから前記特定したノードと、当該特定したノードの下流のノードであり、前記検索キーの未確定ひらがなと一致すると判断された前記読み補完辞書データのノードに対応したノードと、当該下流のノードと同一の補完単位番号が付与されているさらに下流のノードとの綴りを読み出し、読み出した綴りを結合した変換候補を取得する、
ことを特徴とする請求項１に記載の文字列入力装置。
【請求項７】
入力済みの文章のデータから所定の閾値より出現頻度の高い単語列を特定し、当該特定した単語列に対応した綴り補完辞書データのノード列に同一の補完単位番号を付与して生成した新たなノード列を前記綴り補完辞書データに追加するとともに、当該追加したノード列に対応したノード列を前記読み補完辞書データに追加する辞書生成部をさらに備えることを特徴とする請求項１から請求項６のいずれかの項に記載の文字列入力装置。
【請求項８】
前記綴り補完辞書データの各最上流のノードについて、当該最上流のノードを先頭とするノード列の数を取得し、取得したノード列の数が所定以下である場合に、当該最上流のノードを先頭とするノード列に同一の補完単位番号を付与して生成した新たなノード列を前記綴り補完辞書データに追加するとともに、当該追加したノード列に対応したノード列を前記読み補完辞書データに追加する辞書生成部をさらに備えることを特徴とする請求項１から請求項６のいずれかの項に記載の文字列入力装置。
【請求項９】
入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置に用いられる文字列入力方法であって、
前記入力装置は、入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語を、ノードとして木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部を備え、
前記文字列入力装置の検索キー生成部が、ユーザの入力に基づき検索キーを生成する検索キー生成過程と、
前記文字列入力装置の変換候補抽出部が、前記検索キー生成過程において生成された検索キーに基づき前記読み補完辞書データ及び前記綴り補完辞書データを検索して当該検索キーに対応した前記綴り補完辞書データのノードを特定し、特定したノードの綴りと、当該特定したノードと同一の補完単位番号が付与されている当該特定したノードの下流のノードの綴りとを前記綴り補完辞書データから読み出して結合した変換候補を取得する変換候補抽出過程と、
前記文字列入力装置の変換候補出力部が、前記変換候補抽出過程において取得した変換候補を出力する変換候補出力過程と、
を有することを特徴とする文字列入力方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文字列入力装置及び文字列入力方法に関し、特に、コールセンタなどにおける入力作業に好適な文字列入力装置及び文字列入力方法に関する。
【背景技術】
【０００２】
コンピュータなどの装置に自然言語としての文字列を入力する場合、言語の種類に応じた入力変換をおこなうことで、キーボードなどから入力された文字列を自然言語に変換することが一般的におこなわれている。このような入力変換としては、キーボードなどからの入力をキーとして辞書データを検索し、候補となる単語を抽出して画面に表示し、その中からユーザが選択することによって入力する方法が一般的である。しかしながら、このような方法では、入力中の文字列以前の文字列（確定文字列）については何ら考慮せずに、読みに基づいた変換候補をすべて表示するため、入力文字数が少ない場合などには、変換候補の数が非常に多くなってしまうという不都合があった。そこで、先行して入力された単語との関係（頻度など）を用いて、次に入力されると思われる単語を変換候補として表示する技術がある（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−２３３６０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特定の業務においてユーザがコンピュータを利用する場合、同じ文章や、慣用句などの表現を何度も入力することがある。しかし、特許文献１に開示されている手法では、先行して入力された単語との関係（頻度など）を用いて、次に入力されると思われる単語を変換候補として表示していくため、よく使用する文章や慣用句であっても、先頭から順に単語を選択し、確定していく操作が必要となり、これは煩雑な操作であった。例えば、このような不都合は、電話による応対の内容をリアルタイムに入力する必要のあるコールセンタの作業などにおいて問題となることが多く、より効率的に文字列入力を行なうことが望まれている。そこで、よく使用する表現を辞書に登録し、少ない変換回数で入力変換することが考えられるが、この場合、その表現を構成する単語列が長くなるほど変換候補の数も増えてしまい、文字列を入力するユーザにとって、必ずしも入力の効率化には結びつかない。また、よく入力する表現は時間の経過とともに変化していくことも多く、辞書データを更新していくことが必要となるが、辞書を作成する側にとっても、長い単語列からなる表現が含まれる辞書データを、更新が必要となる度に構築することは現実的ではない。
【０００５】
本発明は、このような事情を考慮してなされたものであり、その目的は、効率的に作成可能な辞書データを用いて、複数の単語からなる使用頻度の高い表現を簡易な操作によって入力することができる文字列入力装置及び文字列入力方法を提供することにある。
【課題を解決するための手段】
【０００６】
上述した課題を解決するために、本発明は、入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置であって、入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語を、ノードとして木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部と、ユーザの入力に基づき検索キーを生成する検索キー生成部と、前記検索キー生成部により生成された検索キーに基づき前記読み補完辞書データ及び前記綴り補完辞書データを検索して当該検索キーに対応した前記綴り補完辞書データのノードを特定し、特定したノードの綴りと、当該特定したノードと同一の補完単位番号が付与されている当該特定したノードの下流のノードの綴りとを前記綴り補完辞書データから読み出して結合した変換候補を取得する変換候補抽出部と、前記変換候補抽出部が取得した変換候補を出力する変換候補出力部と、を備えることを特徴とする文字列入力装置である。
【０００７】
また、上述した課題を解決するために、本発明は、上述する文字列入力装置であって、前記変換候補抽出部は、前記検索キーが未確定ひらがなからなる場合、前記読み補完辞書データから当該検索キーと完全一致する最上流のノードを検出し、検出した当該ノードに対応した前記綴り補完辞書データのノード及び１つ下流のノードを特定し、当該特定したノード及び１つ下流のノードの綴りと、当該１つ下流のノードと同一の補完単位番号が付与されている当該１つ下流のノードのさらに下流のノード綴りとを結合した変換候補を取得する、ことを特徴とする。
【０００８】
また、上述した課題を解決するために、本発明は、上述する文字列入力装置であって、前記変換候補抽出部は、前記検索キーが確定文字からなる場合、前記綴り補完辞書データから検索キーと前方一致かつ部分一致する最上流のノードを特定し、当該特定したノードの綴りと、当該特定したノードと同一の補完単位番号が付与されている当該特定したノードの下流のノードの綴りとを結合した変換候補を取得する、ことを特徴とする。
【０００９】
また、上述した課題を解決するために、本発明は、上述する文字列入力装置であって、前記変換候補抽出部は、前記検索キーが確定文字からなる場合、前記綴り補完辞書データから検索キーと完全一致する最上流のノードと、当該特定したノードの１つ下流のノードを特定し、当該特定したノード及び１つ下流のノードの綴りと、当該１つ下流のノードと同一の補完単位番号が付与されている当該１つ下流のノードのさらに下流のノード綴りとを結合した変換候補を取得する、ことを特徴とする。
【００１０】
また、上述した課題を解決するために、本発明は、上述する文字列入力装置であって、前記変換候補抽出部は、前記検索キーが確定文字及び未確定ひらがなからなる未確定文字列からなる場合、当該検索キーの確定文字によって、前記綴り補完辞書データの最も上流のノードを検索して一致するノードを特定し、特定したノードに対応する前記読み補完辞書データのノードの下流のノードと前記検索キーの未確定ひらがなとの一致を判断し、前記綴り補完辞書データから前記特定したノードと、当該特定したノードの下流のノードであり、前記検索キーの未確定ひらがなと一致すると判断された前記読み補完辞書データのノードに対応したノードと、当該下流のノードと同一の補完単位番号が付与されているさらに下流のノードとの綴りを読み出し、読み出した綴りを結合した変換候補を取得する、ことを特徴とする。
【００１１】
また、上述した課題を解決するために、本発明は、上述する文字列入力装置であって、入力済みの文章のデータから所定の閾値より出現頻度の高い単語列を特定し、当該特定した単語列に対応した綴り補完辞書データのノード列に同一の補完単位番号を付与して生成した新たなノード列を前記綴り補完辞書データに追加するとともに、当該追加したノード列に対応したノード列を前記読み補完辞書データに追加する辞書生成部をさらに備えることを特徴とする。
【００１２】
また、上述した課題を解決するために、本発明は、上述する文字列入力装置であって、前記綴り補完辞書データの各最上流のノードについて、当該最上流のノードを先頭とするノード列の数を取得し、取得したノード列の数が所定以下である場合に、当該最上流のノードを先頭とするノード列に同一の補完単位番号を付与して生成した新たなノード列を前記綴り補完辞書データに追加するとともに、当該追加したノード列に対応したノード列を前記読み補完辞書データに追加する辞書生成部をさらに備えることを特徴とする。
【００１３】
また、上述した課題を解決するために、本発明は、入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置に用いられる文字列入力方法であって、前記入力装置は、入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語を、ノードとして木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部を備え、前記文字列入力装置の検索キー生成部が、ユーザの入力に基づき検索キーを生成する検索キー生成過程と、前記文字列入力装置の変換候補抽出部が、前記検索キー生成過程において生成された検索キーに基づき前記読み補完辞書データ及び前記綴り補完辞書データを検索して当該検索キーに対応した前記綴り補完辞書データのノードを特定し、特定したノードの綴りと、当該特定したノードと同一の補完単位番号が付与されている当該特定したノードの下流のノードの綴りとを前記綴り補完辞書データから読み出して結合した変換候補を取得する変換候補抽出過程と、前記文字列入力装置の変換候補出力部が、前記変換候補抽出過程において取得した変換候補を出力する変換候補出力過程と、を有することを特徴とする文字列入力方法である。
【発明の効果】
【００１４】
この発明によれば、ユーザが先頭の文字を入力するだけで、複数の単語列からなる表現を変換候補として表示出力することができるため、効率的に文字列入力を行うことが可能となる。また、入力頻度が高い表現や、限られた表現でしか使用されない単語を含んだ表現を抽出して、一つのノード列として扱うように辞書に登録することができるため、辞書の更新を迅速に行なうことが可能となり、辞書の構築にかかっていた時間や人的リソースを削減することができる。
【図面の簡単な説明】
【００１５】
【図１】本実施形態による入力端末１の構成を示すブロック図である。
【図２】本実施形態による辞書データの構成例を示すブロック図である。
【図３】本実施形態による入力画面の一例を示す模式図である。
【図４】本実施形態による読み補完辞書データの構成例を示す概念図である。
【図５】本実施形態による綴り補完辞書データの構成例を示す概念図である。
【図６】本実施形態による制御部１００によって実現される機能を示す機能ブロック図である。
【図７】本実施形態による、文字列入力処理の動作を説明するためのフローチャートである。
【図８】本実施形態による、検索キー生成処理の動作を説明するためのフローチャートである。
【図９】検索キー生成処理での各種例を示す概念図である。
【図１０】本実施形態による、候補抽出処理の動作を説明するためのフローチャートである。
【図１１】本実施形態による、先頭未確定処理の動作を説明するためのフローチャートである。
【図１２】先頭未確定処理での各種例を示す概念図である。
【図１３】先頭未確定処理での各種例を示す概念図である。
【図１４】先頭未確定処理での各種例を示す概念図である。
【図１５】先頭未確定処理での各種例を示す概念図である。
【図１６】実施形態による、先頭確定処理の動作を説明するためのフローチャートである。
【図１７】先頭確定処理での各種例を示す概念図である。
【図１８】本実施形態による、余剰一致処理の動作を説明するためのフローチャートである。
【図１９】本実施形態による、余剰一致処理の動作を説明するためのフローチャートである。
【図２０】余剰一致処理での各種例を示す概念図である。
【図２１】余剰一致処理での各種例を示す概念図である。
【図２２】余剰一致処理での各種例を示す概念図である。
【図２３】余剰一致処理での各種例を示す概念図である。
【図２４】余剰一致処理での各種例を示す概念図である。
【図２５】余剰一致処理での各種例を示す概念図である。
【図２６】本実施形態による、出力処理の動作を説明するためのフローチャートである。
【図２７】出力処理での各種例を示す概念図である。
【図２８】本実施形態による、出力例を説明するための模式図である。
【図２９】本実施形態による、補完単位番号付与処理の動作を説明するためのフローチャートである。
【図３０】図２９の補完単位番号付与処理での例を示す概念図である。
【図３１】図２９の補完単位番号付与処理での辞書更新例を示す概念図である。
【図３２】本実施形態による、補完単位番号付与処理の動作を説明するためのフローチャートである。
【図３３】図３２の補完単位番号付与処理での辞書更新例を示す概念図である。
【図３４】本発明をサーバ−クライアントシステムに適用した場合の構成例を示すブロック図である。
【発明を実施するための形態】
【００１６】
以下、本発明の一実施形態を、図面を参照して説明する。本実施形態では、本発明を、例えば、コールセンタなどでの入力業務に用いる入力端末に適用した場合を例に説明する。
【００１７】
本実施形態にかかる入力端末１は、例えば、ワークステーションやパーソナルコンピュータなどの情報処理装置から構成されるものとする。以下、本実施形態にかかる入力端末１を、図１を参照して説明する。
図１は、本実施形態による入力端末１の構成を示す概略ブロック図である。図示するように、入力端末１は、制御部１００、入力制御装置２００、出力制御装置３００、記憶部４００などから構成される。
【００１８】
制御部１００は、例えば、ＣＰＵ（Central Processing Unit：中央演算処理装置）や、ワークエリアとなるメモリなどから構成され、記憶部４００に格納されているプログラムを読み出して実行することで、入力端末１の各部を制御するとともに、後述する各処理を実行する。
【００１９】
入力制御装置２００は、例えば、キーボード２１１や、ポインティングデバイス２１２などの入力装置２１０と入力端末１とを接続し、入力装置２１０の操作に応じた入力信号を制御部１００に入力する。本実施形態では、キーボード２１１を用いて文字列の入力がなされ、ポインティングデバイス２１２を用いて入力エリアの選択などが行われるものとする。
【００２０】
出力制御装置３００は、例えば、ディスプレイ装置３１１などの出力装置３１０と入力端末１とを接続し、制御部１００の処理結果などを出力装置３１０に出力する。本実施形態では、予め用意されている入力画面がディスプレイ装置３１１に出力されることにより表示され、入力装置２１０を用いた入力操作が、当該表示された入力画面上で行われるものとする。
【００２１】
記憶部４００は、例えば、ハードディスク装置などの記憶装置から構成され、主に、本実施形態にかかる文字列入力処理に必要な情報を格納する。本実施形態では、記憶部４００に、辞書格納領域４１０、プログラム格納領域４４０、検索された変換候補を記憶する結果テーブル４５０、変換候補の中からユーザが入力装置２１０を用いて選択した文字列によって構成される入力文章を記憶する入力文章格納領域４６０などの記憶領域が確保されるものとする。
【００２２】
辞書格納領域４１０には、入力端末１を用いた文字列入力の際に用いられる辞書データが格納される。本実施形態では、入力端末１を用いた文字列入力において、自然言語としての日本語入力が行われるものとする。この場合、入力端末１は、いわゆるＦＥＰ（Front End Processor）の動作により、キーボード２１１からの入力に応じた入力変換を行う。よって、辞書格納領域４１０には、このような、日本語入力変換の際に参照される辞書データが格納される。この場合、入力端末１は、辞書格納領域４１０に格納されている辞書データを参照することで、変換候補（入力候補）の文字列を選択可能に表示出力する。
【００２３】
本実施形態にかかる辞書データの例を、図２を参照して説明する。図２は、辞書格納領域４１０に格納される辞書データの構成を説明する図である。この図に示すように、辞書格納領域４１０には、基本辞書領域４２０と入力内容別辞書領域４３０とが確保される。基本辞書領域４２０は、入力端末１での日本語入力の際に参照される辞書データのうち、一般的な辞書データ（以下、「基本辞書データ」とする）を格納する領域である。この基本辞書データには、種々の単語と、その品詞や、読みなどを示す情報とが対応付けられている。すなわち、通常の入力用ＦＥＰなどで用いられる一般的な辞書データが、基本辞書データとして基本辞書領域４２０に格納されている。
【００２４】
入力内容別辞書領域４３０は、入力端末１が用いられる業務内容などに基づいて、入力内容に応じて用意された辞書データを格納する領域である。例えば、入力端末１をコールセンタ業務に用いる場合、入力項目が予め規定されているので、特定の入力項目での入力に用いられる単語群から構成される辞書データが入力内容別辞書領域４３０に格納される。すなわち、入力内容別辞書領域４３０には、入力内容毎に用意された専用辞書データが格納される。
【００２５】
一例として、図２に示すような、応対入力辞書データ（Ａ１）４３１や、住所入力辞書データ（Ａ２）４３２などが入力内容別辞書領域４３０に格納される。このような入力内容別辞書データは、入力画面の入力エリアと対応付けられている。ここで、図３は、入力画面の一例を表す図である。例えば、この図に示すような入力画面ＩＳの場合、応対入力辞書データ４３１は、電話応対での応対内容を入力するための入力エリアＡ１と対応付けられる。住所入力辞書データ４３２は、住所情報を入力するための入力エリアＡ２と対応付けられる。すなわち、図３に示したような入力画面ＩＳにおいては、辞書データが対応付けされた入力エリアについては、その入力エリアに入力される内容が規定される。
【００２６】
このような入力内容別に用意された辞書データのそれぞれには、入力される読みに基づいて構成された「読み補完辞書データ」と、変換後の綴りに基づいて構成された「綴り補完辞書データ」と、が一対となって含まれている。すなわち、図２に示すように、応対入力辞書データ（Ａ１）４３１には、読み補完辞書データ４３１Ａと綴り補完辞書データ４３１Ｂとが対応付けられて含まれている。住所入力辞書データ４３２（Ａ２）には、読み補完辞書データ４３２Ａと綴り補完辞書データ４３２Ｂとが対応付けられて含まれている。
【００２７】
入力内容別に用意された辞書データのそれぞれは、このような一対の異なる辞書データによって構成されており、応対入力辞書データ（Ａ１）４３１と住所入力辞書データ（Ａ２）４３２とのそれぞれが１組の辞書データである。よって、仮に、応対入力辞書データ（Ａ１）４３１と住所入力辞書データ（Ａ２）４３２のみが入力内容別辞書領域４３０に格納されているのであれば、入力内容別辞書領域４３０には、２組の辞書データが格納されていることになる。
【００２８】
このような入力内容別辞書データの構成を、図４および図５を参照して説明する。ここでは、入力内容別辞書データの一例として、応対入力辞書データ４３１の構成について説明する。図４は、読み補完辞書データ４３１Ａの構成例を示す概念図であり、図５は、綴り補完辞書データ４３１Ｂの構成例を示す概念図である。なお、本実施形態では、携帯電話のユーザサポート業務を行うコールセンタにおいて、ユーザに対する電話応答時に頻出する語彙を基に、応対入力辞書データ４３１が構成されている場合について説明する。
【００２９】
図４を参照して、読み補完辞書データ４３１Ａの構成例を説明する。
図示するように、読み補完辞書データ４３１Ａは、辞書の要素である単語の「読み」を結節点（ノード）とした、樹状の階層構造（木構造）のバイナリデータによって構成されている。そして、この階層構造は、ｒｏｏｔを頂点とし、係り受けの関係の係り側の文節を構成するノードから、受け側の文節を構成するノードへと順に連結した構成（ノード列）となっている。ここでは、ノード列のうち、ｒｏｏｔに近いほうを上流のノード、ｒｏｏｔから遠いほうを下流のノードと呼ぶ。よって、ｒｏｏｔの１つ下流が最上流のノードとなる。この構成により、文法的に互いに係り受け関係にある単語が、相関的な位置で連結されている状態を示すデータによって辞書が構築される。なお、１つの文節を構成するノードの数は１または複数でありうる。ここで、読み補完辞書データ４３１Ａは、入力される単語の「読み」に基づく辞書であるので、各ノードには、読みを表すひらがなによって見出し語が示されている。図４において、読み補完辞書データ４３１Ａの各ノードの読みは＜＞内に示している。
【００３０】
このような読み補完辞書データ４３１Ａと対をなす綴り補完辞書データ４３１Ｂの構成例を図５に示す。図示するように綴り補完辞書データ４３１Ｂは、読み補完辞書データ４３１Ａと同一の階層構造（木構造）によって構成されており、読み補完辞書データ４３１Ａの各ノードに示された読みに対応する「綴り」が、その読み補完辞書データ４３１Ａのノードに対応する綴り補完辞書データ４３１Ｂのノードの位置に、綴り補完辞書データ４３１Ｂの各ノードの見出し語として構成される。図５において、綴り補完辞書データ４３１Ｂの各ノードの綴りは＜＞内に示している。
【００３１】
つまり、綴り補完辞書データ４３１Ｂは、読み補完辞書データ４３１Ａに含まれている各ノードを、当該ノードの綴りに基づいて構成した辞書データである。例えば、読み補完辞書データ４３１Ａにおいて、読みが「けいたい」であるノードにリンクする綴り補完辞書データ４３１Ｂでのノードでは、「けいたい」の変換後表記、つまり、綴りである「携帯」が対応する。
【００３２】
ここで、読み補完辞書データ４３１Ａおよび綴り補完辞書データ４３１Ｂの各ノードに付されている［］内の記号は、読み補完辞書データ４３１Ａと綴り補完辞書データ４３１Ｂとのノード間のリンクを表すリンクポインタである。つまり、読み補完辞書データ４３１Ａと綴り補完辞書データ４３１Ｂとの間において、［］に同じ記号のリンクポインタが設定されているノード同士は、相互に参照可能であることを示している。ここでは、読み補完辞書データ４３１Ａのリンクポインタには区別のためリンクポインタの記号に「’」を付加している。つまり、綴り補完辞書データ４３１Ｂのノードに付与されたリンクポインタが［ｘｎ］であれば、読み補完辞書データ４３１Ａの対応するノードのリンクポインタは［ｘｎ’］となる。これにより、一対の読み補完辞書データ４３１Ａと綴り補完辞書データ４３１Ｂとは、ノード単位でリンクされていることを表している。
【００３３】
以下、リンクポインタｘｎ’、読みが「＊＊」であるノードをノードｘｎ’「＊＊」または単にノードｘｎ’と記載し、リンクポインタｘｎ、綴りが「＊＊」であるノードをノードｘｎ「＊＊」または単にノードｘｎと記載する。例えば、読み補完辞書データ４３１Ａにおけるリンクポインタａ１’のノードはノードａ１’「けいたい」またはノードａ１’と記載し、綴り補完辞書データ４３１Ｂにおけるリンクポインタａ１のノードはノードａ１「携帯」またはノードａ１と記載する。
【００３４】
また、読み補完辞書データ４３１Ａおよび綴り補完辞書データ４３１Ｂの各ノードに付されている（）内の数値は補完単位番号であり、リンクポインタによって対応する読み補完辞書データ４３１Ａのノードと、綴り補完辞書データ４３１Ｂのノードには、同じ補完単位番号が記述されている。同じ数値の補完単位番号が付与されている相互に連続する隣接したノードは、１つのノード列としてみなす。以下、あるノードｘｎ（またはノードｘｎ’）から、当該ノードｘｎ（ｘｎ’）と同じ補完単位番号が付与され、かつ、当該ノードｘｎ（ｘｎ’）より下流の連続したノードからなるノード列を、ノードｘｎ（ｘｎ’）の同一補完単位ノード列と記載する。なお、少なくとも同じ文節を構成するノードには同じ補完単位番号が付与される。また、同一補完単位ノード列は、１つのノードからなる場合もある。
【００３５】
例えば、綴り補完辞書データ４３１Ｂにおけるノードａ１「携帯」は補完単位番号が１、ノードａ２「の」は補完単位番号が２であるため、異なる同一補完単位ノード列に含まれるノードとしてみなされる。一方、ノードｉ１「携帯」、ノードｉ２「の」、ノードｉ３「画面」は補完単位番号が１であるため、ノードｉ１、ｉ２、ｉ３は同一補完単位ノード列であり、１つのノード列としてみなされる。
【００３６】
また、読み補完辞書データ４３１Ａおよび綴り補完辞書データ４３１Ｂの各ノードに付されている≪≫内の数値は、実際に入力エリアに入力された文章における出現回数を示す。例えば、「新しい」の出現回数が５０回である場合、綴り補完辞書データ４３１Ｂのノードｆ１、ｊ１「新しい」に出現回数５０が設定され、「新しい／携帯／を／買った」（「／」はノードが結合されている位置を示す）の出現回数が５である場合、ノードｆ４「買った」に出現回数５が設定される。なお、出現回数の代わりに、単語が出現する割合や標準偏差など、出現頻度を示す任意の情報を用いることができる。
【００３７】
なお、上記において辞書データは、３階層以下の文節を構成するノードによる階層構造としているが、２階層の文節を構成するノードによる階層構造としてもよく、４階層以上を最大の文節としたノードによる階層構造としてもよい。
【００３８】
上述した図１に示すプログラム格納領域４４０には、制御部１００が実行するプログラムが格納される。そして、制御部１００が、プログラム格納領域４４０に格納されているプログラムを実行することで、本実施形態にかかる文字列入力処理を実行する際の機能が実現される。制御部１００によって実現される機能を図６に示す。
【００３９】
図６は、制御部１００によって実現される機能を示す機能ブロック図である。図示するように、制御部１００は、辞書選択部１１０、検索キー生成部１２０、変換候補抽出部１３０、変換候補出力部１４０、文字列入力部１５０、辞書生成部１６０等の機能を含む。
【００４０】
辞書選択部１１０は、入力画面ＩＳ上の入力エリアのいずれに入力が行われているかを判別し、判別された結果に基づいて、その入力エリアに応じた辞書を辞書格納領域４１０から選択する。
【００４１】
検索キー生成部１２０は、入力が行われている入力エリアから文字列を取得し、検索キーを生成して変換候補抽出部１３０へ引き渡す。
【００４２】
変換候補抽出部１３０は、検索キー生成部１２０が生成した検索キーと辞書選択部１１０によって指定された辞書に基づいて、変換候補語を抽出し、記憶部４００の結果テーブル４５０に記憶する。
【００４３】
変換候補出力部１４０は、変換候補抽出部１３０で抽出された候補語から、後述するように、冗長な部分を削除する。そして、出力制御装置３００との協働により、整形後の文字列を選択可能にディスプレイ装置３１１に表示出力する。
【００４４】
文字列入力部１５０は、入力制御装置２００などとの協働により、変換候補出力部１４０が選択可能にディスプレイ装置３１１に表示出力した整形後の文字列のうち、入力装置２１０によって選択された文字列を、未確定文字列に対応した変換後の文字列、あるいは、確定文字列に続く文字列として入力する。この場合、出力制御装置３００との協働により、選択された文字列を、現在入力作業をおこなっている入力エリアに表示させるとともに、選択された文字列で構成される文章を入力文章格納領域４６０に書き込む。つまり、記憶部４００には、各入力エリアに実際に入力された文章が書き込まれることになる。
【００４５】
辞書生成部１６０は、入力文章格納領域４６０に書き込まれた各入力エリアの文章から出現頻度が所定より高い単語列を、また、辞書データにおいて係り受けの分岐が少ない単語列を検出し、当該入力エリアに対応する読み補完辞書データ及び綴り補完辞書データにおいて、検出した単語列を示すノード列を特定し、特定したノード列に同一の補完番号を付与して生成した新たなノード列を追加する。
【００４６】
本実施形態では、制御部１００がプログラムを実行することで、図６に示す各機能構成が論理的に実現されるが、これらの機能を、例えば、ＡＳＩＣ（Application Specific Integrated Circuit：特定用途向け集積回路）などの物理的な構成によって実現してもよい。
【００４７】
次に、上述した構成を有する入力端末１の動作を説明する。ここでは、入力端末１を用いて文字列入力を行う場合に実行される「文字列入力処理」を、図７〜図２８を参照して説明する。この処理は、例えば、図３に示すような入力画面ＩＳを表示する操作が行われたことを契機に開始されるものとする。
【００４８】
図７は、入力端末１における字列入力処理のフローチャートである。同図において、処理が開始され、オペレータによって入力装置２１０から入力がなされると、入力制御装置２００から制御部１００への入力信号に基づき、辞書選択部１１０は、表示した入力画面ＩＳ上の、どの入力エリアが指定されたかを判別する（Ｓ００１）。すなわち、入力端末１のオペレータによるポインティングデバイス２１２等の操作によって、入力画面ＩＳ上に用意された入力エリアのうち、入力対象となる入力エリアが選択されたか否かを判別する。
【００４９】
いずれかの入力エリアが指定されると（Ｓ００１：ＹＥＳ）、辞書選択部１１０は、指定された入力エリアが特定の入力エリアであるか否かを判別する（Ｓ００２）。本実施形態では、辞書データが対応付けられた入力エリアであって、入力内容別辞書を用いた変換入力の対象となっている入力エリアを特定の入力エリアとする。ここでは、応対内容を入力するための入力エリアＡ１と住所を入力するための入力エリアＡ２（図３参照）が該当する。
【００５０】
指定された入力エリアが、特定の入力エリアではないと判定された場合（Ｓ００２：ＮＯ）、基本辞書領域４２０の基本辞書データを参照し、通常の入力変換動作によって文字列入力が行われる（Ｓ１００）。
【００５１】
一方、特定の入力エリアが指定されたと判定された場合（Ｓ００２：ＹＥＳ）、辞書選択部１１０は、指定された入力エリアの種別を検出する。ここでは、入力エリアＡ１が指定された場合には、その入力エリアに対応づけされている識別子「Ａ１」が検出され、入力エリアＡ２が指定された場合には、その入力エリアに対応付けされている識別子「Ａ２」が検出される。
【００５２】
辞書選択部１１０は、識別子を検出すると、入力内容別辞書領域４３０にアクセスし、検出された識別子に対応する辞書データを選択する（Ｓ００３）。図２に示すように、入力内容別辞書領域４３０に格納されている複数組の入力内容別辞書データには、対応する入力エリアを示す識別子（図２の例では「Ａ１」と「Ａ２」）が付与されている。よって、辞書選択部１１０は、検出された識別子に基づいて、対応する識別子が付与されている辞書データを選択する。以下、本実施形態では、入力エリアＡ１に文字列入力を行うものとして説明する。よって、ここでは、応対入力辞書データ（Ａ１）４３１が選択される。
【００５３】
使用する辞書データを選択すると、辞書選択部１１０は、選択した辞書データがいずれであるかを変換候補抽出部１３０に通知するとともに、指定された入力エリアを検索キー生成部１２０に通知する。
【００５４】
辞書選択部１１０から入力エリアの通知を受けると、検索キー生成部１２０は、指定された入力エリアにある文字列を取得して検索キーを生成する（Ｓ２００）。検索キーの生成には、種々の方法が考えられるが、本実施形態では、後述する図８に示すフローチャートに従って検索キーを生成する。
【００５５】
変換候補抽出部１３０は、Ｓ２００において生成された検索キーを検索キー生成部１２０から受け取ると、当該検索キーを用いて辞書選択部１１０がＳ００３において選択した辞書から変換候補を抽出し、検索結果として出力する（Ｓ３００）。検索結果としての候補語が抽出されなければ（Ｓ００４：ＮＯ）、変換候補抽出部１３０は、図８に示す検索キー生成を行う。候補語の抽出に成功していれば（Ｓ００４：ＹＥＳ）、変換候補出力部１４０は、Ｓ３００において出力された検索結果を候補表示するための整形を行う（Ｓ４００）。
【００５６】
Ｓ４００の後、入力装置２１０による入力が行われなかった場合（Ｓ００５：ＮＯ）、あるいは、現在指定されている入力エリアにさらに文字が入力された場合（Ｓ００５：ＹＥＳ、Ｓ００６：ＹＥＳ）、再び、Ｓ２００からの処理を行う。一方、入力装置２１０による入力が、現在指定されている入力エリアへの文字入力でもなく、終了指示の入力でもない場合（Ｓ００６：ＮＯ、Ｓ００７：ＮＯ）、Ｓ００１からの処理を行い、終了指示の入力である場合（Ｓ００６：ＮＯ、Ｓ００７：ＹＥＳ）、処理を終了する。
【００５７】
次に、図８及び図９を参照して、検索キー生成部１２０の動作を説明する。図８は、図７のＳ２００において検索キー生成部１２０が実行する検索キー生成処理のフローチャートを示し、図９は、検索キー生成処理における例を示す。
図７のＳ２００において、検索キー生成処理が実行された場合、図８において、検索キー生成部１２０は、まず、指定された入力エリア中の文字列を取得する（Ｓ２０１）。一般に、入力エリアには、変換終了した確定文字列と、変換すべく入力作業中の未確定文字列とが混在している。そして、未確定文字列には、ＦＥＰが機能する前の「ひらがな」状態と、ＦＥＰが機能して漢字などの変換候補が暫定的に表示された状態とがある。以降において、未確定文字列部分は、明細書中では『』により囲まれた文字によって、図中は下線付加によって示すこととする。「確定文字列＋未確定文字列」の例は、図９（ａ）に示すようになる。ここでは、「携帯電話」の文字列を入力する場合において、「携帯」の文字列の漢字が確定しており、『でんわ』の部分がＦＥＰが機能する前の未確定文字列である。そして、『でんわ』の文字列が、暫定的に『電話』として変換される。
【００５８】
次いで、検索キー生成部１２０は、得られた文字列のうち、最後の句点「。」以前の文字列を削除する（Ｓ２０２）。その例を図９（ｂ）に示す。ここでは、入力エリア中の文字列「ユーザです。携帯が壊れました。どこのショップ『にも』交換」から、文字列「ユーザです。携帯が壊れました。」を削除し、検索キーを「どこのショップ『にも』交換」としている。
【００５９】
次に、検索キーに未確定部が含まれており、かつ、当該未確定部の右側に確定文字列がある場合には、検索キーから削除（除外）する（Ｓ２０３）。その例を図９（ｃ）に示す。Ｓ２０２において生成された検索キーが「どこのショップ『にも』交換」であった場合、「交換」を削除して検索キー「どこのショップ『にも』」としている。
【００６０】
一般に、文字列中に未確定部が複数存在することはない。したがって、入力エリアの文字列の状態は、次のような場合に限られる。
（１）確定部のみ
（２）確定部＋未確定部
（３）確定部＋未確定部＋確定部
（４）未確定部のみ
（５）未確定部＋確定部
【００６１】
このうち、Ｓ２０３の処理の結果、（３）の場合は（２）の場合に、（５）の場合は（４）の場合に帰着するので、検索キーは、（１）「確定部のみ」、（２）「確定部＋未確定部」、（４）「未確定部のみ」の３通りの場合に限られることとなる。
【００６２】
次に、検索キー生成部１２０は、検索キーを「確定部」と「未確定部」とに分離し（Ｓ２０４）、確定部の長さＬを取得する（Ｓ２０５）。例えば、確定部が「どこのショップ」である場合、Ｌ＝７である。次に検索キー生成部１２０は、確定部の末尾（右端）から左側に長さＬの文字列を取り出して「末尾部」を生成する（Ｓ２０６）。最初の検索キー生成にあっては、末尾部は確定部の長さに等しい。従って、Ｓ２０６で生成される末尾部は「どこのショップ」となる。
最後に、検索キー生成部１２０は、「末尾部」と「未確定部」とを結合する（Ｓ２０７）。この結果、上記例の場合、図９（ｄ）に示す文字列が検索キーとして出力される。つまり、Ｓ２０３において検索キー「どこのショップ『にも』」が抽出され、末尾部が「どこのショップ」である場合、末尾部「どこのショップ」と未確定部『にも』を結合した「どこのショップ『にも』」が検索キーとなる。なお、（１）の場合、「未確定部」がないため、「末尾部」のみが検索キーとなる。このように検索キーが生成されると、続いて、図７のＳ３００の処理を行なう。
【００６３】
なお、図７において、候補語が抽出されなかった場合（Ｓ００４：ＮＯ）、検索キー生成部１２０は、Ｌ＝０か否かを判断する（Ｓ２０９）。Ｌが０の場合（Ｓ２０９：ＹＥＳ）、図７のＳ４００の処理を実行し、Ｌが０ではない場合（Ｓ２０９：ＮＯ）、現在のＬを１減算した値に更新して確定部の左端を一文字減らし、Ｓ２０６からの処理を行ない、Ｓ２０７の実行後は、図７のＳ３００の処理を行なう。
例えば、Ｌ＝７、末尾部が「どこのショップ」のときに候補語が抽出されなかった場合、Ｓ２０６では、確定部の「末尾」である右端から（Ｌ−１）文字を取り出して、末尾部とするため、Ｌ＝６であり、末尾部は「このショップ」となる。そして、Ｓ２０７では、検索キーは「このショップ『にも』」となる。
【００６４】
次に、図１０〜図２５を参照して変換候補抽出部１３０の動作を説明する。
【００６５】
図１０は、図７のＳ３００において変換候補抽出部１３０が実行する候補抽出処理のフローチャートを示す。
図１０において、変換候補抽出部１３０は、まず、検索キーの先頭が「ひらがなのみ」からなる「未確定部」であるか否かを判断する（Ｓ３０１）。そして、検索キーの先頭が「ひらがなのみ」で、かつ「未確定部」である場合には（Ｓ３０１：ＹＥＳ）、「先頭未確定処理」（Ｓ５００）に進み、「ひらがなのみ」からなる「未確定部」でない場合（Ｓ３０１：ＮＯ）には、「先頭確定処理」（Ｓ６００）に進む。
【００６６】
次に、図１０に示す候補抽出処理におけるＳ５００の「先頭未確定処理」について、図１１〜図１５を参照して説明する。図１１は、図１０のＳ５００において変換候補抽出部１３０が実行する先頭未確定処理のフローチャートを示し、図１２〜図１５は、先頭未確定処理の例を示す。
図１１において、変換候補抽出部１３０は、まず、「読み補完辞書」からｒｏｏｔの１つ下流のノードである最上流ノードを一つ取得する（Ｓ５０１）。これをノードｘとする。なお、以降、アルファベット小文字を用いて「ノードｘ」と記載した場合には、読み補完辞書のノードを表し、アルファベット大文字を用いて「ノードＸ」と記載した場合には、ノードｘと対応する、綴り補完辞書のノードを表すものとする。
【００６７】
ノードｘと検索キーとの間に何らかの「前方一致」がある場合、検索キーとノードｘとの長短に応じて、包含関係を次のように定義する。
検索キー  ⊂  ノードｘ  部分一致
検索キー  ＝  ノードｘ  完全一致
検索キー  ⊃  ノードｘ  余剰一致
【００６８】
また、読み補完辞書および綴り補完辞書は、各々、図４および図５に示すように構成されているものとする。ノードｘの読みが「けいたい」の場合を例に、検索キーとの部分一致、完全一致、余剰一致する例は、図１２（ａ）に示す通りである。つまり、検索キーが未確定部『けい』であれば部分一致、検索キーが未確定部『けいたい』であれば完全一致、検索キーが未確定部『けいたいが』であれれば余剰一致である。
なお、前方一致とは検索キーとノードｘとの一致判断にあたり、常に先頭部分（文字列左端）の一致を条件とすることをいう。部分一致だが前方一致ではない例と、余剰一致だが前方一致ではない例とを、図１２（ｂ）に示す。つまり、検索キーが未確定部『たい』であれば部分一致であるが前方一致ではない。また、検索キーが未確定部『わたしのけいたい』であれば余剰一致ではあるが、やはり前方一致ではない。
【００６９】
検索キーとノードｘに何らの一致（前方一致）もない場合（Ｓ５０２：ＮＯ）、変換候補抽出部１３０は、読み補完辞書に比較すべきノードが残っていないか確認する（Ｓ５０６）。比較すべきノードが残っていれば（Ｓ５０６：ＮＯ）、Ｓ５０１へ戻り、まだ比較を行なっていないｒｏｏｔの１つ下流のノードを１つ選択し、このノードをノードｘとして以降の処理を行う。
一方、全てのノードについて比較を行なったため、比較すべきノードが残っていない場合（Ｓ５０６：ＹＥＳ）は、当該先頭未確定処理を終了する。
【００７０】
また、検索キーとノードｘとが、部分一致、完全一致、余剰一致のいずれかの形で前方一致すれば（Ｓ５０２：ＹＥＳ）、変換候補抽出部１３０は、ノードｘに付与されたリンクポインタにより、綴り補完辞書のノードＸを取得する（Ｓ５０３）。
そして、検索キーとノードｘが部分一致する場合（Ｓ５０４：ＹＥＳ）、変換候補抽出部１３０は、綴り補完辞書からノードＸの同一補完単位ノード列の綴りを読み出して結果テーブル４５０に追加する（Ｓ５０５）。このとき、変換候補抽出部１３０は、同一補完単位ノード列の最後のノードの出現回数を綴り補完辞書から読み出し、結合した綴りと対応づけて結果テーブル４５０に書き込む。この例を図１３に示す。ただし、図１３では、結果テーブルに書き込まれる出現回数は省略している。
【００７１】
図１３（ａ）に示すように、例えば、検索キーが未確定文字『けい』であり、ノードｘが読み補完辞書データ４３１Ａにおけるノードａ１’「けいたい」である場合は部分一致するため、綴り補完辞書データ４３１Ｂのノードａ１「携帯」がノードＸとして特定される。ノードａ１「携帯」には補完単位番号「１」が付与され、１つ下流のノードａ２「の」、ノードｃ２「が」、…には補完単位番号「２」が付与されており、補完単位番号が異なっている。従って、変換候補抽出部１３０は、ノードＸのみを同一補完単位ノード列とし、ノードａ１の綴り「携帯」及び出現回数を対応づけて結果テーブル４５０に追加する。
【００７２】
また、検索キーが未確定文字『けい』であり、ノードｘが読み補完辞書データ４３１Ａにおけるノードｄ１’「けいたいででんわ」である場合も部分一致するため、綴り補完辞書データ４３１Ｂのノードｄ１「携帯電話」がノードＸとして特定される。ノードｄ１「携帯電話」には補完単位番号「１」が付与され、１つ下流のノードｄ２「の」には補完単位番号「２」が付与されており、補完単位番号が異なっている。従って、変換候補抽出部１３０は、ノードＸのみを同一補完単位ノード列とし、ノードｄ１の綴り「携帯電話」及び出現回数を対応づけて結果テーブル４５０に追加する。
【００７３】
また、検索キーが未確定文字『けい』であり、ノードｘが読み補完辞書データ４３１Ａにおけるノードｉ１’「けいたい」である場合も部分一致するため、綴り補完辞書データ４３１Ｂのノードｉ１「携帯」がノードＸとして特定される。ノードｉ１「携帯」には補完単位番号「１」が付与されており、下流のノードｉ２「の」、ノードｉ３「画面」にも同じ補完単位番号「１」が付与されている。従って、変換候補抽出部１３０は、ノードｉ１＋ノードｉ２＋ノードｉ３を同一補完単位ノード列とし、ノードｉ１、ｉ２、ｉ３の綴りを結合した「携帯の画面」、及び、ノードｉ３の出現回数を対応付けて結果テーブル４５０に追加する。
【００７４】
一方、図１３（ｂ）に示すように、検索キーが未確定文字『あ』であり、ノードｘが読み補完辞書データ４３１Ａにおけるノードｆ１’「あたらしい」である場合は部分一致するため、綴り補完辞書データ４３１Ｂのノードｆ１「新しい」がノードＸとして特定される。ノードｆ１「新しい」には補完単位番号「１」が付与され、下流のノードｆ２「携帯」、ノードｈ２「パソコン」、…には全て補完単位番号「２」が付与されており、補完単位番号が異なっている。従って、変換候補抽出部１３０は、ノードＸのみを同一補完単位ノード列とし、ノードｆ１の綴り「新しい」及び出現回数を対応付けて結果テーブル４５０に追加する。
【００７５】
また、検索キーが未確定文字『あ』であり、ノードｘが読み補完辞書データ４３１Ａにおけるノードｊ１’「あたらしい」である場合も部分一致するため、綴り補完辞書データ４３１Ｂのノードｊ１「新しい」がノードＸとして特定される。ノードｊ１には補完単位番号「１」が、下流のノードｊ２「パソコン」には補完単位番号「２」が付与されており、補完単位番号が異なっている。従って、変換候補抽出部１３０は、ノードＸのみを同一補完単位ノード列とし、ノードｊ１の綴り「新しい」及び出現回数を対応付けて結果テーブル４５０に追加する。
【００７６】
その後、比較すべき候補がまだ残っていれば（Ｓ５０６：ＮＯ）、Ｓ５０１へ戻る。全てのノードｘについて比較が終了していれば（Ｓ５０６：ＹＥＳ）、当該先頭未確定処理を終了する。
【００７７】
一方、検索キーとノードｘが完全一致する場合（Ｓ５０４：ＮＯ、Ｓ５０７：ＹＥＳ）、変換候補抽出部１３０は、綴り補完辞書から、ノードＸと、当該ノードＸの１つ下流のノードの同一補完単位ノード列の綴りを読み出して結合し、結果テーブル４５０に追加する（Ｓ５０８）。このとき、変換候補抽出部１３０は、同一補完単位ノード列の最後のノードに付加された出現回数を綴り補完辞書から読み出し、綴りと対応づけて結果テーブル４５０に書き込む。この例を図１４に示す。ただし、図１４では、結果テーブルに書き込まれる出現回数は省略している。
【００７８】
図１４（ａ）に示すように、例えば、検索キーが未確定文字『けいたい』であり、ノードｘが読み補完辞書データ４３１Ａにおけるノードａ１’「けいたい」である場合は完全一致するため、綴り補完辞書データ４３１Ｂのノードａ１「携帯」がノードＸとして特定される。変換候補抽出部１３０は、ノードａ１の１つ下流のノードａ２「の」、ノードｃ２「が」、…とその補完単位番号「２」を読み出す。そして、読み出した下流のノードそれぞれについて、同一の補完単位番号が付与されたさらに下流のノードを結合したノード列、ノードａ２「の」＋ノードａ３「画面」、ノードａ２「の」＋ノードｂ３「ありか」、ノードｃ２「が」＋ノードｃ３「壊れた」、…を取得する。よって、変換候補抽出部１３０は、（１）ノードａ１（ノードＸ）とノードａ２＋ノードａ３（同一補完単位ノード列）の綴りを結合した「携帯の画面」、及び、ノードａ３の出現回数の対応づけ、（２）ノードａ１（ノードＸ）とノードａ２＋ノードｂ３（同一補完単位ノード列）の綴りを結合した「携帯のありか」、及び、ノードｂ３の出現回数の対応づけ、（３）ノードａ１（ノードＸ）とノードｃ２＋ノードｃ３（同一補完単位ノード列）の綴りを結合した「携帯が壊れた」、及び、ノードｃ３の出現回数の対応づけ、を結果テーブル４５０に追加する。
【００７９】
また、検索キーが未確定文字『けいたい』であり、ノードｘが読み補完辞書データ４３１Ａにおけるノードｉ１’「けいたい」である場合も完全一致するため、綴り補完辞書データ４３１Ｂのノードｉ１「携帯」がノードＸとして特定される。変換候補抽出部１３０は、ノードｉ１の１つ下流のノードｉ２「の」とその補完単位番号「１」を読み出す。そして、読み出した下流のノードについて、同一の補完単位番号が付与されたさらに下流のノードを結合したノード列、ノードｉ２「の」＋ノードｉ３「画面」…を取得する。よって、変換候補抽出部１３０は、ノードｉ１（ノードＸ）とノードｉ２＋ノードｉ３（同一補完単位ノード列）の綴りを結合した「携帯の画面」、及び、ノードｉ３の出現回数を対応付けて結果テーブル４５０に追加する。
【００８０】
一方、図１４（ｂ）に示すように、例えば、検索キーが未確定文字『ふるい』であり、ノードｘが読み補完辞書データ４３１Ａにおけるノードｋ１’「ふるい」である場合は完全一致するため、綴り補完辞書データ４３１Ｂのノードｋ１「古い」がノードＸとして特定される。ノードｋ１の１つ下流のノードｋ２「携帯」には補完単位番号「１」が付与され、ノードｋ２の１つ下流のノードｋ３には補完単位番号「２」が付与されており、補完単位番号が異なっている。よって、変換候補抽出部１３０は、ノードｋ２のみを同一補完単位ノード列とし、ノードｋ１（ノードＸ）とノードｋ２（同一補完単位ノード列）の綴りを結合した「古い携帯」、及び、ノードｋ２の出現回数の対応付けを結果テーブル４５０に追加する。
【００８１】
一方、図１４（ｃ）に示すように、検索キーが未確定文字『あたらしい』であり、ノードｘが読み補完辞書データ４３１Ａにおけるノードｆ１’「あたらしい」（ノードｘ）である場合は完全一致するため、綴り補完辞書データ４３１Ｂのノードｆ１「新しい」がノードＸとして特定される。ノードｆ１の１つ下流のノードｆ２「携帯」、ノードｈ２「パソコン」、…には補完単位番号「２」が付与され、さらに下流のノードｆ３、ｇ３、ｈ３には補完単位番号「３」が付与されており、補完単位番号が異なっている。よって、変換候補抽出部１３０は、（１）ノードｆ１（ノードＸ）とノードｆ２（同一補完単位ノード列）の綴りを結合した「新しい携帯」、及び、ノードｆ２の出現回数の対応付け、（２）ノードｆ１（ノードＸ）とノードｈ２（同一補完単位ノード列）の綴りを結合した「新しいパソコン」、及び、ノードｈ２の出現回数の対応付け、…を結果テーブル４５０に追加する。
【００８２】
また、検索キーが未確定文字『あたらしい』であり、ノードｘが読み補完辞書データ４３１Ａにおけるノードｊ１’「あたらしい」である場合も完全一致するため、ノードＸとして綴り補完辞書データ４３１Ｂのノードｊ１「新しい」が特定される。ノードｊ１の１つ下流のノードｊ２「パソコン」には補完単位番号「２」が付与されており、さらに下流のノードｊ３「の」、ノードｊ４「発売日」にも補完単位番号「２」が付与されている。よって、変換候補抽出部１３０は、ノードｊ１（ノードＸ）と、ノードｊ２＋ノードｊ３＋ノードｊ４からなる同一補完単位ノード列の綴りを結合した「新しいパソコンの発売日」、及び、ノードｊ４の出現回数を対応づけて結果テーブル４５０に追加する。
【００８３】
その後、比較すべき候補がまだ残っていれば（Ｓ５０６：ＮＯ）、Ｓ５０１へ戻る。全てのノードｘについて比較が終了していれば（Ｓ５０６：ＹＥＳ）、先頭未確定処理を終了する。
【００８４】
また、検索キーとノードｘが部分一致も完全一致もしない場合には、余剰一致となる（Ｓ５０７：ＮＯ）。そこでまず、変換候補抽出部１３０は、ｎに１を代入すると（Ｓ５０９）、読み補完辞書からノードｙｎ−１の１つ下流のノードｙｎを取得する（Ｓ５１０）。ただし、ノードｙ０はノードｘとするため、最初のループにおいては、ノードｙｎ（ｎ＝１）は、ノードｘの１つ下流のノードとなる。
【００８５】
次いで、変換候補抽出部１３０は、まだ余剰キーが生成されていない場合、検索キーからノードｘを削除した余りである余剰キーを生成し、すでに余剰キーが生成されている場合は、現在の余剰キーからノードｙｎ−１を削除して余剰キーを更新する。変換候補抽出部１３０は、余剰キーがノードｙｎに、前方一致を条件として含まれるか（部分一致ないし完全一致するか）判断する（Ｓ５１１）。従って、最初のループにおいては、検索キーからノードｘを削除した余剰キーが、ノードｘの１つ下流のノードｙ１に含まれるかを判断する。
【００８６】
そして、余剰キーがノードｙｎに含まれる場合（Ｓ５１１：ＹＥＳ）、ノードｙｎと対応する綴り補完辞書のノードＹｎを特定し、ノードｙ１に対応したノードＹ１からノードＹｎの同一補完単位ノード列までの綴りをノード列Ｙとして取得する（Ｓ５１２）。従って、最初のループにおいては、ノード列Ｙは、ノードＹ１の同一補完単位ノード列となる。変換候補抽出部１３０は、ノードＸ＋ノード列Ｙの綴りを結果テーブル４５０に追加する（Ｓ５１３）。このとき、変換候補抽出部１３０は、ノード列Ｙの最後のノードの出現回数を綴り補完辞書から読み出し、結合した綴りと対応づけて結果テーブル４５０に書き込む。
【００８７】
一方、Ｓ５１１において、余剰キーがノードｙｎに含まれないと判断した場合（Ｓ５１１：ＮＯ）、変換候補抽出部１３０は、ノードｙｎが前方一致を条件として余剰キーに含まれるか、つまり、余剰キーがノードｙｎに対して余剰一致するかを判断する（Ｓ５１５）。余剰キーがノードｙｎに対して余剰一致する場合（Ｓ５１５：ＹＥＳ）、現在のｎの値に１加算し（Ｓ５１６）、Ｓ５１０からの処理を行う。
例えば、Ｓ５１６において、ｎの値が２に更新された場合、Ｓ５１０において、変換候補抽出部１３０は、読み補完辞書からノードｙ１の１つ下流のノードｙ２を取得する。次いで、Ｓ５１１において、変換候補抽出部１３０は、現在の余剰キーからノードｙ１を削除した余りにより余剰キーを更新し、更新した余剰キーがノードｙ２に、前方一致を条件として含まれるか判断する。
【００８８】
Ｓ５１３の処理の後、あるいは、Ｓ５１５において余剰キーがノードｙｎに対して余剰一致しないと判断された場合（Ｓ５１５：ＮＯ）、比較すべき下流ノード候補がまだ残っていれば（Ｓ５１４：ＮＯ）、Ｓ５０９へ戻る。一方、全てのノードｙ１について比較が終了していれば（Ｓ５１４：ＹＥＳ）、Ｓ５０６へ進む。
【００８９】
余剰キーで示される余りが部分一致、完全一致、余剰一致の例を図１５（ａ）、（ｂ）、（ｃ）に示す。ただし、図１５では、結果テーブルに書き込まれる出現回数は省略している。
【００９０】
図１５（ａ）に示すように、例えば、検索キーが未確定文字『けいたいの』であり、ノードｘが読み補完辞書データ４３１Ａにおけるノードａ１’「けいたい」（ノードｘ）である場合は余剰一致する。変換候補抽出部１３０は、ノードａ１’の１つ下流のノードａ２’「の」、ノードｃ２’「が」を読み補完辞書データ４３１Ａから読み出し、ノードｙ１とする。余剰キーは「の」であるため、変換候補抽出部１３０は、完全一致するノードｙ１の読み「の」を特定する。そして、この特定したノードｙ１であるノードａ２’のリンクポインタにより、綴り補完辞書データ４３１Ｂから、ノードａ２「の」が特定される。変換候補抽出部１３０は、ノードａ２の同一補完単位ノード列として、ノードａ２「の」＋ノードａ３「画面」、ノードａ２「の」＋ノードｂ３「ありか」を読み出し、ノード列Ｙとする。変換候補抽出部１３０は、（１）ノードａ１（ノードＸ）と、ノードａ２＋ノードａ３（ノード列Ｙ）との綴りを結合した「携帯の画面」、及び、ノードａ３の出現回数の対応づけ、（２）ノードａ１（ノードＸ）と、ノードａ２＋ノードｂ３（ノード列Ｙ）との綴りを結合した「携帯のありか」、及び、ノードｂ３の出現回数の対応づけを結果テーブル４５０に追加する。
また、ノードｘが読み補完辞書データ４３１Ａにおけるノードｉ１’「けいたい」（ノードｘ）である場合もノードｙ１（ノードｉ２’「の」）と余剰キー「の」は完全一致し、ノードｉ１（ノードＸ）と、ノードｉ２＋ノードｉ３（ノード列Ｙ）との綴りを結合した「携帯の画面」、及び、ノードｉ３の出現回数の対応づけが結果テーブル４５０に追加される。
【００９１】
一方、図１５（ｂ）に示すように、検索キーが未確定文字『あたらしいぱ』であり、ノードｘが読み補完辞書データ４３１Ａにおけるノードｆ１’「あたらしい」である場合は余剰一致する。変換候補抽出部１３０は、ノードｆ１’の１つ下流のノードｆ２’「けいたい」、ｈ２’「ぱそこん」を読み補完辞書データ４３１Ａから読み出し、ノードｙ１とする。余剰キーは、「ぱ」であるため、変換候補抽出部１３０は、前方一致かつ部分一致するノードｙ１の読み「ぱそこん」を特定する。そして、この特定したノードｙ１であるノードｈ２’のリンクポインタにより、綴り補完辞書データ４３１Ｂにおいて、ノードｈ２「パソコン」を特定する。ノードｈ２「パソコン」には補完単位番号「２」が付与され、ノードｈ２の１つ下流のノードｈ３には補完単位番号「３」が付与されており、補完単位番号が異なっている。よって、変換候補抽出部１３０は、ノードｈ２のみを同一補完単位ノード列とし、このノードｈ２の同一補完単位ノード列をノード列Ｙとする。変換候補抽出部１３０は、ノードｆ１（ノードＸ）と、ノードｈ２（ノード列Ｙ）の綴りを結合した「新しいパソコン」、及び、ノードｈ２の出現回数の対応づけを結果テーブル４５０に追加する。
【００９２】
また、検索キーが未確定文字『あたらしいぱ』であり、ノードｘが読み補完辞書データ４３１Ａにおけるノードｊ１’「あたらしい」である場合も余剰一致する。変換候補抽出部１３０は、ノードｊ１’の１つ下流のノードｊ２’「ぱそこん」を読み補完辞書データ４３１Ａから読み出し、ノードｙ１とする。余剰キーは「ぱ」であるため、ノードｙ１と前方一致かつ部分一致する。そこで、変換候補抽出部１３０は、ノードｙ１であるノードｊ２’のリンクポインタにより、綴り補完辞書データ４３１Ｂにおいて、ノードｊ２「パソコン」を特定すると、ノードｊ２の同一補完単位ノード列として、ノードｊ２「パソコン」＋ノードｊ３「の」＋ノードｊ４「発売日」を読み出し、ノード列Ｙとする。変換候補抽出部１３０は、ノードｊ１（ノードＸ）と、ノードｊ２＋ノードｊ３＋ノードｊ４（ノード列Ｙ）の綴りを結合した「新しいパソコンの発売日」、及び、ノードｊ４の出現回数を対応づけて結果テーブル４５０に追加する。
【００９３】
また、図１５（ｃ）に示すように、検索キーが未確定文字『あたらしいけいたいの』であり、ノードｘが読み補完辞書データ４３１Ａにおけるノードｆ１’「あたらしい」である場合は余剰一致する。変換候補抽出部１３０は、ノードｆ１’の１つ下流のノードｆ２’「けいたい」、ｈ２’「ぱそこん」を読み補完辞書データ４３１Ａから読み出し、ノードｙ１とする。余剰キーは、「けいたいの」であるため、ノードｆ２’「けいたい」と余剰一致する。そこで、変換候補抽出部１３０は、余剰一致するノードｙ１、つまり、ノードｆ２’「けいたい」の１つ下流のノードｆ３’「を」、ノードｇ３’「の」を読み補完辞書データ４３１Ａから読み出してノードｙ２とするとともに、余剰キーを、「けいたいの」からノードｙ１（ノードｆ２’）を削除した「の」に更新する。
【００９４】
余剰キーは「の」であるため、変換候補抽出部１３０は、完全一致するノードｙ２の読み「の」を特定する。そして、この特定したノードｙ２であるノードｇ３’のリンクポインタにより、綴り補完辞書データ４３１Ｂから、ノードｇ３「の」を特定する。変換候補抽出部１３０は、ノードｇ３「の」の同一補完単位ノード列として、ノードｇ３「の」＋ノードｇ４「発売日」を読み出すとともに、読み出した同一補完単位ノード列の上流ノードであるノードｙ１、つまり、ノードｆ２’のリンクポインタにより、綴り補完辞書データ４３１Ｂのノードｆ２「携帯」をノードＹ１として特定すると、ノードＹ１からノードＹ２の同一補完単位ノード列までをノード列Ｙとする。変換候補抽出部１３０は、ノードｆ１（ノードＸ）と、ノードｆ２＋ノードｇ３＋ノードｇ４（ノード列Ｙ）との綴りを結合した「新しい携帯の発売日」、及び、ノードｇ４の出現回数の対応づけを結果テーブル４５０に追加する。
【００９５】
一方、Ｓ５１５において、余剰キーがノードｙｎに対して余剰一致しないと判断した場合（Ｓ５１５：ＮＯ）、直接、Ｓ５１４へ進む。この例を図１５（ｄ）に示す。
その後、比較すべきノードｙ１がまだ残っていれば（Ｓ５１４：ＮＯ）、Ｓ５０９へ戻る。全てのノードｙ１について比較が終了していれば（Ｓ５１４：ＹＥＳ）、Ｓ５０６へ進む。
【００９６】
図１５（ｄ）に示すように、検索キーが未確定文字『けいたいがこわれたので』である場合、ｎ＝２まで、つまり、余剰キー「がこわれたので」とノードｙ１「が」、及び、余剰キー「こわれたので」とノードｙ２「こわれた」は余剰一致するが、ｎ＝３、つまり、余剰キーが「ので」となった場合、Ｓ５１０においてノードｙ３を取得できなくなるため、Ｓ５１１及びＳ５１５においてＮＯと判定される。
また、検索キーが未確定文字『けいたいがふるい』である場合、ｎ＝１のとき、つまり、余剰キー「がふるい」とノードｙ１「が」は余剰一致するが、ｎ＝２のとき、つまり、余剰キーが「ふるい」となった場合、いずれのノードｙｎとも一致しないため、Ｓ５１１及びＳ５１５においてＮＯと判定される。
【００９７】
次に、図１０に示す候補抽出処理におけるＳ６００の「先頭確定処理」について図１６及び図１７を参照して説明する。図１６は、図１０のＳ６００において変換候補抽出部１３０が実行する先頭確定処理のフローチャートを示し、図１７は、先頭確定処理における例を示す。
図１６のフローで処理される検索キーには、「確定部のみ」の場合と「確定部＋未確定部」の場合とがある。変換候補抽出部１３０は、綴り補完辞書からｒｏｏｔの１つ下流のノードＸを１つ取得する（Ｓ６０１）。ノードＸと検索キーとの間の包含関係の定義は、「先頭未確定処理」の場合と同様である。
検索キー  ⊂  ノードＸ    部分一致
検索キー  ＝  ノードＸ    完全一致
検索キー  ⊃  ノードＸ    余剰一致
【００９８】
また、先頭確定処理においても、一致判断は「前方一致」を条件とする。ノードＸが「携帯」の場合を例とした、検索キーとの部分一致、完全一致、余剰一致の例を図１７（ａ）に示す。つまり、検索キーが確定部「携」であれば部分一致、検索キーが確定部「携帯」であれば完全一致、検索キーが確定部「携帯が」であれれば余剰一致である。
【００９９】
検索キーとノードＸとの間に何らの一致もない場合（Ｓ６０２：ＮＯ）、変換候補抽出部１３０は、綴り補完辞書に、検索キーと比較すべきノードＸが残っていないか確認する（Ｓ６０６）。そして、比較すべきノードＸが残っていれば（Ｓ６０６：ＮＯ）、Ｓ６０１へ戻り、まだ比較を行なっていないｒｏｏｔの１つ下流のノードを１つ選択し、このノードをノードＸとして以降の処理を行う。
【０１００】
一方、全てのｒｏｏｔの１つ下流のノードについて比較を行なったため、比較すべきノードが残っていない場合には（Ｓ６０６：ＹＥＳ）、当該先頭確定処理を終了する。
一方、部分一致の場合には（Ｓ６０４：ＹＥＳ）、変換候補抽出部１３０は、綴り補完辞書からノードＸの同一補完単位ノード列の綴りを読み出して結果テーブル４５０に追加する。このとき、変換候補抽出部１３０は、同一補完単位ノード列の最後のノードに付加された出現回数を綴り補完辞書から読み出し、綴りと対応づけて結果テーブル４５０に書き込む。この例を図１７（ｂ）に示す。ただし、図１７では、結果テーブルに書き込まれる出現回数は省略している。
【０１０１】
図１７（ｂ）に示すように、例えば、検索キーが確定文字「携」であり、ノードＸが綴り補完辞書データ４３１Ｂにおけるノードａ１「携帯」である場合は部分一致する。ノードａ１「携帯」には補完単位番号「１」が付与され、１つ下流のノードａ２「の」、ノードｃ２「が」、…には全て補完単位番号「２」が付与されており、補完単位番号が異なっている。従って、変換候補抽出部１３０は、ノードＸのみを同一補完単位ノード列とし、ノードａ１の綴り「携帯」及び出現回数を対応づけて結果テーブル４５０に追加する。
【０１０２】
また、検索キーが確定文字「携」であり、ノードＸが綴り補完辞書データ４３１Ｂにおけるノードｄ１「携帯電話」である場合も部分一致する。ノードｄ１「携帯電話」には補完単位番号「１」が付与され、１つ下流のノードａ２「の」には補完単位番号「２」が付与されており、補完単位番号が異なっている。従って、変換候補抽出部１３０は、ノードＸのみを同一補完単位ノード列とし、ノードｄ１の綴り「携帯電話」及び出現回数を対応づけて結果テーブル４５０に追加する。
【０１０３】
また、検索キーが確定文字「携」であり、ノードＸが綴り補完辞書データ４３１Ｂにおけるノードｉ１「携帯」である場合も部分一致する。ノードｉ１「携帯」には補完単位番号「１」が付与されており、下流のノードｉ２「の」、ノードｉ３「画面」にも同じ補完単位番号「１」が付与されている。従って、変換候補抽出部１３０は、ノードｉ１＋ノードｉ２＋ノードｉ３を同一補完単位ノード列とし、ノードｉ１、ｉ２、ｉ３の綴りを結合した「携帯の画面」、及び、ノードｉ３の出現回数を対応付けて結果テーブル４５０に追加する。
【０１０４】
そして、比較すべきノードがまだ残っていれば（Ｓ６０６：ＮＯ）、Ｓ６０１へ戻る。全てのノードＸについて比較が終了していれば（Ｓ６０６：ＹＥＳ）、当該先頭確定処理を終了する。
【０１０５】
一方、完全一致の場合（Ｓ６０４：ＮＯ、Ｓ６０７：ＹＥＳ）、変換候補抽出部１３０は、綴り補完辞書から、綴り補完辞書のノードＸと、当該ノードＸの１つ下流のノードの同一補完単位ノード列の綴りを読み出して結合し、結果テーブル４５０に追加する（Ｓ６０８）。このとき、変換候補抽出部１３０は、ノード列の最後のノードに付加された出現回数を綴り補完辞書から読み出し、綴りと対応づけて結果テーブル４５０に書き込む。この例を図１７（ｃ）に示す。
【０１０６】
図１７（ｃ）に示すように、例えば、検索キーが確定文字「新しい」であり、ノードＸが綴り補完辞書データ４３１Ｂにおけるノードｆ１「新しい」である場合は完全一致する。ノードｆ１の１つ下流のノードｆ２「携帯」、ノードｈ２「パソコン」、…には補完単位番号「２」が付与され、さらに下流のノードｆ３、ｇ３には補完単位番号「３」が付与されており、補完単位番号が異なっている。よって、変換候補抽出部１３０は、（１）ノードｆ１（ノードＸ）とノードｆ２（同一補完単位ノード列）の綴りを結合した「新しい携帯」、及び、ノードｆ２の出現回数の対応付け、（２）ノードｆ１（ノードＸ）とノードｈ２（同一補完単位ノード列）の綴りを結合した「新しいパソコン」、及び、ノードｈ２の出現回数の対応付け、…を結果テーブル４５０に追加する。
【０１０７】
また、検索キーが確定文字「新しい」であり、ノードＸが綴り補完辞書データ４３１Ｂにおけるノードｊ１「新しい」である場合も完全一致する。ノードｊ１の１つ下流のノードｊ２「パソコン」には補完単位番号「２」が付与されており、さらに下流のノードｊ３「の」、ノードｊ４「発売日」にも補完単位番号「２」が付与されている。よって、変換候補抽出部１３０は、ノードｊ１（ノードＸ）と、ノードｊ２＋ノードｊ３＋ノードｊ４からなる同一補完単位ノード列の綴りを結合した「新しいパソコンの発売日」、及び、ノードｊ４の出現回数を対応づけて結果テーブル４５０に追加する。
【０１０８】
次いで、変換候補抽出部１３０は綴り補完辞書に比較すべきノードが残っていないか確認する（Ｓ６０６）。比較すべきノードが残っていれば（Ｓ６０６：ＮＯ）、Ｓ６０１へ戻る。一方、比較すべきノードが残っていない場合には（Ｓ６０６：ＹＥＳ）、当該先頭確定処理を終了する。
【０１０９】
また、部分一致でも完全一致でもない場合は余剰一致となる（Ｓ６０７：ＮＯ）。変換候補抽出部１３０は、後述する余剰一致処理（Ｓ７００）を行い、綴り補完辞書に比較すべきノードが残っていないか確認する（Ｓ６０６）。比較すべきノードが残っていれば（Ｓ６０６：ＮＯ）、Ｓ６０１へ戻る。一方、比較すべきノードが残っていない場合には（Ｓ６０６：ＹＥＳ）、当該先頭確定処理を終了する。
【０１１０】
次に、図１８〜図２５を参照して余剰一致処理について説明する。図１８及び図１９は、図１６のＳ７００において変換候補抽出部１３０が実行する余剰処理のフローチャートを示し、図２０〜図２５は、余剰処理の例を示す。
図１８において、変換候補抽出部１３０は、まず、ｎに１を代入すると（Ｓ７０１）、綴り補完辞書からノードＹｎ−１の１つ下流のノードＹｎを一つ取得する（Ｓ７０２）。ただし、ノードＹ０はノードＸとするため、ノードＹ１はノードＸの１つ下流のノードとなる。ノードＹ１の例を図２０に示す。
【０１１１】
図２０（ａ）に示すように、例えば、検索キーが「携帯『の』」、または、「携帯の」であり、ノードＸが綴り補完辞書データ４３１Ｂにおけるノードａ１「携帯」である場合、ノードａ２「の」、及び、ノードｃ２「が」がノードＹ１として選択される。
また、ノードＸが綴り補完辞書データ４３１Ｂにおけるノードｉ１「携帯」である場合、ノードｉ２「の」がノードＹ１として選択される。
【０１１２】
一方、図２０（ｂ）に示すように、検索キーが「新しい『ぱ』」であり、ノードＸが綴り補完辞書データ４３１Ｂにおけるノードｆ１「新しい」である場合、一つ下流のノードｆ２「携帯」、及び、ｈ２「パソコン」がノードＹ１として選択される。
また、検索キーが「新しい『ぱ』」であり、ノードＸが綴り補完辞書データ４３１Ｂにおけるノードｊ１「新しい」である場合、ノードｊ２「パソコン」がノードＹ１として選択される。
【０１１３】
次いで、変換候補抽出部１３０は、検索キーからノードＹｎ−１を削除した余りキーαｎを生成すると、この余りキーαｎが「ひらがなのみ」からなる「未確定部」であるか否か判断する（Ｓ７０３）。ここで、図２１（ａ）にＳ７０３がＹＥＳの例を示し、図２１（ｂ）にＳ７０３がＮＯの例を示す。図２１（ａ）には、検索キーが「携帯『のが』」である場合、余りキーα１が未確定部『のが』となることが、図２１（ｂ）には、検索キーが「携帯の『が』」である場合、余りキーα１が確定部と未確定部が含まれる「の『が』」となることを示している。
【０１１４】
余りαｎが「ひらがなのみ」からなる「未確定部」である場合には（Ｓ７０３：ＹＥＳ）、変換候補抽出部１３０は、読み補完辞書から、ノードＹｎ−１の１つ下流のノードＹｎと対応するノードｙｎを検索して取得する（Ｓ７０４）。そして、変換候補抽出部１３０は、余りキーαｎが前方一致し、かつ、ノードｙｎと部分一致ないし完全一致するか判定する（Ｓ７０５）。
【０１１５】
そして、余りキーαｎがノードｙｎと前方一致し、かつ、部分一致ないし完全一致する場合（Ｓ７０５：ＹＥＳ）、変換候補抽出部１３０は、綴り補完辞書より、ノードＹ１からノードＹｎの同一補完単位ノード列までの綴りをノード列Ｙとして取得すると、ノードＸとノード列Ｙの綴り結合し、結果テーブル４５０に追加する（Ｓ７０６）。このとき、変換候補抽出部１３０は、ノード列Ｙの最後のノードの出現回数を綴り補完辞書から読み出し、綴りと対応づけて結果テーブル４５０に書き込む。
【０１１６】
一方、Ｓ７０５において、余りキーαｎがノードｙｎに含まれないと判断した場合（Ｓ７０５：ＮＯ）、変換候補抽出部１３０は、ノードｙｎが前方一致を条件として余りキーαｎに含まれるか、つまり、余りキーαｎがノードｙｎに対して余剰一致するかを判断する（Ｓ７０８）。余りキーαｎがノードｙｎに対して余剰一致する場合（Ｓ７０８：ＹＥＳ）、現在のｎの値に１加算し（Ｓ７０９）、余りキーαｎ−１からノードｙｎ−１を削除して余りキーαｎを生成すると（Ｓ７１０）、Ｓ７０４からの処理を行なう。
例えば、Ｓ７０９において、ｎの値が２に更新された場合、Ｓ７１０において、変換候補抽出部１３０は、余りキーα１からノードｙ１を削除した余りにより余りキーα２を生成し、Ｓ７０４において、ノードｙ１の１つ下流のノードｙ２を取得する。次いで、生成した余りキーα２がノードｙ２に、前方一致を条件として含まれるか判断する。
上記例を図２２に示す。ただし、図２２では、結果テーブルに書き込まれる出現回数は省略している。Ｓ７０６の処理の後、変換候補抽出部１３０は、Ｓ７０７へ進む。
【０１１７】
図２２（ａ）に示すように、検索キーが「新しい『ぱ』」、余りキーα１が『ぱ』、ノードＸがノードｆ１「新しい」、ノードＹ１がノードｆ２「携帯」、ノードｈ２「パソコン」である場合、変換候補抽出部１３０は、ノードｙ１として、読み補完辞書データ４３１Ａからノードｆ２’の読み「けいたい」、ノードｈ２’の読み「ぱそこん」を取得する。余りキーα１とノードｈ２’の読みは前方一致かつ部分一致するため、変換候補抽出部１３０は、綴り補完辞書データ４３１Ｂにおいて、ノードｈ２’に対応したノードｈ２を特定する。ノードｈ２「パソコン」には補完単位番号「２」が付与され、ノードｈ２の１つ下流のノードｈ３には補完単位番号「３」が付与されており、補完単位番号が異なっているため、変換候補抽出部１３０は、ノードｈ２のみを同一補完単位ノード列とし、このノードｈ２の同一補完単位ノード列をノード列Ｙとする。ノード変換候補抽出部１３０は、ノードｆ１（ノードＸ）と、ノードｈ２（ノード列Ｙ）の綴りを結合した「新しいパソコン」、及び、ノードｈ２の出現回数を対応づけて結果テーブル４５０に追加する。
【０１１８】
また、検索キーが「新しい『ぱ』」、余りキーα１が『ぱ』、ノードＸがノードｊ１「新しい」、ノードＹ１がノードｊ２「パソコン」である場合、変換候補抽出部１３０は、ノードｙ１として、読み補完辞書データ４３１Ａからノードｊ２’の読み「ぱそこん」を取得する。余りキーα１『ぱ』とノードｊ２’の読みは前方一致かつ部分一致する。変換候補抽出部１３０は、ノードｊ２の同一補完単位ノード列として、ノードｊ２「パソコン」＋ノードｊ３「の」＋ノードｊ４「発売日」を綴り補完辞書データ４３１Ｂから読み出し、ノード列Ｙとする。変換候補抽出部１３０は、ノードｊ１（ノードＸ）と、ノードｊ２＋ノードｊ３＋ノードｊ４（ノード列Ｙ）の綴りを結合した「新しいパソコンの発売日」、及び、ノードｊ４の出現回数を対応づけて結果テーブル４５０に追加する。
【０１１９】
一方、図２２（ｂ）に示すように、検索キーが「新しい『ぱそこんの』」、余りキーα１が『ぱそこんの』、ノードＸがノードｆ１「新しい」、ノードＹ１がノードｆ２「携帯」、ノードｈ２「パソコン」である場合、変換候補抽出部１３０は、ノードｙ１として、読み補完辞書データ４３１Ａからノードｆ２’の読み「けいたい」、ノードｈ２’の読み「ぱそこん」を取得する。余りキーα１はノードｈ２’の読みと余剰一致するため、変換候補抽出部１３０は、余りキーα１からノードｈ２’（ノードｙ１）を削除した余りキーα２『の』を生成するとともに、読み補完辞書データ４３１Ａからノードｈ２’の１つ下流のノードｈ３’「の」を読み出してノードｙ２とする。余りキーα２とノードｈ３’は完全一致するため、変換候補抽出部１３０は、綴り補完辞書データ４３１Ｂにおいて、ノードｈ３の同一補完単位ノード列として、ノードｈ３「の」＋ノードｈ４「発売日」を特定すると、ノードＹ１からノードＹ２の同一補完単位ノード列までをノード列Ｙとする。変換候補抽出部１３０は、ノードｆ１（ノードＸ）と、ノードｈ２＋ノードｈ３＋ノードｈ４（ノード列Ｙ）の綴りを結合した「新しいパソコンの発売日」、及び、ノードｈ４の出現回数を対応づけて結果テーブル４５０に追加する。
【０１２０】
また、検索キーが「新しい『ぱそこんの』」、余りキーα１が『ぱそこんの』、ノードＸがノードｊ１「新しい」である場合も同様の処理により、ノードｊ１（ノードＸ）と、ノードｊ２＋ノードｊ３＋ノードｊ４（ノード列Ｙ）の綴りを結合した「新しいパソコンの発売日」、及び、ノードｊ４の出現回数の対応付けが結果テーブル４５０に追加される。
【０１２１】
一方、余りキーαｎがノードｙｎに対して余剰一致しない場合（Ｓ７０８：ＮＯ）、すなわち、図２２（ｃ）に示すような場合には、直接、Ｓ７０７へ進む。
図２２（ｃ）に示すように、例えば、検索キーが「携帯『から』」、余りキーα１が『から』である場合、ノードＸがノードａ１、ｉ１「携帯」のいずれであっても、ノードｙ１と余りキーは部分一致も完全一致も余剰一致もしない。
また、検索キーが「携帯『のがめんがきえた』」である場合、ｎ＝２まで、つまり、余りキーα１「のがめんがきえた」とノードｙ１「の」、余りキーα２「がめんがきえた」とノードｙ２「がめん」は余剰一致するが、ｎ＝３のとき、つまり、余りキーα３が「がきえた」となったところで、Ｓ７０４でノードＹ４、ノードｙ４が取得できず、Ｓ７０５及びＳ７０８においてＮＯと判定される。
【０１２２】
その後、比較すべきノードＹ１がまだ残っていれば（Ｓ７０７：ＮＯ）、Ｓ７０１へ戻り、まだ比較を行なっていないノードＹ１を１つ選択して以降の処理を行う。一方、全てのノードＹ１について比較が終了していれば（Ｓ７０７：ＹＥＳ）、当該余剰一致処理を終了する。
【０１２３】
また、余りキーαｎの中に確定文字列があるか、未確定部のみであっても、ひらがなだけではない場合（Ｓ７０３：ＮＯ）、変換候補抽出部１３０は、余りキーαｎがノードＹｎと部分一致または完全一致するか判定する（Ｓ７１１）。そして、余りキーαｎがノードＹｎと部分一致または完全一致する場合（Ｓ７１１：ＹＥＳ）、変換候補抽出部１３０は、綴り補完辞書より、ノードＹ１からノードＹｎの同一補完単位ノード列までの綴りをノード列Ｙとして取得すると、ノードＸとノード列Ｙの綴りを結合し、結果テーブル４５０に追加する（Ｓ７１２）。この例を図２３（ａ）、（ｂ）に示す。ただし、図２３では、結果テーブルに書き込まれる出現回数は省略している。その後、Ｓ７０７へ進む。
【０１２４】
図２３（ａ）において、検索キーが「携帯の」、余りキーα１が「の」であり、ノードＸがノードａ１「携帯」、ノードＹ１がノードａ２「の」である場合、変換候補抽出部１３０は、ノードＹ１と余りキーα１が完全一致すると判断する（Ｓ７１１：ＹＥＳ）。変換候補抽出部１３０は、ノードａ２の同一補完単位ノード列として、ノードａ２「の」＋ノードａ３「画面」、及び、ノードａ２「の」＋ノードｂ３「ありか」を綴り補完辞書データ４３１Ｂから読み出し、ノード列Ｙとする。変換候補抽出部１３０は、（１）ノードａ１と、ノードａ２＋ノードａ３（ノード列Ｙ）の綴りを結合した「携帯の画面」、及び、ノードａ３の出現回数の対応付け、（２）ノードａ１と、ノードａ２＋ノードｂ３（ノード列Ｙ）の綴りを結合した「携帯のありか」、及び、ノードｂ３の出現回数の対応付けを結果テーブル４５０に追加する。
なお、ノードＸがノードｉ１「携帯」、ノードＹ１がノードｉ２「の」である場合も同様に、「携帯の画面」、及び、ノードｉ３の出現回数の対応付けがが結果テーブル４５０に追加される。
【０１２５】
図２３（ｂ）において、検索キーが「新しいパ」、余りキーα１が「パ」、ノードＸがノードｆ１「新しい」、ノードＹ１がノードｈ２「パソコン」である場合、変換候補抽出部１３０は、ノードＹ１と余りキーα１が部分一致すると判断する（Ｓ７１１：ＹＥＳ）。ノードｈ２「パソコン」には補完単位番号「２」が付与され、ノードｈ２の１つ下流のノードｈ３には補完単位番号「３」が付与されており、補完単位番号が異なっているため、変換候補抽出部１３０は、ノードｈ２のみを同一補完単位ノード列とし、このノードｈ２の同一補完単位ノード列をノード列Ｙとする。ノード変換候補抽出部１３０は、ノードｆ１（ノードＸ）と、ノードｈ２（ノード列Ｙ）の綴りを結合した「新しいパソコン」、及び、ノードｈ２の出現回数を対応づけて結果テーブル４５０に追加する。
【０１２６】
また、検索キーが「新しいパ」、余りキーα１が「パ」、ノードＸがノードｊ１「新しい」、ノードＹ１がノードｊ２「パソコン」である場合、変換候補抽出部１３０は、ノードＹ１と余りキーα１が部分一致すると判断する（Ｓ７１１：ＹＥＳ）。変換候補抽出部１３０は、ノードｊ２の同一補完単位ノード列として、ノードｊ２「パソコン」＋ノードｊ３「の」＋ノードｊ４「発売日」を読み出し、ノード列Ｙとする。変換候補抽出部１３０は、ノードｊ１（ノードＸ）と、ノードｊ２＋ノードｊ３＋ノードｊ４（ノード列Ｙ）の綴りを結合した「新しいパソコンの発売日」、及び、ノードｊ４の出現回数を対応づけて結果テーブル４５０に追加する。
【０１２７】
その後、比較すべきノードＹ１がまだ残っていれば（Ｓ７０７：ＮＯ）、Ｓ７０１へ戻る。一方、全てのノードＹ１について比較が終了していれば（Ｓ７０７：ＹＥＳ）、当該余剰一致処理を終了する。
【０１２８】
一方、余りキーαｎがノードＹｎと部分一致も完全一致もしない場合（Ｓ７１１：ＮＯ）、図１９において、変換候補抽出部１３０は、余りキーαｎがノードＹｎを包含するか否か判定する（Ｓ７１３）。そして、余りキーαｎがノードＹｎを包含しない場合（Ｓ７１３：ＮＯ）、すなわち、図２３（ｃ）に示すような場合には、図１８のＳ７０７へ進む。
図２３（ｃ）において、例えば、検索キーが「携帯から」、余りキーα１が「から」である場合、ノードＸがノードａ１、ｉ１「携帯」のいずれであっても、ノードＹ１と余りキーαは部分一致も完全一致もせず、余りキーα１はノードＹ１を包含しない。
【０１２９】
一方、図１９において、余りキーαｎがノードＹｎを包含する場合（Ｓ７１３：ＹＥＳ）、変換候補抽出部１３０は、余りキーαｎから更にノードＹｎを除いた余りキーαｎ＋１を作成し、余りキーαｎ＋１が「ひらがなのみ」からなる「未確定部」であるか否か判定する（Ｓ７１４）。
余りキーαｎ＋１がひらがなのみからなる未確定部である場合（Ｓ７１４：ＹＥＳ）、変換候補抽出部１３０は、ノードＹｎの１つ下流のノードＹｎ＋１と対応するノードｙｎ＋１を読み補完辞書から取得すると（Ｓ７１５）、余りキーαｎ＋１がノードｙｎ＋１と部分一致または完全一致するか判定する（Ｓ７１６）。そして、余りキーαｎ＋１がノードｙｎ＋１と部分一致または完全一致する場合（Ｓ７１６：ＹＥＳ）、変換候補抽出部１３０は、綴り補完辞書より、ノードＹ１からノードＹｎ＋１の同一補完単位ノード列までの綴りをノード列Ｙとして取得すると、ノードＸ＋ノード列Ｙの綴りを結合して、結果テーブル４５０に追加する（Ｓ７１７）。このとき、変換候補抽出部１３０は、ノード列Ｙの最後のノードに付加された出現回数を綴り補完辞書から読み出し、綴りと対応づけて結果テーブル４５０に書き込む。
【０１３０】
一方、Ｓ７１６において、余りキーαｎ＋１がノードｙｎ＋１と部分一致も完全一致もしないと判断した場合（Ｓ７１６：ＮＯ）、変換候補抽出部１３０は、ノードｙｎ＋１が前方一致を条件として余りキーαｎ＋１に含まれるか、つまり、余りキーαｎ＋１がノードｙｎ＋１に対して余剰一致するかを判断する（Ｓ７１８）。余りキーαｎ＋１がノードｙｎ＋１に対して余剰一致する場合（Ｓ７１８：ＹＥＳ）、現在のｎの値に１加算し（Ｓ７１９）、余りキーαｎからノードｙｎを削除して余りキーαｎ＋１を生成すると（Ｓ７２０）、Ｓ７１５からの処理を行なう。
例えば、Ｓ７１９において、ｎの値が２に更新された場合、Ｓ７２０において、変換候補抽出部１３０は、余りキーα２からノードｙ２を削除した余りにより余りキーα３を生成し、Ｓ７１５において、ノードｙ２の１つ下流のノードｙ３を取得する。次いで、Ｓ７１６生成した余りキーα３がノードｙ３に、部分一致または前方一致するかを判断する。
【０１３１】
上記の例を図２４（ａ）、（ｂ）、（ｃ）に示す。ただし、図２４では、結果テーブルに書き込まれる出現回数は省略している。Ｓ７１７の処理の後、図１８のＳ７０７へ進む。
【０１３２】
図２４（ａ）において、検索キーが「携帯の『が』」、余りキーα１が「の『が』」であり、ノードＸがノードａ１「携帯」、ノードＹ１がノードａ２「の」である場合、余りキーα１はノードＹ１を包含する。よって、余りキーα２『が』を作成する。余りキーα２がひらがなのみからなる未確定部であるため（Ｓ７１４：ＹＥＳ）、変換候補抽出部１３０は、ノードＹ１の次のノードであるノードＹ２、つまりノードａ３「画面」に対応したノードａ３’の読み「がめん」をノードｙ２として読み補完辞書データ４３１Ａから読み出す（Ｓ７１５）。ノードｙ２であるノードａ３’「がめん」と、余りキーα２『が』は部分一致する（Ｓ７１６：ＹＥＳ）。綴り補完辞書データ４３１Ｂにおいて、ノードａ３には下流のノードがないため、変換候補抽出部１３０は、ノードａ３のみをノードＹ２の同一補完単位ノード列とし、ノードＹ１からノードＹ２の同一補完単位ノード列までをノード列Ｙとする。変換候補抽出部１３０は、ノードａ１（ノードＸ）と、ノードａ２＋ノードａ３（ノード列Ｙ）の綴りを結合した「携帯の画面」、及び、ノードａ３の出現回数を対応づけて結果テーブル４５０に追加する。
なお、ノードＸがノードｉ１「携帯」、ノードＹ１がノードｉ２「の」である場合も同様の処理により、ノードｉ１（ノードＸ）と、ノードｉ２＋ノードｉ３（ノード列Ｙ）の綴りを結合した「携帯の画面」、及び、ノードｉ３の出現回数の対応付けが結果テーブル４５０に追加される。
【０１３３】
一方、図２４（ｂ）において、検索キーが「新しいパソコン『の』」、余りキーα１が「パソコン『の』」であり、ノードＸがノードｆ１「新しい」、ノードＹ１がノードｈ２「パソコン」である場合、余りキーα１はノードＹ１を包含する。よって、余りキーα２『の』を作成する。余りキーα２がひらがなのみからなる未確定部であるため（Ｓ７１４：ＹＥＳ）、変換候補抽出部１３０は、ノードＹ１の次のノードであるノードＹ２、つまりノードｈ３「の」に対応したノードｈ３’の読み「の」をノードｙ２として読み補完辞書データ４３１Ａから読み出す（Ｓ７１５）。ノードｙ２であるノードｈ３’「の」と、余りキーα２『の』は完全一致するため（Ｓ７１６：ＹＥＳ）、変換候補抽出部１３０は、ノードｈ３の同一補完単位ノード列として、ノードｈ３「の」＋ノードｈ４「発売日」を特定すると、ノードＹ１からノードＹ２の同一補完単位ノード列までをノード列Ｙとする。変換候補抽出部１３０は、ノードｊ１（ノードＸ）と、ノードｈ２＋ノードｈ３＋ノードｈ４（ノード列Ｙ）の綴りを結合した「新しいパソコンの発売日」、及び、ノードｈ４の出現回数を対応づけて結果テーブル４５０に追加する。
また、ノードＸがノードｊ１「新しい」、ノードＹ１がノードｊ２「パソコン」である場合も同様の処理により、ノードｊ１（ノードＸ）と、ノードｊ２＋ノードｊ３＋ノードｊ４（ノード列Ｙ）の綴りを結合した「新しいパソコンの発売日」、及び、ノードｊ４の出現回数の対応付けが結果テーブル４５０に追加される。
【０１３４】
一方、図２４（ｃ）において、検索キーが「新しいパソコン『のは』」、余りキーα１が「パソコン『のは』」であり、ノードＸがノードｆ１「新しい」、ノードＹ１がノードｈ２「パソコン」である場合、余りキーα１はノードＹ１を包含する。よって、余りキーα２『のは』を作成する。余りキーα２がひらがなのみからなる未確定部であるため（Ｓ７１４：ＹＥＳ）、変換候補抽出部１３０は、ノードＹ１の次のノードであるノードＹ２、つまりノードｈ３「の」に対応したノードｈ３’の読み「の」をノードｙ２として読み補完辞書データ４３１Ａから読み出す（Ｓ７１５）。
ノードｙ２と余りキーα２は余剰一致するため（Ｓ７１６：ＮＯ、Ｓ７１８：ＹＥＳ）、変換候補抽出部１３０は、余りキーα２『のは』からノードｙ２を削除し、余りキーα３『は』を作成する（Ｓ７１９、Ｓ７２０）。変換候補抽出部１３０は、ノードｈ３’（ノードｙ２）の１つ下流のノードｈ４’の読み「はつばいび」をノードｙ３として読み補完辞書データ４３１Ａから読み出す（Ｓ７１５）。
【０１３５】
ノードｙ３と余りキーα３は部分一致する（Ｓ７１６：ＹＥＳ）。綴り補完辞書データ４３１Ｂにおいて、ノードｈ４には下流のノードがないため、変換候補抽出部１３０は、ノードｈ４のみをノードＹ３の同一補完単位ノード列とし、ノードＹ１からノードＹ３の同一補完単位ノード列までをノード列Ｙとする。変換候補抽出部１３０は、ノードｊ１（ノードＸ）と、ノードｈ２＋ノードｈ３＋ノードｈ４（ノード列Ｙ）の綴りを結合した「新しいパソコンの発売日」、及び、ノードｈ４の出現回数を対応づけて結果テーブル４５０に追加する。
また、ノードＸがノードｊ１「新しい」、ノードＹ１がノードｊ２「パソコン」である場合も同様の処理により、ノードｊ１（ノードＸ）と、ノードｊ２＋ノードｊ３＋ノードｊ４（ノード列Ｙ）の綴りを結合した「新しいパソコンの発売日」、及び、ノードｊ４の出現回数の対応付けが結果テーブル４５０に追加される。
【０１３６】
一方、余りキーαｎ＋１がノードｙｎ＋１に対して余剰一致しない場合（Ｓ７１８：ＮＯ）、すなわち、図２４（ｄ）に示すような場合には、図１８のＳ７０７へ進む。
【０１３７】
例えば、図２４（ｄ）に示すように、検索キーが「新しいパソコン『が』」、余りキーα１が「パソコン『が』」であり、ノードＸがノードｆ１「新しい」、ノードＹ１がノードｈ２「パソコン」である場合、余りキーα２『が』が作成される。ノードＹ２、つまりノードｈ３「の」に対応したノードｈ３’（ノードｙ２）の読み「の」は、余りキーα２とは部分一致も完全一致も余剰一致もしない。ノードＸがノードｊ１「新しい」、ノードＹ１がノードｊ２「パソコン」である場合も同様である。
その後、比較すべき下流のノードＹ１がまだ残っていれば（Ｓ７０７：ＮＯ）、Ｓ７０１へ戻る。一方、全てのノードＹ１について比較が終了していれば（Ｓ７０７：ＹＥＳ）、当該余剰一致処理を終了する。
【０１３８】
一方、図１９において、余りキーαｎ＋１が「ひらがなのみ」からなる「未確定部」でない場合（Ｓ７１４：ＮＯ）、変換候補抽出部１３０は、余りキーαｎ＋１がノードＹｎの１つ下流のノードＹｎ＋１と部分一致または完全一致するか判定する（Ｓ７２１）。余りキーαｎ＋１とノードＹｎ＋１が部分一致または完全一致の場合（Ｓ７２１：ＹＥＳ）、変換候補抽出部１３０は、綴り補完辞書より、ノードＹ１からノードＹｎ＋１の同一補完単位ノード列までの綴りをノード列Ｙとして取得すると、ノードＸ＋ノード列Ｙを結果テーブル４５０に追加する（Ｓ７２２）。このとき、変換候補抽出部１３０は、ノード列Ｙの最後のノードの出現回数を綴り補完辞書から読み出し、綴りと対応づけて結果テーブル４５０に書き込む。
【０１３９】
一方、Ｓ７２１において、余りキーαｎ＋１がノードｙｎ＋１に含まれないと判断した場合（Ｓ７２１：ＮＯ）、変換候補抽出部１３０は、ノードｙｎ＋１が前方一致を条件として余りキーαｎ＋１に含まれるか、つまり、余りキーαｎ＋１がノードｙｎ＋１に対して余剰一致するかを判断する（Ｓ７２３）。余りキーαｎ＋１がノードｙｎ＋１に対して余剰一致する場合（Ｓ７２３：ＹＥＳ）、現在のｎの値に１加算し（Ｓ７２４）、Ｓ７１４からの処理を行なう。
例えば、Ｓ７２４において、ｎの値が２に更新された場合、Ｓ７１４において、変換候補抽出部１３０は、余りキーα２からノードＹ２を削除した余りにより余りキーα３を生成し、余りキーα３が未確定ひらがなかを判断する。
上記例を図２５（ａ）、（ｂ）、（ｃ）に示す。ただし、図２５においては、結果テーブルに書き込まれる出現回数は省略している。Ｓ７２２の処理の後、あるいは、Ｓ７２３において余りキーαｎ＋１がノードｙｎ＋１に対して余剰一致しないと判断された場合（Ｓ７２３：ＮＯ）、変換候補抽出部１３０は、図１８のＳ７０７へ進む。
【０１４０】
図２５（ａ）において、例えば、検索キーが「新しいパソコンの」、余りキーα１が「パソコンの」であり、ノードＸがノードｆ１「新しい」、ノードＹ１がノードｈ２「パソコン」である場合、余りキーα１「パソコンの」は、ノードＹ１であるノードｈ２「パソコン」を包含するため、余りキーα２「の」を作成する。ノードＹ２、つまりノードｈ３「の」と、余りキーα２は完全一致するため（Ｓ７２１：ＹＥＳ）、変換候補抽出部１３０は、ノードｈ３の同一補完単位ノード列として、ノードｈ３「の」＋ノードｈ４「発売日」を特定すると、ノードＹ１からノードＹ２の同一補完単位ノード列までをノード列Ｙとする。変換候補抽出部１３０は、ノードｆ１（ノードＸ）と、ノードｈ２＋ノードｈ３＋ノードｈ４（ノード列Ｙ）の綴りを結合した「新しいパソコンの発売日」、及び、ノードｈ４の出現回数を対応づけて結果テーブル４５０に追加する。
【０１４１】
また、ノードＸがノードｊ１「新しい」、ノードＹ１がノードｊ２「パソコン」である場合も同様の処理により、ノードｊ１（ノードＸ）と、ノードｊ２＋ノードｊ３＋ノードｊ４（ノード列Ｙ）の綴りを結合した「新しいパソコンの発売日」、及び、ノードｊ４の出現回数の対応づけが結果テーブル４５０に追加される。
【０１４２】
図２５（ｂ）に示すように、例えば、検索キーが「新しいパソコンの発」、余りキーα１が「パソコンの発」であり、ノードＸがノードｆ１「新しい」、ノードＹ１がノードｈ２「パソコン」である場合、余りキーα１「パソコンの発」は、ノードＹ１であるノードｈ２「パソコン」を包含するため、変換候補抽出部１３０は、余りキーα２「の発」を作成するとともに、ノードｈ２「パソコン」の１つ下流のノードであるｈ３の綴り「の」をノードＹ２として綴り補完辞書データ４３１Ｂから読み出す。
余りキーα２はノードＹ２と余剰一致するため（Ｓ７２１：ＮＯ、Ｓ７２３：ＹＥＳ）、変換候補抽出部１３０は、余りキーα２からノードｈ３（ノードＹ２）を削除した余りキーα３「発」を生成する。余りキーα３は未確定ひらがなではないため（Ｓ７１４：ＮＯ）、変換候補抽出部１３０は、ノードｈ３「の」の１つ下流のノードであるｈ４の綴り「発売日」をノードＹ３として綴り補完辞書データ４３１Ｂから読み出す。
【０１４３】
余りキーα３はノードＹ３と部分一致する（Ｓ７２１：ＹＥＳ）。綴り補完辞書データ４３１Ｂにおいて、ノードｈ４には下流のノードがないため、変換候補抽出部１３０は、ノードｈ４のみをノードＹ３の同一補完単位ノード列とし、ノードＹ１からノードＹ３の同一補完単位ノード列までをノード列Ｙとする。変換候補抽出部１３０は、ノードｊ１（ノードＸ）と、ノードｈ２＋ノードｈ３＋ノードｈ４（ノード列Ｙ）の綴りを結合した「新しいパソコンの発売日」、及び、ノードｈ４の出現回数を対応づけて結果テーブル４５０に追加する。
【０１４４】
また、ノードＸがノードｊ１「新しい」、ノードＹ１がノードｊ２「パソコン」である場合も同様の処理により、ノードｊ１（ノードＸ）と、ノードｊ２＋ノードｊ３＋ノードｊ４（ノード列Ｙ）の綴りを結合した「新しいパソコンの発売日」、及び、ノードｊ４の出現回数の対応付けが結果テーブル４５０に追加される。
【０１４５】
図２５（ｃ）に示すように、例えば、検索キーが「新しいパソコンの『は』」、余りキーα１が「パソコンの『は』」であり、ノードＸがノードｆ１「新しい」、ノードＹ１がノードｈ２「パソコン」である場合、余りキーα１「パソコンの『は』」は、ノードＹ１であるノードｈ２「パソコン」を包含するため、変換候補抽出部１３０は、余りキーα２「の『は』」を作成するとともに、ノードｈ２「パソコン」の１つ下流のノードであるｈ３の綴り「の」をノードＹ２として綴り補完辞書データ４３１Ｂから読み出す。
余りキーα２はノードＹ２と余剰一致するため（Ｓ７２１：ＮＯ、Ｓ７２３：ＹＥＳ）、変換候補抽出部１３０は、余りキーα２からノードｈ３（ノードＹ２）を削除した余りキーα３『は』を生成する。余りキーα３は未確定ひらがなであるため（Ｓ７１４：ＹＥＳ）、変換候補抽出部１３０は、ノードｈ３（ノードＹ２）に対応したノードｈ３’（ノードｙ２）の１つ下流のノードｈ４’の読み「はつばいび」を、ノードｙ３として読み補完辞書データ４３１Ａから読み出す（Ｓ７１５）。
【０１４６】
ノードｙ３と余りキーα３は部分一致する（Ｓ７１６：ＹＥＳ）。綴り補完辞書データ４３１Ｂにおいて、ノードｈ４には下流のノードがないため、変換候補抽出部１３０は、ノードｈ４のみをノードＹ３の同一補完単位ノード列とし、ノードＹ１からノードＹ３の同一補完単位ノード列までをノード列Ｙとする。変換候補抽出部１３０は、ノードｊ１（ノードＸ）と、ノードｈ２＋ノードｈ３＋ノードｈ４（ノード列Ｙ）の綴りを結合した「新しいパソコンの発売日」、及び、ノードｈ４の出現回数を対応づけて結果テーブル４５０に追加する。
また、ノードＸがノードｊ１「新しい」、ノードＹ１がノードｊ２「パソコン」である場合も同様の処理により、ノードｊ１（ノードＸ）と、ノードｊ２＋ノードｊ３＋ノードｊ４（ノード列Ｙ）の綴りを結合した「新しいパソコンの発売日」、及び、ノードｊ４の出現回数の対応付けが結果テーブル４５０に追加される。
【０１４７】
Ｓ７２２の処理の後、あるいは、Ｓ７２３において余りキーαｎ＋１がノードｙｎ＋１に対して余剰一致しないと判断された場合（Ｓ７２３：ＮＯ）、図１８のＳ７０７へ進む。図２５（ｄ）に部分一致でも完全一致でも余剰一致でもない場合の例を示す。
【０１４８】
図２５（ｄ）において、例えば、検索キーが「新しいパソコンの『価格』」、余りキーα１が「パソコンの『価格』」であり、ノードＸがノードｆ１「新しい」、ノードＹ１がノードｈ２「パソコン」である場合、余りキーα２「の『価格』」とノードＹ２であるノードｈ３「の」とは余剰一致するが、余りキーα３『価格』と、ノードｈ３の１つ下流のノードとは部分一致も完全一致も余剰一致もしない。ノードＸがノードｊ１「新しい」、ノードＹ１がノードｊ２「パソコン」である場合も同様である。
【０１４９】
その後、図１８において、比較すべき下流のノードＹ１がまだ残っていれば（Ｓ７０７：ＮＯ）、Ｓ７０１へ戻る。一方、全てのノードＹ１について比較が終了していれば（Ｓ７０７：ＹＥＳ）、当該余剰一致処理を終了する。
【０１５０】
次に、図７のＳ４００における出力処理について説明する。図２６は、変換候補出力部１４０が実行する出力処理のフローチャートを示す。
同図において、変換候補出力部１４０は、結果テーブル４５０に書き込まれた文字列に、同一の文字列が含まれている場合は、これらの重複している文字列のうち１つのみを残す（Ｓ４０１）。Ｓ４０２〜Ｓ４０５までの処理は、説明を容易にするため、検索キーが「末尾部のみ」、「末尾部＋未確定部」、「未確定部のみ」の場合に分けて説明する。
【０１５１】
＜検索キーが末尾部のみの場合＞
変換候補出力部１４０は、結果テーブル４５０の文字列から、検索キーの「末尾部」を削除する（Ｓ４０２）。次に、削除した結果、検索キーの「未確定部」と完全一致することになった出力候補語があるか判定する（Ｓ４０３）。この例では、検索キーに「未確定部」を含まないので、Ｓ４０３は自動的にＮＯとなる。この結果、図２７（ａ）に示すような出力が得られる（Ｓ４０５）。
【０１５２】
図２７（ａ）において、検索キーが「新しい」であり、結果テーブルには文字列「新しい携帯」、「新しいパソコン」、「新しいパソコンの発売日」が記憶されている。このとき、結果テーブルに記憶されているそれぞれの文字列から「新しい」を除いた「携帯」、「パソコン」、「パソコンの発売日」が出現回数の多い順に出力候補語として出力される。このように整形された出力候補語の画面表示例を図２８（ａ）に示す。
【０１５３】
＜検索キーが「末尾部＋未確定部」の場合＞
変換候補出力部１４０は、まず、結果テーブル４５０の文字列から検索キーの「末尾部」を削除する（Ｓ４０２）。さらに、末尾部削除の結果、出力候補語の中に検索キーの未確定部と完全一致する出力候補語がある場合（Ｓ４０３：ＹＥＳ）、当該一致する出力候補語を結果テーブル４５０の出力候補語から削除する（Ｓ４０４）。
【０１５４】
図２７（ｂ）に示す例１では、検索キーが末尾部「新しい」＋未確定部『ぱ』からなる「新しい『ぱ』」であり、結果テーブルには文字列「新しいパソコン」、「新しいパソコンの発売日」が記憶されている。末尾部削除後の出力候補語のノード列「パソコン」、「パソコンの発売日」において、検索キーの未確定部『ぱ』と完全一致するノードがないため、「パソコン」、「パソコンの発売日」が出現頻度の多い順に出力候補語として出力される（Ｓ４０５）。このように整形された出力候補語の画面表示例を図２８（ｂ）に示す。
【０１５５】
図２７（ｃ）に示す例２では、検索キーが末尾部「携帯」＋未確定部『が』からなる「携帯『が』」であり、結果テーブルには文字列「携帯が壊れた」が記憶されている。検索キーの未確定部『が』は、末尾部削除後の出力候補語のノード列「が／壊れた」のうち「が」と一致する。しかし、完全一致ではないので（Ｓ４０３：ＮＯ）、「が壊れた」がそのまま出力候補語として出力される（Ｓ４０５）。このように整形された出力候補語の画面表示例を図２８（ｃ）に示す。そして、オペレータが例えば「が壊れた」を選択すると、未確定状態の「が」を削除して「が壊れた」を確定情報で入力エリアに挿入する。なお、出力候補語が複数ある場合には、出現回数が多い順に表示する。
【０１５６】
また、図２７（ｄ）に示す例３では、検索キーが末尾部「携帯の」＋未確定部『ありか』からなる「携帯の『ありか』」であり、結果テーブルには文字列「携帯のありか」が記憶されている。検索キーの未確定部『ありか』が、末尾部削除後の出力候補語「ありか」と完全一致するので、Ｓ４０４において「ありか」全体が削除され、Ｓ４０５で、出力候補語は出力されない。入力エリアにすでに表示された未確定文字列と出力候補語表示エリアに表示される文字列が一致した場合、オペレータは、出力候補語表示エリアから出力候補語を選択するよりも、入力エリアの文字列を、例えば、Ｅｎｔｅｒキーなどで確定させるほうが自然だからである。この場合の画面表示例を図２８（ｄ）に示す。
【０１５７】
＜検索キーが「未確定部のみ」の場合＞
検索キーが「未確定部のみ」の場合、Ｓ４０２で削除される部分はなく、原則、検索結果がそのまま出力される（Ｓ４０５）。図２７（ｅ）に例１の場合、図２７（ｆ）に例２の場合を示す。また、このような場合の出力候補語の画面表示例を図２８（ｅ）、（ｆ）に示す。
【０１５８】
図２７（ｅ）に示す例１では、検索キーが『けい』であり、結果テーブルには文字列「携帯」、「携帯電話」、「携帯の画面」が記憶されている。よって、図２８（ｅ）に示すように、出現回数の多い順に「携帯」、「携帯電話」、「携帯の画面」が出力候補語として出力される。
【０１５９】
図２７（ｆ）に示す例２では、検索キーが『あたらしい』であり、結果テーブルには文字列「新しい携帯」、「新しいパソコン」、「新しいパソコンの発売日」が記憶されている。よって、図２８（ｆ）に示すように、出現回数の多い順に「新しいパソコン」、「新しいパソコンの発売日」、「新しい携帯」が出力候補語として出力される。
【０１６０】
例外的に、綴り補完辞書に、ひらがなのみからなるノードがあり、当該ノードが出力候補語となった場合には、Ｓ４０３でＹＥＳとなり、一致した出力候補語が結果テーブルから削除される（Ｓ４０４）。この例を図２７（ｇ）に示す。
【０１６１】
上記のＳ４０５の後、オペレータは、キーボード２１１などを操作し、表示された変換候補のうち好適な候補を選択する。この選択操作に応じた入力信号が入力制御装置２００から制御部１００に入力されると（Ｓ４０６：ＹＥＳ）、文字列入力部１５０によって、選択された変換候補の確定入力がおこなわれる（Ｓ４０７）。
【０１６２】
ここでは、変換候補出力部１４０によって表示させている選択候補のいずれが選択されたかを文字列入力部１５０が判別し、出力制御装置３００を制御することで、選択された変換候補を確定文字列として入力エリアに表示する。また、文字列入力部１５０は、このようにして確定入力した確定文字列からなる文章を、入力エリアの識別及び時間情報とともに入力文章格納領域４６０に書き込む。
【０１６３】
そして、この確定入力の後、再び、図７のＳ２００の検索キー処理が実行され、検索キーが生成される。従って、続く図７のＳ３００の候補抽出処理においては、図１０に示すＳ６００の先頭確定処理、つまり、図１６に示す処理が実行される。
あるいは、確定入力の後、ユーザが何らかの未確定文字をキーボード２１１により入力した場合も、図７のＳ２００の検索キー処理が実行され、末尾部＋未確定部の検索キーが生成される。従って、続く図７のＳ３００の候補抽出処理においては、図１０に示すＳ５００の先頭未確定処理、つまり、図１１に示す処理が実行される。
【０１６４】
なお、未確定文字列に入力誤りがあるなどによって、変換候補の選択がされず、入力取消操作などがおこなわれると（Ｓ４０６：ＮＯ、Ｓ４０８：ＹＥＳ）、確定入力をおこなわずに処理を終了する。
【０１６５】
次に、補完単位番号付与処理について説明する。この補完単位番号付与処理では、現在の辞書データの中から、同一の補完単位番号を付与すべきノード列を検出し、特定したノード列に同一の補完番号を付与して生成した新たなノード列を追加し、辞書データを更新する。同一の補完単位番号を付与すべきノード列には、（１）入力エリアに入力された頻度が高いもの、（２）係り受けの分岐が少ないもの、の２つがある。（１）では、実際にオペレータが入力した頻度が高い表現を変換候補として選択可能とすることができるようになる。（２）では、ある単語がいくつかの限られた表現の中でしか使用されない場合、その表現が変換候補として表示されるようになる。
【０１６６】
図２９〜図３１を用いて、入力エリアに入力される頻度が高いノード列に同一の補完単位番号を付与するときの補完単位番号付与処理について説明する。
まず、入力内容別辞書領域４３０には、予め、各入力エリアに対応した読み補完辞書データと綴り補完辞書データの対が記憶されているものとする。
【０１６７】
図２９は、辞書生成部１６０が実行する補完単位番号付与処理のフローチャートを示し、図３０は、図２９の補完単位番号付与処理のデータ例を示し、図３１は、辞書データの更新例を示す。
図２９において、辞書生成部１６０は、１週間、１ヶ月毎などの所定の期間毎に、あるいは、ユーザによる指示が入力されることにより、入力文章格納領域４６０から補完単位番号付与処理の対象とする辞書データに対応した入力エリアの入力文章を読み出す。このとき、入力エリアの入力文章全てを読み出してもよく、現在から３ヶ月前までなどの所定期間分の文章を読み出してもよい（Ｓ８０１）。なお、補完単位番号付与処理の対象とする辞書データを特定する情報は予め入力しておくことでもよく、全ての辞書データについて順に行なうようにしてもよい。辞書生成部１６０は、Ｓ８０１において読み込んだ文章、つまり、文字列を、文末記号に従って分割し、文リストを生成する（Ｓ８０２）。文末記号には、例えば、句点「。」とすることができる。
【０１６８】
辞書生成部１６０は、Ｓ８０２で生成した文リストの先頭から順に、まだ読み込んでいない文を取得する（Ｓ８０３）。辞書生成部１６０は、Ｓ８０３で読み込んだ文から不要文字、例えば、英数字に挟まれたもの以外の空白、タブ、改行などを削除する（Ｓ８０４）。辞書生成部１６０は、Ｓ８０４で不要文字を削除した文の構文解析を行なう（Ｓ８０５）。この構文解析の処理には、従来より使用されている、入力文から単語や、単語相互の係り受け関係を取り出す任意の構文解析ソフトウェア等を使用することができる。
解析が失敗した場合（Ｓ８０６：ＮＯ）、Ｓ８０３に進む。
【０１６９】
解析が成功すると（Ｓ８０６：ＹＥＳ）、辞書生成部１６０は、解析結果から、親子関係の部分木、単独の部分木を抽出すると、部分木配列リストを生成する（Ｓ８０７）。部分木配列リストの例を図３０（ａ）に示す。部分木配列リストは、各部分木について、自身の部分木番号、当該部分木を構成する単語の読み及び綴りと品詞、親子（係り受け）関係にある部分木の番号を示す。なお、上下に並んだ部分木のうち、上に位置する部分木が親であり、下に位置する部分木が子である。
【０１７０】
辞書生成部１６０は、部分木から得られた綴り及び読みに対応したパス（マッチング経路）をパスファイルに書き込む（Ｓ８０８）。この例を、図３０（ｂ）に示す。つまり、親子関係の部分木の子は係り側、親は受け側とした係り受け関係の文節としてパスを生成し、さらに、各部分木（文節）を構成する単語の読み、綴りをノードとしたパスを生成する。そして、親子関係にある子側の部分木、つまり、係り側の文節の最後のノードにある助詞は、親側の部分木、つまり、受け側の文節の最初のノードに移動する。辞書生成部１６０は、文節の単位で補完単位番号を付与する。このとき、先頭の文節には補完単位番号１を付与し、受け側の文節には、係り側の文節よりも１大きな補完単位番号を付与する。そして、各文節に付与された補完単位番号を、当該文節を構成するノードに付与する。
【０１７１】
そして、文リストにまだ未処理の文がある場合（Ｓ８０９：ＹＥＳ）、辞書生成部１６０は、再びＳ６０２からの処理を行う。文リストに含まれる全ての文について処理を終えた場合（Ｓ８０９：ＮＯ）、辞書生成部１６０は、生成したパスファイルからなる中間ファイルを自身の保持する記憶領域に記憶する（Ｓ８１０）。
【０１７２】
辞書生成部１６０は、Ｓ８１０において記憶した中間ファイルから、２以上所定数以下の連続する補完単位番号のノード列を全て取得する。例えば、読み補完辞書データと綴り補完辞書データが３文節以下からなる場合、補完単位番号が１−２、２−３、３−４、…のように連続するノード列と、補完単位番号が１−２−３，２−３−４、３―４―５、…のように連続するノード列を読み出す。そして、そして、同じ綴りからなるノード列毎に出現回数をカウントすると、各ノード列の出現頻度、例えば、出現回数の標準偏差、全体に占める出現割合を求める（Ｓ８１１）。なお、出現回数自体を出現頻度としてもよい。そして、所定の閾値よりも出現頻度が高いノード列を、同じ補完単位番号を付与すべきノード列(以下、「対象ノード列」と記載）であると判断する。辞書生成部１６０は、綴り補完辞書データから対象ノード列を特定すると、対象ノード列と同じノードからなるノード列、及び、対象ノード列を含むノード列を綴り補完辞書データのｒｏｏｔのノードの１つ下流に追加し、追加したノード列に対して、対象ノード列と一致するノード列に同一の補完単位番号を付与する。そして、追加したノード列に対応するノード列を読み補完辞書データに追加する（Ｓ８１２）。この例を図３１に示す。
【０１７３】
例えば、応対入力辞書データ（Ａ１）４３１が処理対象であり、対象ノード列が「携帯／を／買った」であるとする。この場合、辞書生成部１６０は、綴り補完辞書データ４３１Ｂ（図５）からノードｆ２＋ノードｆ３＋ノードｆ４を特定する。辞書生成部１６０は、図３１（ａ）に示すように、新たなノードｓ１「携帯」−ノードｓ２「を」−ノードｓ３「買った」からなるノード列と、新たなノードｔ１「新しい」−ノードｔ２「携帯」−ノードｔ３「を」−ノードｔ４「買った」からなるノード列を綴り補完辞書データ４３１Ｂのｒｏｏｔの配下に追加する。そして、ノードｓ１、ｓ２、ｓ３に補完単位番号「１」を付与する。また、ノードｔ１に補完単位番号「１」を、ノードｔ２、ｔ３、ｔ４に補完単位番号「２」を付与する。
さらに、辞書生成部１６０は、図３１（ｂ）に示すように、読み補完辞書データ４３１Ａに、新たなノードｓ１’「けいたい」−ノードｓ２’「を」−ノードｓ３’「かった」からなるノード列と、新たなノードｔ１’「あたらしい」−ノードｔ２「けいたい」−ノードｔ３「を」−ノードｔ４「かった」からなるノード列をｒｏｏｔの配下に追加する。そして、ノードｓ１’、ｓ２’、ｓ３’に補完単位番号「１」を付与する。また、ノードｔ１’に補完単位番号「１」を、ノードｔ２’、ｔ３’、ｔ４’に補完単位番号「２」を付与する。
【０１７４】
また、Ｓ８１２において、さらに、辞書生成部１６０は、所定の閾値よりも出現頻度が低く、かつ、補完単位が連続するノード列のうち、綴り補完辞書データ、読み補完辞書データに同じ補完単位番号が付与されて登録されているノード列がある場合、このノード列を含んだｒｏｏｔ配下のノード列を削除する。例えば、応対入力辞書データ（Ａ１）４３１が処理対象であり、「パソコン／の／発売日」の出現頻度が閾値以下となったとする。辞書生成部１６０は、綴り補完辞書データ４３１Ｂ（図５）から同じ補完単位番号「２」が付与されたノードｊ２＋ノードｊ３＋ノードｊ４を特定する。この場合、綴り補完辞書データ４３１Ｂからノードｊ１〜ｊ４のノード列が、読み補完辞書データ４３１Ａからノードｊ１’〜ｊ４’のノード列が削除される。
【０１７５】
また、辞書生成部１６０は、各ノード列毎にカウントした出現回数により、読み補完辞書データと綴り補完辞書データの各ノードに記述されている出現回数を更新する。
【０１７６】
続いて、図３２及び図３３を用いて係り受けの分岐が少ないものに同一の補完単位番号を付与するときの補完単位番号付与処理について説明する。図３２は、辞書生成部１６０が実行する補完単位番号付与処理のフローチャートを示し、図３３は、図３２の補完単位番号付与処理における辞書更新の例を示す。
【０１７７】
図３２において、辞書生成部１６０は、補完単位番号付与処理の対象とする辞書データの綴り補完辞書データから、ｒｏｏｔの１つ下流のノードである最上流ノードを一つ取得する。これをノードＸとする（Ｓ９０１）。辞書生成部１６０は、ノードＸの１つ下流のノードの数、１つ下流のノードそれぞれの１つ下流のノードの数、・・・を合計し、ノードＸを先頭とするノード列の数を取得すると（Ｓ９０２）、取得したノード列の数が所定以下であるか否かを判断する（Ｓ９０３）。
【０１７８】
ノード列の数が所定数以下である場合は（Ｓ９０３：ＹＥＳ）、辞書生成部１６０は、さらに、ノードＸの下流の各ノードの補完単位番号が同一であるかを判断する（Ｓ９０４）。同一でない場合（Ｓ９０４：ＮＯ）、辞書生成部１６０は、ノードＸを最上流とするノード列を全て複製し、同一の補完単位番号「１」を付与して綴り補完辞書データに追加する。そして、追加したノード列に対応するノード列を読み補完辞書データに追加する（Ｓ９０５）。図３３にこの例を示す。
【０１７９】
図３３（ａ）に示すように、綴り補完辞書データの最上流ノードがノードａ１「携帯」、ノードａ１の１つ下流のノードがノードａ２「の」及びノードｃ３「が」の２つ、ノードａ２「の」の１つ下流のノードがノードａ３「画面」及びノードｂ３「ありか」の２つ、ノードｃ３「が」の１つ下流のノードがノードｃ３「壊れた」の１つ、「画面」、「ありか」及び「壊れた」の下流にはノードがないものとする。この場合、辞書生成部１６０は、ノードａ１を先頭とするノード列の数は３となる。そして、ノードａ１とノードａ２，ｃ２の補完単位番号が異なるため、辞書生成部１６０は、ノードａ１を最上流とするノード列を全て複製して綴り補完辞書データのｒｏｏｔの配下に追加し、追加したノード列の各ノードに新しいリンクポインタを付与するとともに、ノードａ１及びノードａ１の下流のノード全てに補完単位番号「１」を付与する。
さらに、辞書生成部１６０は、図３３（ｂ）に示すように、読み補完辞書データに、ノードａ１’を最上流とするノード列を複製して読み補完辞書データのｒｏｏｔの配下に追加し、追加したノード列の各ノードに、読み補完辞書データに対応したリンクポインタと、補完単位番号「１」を付与する。
【０１８０】
Ｓ９０３においてノード列の数が所定数を超えると判断した場合（Ｓ９０３：ＮＯ）、Ｓ９０４においてノードＸの下流の各ノードの補完単位番号が同一であると判断した場合（Ｓ９０４：ＹＥＳ）、あるいは、Ｓ９０５の処理の処理を行なったのち、辞書生成部１６０は、綴り補完辞書データに比較すべきノードが残っていないか確認する（Ｓ９０６）。比較すべきノードが残っていれば（Ｓ９０６：ＮＯ）、Ｓ９０１へ戻り、まだ処理を行なっていない最上流ノードを１つ選択し、このノードをノードＸとして以降の処理を行う。
一方、全ての最上流ノードについて比較を行なったため、比較すべきノードが残っていない場合（Ｓ９０６：ＹＥＳ）は、当該先頭未確定処理を終了する。
【０１８１】
なお、図３２において、読み補完辞書データを用いて同一の補完単位番号をすべき最上流ノードを検出するようにしてもよい。
【０１８２】
なお、上記の補完単位番号付与処理は、辞書作成時に行なっても良い。この場合、図２９のＳ８０１において、入力文章格納領域４６０から入力文章を読み出す代わりに、任意の文章群を読み込んで使用する。
【０１８３】
上述した実施形態は一例であり、本発明の適用範囲はこれに限られない。すなわち、種々の応用が可能であり、あらゆる実施の形態が本発明の範囲に含まれる。
例えば、上記実施の形態では、一対の読み補完辞書データと綴り補完辞書データとを入力エリアと対応づけることで、入力内容別の辞書データを構築したが、入力内容に応じて選択可能であれば、対応づけるものは入力エリアに限られない。例えば、文字列入力をおこなう入力画面や使用するアプリケーションと辞書データとを対応づけてもよい。
【０１８４】
上記実施形態では、入力内容別辞書データとして、応対入力辞書データの例を主に示したが、互いに係り受け関係にある単語の階層構成とすることができるのであれば、種々の内容について入力内容別辞書データを構築することができる。例えば、都道府県名とそれに続く下位の地域名とを階層構造とすることで、住所入力に用いる辞書データを構築することができる他、姓とこれに続く名の組み合わせで階層構造とすることで、人名入力に用いる辞書データを構築することができる。つまり、対象とする複数の単語が相関的な位置をもって連結させることが可能であれば、種々の内容に応じた入力内容別辞書データを構築することができる。
【０１８５】
また、上記実施形態では、キーボード２１１によって文字列が入力される場合を例示したが、文字列が入力できるのであれば、その入力方法はこれに限られず任意である。例えば、音声認識によって文字列入力を行う場合にも、本発明を適用することで、より効率的な文字列入力を実現することができる。
【０１８６】
上記実施形態では、電話応答の内容をリアルタイムで入力する必要のあるコールセンタの入力端末に本発明を適用した場合を例示した。本発明は、このような高速な入力作業が求められる分野に特に好適ではあるが、これに限られるものではなく、文字列入力をおこなう種々の場面で用いられる入力装置等に本発明を適用可能であり、いずれの場合であっても、より効率的な文字列入力を実現することができる。
【０１８７】
上記実施形態にかかる入力端末１は、スタンドアローンで構成可能であるだけでなく、いわゆるサーバ−クライアントシステムとしても構成可能である。すなわち、例えば、図３４に示すように、制御部５０１、通信部５０２を備えるクライアント５００に入力装置２１０と出力装置３１０の機能を持たせ、該クライアント５００と、制御部６０１、通信部６０２、記憶部６０３を備え、検索機能を持たせたサーバ６００とから構成としても良い。サーバ６００は、検索機能として、辞書選択部６０１−１、検索キー生成部６０１−２、変換候補抽出部６０１−３、変換候補出力部６０１−４、文字列入力部６０１−５、辞書生成部６０１−６を備える。辞書選択部６０１−１、検索キー生成部６０１−２、変換候補抽出部６０１−３、変換候補出力部６０１−４、文字列入力部６０１−５、辞書生成部６０１−６はそれぞれ、図６に示す辞書選択部１１０、検索キー生成部１２０、変換候補抽出部１３０、変換候補出力部１４０、文字列入力部１５０、辞書生成部１６０と同様の機能を有する。また、記憶部６０３は、図１に示す記憶部４００と同様のデータを記憶する。
【０１８８】
このようなプログラムの提供方法は任意であり、例えば、ＣＤ−ＲＯＭなどの記憶媒体に格納して配布可能であることはもとより、プログラムデータを搬送波に重畳することで、所定の通信媒体（例えば、インターネットなど）を介して配布することもできる。
【符号の説明】
【０１８９】
１  入力端末
１００  制御部
１１０  辞書選択部
１２０  検索キー生成部
１３０  変換候補抽出部
１４０  変換候補出力部
１５０  文字列入力部
１６０  辞書生成部
２００  入力制御装置
２１０  入力装置
２１１  キーボード
２１２  ポインティングデバイス
３００  出力制御装置
３１０  出力装置
３１１  ディスプレイ装置
４００  記憶部
４１０  辞書格納領域
４２０  基本辞書領域
４３０  入力内容別辞書領域
４３１  応対入力辞書データ(Ａ１)
４３１Ａ  読み補完辞書データ
４３１Ｂ  綴り補完辞書データ
４３２  住所入力辞書データ(Ａ２)
４３２Ａ  読み補完辞書データ
４３２Ｂ  綴り補完辞書データ
４４０  プログラム格納領域
４５０  結果テーブル
４６０  入力文章格納領域
【図１】
2010266946.tif 000003
【図２】
2010266946.tif 000004
【図３】
2010266946.tif 000005
【図４】
2010266946.tif 000006
【図５】
2010266946.tif 000007
【図６】
2010266946.tif 000008
【図７】
2010266946.tif 000009
【図８】
2010266946.tif 000010
【図９】
2010266946.tif 000011
【図１０】
2010266946.tif 000012
【図１１】
2010266946.tif 000013
【図１２】
2010266946.tif 000014
【図１３】
2010266946.tif 000015
【図１４】
2010266946.tif 000016
【図１５】
2010266946.tif 000017
【図１６】
2010266946.tif 000018
【図１７】
2010266946.tif 000019
【図１８】
2010266946.tif 000020
【図１９】
2010266946.tif 000021
【図２０】
2010266946.tif 000022
【図２１】
2010266946.tif 000023
【図２２】
2010266946.tif 000024
【図２３】
2010266946.tif 000025
【図２４】
2010266946.tif 000026
【図２５】
2010266946.tif 000027
【図２６】
2010266946.tif 000028
【図２７】
2010266946.tif 000029
【図２８】
2010266946.tif 000030
【図２９】
2010266946.tif 000031
【図３０】
2010266946.tif 000032
【図３１】
2010266946.tif 000033
【図３２】
2010266946.tif 000034
【図３３】
2010266946.tif 000035
【図３４】
2010266946.tif 000036
【手続補正書】
【提出日】平成22年1月27日(2010.1.27)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
上述した課題を解決するために、本発明は、入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置であって、入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語をノードとし、係り側の文節を構成するノードから受け側の文節を構成するノードへと順に連結して木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部と、ユーザの入力に基づき検索キーを生成する検索キー生成部と、前記検索キー生成部により生成された前記検索キーが未確定ひらがなからなる場合、前記読み補完辞書データのルートの１つ下流である最上流のノードから当該検索キーと前方一致かつ部分一致する前記ノードを検出し、検出した当該ノードに対応した前記綴り補完辞書データのノードを特定し、当該特定したノードの綴りと、当該特定したノードと同一の補完単位番号が付与されている当該特定したノードの下流のノードの綴りとを、上流のノードから下流のノードの順に結合した変換候補を取得する変換候補抽出部と、前記変換候補抽出部が取得した変換候補を出力する変換候補出力部と、を備えることを特徴とする文字列入力装置である。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
また、上述した課題を解決するために、本発明は、入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置であって、入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語をノードとし、係り側の文節を構成するノードから、受け側の文節を構成するノードへと順に連結して木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部と、ユーザの入力に基づき検索キーを生成する検索キー生成部と、前記検索キー生成部により生成された前記検索キーが未確定ひらがなからなる場合、前記読み補完辞書データのルートの１つ下流である最上流のノードから当該検索キーと完全一致する前記ノードを検出し、検出した当該ノードに対応した前記綴り補完辞書データのノード及び１つ下流のノードを特定し、当該特定したノード及び１つ下流のノードの綴りと、当該１つ下流のノードと同一の補完単位番号が付与されている当該１つ下流のノードのさらに下流のノードの綴りとを、上流のノードから下流のノードの順に結合した変換候補を取得する変換候補抽出部と、前記変換候補抽出部が取得した変換候補を出力する変換候補出力部と、を備えることを特徴とする文字列入力装置である。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
また、上述した課題を解決するために、本発明は、入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置であって、入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語をノードとし、係り側の文節を構成するノードから、受け側の文節を構成するノードへと順に連結して木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部と、ユーザの入力に基づき検索キーを生成する検索キー生成部と、前記検索キー生成部により生成された前記検索キーが確定文字からなる場合、前記綴り補完辞書データのルートの１つ下流である最上流のノードから当該検索キーと前方一致かつ部分一致する前記ノードを特定し、当該特定したノードの綴りと、当該特定したノードと同一の補完単位番号が付与されている当該特定したノードの下流のノードの綴りとを、上流のノードから下流のノードの順に結合した変換候補を取得する変換候補抽出部と、前記変換候補抽出部が取得した変換候補を出力する変換候補出力部と、を備えることを特徴とする文字列入力装置である。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】変更
【補正の内容】
【０００９】
また、上述した課題を解決するために、本発明は、入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置であって、入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語をノードとし、係り側の文節を構成するノードから、受け側の文節を構成するノードへと順に連結して木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部と、ユーザの入力に基づき検索キーを生成する検索キー生成部と、前記検索キー生成部により生成された前記検索キーが確定文字からなる場合、前記綴り補完辞書データのルートの１つ下流である最上流のノードから当該検索キーと完全一致する前記ノードを特定し、当該特定したノードの１つ下流のノードを特定し、当該特定したノード及び１つ下流のノードの綴りと、当該１つ下流のノードと同一の補完単位番号が付与されている当該１つ下流のノードのさらに下流のノードの綴りとを、上流のノードから下流のノードの順に結合した変換候補を取得する変換候補抽出部と、前記変換候補抽出部が取得した変換候補を出力する変換候補出力部と、を備えることを特徴とする文字列入力装置である。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
また、上述した課題を解決するために、本発明は、入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置であって、入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語をノードとし、係り側の文節を構成するノードから、受け側の文節を構成するノードへと順に連結して木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部と、ユーザの入力に基づき検索キーを生成する検索キー生成部と、前記検索キー生成部により生成された前記検索キーが確定文字及び未確定ひらがなからなる未確定文字列からなる場合、当該検索キーの確定文字によって、前記綴り補完辞書データのルートの１つ下流である最上流のノードを検索して一致するノードを特定し、特定したノードに対応する前記読み補完辞書データのノードの下流のノードと前記検索キーの未確定ひらがなとの一致を判断し、前記綴り補完辞書データから前記特定したノードの綴りと、当該特定したノードの下流のノードであり、前記検索キーの未確定ひらがなと一致すると判断された前記読み補完辞書データのノードに対応したノードの綴りと、当該下流のノードと同一の補完単位番号が付与されているさらに下流のノードの綴りとを読み出し、読み出した綴りを上流のノードから下流のノードの順に結合した変換候補を取得する変換候補抽出部と、前記変換候補抽出部が取得した変換候補を出力する変換候補出力部と、を備えることを特徴とする文字列入力装置である。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００１２
【補正方法】変更
【補正の内容】
【００１２】
また、上述した課題を解決するために、本発明は、上述する文字列入力装置であって、前記綴り補完辞書データのルートの１つ下流である最上流のノードそれぞれについて、当該最上流のノードを先頭とするノード列の数を取得し、取得したノード列の数が所定以下である場合に、当該最上流のノードを先頭とするノード列に同一の補完単位番号を付与して生成した新たなノード列を前記綴り補完辞書データに追加するとともに、当該追加したノード列に対応したノード列を前記読み補完辞書データに追加する辞書生成部をさらに備えることを特徴とする。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００１３
【補正方法】変更
【補正の内容】
【００１３】
また、上述した課題を解決するために、本発明は、入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置に用いられる文字列入力方法であって、前記入力装置は、入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語をノードとし、係り側の文節を構成するノードから、受け側の文節を構成するノードへと順に連結して木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部を備え、前記文字列入力装置の検索キー生成部が、ユーザの入力に基づき検索キーを生成する検索キー生成過程と、前記文字列入力装置の変換候補抽出部が、前記検索キー生成過程において生成された検索キーが未確定ひらがなからなる場合、前記読み補完辞書データのルートの１つ下流である最上流のノードから当該検索キーと前方一致かつ部分一致する前記ノードを検出し、検出した当該ノードに対応した前記綴り補完辞書データのノードを特定し、当該特定したノードの綴りと、当該特定したノードと同一の補完単位番号が付与されている当該特定したノードの下流のノードの綴りとを、上流のノードから下流のノードの順に結合した変換候補を取得する変換候補抽出過程と、前記文字列入力装置の変換候補出力部が、前記変換候補抽出過程において取得した変換候補を出力する変換候補出力過程と、を有することを特徴とする文字列入力方法である。
また、上述した課題を解決するために、本発明は、入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置に用いられる文字列入力方法であって、前記入力装置は、入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語をノードとし、係り側の文節を構成するノードから、受け側の文節を構成するノードへと順に連結して木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部を備え、前記文字列入力装置の検索キー生成部が、ユーザの入力に基づき検索キーを生成する検索キー生成過程と、前記文字列入力装置の変換候補抽出部が、前記検索キー生成過程において生成された前記検索キーが未確定ひらがなからなる場合、前記読み補完辞書データのルートの１つ下流である最上流のノードから当該検索キーと完全一致する前記ノードを検出し、検出した当該ノードに対応した前記綴り補完辞書データのノード及び１つ下流のノードを特定し、当該特定したノード及び１つ下流のノードの綴りと、当該１つ下流のノードと同一の補完単位番号が付与されている当該１つ下流のノードのさらに下流のノードの綴りとを、上流のノードから下流のノードの順に結合した変換候補を取得する変換候補抽出過程と、
前記文字列入力装置の変換候補出力部が、前記変換候補抽出過程において取得した変換候補を出力する変換候補出力過程と、前記文字列入力装置の変換候補出力部が、前記変換候補抽出過程において取得した変換候補を出力する変換候補出力過程と、を有することを特徴とする文字列入力方法である。
また、上述した課題を解決するために、本発明は、入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置に用いられる文字列入力方法であって、前記入力装置は、入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語をノードとし、係り側の文節を構成するノードから、受け側の文節を構成するノードへと順に連結して木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部を備え、前記文字列入力装置の検索キー生成部が、ユーザの入力に基づき検索キーを生成する検索キー生成過程と、前記文字列入力装置の変換候補抽出部が、前記検索キー生成過程において生成された前記検索キーが確定文字からなる場合、前記綴り補完辞書データのルートの１つ下流である最上流のノードから検索キーと前方一致かつ部分一致する前記ノードを特定し、当該特定したノードの綴りと、当該特定したノードと同一の補完単位番号が付与されている当該特定したノードの下流のノードの綴りとを、上流のノードから下流のノードの順に結合した変換候補を取得する変換候補抽出過程と、前記文字列入力装置の変換候補出力部が、前記変換候補抽出過程において取得した変換候補を出力する変換候補出力過程と、を有することを特徴とする文字列入力方法である。
また、上述した課題を解決するために、本発明は、入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置に用いられる文字列入力方法であって、前記入力装置は、入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語をノードとし、係り側の文節を構成するノードから、受け側の文節を構成するノードへと順に連結して木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部を備え、前記文字列入力装置の検索キー生成部が、ユーザの入力に基づき検索キーを生成する検索キー生成過程と、前記文字列入力装置の変換候補抽出部が、前記検索キー生成過程において生成された前記検索キーが確定文字からなる場合、前記綴り補完辞書データのルートの１つ下流である最上流のノードから検索キーと完全一致する前記ノードを特定し、当該特定したノードの１つ下流のノードを特定し、当該特定したノード及び１つ下流のノードの綴りと、当該１つ下流のノードと同一の補完単位番号が付与されている当該１つ下流のノードのさらに下流のノードの綴りとを、上流のノードから下流のノードの順に結合した変換候補を取得する変換候補抽出過程と、前記文字列入力装置の変換候補出力部が、前記変換候補抽出過程において取得した変換候補を出力する変換候補出力過程と、を有することを特徴とする文字列入力方法である。
また、上述した課題を解決するために、本発明は、入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置に用いられる文字列入力方法であって、前記入力装置は、入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語をノードとし、係り側の文節を構成するノードから、受け側の文節を構成するノードへと順に連結して木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部を備え、前記文字列入力装置の検索キー生成部が、ユーザの入力に基づき検索キーを生成する検索キー生成過程と、前記文字列入力装置の変換候補抽出部が、前記検索キー生成過程において生成された前記検索キーが確定文字及び未確定ひらがなからなる未確定文字列からなる場合、当該検索キーの確定文字によって、前記綴り補完辞書データルートの１つ下流である最上流のノードを検索して一致するノードを特定し、特定したノードに対応する前記読み補完辞書データのノードの下流のノードと前記検索キーの未確定ひらがなとの一致を判断し、前記綴り補完辞書データから前記特定したノードの綴りと、当該特定したノードの下流のノードであり、前記検索キーの未確定ひらがなと一致すると判断された前記読み補完辞書データのノードに対応したノードの綴りと、当該下流のノードと同一の補完単位番号が付与されているさらに下流のノードの綴りとを読み出し、読み出した綴りを上流のノードから下流のノードの順に結合した変換候補を取得する変換候補抽出過程と、前記文字列入力装置の変換候補出力部が、前記変換候補抽出過程において取得した変換候補を出力する変換候補出力過程と、を有することを特徴とする文字列入力方法である。
【手続補正８】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置であって、
入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語をノードとし、係り側の文節を構成するノードから受け側の文節を構成するノードへと順に連結して木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部と、
ユーザの入力に基づき検索キーを生成する検索キー生成部と、
前記検索キー生成部により生成された前記検索キーが未確定ひらがなからなる場合、前記読み補完辞書データのルートの１つ下流である最上流のノードから当該検索キーと前方一致かつ部分一致する前記ノードを検出し、検出した当該ノードに対応した前記綴り補完辞書データのノードを特定し、当該特定したノードの綴りと、当該特定したノードと同一の補完単位番号が付与されている当該特定したノードの下流のノードの綴りとを、上流のノードから下流のノードの順に結合した変換候補を取得する変換候補抽出部と、
前記変換候補抽出部が取得した変換候補を出力する変換候補出力部と、
を備えることを特徴とする文字列入力装置。
【請求項２】
入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置であって、
入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語をノードとし、係り側の文節を構成するノードから、受け側の文節を構成するノードへと順に連結して木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部と、
ユーザの入力に基づき検索キーを生成する検索キー生成部と、
前記検索キー生成部により生成された前記検索キーが未確定ひらがなからなる場合、前記読み補完辞書データのルートの１つ下流である最上流のノードから当該検索キーと完全一致する前記ノードを検出し、検出した当該ノードに対応した前記綴り補完辞書データのノード及び１つ下流のノードを特定し、当該特定したノード及び１つ下流のノードの綴りと、当該１つ下流のノードと同一の補完単位番号が付与されている当該１つ下流のノードのさらに下流のノードの綴りとを、上流のノードから下流のノードの順に結合した変換候補を取得する変換候補抽出部と、
前記変換候補抽出部が取得した変換候補を出力する変換候補出力部と、
を備えることを特徴とする文字列入力装置。
【請求項３】
入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置であって、
入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語をノードとし、係り側の文節を構成するノードから、受け側の文節を構成するノードへと順に連結して木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部と、
ユーザの入力に基づき検索キーを生成する検索キー生成部と、
前記検索キー生成部により生成された前記検索キーが確定文字からなる場合、前記綴り補完辞書データのルートの１つ下流である最上流のノードから当該検索キーと前方一致かつ部分一致する前記ノードを特定し、当該特定したノードの綴りと、当該特定したノードと同一の補完単位番号が付与されている当該特定したノードの下流のノードの綴りとを、上流のノードから下流のノードの順に結合した変換候補を取得する変換候補抽出部と、
前記変換候補抽出部が取得した変換候補を出力する変換候補出力部と、
を備えることを特徴とする文字列入力装置。
【請求項４】
入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置であって、
入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語をノードとし、係り側の文節を構成するノードから、受け側の文節を構成するノードへと順に連結して木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部と、
ユーザの入力に基づき検索キーを生成する検索キー生成部と、
前記検索キー生成部により生成された前記検索キーが確定文字からなる場合、前記綴り補完辞書データのルートの１つ下流である最上流のノードから当該検索キーと完全一致する前記ノードを特定し、当該特定したノードの１つ下流のノードを特定し、当該特定したノード及び１つ下流のノードの綴りと、当該１つ下流のノードと同一の補完単位番号が付与されている当該１つ下流のノードのさらに下流のノードの綴りとを、上流のノードから下流のノードの順に結合した変換候補を取得する変換候補抽出部と、
前記変換候補抽出部が取得した変換候補を出力する変換候補出力部と、
を備えることを特徴とする文字列入力装置。
【請求項５】
入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置であって、
入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語をノードとし、係り側の文節を構成するノードから、受け側の文節を構成するノードへと順に連結して木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部と、
ユーザの入力に基づき検索キーを生成する検索キー生成部と、
前記検索キー生成部により生成された前記検索キーが確定文字及び未確定ひらがなからなる未確定文字列からなる場合、当該検索キーの確定文字によって、前記綴り補完辞書データのルートの１つ下流である最上流のノードを検索して一致するノードを特定し、
特定したノードに対応する前記読み補完辞書データのノードの下流のノードと前記検索キーの未確定ひらがなとの一致を判断し、
前記綴り補完辞書データから前記特定したノードの綴りと、当該特定したノードの下流のノードであり、前記検索キーの未確定ひらがなと一致すると判断された前記読み補完辞書データのノードに対応したノードの綴りと、当該下流のノードと同一の補完単位番号が付与されているさらに下流のノードの綴りとを読み出し、読み出した綴りを上流のノードから下流のノードの順に結合した変換候補を取得する変換候補抽出部と、
前記変換候補抽出部が取得した変換候補を出力する変換候補出力部と、
を備えることを特徴とする文字列入力装置。
【請求項６】
入力済みの文章のデータから所定の閾値より出現頻度の高い単語列を特定し、当該特定した単語列に対応した綴り補完辞書データのノード列に同一の補完単位番号を付与して生成した新たなノード列を前記綴り補完辞書データに追加するとともに、当該追加したノード列に対応したノード列を前記読み補完辞書データに追加する辞書生成部をさらに備えることを特徴とする請求項１から請求項５のいずれかの項に記載の文字列入力装置。
【請求項７】
前記綴り補完辞書データのルートの１つ下流である最上流のノードそれぞれについて、当該最上流のノードを先頭とするノード列の数を取得し、取得したノード列の数が所定以下である場合に、当該最上流のノードを先頭とするノード列に同一の補完単位番号を付与して生成した新たなノード列を前記綴り補完辞書データに追加するとともに、当該追加したノード列に対応したノード列を前記読み補完辞書データに追加する辞書生成部をさらに備えることを特徴とする請求項１から請求項５のいずれかの項に記載の文字列入力装置。
【請求項８】
入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置に用いられる文字列入力方法であって、
前記入力装置は、入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語をノードとし、係り側の文節を構成するノードから、受け側の文節を構成するノードへと順に連結して木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部を備え、
前記文字列入力装置の検索キー生成部が、ユーザの入力に基づき検索キーを生成する検索キー生成過程と、
前記文字列入力装置の変換候補抽出部が、前記検索キー生成過程において生成された前記検索キーが未確定ひらがなからなる場合、前記読み補完辞書データのルートの１つ下流である最上流のノードから当該検索キーと前方一致かつ部分一致する前記ノードを検出し、検出した当該ノードに対応した前記綴り補完辞書データのノードを特定し、当該特定したノードの綴りと、当該特定したノードと同一の補完単位番号が付与されている当該特定したノードの下流のノードの綴りとを、上流のノードから下流のノードの順に結合した変換候補を取得する変換候補抽出過程と、
前記文字列入力装置の変換候補出力部が、前記変換候補抽出過程において取得した変換候補を出力する変換候補出力過程と、
を有することを特徴とする文字列入力方法。
【請求項９】
入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置に用いられる文字列入力方法であって、
前記入力装置は、入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語をノードとし、係り側の文節を構成するノードから、受け側の文節を構成するノードへと順に連結して木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部を備え、
前記文字列入力装置の検索キー生成部が、ユーザの入力に基づき検索キーを生成する検索キー生成過程と、
前記文字列入力装置の変換候補抽出部が、前記検索キー生成過程において生成された前記検索キーが未確定ひらがなからなる場合、前記読み補完辞書データのルートの１つ下流である最上流のノードから当該検索キーと完全一致する前記ノードを検出し、検出した当該ノードに対応した前記綴り補完辞書データのノード及び１つ下流のノードを特定し、当該特定したノード及び１つ下流のノードの綴りと、当該１つ下流のノードと同一の補完単位番号が付与されている当該１つ下流のノードのさらに下流のノードの綴りとを、上流のノードから下流のノードの順に結合した変換候補を取得する変換候補抽出過程と、
前記文字列入力装置の変換候補出力部が、前記変換候補抽出過程において取得した変換候補を出力する変換候補出力過程と、
を有することを特徴とする文字列入力方法。
【請求項１０】
入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置に用いられる文字列入力方法であって、
前記入力装置は、入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語をノードとし、係り側の文節を構成するノードから、受け側の文節を構成するノードへと順に連結して木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部を備え、
前記文字列入力装置の検索キー生成部が、ユーザの入力に基づき検索キーを生成する検索キー生成過程と、
前記文字列入力装置の変換候補抽出部が、前記検索キー生成過程において生成された前記検索キーが確定文字からなる場合、前記綴り補完辞書データのルートの１つ下流である最上流のノードから検索キーと前方一致かつ部分一致する前記ノードを特定し、当該特定したノードの綴りと、当該特定したノードと同一の補完単位番号が付与されている当該特定したノードの下流のノードの綴りとを、上流のノードから下流のノードの順に結合した変換候補を取得する変換候補抽出過程と、
前記文字列入力装置の変換候補出力部が、前記変換候補抽出過程において取得した変換候補を出力する変換候補出力過程と、
を有することを特徴とする文字列入力方法。
【請求項１１】
入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置に用いられる文字列入力方法であって、
前記入力装置は、入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語をノードとし、係り側の文節を構成するノードから、受け側の文節を構成するノードへと順に連結して木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部を備え、
前記文字列入力装置の検索キー生成部が、ユーザの入力に基づき検索キーを生成する検索キー生成過程と、
前記文字列入力装置の変換候補抽出部が、前記検索キー生成過程において生成された前記検索キーが確定文字からなる場合、前記綴り補完辞書データのルートの１つ下流である最上流のノードから検索キーと完全一致する前記ノードを特定し、当該特定したノードの１つ下流のノードを特定し、当該特定したノード及び１つ下流のノードの綴りと、当該１つ下流のノードと同一の補完単位番号が付与されている当該１つ下流のノードのさらに下流のノードの綴りとを、上流のノードから下流のノードの順に結合した変換候補を取得する変換候補抽出過程と、
前記文字列入力装置の変換候補出力部が、前記変換候補抽出過程において取得した変換候補を出力する変換候補出力過程と、
を有することを特徴とする文字列入力方法。
【請求項１２】
入力された文字列に応じた変換候補を検索して提示し、提示された変換候補を選択することで文字列入力を行う文字列入力装置に用いられる文字列入力方法であって、
前記入力装置は、入力される文字列を変換処理する前の読みが単語として記録された辞書であって、互いに係り受け関係にある単語をノードとし、係り側の文節を構成するノードから、受け側の文節を構成するノードへと順に連結して木構造に構成した読み補完辞書データ、及び、前記読み補完辞書データに含まれる各単語が変換処理された後の綴りが単語として記録された辞書であって、変換処理前と変換処理後の単語をノードとして対応付けて前記読み補完辞書データの示す木構造と合致した木構造に構成し、かつ、１つのノード列としてみなす、係り受け関係にあるノードに同一の補完単位番号を付与した綴り補完辞書データを記憶する記憶部を備え、
前記文字列入力装置の検索キー生成部が、ユーザの入力に基づき検索キーを生成する検索キー生成過程と、
前記文字列入力装置の変換候補抽出部が、前記検索キー生成過程において生成された前記検索キーが確定文字及び未確定ひらがなからなる未確定文字列からなる場合、当該検索キーの確定文字によって、前記綴り補完辞書データルートの１つ下流である最上流のノードを検索して一致するノードを特定し、
特定したノードに対応する前記読み補完辞書データのノードの下流のノードと前記検索キーの未確定ひらがなとの一致を判断し、
前記綴り補完辞書データから前記特定したノードの綴りと、当該特定したノードの下流のノードであり、前記検索キーの未確定ひらがなと一致すると判断された前記読み補完辞書データのノードに対応したノードの綴りと、当該下流のノードと同一の補完単位番号が付与されているさらに下流のノードの綴りとを読み出し、読み出した綴りを上流のノードから下流のノードの順に結合した変換候補を取得する変換候補抽出過程と、
前記文字列入力装置の変換候補出力部が、前記変換候補抽出過程において取得した変換候補を出力する変換候補出力過程と、
を有することを特徴とする文字列入力方法。