(57)【要約】  一貫性のないデータがデータベースに格納されることを抑制する。  端末装置（１０）は、表示部（１１）に表示される入力フィールド（１１ａ）の項目名を示す項目情報を管理装置（２０）に送信する。管理装置（２０）は、それぞれが複数のデータの候補を含み、所定条件に基づいて分類された辞書（２１ａ，２１ｂ，・・・）の中から、受信した項目情報に応じた辞書を選択する。管理装置（２０）は、選択した辞書に基づいて、項目情報に対応する少なくとも１つのデータの候補を端末装置（１０）に送信する。
2014006715.tif 000002
【特許請求の範囲】
【請求項１】
表示部を備える端末装置と前記端末装置からネットワークを介してアクセス可能な管理装置とを含むシステムが実行する入力支援方法であって、
前記表示部に表示される入力フィールドの項目名を示す項目情報を、前記端末装置から前記管理装置に送信し、
それぞれが複数のデータの候補を含み、所定条件に基づいて分類された複数の辞書の中から、前記管理装置が受信した前記項目情報に応じた辞書を選択し、
前記選択された辞書に基づいて、前記項目情報に対応する少なくとも１つのデータの候補を、前記管理装置から前記端末装置に送信する、
入力支援方法。
【請求項２】
前記入力フィールドに対する入力操作を検出し、前記入力操作に応じた入力データを前記端末装置から前記管理装置に送信し、
前記選択された辞書に含まれる複数のデータの候補の中から、前記管理装置が受信した前記入力データと置き換えて前記入力フィールドに入力される１またはそれ以上のデータの候補を選択する、
請求の範囲第１項記載の入力支援方法。
【請求項３】
検出する前記入力操作は、文字入力、入力した文字に対する変換命令の入力、および、前記入力フィールドから前記表示部に表示された他の入力フィールドへのフォーカス移動のうちの少なくとも１つを含む、請求の範囲第２項記載の入力支援方法。
【請求項４】
前記入力フィールドに入力された入力データを確定するための前記表示部に表示された表示部品に対する選択操作を検出し、前記選択操作を受けて前記入力データを前記端末装置から前記管理装置に送信し、
前記選択された辞書に含まれる複数のデータの候補の中から、前記管理装置が受信した前記入力データと置き換えて前記入力フィールドに入力される１またはそれ以上のデータの候補を選択する、
請求の範囲第１項記載の入力支援方法。
【請求項５】
項目名とデータ型との対応関係を示すデータ型情報を参照して、前記管理装置が受信した前記項目情報に基づいて、前記入力フィールドのデータ型を判定し、
辞書の選択では、前記判定したデータ型に応じた辞書を前記複数の辞書の中から選択する、
請求の範囲第１項記載の入力支援方法。
【請求項６】
前記端末装置が受信したデータの候補の何れかを、前記入力フィールドの入力データとして確定し、
前記確定した入力データを、データベースに登録するデータとして、前記端末装置から前記管理装置または他の管理装置に送信する、
請求の範囲第１項記載の入力支援方法。
【請求項７】
表示部を備え、前記表示部に表示される入力フィールドの項目名を示す項目情報をネットワークを介して送信する端末装置と、
それぞれが複数のデータの候補を含み所定条件に基づいて分類された複数の辞書を記憶する記憶部を備え、前記端末装置から受信した前記項目情報に応じた辞書を前記複数の辞書の中から選択し、前記選択された辞書に基づいて、前記項目情報に対応する少なくとも１つのデータの候補を前記端末装置に送信する管理装置と、
を有する情報処理システム。
【請求項８】
端末装置からネットワークを介してアクセス可能なコンピュータに、
前記端末装置から、前記端末装置が備える表示部に表示される入力フィールドの項目名を示す項目情報を受信し、
それぞれが複数のデータの候補を含み、所定条件に基づいて分類された複数の辞書の中から、受信した前記項目情報に応じた辞書を選択し、
前記選択された辞書に基づいて、前記項目情報に対応する少なくとも１つのデータの候補を前記端末装置に送信する、
処理を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は入力支援方法、情報処理システムおよびプログラムに関する。
【背景技術】
【０００２】
現在、端末装置の画面上で入力されたデータをデータベースに格納し、データベースから後でデータを検索できるようにした情報処理システムが利用されている。このような情報処理システムとしては、例えば、パーソナルコンピュータなどの端末装置が、入力データをＷｅｂサーバなどのサーバ装置にネットワークを介して送信し、サーバ装置が、端末装置から受信した入力データをデータベースに格納する形態が考えられる。端末装置に表示される入力画面は、Ｗｅｂサーバから提供されるＨＴＭＬ（HyperText Markup Language）文書などの画面情報によって定義されることもあるし、端末装置にインストールされたアプリケーションソフトウェアによって定義されることもある。【０００３】
ここで、データベースに格納されたデータは、検索や集計を効率的に行えるように表記方法が統一されていることが好ましい。例えば、住所や会社名について、正式名称や略称のように複数通りの表記方法が存在する場合に、異なる表記方法の住所や会社名がデータベースに混在して登録されていないことが好ましい。異なる表記方法のデータが混在していると、単純なマッチング処理では実質的に同一内容を指しているデータを漏れなく検索することが難しくなり、データを有効に活用できなくなるおそれがある。一方で、複数のユーザがデータを入力する情報処理システムでは、表記方法の揺れが発生しやすい。【０００４】
そこで、異なる表記方法のデータがデータベースに混在しているという状態を解消するため、データクレンジングという技術が利用されている。データクレンジングでは、表記方法を修正すべきデータとそのデータの修正方法との対応関係を示すルールを定義しておき、ルールに従って修正対象のデータをデータベースから検索して自動的に修正する。ただし、データクレンジングでは、データベースに格納された修正対象のデータ全てについて、コンピュータによって修正後の表記を一意に特定できるとは限らず、自動的に修正できるデータの割合を１００％とすることは容易でない。コンピュータによって自動的に修正できなかったデータについては、情報処理システムの管理者がデータを入力したユーザに、どのような意図でそのデータを入力したのか確認することがある。【０００５】
なお、Ｗｅｂサーバがテキスト入力欄の種別を示す識別子が付された文書データを送信し、文字入力支援装置が識別子に応じた辞書情報を文書データに埋め込み、ユーザ端末が埋め込まれた辞書情報を参照して入力文字の変換候補を表示するシステムが提案されている。また、ＯＣＲ（Optical Character Reader）を用いて画像から文字列を認識し、複数の種類の辞書データのうち特定のカテゴリ名によって指定される種類の辞書データと照合して、認識した文字列を適切な単語に修正するシステムが提案されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−２０８６５号公報
【特許文献２】特開２００３−１８７１８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記のように、データクレンジングによる自動修正を１００％の精度で行えるわけではないため、表記方法に一貫性のないデータがデータベースに格納されてしまうと、一貫性の欠如を後から解消することは容易でない。そこで、データベースにデータを格納する前に、表記方法の統一されたデータが入力されるように情報処理システムが支援することが好ましい。例えば、ユーザが自由形式の文字列を入力するのではなくリストの中から文字列を選択するような入力画面を用意し、ユーザが所定の表記方法以外のデータを入力しないようにする方法が考えられる。しかし、既存の情報処理システムについては、入力画面やサーバ装置のプログラムなどを改変できるとは限らず、既存の情報処理システムに入力支援の機能を追加することは容易でなかったという問題がある。【０００８】
一つの側面では、本発明は、一貫性のないデータがデータベースに格納されることを抑制できる入力支援方法、情報処理システムおよびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
一態様では、表示部を備える端末装置と端末装置からネットワークを介してアクセス可能な管理装置とを含むシステムが実行する入力支援方法が提供される。入力支援方法では、表示部に表示される入力フィールドの項目名を示す項目情報を、端末装置から管理装置に送信する。それぞれが複数のデータの候補を含み、所定条件に基づいて分類された複数の辞書の中から、管理装置が受信した項目情報に応じた辞書を選択する。選択された辞書に基づいて、項目情報に対応する少なくとも１つのデータの候補を、管理装置から端末装置に送信する。【００１０】
また、一態様では、端末装置と管理装置とを有する情報処理システムが提供される。端末装置は、表示部を備え、表示部に表示される入力フィールドの項目名を示す項目情報をネットワークを介して送信する。管理装置は、それぞれが複数のデータの候補を含み所定条件に基づいて分類された複数の辞書を記憶する記憶部を備え、端末装置から受信した項目情報に応じた辞書を複数の辞書の中から選択し、選択された辞書に基づいて、項目情報に対応する少なくとも１つのデータの候補を端末装置に送信する。【００１１】
また、一態様では、端末装置からネットワークを介してアクセス可能なコンピュータに実行させるプログラムが提供される。プログラムを実行するコンピュータは、端末装置から、端末装置が備える表示部に表示される入力フィールドの項目名を示す項目情報を受信する。それぞれが複数のデータの候補を含み、所定条件に基づいて分類された複数の辞書の中から、受信した項目情報に応じた辞書を選択する。選択された辞書に基づいて、項目情報に対応する少なくとも１つのデータの候補を端末装置に送信する。
【発明の効果】
【００１２】
一つの側面では、一貫性のないデータがデータベースに格納されることを抑制できる。
本発明の上記および他の目的、特徴および利点は本発明の例として好ましい実施の形態を表す添付の図面と関連した以下の説明により明らかになるであろう。
【図面の簡単な説明】
【００１３】
【図１】第１の実施の形態の情報処理システムを示す図である。
【図２】第２の実施の形態の情報処理システムを示す図である。
【図３】入力項目を含むウィンドウの例を示す図である。
【図４】ウィンドウ上での入力支援の例を示す図である。
【図５】クライアント装置のハードウェア例を示すブロック図である。
【図６】クライアント装置とサーバ装置の機能例を示すブロック図である。
【図７】ウィンドウ識別テーブルの例を示す図である。
【図８】データ型テーブルの例を示す図である。
【図９】ボタンテーブルの例を示す図である。
【図１０】制御方法テーブルの例を示す図である。
【図１１】入力項目テーブルの例を示す図である。
【図１２】決定ボタンテーブルの例を示す図である。
【図１３】クライアント装置とサーバ装置の通信例を示すシーケンス図である。
【図１４】識別情報抽出と制御方法判定の手順例を示すフローチャートである。
【図１５】入力項目評価の手順例を示すフローチャートである。
【図１６】データ型判定の手順例を示すフローチャートである。
【図１７】ボタン評価の手順例を示すフローチャートである。
【図１８】決定ボタン判定の手順例を示すフローチャートである。
【図１９】入力制御の手順例を示すフローチャートである。
【図２０】候補判定の手順例を示すフローチャートである。
【図２１】検査・修正制御の手順例を示すフローチャートである。
【図２２】検査・修正判定の手順例を示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下、本実施の形態を図面を参照して説明する。
［第１の実施の形態］
図１は、第１の実施の形態の情報処理システムを示す図である。第１の実施の形態の情報処理システムは、端末装置１０および管理装置２０を有する。端末装置１０と管理装置２０とはネットワーク３を介して接続されている。例えば、端末装置１０はユーザが操作するクライアントコンピュータであり、管理装置２０は端末装置１０からアクセスされるサーバコンピュータである。ネットワーク３は、ＬＡＮ（Local Area Network）でもよいし、インターネットなどの広域ネットワークであってもよい。
【００１５】
端末装置１０は、表示部１１、通信部１２および制御部１３を有する。
表示部１１は、入力画面を表示する。入力画面は、端末装置１０にインストールされたアプリケーションソフトウェアによって定義されたものでもよいし、管理装置２０または他のサーバ装置から提供されるＨＴＭＬ文書などの画面情報に基づいてＷｅｂブラウザが描画するものでもよい。入力画面には、入力フィールド１１ａが含まれる。入力フィールド１１ａに対しては、ユーザが文字列などのデータを入力することができる。入力フィールド１１ａの近くには、入力フィールド１１ａの項目名が表示されることがある。
【００１６】
通信部１２は、ネットワーク３を介して管理装置２０や他のサーバ装置と通信を行う。通信部１２は、例えば、ＴＣＰ（Transmission Control Protocol）／ＩＰ（Internet Protocol）やＨＴＴＰ（Hypertext Transfer Protocol）などのプロトコルを用いて、管理装置２０や他のサーバ装置にアクセスしてデータ通信を行う。
【００１７】
制御部１３は、管理装置２０と連携して、入力フィールド１１ａへのデータ入力を支援する。制御部１３は、例えば、１またはそれ以上のプロセッサおよびメモリを含む。プロセッサは、ＣＰＵ（Central Processing Unit）やＤＳＰ（Digital Signal Processor）であってもよい。また、プロセッサは、ＡＳＩＣ（Application Specific Integrated Circuit）やＦＰＧＡ（Field Programmable Gate Array）などの電子回路を含んでもよい。メモリは、ＲＡＭ（Random Access Memory）であってもよい。例えば、プロセッサがメモリに記憶されたプログラムを実行することで、以下に述べる機能を実現する。
【００１８】
管理装置２０は、記憶部２１、通信部２２および制御部２３を有する。
記憶部２１は、辞書２１ａ，２１ｂを含む複数の辞書を記憶する。複数の辞書それぞれは、複数のデータの候補を含む。複数の辞書は、例えば、データの候補をそのデータ型に応じて分類することで作成される。記憶部２１は、ＲＡＭなどの揮発性記憶装置でもよいし、ＨＤＤ（Hard Disk Drive）やフラッシュメモリなどの不揮発性記憶装置でもよい。
【００１９】
通信部２２は、ネットワーク３を介して端末装置１０と通信を行う。通信部２２は、例えば、ＴＣＰ／ＩＰやＨＴＴＰなどのプロトコルに従って、端末装置１０からアクセスを受け付けて端末装置１０とデータ通信を行う。
【００２０】
制御部２３は、記憶部２１に記憶された複数の辞書を用いて、端末装置１０のユーザが入力フィールド１１ａに適切なデータを入力できるよう支援する。制御部２３は、例えば、１またはそれ以上のプロセッサおよびメモリを含む。上記の通り、プロセッサはＣＰＵやＤＳＰでもよく、ＡＳＩＣやＦＰＧＡなどの電子回路を含んでもよい。メモリはＲＡＭでもよく、記憶部２１と共通であってもよい。例えば、プロセッサがメモリに記憶されたプログラムを実行することで、以下に述べる機能を実現する。
【００２１】
ここで、第１の実施の形態の情報処理システムでは、以下のようにして入力フィールド１１ａへのデータ入力を支援する。端末装置１０は、入力フィールド１１ａの項目名を示す項目情報を、ネットワーク３を介して管理装置２０に送信する。項目名は、入力フィールド１１ａの近くに表示されるものを抽出してもよいし、ＨＴＭＬ文書などの画面情報に含まれるタグなどの不可視情報から抽出してもよい。項目情報は、入力フィールド１１ａが表示部１１に表示される前に送信してもよいし、表示された後に送信してもよい。
【００２２】
管理装置２０は、記憶部２１に記憶された複数の辞書の中から、端末装置１０から受信した項目情報に応じた辞書を選択する。例えば、管理装置２０は、項目情報が示す項目名から入力フィールド１１ａに入力されるべきデータのデータ型を推定し、推定したデータ型に対応する辞書を選択する。そして、管理装置２０は、選択された辞書に基づいて、項目情報に対応する、入力フィールド１１ａに入力されるデータの候補を、ネットワーク３を介して端末装置１０に送信する。送信するデータの候補は１つでも複数でもよい。
【００２３】
端末装置１０は、管理装置２０から受信したデータの候補に基づいて、ユーザによる入力フィールド１１ａへのデータ入力を支援する。例えば、端末装置１０は、受信したデータの候補を入力フィールド１１ａの近くに表示し、ユーザが何れか１つを選択できるようにする。受信したデータの候補が１個である場合、端末装置１０は、そのデータの候補をユーザ操作なしに入力フィールド１１ａに埋め込んでもよい。データの候補に基づいて入力フィールド１１ａの入力データが確定すると、端末装置１０は、例えば、ネットワーク３を介してサーバ装置（管理装置２０または他のサーバ装置）に確定した入力データを送信する。入力データを受信したサーバ装置は、データベースに入力データを格納する。
【００２４】
なお、項目情報は、入力フィールド１１ａが表示部１１に表示されるときに端末装置１０から管理装置２０に送信し、データの候補は、入力フィールド１１ａに関してユーザが操作を行ったときに管理装置２０から端末装置１０に送信してもよい。この場合、端末装置１０は、ユーザ操作を検出して現時点の入力データを管理装置２０に送信し、管理装置２０は、現時点の入力データに基づいて最終的なデータの候補または修正後のデータの候補を端末装置１０に送信してもよい。検出するユーザ操作には、入力フィールド１１ａに対する入力操作や、入力したデータを確定するときのボタン操作などが含まれ得る。
【００２５】
第１の実施の形態の情報処理システムによれば、データベースにデータが格納される前に、入力フィールド１１ａに対して適切なデータが入力されるように支援することができる。よって、一貫性のないデータがデータベースに格納されることを抑制できる。また、端末装置１０から管理装置２０に入力フィールド１１ａの項目名を示す項目情報が送信され、項目情報に応じた辞書に基づいて管理装置２０から端末装置１０にデータの候補が送信される。よって、既存の情報処理システムにおける入力画面の定義やデータベースを更新するサーバ装置のプログラムなどを改変せずに、適切なデータの候補を提示することが可能となり、入力支援の機能を情報処理システムに容易に追加することができる。
【００２６】
なお、端末装置１０の入力支援機能は、Ｗｅｂブラウザに組み込むプラグインとして実装してもよいし、文字入力補助ソフトウェア（例えば、ＩＭＥ（Input Method Editor）と呼ばれるもの）として実装してもよい。例えば、日本語用の文字入力補助ソフトウェアは、アルファベットからかな文字への変換やかな文字から漢字への変換を行う。以下に説明する第２の実施の形態では、文字入力補助ソフトウェアを利用することとする。
【００２７】
［第２の実施の形態］
図２は、第２の実施の形態の情報処理システムを示す図である。第２の実施の形態の情報処理システムは、ネットワーク３１、データベースサーバ３２、クライアント装置１００，１００ａおよびサーバ装置２００，２００ａを含む。ネットワーク３１に、データベースサーバ３２、クライアント装置１００，１００ａおよびサーバ装置２００，２００ａが接続されている。
【００２８】
データベースサーバ３２は、データをデータベースサーバ３２が備えるＨＤＤなどの不揮発性記憶装置に保存し、データの集合をデータベースとして管理するサーバコンピュータである。データベースサーバ３２は、ネットワーク３１を介してサーバ装置２００ａからデータの書き込み要求を受信し、書き込み要求に係るデータを保存する。
【００２９】
データベースに対しては、ユーザが指定した値を含むデータの検索や同じ値を含んだデータの集計などのデータ処理が行われ得る。そこで、データの検索や集計を容易にするため、データベースサーバ３２に保存されるデータは表記方法が統一されていることが好ましい。例えば、住所や会社に複数の表記方法が存在するとき、検索漏れが生じないよう、同一の住所や会社を異なる表記方法で表したデータがデータベースに混在していないことが好ましい。第２の実施の形態では、データがサーバ装置２００ａからデータベースサーバ３２に送信されてデータベースに追加される前に、クライアント装置１００，１００ａとサーバ装置２００とが連携してデータの表記方法を統一するよう制御する。
【００３０】
クライアント装置１００，１００ａは、ユーザが操作する端末装置としてのクライアントコンピュータである。クライアント装置１００，１００ａは、入力フィールドを含む入力画面を表示し、入力フィールドに対するユーザの文字入力を受け付け、データベースサーバ３２に保存するデータとして確定した文字列をサーバ装置２００ａに送信する。入力画面は、クライアント装置１００，１００ａにインストールされたアプリケーションソフトウェアによって定義された画面であることもあるし、サーバ装置２００ａからダウンロードされるＨＴＭＬ文書に基づいてＷｅｂブラウザが描画する画面であることもある。
【００３１】
また、クライアント装置１００，１００ａには、文字入力補助ソフトウェアがインストールされている。日本語を入力する場合、文字入力補助ソフトウェアは、キー入力によって指定されたアルファベットをかな文字に変換し、変換命令を受けてかな文字を漢字に変換する。また、クライアント装置１００，１００ａにインストールされた文字入力補助ソフトウェアは、サーバ装置２００と連携して、所定の表記方法に従った文字列が入力フィールドに入力されるよう支援する。入力支援方法としては、サーバ装置２００から提示された文字列の候補を入力フィールドの近くに表示する方法や、入力フィールドに現在記入されている文字列を提示された文字列の候補に置き換える方法が挙げられる。
【００３２】
サーバ装置２００は、クライアント装置１００，１００ａからアクセスされるサーバコンピュータである。サーバ装置２００は、クライアント装置１００，１００ａにインストールされた文字入力補助ソフトウェアと連携して、入力フィールドに対するユーザの文字入力を支援する。サーバ装置２００は、現在入力されている確定前の文字列をクライアント装置１００，１００ａから受信し、受信した文字列に基づいて、所定の表記方法に従った修正後の文字列の候補を辞書から検索してクライアント装置１００，１００ａに送信する。日本語入力の場合、クライアント装置１００，１００ａからサーバ装置２００に送信される文字はかな文字でもよいし漢字でもよい。修正後の文字列の候補が提示されるタイミングとしては、入力フィールドに対して入力操作が行われたときや、文字列をデータベースサーバ３２に保存するデータとして確定する直前などが挙げられる。
【００３３】
サーバ装置２００ａは、クライアント装置１００，１００ａからアクセスされるサーバコンピュータである。サーバ装置２００ａは、確定された文字列としてのデータをクライアント装置１００，１００ａからネットワーク３１を介して受信し、受信したデータをデータベースに書き込むための書き込み命令をデータベースサーバ３２に送信する。サーバ装置２００ａはＷｅｂサーバでもよく、その場合にはクライアント装置１００，１００ａからのアクセスに応じて、入力フィールドを含む入力画面を定義したＨＴＭＬ文書をクライアント装置１００，１００ａに送信してもよい。
【００３４】
なお、クライアント装置１００，１００ａは第１の実施の形態の端末装置１０の一例であり、サーバ装置２００は第１の実施の形態の管理装置２０の一例であり、ネットワーク３１は第１の実施の形態のネットワーク３の一例である。また、第２の実施の形態では、サーバ装置２００がクライアント装置１００，１００ａにおけるデータ入力を支援し、サーバ装置２００ａがデータベースを更新しているが、以下に説明するサーバ装置２００，２００ａの処理を同一のサーバ装置が行うようにしてもよい。
【００３５】
図３は、入力項目を含むウィンドウの例を示す図である。クライアント装置１００，１００ａには図３に示すようなウィンドウが表示される。図３のウィンドウは、３つの入力フィールドと入力フィールドに対応する３つのラベルと２つのボタンとを含む。
【００３６】
１つ目の入力フィールドには「会社」という項目名が付与されており、会社名を示す文字列がユーザによって入力されることが期待される。２つ目の入力フィールドには「住所」という項目名が付与されており、住所を示す文字列がユーザによって入力されることが期待される。３つ目の入力フィールドには「価格」という項目名が付与されており、価格を示す数値がユーザによって入力されることが期待される。各入力フィールドの項目名を示すラベルが、その入力フィールドの左側に表示されている。１つ目と２つ目のラベルはテキストとして表され、３つ目のラベルは画像として表されている。
【００３７】
３つの入力フィールドの下に２つのボタンが配置されている。左側のボタンは「取消」という名称が付与されたボタンであり、入力操作を中止するときにユーザによって押下される。右側のボタンは「送信」という名称が付与されたボタンであり、３つの入力フィールドに記入された文字列を確定してクライアント装置１００，１００ａからサーバ装置２００ａに送信するときにユーザによって押下される。図３の取消ボタンや送信ボタンと同様の機能をもつボタンは、ウィンドウによって様々な名称が付与され得る。以下では、図３の送信ボタンと同様の機能をもつボタンを決定ボタンと総称することとする。
【００３８】
入力フィールドの項目名を示すラベルは、その入力フィールド左側または上側に配置されることが多い。また、決定ボタンはウィンドウの最も右下に配置されることが多い。クライアント装置１００，１００ａおよびサーバ装置２００は、入力フィールドに対する入力操作や決定ボタンに対する選択操作を検出できるようにするにあたり、このような表示部品の配置の性質を利用する。なお、入力フィールドやラベルやボタンなどの表示部品の位置は、ウィンドウの左上を基点とした座標で表すことができる。各表示部品の位置を示す座標は、例えば、その表示部品の左上の点の座標とする。
【００３９】
図４は、ウィンドウ上での入力支援の例を示す図である。入力フィールドに入力すべき文字列の候補がサーバ装置２００から提示されるタイミングは、次の３つが挙げられる。（１）入力フィールドに対して文字（日本語入力の場合は変換前のかな文字でもよい）を入力中のとき。（２）文字列を入力した入力フィールドから他の入力フィールドにフォーカスが移動したとき。（３）決定ボタンが押下されたとき。
【００４０】
（１）入力フィールドに文字を入力中のとき、現在まで入力した文字がクライアント装置１００，１００ａからサーバ装置２００に送信される。そして、その文字またはその文字から変換される他の文字（例えば、かな文字から変換される漢字）を含む所定の表記方法に従った文字列の候補が、サーバ装置２００からクライアント装置１００，１００ａに送信されて表示される。ユーザは、入力フィールドの近くに表示された複数の文字列の候補の中から何れか１つを選択することができる。例えば、項目名が「住所」である入力フィールドにユーザが「かな」と入力したとき、住所を表す文字列の候補として「神奈川県」や「石川県金沢市」などの文字列が表示される。文字列の候補が表示されるタイミングを、ユーザが変換命令を入力したタイミングとしてもよい。
【００４１】
（２）文字列を入力した入力フィールドからフォーカスが外れたとき（フォーカスアウト）、その入力フィールドに記入された文字列がクライアント装置１００，１００ａからサーバ装置２００に送信される。その文字列が所定の表記方法に適合していないと判断された場合、修正後の文字列の候補がサーバ装置２００からクライアント装置１００，１００ａに送信されて表示される。修正後の文字列の候補の表示方法としては、文字列の候補を入力フィールドの近くに表示してユーザに修正を促す方法と、入力フィールドに記入されている文字列を置換する方法とが考えられる。例えば、項目名が「会社」である入力フィールドにユーザが会社の略称「ＡＢＣＤ（株）」を入力したとき、修正後の文字列の候補として会社の正式名称「ＡＢＣＤ株式会社」が表示される。
【００４２】
（３）決定ボタンが押下されたとき、データベースを更新するための手続きが中断されて、ウィンドウに含まれる各入力フィールドについて上記（２）と同様の方法で、入力された文字列が検査されて修正後の文字列が表示される。（２）と（３）の入力支援機能は何れか一方または両方が動作しないように設定することもできる。なお、（２）と（３）は、データベースに格納する前に文字列が所定の表記方法に適合するように修正するものであるが、第２の実施の形態ではこの修正機能も「クレンジング」と呼ぶこととする。
【００４３】
図５は、クライアント装置のハードウェア例を示すブロック図である。クライアント装置１００は、ＣＰＵ１０１、ＲＡＭ１０２、ＨＤＤ１０３、画像信号処理部１０４、入力信号処理部１０５、ディスクドライブ１０６および通信インタフェース１０７を有する。クライアント装置１００の上記の各ユニットは、バス１０８に接続されている。
【００４４】
ＣＰＵ１０１は、プログラムの命令を実行する演算器を含むプロセッサである。ＣＰＵ１０１は、ＨＤＤ１０３に記憶されているプログラムやデータの少なくとも一部をＲＡＭ１０２にロードしてプログラムを実行する。なお、ＣＰＵ１０１は複数のプロセッサコアを備えてもよく、クライアント装置１００は複数のプロセッサを備えてもよく、以下で説明する処理を複数のプロセッサまたはプロセッサコアを用いて並列に実行してもよい。また、２以上のプロセッサの集合、ＦＰＧＡやＡＳＩＣなどの専用回路、２以上の専用回路の集合、プロセッサと専用回路の組み合わせを「プロセッサ」と呼んでもよい。
【００４５】
ＲＡＭ１０２は、ＣＰＵ１０１が実行するプログラムやプログラムから参照されるデータを一時的に記憶する揮発性メモリである。なお、クライアント装置１００は、ＲＡＭ以外の種類のメモリを備えてもよく、複数個の揮発性メモリを備えてもよい。
【００４６】
ＨＤＤ１０３は、ＯＳ（Operating System）やファームウェアやアプリケーションソフトウェアなどのソフトウェアのプログラム、および、データを記憶する不揮発性記憶装置である。なお、クライアント装置１００は、フラッシュメモリやＳＳＤ（Solid State Drive）などの他の記憶装置を備えてもよく、複数の不揮発性記憶装置を備えてもよい。
【００４７】
画像信号処理部１０４は、ＣＰＵ１０１からの命令に従って、クライアント装置１００に接続されたディスプレイ４１に画像を出力する。ディスプレイ４１としては、ＣＲＴ（Cathode Ray Tube）ディスプレイや液晶ディスプレイなどを用いることができる。なお、クライアント装置１００に接続されたディスプレイ４１は、クライアント装置１００が備えている（クライアント装置１００の一部である）と言うこともできる。また、ディスプレイ４１は、クライアント装置１００の筐体と一体に形成されていてもよい。
【００４８】
入力信号処理部１０５は、クライアント装置１００に接続された入力デバイス４２から入力信号を取得し、ＣＰＵ１０１に通知する。入力デバイス４２としては、マウスやタッチパネルなどのポインティングデバイス、キーボードなどを用いることができる。なお、クライアント装置１００に接続された入力デバイス４２は、クライアント装置１００が備えている（クライアント装置１００の一部である）と言うこともできる。また、入力デバイス４２は、クライアント装置１００の筐体と一体に形成されていてもよい。
【００４９】
ディスクドライブ１０６は、記録媒体４３に記録されたプログラムやデータを読み取る駆動装置である。記録媒体４３として、例えば、フレキシブルディスク（ＦＤ：Flexible Disk）やＨＤＤなどの磁気ディスク、ＣＤ（Compact Disc）やＤＶＤ（Digital Versatile Disc）などの光ディスク、光磁気ディスク（ＭＯ：Magneto-Optical disk）を使用できる。ディスクドライブ１０６は、ＣＰＵ１０１からの命令に従って、記録媒体４３から読み取ったプログラムやデータをＲＡＭ１０２またはＨＤＤ１０３に格納する。
【００５０】
通信インタフェース１０７は、ネットワーク３１を介してサーバ装置２００とデータ通信を行うことができる有線通信インタフェースである。ただし、通信インタフェース１０７をアクセスポイントに接続する無線通信インタフェースとしてもよい。
【００５１】
なお、クライアント装置１００は、ディスクドライブ１０６を備えなくてもよい。また、クライアント装置１００は、ユーザが操作する他のコンピュータからアクセス可能な場合、画像信号処理部１０４や入力信号処理部１０５を備えなくてもよい。クライアント装置１００ａおよびサーバ装置２００，２００ａも、クライアント装置１００と同様のハードウェア構成によって実現できる。また、ＣＰＵ１０１とＲＡＭ１０２の組み合わせは第１の実施の形態の制御部１３の一例であり、通信インタフェース１０７は第１の実施の形態の通信部１２の一例であり、ディスプレイ４１は第１の実施の形態の表示部１１の一例である。
【００５２】
図６は、クライアント装置とサーバ装置の機能例を示すブロック図である。
クライアント装置１００は、ウィンドウ表示部１１０、入力制御部１２０、制御情報記憶部１３０およびアクセス部１４０を有する。制御情報記憶部１３０は、ＲＡＭ１０２またはＨＤＤ１０３に確保した記憶領域として実現できる。制御情報記憶部１３０以外のユニットは、ＣＰＵ１０１に実行させるプログラムのモジュールとして実現できる。クライアント装置１００ａもクライアント装置１００と同様のモジュール構成で実現できる。
【００５３】
ウィンドウ表示部１１０は、ウィンドウを表示させるプロセスに対応するモジュールである。プロセスがＷｅｂブラウザである場合、ウィンドウ表示部１１０は、サーバ装置２００から受信するＨＴＭＬ文書に基づいてウィンドウ内にＷｅｂページをレンダリングする。プロセスがクライアント装置１００にインストールされたアプリケーションソフトウェアである場合、ウィンドウ表示部１１０は、ＯＳのＡＰＩ（Application Programming Interface）を利用してウィンドウ内に表示部品を描画する。
【００５４】
入力制御部１２０は、文字入力補助ソフトウェアのモジュールであり、ユーザによる文字入力を支援する。入力制御部１２０は、ウィンドウ表示部１１０に相当するプロセスがクライアント装置１００で起動すると、当該プロセスの中に取り込まれて動作する。入力制御部１２０は、ウィンドウ表示部１１０によりウィンドウが表示されると、そのウィンドウに対してどのような入力支援を行うかを示す制御情報をサーバ装置２００から取得し、制御情報記憶部１３０に格納する。そして、入力制御部１２０は、ウィンドウに対するユーザ操作を検出し、制御情報記憶部１３０に記憶された制御情報に従って、各入力フィールドに入力されるべき文字列の候補をサーバ装置２００から適宜取得して表示する。
【００５５】
制御情報記憶部１３０は、入力制御部１２０が入力支援を行うにあたって参照する制御情報を記憶する。制御情報記憶部１３０に記憶される制御情報には、後述するように、ウィンドウの情報と入力フィールドの情報と決定ボタンの情報とが含まれる。
【００５６】
アクセス部１４０は、ウィンドウ表示部１１０および入力制御部１２０からの要求に従ってサーバ装置２００，２００ａにアクセスする。例えば、アクセス部１４０は、ウィンドウが表示されたときやウィンドウに対する特定のユーザ操作が検出されたとき、入力制御部１２０からの要求に従ってサーバ装置２００にアクセスする。また、アクセス部１４０は、入力フィールドに記入された文字列がデータベースに格納するデータとして確定されたとき、ウィンドウ表示部１１０からの要求に従ってデータをサーバ装置２００ａに送信する。
【００５７】
サーバ装置２００は、アクセス受付部２１０、クライアント支援部２４０、制御情報記憶部２５０、文字変換部２６０、クレンジング部２７０および辞書記憶部２８０を有する。サーバ装置２００ａは、アクセス受付部２１０ａ、データ処理部２２０およびデータベース更新部２３０を有する。辞書記憶部２８０は、ＲＡＭまたはＨＤＤに確保した記憶領域として実現できる。辞書記憶部２８０以外のユニットは、ＣＰＵに実行させるプログラムのモジュールとして実現できる。
【００５８】
アクセス受付部２１０，２１０ａは、クライアント装置１００，１００ａからアクセスを受け付ける。サーバ装置２００のアクセス受付部２１０は、入力データを確定する前の入力支援のためのアクセスを受け付けたとき、そのアクセスをクライアント支援部２４０に通知する。サーバ装置２００ａのアクセス受付部２１０ａは、確定された入力データを受信した場合、入力データをデータ処理部２２０に出力する。
【００５９】
データ処理部２２０は、クライアント装置１００，１００ａで動作するＷｅｂブラウザまたはアプリケーションソフトウェアに対応するサーバソフトウェアのモジュールである。データ処理部２２０は、ユーザによって確定された入力データに対して、タイムスタンプの付与などの所定のデータ処理を行ってデータベース更新部２３０に出力する。
【００６０】
データベース更新部２３０は、データ処理部２２０から受け取ったデータをデータベースに格納するための書き込み命令を生成し、データベースサーバ３２に送信する。
クライアント支援部２４０は、クライアント装置１００，１００ａからのアクセスに応じて、入力支援のための情報をクライアント装置１００，１００ａに提供する。クライアント装置１００，１００ａでウィンドウが表示されたとき、クライアント支援部２４０は、そのウィンドウの入力制御のための制御情報を制御情報記憶部２５０から検索してクライアント装置１００，１００ａに提供する。また、入力途中の文字（例えば、漢字に変換する前のかな文字）を受け付けると、クライアント支援部２４０は、文字変換部２６０に入力途中の文字を変換させ、変換後の文字列の候補をクライアント装置１００，１００ａに提供する。また、入力フィールドに記入された文字列を受け付けると、クライアント支援部２４０は、受け付けた文字列をクレンジング部２７０にクレンジングさせ、修正を要する場合には修正後の文字列の候補をクライアント装置１００，１００ａに提供する。
【００６１】
制御情報記憶部２５０は、クライアント装置１００，１００ａでの文字入力を支援するための制御情報を記憶する。制御情報記憶部２５０に記憶される制御情報には、後述するように、ウィンドウの情報とデータ型の情報と決定ボタンの情報とが含まれる。
【００６２】
文字変換部２６０は、辞書記憶部２８０に記憶された辞書を参照して、入力途中の文字から所定の表記方法に従った１またはそれ以上の文字列の候補を求める。日本語入力である場合、かな漢字変換のモジュールが利用され得る。例えば、文字変換部２６０は、入力途中のかな文字を漢字に変換する。また、文字変換部２６０は、予測変換機能を用いて、入力途中の文字や変換後の文字を一部に含む文字列を辞書から検索する。そして、文字変換部２６０は、変換された文字列の候補をクライアント支援部２４０に出力する。
【００６３】
クレンジング部２７０は、ユーザが入力した文字列に対してクレンジングを行う。すなわち、クレンジング部２７０は、辞書記憶部２８０に記憶された辞書を参照して、入力された文字列が所定の表記方法に適合しているか検査する。検査に合格しなかった場合、クレンジング部２７０は、辞書を参照して入力された文字列に対応する修正後の文字列の候補を推定する。そして、クレンジング部２７０は、検査結果および検査が不合格だった場合には修正後の文字列の候補を、クライアント支援部２４０に出力する。
【００６４】
辞書記憶部２８０は、複数のデータ型それぞれに対応する辞書を記憶する。例えば、住所を所定の統一された表記方法で記載した住所型の辞書や、法人を所定の統一された表記方法で記載した法人型の辞書などが予め用意される。各辞書は、クライアント装置１００，１００ａに提示され得る複数の文字列の候補を含む。日本語入力に対応する場合、各辞書には、漢字を用いた文字列とその読み仮名に対応する文字列との組が記載される。
【００６５】
図７は、ウィンドウ識別テーブルの例を示す図である。ウィンドウ識別テーブル２５１は、制御情報記憶部２５０に記憶されている。ウィンドウ識別テーブル２５１の内容は、例えば、予めユーザにより定義される。ウィンドウ識別テーブル２５１は、ＩＤ（Identification）、制御対象、制御方法、入力項目およびボタンの項目を含む。
【００６６】
ＩＤの項目には、クライアント装置１００，１００ａに表示され得るウィンドウ（Ｗｅｂブラウザの場合はＷｅｂページ）を識別するための識別子が登録される。制御対象の項目には、ウィンドウを表示するプロセスの名称とウィンドウ名（Ｗｅｂブラウザの場合はＷｅｂページ名）とが登録される。プロセス名とウィンドウ名の組によって、ウィンドウを特定することができる。制御方法の項目には、そのウィンドウで入力支援機能を動作させるか否かを示すフラグ（ＦＥＰ）、フォーカスアウト時の動作方法（ＦｏｃｕｓＯｕｔ）および決定ボタンが押下されたときの動作方法（Ｓｕｂｍｉｔ）が登録される。フォーカスアウト時および決定ボタンが押下されたときの動作は、何もしない（Ｎｏｎｅ）、入力フィールドの近くに文字列の候補を表示する（Ｓｕｇｇｅｓｔ）、入力フィールドの文字列を自動的に修正する（ＡｕｔｏＣｏｒｒｅｃｔ）の中から選択される。
【００６７】
入力項目の項目には、１またはそれ以上の入力フィールドの位置が予めわかっているとき、各入力フィールドの座標と入力されるべき文字列のデータ型とが登録される。位置がわかっている入力フィールドが存在しない場合には、入力項目の項目は空欄でよい。ボタンの項目には、決定ボタンの位置が予めわかっているとき、決定ボタンの座標が登録される。決定ボタンの位置が不明である場合には、決定ボタンの項目は空欄でよい。
【００６８】
図８は、データ型テーブルの例を示す図である。データ型テーブル２５２は、制御情報記憶部２５０に記憶されている。データ型テーブル２５２の内容は、例えば、予めユーザにより定義される。データ型テーブル２５２は、ＩＤ、型名、項目名、辞書およびクレンジング関数の項目を含む。
【００６９】
ＩＤの項目には、データ型を識別するための識別子が登録される。型名の項目には、住所型や法人型などのデータ型の名称が登録される。なお、図８において、ユーザ型１はユーザによってカスタマイズされたデータ型であり、文字列型は他の何れのデータ型にも該当しない文字列の型である。項目名の項目には、入力フィールドのラベルとして使用され得る１またはそれ以上の名称が登録される。例えば、住所型については「住所」や「所在地」、法人型については「法人名」や「会社」などの文字列が登録される。
【００７０】
辞書の項目には、辞書記憶部２８０に記憶された複数の辞書のうちそのデータ型に対応する辞書の名称が登録される。クレンジング関数の項目には、クレンジング部２７０に用意された複数の関数（クレンジング関数）のうち、そのデータ型の文字列をクレンジングするときにクライアント支援部２４０から呼び出される関数の名称が登録される。なお、クレンジング関数の中では、辞書の項目で示される辞書が参照される。
【００７１】
図９は、ボタンテーブルの例を示す図である。ボタンテーブル２５３は、制御情報記憶部２５０に記憶されている。ボタンテーブル２５３の内容は、例えば、予めユーザにより定義される。ボタンテーブル２５３は、ＩＤ、ボタン名および制御フラグの項目を含む。ＩＤの項目には、決定ボタンの名称を識別するための識別子が登録される。ボタン名の項目には、「送信」や「決定」や「実行」など、決定ボタンのラベルとして使用され得る名称が登録される。制御フラグの項目には、そのラベルをもつ決定ボタンが押下されたときに文字列の検査や修正を行うか否かを示すフラグが設定される。
【００７２】
図１０は、制御方法テーブルの例を示す図である。制御方法テーブル１３１は、制御情報記憶部１３０に記憶されている。制御方法テーブル１３１は、サーバ装置２００との通信を通じて入力制御部１２０により更新される。制御方法テーブル１３１は、プロセス名、ウィンドウ名、制御フラグ、フォーカス制御および決定制御の項目を含む。
【００７３】
プロセス名の項目には、ウィンドウを表示するプロセスの名称が登録される。ウィンドウ名の項目には、表示されたウィンドウの名称が登録される。制御フラグの項目には、そのウィンドウについて文字列の候補を表示するなどの入力支援を行うか否かを示すフラグが登録される。フォーカス制御の項目には、そのウィンドウの入力フィールドに対してフォーカスアウトの操作が行われたときの動作方法が登録される。決定制御の項目には、そのウィンドウの決定ボタンが押下されたときの動作方法が登録される。前述のように、フォーカス制御および決定制御の項目には、何もしない（Ｎｏｎｅ）、入力フィールドの近くに文字列の候補を表示する（Ｓｕｇｇｅｓｔ）、入力フィールドの文字列を自動的に修正する（ＡｕｔｏＣｏｒｒｅｃｔ）の何れかが登録される。
【００７４】
図１１は、入力項目テーブルの例を示す図である。入力項目テーブル１３２は、制御情報記憶部１３０に記憶されている。入力項目テーブル１３２は、サーバ装置２００との通信を通じて入力制御部１２０により更新される。入力項目テーブル１３２は、ＩＤ、フィールド、ラベルおよびデータ型の項目を含む。
【００７５】
ＩＤの項目には、入力フィールドを識別するための識別子が登録される。フィールドの項目には、入力フィールドの種別と座標が登録される。自由形式で文字列を入力する入力フィールドの種別はテキストである。ラベルの項目には、その入力フィールドに対応するラベルの種別とラベルとして記載された文字と座標が登録される。ラベルの種別はテキストまたは画像である。ラベルが画像として表されている場合、文字は不明でもよい。データ型の項目には、そのフィールドに入力されるべき文字列のデータ型が登録される。
【００７６】
図１２は、決定ボタンテーブルの例を示す図である。決定ボタンテーブル１３３は、制御情報記憶部１３０に記憶されている。決定ボタンテーブル１３３は、サーバ装置２００との通信を通じて入力制御部１２０により更新される。決定ボタンテーブル１３３は、ＩＤおよびボタン情報の項目を含む。ＩＤの項目には、ウィンドウに表示された決定ボタンを識別するための識別子が登録される。ボタン情報の項目には、表示部品の種別がボタンであること、その決定ボタンに付されたラベルおよび決定ボタンの座標が登録される。
【００７７】
次に、クライアント装置１００とサーバ装置２００とが連携して行う入力制御を説明する。クライアント装置１００ａとサーバ装置２００の間でも同様の制御が行われる。
図１３は、クライアント装置とサーバ装置の通信例を示すシーケンス図である。
【００７８】
クライアント装置１００は、ウィンドウがディスプレイ４１に表示されると、プロセス名とウィンドウ名を含む識別情報をサーバ装置２００に送信する（ステップＳ１１）。サーバ装置２００は、受信した識別情報が示すウィンドウに対してどのような入力制御を行うか判定し、制御方法情報をクライアント装置１００に送信する（ステップＳ２１）。
【００７９】
クライアント装置１００は、ウィンドウに含まれる入力フィールドを確認し、入力フィールドの項目名と座標を含む入力項目情報をサーバ装置２００に送信する（ステップＳ１２）。項目名は、テキストまたは画像として表されている。サーバ装置２００は、受信した入力項目情報に基づいて入力フィールドに入力されるべき文字列のデータ型を判定し、判定したデータ型をクライアント装置１００に回答する（ステップＳ２２）。
【００８０】
クライアント装置１００は、ウィンドウに含まれるボタンを確認し、１またはそれ以上のボタンのボタン名と座標を含むボタン情報をサーバ装置２００に送信する（ステップＳ１３）。ボタン名は、テキストまたは画像として表されている。サーバ装置２００は、受信したボタン情報に基づいて何れのボタンが決定ボタンであるか判定し、判定した決定ボタンを示す決定ボタン情報をクライアント装置１００に送信する（ステップＳ２３）。
【００８１】
クライアント装置１００は、ある入力フィールドにフォーカスが移動して（フォーカスイン）文字入力が開始されたこと、または、入力された文字列に対する変換命令が入力されたことを検出する。すると、クライアント装置１００は、ステップＳ２２で判定されたその入力フィールドのデータ型と現時点で入力されている文字列とをサーバ装置２００に送信する（ステップＳ１４）。サーバ装置２００は、通知されたデータ型に対応する辞書を参照して、受信した文字列から入力されるべき１またはそれ以上の文字列の候補に変換してクライアント装置１００に送信する（ステップＳ２４）。クライアント装置１００は、受信した文字列の候補を入力フィールドの近くに表示する。
【００８２】
クライアント装置１００は、文字列が記入された入力フィールドからのフォーカスアウト、または、決定ボタンの押下を検出する。すると、クライアント装置１００は、その入力フィールドのデータ型とその入力フィールドに記入された文字列とをサーバ装置２００に送信する（ステップＳ１５）。サーバ装置２００は、通知されたデータ型に対応するクレンジング関数を呼び出して、受信した文字列が所定の表記方法に適合しているか検査し、検査が不合格である場合には修正後の文字列の候補を求める。そして、サーバ装置２００は、検査結果と不合格の場合は修正後の文字列の候補とをクライアント装置１００に送信する（ステップＳ２５）。クライアント装置１００は、受信した文字列の候補を、入力フィールドの近くまたは入力フィールドの中に表示する。
【００８３】
クライアント装置１００は、ウィンドウに含まれる全ての入力フィールドの文字列が検査に合格した場合、それら文字列をデータベースに格納する入力データとして確定し、サーバ装置２００に送信する。サーバ装置２００は、受信したデータをデータベースサーバ３２に送信することでデータベースを更新する（ステップＳ２６）。
【００８４】
以下では、上記ステップＳ１１〜Ｓ１５，Ｓ２１〜Ｓ２５の詳細を説明する。
図１４は、識別情報抽出と制御方法判定の手順例を示すフローチャートである。
以下のステップＳ１１０〜Ｓ１１２が前述のステップＳ１１で実行される。
【００８５】
（ステップＳ１１０）入力制御部１２０は、ウィンドウ表示部１１０によりウィンドウ（Ｗｅｂブラウザの場合はＷｅｂページ）が表示されると、当該ウィンドウについてのプロセス名とウィンドウ名（Ｗｅｂブラウザの場合はＷｅｂページ名）を抽出する。プロセス名とウィンドウ名は、例えば、ＯＳのＡＰＩを利用して取得することができる。Ｗｅｂページ名は、例えば、ＷｅｂブラウザがもつＨＴＭＬ文書から抽出することができる。
【００８６】
（ステップＳ１１１）入力制御部１２０は、ステップＳ１１１で抽出したプロセス名とウィンドウ名を含む識別情報をサーバ装置２００に送信する。
（ステップＳ１１２）入力制御部１２０は、サーバ装置２００から制御方法情報を受信し、ステップＳ１１０で抽出したプロセス名およびウィンドウ名と併せて制御方法テーブル１３１に登録する。受信する制御方法情報には、制御フラグ（ＦＥＰ）とフォーカス制御の方法（ＦｏｃｕｓＯｕｔ）と決定制御の方法（Ｓｕｂｍｉｔ）とが記載されている。
【００８７】
以下のステップＳ２１０〜Ｓ２１２が前述のステップＳ１２で実行される。
（ステップＳ２１０）クライアント支援部２４０は、クライアント装置１００から上記ステップＳ１１０で送信されたプロセス名とウィンドウ名を含む識別情報を受信する。
【００８８】
（ステップＳ２１１）クライアント支援部２４０は、ウィンドウ識別テーブル２５１から、プロセス名とウィンドウ名の組に対応する制御方法情報を検索する。
（ステップＳ２１２）クライアント支援部２４０は、ステップＳ２１１で検索した制御方法情報をクライアント装置１００に送信する。上記の通り、制御方法情報には、制御フラグとフォーカス制御の方法と決定制御の方法が記載されている。フォーカス制御および決定制御の方法は、何もしない（Ｎｏｎｅ）、入力フィールドの近くに文字列の候補を表示する（Ｓｕｇｇｅｓｔ）、自動修正する（ＡｕｔｏＣｏｒｒｅｃｔ）の何れかである。
【００８９】
図１５は、入力項目評価の手順例を示すフローチャートである。図１５に示す処理がクライアント装置１００により前述のステップＳ１２で実行される。
（ステップＳ１２０）入力制御部１２０は、制御方法テーブル１３１に登録された制御フラグがＹＥＳであるか（ウィンドウが入力支援の対象であるか）判断する。制御フラグ＝ＹＥＳの場合は処理をステップＳ１２１に進め、それ以外の場合は処理を終了する。
【００９０】
（ステップＳ１２１）入力制御部１２０は、ウィンドウに含まれる入力項目を確認する。例えば、入力制御部１２０は、ＯＳのＡＰＩを利用して、ウィンドウの子要素としての表示部品の中から文字列を入力するための入力フィールドを探し、入力フィールドに対応する（例えば、入力フィールドの左または上に配置された）ラベルを探す。プロセスがＷｅｂブラウザの場合、例えば、入力制御部１２０は、ＷｅｂブラウザがもつＨＴＭＬ文書の中から入力フィールドを示すタグを探し、タグの識別名（ｎａｍｅ属性）を確認する。
【００９１】
（ステップＳ１２２）入力制御部１２０は、ステップＳ１２１で確認した１またはそれ以上の入力項目の中から、入力項目を１つ選択する。
（ステップＳ１２３）入力制御部１２０は、ステップＳ１２２で選択した入力項目の項目名と入力フィールドの座標を含む入力項目情報を、識別情報（プロセス名とウィンドウ名）と併せてサーバ装置２００に送信する。ラベルまたはＨＴＭＬタグからテキストを抽出できた場合、項目名としてテキストが送信される。テキストを抽出できなかった場合、項目名としてラベル部分をキャプチャした画像が送信される。
【００９２】
（ステップＳ１２４）入力制御部１２０は、サーバ装置２００からステップＳ１２２で選択した入力項目のデータ型が通知される。すると、入力制御部１２０は、ステップＳ１２１で確認した入力項目の情報と併せてデータ型を入力項目テーブル１３２に登録する。
【００９３】
（ステップＳ１２５）入力制御部１２０は、ウィンドウに含まれる全ての入力項目をステップＳ１２２で選択したか判断する。全て選択した場合は処理をステップＳ１２６に進め、未選択の入力項目がある場合は処理をステップＳ１２２に進める。
【００９４】
（ステップＳ１２６）入力制御部１２０は、入力項目テーブル１３２に登録した入力フィールドをフックする。すなわち、入力制御部１２０は、入力フィールドに対してユーザ操作（フォーカスインとフォーカスアウト）が行われたとき、ウィンドウ表示部１１０からイベント通知を受け取るようにする。ただし、制御方法テーブル１３１にフォーカス制御＝Ｎｏｎｅと登録されている場合、フォーカスアウトをフックしなくてもよい。
【００９５】
図１６は、データ型判定の手順例を示すフローチャートである。図１６に示す処理がサーバ装置２００により前述のステップＳ２２で実行される。
（ステップＳ２２０）クライアント支援部２４０は、クライアント装置１００から項目名と座標を含む入力項目情報、および、プロセス名とウィンドウ名を含む識別情報を受信する。前述の通り、項目名はテキストまたは画像として表されている。
【００９６】
（ステップＳ２２１）クライアント支援部２４０は、項目名が画像で表されているか判断する。項目名が画像で表されている場合は処理をステップＳ２２２に進め、項目名がテキストで表されている場合は処理をステップＳ２２３に進める。
【００９７】
（ステップＳ２２２）クライアント支援部２４０は、ＯＣＲを利用して項目名に相当する画像からテキスト（ラベルのテキスト）を抽出する。
（ステップＳ２２３）クライアント支援部２４０は、ウィンドウ識別テーブル２５１から、受信した識別情報が示すウィンドウとそのウィンドウの入力項目を検索する。
【００９８】
（ステップＳ２２４）クライアント支援部２４０は、受信した識別情報によって示されるウィンドウがウィンドウ識別テーブル２５１に登録されているものか判断する。登録されているウィンドウである場合は処理をステップＳ２２５に進め、登録されていないウィンドウである場合は処理をステップＳ２２７に進める。
【００９９】
（ステップＳ２２５）クライアント支援部２４０は、ステップＳ２２３で検索された何れかの入力項目の座標が、入力項目情報が示す座標と一致するか判断する。一致する場合は処理をステップＳ２２６に進め、一致しない場合は処理をステップＳ２２７に進める。
【０１００】
（ステップＳ２２６）クライアント支援部２４０は、ステップＳ２２５で座標が一致すると判断された入力項目のデータ型を選択し、処理をステップＳ２２８に進める。
（ステップＳ２２７）クライアント支援部２４０は、データ型テーブル２５２から、受信した入力項目情報に含まれる項目名のテキストまたはステップＳ２２２で抽出された項目名のテキストに対応するデータ型を検索する。項目名のテキストがデータ型テーブル２５２に登録されていないときは、文字列型が選択される。
【０１０１】
（ステップＳ２２８）クライアント支援部２４０は、ステップＳ２２６またはステップＳ２２７で選択されたデータ型をクライアント装置１００に回答する。
図１７は、ボタン評価の手順例を示すフローチャートである。図１７に示す処理がクライアント装置１００により前述のステップＳ１３で実行される。
【０１０２】
（ステップＳ１３０）入力制御部１２０は、制御方法テーブル１３１に決定制御＝Ｎｏｎｅと登録されているか、すなわち、決定ボタンの押下時に何もしないと設定されているか判断する。決定制御＝Ｎｏｎｅの場合は処理を終了し、それ以外の場合（決定制御＝ＳｕｇｇｅｓｔまたはＡｕｔｏＣｏｒｒｅｃｔ）は処理をステップＳ１３１に進める。
【０１０３】
（ステップＳ１３１）入力制御部１２０は、ウィンドウに含まれるボタンを確認する。例えば、入力制御部１２０は、ＯＳのＡＰＩを利用して、ウィンドウの子要素としての表示部品の中からボタンを探す。プロセスがＷｅｂブラウザの場合、例えば、入力制御部１２０は、ＷｅｂブラウザがもつＨＴＭＬ文書の中からボタンを示すタグを探す。
【０１０４】
（ステップＳ１３２）入力制御部１２０は、ステップＳ１３１で確認された全てのボタンのボタン名および座標のリストを含むボタン情報を、識別情報（プロセス名とウィンドウ名）と併せてサーバ装置２００に送信する。ボタンである表示部品からテキストを抽出できた場合、ボタン名としてテキストが送信される。テキストを抽出できなかった場合、ボタン名としてボタン部分をキャプチャした画像が送信される。
【０１０５】
（ステップＳ１３３）入力制御部１２０は、サーバ装置２００から決定ボタンであると判定されたボタンが通知される。複数のボタンのうち何れが決定ボタンであるかは、例えば、座標によって識別される。すると、入力制御部１２０は、ステップＳ１３１で確認したボタンのうち決定ボタンについての情報を決定ボタンテーブル１３３に登録する。
【０１０６】
（ステップＳ１３４）入力制御部１２０は、決定ボタンテーブル１３３に登録されたボタンをフックする。すなわち、入力制御部１２０は、決定ボタンが押下されたとき、ウィンドウ表示部１１０からイベント通知を受け取るようにする。
【０１０７】
図１８は、決定ボタン判定の手順例を示すフローチャートである。図１８に示す処理がサーバ装置２００により前述のステップＳ２３で実行される。
（ステップＳ２３０）クライアント支援部２４０は、クライアント装置１００からボタン名と座標のリストを含むボタン情報、および、プロセス名とウィンドウ名を含む識別情報を受信する。前述の通り、ボタン名はテキストまたは画像として表されている。
【０１０８】
（ステップＳ２３１）クライアント支援部２４０は、少なくとも１つのボタン名が画像で表されているか判断する。ボタン名が画像で表されている場合は処理をステップＳ２３２に進め、ボタン名がテキストで表されている場合は処理をステップＳ２３３に進める。
【０１０９】
（ステップＳ２３２）クライアント支援部２４０は、ＯＣＲを利用してボタン名に相当する画像からテキスト（ボタンのラベル部分のテキスト）を抽出する。
（ステップＳ２３３）クライアント支援部２４０は、ウィンドウ識別テーブル２５１から、受信した識別情報が示すウィンドウとそのウィンドウのボタンの座標を検索する。
【０１１０】
（ステップＳ２３４）クライアント支援部２４０は、受信した識別情報によって示されるウィンドウがウィンドウ識別テーブル２５１に登録されているものか判断する。登録されているウィンドウである場合は処理をステップＳ２３５に進め、登録されていないウィンドウである場合は処理をステップＳ２３７に進める。
【０１１１】
（ステップＳ２３５）クライアント支援部２４０は、ステップＳ２３３で検索された座標が、ボタン情報が示す何れかのボタンの座標と一致するか判断する。一致する場合は処理をステップＳ２３６に進め、一致しない場合は処理をステップＳ２３７に進める。
【０１１２】
（ステップＳ２３６）クライアント支援部２４０は、受信したボタン情報が示すボタンのうち、ステップＳ２３５でウィンドウ識別テーブル２５１に登録された座標と一致すると判断されたボタンを決定ボタンとして選択し、処理をステップＳ２３８に進める。
【０１１３】
（ステップＳ２３７）クライアント支援部２４０は、ボタンテーブル２５３から、受信したボタン情報に含まれるボタン名のテキストまたはステップＳ２３２で抽出されたボタン名のテキストを検索する。そして、クライアント支援部２４０は、ボタン情報が示すボタンの中から、ボタンテーブル２５３に制御フラグ＝ＹＥＳと設定されているボタン名をもつボタンを決定ボタンとして選択する。なお、ボタン情報が示す何れのボタン名も、ボタンテーブル２５３に登録されていないか制御フラグ＝ＮＯと設定されている場合には、ウィンドウに決定ボタンが含まれていないと判断される。
【０１１４】
（ステップＳ２３８）クライアント支援部２４０は、ステップＳ２３６またはステップＳ２３７で選択された決定ボタンをクライアント装置１００に回答する。ただし、ステップＳ２３７において決定ボタンが選択されなかった場合、クライアント支援部２４０は、決定ボタンが存在しない旨をクライアント装置１００に通知する。その場合、クライアント装置１００は、ウィンドウに含まれる何れのボタンもフックしない。
【０１１５】
図１９は、入力制御の手順例を示すフローチャートである。図１９に示す処理がクライアント装置１００により前述のステップＳ１４で実行される。
（ステップＳ１４０）入力制御部１２０は、ウィンドウ表示部１１０からのイベント通知に基づいて、入力フィールドへのフォーカスインを検出する。
【０１１６】
（ステップＳ１４１）入力制御部１２０は、入力項目テーブル１３２から、フォーカスインを検出した入力フィールドに対応するデータ型、すなわち、当該入力フィールドに対して入力されるべき文字列のデータ型を検索する。
【０１１７】
（ステップＳ１４２）入力制御部１２０は、フォーカスインが検出された後に入力された文字列（日本語入力の場合はかな文字を含んでもよい）を、ステップＳ１４１で検索したデータ型と併せてサーバ装置２００に送信する。入力された文字列を送信するタイミングは、例えば、所定数（例えば、３文字）以上の文字が入力されたときや、入力された文字に対する変換命令（例えば、かな漢字変換命令）が入力されたときが考えられる。
【０１１８】
（ステップＳ１４３）入力制御部１２０は、サーバ装置２００から入力すべき文字列の候補を受信し、文字列の候補のリストを入力フィールドの近傍に表示する。
（ステップＳ１４４）入力制御部１２０は、ステップＳ１４３で表示した文字列の候補の中からユーザにより選択された文字列を、入力フィールドに挿入する。
【０１１９】
図２０は、候補判定の手順例を示すフローチャートである。図２０に示す処理がサーバ装置２００により前述のステップＳ２４で実行される。
（ステップＳ２４０）クライアント支援部２４０は、クライアント装置１００からデータ型と現時点までに入力された文字列とを受信する。
【０１２０】
（ステップＳ２４１）クライアント支援部２４０は、データ型テーブル２５２から、クライアント装置１００から通知されたデータ型に対応する辞書を検索する。
（ステップＳ２４２）クライアント支援部２４０は、ステップＳ２４１の検索によって辞書が見つかったか判断する。辞書が見つかった場合は処理をステップＳ２４３に進め、見つからなかった場合は処理をステップＳ２４４に進める。
【０１２１】
（ステップＳ２４３）文字変換部２６０は、ステップＳ２４１で検索された辞書を参照して、受信された文字列に対応する所定の表記形式に適合した１またはそれ以上の文字列の候補（入力フィールドに入力されるべき文字列の候補）を検索する。ここでの文字列の候補の検索では、いわゆるかな漢字変換機能や予測変換機能を利用してもよい。例えば、文字変換部２６０は、辞書に記載された複数の文字列の候補の中から、受信されたかな文字を読み仮名に含む１またはそれ以上の文字列の候補を選択する。
【０１２２】
（ステップＳ２４４）クライアント支援部２４０は、ステップＳ２４３で検索された入力されるべき文字列の候補のリストを、クライアント装置１００に送信する。なお、変換後の文字列の候補が１つも検索されなかった場合、クライアント支援部２４０は、文字列の候補が存在しない旨をクライアント装置１００に通知する。その場合、クライアント装置１００は、例えば、入力された文字列が誤っている旨を表示すればよい。
【０１２３】
図２１は、検査・修正制御の手順例を示すフローチャートである。図２１に示す処理がクライアント装置１００により前述のステップＳ１５で実行される。ここでは、決定ボタンの押下を契機とした検査・修正制御の手順例を説明する。
【０１２４】
（ステップＳ１５０）入力制御部１２０は、ウィンドウ表示部１１０からのイベント通知に基づいて、決定ボタンが押下されたことを検出する。
（ステップＳ１５１）入力制御部１２０は、押下された決定ボタンの属するウィンドウに含まれている入力フィールドを１つ選択する。
【０１２５】
（ステップＳ１５２）入力制御部１２０は、入力項目テーブル１３２から、ステップＳ１５１で選択した入力フィールドに対応するデータ型、すなわち、当該入力フィールドに対して入力されるべき文字列のデータ型を検索する。
【０１２６】
（ステップＳ１５３）入力制御部１２０は、選択した入力フィールドに記入されている文字列を、ステップＳ１５２で検索したデータ型と併せてサーバ装置２００に送信する。
（ステップＳ１５４）入力制御部１２０は、ステップＳ１５３で送信した文字列の検査結果をサーバ装置２００から受信し、受信した検査結果がＩＮＶＡＬＩＤ（不合格）であるか判断する。検査結果＝ＩＮＶＡＬＩＤである場合は処理をステップＳ１５５に進め、検査結果＝ＶＡＬＩＤ（合格）である場合は処理をステップＳ１５８に進める。
【０１２７】
（ステップＳ１５５）入力制御部１２０は、制御方法テーブル１３１に決定制御＝Ｓｕｇｇｅｓｔと登録されているか判断する。決定制御＝Ｓｕｇｇｅｓｔの場合は処理をステップＳ１５６に進め、それ以外の場合（すなわち、決定制御＝ＡｕｔｏＣｏｒｒｅｃｔの場合）は処理をステップＳ１５７に進める。
【０１２８】
（ステップＳ１５６）入力制御部１２０は、検査結果と併せてサーバ装置２００から受信した修正後の文字列の候補を、入力フィールドの近傍に表示する。
（ステップＳ１５７）入力制御部１２０は、検査結果と併せてサーバ装置２００から受信した修正後の文字列の候補を用いて入力フィールドを更新する。すなわち、入力制御部１２０は、入力フィールドの現在の文字列を受信した文字列に置き換える。
【０１２９】
（ステップＳ１５８）入力制御部１２０は、ステップＳ１５１で全ての入力フィールドを選択したか判断する。全て選択した場合は処理をステップＳ１５９に進め、未選択の入力フィールドがある場合は処理をステップＳ１５１に進める。
【０１３０】
（ステップＳ１５９）入力制御部１２０は、ウィンドウに含まれる全ての入力フィールドについて、サーバ装置２００から受信した検査結果がＶＡＬＩＤであるか判断する。検査結果が全てＶＡＬＩＤであれば、入力制御部１２０は、決定ボタンの押下に対する制御をウィンドウ表示部１１０に戻す。ウィンドウ表示部１１０は、入力フィールドに現在記入されている文字列を入力データとして確定し、入力データをサーバ装置２００に送信する。これは、決定ボタンをフックしない場合に、ユーザによる決定ボタンの押下を受けてウィンドウ表示部１１０が本来実行する処理である。
【０１３１】
なお、フォーカスアウトを契機とした検査・修正制御では、フォーカスアウトが検出された入力フィールドについて上記のステップＳ１５２〜Ｓ１５７の処理が実行される。
図２２は、検査・修正判定の手順例を示すフローチャートである。図２２に示す処理がサーバ装置２００により前述のステップＳ２５で実行される。
【０１３２】
（ステップＳ２５０）クライアント支援部２４０は、クライアント装置１００からデータ型と入力フィールドに記入された文字列とを受信する。
（ステップＳ２５１）クライアント支援部２４０は、データ型テーブル２５２から、クライアント装置１００から通知されたデータ型に対応するクレンジング関数を検索する。
【０１３３】
（ステップＳ２５２）クライアント支援部２４０は、ステップＳ２５１の検索によってクレンジング関数が見つかったか判断する。クレンジング関数が見つかった場合は処理をステップＳ２５３に進め、見つからなかった場合は処理をステップＳ２５４に進める。
【０１３４】
（ステップＳ２５３）クライアント支援部２４０は、クレンジング部２７０に用意された複数のクレンジング関数のうちステップＳ２５１で検索されたクレンジング関数を呼び出す。クレンジング部２７０は、呼び出されたクレンジング関数が担当するデータ型の辞書を参照して、受信された文字列をクレンジングする。すなわち、クレンジング部２７０は、受信された文字列が所定の表記形式に適合するか検査し、不合格（文字列が所定の表記形式に適合しない）と判断した場合は、修正後の文字列の候補を求める。クレンジング関数では、例えば、修正前の文字列から修正後の文字列を求めるためのルールが定義されている。例えば、住所の略称「○○町１−２−３」を住所の正式名称「○○町１丁目２番３号」に変換するためのルールが、住所型のクレンジング関数に定義されている。
【０１３５】
（ステップＳ２５４）クライアント支援部２４０は、受信した文字列の検査結果と、検査結果が不合格の場合は修正後の文字列の候補とをクライアント装置１００に送信する。なお、修正後の文字列の候補が求まらなかった場合、クライアント支援部２４０は、修正候補が存在しない旨をクライアント装置１００に通知する。その場合、クライアント装置１００は、例えば、入力された文字列が誤っている旨を表示すればよい。
【０１３６】
第２の実施の形態の情報処理システムによれば、入力された文字列がデータベースサーバ３２に保存される前に、その文字列が所定の統一された表記方法に適合しているか検査されて修正後の文字列の候補が提示される。よって、表記方法に一貫性のないデータがデータベースに格納されることを抑制できる。また、サーバ装置２００により、クライアント装置１００，１００ａから通知される項目名に基づいて入力フィールドのデータ型が判定され、以降は判定されたデータ型に対応する辞書を用いて文字列が検査される。よって、既存のウィンドウ定義やサーバ装置２００ａのデータ処理部２２０に相当するプログラムなどを改変しなくても、入力支援機能を情報処理システムに容易に追加できる。
【０１３７】
なお、第１の実施の形態の機能は、端末装置１０や管理装置２０にプログラムを実行させることで実現できる。また、第２の実施の形態の機能は、クライアント装置１００，１００ａやサーバ装置２００，２００ａにプログラムを実行させることで実現できる。プログラムは、コンピュータ読み取り可能な記録媒体（例えば、記録媒体４３）に記録しておくことができる。記録媒体としては、例えば、磁気ディスク、光ディスク、光磁気ディスク、半導体メモリなどを使用できる。磁気ディスクには、ＦＤおよびＨＤＤが含まれる。光ディスクには、ＣＤ、ＣＤ−Ｒ（Recordable）／ＲＷ（Rewritable）、ＤＶＤおよびＤＶＤ−Ｒ／ＲＷが含まれる。プログラムは、可搬型の記録媒体に記録されて配布されることがある。その場合、可搬型の記録媒体に記録されたプログラムを、ＨＤＤ１０３などの他の記録媒体に複製してから（インストールしてから）実行するようにしてもよい。
【０１３８】
上記については単に本発明の原理を示すものである。更に、多数の変形や変更が当業者にとって可能であり、本発明は上記に示し、説明した正確な構成および応用例に限定されるものではなく、対応する全ての変形例および均等物は、添付の請求項およびその均等物による本発明の範囲とみなされる。
【符号の説明】
【０１３９】
３  ネットワーク
１０  端末装置
１１  表示部
１１ａ  入力フィールド
１２，２２  通信部
１３，２３  制御部
２０  管理装置
２１  記憶部
２１ａ，２１ｂ  辞書
【図１】
2014006715.tif 000003
【図２】
2014006715.tif 000004
【図３】
2014006715.tif 000005
【図４】
2014006715.tif 000006
【図５】
2014006715.tif 000007
【図６】
2014006715.tif 000008
【図７】
2014006715.tif 000009
【図８】
2014006715.tif 000010
【図９】
2014006715.tif 000011
【図１０】
2014006715.tif 000012
【図１１】
2014006715.tif 000013
【図１２】
2014006715.tif 000014
【図１３】
2014006715.tif 000015
【図１４】
2014006715.tif 000016
【図１５】
2014006715.tif 000017
【図１６】
2014006715.tif 000018
【図１７】
2014006715.tif 000019
【図１８】
2014006715.tif 000020
【図１９】
2014006715.tif 000021
【図２０】
2014006715.tif 000022
【図２１】
2014006715.tif 000023
【図２２】
2014006715.tif 000024
【手続補正書】
【提出日】平成27年1月9日(2015.1.9)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００２９
【補正方法】変更
【補正の内容】
【００２９】
データベースに対しては、ユーザが指定した値を含むデータの検索や同じ値を含んだデータの集計などのデータ処理が行われ得る。そこで、データの検索や集計を容易にするため、データベースサーバ３２に保存されるデータは表記方法が統一されていることが好ましい。例えば、住所や会社名に複数の表記方法が存在するとき、検索漏れが生じないよう、同一の住所や会社名を異なる表記方法で表したデータがデータベースに混在していないことが好ましい。第２の実施の形態では、データがサーバ装置２００ａからデータベースサーバ３２に送信されてデータベースに追加される前に、クライアント装置１００，１００ａとサーバ装置２００とが連携してデータの表記方法を統一するよう制御する。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
表示部を備える端末装置と前記端末装置からネットワークを介してアクセス可能な管理装置とを含むシステムが実行する入力支援方法であって、
前記表示部に表示される入力フィールドの項目名を示す項目情報を、前記端末装置から前記管理装置に送信し、
それぞれが複数のデータの候補を含み、所定条件に基づいて分類された複数の辞書の中から、前記管理装置が受信した前記項目情報に応じた辞書を選択し、
前記選択された辞書に基づいて、前記項目情報に対応する少なくとも１つのデータの候補を、前記管理装置から前記端末装置に送信する、
入力支援方法。
【請求項２】
前記入力フィールドに対する入力操作を検出し、前記入力操作に応じた入力データを前記端末装置から前記管理装置に送信し、
前記選択された辞書に含まれる複数のデータの候補の中から、前記管理装置が受信した前記入力データと置き換えて前記入力フィールドに入力される１またはそれ以上のデータの候補を選択する、
請求項１記載の入力支援方法。
【請求項３】
前記入力フィールドに入力された入力データを確定するための前記表示部に表示された表示部品に対する選択操作を検出し、前記選択操作を受けて前記入力データを前記端末装置から前記管理装置に送信し、
前記選択された辞書に含まれる複数のデータの候補の中から、前記管理装置が受信した前記入力データと置き換えて前記入力フィールドに入力される１またはそれ以上のデータの候補を選択する、
請求項１記載の入力支援方法。
【請求項４】
項目名とデータ型との対応関係を示すデータ型情報を参照して、前記管理装置が受信した前記項目情報に基づいて、前記入力フィールドのデータ型を判定し、
辞書の選択では、前記判定したデータ型に応じた辞書を前記複数の辞書の中から選択する、
請求項１記載の入力支援方法。
【請求項５】
表示部を備え、前記表示部に表示される入力フィールドの項目名を示す項目情報をネットワークを介して送信する端末装置と、
それぞれが複数のデータの候補を含み所定条件に基づいて分類された複数の辞書を記憶する記憶部を備え、前記端末装置から受信した前記項目情報に応じた辞書を前記複数の辞書の中から選択し、前記選択された辞書に基づいて、前記項目情報に対応する少なくとも１つのデータの候補を前記端末装置に送信する管理装置と、
を有する情報処理システム。
【請求項６】
端末装置からネットワークを介してアクセス可能なコンピュータに、
前記端末装置から、前記端末装置が備える表示部に表示される入力フィールドの項目名を示す項目情報を受信し、
それぞれが複数のデータの候補を含み、所定条件に基づいて分類された複数の辞書の中から、受信した前記項目情報に応じた辞書を選択し、
前記選択された辞書に基づいて、前記項目情報に対応する少なくとも１つのデータの候補を前記端末装置に送信する、
処理を実行させるプログラム。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】図８
【補正方法】変更
【補正の内容】
【図８】
2014006715.tif 000025
【手続補正書】
【提出日】平成28年1月18日(2016.1.18)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
表示部を備える端末装置と前記端末装置からネットワークを介してアクセス可能な管理装置とを含むシステムが実行する入力支援方法であって、
入力フィールドを含み、前記表示部への表示対象とされた画面の画面データから、前記入力フィールドの項目名を示す項目情報を抽出し、前記項目情報を前記端末装置から前記管理装置に送信し、
項目名とデータ型との対応関係を示すデータ型情報を参照して、前記管理装置が受信した前記項目情報に基づいて、前記入力フィールドのデータ型を判定し、
それぞれが複数のデータの候補を含み、所定条件に基づいて分類された複数の辞書の中から、前記判定したデータ型に応じた辞書を選択し、
前記選択された辞書に基づいて、前記項目情報に対応する少なくとも１つのデータの候補を、前記管理装置から前記端末装置に送信する、
入力支援方法。
【請求項２】
前記入力フィールドに対する入力操作を検出し、前記入力操作に応じた入力データを前記端末装置から前記管理装置に送信し、
前記選択された辞書に含まれる複数のデータの候補の中から、前記管理装置が受信した前記入力データと置き換えて前記入力フィールドに入力される１またはそれ以上のデータの候補を選択する、
請求項１記載の入力支援方法。
【請求項３】
前記入力フィールドに入力された入力データを確定するための前記表示部に表示された表示部品に対する選択操作を検出し、前記選択操作を受けて前記入力データを前記端末装置から前記管理装置に送信し、
前記選択された辞書に含まれる複数のデータの候補の中から、前記管理装置が受信した前記入力データと置き換えて前記入力フィールドに入力される１またはそれ以上のデータの候補を選択する、
請求項１記載の入力支援方法。
【請求項４】
表示部を備え、入力フィールドを含み、前記表示部への表示対象とされた画面の画面データから前記入力フィールドの項目名を示す項目情報を抽出し、前記項目情報をネットワークを介して送信する端末装置と、
それぞれが複数のデータの候補を含み所定条件に基づいて分類された複数の辞書と、項目名とデータ型との対応関係を示すデータ型情報とを記憶する記憶部を備え、前記データ型情報を参照して前記端末装置から受信した前記項目情報に基づいて前記入力フィールドのデータ型を判定し、前記判定したデータ型に応じた辞書を前記複数の辞書の中から選択し、前記選択された辞書に基づいて、前記項目情報に対応する少なくとも１つのデータの候補を前記端末装置に送信する管理装置と、
を有する情報処理システム。
【請求項５】
端末装置からネットワークを介してアクセス可能なコンピュータに、
前記端末装置から、前記端末装置が備える表示部への表示対象とされた画面の画面データから抽出された、前記画面に含まれる入力フィールドの項目名を示す項目情報を受信し、
項目名とデータ型との対応関係を示すデータ型情報を参照して、受信した前記項目情報に基づいて、前記入力フィールドのデータ型を判定し、
それぞれが複数のデータの候補を含み、所定条件に基づいて分類された複数の辞書の中から、前記判定したデータ型に応じた辞書を選択し、
前記選択された辞書に基づいて、前記項目情報に対応する少なくとも１つのデータの候補を前記端末装置に送信する、
処理を実行させるプログラム。
【国際調査報告】
2014006715.tif 000026
2014006715.tif 000027
2014006715.tif 000028