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