以下、図面に基づいて本発明の実施の形態を説明する。図2は、本発明の実施の形態における入力支援装置のハードウェア構成例を示す図である。図2の入力支援装置10は、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、インタフェース装置105、表示装置106、及び入力装置107等を有する。
入力支援装置10での処理を実現するプログラムは、記録媒体101によって提供される。プログラムを記録した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従って入力支援装置10に係る機能を実現する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。表示装置106はプログラムによるGUI(Graphical User Interface)等を表示する。入力装置107はキーボード及びマウス等であり、様々な操作指示を入力させるために用いられる。
なお、記録媒体101の一例としては、CD−ROM、DVDディスク、又はUSBメモリ等の可搬型の記録媒体が挙げられる。また、補助記憶装置102の一例としては、HDD(Hard Disk Drive)又はフラッシュメモリ等が挙げられる。記録媒体101及び補助記憶装置102のいずれについても、コンピュータ読み取り可能な記録媒体に相当する。
図3は、本発明の実施の形態における入力支援装置のソフトウェア構成例を示す図である。同図において、入力支援装置10は、オペレーティングシステム11、編集部12、及び入力支援部13等を有する。
オペレーティングシステム11は、一般的なOS(Operating System)である。オペレーティングシステム11は、例えば、表示制御部111及び入力検知部112等を含む。表示制御部111は、表示装置106へのGUI(Graphical User Interface)等の表示を制御する。入力検知部112は、入力装置107からの入力を検知する。
編集部12は、入力装置107を介して入力されるユーザの指示に応じて、文書データの表示、生成、及び編集等を行う。編集部12は、例えば、ワープロソフト、表計算ソフト、又はメーラー等のアプリケーションプログラムがCPU104に実行させる処理によって実現される。
入力支援部13は、編集部12が表示装置106に表示させる文書編集画面において編集対象とされている文書データに対する文字列の入力の支援等を行う。入力支援部13は、入力支援装置10にインストールされたプログラムが、CPU104に実行させる処理によって実現される。
図3において、入力支援部13は、辞書検索部131、文例一覧表示部132、未確定部分入力部133、置換文字列生成部134、未確定部分確定部135、候補値登録部136、及び文例出力部137等を含む。入力支援部13は、また、文例辞書記憶部14、候補値記憶部15、書式情報記憶部16、及びカレント環境記憶部17等を利用する。これら各部は、補助記憶装置102、又は入力支援装置10とネットワークを介して接続される記憶装置等を用いて実現可能である。
辞書検索部131は、読みの入力に応じ、当該読みに対応する文例を文例辞書記憶部14より検索する。文例辞書記憶部14は、文例辞書を記憶する。文例辞書は、読みに対応付けて文例が記録されたデータである。文例の具体例として、一以上の文節又は一以上の文の集合が挙げられる。但し、一つの単語が一つの文例として文例辞書記憶部14に登録されてもよいし、定型文が文例として登録されてもよい。文例として何を登録するかは、ユーザの任意である。また、穴あき状態となった未確定部分又は可変部分(以下、「未確定部分」で統一する。)を一以上含む文例が登録されてもよい。未確定部分とは、例えば、「企画業務部の■活動について」という文例において「■」の部分である。一つの文例に複数の未確定部分が含まれていてもよい。
文例一覧表示部132は、辞書検索部131によって検索された文例の一覧(以下、「文例一覧」という。)を、入力候補として表示させる。未確定部分入力部133は、文例一覧の中から未確定部分を含む文例が入力対象として選択された場合、未確定部分を埋める値の入力を受け付けるための処理を実行する。例えば、未確定部分入力部133は、未確定部分の位置にテキストボックス又はコンボボックス等の入力部品を表示させ、当該入力部品を介して未確定部分を埋める値の入力を受け付ける。
置換文字列生成部134は、ユーザによって値が入力されなかった未確定部分を埋める文字列、すなわち、未確定部分を置換する文字列を生成する。以下、置換文字列生成部134によって生成される文字列を、「置換文字列」という。置換文字列の生成は、候補値記憶部15及び書式情報記憶部16を参照して行われる。候補値記憶部15には、未確定部分に対応付けて入力候補となる値(以下、「候補値」という。)を記憶する。候補値は、ユーザによって予め設定されてもよいし、過去の入力実績に基づいて、自動的に記憶されてもよい。書式情報記憶部16は、置換文字列の書式情報を記憶する。
未確定部分確定部135は、未確定部分を含む文例が入力対象として選択された際に、未確定部分を確定するための処理を実行する。未確定部分に対してユーザによって値が入力された場合、当該未確定部分に関して未確定部分入力部133が受け付けた値によって当該未確定部分が確定される。未確定部分に対してユーザによって値が入力されなかった場合、当該未確定部分に関して置換文字列生成部134が生成した文字列によって当該未確定部分が確定される。
候補値登録部136は、未確定部分に対して入力された値を、当該未確定部分に対応付けて候補値記憶部15に記憶する。その結果、当該値は、当該未確定部分の候補値となる。
文例出力部137は、文例一覧の中から選択された文例を、編集部12によって表示されている文書編集画面に出力(展開)する。
カレント環境記憶部17は、現在の文書の編集環境に対する識別子を記憶する。文書の編集環境とは、例えば、編集対象の文書のジャンル又は編集対象の文書名等に応じて、ユーザの任意によって定義可能な環境をいう。以下、編集環境に対する識別子を「環境ID」という。現在の環境IDは、ユーザの任意のタイミングにおいて変更可能である。例えば、ユーザは、入力支援部13が表示装置106に表示させるメニューを介して、現在の環境IDを変更可能である。したがって、ユーザは、編集対象とする文書等に応じて、現在の環境IDを変更することができる。本実施の形態では、環境IDごとに、候補値記憶部15が形成される。また、環境IDごとに、文例辞書記憶部14が形成されてもよい。
以下、入力支援部13が実行する処理手順について説明する。図4は、第一の実施の形態において入力支援部が実行する処理手順の一例を説明するためのフローチャートである。編集部12の文書編集画面において、入力装置107を用いて、例えば、2文字以上の文字列が入力されると、図4の処理が開始される。但し、1文字が入力された時点で、図4の処理が開始されてもよい。
ステップS101において、辞書検索部131は、入力された文字列に対応する文例を文例辞書記憶部14より検索する。
図5は、文例辞書記憶部の構成例を示す図である。同図において、文例辞書記憶部14は、文例ごとに、文例ID、読み、文例、及び利用回数等を記憶する。文例IDは、文例の識別情報である。読みは、文例に対する読みである。文例は、読みに対応付けられている文例である。利用回数は、文例が利用された(入力対象として選択された)回数である。
図5において、第一レコードから第三レコードまでの文例は、同一の読み(「おはようございます。」)に対応付けられている。このように、読みと文例との対応付けは、必ずしも一対一でなくてもよい。また、読みは、文例の読み方を表現するものでなくてもよい。文例の読み方と全く異なる文字列が、読みとして文例に対応付けられてもよい。例えば、「あさのあいさつ」という読みが、「おはようございます。」という文例に対応付けられてもよい。
第二レコード及び第三レコードの文例に含まれている、<%N>の形式を有する部分は、未確定部分を示す。<%N>において、Nは、未確定IDに該当する。未確定IDは、未確定部分に対する識別子である。
なお、入力された文字列に対応する文例とは、当該文例に対応する読みが入力された文字列に適合する文例、又は入力された文字列が未確定状態である場合は、当該文例自体が未確定状態の文字列に適合する文例をいう。入力された文字列に適合する読みとは、例えば、入力された文字列を先頭から含む読みをいう。入力された文字列と読みとが完全に一致する場合も含まれるし、読みの先頭の一部分が、入力された文字列に一致する場合も含まれる。また、未確定状態の文字列に適合する文例とは、例えば、未確定状態の文字列を先頭から含む文例をいう。未確定状態の文字列と文例とが完全に一致する場合も含まれるし、文例の先頭の一部分が、未確定状態の文字列に一致する場合も含まれる。なお、ここでいう、未確定状態とは、かな漢字変換ソフトによって変換状態とされ、入力が確定されていない文字列をいう。
続いて、文例一覧表示部132は、検索された文例の一覧(文例一覧)を表示制御部111を介して表示装置106に表示させる(S102)。
図6は、文例一覧の表示例を示す図である。図6では、「おは」という読みの入力に応じ、文例IDがBUN001〜BUN005である文例を含む文例一覧L1が表示された例が示されている。
文例一覧L1における各文例の表示順は、各文例の利用回数の降順であってもよい。なお、文例一覧表示部132は、未確定部分を含む文例については、当該未確定部分を所定の記号(例えば、「■」)に置換して、文例一覧L1に含める。そうすることにより、未確定部分の視認性を向上させることができる。但し、未確定部分がそのままの形式(<%N>)で表示されてもよい。
なお、文例一覧L1が表示された状態において、ユーザは、文書編集画面510に対する入力を継続することができる。具体的には、図6の例では、「おは」に続く文字がキーボード等の入力装置107を利用して入力されうる。この場合、更に入力された文字によって、文例一覧L1に表示される文例が絞り込まれる。
続いて、ユーザによって、文例一覧L1の中から一つの文例が選択されると(S103でYES)、文例一覧表示部132は、選択された文例(以下、「対象文例」という。)に対して文例辞書記憶部14に記憶されている利用回数に、1を加算する(S104)。
続いて、未確定部分入力部133は、対象文例が未確定部分を含むか否かを判定する(S105)。対象文例が未確定部分を含むか否かは、対象文例の中に、<%N>の形式に該当する部分が含まれているか否かによって判定可能である。
対象文例が未確定部分を含む場合(S105でYes)、未確定部分入力部133は、対象文例の未確定部分を入力可能な状態(以下、「入力状態」という。)とする(S106)。
図7は、未確定部分が入力状態とされた例を示す図である。図7では、文例一覧L1において3番目の文例が対象文例として選択された例が示されている。3番目の文例の未確定部分は、コンボボックスC1によって置換されている。その結果、当該未確定部分に対して値の入力が可能となっている。
続いて、未確定部分入力部133は、対象文例の未確定部分に対する値の入力操作が終了するまで待機する(S107)。例えば、図6の例では、ユーザは、コンボボックスC1を介して、未確定部分に対する値の入力操作を行う。
図8は、第一の実施の形態における未確定部分に対する値の入力操作の一例を説明するための図である。図8では、コンボボックスC1に設定されている候補値が展開された例が示されている。当該候補値は、後述されるように、ステップS106において検索され、メモリ装置103に記憶されているものである。
ユーザは、展開された候補値の中から所望の候補値を選択することによって、未確定部分に対する値を入力することができる。また、ユーザは、候補値以外の新たな値をコンボボックスC1のテキストボックスに入力することにより、当該値を未確定部分に対して入力することができる。但し、ユーザは、必ずしも未確定部分に対して値を入力しなくてもよい。
コンボボックスC1において値の入力が行われ、エンターキーが押下されると、未確定部分入力部133は、未確定部分に対する値の入力操作の終了を検知する(S107でYes)。また、未確定部分に値が入力されない状態でエンターキーが押下された場合も、未確定部分入力部133は、未確定部分に対する値の入力操作の終了を検知する(S107でYes)。すなわち、本実施の形態では、エンターキーの押下が、未確定部分に対する値の入力操作の終了を意味する。他の操作によって、未確定部分に対する値の入力操作の終了が示されてもよい。未確定部分入力部133は、当該入力操作が終了した時点において未確定部分に入力されている値を、当該未確定部分の未確定IDに対応付けて、メモリ装置103に記憶する。但し、値が入力されていない未確定部分に関しては、メモリ装置103への記憶は行われない。
続いて、未確定部分確定部135は、未確定部分確定処理を実行する(S108)。未確定部分確定処理によって、対象文例の未確定部分に置き換わる文字列が確定される。なお、ステップS108の詳細については後述される。
続いて、文例出力部137は、対象文例を文書編集画面510に出力する(S109)。すなわち、対象文例が、文書編集画面510において編集対象とされている文書に展開される。なお、対象文例が未確定部分を含む場合は、ステップS108において確定された文字列によって当該未確定部分が置換された結果が、文書編集画面510に出力される。
続いて、ステップS106の詳細について説明する。図9は、第一の実施の形態において未確定部分を入力状態とする処理の処理手順の一例を説明するためのフローチャートである。
ステップS131において、未確定部分入力部133は、変数αに1を代入する。変数αの値は、対象文例において処理対象とされる未確定部分の未確定IDを示す。なお、一つの文例に対して、複数の未確定部分が含まれうる。
続いて、未確定部分入力部133は、対象文例内に、未確定IDが変数αの値に一致する未確定部分が有るか否かを判定する(S132)。例えば、未確定部分入力部133は、対象文例において、<%N>の形式を有する部分の中で、Nの値が変数αの値に一致する部分の有無を判定する。該当する未確定部分(以下、「未確定部分(α)」という。)が有る場合(S132でYES)、未確定部分入力部133は、未確定部分(α)に対する候補値を、候補値記憶部15より検索する(S133)。
図10は、第一の実施の形態における候補値記憶部の構成例を示す図である。図10において、候補値記憶部15は、いずれかの文例のいずれかの未確定部分に対する候補値ごとに、環境ID、文例ID、未確定ID、候補値ID、候補値、選択回数、及び優先度等を記憶する。
環境IDは、当該候補値が適用される編集環境に対する環境IDである。文例IDは、当該候補値が適用される文例の文例IDである。未確定IDは、当該候補値が適用される未確定部分の未確定IDである。候補値IDは、当該候補値に対する識別子である。本実施の形態において、候補値IDは、未確定IDが共通する範囲において一意とされている。候補値は、当該候補値自体である。選択回数は、当該候補値が、未確定部分に対する値として選択された回数である。優先度は、同一の未確定部分に対する複数の候補値の間における優先度である。
ステップS133において、未確定部分入力部133は、現在の環境IDと、対象文例の文例IDとを含み、変数αの値を未確定IDとして含むレコードを候補値記憶部15より検索し、メモリ装置103に記憶しておく。例えば、現在の編集環境の環境IDが「ENV01」であり、文例一覧L1において、3番目の文例が選択された場合、環境IDが「ENV01」であって、かつ、文例IDが「BUN003」であるレコードの中で、未確定IDが変数αの値に一致するレコードが検索される。現在の環境IDは、例えば、入力支援部13の起動時において、カレント環境記憶部17より読み込まれ、メモリ装置103に記憶されている。なお、候補値記憶部15には、全ての未確定部分に関して候補値が記憶されているとは限らない。したがって、ステップS133において、該当するレコードが検索されない場合もある。該当するレコードが検索された場合に、未確定部分(α)に対する候補値は有ると判定される。
未確定部分に対して候補値が有る場合(S134でYES)、未確定部分入力部133は、文例一覧L1上において、未確定部分(α)をコンボボックスに置き換える(S135)。続いて、未確定部分入力部133は、コンボボックスの項目選択リスト(リストボックス)に対して、候補値を選択肢として設定する(S136)。一方、未確定部分に対して候補値が無い場合(S134でNO)、未確定部分入力部133は、文例一覧L1上において、未確定部分(α)をテキストボックスに置き換える(S137)。
ステップS136又はS137に続いて、未確定部分入力部133は、変数αに1を加算し(S138)、ステップS132以降を繰り返す。
ステップS132において、未確定IDが変数αの値に一致する未確定部分が無い場合(S132でYES)、未確定部分入力部133は、図9の処理を終了させる。
続いて、図4のステップS108の詳細について説明する。図11は、第一の実施の形態における未確定部分確定処理の処理手順の一例を説明するためのフローチャートである。
ステップS210において、未確定部分確定部135は、変数αに1を代入する。変数αの値は、対象文例において処理対象とされる未確定部分の未確定IDを示す。
続いて、未確定部分確定部135は、対象文例において、未確定IDが変数αの値に一致する未確定部分(以下、「未確定部分(α)」という。)に対して、値は未入力であるか否かを判定する(S220)。すなわち、未確定部分(α)に対する入力値がメモリ装置103に記憶されていないかが判定される。
未確定部分(α)に対して、値が未入力である場合(S220でYES)、置換文字列生成部134は、未確定部分(α)に対する置換文字列を生成する(S230)。続いて、未確定部分確定部135は、未確定部分(α)を、生成された置換文字列によって置換する(S240)。すなわち、対象文例の未確定部分(α)に対して、置換文字列が埋め込まれる。
一方、未確定部分(α)に対して、値が入力されている場合(S220でNO)、未確定部分確定部135は、入力値に関して、候補値記憶部15を更新する(S250)。具体的には、現在の環境の環境IDに対応する候補値記憶部15(図10)において、対象文例の文例IDを含み、当該入力値と同一の候補値を含むレコードが有る場合、未確定部分確定部135は、当該レコードの選択回数に1を加算する。一方、現在の環境の環境IDに対応する候補値記憶部15において、対象文例の文例IDを含み、当該入力値と同一の候補値を含むレコードが無い場合、未確定部分確定部135は、当該入力値を候補値として含むレコードを、当該候補値記憶部15に追加する。当該レコードの環境ID、文例IDのそれぞれには、現在の環境ID、対象文例の文例IDが記憶される。当該レコードの未確定IDには、変数αの値が記憶される。当該レコードの選択回数には、「1」が記憶される。当該レコードの優先度には、例えば、「1」が記憶される。本実施の形態において、優先度は、その値が小さい程、優先度が高い。
このように、未確定部分に対する値の入力実績が、候補値記憶部15に記憶される。
続いて、未確定部分確定部135は、未確定部分(α)を、入力値によって置換する(S260)。すなわち、対象文例の未確定部分(α)に対して、入力値が埋め込まれる。
ステップS240又はS260に続いて、未確定部分確定部135は、対象文例の全ての未確定部分に関して処理が完了したか否かを判定する(S270)。未処理の未確定部分が有る場合(S270でNO)、未確定部分確定部135は、変数αに1を加算して(S280)、ステップS220を繰り返す。全ての未確定部分に関して処理が完了した場合(S270でYES)、図11の処理は終了する。
続いて、ステップS230の詳細について説明する。図12は、第一の実施の形態における置換文字列生成処理の処理手順の一例を説明するためのフローチャートである。
ステップS301において、置換文字列生成部134は、置換文字列用領域をメモリ装置103内に確保する。置換文字列用領域とは、置換文字列を記憶するための記憶領域である。置換文字列用領域には、初期値として、例えば、空文字が入力される。続いて、置換文字列生成部134は、書式情報記憶部16より、書式情報を読み込む(S302)。
図13は、第一の実施の形態における書式情報記憶部の構成例を示す図である。図13において、書式情報記憶部16は、書誌情報を構成するパラメータとして、開始記号、終了記号、区切り記号、最大連結数、及び丸め文字列等を記憶する。
開始記号は、置換文字列の先頭に付加される記号である。終了記号は、置換文字列の末尾に付加される記号である。区切り記号は、置換文字列を構成する要素の間に付加される記号である。置換文字列を構成する要素とは、図12の実行時において処理対象とされている未確定部分(α)に対する候補値である。すなわち、後述されるように、置換文字列は、未確定部分(α)に対する各候補値を連結又は接続することにより生成される。最大連結数は、候補値の連結数の最大値である。最大連結数は、置換文字列が無制限に長くなるのを防止するためのパラメータである。最大連結数の代わりに、置換文字列の文字数の上限値が設定されてもよい。丸め文字列は、未確定部分(α)に対して、最大連結数を超える候補値が存在する場合に、置換文字列に含めることができない候補値をまとめて表現するために用いられる文字列である。
続いて、置換文字列生成部134は、未確定部分(α)に対する候補値を取得する(S303)。当該候補値は、図9のステップS133において候補値記憶部15より検索され、メモリ装置103に記憶されているレコードの中で、未確定部分(α)の未確定IDを含むレコードの候補値である。例えば、図10の例に基づけば、現在の環境IDが、「ENV01」であり、対象文例の文例IDが「BUN003」であり、未確定IDが「1」である場合、「富士 太郎」、「富士 花子」、「鈴木 一郎」、及び「佐藤 二郎」が、未確定部分(α)に対する候補値として取得される。
候補値が取得されない場合、すなわち、未確定部分(α)に対する候補値が無い場合(S304でNO)、図12の処理は終了する。一方、少なくとも一つの候補値が取得された場合(S304でYES)、置換文字列生成部134は、例えば、各候補値の選択回数及び優先度等に基づいて、候補値のソートを行う(S305)。例えば、選択回数の降順又は優先度の値の昇順に、候補値がソートされる。選択回数と優先度との関係は、適宜定められればよい。例えば、選択回数が同じ候補値間の優劣の判定に、優先度が用いられてもよい。
続いて、置換文字列生成部134は、変数iに1を代入する(S306)。変数iは、処理対象の候補値を特定するための変数である。続いて、置換文字列生成部134は、置換文字列用領域の先頭に、開始記号を記録する(S307)。続いて、置換文字列生成部134は、ソート順においてi番目の候補値を、それまで置換文字列用領域に記録された文字列の末尾に連結する(S308)。
続いて、置換文字列生成部134は、変数iの値が、未確定部分(α)に対する候補値の数以上であるか否かを判定する(S309)。すなわち、未確定部分(α)に対する全ての候補値について、置換文字列への連結が完了したか否かが判定される。変数iの値が候補値の数未満である場合(S309でNO)、置換文字列生成部134は、変数iの値が最大連結数以上であるか否かを判定する(S310)。変数iの値が最大連結数未満である場合(S309でNO)、置換文字列生成部134は、変数iに1を加算する(S311)。すなわち、ソート順において次の候補値が処理対象とされる。続いて、置換文字列生成部134は、それまで置換文字列用領域に記録された文字列の末尾に、区切り記号を連結する(S312)。続いて、ステップS307以降が実行される。
ステップS309において、変数iの値が、未確定部分(α)に対する候補値以上である場合(S309でYES)、置換文字列生成部134は、それまで置換文字列用領域に記録された文字列の末尾に終了記号を連結する(S314)。
また、ステップS310において、変数iの値が、最大連結数以上である場合(S310でYES)、置換文字列生成部134は、それまで置換文字列用領域に記録された文字列の末尾に丸め文字列を連結し(S313)、その後に終了記号を連結する(S314)。
図11及び図12の処理の結果、例えば、図8において選択されている文例の未確定部分に対して値が入力されなかった場合、図4のステップS109では、図14に示されるような文例が、文書編集画面510に出力される。
図14は、未確定部分に対して値が入力されなかった場合の文例の出力例を示す図である。図14では、未確定部分が、「(富士 太郎/富士 花子/鈴木 一郎/佐藤 二郎)」によって置換された文例が、文書編集画面510に出力されている。すなわち、未確定部分に対応する候補値が列記された文字列によって、当該未確定文字列が置換されている。
上述したように、第一の実施の形態によれば、未確定部分に値が入力されない場合、当該未確定部分に対して記憶されている候補値が列記された文字列によって当該未確定部分が置換された状態で、当該未確定部分を含む文例が出力される。その結果、未確定部分を含む文例の使い易さを向上させることができる。具体的には、例えば、ユーザは、後で文書を編集する際に、不要な候補値の削除等の簡単な操作によって、当該未確定部分に対する値を確定することができる。また、文書が印刷された後に、無効な候補値に取消線等を引いたり、有効な候補値を丸で囲んだりすることにより、未確定部分に対する編集を行うことができる。
続いて、具体的なシーンを想定して、本実施の形態の入力支援装置10の利用例を説明する。
第一のシーンとして、入力支援装置10のユーザは、自動車販売会社の営業マンであるとする。ユーザが、顧客先に出向いて顧客の要望をヒアリングする場面を想定する。ユーザは、顧客が車種Aの4WDの購入を希望していることだけを聞いている。ユーザは、顧客先に出向く前に、社内にて、入力支援装置10を利用して、顧客の要望を記入するための書類であるヒアリングシートを作成する。この際、ユーザは、編集環境を、車種Aのヒアリングシートの編集用の環境(以下、「車種A用環境」という。)に切り替える。その結果、カレント環境記憶部17には、車種A用環境に対する環境IDが記憶される。
なお、ヒアリングシートの雛型は、図15に示されるように、予め文例として文例辞書記憶部14に記憶されている。
図15は、文例辞書記憶部におけるヒアリングシートの雛型の記憶例を示す図である。図15において、文例IDが「BUN011」であるレコードには、「ヒアリングシート」という読みに対して、ヒアリングシートの雛型が文例として登録されている。したがって、ユーザによって、例えば、「ヒア」という文字列が入力されると、文例一覧表示部132は、ヒアリングシートの雛型としての文例を含む文例一覧を表示装置106に表示させる。当該ヒアリングシートの雛型は、車種、駆動形式、ボディカラー、シートカラー、付属ナビ、及び寒冷地仕様等の項目を含む。各項目に対する値は、未確定部分として定義されている。文例一覧において、当該文例が選択されると、当該未確定部分は入力状態となる。
ユーザは、顧客から車種及び駆動形式のみを聞いている。そこで、ユーザは、駆動形式に対する値のみを入力し、他の未確定部分は未入力のまま、未確定部分に対する入力を確定させる。その結果、図16に示されるような文例がヒアリングシートとして出力される。図16は、ヒアリングシートとしての文例の出力例を示す図である。
図16に示されるヒアリングシートでは、ユーザによって入力された駆動形式(「4WD」)以外の各項目には、当該項目の未確定部分に対して、車種A用環境に係る候補値記憶部15に記憶されている候補値が列記されている。車種に関して「A」のみが出力されているのは、車種A用環境に対する候補値記憶部15には、車種の項目に関する未確定部分に対して、「A」のみが候補値として記憶されてからである。すなわち、図16に示されるヒアリングシートの各項目の値として列記されている候補値は、車種Aに関して選択可能な候補値である。したがって、仮に、顧客が車種Bを希望している場合、ユーザは、編集環境を、車種B用環境に切り替えればよい。そうすることにより、入力支援装置10は、車種B用環境に対する候補値記憶部15を利用する。その結果、各項目に対する値には、車種Bに関して選択可能な候補値が列記される。
ユーザは、図16のように出力されたヒアリングシートをノートPC等に保存して、又は印刷して顧客先に出向く。ユーザは、当該ヒアリングシートを利用して、顧客の希望についてヒアリングを行う。この場合、ユーザは、例えば、次のような利点を享受することができる。
第一の利点として、各項目に関して選択可能な値が、保存又は印刷されたヒアリングシートに引き継がれる。例えば、ボディカラーに関しては、ホワイト/ブラック/レッド/ブルーの4色が列記されている。この4色は、車種Aに関して選択可能なボディカラー、又は車種Aに関して過去に入力されたボディカラーである。このように、限定された値又は実績値等の情報が、保存又は印刷されたヒアリングシートに引き継がれる。その結果、ユーザは、ボディカラーとして選択可能な値を容易に特定することができる。仮に、未確定部分に関して空白が展開された場合、ユーザは、車種Aのマニュアル等を別途参照して、選択可能なボディカラーを特定しなければならない。
第二の利点として、ユーザが記憶していない用語等が、保存又は印刷されたヒアリングシートに引き継がれる。例えば、付属ナビの項目には、<機種コード>:<ナビの名称>といった形式で、候補値が列記されている。ユーザは、顧客とのヒアリング時には、ナビの名称によって付属ナビを識別して、顧客に対する説明を行う。ヒアリングを終え、帰社した後、ユーザは、ヒアリングシートの内容を、顧客管理システム等のコンピュータシステムに入力する。この際、コンピュータシステムには、機種コードによる入力が必要とされることが想定される。このような場合であっても、ユーザは、ヒアリングシートに列記されている候補値を参照することで、顧客が希望する付属ナビの機種コードを容易に特定することができる。仮に、未確定部分に関して空白が展開された場合、ユーザは、付属ナビのマニュアル等を別途参照して、顧客が希望する付属ナビの機種コードを特定しなければならない。
次に、第二のシーンとして、ユーザが、入力支援装置10を利用して定例会議の案内文書を作成している途中で、急に外出しなければならなくなった場合を想定する。ユーザは、外出先において、案内文書を完成させ、案内文書をメールで発信しようと考えている。なお、案内文書の雛型は、図17に示されるように、予め文例として文例辞書記憶部14に記憶されている。
図17は、文例辞書記憶部における案内文書の雛型の記憶例を示す図である。図17において、文例IDが「BUN051」であるレコードには、「テイレイカイアンナイ」という読みに対して、定例会議の案内文書の雛型が文例として登録されている。したがって、ユーザによって、例えば、「テイ」という文字列が入力されると、文例一覧表示部132は、案内文書の雛型としての文例を含む文例一覧を表示装置106に表示させる。当該案内文書の雛型では、場所、議事録担当、及び次回の幹事が未確定部分として定義されている。文例一覧において、当該文例が選択されると、当該未確定部分は入力状態となる。
ユーザは、急な外出のため、各未確定部分に関して値を入力せずに、未確定部分に対する入力を確定させる。その結果、図18に示されるような文例が案内文書として出力される。図18は、案内文書としての文例の出力例を示す図である。
図18に示される案内文書の各未確定部分には、当該未確定部分に対して候補値記憶部15に記憶されている候補値が列記されている。
ユーザは、図18に示される案内文書をノートPCに保存して外出することで、外出先において、当該ノートPCを用いて、案内文書を完成させることができる。この場合、ユーザは、例えば、次のような利点を享受することができる。
第一の利点として、ユーザが正確に記憶していない名称が、保存された案内文書に引き継がれる。図18に示される案内文書において、場所には、函館文化会館、旭川ホール、女満別市民センターが列記されている。ユーザは、場所に関して、「函館」、「旭川」、「女満別」までは記憶しているが、施設の名称までは記憶していなかった場合であっても、場所に関して正確に指定された案内文書を作成することができる。仮に、未確定部分に関して空白が展開された場合、ユーザは、場所に関して、都市の名前までしか入力することができない。
第二の利点として、ユーザが読めても正確に書けない漢字が案内文書に引き継がれる。本実施の形態によれば、未確定部分である議事録担当に関して、過去の入力実績等に基づいて、「烏帽子田」、「喜屋武」、及び「齊藤」の三人の苗字が列記される。このうち、「齊藤」ついて、ユーザは、”さいとう”という読みは知っているが、正確な漢字を憶えていない。議事録担当に関して入力したい値が「齊藤」であって場合、ユーザは、「齊藤」以外の苗字を削除等することで、正しい漢字を案内文書に入力することができる。仮に、未確定部分に関して空白が展開された場合、ユーザは、「齊藤」、「斎藤」、又は「斉藤」等、読みは同じであっても漢字が異なる複数の候補の中のいずれを入力すればよいのか判断に困る可能性が有る。
第三の利点として、ユーザが読みを知らない漢字が案内文書に引き継がれる。本実施の形態によれば、未確定部分である次回の幹事に関して、過去の入力実績等に基づいて、「枇杷」、「山本」、及び「神田」の3人の苗字が列記される。「枇杷」について、ユーザは読みを知らない可能性がある。次回の幹事に関して入力したい値が「枇杷」であった場合、ユーザは、「枇杷」以外の苗字を削除等することで、正しい漢字を案内文書に入力することができる。仮に、未確定部分に関して空白が展開された場合、ユーザは、読みを知らない「枇杷」という文字の入力に苦労する可能性が有る。
次に、第二の実施の形態について説明する。第二の実施の形態では、未確定部分に関して、ユーザによって明示的に候補値の列記が指定された場合に限り、候補値の列記された置換文字列によって当該未確定部分が置換される例を説明する。なお、第二の実施の形態においては、第一の実施の形態と異なる点について説明する。したがって、第二の実施の形態において特に言及されない点については、第一の実施の形態と同様でよい。
図19は、第二の実施の形態において未確定部分を入力状態とする処理の処理手順の一例を説明するためのフローチャートである。図19中、図9と同一ステップには同一ステップ番号を付し、その説明は省略する。
図19では、ステップS136が、ステップS136aとステップS136bとに置き換わっている。ステップS136aにおいて、未確定部分入力部133は、コンボボックスの項目選択リストに対して、列記指示文字列を選択肢として設定する。列記指示文字列とは、候補値の列記の指示を示す文字列をいい、本実施の形態では、書式情報記憶部16に記憶されている。
図20は、第二の実施の形態における書式情報記憶部の構成例を示す図である。図20に示されるように、第二の実施の形態において、書式情報記憶部16は、列記指示文字列を記憶する。図20では、列記指示文字列として、「★後で決定★」という文字列が設定された例が示されている。すなわち、未確定部分の値は、後で決定するという意味を示す文字列が、列記指示文字列とされている。なお、例えば、「候補値を列記」等、他の文字列が列記指示文字列として設定されてもよい。
続くステップS136bにおいて、未確定部分入力部133は、図9のステップS136と同様の処理を実行する。
以上の処理の結果、第二の実施の形態では、図21に示されるような状態において、未確定部分に対する入力が行われる。図21は、第二の実施の形態における未確定部分に対する値の入力操作の一例を説明するための図である。図21中、図8と同一部分には同一符号を付している。
図21に示されるように、第二の実施の形態では、コンボボックスC1の項目選択リストに、列記指示文字列である「★後で決定★」が選択肢として表示される。当該選択肢は、未確定部分を候補値が列記された置換文字列によって置換するかを選択させる表示部品の一例である。ユーザは、当該選択肢を選択することで、当該未確定部分に関して、候補値の列記を指示することができる。
第二の実施の形態では、更に、未確定部分確定処理が図22に示されるように変化する。図22は、第二の実施の形態における未確定部分確定処理の処理手順の一例を説明するためのフローチャートである。図22中、図11と同一ステップには同一ステップ番号を付し、その説明は省略する。
図22に示されるように、未確定部分(α)に対して値が未入力である場合(S220でYES)、未確定部分確定部135は、ステップS230及びS240を実行しない。
一方、未確定部分(α)に対して値が入力されている場合(S220NO)、未確定部分確定部135は、入力値が列記指示文字列であるか否かを判定する(S225)。入力値が列記指示文字列である場合(S225でYES)、未確定部分確定部135は、ステップS230及びS240を実行する。すなわち、未確定部分(α)に対する候補値が列記された置換文字列によって、未確定部分(α)が置換される。
入力値が列記指示文字列ではない場合(S225でNO)、未確定部分確定部135は、ステップS250及びステップS260を実行する。すなわち、入力値に関して候補値記憶部15が更新され、未確定部分(α)が入力値によって置換される。
上述したように、第二の実施の形態によれば、未入力の未確定部分に関して、ユーザによって明示的に候補値の列記が指示された場合に限り、候補値が列記された置換文字列によって当該未確定部分が置換される。したがって、例えば、一部の未入力の未確定部分に関しては、空白のままにしておきたいといったユーザのニーズに応えることができる。
なお、候補値の列記を指示させるのではなく、候補値を列記しないことを指示させてもよい。
次に、第三の実施の形態について説明する。第三の実施の形態では、置換文字列に含める候補値を選択可能とした例について説明する。なお、第三の実施の形態においては、第一の実施の形態と異なる点について説明する。したがって、第三の実施の形態において特に言及されない点については、第一の実施の形態と同様でよい。
第三の実施の形態では、図4のステップS106において、例えば、図23に示されるような状態で、未確定部分に対する入力が行われる。図23は、第三の実施の形態における未確定部分に対する値の入力操作の一例を説明するための図である。図23中、図8と同一部分には同一符号を付している。
図23では、コンボボックスC1の項目選択リストの項目ごとにチェックボックスが設けられている。ユーザは、チェックボックスを操作することにより、項目ごと、すなわち、候補値ごとに、置換文字列に含めるか否かを選択することができる。チェックボックスの操作とは、チェックボックスをチェック状態とすること、又はチェックボックスのチェック状態を解除することをいう。
なお、一つの候補値を選択する場合、ユーザは、項目選択リストにおいて、当該候補値に対応する項目を選択すればよい。この場合、当該項目のチェックボックスがチェック状態でなくても、当該候補値が入力されたことになる。一方、複数の候補値が列記された置換文字列によって未確定部分を置換させたい場合、ユーザは、列記対象とする候補値に係る項目のチェックボタンをチェックし、いずれの項目も選択しないまま、コンボボックスC1の項目選択リストを閉じればよい。
コンボボックスC1において、チェックボタンが操作された場合、図24に示されるような処理が実行させる。
図24は、チェックボタンの操作に応じて実行される処理手順の一例を説明するためのフローチャートである。
未確定部分入力部133は、チェックボタンの操作を検知すると、項目選択リストにおいて操作対象とされたチェックボタンを有する項目に係る候補値のレコードを、候補値記憶部15より検索する(S401)。すなわち、現在の環境IDと、対象文例の文例IDと、入力対象とされている未確定部分の未確定IDと、当該候補値の候補値IDとを含むレコードが、候補値記憶部15より検索される。
図25は、第三の実施の形態における候補値記憶部の構成例を示す図である。図25に示されるように、第三の実施の形態の候補値記憶部15の各レコードは、列記対象の項目を有する。列記対象は、当該レコードに係る候補値が列記対象であるか否かを示す項目である。「ON」は、列記対象であることを示し、「OFF」は、列記対象でないことを示す。
続いて、未確定部分入力部133は、検索されたレコードの「列記対象」に対し、操作されたチェックボタンの状態に応じた値を記憶する(S402)。具体的には、当該チェックボタンがチェックされていれば、「ON」が記憶される。当該チェックボタンがチェックされていなければ、「OFF」が記憶される。
以上のように、各候補値が列記対象であるか否かは、候補値記憶部15に記憶される。したがって、第三の実施の形態において、置換文字列の生成処理(図12)のステップS303では、未確定部分(α)に対する候補値であって、かつ、列記対象であるもの(すなわち、「列記対象」の値が「ON」であるもの)が取得される。その結果、ユーザによって列記対象として選択された候補値のみを、置換文字列に含めることができる。
なお、図23のような項目選択リストが表示される際に、候補値記憶部15の「列記対象」の値が参照されて、当該値に応じて各チェックボタンの状態が初期化されてもよい。そうすることにより、過去の選択実績を各チェックボタンに反映させることができる。
また、チェックボタンの操作結果は、必ずしも、候補値記憶部15に記憶されなくてもよい。例えば、メモリ装置103において、変数の値として記憶されてもよい。
上述したように、第三の実施の形態によれば、ユーザによって選択された候補値のみを置換文字列に含めることができる。
なお、第三の実施の形態と第二の実施の形態とが組み合わされてもよい。
なお、上記各実施の形態において、辞書検索部131は、検索部の一例である。文例一覧表示部132は、表示部の一例である。置換文字列生成部134は、生成部の一例である。文例出力部137は、出力部の一例である。文例辞書記憶部14は、第一の記憶部の一例である。候補値記憶部15は、第二の記憶部の一例である。
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
以上の説明に関し、更に以下の項を開示する。
(付記1)
読みに対応付けて文例を記憶する第一の記憶部より、入力された読みに対応する文例を検索し、
検索された文例の一覧を表示し、
前記一覧の中から未確定部分を含む文例が選択され、前記未確定部分に対して値が入力されなかった場合に、前記未確定部分に対応付けて第二の記憶部が記憶する一以上の値を含む文字列を生成し、
前記選択された文例の前記未確定部分が前記文字列によって置換された文例を出力する処理をコンピュータに実行させる入力支援プログラム。
(付記2)
前記一覧の中から選択された文例の前記未確定部分を前記文字列によって置換するか否かを選択させる処理を前記コンピュータに実行させ、
前記生成する処理は、前記文字列によって置換することが選択された前記未確定部分について、当該未確定部分に対応付けて第二の記憶部が記憶する一以上の値を含む文字列を生成する付記1記載の入力支援プログラム。
(付記3)
前記一覧の中から選択された文例の前記未確定部分に対応付けて前記第二の記憶部が記憶する複数の値の一覧を表示させる処理を前記コンピュータに実行させ、
前記生成する処理は、前記値の一覧の中から選択された複数の値を含む文字列を生成する付記1又は2記載の入力支援プログラム。
(付記4)
読みに対応付けて文例を記憶する第一の記憶部より、入力された読みに対応する文例を検索する検索部と、
検索された文例の一覧を表示する表示部と、
前記一覧の中から未確定部分を含む文例が選択され、前記未確定部分に対して値が入力されなかった場合に、前記未確定部分に対応付けて第二の記憶部が記憶する一以上の値を含む文字列を生成する生成部と、
前記選択された文例の前記未確定部分が前記文字列によって置換された文例を出力する出力部とを有する入力支援装置。
(付記5)
前記一覧の中から選択された文例の前記未確定部分を前記文字列によって置換するか否かを選択させる選択部を有し、
前記生成する処理は、前記文字列によって置換することが選択された前記未確定部分について、当該未確定部分に対応付けて第二の記憶部が記憶する一以上の値を含む文字列を生成する付記4記載の入力支援装置。
(付記6)
前記一覧の中から選択された文例の前記未確定部分に対応付けて前記第二の記憶部が記憶する複数の値の一覧を表示させる第二の表示部を有し、
前記生成部は、前記値の一覧の中から選択された複数の値を含む文字列を生成する付記4又は5記載の入力支援装置。
(付記7)
読みに対応付けて文例を記憶する第一の記憶部より、入力された読みに対応する文例を検索し、
検索された文例の一覧を表示し、
前記一覧の中から未確定部分を含む文例が選択され、前記未確定部分に対して値が入力されなかった場合に、前記未確定部分に対応付けて第二の記憶部が記憶する一以上の値を含む文字列を生成し、
前記選択された文例の前記未確定部分が前記文字列によって置換された文例を出力する処理をコンピュータが実行する入力支援方法。
(付記8)
前記一覧の中から選択された文例の前記未確定部分を前記文字列によって置換するか否かを選択させる処理を前記コンピュータが実行し、
前記生成する処理は、前記文字列によって置換することが選択された前記未確定部分について、当該未確定部分に対応付けて第二の記憶部が記憶する一以上の値を含む文字列を生成する付記7記載の入力支援方法。
(付記9)
前記一覧の中から選択された文例の前記未確定部分に対応付けて前記第二の記憶部が記憶する複数の値の一覧を表示させる処理を前記コンピュータが実行し、
前記生成する処理は、前記値の一覧の中から選択された複数の値を含む文字列を生成する付記7又は8記載の入力支援方法。