(57)【特許請求の範囲】
【請求項１】
関連するデータベースのセットとともにユーザインターフェースにおいて用いられる方法であって、前記データベースのセットにおいて、データは、異なるクラスのデータを表すフィールドを有するデータテーブルとして表され、
Ａ）自然語ユーザ問合せを受け取るステップと、
Ｂ）前記自然語問合せを１つまたはそれ以上のデータベース照会に変換して形成するステップとを含み、前記ステップＢ）は、
Ｂ１）前記関連するデータベースのセットのうちの１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスについての知識、情報視覚化技術についての知識、及び前記１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスに対する情報視覚化の関係についての知識を用いて、完全なデータベース照会のセットが形成され得るかどうかを決定するステップと、
Ｂ２）完全なデータベース照会のセットが形成され得ると決定する場合には、前記データベースのフィールドのセマンティックスについての知識、情報視覚化技術についての知識、及び前記１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスに対する情報視覚化の関係についての知識を用いて、１つまたはそれ以上のデータベース照会を特定して形成するステップとを含み、前記方法はさらに、
Ｃ）前記変換の結果、及び前記データベースのフィールドのセマンティックスについての知識、情報視覚化技術についての知識、及び前記１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスに対する情報視覚化の関係についての知識を評価し、少なくとも１つの所定のデータベース照会が得られたかどうかを決定するステップと、
Ｄ）少なくとも１つの所定のデータベース照会が得られたと決定する場合には、１つ又はそれ以上の所定のデータベースに照会するステップと、
Ｅ）前記所定のデータベース照会についての検索されたデータを含む結果に応答して、前記検索されたデータのセマンティックスについての知識、前記検索されたデータが存在するデータベースのフィールドのセマンティックスについての知識、情報視覚化技術についての知識、及び前記１つ又はそれ以上のデータベースのフィールドのセマンティックスに対する情報視覚化の関係についての知識を用いて、前記ユーザに提供されるべき情報を形成するステップと、
Ｆ）前記ユーザに提示されるべき前記形成された情報を提供するステップとを含み、前記ステップＦ）は、
Ｆ１）前記照会に応答して、前記検索されたデータのセマンティックスについての知識、前記検索されたデータが存在するデータベースのフィールドのセマンティックスについての知識、情報視覚化技術についての知識、及び前記１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスに対する情報視覚化の関係についての知識を用いて、１つ又はそれ以上の提示フォーマットを決定するステップと、
Ｆ２）前記決定された１つ又はそれ以上の提示フォーマットで、１つ又はそれ以上の提示モードを用いて、前記形成された情報を前記ユーザに提示するステップとを含む、方法。
【請求項２】
前記ステップＣ）が少なくとも１つの所定のデータベース照会が前記ステップＢ）から得られなかったことを示す場合、
Ｇ）前記ユーザ問合せがサポートされていないことを前記ユーザに知らせるステップをさらに含む請求項１に記載の方法。
【請求項３】
前記ステップＧ）は、１つまたはそれ以上の提示モードを用いて、前記ユーザ問合せがサポートされていないことを前記ユーザに知らせるステップを含む請求項２に記載の方法。
【請求項４】
前記ステップＡ）は、１つまたはそれ以上の入力モードにおいて前記ユーザ問合せを受け取るステップを含む請求項１に記載の方法。
【請求項５】
前記ステップＣ）が所定のデータベース照会が前記ステップＢ）から得られなかったことを示す場合に、
Ｈ）前記１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスについての知識、情報視覚化技術についての知識、前記１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスに対する情報視覚化の関係についての知識、及び前記ユーザとのダイアログからのコンテクスト情報を用いて、前記ユーザに、さらなる情報を入力し、および／または前に受け取った情報を訂正するように促すステップと、
Ｉ）前記さらなる情報および／または前に受け取った情報に対する訂正を受け取るステップと、
Ｊ）前記１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスについての知識、情報視覚化技術についての知識、前記１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスに対する情報視覚化の関係についての知識、及び前記受け取ったさらなる情報および／または前に受け取った情報に対する訂正を含む前記ユーザとのダイアログからのコンテクスト情報を用いて、前記自然語問合せを１つまたはそれ以上のデータベース照会に変換して形成するステップと、
Ｋ）前記自然語問合せが、前に提示されたデータについての情報視覚化コマンドに完全に変換される場合に、前記情報視覚化コマンドに従って前記データの前記提示を変更するステップとを含む請求項１に記載の方法。
【請求項６】
関連するデータベースのセットとともにユーザインターフェースにおいて用いられる装置であって、前記データベースのセットにおいて、データは、異なるクラスのデータを表すフィールドを有するデータテーブルとして表され、前記装置は、
Ａ）自然語ユーザ問合せを受け取るための手段と、
Ｂ）前記自然語問合せを１つまたはそれ以上のデータベース照会に変換して形成するための第１の手段とを備え、前記第１の手段Ｂ）は、
Ｂ１）前記関連するデータベースのセットのうちの１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスについての知識、情報視覚化技術についての知識、及び前記１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスに対する情報視覚化の関係についての知識を有し、これらの知識を使用し、完全なデータベース照会のセットが形成され得るかどうかを決定するように構成された手段と、
Ｂ２）前記１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスについての知識、情報視覚化技術についての知識、及び前記１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスに対する情報視覚化の関係についての知識を有し、これらの知識を使用し、前記完全なデータベース照会のセットが形成され得るという指示に応答して、１つまたはそれ以上のデータベース照会を特定して形成するための手段とを含み、前記装置はさらに、
Ｃ）前記変換の結果、及び前記１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスについての知識、情報視覚化技術についての知識、及び前記１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスに対する情報視覚化の関係についての知識を評価し、少なくとも１つの所定のデータベース照会が得られたどうかを決定するための手段と、
Ｄ）前記１つ又はそれ以上のの所定のデータベースに照会するための手段と、
Ｅ）前記所定のデータベース照会についての前記１つ又はそれ以上の所定のデータベースから検索されたデータを含む結果に応答して、前記検索されたデータのセマンティックスについての知識、前記検索されたデータが存在する前記１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスについての知識、情報視覚化技術についての知識、及び前記１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスに対する情報視覚化の関係についての知識を用いて、前記ユーザに提供されるべき情報を形成するための手段と、
Ｆ）前記ユーザに提示されるべき前記形成された情報を提供するための手段とを備え、前記手段Ｆ）は、
Ｆ１）前記照会に応答して、前記検索されたデータのセマンティックスについての知識、前記検索されたデータが存在する前記所定の１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスについての知識、情報視覚化技術についての知識、及び前記１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスに対する情報視覚化の関係についての知識を用いて、１つ又はそれ以上の提示フォーマットを決定するための手段と、
Ｆ２）前記決定された１つ又はそれ以上の提示フォーマットで、１つ又はそれ以上の提示モードを用いて、前記形成された情報を前記ユーザに提示する手段とを含む、装置。
【請求項７】
Ｇ）少なくとも１つの所定のデータベース照会が得られなかったという前記手段Ｃ）からの指示に応答して、前記ユーザに、前記ユーザ問合せがサポートされていないことを知らせるため手段をさらに有する請求項６に記載の装置。
【請求項８】
前記手段Ｇ）は、１つまたはそれ以上の提示モードを用いて、前記ユーザに前記ユーザ問合せがサポートされていないことを知らせるための手段を有する請求項７に記載の装置。
【請求項９】
前記手段Ｃ）は、
Ｃ１）特定のデータベース照会が得られたかどうかを指示するための手段を有し、
前記装置は、
Ｈ）所定のデータベース照会が特定されなかったとの前記手段Ｃ１）からの指示に応答して、前記１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスについての知識、情報視覚化技術についての知識、前記１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスに対する情報視覚化の関係についての知識、及び前記ユーザとのダイアログからのコンテクスト情報を用いることにより、前記ユーザにさらなる情報を入力し、および／または前に受け取った情報を訂正するように促すための手段をさらに有し、
前記手段Ａ）は、前記さらなる情報および／または前に受け取った情報に対する訂正を受け取り、前記装置はさらに、
Ｉ）前記１つ又はそれ以上の所定のデータベースのフィールドのセマンティックスについての知識、情報視覚化技術についての知識、前記１つ又はそれ以上のデータベースのフィールドのセマンティックスに対する情報視覚化の関係についての知識、及び前記受け取ったさらなる情報および／または前に受け取った情報に対する訂正を含む前記ユーザとの前記ダイアログからの前記コンテクスト情報を用いて、前記自然語問合せを１つまたはそれ以上のデータベース照会に変換して形成するための第２の手段を有し、
前記手段Ｃ）は、前記第２の手段Ｉ）による前記変換の結果を評価し、少なくとも１つの所定のデータベース照会が得られたかどうかを決定し、前記自然語問合せが前に提示されたデータについての情報視覚化コマンドに完全に変換される場合に、前記情報視覚化コマンドに従って前記データの前記提示を変更する請求項６に記載の装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ユーザインターフェースに関し、特に、データ提示システムのためのインターフェースに関する。
【０００２】
【従来の技術】
データ提示システムおよび特に情報視覚化システムのための現在のインターフェースは、通常、マウスおよび／またはキーボードなどのいわゆる従来の入力デバイスのみをサポートしている。音声認識における現在の開発により、情報視覚化システムとの他のモードの相互作用を提供することが可能になった。このため、マウスインターフェースと１対１対応を有する音声に基づいたインターフェースを提供することは比較的容易である。しかし、音声は、マウスまたはキーボードのいずれかと１対１で直接置き換えられて用いられると有効ではないことが示されている。
【０００３】
【発明が解決しようとする課題】
本発明によると、ユーザは、データにアクセスし、情報の提示を作成するために特定の機械に集中せずに、インターフェースによってサポートされる質問に答えることに集中することが可能になる。
【０００４】
【課題を解決するための手段】
従来の公知のデータ提示システムインターフェース、例えば、情報視覚化システムインターフェースの問題および制限は、インターフェースに対するいわゆる拡張可能な自然語問合せを用いて、インターフェースがこのような拡張可能な自然語をデータベース照会（検索要求）およびユーザに提供される情報のセットに変換することによって克服される。具体的には、自然語問合せは、完全なデータベース照会が、自然語問合せに基づいて形成され得るかどうかを決定し、そうである場合には、どの完全なデータベース照会を形成するべきかを特定することによってデータベース照会に変換される。
【０００５】
本発明の１つの態様によると、情報視覚化提示の知識は、ユーザの自然語問合せに応答してユーザをガイドするためにインターフェースにおいて有利に用いられる。
【０００６】
本発明の他の態様によると、探索中のデータの知識および情報視覚化提示の知識は、ユーザの自然語問合せに応答してユーザをガイドするためにインターフェースにおいて有利に用いられる。
【０００７】
本発明のさらに他の態様によると、探索中のデータの知識、情報視覚化提示の知識、および照会ダイアログについてのコンテクスト情報は、ユーザの自然語問合せに応答してユーザをガイドするためにインターフェースにおいて有利に用いられる。
【０００８】
本発明の１つまたはそれ以上の第１に規定される実施形態では、データ提示情報のセットは、聴覚、視覚、または視聴覚形式であり得る。
【０００９】
本発明の１つまたはそれ以上の他の規定される実施形態では、問合せおよびデータ提示情報転送プロセスは、ユーザとインターフェースとの間で相互作用し得る。
【００１０】
本発明１つまたはそれ以上のさらに他の規定される実施形態では、１つまたはそれ以上のユーザインターフェース相互作用のモードが用いられ得る。これらの相互作用のモードには、テキスト、音声、ポイント、およびクリック等が含まれ得る。
【００１１】
本発明の技術的利点は、ユーザが、データにアクセスし、情報の提示を作成するための特定の機械に集中するのではなく、インターフェースによってサポートされる質問に答えることに集中することを可能にすることである。
【００１２】
【発明の実施の形態】
図１は、本発明の実施形態を含む装置の詳細を簡単なブロック図の形式で示す。従って、バス１０２によってモニタおよびディスプレイ１０３、Ｉ／Ｏコントローラ１０４、システムメモリ１０５、キーボード１０６、マウス１０７、取り外し可能なディスクドライブ１０８、ハードディスクドライブ１０９、およびモデム１１０に相互接続された中央処理ユニット１０１を有するコンピュータシステム１００が図示されている。図１は、本発明の実施形態を実現するのに用いられ得る配置を１つだけ示しているが、他の同様の配置、パーソナルコンピュータ、ワークステーション等も、本発明の１つまたはそれ以上の実施形態を同様に実施するために用いられ得る。１つまたはそれ以上のデータベース、ファイル、ターゲットアプリケーションプログラム等がシステムメモリ１０５に格納され得ることに留意されたい。
【００１３】
本明細書では、本発明の実施形態を情報視覚化システムインターフェースに関連するものとして記載しているが、これらの実施形態は、一般に、データ提示システムインターフェースに同様に適用可能であることに留意されたい。
【００１４】
図２は、本発明の実施形態が実施され得るシステムアーキテクチャ２００の詳細を簡単なブロック図の形式で示す。ＳＩＳＬグラマユニット２０２およびＳＩＳＬサービス論理２０３を有するＳＩＳＬ２０１、タスクマネージャ２０５、提示マネージャ２０６、データ貯蔵部２０７およびビュー２０８を有するインフォスチル（ＩｎｆｏＳｔｉｌｌ）２０４、ならびにバイアボイスおよびＪＳＡＰＩ２０９が図示されている。
【００１５】
アーキテクチャ、即ち、システム２００において本発明を実施するのに用いられ得る自然語インターフェースは、少なくとも以下の補足的な構成要素に分離される。
【００１６】
インターフェース構成要素の１つは、ユーザが情報視覚化ビューを操作するためのデータ独立自然語サポートである。このインターフェースは、ユーザが自然語を介してインフォビス（ＩｎｆｏＶｉｓ）ビューを制御かつ選択することを可能にし、ここで、ボイスコマンドは、従来のマウスおよびキーボードコマンドと実質的に同じレベルである。例えば、ユーザは、「最大のコラムによって分類する」と言い、次に、自然語とマウスコマンドとの組み合わせによって更新されたビューと相互作用し得る。この自然語インターフェースは、探索されるデータのセマンティックスとは独立し、すべてのデータセットにわたって用いられ得る。しかし、ユーザは、データの構造にいくぶんか精通し、インフォビス環境を経験していると想定される。
【００１７】
他のインターフェース構成要素は、特定のデータセットの探索においてユーザをガイドするためのドメイン知識およびインタラクティブ設計である。この自然語インターフェースは、特定のデータセットに対して調整された、情報視覚化のためのより高いレベルのサポートを提供することを目的とする。特に、このインターフェースは、インフォビスビューについての知識だけでなく、データのシンタックスおよびセマンティックスについての知識を用いて、特定のデータセットの探索においてユーザをガイドする。この目的は、データの構造および／またはインフォビスツールに精通していないユーザがデータセットを自然かつ効果的に探索することを可能にすることである。
【００１８】
特に、我々のアプローチは以下のステップを有する。
自然語インターフェースを構築するためのデータセットを選択する。
このデータセットに対する問合せのキースレッドを識別する。
各問合せのスレッドに対して、データについての関連する答えを提供するのに有用なデータベース照会およびインフォビスビューのクラスを識別する。
ユーザと相互作用するダイアログシステムを構築し、どの問合せスレッドがユーザに興味深いものであるかを決定する。データのシンタックスおよびセマンティックスについての知識を用いて、このダイアログシステムは、これらの問合せのラインに沿ったデータの探索においてユーザにガイダンスを提供し、どのデータベースの照会が、ユーザがそのデータを理解するのに役立つかを決定しなければならない。次に、インフォビスフレームワークについての知識を用いて、システムは、インフォビスフレームワークを介して適切な情報視覚化ビューを自動的に作成しなければならない。従って、ユーザは、データの構造に精通している必要はなく、またはインフォビスフレームワークについての経験を前もって有している必要もない。
【００１９】
従って、システム２００は、ドメインに特異的な知識を用いることによって、データの探索においてユーザをガイドし、データ分析を助けるインフォビスビューのセットを自動的に作成する。次に、ユーザは、両インターフェースを用いる自然語と、従来のマウスおよびキーボードインターフェースとの組み合わせを介して生成されたビューと相互作用し得る。このように、このインターフェースは、後に記載するデータ独立自然語インターフェースを補完する。
【００２０】
このようなマルチ様式インターフェースをインフォビスフレームワークに実現するためのこの特有のアプローチは、ＳＩＳＬ（いくつかのインターフェース、単一の論理）２０１（多数のインターフェースとのインタラクティブサービスを形成するためのアプローチ）と、インフォスチル２０４（既存のインフォビス環境）とを統合することである。ＳＩＳＬ２０１を用いて、いくつかのインターフェースによって共有される単一のサービス論理を作成する。これらのインターフェースには、デスクトップのマイク上または電話にわたる自動音声認識を介した自然語、またはグラフィカルユーザインターフェースを通してまたはウェブを介して入力されるテキストが含まれる。２０２からのＳＩＳＬグラマは、システムによって認識されるユーザの発声を特定する。ダイアログ管理はＳＩＳＬサービス論理２０３によって特定され、ＳＩＳＬサービス論理２０３また、適切なデータベース照会を構築し、表示する適切なビューを選択する。次に、ＳＩＳＬサービス論理２０３は、対応するコマンドをインフォスチル２０４に送信し、インフォスチル２０４は、関連するビューを表示および更新する。
【００２１】
インフォスチル２０４は、情報の視覚化を通してデータを分析するためのタスク指向型フレームワークである。インフォスチル２０４は、データ貯蔵部２０７からデータテーブルの概要を取り寄せ、リンクされたビューパラダイウム内のトレンドの検索においてデータを相互作用して探索し、生きた文書（即ち、リンクされたＪａｖａアプレット視覚化によって引き上げられた標準的なＨＴＭＬウェブページ）の形態で結果の階層的注釈付き提示を形成するなどのデータ分析タスクをサポートする。さらに重要なことに、インフォスチル２０４は、ユーザが問合せのスレッドを結果の関連するインタラクティブ提示にマッピングするのをサポートする。
【００２２】
この技術を用いて、上記の種のデータ独立自然語インターフェースを実現し、被雇用者データベース用に調整された自然語インターフェースを実現した。重要なことに、これらのインターフェースは共に、インフォスチル２０４に対する従来のポイント・クリックインターフェースと関連して用いられ得る。このシステムはＪａｖａで書かれる。Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｂｕｓｉｎｅｓｓ  Ｍａｃｈｉｎｅｓ（ＩＢＭ）から入手できるビアボイス２０９およびそれに関連したＪａｖａ音声ＡＰＩ（ＪＳＡＰＩ）ライブラリは、自動音声認識を行うために用いられ、標準的なウィンドウズに基づいたＰＣ上で走らされる。
【００２３】
図２は、システムアーキテクチャ２００全体を示す。このアーキテクチャでは、ＳＩＳＬサービス論理２０３は、ＩＢＭのビアボイス２０９を用いて実現され、音声グラマ２０２からの入力を用いて解釈される自然語ユーザインターフェースを用いて、コマンドをインフォスチル２０４インフォビスフレームワークに送信する。インフォスチル提示マネージャ（ＰＭ）２０６に送信されたコマンドは、視覚化ビューを制御かつ選択するために用いられ、一方、インフォスチルタスクマネージャ（ＴＭ）２０５に送信されたコマンドは、データサブセットを選択し、エンドユーザに提示されるビューを作成する。自然語ユーザインターフェースが、マイクを介した音声、スピーカへの合成ボイス、キーボードを介した自然語等を通してビアボイス２０９を用いて実現されることに留意されたい。同様に、他のユーザインターフェース、例えば、電話、ウェブ等はＳＩＳＬ２０１を通して実現される。グラフィカルユーザインターフェースは、マウス、モニタスクリーン、キーボード等を用いてインフォスチル２０４を通して実現される。ＳＩＳＬ２０１、インフォスチル２０４、および本発明のシステムアーキテクチャのこれら２つの重要な構成要素間の接続についてのさらに詳細な情報について以下に記載する。
【００２４】
個人バンキングまたは株取引などの現在のインタラクティブサービスが、同じデータにアクセスするために１つより多くのインターフェースを有することはますます一般的になってきた。例えば、多くの銀行では、自動預金支払機、電話による銀行インターフェース、またはウェブに基づいたインターフェースから個人バンキングサービスにアクセスすることが可能にする。電話に基づいたサービスには、自動音声認識および自然語理解でさえサポートするものもある。
【００２５】
多数のインターフェースが同じサービスに提供されると、サービスに対するすべての異なるユーザインターフェースについて異なるサービス論理（即ち、サービスの本質を規定するコード）が存在し得るという重複が深刻な問題となり得る。さらに、自然語インターフェースをサポートするためには、サービスは、ユーザがそのサービスリクエストを入力する際にかなりの柔軟性を可能にしなければならない。望ましい能力としては、リクエストを様々な様式（例えば、必要な情報が順番に現れ得る）でフレーズ化することを可能すること、欠落している情報を要求すること、誤った情報の訂正、ルックアヘッド（ユーザが一度にいくつかのコマンドを述べることができるようにすること）、およびサービス論理における初期の点にバックトラッキングすることが含まれる。マルチ様式サービスのための現在のアプローチは、有限状態機械に基づいている。この機械は、異なるインターフェースのそれぞれに対して頻繁に（部分的または全体的に）重複され、大抵の場合、リクエストのすべての可能な順序が明示的に記載されなければならない。結果として得られる有限状態機械は、巨大で、維持するのが不可能である。
【００２６】
ＳＩＳＬ２０１は、多数のユーザインターフェースを用いてサービスを構築するためのアーキテクチャおよびドメインに特異的な言語である。ＳＩＳＬ２０１は、多数のユーザインターフェースをサポートし、入力における柔軟性を可能にし、サービス提供者が、サービス論理およびデータの単一の一定した源に対する多数の交換可能なインターフェースをサポートすることを可能にする。
【００２７】
図２は、ＳＩＳＬ２０１が本発明でどのように用いられるかを示し、また、多数のインターフェースをサポートするためのＳＩＳＬ２０１の使用を例示している。ＳＩＳＬサービス論理２０３は多数のユーザインターフェースと通信する。インターフェースには、ＩＢＭのビアボイス２０９およびそれに関連するＪａｖａ音声適用プログラミングインターフェース（ＡＰＩ）ライブラリを用いる音声エンジン、およびインフォスチル２０４を用いるグラフィカルユーザインターフェースが含まれる。図示するように、ＳＩＳＬ２０１は、電話、ウェブサーバまたはブラウザ、Ｅ−メール等の他のインターフェースと通信し得る。ＳＩＳＬサービス論理２０３および多数のユーザインターフェースは事象を介して通信する。ＳＩＳＬサービス論理２０３は、どの情報を次に受け取る準備ができているかをユーザインターフェースに伝達する。この情報に基づいて、ユーザインターフェースは、ユーザに適切な情報を提供するよう要求し、ユーザがヘルプをリクエストした場合に応答する。次に、ユーザインターフェースは、ユーザから情報を収集し、それをサービス論理に送信する。これらの機能を果たすユーザインターフェースはすべて、ＳＩＳＬサービス論理２０３と関連して用いられ得る。例えば、ＳＩＳＬ２０１は、ユーザが、「組織のサイズを示して下さい」と言った場合に組織を受けることが可能であることを自然語インターフェースに知らせ得る。次にインターフェースは、例えば、「どの組織を見たいですか？」と述べることによって、ユーザを促し得る。ユーザが、自然語インターフェースが組織として認識するもので応答する場合、次に、インターフェースは、組織が検出されたことを示すＳＩＳＬ事象を生成する。次に、この事象は、ＳＩＳＬサービス論理２０３によって処理される。ＳＩＳＬ２０１はまた、様々なインターフェースを設計し実現するための都合のよいフレームワークを提供する。ユーザインターフェース（ＵＩ）設計者は、ユーザにプロンプトとして与えられるストリングを生成するプロンプトおよびヘルプ機能を特定するだけでよい。自然語インターフェースとしては、音声グラマのセット（口語入力を効率的かつ効果的に認識させる音声認識エンジンへの入力）がまた必要である。これらの機能およびグラマから、ＳＩＳＬ２０１基礎構造は、ユーザインターフェースを自動的に生成し、それらをＳＩＳＬサービス論理２０３と統合する。自動音声認識に基づいたインターフェースでは、ＳＩＳＬ２０３基礎構造は、Ｊａｖａ音声ＡＰＩ（ＪＳＡＰＩ）に基づいてデスクトップインターフェースを自動的に生成する。
【００２８】
ＳＩＳＬ２０１のさらなる詳細を以下に記載する。
【００２９】
インフォスチル２０４（情報蒸留（Ｉｎｆｏｒｍａｔｉｏｎ  Ｄｉｓｔｉｌｌｅｒｙ）は、データ分析を行う際に関連する様々なタスクにおいてユーザを助ける情報視覚化（インフォビス）のためのフレームワークである。実際、インフォビス環境を用いたデータ分析には、問題定義の開発、適切なデータ源の識別および検索、データの探索および分析、ならびに分析結果を提示するための記録などの多数のユーザタスクが含まれる。このプロセスは、線形ではなく、通常、多くの別個の調査スレッドを伴い、そのいくつかはかなりのバックトラッキングを伴ってデッドエンドとして破棄され得る。
【００３０】
上記のように、インフォスチル２０４のアーキテクチャの主なシステム構成要素は、タスクマネージャ２０５および提示マネージャ２０６である。これらは、データ貯蔵部２０７からデータを得て、それを（動的に作成された）ビュー２０８の形態で提示する。インフォスチル２０４は、リンクされたビューパラダイムを用い、それによって、ユーザは、（例えば、グラフィクスのいくつかを選択することによって）表示データと相互作用し、他のビューに伝播されたユーザのアクションの結果を見ることが可能である。
【００３１】
タスクマネージャ２０５は、ユーザが分析プロセスを組織化し、その分析をタスクのグループおよびシーケンスに分解するのを助ける。例えば、「その組織内の部門内に分配された所定の組織におけるジョブはどのようなものであるか？」などの質問に対して答えたいユーザは、一連のタスクを行わなければならない。まず、分析者は、データ貯蔵部から組織、部門、およびジョブに対するデータを得なければならない。このタスクには、適切なデータテーブルを見出すこと、フィールドをテーブルから選択すること、所望のデータを検索するための照会を形式化することなどのサブタスクが含まれる。次に、データは、１つまたはそれ以上のビュー、即ち、データを選択すること、ビューのタイプ（バーチャート、ラインチャート等）を選択すること、およびビューを作成することなどのサブタスクを有するアクティビティとして表示されなければならない。探索の成功したパターンに関する知識は、分析プロセスにおける開始点としてユーザが用いることができるタスクテンプレートの形態で格納され得る。
【００３２】
提示マネージャ２０６は、提示、即ち、ビュー２０８の形態で分析結果を表示する。提示マネージャ２０６は、２つのパラダイムを組み合わせる。第１に、ユーザがリンクされたビューを用いてデータを相互作用によって分析し得るワークスペースである。第２に、分析結果を後の検査のために保存することが可能な記録システムである。例えば、タスクマネージャは、データ貯蔵部におけるテーブルまたはこれらのテーブル内のフィールドをリストアップする、または新しいデータベース照会を作成するように要求され得る。同様に、提示マネージャ２０６は、データベース照会の結果を用いて新しいビューを作成するように要求され得る。この能力は、元来、スクリプトを作成するためおよびブックマークのために用いられていたが、次のセクションで例示するように、この能力は、ＳＩＳＬ２０１をインフォスチル２０４と統合するときに非常に有用であることが証明された。
【００３３】
ＳＩＳＬ２０１は、インフォスチル２０４コマンドＡＰＩを介してインフォスチル２０４に接続され、それによって、２つのシステム間で簡単なインターフェースを保持する。これは、インフォスチル２０４がＳＩＳＬ２０１ユーザインターフェースではないため、インフォスチル２０４は、ＳＩＳＬ２０１事象を生成せず、または入力のためのＳＩＳＬ２０１プロンプトに応答しないことを意味する。ＳＩＳＬサービス論理２０３によってインフォスチル２０４に送信されたコマンドはタスクマネージャ２０５および提示メネージャ２０６に渡され、実行される。照会、即ち、応答からの結果は、同じＡＰＩを通して戻される。従って、ＳＩＳＬ自然語インターフェース論理は、インフォスチル２０４を用いて、ＳＩＳＬバンキング論理が銀行の決算システムにアクセスし、これを用いて口座残高を調べて修正するのと全く同じ様式で、データのビューを生成して表示する。ＳＩＳＬ２０１とインフォスチル２０４との間の相互作用をインフォスチルＡＰＩに限定することによって、ＳＩＳＬ２０１によってサポートされるマルチ様式インターフェースで、またはＳＩＳＬ２０１なしの独立モードでインフォスチル２０４を走らせる柔軟性を有する。これはまた、インフォスチル２０４がＳＩＳＬ２０１で走らされるとき、ユーザは、インフォスチル２０４と共に含まれるグラフィカルユーザインターフェース（ＧＵＩ）およびＳＩＳＬ２０１によって提供される他の相互作用モードの両方を通してインフォスチル２０４と相互作用し得ることを意味する。例えば、ユーザは、ビューのグループを生成および表示し、マウスを用いて選択を行い得る。次に、ユーザは、ボイスインターフェースを用いて「現在何人が選択されているか？」と尋ね得る。この質問に答えるためには、ＳＩＳＬ２０１は、インフォスチル２０４ＡＰＩを用いて、ビューに（提示マネージャ２０６を通して）結果を問い合わせなければならない。次に、この結果は、（ボイスインターフェース上で音声を生成することによって）ユーザに与えられる。
【００３４】
システム２００の目的は、インフォスチル２０４を通してすでに作成されたビュー２０８を制御および選択するためのデータ独立自然語サポートを提供することである。この自然語インターフェースは、探索されるデータのセマンティックスから独立していることを意図され、インフォスチルデータセット全体にわたって使用可能でなければならない。このインターフェースを実現するためには、インフォスチル２０４に送信される提示マネージャ（ＰＭ）２０６事象を生成するためのＳＩＳＬグラマ２０２およびＳＩＳＬサービス論理２０３を書く必要があった。上述し、図２に示したように、ＳＩＳＬ２０１と共に用いられる自動音声認識エンジンは、２０２からのＳＩＳＬグラマに対してユーザの発声を照合し、ＳＩＳＬサービス論理２０３に送信されるＳＩＳＬ事象を生成する。これらの事象に応答して、ＳＩＳＬサービス論理２０３は、さらなる情報をユーザに要求したり、またはＰＭ２０６コマンドをインフォスチル２０４に送信するなどのアクションを行う。
【００３５】
ＰＭ２０６コマンドは、現在のビューを設定する、ビュー内のデータ項目またはサブセットを選択する、ビュー内のデータ項目またはオブジェクトを識別する、ビュー内のデータ項目またはサブセットを隠すまたは示す、および分類可能なビュー内のデータ項目またはオブジェクト分類する（例えば、バーチャート内のバーをアルファベット順にまたはサイズによって分類する）などのタイプのユーザ相互作用を成し遂げるための明確に定義された事象である。ＰＭ２０６コマンドは、インフォスチル２０４ビュー２０８へのインターフェースに集中し、ビュー２０８内で表示されているデータのドメインから独立している。従って、同じＳＩＳＬグラマ２０２およびＳＩＳＬサービス論理２０３は、データのドメインから独立した任意のデータセットのインフォスチルビュー２０８に対するＰＭ２０６コマンドを生成するために用いられ得る。ＰＭ２０６コマンドは、明確に定義されているため、２０２からのコアＳＩＳＬグラマ、およびそれらを生成するためのＳＩＳＬサービス論理２０３は、かなり簡単で、既存のマウスおよびメニュＧＵＩに基づいてインフォスチルビュー２０８に簡単に書き込まれ得る。しかし、ダイアログおよびコンテクストなどの自然語特徴を強化するために、
１．ビューについて話し、それらと相互作用するための共通自然語代替、および
２．容易に話されるが、ＧＵＩで特定するのには困難であり得るタイプのコマンド、およびＧＵＩで特定するのは容易であるが、話すのが困難であり得るタイプのコマンド間の相違を識別した。特に、ＧＵＩおよび自然語インターフェースが互いに補足するために用いられ得る方法を識別した。
【００３６】
バーチャートにおいてバーを選択する場合について考えよう。ＧＵＩインターフェースでは、ユーザは、個々のバーをクリックするか、またはバーのグループを捕らえることによって、マウスでバーを選択し得る。さらにユーザは、ポップアップメニュから直接「すべてを選択」、「いずれも選択しない」、または「すべてを切り替える」などの他の共通の選択アクションにアクセスし得る。簡単かつ短い選択アクションのために、ＳＩＳＬグラマ２０２は、コマンドに対する変化だけでなく、メニュコマンドに対する口語の等化をパーズし得る（例えば、バーチャートにおいてバーの選択を切り替えるために、ユーザは、「すべてを切り替える」、「すべてのバーを切り替える」、または「選択を切り替える」と言うことができる）。しかし、個々のバーまたはバーのグループの選択（即ち、マウスを用いた選択と実質的に等化の選択）を話すことによって行うと、興味深い変化および微妙さが導入される。例えば、「上から１０個のバーを選択する」または「２０より大きいバーをすべて選択する」などの選択は簡単に言うことができるが、特に、より大きな数の同様のサイズのバーに対して、マウスを用いて特定することより厄介になり得る。
【００３７】
共通自然語およびインフォビス用語の組み合わせは、このインターフェースのためのＳＩＳＬグラマ２０２およびＳＩＳＬサービス論理２０３に加えられる。これらの拡張によって、ユーザはインフォスチル２０４に対する自然語入力においてより柔軟性をもつことができる。特に、ユーザが部分的な情報または首尾一貫していない情報のみを特定する場合、本発明のインターフェースは、ユーザに残りの情報を収集するよう促す。例えば、ユーザが単に「分類」と言った場合、インターフェースは、ユーザに所望の分類基準について要求する。本発明のインターフェースはまた、インフォスチル２０４ＧＵＩコマンドのシーケンスを、「第１および第３番目に最も小さいコラムによって分類する」などの簡単な口語コマンドにカプセル化する。次に、ＳＩＳＬサービス論理２０３は、ＰＭ２０６コマンドの適切なシーケンスをインフォスチル２０４に送信する。
【００３８】
バーチャートを分類するために用いられる２０２からのＳＩＳＬグラマおよびＳＩＳＬサービス論理２０３からの抜粋は以下の通りである。
【００３９】
0003779162.tif 000002
【００４０】
表記「｜」は、サブ規則間の選択を示し、表記［］は、括弧内のサブ規則がオプションであることを示す。＜＞内のサブ規則は、この括弧で囲まれた名称を有する他のサブ規則が呼び出されることを特定する。ここで、＜ｉｎｔｖａｌ＞は、「第１」、「第３」等に照会されるサブ規則を示し、＜ｂａｒ＞は、フレーズ「ｂａｒ」または「ｂａｒｓ」の異なる口語代替に照会される。*は、括弧で囲まれた表現が複数回一致し得ることを示す。｛｝内の表現は、ＳＩＳＬサービス論理２０３に自動的に送信されるＳＩＳＬ２０１（図２）事象に対応する。
【００４１】
図３は、ドメイン独立インターフェースの部分についての、図２のＳＩＳＬサービス論理２０３を示す反応制約グラフである。最初、ＳＩＳＬサービス論理２０３はアイドルノード３０１にある。アイドルノード３０１において、ＳＩＳＬサービス論理２０３は、例えば、ｓｏｒｔまたはｓｅｌｅｃｔ事象を受けることができる。ｓｏｒｔ事象が音声認識エンジンから到達すると、ＳＩＳＬサービス論理２０３は、矢印で示すｓｏｒｔの標的、即ち、ノード３０２に状態を変更する。次に、ＳＩＳＬサービス論理２０３は、ｓｅｌｅｃｔ ｒｅｐｌａｃｅ事象を受け、再びノード３０３に変更する。ＳＩＳＬサービス論理２０３は、ｓｅｌｅｃｔ ｂｙｐｏｓ３０４またはｓｅｌｅｃｔ ｂｙｓｉｚｅ３０５事象を受けると、この新しいノード３０３内でループを描く。ＳＩＳＬサービス論理２０３は、ｓｅｌｅｃｔｄｏｎｅ事象を受けるとノード３０３を出て、ノード３０６に進む。ｓｏｒｔ ｂｙｓｅｌｅｃｔｅｄ事象を受けると、ＳＩＳＬサービス論理２０３はノード３０７に進む。ノード３０７は、「リーフ」ノードである。トラバーサルがリーフノード、即ち、ノード３０７に到達すると、適切なＰＭ２０６コマンドはインフォスチル２０４に送信される。ｓｏｒｔ ｂｙｓｅｌｅｃｔｅｄ事象を受けると、ノード３０２からリーフノード３０８に直接到達することに留意されたい。このようにして、エンドユーザは、「現在の選択によって分類して下さい」と言うことができる。これは、＜ｓｏｒｔ＞グラマ規則に一致し、ＳＩＳＬｓｏｒｔおよびｓｏｒｔ ｂｙｓｅｌｅｃｔｅｄ事象はＳＩＳＬサービス論理２０３に送信される。次に、ＳＩＳＬサービス論理２０３はＰＭ２０６コマンドをインフォスチル２０４に送信し、これは、現在選択されているデータによる分類に対応する。あるいは、ユーザは、「第１および第３のコラムによって分類して下さい」と言うかも知れない。「第１および第３のコラム」は、＜ｓｅｌｅｃｔ ｂｙｐｏｓ＞サブ規則に照会される。なぜなら、「および第３のコラム」は、＜ａｄｄ ｔｏ  ｓｅｌｅｃｔｉｏｎ＞サブ規則と一致するからである。従って、ｓｏｒｔ、ｓｅｌｅｃｔ ｒｅｐｌａｃｅ、ｓｅｌｅｃｔ ｂｙｐｏｓ（第１）、ｓｅｌｅｃｔ ｂｙ ｐｏｓ（第３）、ｓｅｌｅｃｔ ｄｏｎｅ、およびｓｏｒｔ ｂｙ ｓｅｌｅｃｔｅｄ事象はサービス論理に送信される。次に、ＳＩＳＬサービス論理２０３は、２つのＰＭ２０６コマンドをインフォスチル２０４に送信する。１つのコマンドは、第１のコラムによる分類に対応し、他のコマンドは、第３のコラムによる分類に対応する。ＳＩＳＬサービス論理２０３はまた、ユーザダイアログの内容を記憶している。例えば、今、ユーザが「および第５のコラム」と言うとすると、ＳＩＳＬサービス論理２０３は、新しい選択が分類の基礎に対してなされたばかりであることを記憶する。これによって、ＳＩＳＬサービス論理２０３は、現在の選択に第５のコラムを加え、それによって分類することに対応するＰＭ２０６コマンドをインフォスチル２０４に送信する。
【００４２】
ユーザが分類基準について不確かである場合、ユーザは、単に「分類」と言う。これは＜ｓｏｒｔ＞グラマ規則に一致し、分類事象はＳＩＳＬサービス論理２０３に送信される。他の事象は送信されていないので、次に、ＳＩＳＬサービス論理２０３は、「現在の選択、サイズ、順序、または新しい選択によって分類したいのか？」と聞くことによってユーザに答えを促す。次に、ユーザは、適切な選択をし得る。ユーザが何と言ったらよいのか全く分からない場合、ユーザは単に「ヘルプが必要である」と言うことができる。サービス論理は、ヘルプ事象を受け、「そのデータを分類または選択してもよい、または．．．」と言ってユーザに答えを促す。
【００４３】
このサンプルＳＩＳＬグラマ２０２およびＳＩＳＬサービス論理２０３は、インフォスチルビュー２０８に対する音声コマンドを処理するためにＳＩＳＬ２０１を用いるパワーを例示している。特に、本発明のインターフェースは、大きなデータセットについてのデータ選択の精度を引き上げ、インフォスチルＧＵＩコマンドのシーケンスに対応する単一の文章をユーザが発することを可能にし、ユーザが部分的な情報を与えることを可能にし、そのタスクに対応するユーザの可能な選択に関するガイダンスを与える。この自然語インターフェースは、すべてのデータセットにわたって用いられ得る。
【００４４】
ドメイン知識およびインタラクティブ設計は、特定のデータセットを探索するユーザをガイドするためにインターフェースにおいて用いられる。この自然語インターフェースは、特定のデータセットに対して調整された、情報視覚化のためのより高いレベルのサポートを提供することを目的としている。従って、これは、ユーザがそのデータ分析タスクを管理するのを助けるように設計されたインフォスチルタスクマネージャ２０５（ＴＭ）に密接に関連している。このタスクの重要な局面は、ユーザが、意図した分析問合せを、これらの問合せを探索するのを助ける単一のビュー２０８またはビューのセットに（表示に適切なデータ変数と共に）照会するのを助けることである。このような問合せおよび対応するインフォビスビューの集まりは、通常、特定のデータドメインに調整される。このような集まりを「タスクテンプレート」に保存することによって、古いおよび新しいインフォスチル２０４のユーザには、同じドメインからの同じデータまたは同様のデータのさらに新しいバージョンを調べるための開始場所が提供される。これは、特に、関心のある分析問合せのタイプ（例えば、「時間が経つにつれてどのように組織が展開したか？」）を知り得るが、データセットの詳細についての知識も、データを探索するためにどのビューを用いるかについての知識も持たないかも知れない古くからのまたは新しいインフォビスユーザに有用である。
【００４５】
ＴＭ２０５コマンドを生成するための音声インターフェースは、以下のようなタスクテンプレートの表記を用いる。
１．エンドユーザが興味のある分析問合せに集中し、それをはっきりと表現するようにガイドする、および
２．システム（この場合、ＳＩＳＬサービス論理）を用いて、ユーザの問合せに関連するインフォスチルビュー２０８のデータおよびセットを提示する。
特に、ＳＩＳＬグラマ２０２およびＳＩＳＬサービス論理２０３は、自然語のダイアログおよびコンテクスト特徴を強化し、ユーザの問合せに適切なインフォスチルビュー２０８のセットを動的に生成する。ＳＩＳＬサービス論理２０３は、ユーザとのダイアログを管理し、曖昧に表現された分析問合せを、明確に定義された自然語照会に洗練する。ＳＩＳＬサービス論理２０３は、次に、この照会をインフォスチルＴＭ２０５コマンドに変換する。明確に定義され、データドメインから独立したＰＭ２０６コマンドとは違って、ＴＭ２０５コマンドは、より自由に規定され、データのドメインにより強く依存し、例えば、医療データを分析している際に食品雑貨店のデータに関して問い合わせることは有用ではない。
【００４６】
従って、組織データベースについての関心のある分析問合せは以下の通りである。
「［組織ｘ］の人々はどこから来ましたか？」
「１９９９年に何人の新入社員が［組織ｘ］に存在しましたか？」
「［組織ｘ］の新入社員を示して下さい。」
「［組織ｘ］の人々は何をしますか？」
「［組織ｙ］の契約者を示して下さい。」
「［組織ｙ］の人々はどこに住んでいますか？」
「［組織ｚ］は時間が経つにつれてどのように成長しましたか？」
「１９９９年７月に、何人の人が［組織ｚ］にいましたか？」
【００４７】
各問合せスレッドについて、組織データについての関連の答えを提供するのに有用なデータベース照会のクラスおよびインフォスチルビュー２０８が識別された。ＳＩＳＬグラマ２０２およびＳＩＳＬサービス論理２０３は、ユーザから情報を収集し、ユーザの意図した（識別されたセットからの）問合せに関してユーザと対話を行い、これらの問合せを完全かつ明白な照会に洗練し、対応するＴＭ２０５コマンドを生成してインフォスチル２０４に送信するために生成された。次に、ユーザは、ドメイン独立自然語インターフェースからの音声コマンドと、インフォスチル２０４ＧＵＩインターフェースとの組み合わせを通じて生成されたビューと相互作用し得る。例えば、「［組織ｘ］の人々はどこから来ましたか？」という問合せについて考えよう。根底にある照会は曖昧である。なぜなら、これは、人々がどこの組織から来たか、または人々がどの地理的な位置から来たかのいずれかを指し得るからである。従って、インターフェースは、「組織または位置を意味しているのですか？」と言ってユーザに答えを促す。ユーザから十分な情報が集められ、完全かつ明白な照会を構築すると、ＳＩＳＬサービス論理２０３は、適切なＴＭ２０５コマンドを生成する。例えば、ＳＩＳＬサービス論理２０３は、バーチャート、値リスト、および／または格子チャートを作成し、適切なデータ変数を表示し得る。
【００４８】
「組織Ｘの人々はどこから来ましたか？」および「組織Ｘは時間が経つにつれてどのように展開しましたか？」に関する問合せについてのダイアログを行うために用いられる２０２からのＳＩＳＬグラマおよびＳＩＳＬサービス論理２０３からの抜粋は以下の通りである。
【００４９】
0003779162.tif 000003
0003779162.tif 000004
【００５０】
図４は、組織データに対する自然語インターフェースの部分についての、図２のＳＩＳＬサービス論理２０３を例示する反応制約グラフである。初期のノード４０１において、対応するＳＩＳＬサービス論理２０３は、問合せのタイプに対応する事象を受けることができる。ＳＩＳＬサービス論理２０３は、音声認識エンジンからｐｅｏｐｌｅｆｒｏｍ事象を受け取ると、標的ノード、即ち、ノード４０３に変更する。次に、ＳＩＳＬサービス論理２０３は、他のノードに変更し得る前にいずれかの順序で、ｗｈｏ事象およびｗｈｉｃｈ事象を要求する。両事象を受け取ると、ＳＩＳＬサービス論理２０３は、ノードを変更するためにｏｒｇａｎｉｚａｔｉｏｎｓまたはｌｏｃａｔｉｏｎｓ事象のいずれかを必要とする。ｏｒｇａｎｉｚａｔｉｏｎｓ事象を受け取ると、ＳＩＳＬサービス論理２０３はノード４０５に進む。次に、ｗｈａｔｏｒｇｌｅｖｅｌ事象を受け取ると、ＳＩＳＬサービス論理２０３はノード４０６に進む。ノード４０６では、ｗｈｅｎ事象が要求される。ＳＩＳＬサービス論理２０３がノード４０３にあり、ｌｏｃａｔｉｏｎｓ事象を受け取ると、ＳＩＳＬサービス論理２０３は、ノード４０４に変更し、またｗｈｅｎ事象を要求する。トラバーサルがリーフノード、即ち、ノード４０６またはノード４０４に到達すると、適切なＴＭ２０５コマンドは、ＳＩＳＬサービス論理２０３からインフォスチル２０４に送信される。
【００５１】
図５は、図２のシステムアーキテクチャ２００によって実現される本発明の実施形態において用いられるステップを例示するフローチャートである。ステップ５０１において、問合せプロセスは、ユーザが自然語問合せを入力することによって開始する。次に、ステップ５０２において、システム２００（図２）は、情報視覚化技術についての知識を用いて、完全なデータベース照会のセットが形成され得るかどうかを決定し、形成され得ると決定した場合には、１つまたはそれ以上のデータベース照会を特定して形成することによって自然語問合せを１つまたはそれ以上のデータベース照会に変換する。セットには、１つまたはそれ以上の完全なデータベース照会が含まれ得る。しかし、セットが１つの完全なデータベース照会のみを含む場合、その照会は明白である。情報視覚化技術についての知識は、反応制約グラフの形態でＳＩＳＬサービス論理２０３内で符号化される。選択ノードは、ユーザが利用可能な代替を示し、制約ノードは、必要な情報セットを示す。リーフノードは、データベース照会および対応する情報視覚化ビュー（例えば、提示フォーマット）を含む。ユーザによって入力された自然語は、２０２からのＳＩＳＬグラマに照会され、適切な事象はＳＩＳＬサービス論理２０３に送信される。反応制約グラフは、これらの事象に従って横断される。選択ノードまたは制約ノードにおいて制御が停止すると、さらなる情報がユーザから必要であると決定され、ユーザは、以下に示すように、それに応じて答えを促される。あるいは、制御がリーフノードで停止すると、これは、ユーザによって与えられる情報が完全かつ明白なデータベース照会（リーフノードにおいて記載される）のセットに変換され得ることを示す。リーフノードはまた、どの種類の情報視覚化ビューが表示されるべきかを示す。ステップ５０３は、少なくとも１つのデータベース照会が特定されたかどうかをテストして決定する。ステップ５０３でのテスト結果がＮＯである場合には、ステップ５０４において、ユーザは、照会がサポートされていないことを知らされる。ステップ５０３におけるテスト結果がＹＥＳである場合には、少なくとも１つのデータベース照会が特定され、ステップ５０５は、適切なデータベースに照会する。ステップ５０６において、システム２００は、情報視覚化技術についての知識を用いて、ユーザに与えられる情報を形成する。次に、ステップ５０７において、システム２００は、情報視覚化技術についての知識を用いて、１つまたはそれ以上のフォーマットを決定し、１つまたはそれ以上の提示モードを用いて、決定された１つまたはそれ以上のフォーマットにおいて、形成された情報を提示する。提示フォーマットは、予め決定され得るか、またはフォーマットのセットから動的に決定され得ることに留意されたい。フォーマットには、テキスト、グラフィクス、画面ビュー（例えば、チャート）等が含まれ得ることにも留意されたい。さらに、提示モードには、少なくともテキスト、ボイス、電話、ウェブ、グラフィクス、他の視覚手段等、および／またはその任意の所望の組み合わせが含まれ得る。
【００５２】
本明細書で用いるフレーズ「１つまたはそれ以上の」は、「１つ、１つより多く、または１つもしくはそれ以上の任意の所望の組み合わせ」を意味するものとすることに留意されたい。
【００５３】
図６は、図２のシステムアーキテクチャ２００によって実現される本発明の他の実施形態において用いられるステップを例示するフローチャートである。ステップ６０１において、問合せプロセスは、ユーザが自然語問合せを入力することによって開始する。次に、ステップ６０２において、システム２００（図２）は、情報視覚化技術についての知識を用いて、完全なデータベース照会のセットが形成され得るかどうかを決定し、形成され得ると決定した場合には、１つまたはそれ以上のデータベース照会を特定して形成することによって自然語問合せを１つまたはそれ以上のデータベース照会に変換する。セットには、１つまたはそれ以上の完全なデータベース照会が含まれ得ることに再び留意されたい。しかし、セットが１つの完全なデータベース照会のみを含む場合、その照会は明白である。これは、ステップ５０２に関連して上述したのと実質的に同様に実現される。ステップ６０３は、少なくとも１つのデータベース照会が特定されたかどうかをテストして決定する。ステップ６０３のテスト結果がＮＯである場合、ステップ６０４において、システム２００は、情報視覚化技術についての知識、ならびにさらなる情報および／または訂正された情報を含むダイアログについてのコンテクスト情報を用いて、ユーザにさらなる情報を要求する。ダイアログについてのコンテクスト情報は、反応制約グラフの現在の状態によって暗黙のうちの提示される。これはまた、サービスモニタ１４０２（図１４）において事象優先度の形態で符号化される。次に、ステップ６０５において、ユーザは、さらなる情報を提供し、および／または前に提供された情報を訂正する。ステップ６０６において、システム２００（図２）は、情報視覚化技術についての知識、ならびにさらなる情報および／または訂正された情報を含むダイアログについてのコンテクスト情報を用いて、完全なデータベース照会のセットが形成され得るかどうかを決定し、形成され得ると決定した場合には、１つまたはそれ以上のデータベース照会を特定して形成することによって自然語問合せを１つまたはそれ以上のデータベース照会に変換する。再び、これは、ステップ５０２に関連して上述したのと実質的に同じように実現される。但し、この場合、ダイアログについてのコンテクスト情報が追加される。その後、制御はステップ６０３に戻され、ステップ６０３から６０６は、ステップ６０３がＹＥＳの結果を出すまで繰り返される。ステップ６０３でＹＥＳの結果が出て、それによって、少なくとも１つのデータベース照会が特定されたことが示されると、ステップ６０７は適切なデータベースに照会する。ステップ６０８では、システム２００は、情報視覚化技術についての知識を用いて、ユーザに与えられる情報を形成する。次に、ステップ６０９において、システム２００は、情報視覚化技術についての知識を用いて１つまたはそれ以上のフォーマットを決定し、１つまたはそれ以上の提示モードを用いて、決定された１つまたはそれ以上のフォーマットにおいて、形成された情報を提示する。提示フォーマットは、予め決定され得るか、またはフォーマットのセットから動的に決定され得ることに留意されたい。再び、フォーマットには、テキスト、グラフィクス、画面ビュー（例えば、チャート）等が含まれ得ることにもさらに留意されたい。さらに、提示モードには、少なくともテキスト、ボイス、電話、ウェブ、グラフィクス、他の視覚手段等、および／またはその任意の所望の組み合わせが含まれ得る。
【００５４】
図７は、図２のシステムアーキテクチャ２００によって実現される本発明のさらに他の実施形態において用いられるステップを例示するフローチャートである。ステップ７０１において、問合せプロセスは、ユーザが１つまたはそれ以上の入力モードを用いることによって自然語問合せを入力することによって開始する。自然語問合せを入力するために、入力モードの任意の１つまたは入力モードの任意の組み合わせが用いられ得ることに留意されたい。これらの入力、即ち、相互作用モードは、電話、パーソナルコンピュータ、マイク、ウェブ、マウス、キーボード等、またはその任意の所望の組み合わせを用いる、テキスト、ボイス、ポイントおよびクリック（例えば、マウス）等を含み得る。次に、ステップ７０２では、システム２００（図２）は、情報視覚化技術についての知識を用いて、完全なデータベース照会のセットが形成され得るかどうかを決定し、形成され得ると決定した場合には、１つまたはそれ以上のデータベース照会を特定して形成することによって自然語問合せを１つまたはそれ以上のデータベース照会に変換する。セットには１つまたはそれ以上の完全なデータベース照会が含まれ得ることに再び留意されたい。しかし、セットが１つの完全なデータベース照会のみを含む場合、その照会は明白である。これは、ステップ５０２に関連して上述したのと実質的に同様に実現される。ステップ７０３は、少なくとも１つのデータベース照会が特定されたかどうかをテストして決定する。ステップ７０３のテスト結果がＮＯである場合、ステップ７０４において、システム２００は、情報視覚化技術についての知識、ならびにさらなる情報および／または訂正された情報を含むダイアログについてのコンテクスト情報を用いて、ユーザにさらなる情報を要求する。ダイアログについてのコンテクスト情報は、反応制約グラフの現在の状態によって暗黙のうちの提示される。これはまた、サービスモニタ１４０２（図１４）において事象優先度の形態で符号化される。ステップ７０５において、システム２００は、複数の所定モードのうちの１つの所定モードまたはその組み合わせを用いることによってユーザを促す。ステップ７０５からのプロンプトに応答して、ユーザは、１つまたはそれ以上の入力モードを用いることによって、ステップ７０６を介してさらなる情報を提供し、および／または予め提供された情報を訂正する。ステップ７０７において、システム２００は、情報視覚化技術についての知識、ならびにさらなる情報および／または訂正された情報を含むダイアログについてのコンテクスト情報を用いて、完全なデータベース照会のセットが形成され得るかどうかを決定し、形成され得ると決定した場合には、１つまたはそれ以上のデータベース照会を特定して形成することによって自然語問合せを１つまたはそれ以上のデータベース照会に変換する。セットが１つの完全なデータベース照会のみを含む場合、その照会は明白である。再び、これは、ステップ５０２に関連して上述したのと実質的に同様に実現される。但し、この場合、ダイアログについてのコンテクスト情報が追加される。その後、制御はステップ７０３に戻され、ステップ７０３から７０７は、ステップ７０３がＹＥＳの結果を出すまで繰り返される。ステップ７０３でＹＥＳの結果が出て、それによって、少なくとも１つのデータベース照会が特定されたことが示されると、ステップ７０８は適切なデータベースに照会する。ステップ７０９では、システム２００は、情報視覚化技術についての知識を用いて、ユーザに与えられる情報を形成する。次に、ステップ７１０において、システム２００は、情報視覚化技術についての知識を用いて１つまたはそれ以上のフォーマットを決定し、１つまたはそれ以上の提示モードを用いて、決定された１つまたはそれ以上のフォーマットにおいて、形成された情報を提示する。これらの提示モードには、少なくともテキスト、ボイス、電話、ウェブ、グラフィクス、他の視覚手段等、および／またはその任意の所望の組み合わせが含まれ得る。再び、フォーマットには、テキスト、グラフィクス、画面ビュー（例えば、チャート）等が含まれ得ることにも留意されたい。また、提示フォーマットは、予め決定され得るか、またはフォーマットのセットから動的に決定され得ることに留意されたい。
【００５５】
図８は、図２のシステムアーキテクチャ２００によって実現される本発明のさらに他の実施形態において用いられるステップを例示するフローチャートである。ステップ８０１において、問合せプロセスは、ユーザが１つまたはそれ以上の入力モードを用いることによって自然語問合せを入力することによって開始する。再び、これらの入力、即ち、相互作用モードは、電話、パーソナルコンピュータ、マイク、ウェブ、マウス、キーボード等、またはその任意の所望の組み合わせを用いる、テキスト、ボイス、ポイントおよびクリック（例えば、マウス）等を含み得る。次に、ステップ８０２では、システム２００（図２）は、情報視覚化技術についての知識を用いて、完全なデータベース照会のセットが形成され得るかどうかを決定し、形成され得ると決定した場合には、１つまたはそれ以上のデータベース照会を特定して形成することによって自然語問合せを１つまたはそれ以上のデータベース照会に変換する。セットが１つの完全なデータベース照会のみを含む場合、その照会は明白である。これは、ステップ５０２に関連して上述したのと実質的に同様に実現される。ステップ８０３は、少なくとも１つのデータベース照会が特定されたかどうかをテストして決定する。ステップ８０３のテスト結果がＮＯである場合、ステップ８０４において、ユーザは、１つまたはそれ以上の提示モードを用いることによって照会がサポートされていないことを知らされる。ステップ８０３におけるテスト結果がＹＥＳである場合には、少なくとも１つのデータベース照会が特定され、ステップ８０５は、適切なデータベースに照会する。ステップ８０６において、システム２００は、情報視覚化技術についての知識を用いて、ユーザに与えられる情報を形成する。次に、ステップ８０７において、システム２００は、情報視覚化技術についての知識を用いて、１つまたはそれ以上のフォーマットを決定し、１つまたはそれ以上の提示モードを用いて、決定された１つまたはそれ以上のフォーマットにおいて、形成された情報を提示する。提示モードには、少なくともテキスト、ボイス、電話、ウェブ、グラフィクス、他の視覚手段等、および／またはその任意の所望の組み合わせが含まれ得る。再び、フォーマットには、テキスト、グラフィクス、画面ビュー（例えば、チャート）等が含まれ得ることにも留意されたい。再び、提示フォーマットは、予め決定され得るか、またはフォーマットのセットから動的に決定され得ることにも留意されたい。
【００５６】
図９は、図２のシステムアーキテクチャ２００によって実現される本発明の実施形態において用いられるステップを例示するフローチャートである。ステップ９０１において、問合せプロセスは、ユーザが自然語問合せを入力することによって開始する。次に、ステップ９０２では、探索中のデータについての知識、および情報視覚化技術についての知識を用いて、完全なデータベース照会のセットが形成され得るかどうかを決定し、形成され得ると決定した場合には、１つまたはそれ以上のデータベース照会を特定して形成することによって自然語問合せを１つまたはそれ以上のデータベース照会に変換する。セットが１つの完全なデータベース照会のみを含む場合、その照会は明白であることに留意されたい。情報視覚化技術についての知識、および探索中のデータについての知識は、反応制約グラフの形態でＳＩＳＬサービス論理２０３内で符号化される。選択ノードは、ユーザが利用可能な代替を示し、制約ノードは、必要な情報セットを示す。リーフノードは、データベース照会および対応する情報視覚化ビューを含む。ユーザによって入力された自然語は、２０２からのＳＩＳＬグラマに照会され、適切な事象はＳＩＳＬサービス論理２０３に送信される。反応制約グラフは、これらの事象に従って横断される。選択ノードまたは制約ノードにおいて制御が停止すると、さらなる情報がユーザから必要であると決定され、ユーザは、以下に示すように、それに応じて答えを促される。あるいは、制御がリーフノードで停止すると、これは、ユーザによって与えられる情報が完全かつ明白なデータベース照会（リーフノードにおいて記載される）のセットに変換され得ることを示す。リーフノードはまた、どの種類の情報視覚化ビューが表示されるべきかを示す。ステップ９０３は、少なくとも１つのデータベース照会が特定されたかどうかをテストして決定する。ステップ９０３でのテスト結果がＮＯである場合には、ステップ９０４において、ユーザは、照会がサポートされていないことを知らされる。ステップ９０３におけるテスト結果がＹＥＳである場合には、少なくとも１つのデータベース照会が特定され、ステップ９０５は、適切なデータベースに照会する。ステップ９０６において、システム２００は、探索中のデータについてのドメイン知識および情報視覚化技術についての知識を用いて、ユーザに与えられる情報を形成する。次に、ステップ９０７において、システム２００は、探索中のデータについての知識および情報視覚化技術についての知識を用いて、１つまたはそれ以上のフォーマットを決定し、１つまたはそれ以上の提示モードを用いて、決定された１つまたはそれ以上のフォーマットにおいて、形成された情報をユーザに提示する。提示フォーマットは、予め決定され得るか、またはフォーマットのセットから動的に決定され得ることに留意されたい。再び、フォーマットには、テキスト、グラフィクス、画面ビュー（例えば、チャート）等が含まれ得ることにも留意されたい。さらに、提示モードには、少なくともテキスト、ボイス、電話、ウェブ、グラフィクス、他の視覚手段等、および／またはその任意の所望の組み合わせが含まれ得る。
【００５７】
図１０は、図２のシステムアーキテクチャ２００によって実現される本発明の他の実施形態において用いられるステップを例示するフローチャートである。ステップ１００１において、問合せプロセスは、ユーザが自然語問合せを入力することによって開始する。次に、ステップ１００２では、探索中のデータについての知識、および情報視覚化技術についての知識を用いて、完全なデータベース照会のセットが形成され得るかどうかを決定し、形成され得ると決定した場合には、１つまたはそれ以上のデータベース照会を特定して形成することによって自然語問合せを１つまたはそれ以上のデータベース照会に変換する。セットが１つの完全なデータベース照会のみを含む場合、その照会は明白であることに留意されたい。これは、ステップ９０２に関連して上述したのと実質的に同様に実現される。ステップ１００３は、少なくとも１つのデータベース照会が特定されたかどうかをテストして決定する。ステップ１００３のテスト結果がＮＯである場合、ステップ１００４において、システム２００は、探索中のデータについての知識および情報視覚化技術についての知識、ならびにさらなる情報および／または訂正された情報を含むダイアログについてのコンテクスト情報を用いて、ユーザにさらなる情報を要求する。ダイアログについてのコンテクスト情報は、反応制約グラフの現在の状態によって暗黙のうちの提示される。これはまた、サービスモニタ１４０２（図１４）において事象優先度の形態で符号化される。次に、ステップ１００５において、ユーザは、さらなる情報を提供し、および／または前に提供された情報を訂正する。ステップ１００６において、システム２００（図２）は、探索中のデータについての知識および情報視覚化技術についての知識、ならびにさらなる情報および／または訂正された情報を含むダイアログについてのコンテクスト情報を用いて、完全なデータベース照会のセットが形成され得るかどうかを決定し、形成され得ると決定した場合には、１つまたはそれ以上のデータベース照会を特定して形成することによって自然語問合せを１つまたはそれ以上のデータベース照会に変換する。セットが１つの完全なデータベース照会のみを含む場合、その照会は明白であることに留意されたい。再び、これは、ステップ９０２に関連して上述したのと実質的に同じように実現される。但し、この場合、ダイアログについてのコンテクスト情報が追加される。その後、制御はステップ１００３に戻され、ステップ１００３から１００６は、ステップ１００３がＹＥＳの結果を出すまで繰り返される。ステップ１００３でＹＥＳの結果が出て、それによって、少なくとも１つのデータベース照会が特定されたことが示されると、ステップ１００７は適切なデータベースに照会する。ステップ１００８では、システム２００は、探索中のデータについての知識および情報視覚化技術についての知識を用いて、ユーザに与えられる情報を形成する。次に、ステップ１００９において、システム２００は、探索中のデータについての知識および情報視覚化技術についての知識を用いて１つまたはそれ以上のフォーマットを決定し、１つまたはそれ以上の提示モードを用いて、決定された１つまたはそれ以上のフォーマットにおいて、形成された情報をユーザに提示する。提示フォーマットは、予め決定され得るか、またはフォーマットのセットから動的に決定され得ることに留意されたい。再び、フォーマットには、テキスト、グラフィクス、画面ビュー（例えば、チャート）等が含まれ得ることにも留意されたい。さらに、提示モードには、少なくともテキスト、ボイス、電話、ウェブ、グラフィクス、他の視覚手段等、および／またはその任意の所望の組み合わせが含まれ得る。
【００５８】
図１１は、図２のシステムアーキテクチャ２００によって実現される本発明の他の実施形態において用いられるステップを例示するフローチャートである。ステップ１１０１において、問合せプロセスは、ユーザが１つまたはそれ以上の入力モードを用いて自然語問合せを入力することによって開始する。再び、これらの入力、即ち、相互作用モードは、電話、パーソナルコンピュータ、マイク、ウェブ、マウス、キーボード等、またはその任意の所望の組み合わせを用いる、テキスト、ボイス、ポイントおよびクリック（例えば、マウス）等を含み得る。次に、ステップ１１０２では、システム２００（図２）は、探索中のデータについての知識および情報視覚化技術についての知識を用いて、完全なデータベース照会のセットが形成され得るかどうかを決定し、形成され得ると決定した場合には、１つまたはそれ以上のデータベース照会を特定して形成することによって自然語問合せを１つまたはそれ以上のデータベース照会に変換する。セットが１つの完全なデータベース照会のみを含む場合、その照会は明白であることに留意されたい。これは、ステップ９０２に関連して上述したのと実質的に同様に実現される。ステップ１１０３は、少なくとも１つのデータベース照会が特定されたかどうかをテストして決定する。ステップ１１０３のテスト結果がＮＯである場合、ステップ１１０４において、システム２００は、探索中のデータについての知識および情報視覚化技術についての知識、ならびにさらなる情報および／または訂正された情報を含むダイアログについてのコンテクスト情報を用いて、ユーザにさらなる情報を要求する。ダイアログについてのコンテクスト情報は、反応制約グラフの現在の状態によって暗黙のうちの提示される。これはまた、サービスモニタ１４０２（図１４）において事象優先度の形態で符号化される。ステップ１１０５において、システム２００は、複数の所定モードのうちの１つの所定モードまたはその組み合わせを用いることによってユーザを促す。ステップ１１０５からのプロンプトに応答して、ユーザは、１つまたはそれ以上の入力モードを用いることによって、ステップ１１０６を介してさらなる情報を提供し、および／または予め提供された情報を訂正する。ステップ１１０７において、システム２００は、探索中のデータについての知識および情報視覚化技術についての知識、ならびにさらなる情報および／または訂正された情報を含むダイアログについてのコンテクスト情報を用いて、完全なデータベース照会のセットが形成され得るかどうかを決定し、形成され得ると決定した場合には、１つまたはそれ以上のデータベース照会を特定して形成することによって自然語問合せを１つまたはそれ以上のデータベース照会に変換する。セットが１つの完全なデータベース照会のみを含む場合、その照会は明白であることに留意されたい。再び、これは、ステップ９０２に関連して上述したのと実質的に同様に実現される。但し、この場合、ダイアログについてのコンテクスト情報が追加される。その後、制御はステップ１１０３に戻され、ステップ１１０３から１１０７は、ステップ１１０３がＹＥＳの結果を出すまで繰り返される。ステップ１１０３でＹＥＳの結果が出て、それによって、少なくとも１つのデータベース照会が特定されたことが示されると、ステップ１１０８は適切なデータベースに照会する。ステップ１１０９では、システム２００は、データおよび情報視覚化技術についてのドメイン知識を用いて、ユーザに与えられる情報を形成する。次に、ステップ１１１０において、システム２００は、検索中のデータについての知識および情報視覚化技術についての知識を用いて１つまたはそれ以上のフォーマットを決定し、１つまたはそれ以上の提示モードを用いて、決定された１つまたはそれ以上のフォーマットにおいて、形成された情報をユーザに提示する。これらの提示モードには、少なくともテキスト、ボイス、電話、ウェブ、グラフィクス、他の視覚手段等、および／またはその任意の所望の組み合わせが含まれ得る。再び、フォーマットには、テキスト、グラフィクス、画面ビュー（例えば、チャート）等が含まれ得ることにも留意されたい。また、提示フォーマットは、予め決定され得るか、またはフォーマットのセットから動的に決定され得ることに留意されたい。
【００５９】
図１２は、図２のシステムアーキテクチャ２００によって実現される本発明のさらに他の実施形態において用いられるステップを例示するフローチャートである。ステップ１２０１において、問合せプロセスは、ユーザが１つまたはそれ以上の入力モードを用いて自然語問合せを入力することによって開始する。再び、これらの入力、即ち、相互作用モードは、電話、パーソナルコンピュータ、マイク、ウェブ、マウス、キーボード等、またはその任意の所望の組み合わせを用いる、テキスト、ボイス、ポイントおよびクリック（例えば、マウス）等を含み得る。次に、ステップ１２０２では、システム２００（図２）は、探索中のデータについての知識および情報視覚化技術についての知識を用いて、完全なデータベース照会のセットが形成され得るかどうかを決定し、形成され得ると決定した場合には、１つまたはそれ以上のデータベース照会を特定して形成することによって自然語問合せを１つまたはそれ以上のデータベース照会に変換する。セットが１つの完全なデータベース照会のみを含む場合、その照会は明白であることに留意されたい。これは、ステップ９０２に関連して上述したのと実質的に同様に実現される。ステップ１２０３は、完全かつ明白な照会が形成され得るかどうかのステップ１２０２の決定をテストする。ステップ１２０３のテスト結果がＮＯである場合、ステップ１２０４において、ユーザは、１つまたはそれ以上の提示モードを用いて、照会がサポートされていないことを知らされる。ステップ１２０３におけるテスト結果がＹＥＳである場合には、少なくとも１つのデータベース照会が特定され、ステップ１２０５は、適切なデータベースに照会する。ステップ１２０６において、システム２００は、探索中のデータについての知識および情報視覚化技術についての知識を用いて、ユーザに与えられる情報を形成する。次に、ステップ１２０７において、システム２００は、探索中のデータについての知識および情報視覚化技術についての知識を用いて、１つまたはそれ以上のフォーマットを決定し、１つまたはそれ以上の提示モードを用いて、決定された１つまたはそれ以上のフォーマットにおいて、形成された情報をユーザに提示する。提示モードには、少なくともテキスト、ボイス、電話、ウェブ、グラフィクス、他の視覚手段等、および／またはその任意の所望の組み合わせが含まれ得る。再び、フォーマットには、テキスト、グラフィクス、画面ビュー（例えば、チャート）等が含まれ得ることにも留意されたい。提示フォーマットは、予め決定され得るか、またはフォーマットのセットから動的に決定され得ることにも留意されたい。
【００６０】
図１３は、本発明が有利に用いられ得るインタラクティブシステムの詳細を簡単なブロック図の形式で示す。図１３に示す配置は本発明の応用の一例に過ぎないことに留意されたい。事実、複数の異なるユーザインターフェースおよび／または１つもしくはそれ以上の同一のユーザインターフェースが所望に応じて用いられ得る。
【００６１】
具体的には、図１３は、ＳＩＳＬ（いくつかのインターフェース、単一の論理）サービスユニット１３０１、自然語を理解する自動音声認識を含み、所望に応じて、インターネットリンク１３０３を介してＳＩＳＬサービスユニット１３０１にインターフェースで接続される、顧客および／またはプロバイダインターフェースとして用いられる家庭／オフィス用コンピュータ１３０２、例えば、タッチトーン（即ち、多重周波）信号方式を有する電話ネットワーク１３０５を介してＳＩＳＬサービスユニット１３０１にインターフェースで接続される顧客および／またはプロバイダインターフェースとして用いられる電話１３０４、自然語を理解する自動音声認識を含み、ローカルエリアネットワーク（ＬＡＮ）を介してＳＩＳＬサービスユニット１３０１にインターフェースで接続される顧客および／またはプロバイダインターフェースとして用いられるコンピュータ１３０６を示す。ＳＩＳＬの主な利点は、サービスに対するすべてのユーザインターフェースが同じ単一のサービス論理を共有することである。ＳＩＳＬは、サービス論理と、限定はされないが、Ｊａｖａアプレット、ＨＴＭＬページ、音声に基づいた自然語ダイアログ、および電話に基づいたボイスアクセスを含む様々なユーザインターフェースのためのソフトウェアとの間を明確に分離する。この例では、ＳＩＳＬは、ＪＡＶＡプログラミング言語を用いて実現される。
【００６２】
初めに、本発明の実施形態を含む柔軟なインタラクティブサービスの実現において用いられる原理のいくつかを記載するのが最良であると思われる。説明を簡単かつ明瞭にするため、これらの原理を、本発明を用いるいわゆる随時預け払いバンキングサービスのコンテクストにおいて提示する。随時預け払いは、インタラクティブバンキングサービスである。このサービスはログイン保護されており、顧客は、機能にアクセスするために、識別子（ログイン）およびＰＩＮ（即ち、個人識別番号（パスワード））を入力することによって自らを認証する。顧客は、多くの口座をもっているかも知れないので、大半の機能では、顧客は、関連する口座を選択するよう要求される。一旦認証されると、顧客は、以下のことを行い得る。
預金する。
引き出す。サービスは、顧客が口座に十分なお金をもっていることを確認し、特定の金額が引き出される。
口座間で資金を転送する。サービスは、顧客にソース口座およびターゲット口座、ならびに転送金額を選択するよう要求し、（１）顧客がソース口座に十分なお金をもっている、および（２）転送が２つの口座間で可能であるならば転送が行われる。
口座の残高を得る。すべての提示された処理に関して残高を表示する。
口座の処理を見る。選択された口座の処理を表示する。
最後の処理を見る。顧客が行った最後のアクションを表示する。
【００６３】
随時預け支払い機の転送資格としては、３つの事象、即ち、ソース口座（ｓｒｃ）、ターゲット口座（ｔｇｔ）、およびドル金額（ａｍｔ）の収集が要求される。転送が行われ得る前に、これらの入力事象が満足しなければならない以下の５つの制約がある。
ｃ１：ｓｒｃは、有効な口座でなければならない。
ｃ２：ｔｇｔは、有効な口座でなければならない。
ｃ３：ａｍｔは、ゼロより大きくなければならない。
ｃ４：ａｍｔは、ｓｒｃの残高より少ないか、同等でなければならない。
ｃ５：銀行は、ｓｒｃからｔｇｔへの転送を可能にしなければならない。
【００６４】
サービスは、制約が破られたかどうかを即座にチェックしなければならないので、３つの事象のサブセットのみが存在する場合には反応する準備ができていなければならない。次いでサービスは、残りの事象を要求しなければならない。
【００６５】
現在、多数の様々なユーザインターフェースを有するインタラクティブサービスの設計および実現に関連するいくつかの基本的な原理が考えられている。これらの原理は、口語の自然語に基づいたインターフェースを含む多数のインターフェースの存在下で特に重要である。
より少ないオーダ＝より大きな自由
【００６６】
転送資格のソース口座、ターゲット口座、およびドル金額は、任意の順序で収集され得る独立した事象でなければならず、これら３つの事象はすべて転送を行うために必要である。明示的な独立事象および非独立事象を形成することによって、サービスの挙動に影響を与えずにどの事象が整理し直されるかが明白になる。これは、サービス規格の５つの原理への方向を指し示す。
原理１：事象に対する制約のセットとしてサービス論理を特定し、サービスが正しく機能するために絶対に必要である場合にのみ、２つの事象間に制約を導入する。即ち、サービス論理は、異なる順序で独立した入力事象を受け取らなければならない。
エラーのみを除去する。
【００６７】
大抵の場合、サービスは、ユーザ入力についてのエラー条件に対して即座に応答することが望まれる。入力事象に対する制約はこれらの事象の任意のサブセットを指し得るため、サービス論理が事象の任意のサブセットを随時受け取ることが可能でなければならいことが望まれる。
原理２：サービス論理は、不完全な入力（即ち、可能な事象全体のサブセット）を受け取らなければならない。
撤回する！
【００６８】
残念なことに、大抵の場合、人間は一度決めたことを変える、および／または間違いをする。可能なときはいつでも、サービスは、情報を訂正するか、または処理から手を引く能力を提供して、人間のこれらの欠点を補わなければならない。これは第３の原理につながる。
原理３：サービス論理は、ユーザが後退して、予め出された情報を訂正または更新することを随時可能にしなければならない。
密接に関連した原理は、
原理４：サービス論理は、ユーザがサービスの前の時点に後退することを可能にしなければならない。
準備できているかどうか？
【００６９】
上記の原理に従うサービスは、線形のユーザ相互作用から一般化され、所定の時点で多数の相互作用点が潜在的にイネーブルされ得るようにする。この情報は、サービスの現在の制御点の抽出として作用し、異なるユーザインターフェースによって異なる様式で取り扱うことが可能である。例えば、自動音声認識インターフェースでは、現在イネーブルになっている事象についての情報は、以下の２つの方法でユーザインターフェースによって用いられる。
ユーザに適切に情報を要求し、それによって、視覚的な合図の損失を補償すること。
ユーザによって提供される情報を効果的にパーズすること。
【００７０】
ユーザインターフェースは、サービスの現在イネーブルにされているすべての事象に応答する必要はない。従って、異なるユーザインターフェースは、根底にあるサービス論理における制御点が、イネーブルにされている事象の現在のセットによって示されているように、同じであったとしても、ユーザに異なる照会を形成し得る。従って、ユーザインターフェースとサービス論理との間で発明者が求めている結合解除は、サービス規格の最後の原理への方向を指し示す。
原理５：サービスの任意の点において、サービス論理は、現在イネーブルにされているすべての事象、ユーザプロンプト、ヘルプ、およびサービスの前の点に戻る方法をユーザインターフェースに自動的に報告しなければならない。
【００７１】
ユーザインターフェースは、ユーザインターフェースとサービス論理との間の２方向情報フローを反映するＳＩＳＬアーキテクチャに対する以下の２つの主な責任を有する。
サービスモニタを介してサービス論理から受け取った事象に基づいて、ユーザがヘルプをリクエストする場合、ユーザに適切な情報および応答を提供するよう要求すること。
ユーザから情報を収集し、その情報をサービス論理に送信される事象へとサービスモニタを介して変換すること。
【００７２】
事実、これらの機能を果たす任意のユーザインターフェース（ＵＩ）は、ＳＩＳＬサービス論理に関連して用いられ得る。さらに、ＳＩＳＬは、ウェブに基づいた、アプレットに基づいた、自動音声認識に基づいた、および電話ボイスに基づいたインターフェースを設計および実現するための都合のよいフレームワークを提供する。このようなユーザインターフェースを実現するために、ＵＩ設計者は、プロンプトおよびヘルプ機構に対応する２つの機能を特定するだけでよい。自動音声認識インターフェースでは、音声グラマのセット（即ち、音声認識エンジンに口語入力を効率的かつ効果的に認識させる音声認識エンジンへの入力）はまた、どのグラマをイネーブルにするかを特定する第３の機能と共に、要求される。
【００７３】
要求される機能は、以下の通りである。
ユーザにプロンプトとして与えられるストリングを生成するプロンプト機能。例えば、疑似コード形式で以下に示される。ＳＩＳＬ基礎構造によって、自動音声認識に基づいたインターフェースはプロンプトストリングを自動的に話す。ウェブに基づいたインターフェースは、可能な処理選択に対応する無線ボタンだけでなく、プロンプトストリングを自動的に表示する。他のプロンプト事象では、テキストフィールドは自動的に表示され、提示ボタンは、ユーザがサービスの初期の点に戻ることを可能にするイネーブルにされた事象に対して自動的に表示される。
ユーザにプロンプトとして与えられるストリングを生成するヘルプ機能。例えば、疑似コード形式で以下に記載される。
グラマ規則の正しいセットをイネーブルにするグラマ機能。この機能は、自動音声認識に基づいたインターフェースに対してのみ必要である。例えば、疑似コードの形式で以下に記載される。
【００７４】
随時預け支払いバンキングサービスに対する自動音声認識に基づいたインターフェース、ウェブに基づいたインターフェース、および電話に基づいたボイスインターフェースによって共有される、疑似コード形式のプロンプトおよびヘルプ機能の部分は示される通りである。プロンプトおよびヘルプ機能疑似コードは明白であり、以下の通りである。
【００７５】
0003779162.tif 000005
0003779162.tif 000006
【００７６】
自動音声認識エンジンが、ユーザからの口語入力をパーズするためのグラマ規則の部分の疑似コードは明白であり、以下の通りである。
【００７７】
0003779162.tif 000007
0003779162.tif 000008
【００７８】
自動音声認識に基づいたインターフェースおよび電話に基づいたボイスインターフェースによって共有される関連のグラマ機能の部分の疑似コードは、明白であり、以下の通りである。
【００７９】
0003779162.tif 000009
【００８０】
これらの機能およびグラマから、ＳＩＳＬ基礎構造は、収集および事象変換機構を自動的に調整し、ユーザインターフェースと、サービス論理およびサービスモニタとを統合する。自動音声認識に基づいたインターフェースでは、ＳＩＳＬ基礎構造は、ＪＡＶＡ音声ＡＰＩ（適用業務プログラム・インターフェース）に基づいてデスクトップインターフェースを自動的に生成する。電話に基づいたサービスへのボイスアクセスを可能にするために、ＳＩＳＬは、ＶｏｉｃｅＸＭＬページを自動的に生成し、これによって、電話通信プラットフォーム上で実行されるボイスダイアログが特定される。ウェブに基づいたインターフェースでは、ＳＩＳＬ基礎構造は、ＨＴＭＬ（Ｈｙｐｅｒｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｕａｇｅ）ページを自動的に生成する。ＳＩＳＬが、ＵＩ設計者がインターフェースのルックおよび感触をカスタマイズするための機構を提供することに留意されたい。
【００８１】
図１４は、図１３の実施形態で用いられるＳＩＳＬ（いくつかのインターフェース、単一の論理）アーキテクチャの詳細を簡単なブロック図で示す。ＳＩＳＬアーキテクチャは、事象通信プロトコルと共に、サービス論理１４０１とユーザインターフェース１４０４との間にモジュール性を提供する。特に、事象通信プロトコルの２つの特徴によって、サービス論理１４０１は、個々のユーザインターフェース１４０４の詳細に関する知識がなくても完全に機能することができる。これらの特徴とは、（１）事象が、サービスモニタ１４０２を介してサービス論理１４０１からユーザインターフェース１４０４にマルチキャストされ、その結果、サービス論理１４０１が、これらの事象の行き先を知る必要がないこと、および（２）ユーザインターフェース１４０４からの事象の源が記録されず、その結果、サービス論理１４０１は、いずれの１つまたはそれ以上のユーザインターフェース１４０４が事象を送信したかを知らないことである。サービスモニタ１４０２は、この通信プロトコルを維持するための責任がある。このモジュール性によって、サービスプロバイダは、交換可能なユーザインターフェース１４０４を提供するか、または新しいインターフェースをサービス論理およびデータの単一の一定の源に加えることができる。
【００８２】
具体的には、図１４は、サービス論理ユニット１４０１、サービスモニタ１４０２、およびユーザインターフェース１４０４−１から１４０４−Ｎを示す。根底にあるＳＩＳＬの主な原理は、サービスに対するすべてのユーザインターフェース１４０４が単一のサービス論理１４０１を共有することである。サービス論理１４０１およびその多数のユーザインターフェース１４０４との間のすべての通信は、サービスモニタ１４０２を介して事象を通して行われる。サービス論理１４０１からの事象は、１４０３を介してサービスモニタ１４０２に、次に、イネーブルにされた事象のセットとして１４０５を介してユーザインターフェース１４０４に伝えられる。サービス（例えば、随時預け払いバンキングサービス）の開始時には、各ユーザインターフェース１４０４はサービスモニタ１４０２に登録され、どの事象を受け取るのに関心があるかを示す。ユーザからの情報を収集した後、ユーザインターフェース１４０４は、事象を双方向リンク１４０５を介してサービスモニタ１４０２に送信し、サービスモニタ１４０２は、これらの事象の源を記録しない。サービスモニタ１４０２は、事象を一度に１つずつ１４０３を介してサービス論理１４０１に渡す。サービスモニタ１４０２に対して有利に用いられ得るサービスモニタの詳細については、１９９９年８月３０日付けで提出され、本願の譲受人に譲渡された米国特許出願第０９／３８６、０９３号に記載されている。
【００８３】
事象通信は、サービス論理１４０１およびユーザインターフェース１４０４の結合解除をサポートし、サービスプロバイダに、交換可能なユーザインターフェース１４０４を提供させるか、またはサービス論理１４０１およびデータの単一の一定の源に新しいインターフェースを加えさせる。
【００８４】
各相互作用において、ＳＩＳＬ基礎構造は、サービス論理１４０１において現在イネーブルにされている事象に対応する事象のセットを、サービス論理１４０１からサービスモニタ１４０２に１４０３を介して自動的に送信する。３種類の事象が存在する。即ち、プロンプト事象、アップ事象、および通知事象である。プロンプト事象は、どの情報をユーザと通信するか、およびサービスがどの情報を受け取る準備ができているかをユーザインターフェースに示す。３種類のプロンプト事象がある。
ｐｒｏｍｐｔ ｃｈｏｉｃｅ事象は、サービス論理１４０１において現在イネーブルにされている分離選択である。例えば、ユーザが首尾よく随時預け払いバンキングサービスにログインした後、異なる処理タイプ間での選択が可能になる。サービス論理１４０１は、１４０３を介して、ｐｒｏｍｐｔ ｃｈｏｉｃｅ ｄｅｐｏｓｉｔ事象、ｐｒｏｍｐｔ ｃｈｏｉｃｅ ｗｉｔｈｄｒａｗａｌ事象、およびｐｒｏｍｐｔ ｃｈｏｉｃｅ ｔｒａｎｓｆｅｒ事象などをサービスモニタ１４０２に送信する。
ｐｒｏｍｐｔ ｒｅｑ事象は、サービス論理１４０１によって現在要求されている事象である。例えば、ユーザが転送処理を行うことを選択したと想定しよう。随時預け払い機は、ユーザにソース口座、転送口座、および金額を入力するよう要求し、ｐｒｏｍｐｔ ｒｅｑ ｓｒｃ、ｐｒｏｍｐｔ ｒｅｑ ｔｇｔ、およびｐｒｏｍｐｔ ｒｅｑ ａｍｔ事象を１４０３を介してサービスモニタ１４０２に送信する。
ｐｒｏｍｐｔ ｏｐｔ事象は、ユーザが前に与えた情報を訂正し得る、サービス論理１４０１においてイネーブルにされた事象である。例えば、ユーザが転送をおこなっており、ソース口座およびターゲット口座をすでに提供しているが、金額を提供していないと想定しよう。サービス論理１４０１は、ｐｒｏｍｐｔ ｏｐｔ ｓｒｃ、ｐｒｏｍｐｔ ｏｐｔ ｔｇｔ、およびｐｒｏｍｐｔ ｒｅｑ ａｍｔ事象を１４０３を介してサービスモニタ１４０２に送信する。これは、ユーザが以前に与えたソースおよびターゲット口座を新しい情報で上書きし得ることを示す。
【００８５】
アップ事象は、ユーザが戻り得るサービス論理４０１における前の点に対応する。例えば、サービス論理１４０１は、ｕｐ ＭａｉｎＭｅｎｕ事象を１４０３を介してサービスモニタ１４０２に送信する。これによって、ユーザは、すべての処理を中断し、メインメニュに戻る。
【００８６】
通知事象は、ユーザインターフェース１４０４が、例えば、処理が首尾よく完了したか、またはユーザによって提供された情報が正しくなかったまたは首尾一貫していなかったことを、ユーザに与える単なる通知である。
【００８７】
図１５は、図１４のＳＩＳＬアーキテクチャを実現するためのステップを例示するフローチャートである。具体的には、実現プロセスは、ステップ１５０１を介して開始される。次に、ステップ１５０２において、ＳＩＳＬサービス論理はＳＩＳＬに書き込まれる。ステップ１５０３において、サービスモニタ１４０２が書かれる。その後、複数のユーザインターフェースＵＩ−１からＵＩ−Ｎは、ステップ１５０４−１から１５０４−Ｎにおいて展開される。
【００８８】
図１６は、反応制約グラフの実行プロセスにおけるステップを例示するフローチャートである。具体的には、ステップ１６０１において、ルートノード（ｎ）を得る。次に、ステップ１６０２において、得られたノードがデータに基づいた選択ノードであるかどうかをテストして決定する。ステップ１６０２におけるテスト結果がＮＯである場合には、ステップ１６０３において、得られたノードが事象に基づいた選択ノードであるかどうかをテストして決定する。ステップ１６０３におけるテスト結果がＮＯである場合には、ステップ１６０４において、得られたノードがアクションノードであるかどうかをテストして決定する。ステップ１６０４におけるテスト結果がＹＥＳである場合には、ステップ１６０５において、アクションを実行し、ノード「ｎ」に関連した通知を行い、現在得られているノードから決定される「ｎ＝子ノード」を設定する。ステップ１６０４におけるテスト結果がＮＯである場合には、ステップ１６０６において、新しい子ノードが決定されるまで、以下に記載するように、図１５の制約フローチャートのプロセスを実行し、決定された新しい子ノードに「ｎ」を割り当てる。ステップ１６０２に戻り、テスト結果がＹＥＳである場合には、ノードはデータに基づいており、ステップ１６０７において、特有のａｒｃ「ａ」を、前提条件がＴＲＵＥであるノード「ｎ」から選択する。次に、ステップ１６０８において、アクションを実行し、ａｒｃ「ａ」に関連した通知を行う。その後、ステップ１６０８において、「ａ」の「ｎ＝子」ノードを設定する。ステップ１６０３に戻り、テスト結果がＹＥＳである場合には、ノードは事象に基づいており、ステップ１６０９において、ノード「ｎ」からのａｒｃ「ａ」のラベル、またはノード「ｎ」の先祖ノードのアップラベルである任意の事象「ｅ」を待つ。次に、ステップ１６１０において、事象「ｅ」がノード「ｎ」の先祖ノードのアップラベルであるかどうかをテストして決定する。ステップ１６１０におけるテスト結果がＹＥＳである場合には、ステップ１６１１において、制御は、先祖ノードに転送される。ステップ１６１０におけるテスト結果がＮＯである場合には、制御はステップ１６０８に渡され、上記のように行われる。反応制約については以下にさらに議論する。
【００８９】
図１７Ａおよび図１７Ｂ（Ａ−Ａ、Ｂ−Ｂ、Ｃ−Ｃ、およびＤ−Ｄへと続く）は、制約ノードの実行プロセスにおけるステップを例示するフローチャートである。具体的には、ステップ１７０１において、入力アクションを実行する。次に、ステップ１７０２において、関連する制約において発生する各事象について１つのエントリとなる（ＦＡＬＳＥに対する値およびＥＭＰＴＹに対するデータ）ようにテーブルを初期化する。その後、ステップ１７０３において、値がテーブルにおいてＦＡＬＳＥに設定されるすべての事象「ｅ」に対してｐｒｏｍｐｔ ｒｅｑをサービスモニタ１４０２に送信し、値がテーブルにおいてＴＲＵＥになるすべての事象「ｅ」に対してｐｒｏｍｐｔ ｏｐｔをサービスモニタ１４０２に送信する。ステップ１７０４において、任意の関連する制約において発生するか、または先祖ノードのアップラベルである事象「ｅ」を待つ。次に、ステップ１７０５において、事象「ｅ」が先祖ノードのアップラベルであるかどうかをテストして決定する。ステップ１７０５におけるテスト結果がＹＥＳである場合には、制御をステップ１７０６を介して先祖ノードに転送する。ステップ１７０５におけるテスト結果がＮＯである場合には、ステップ１７０７において、事象「ｅ」をテーブルにおいてＴＲＵＥに設定し、データを「ｅ」のデータに割り当てる。次に、ステップ１７０８において、任意の制約がイネーブルにされるかどうかをテストして決定する。ステップ１７０８におけるテスト結果がＹＥＳである場合には、ステップ１７０９において、次にイネーブルにされる制約を評価する。次に、ステップ１７１０において、評価した制約が満たされているかどうかをテストして決定する。ステップ１７１０におけるテスト結果がＮＯである場合には、制約は満たされておらず、ステップ１７１１において、違反アクションを実行し、制約違反を通知する。ステップ１７１２において、事象「ｅ」をテーブルにおいてＦＡＬＳＥに設定し、「ｅ」のデータを解除する。その後、ステップ１７１３において、子ノードが特定されるかどうかをテストして決定する。ステップ１７１３におけるテスト結果がＹＥＳである場合には、ステップ１７１４において、制御を特定された子ノードに転送する。ステップ１７０８に戻り、テスト結果がＮＯである場合には、イネーブルされる残りの制約はなく、ステップ１７１５において、満足のアクションを実行し、すべての満たされた制約を通知する。次に、ステップ１７１６において、すべての制約が満たされたかどうかをテストして決定する。ステップ１７１６におけるテスト結果がＹＥＳである場合、ステップ１７１７において、子ノードを決定し、次に、制御をその子ノードに転送する。ステップ１７１６におけるテスト結果がＮＯである場合には、制御をステップ１７０３に戻し、ステップ１７０６、１７１４、または１７１７が到達されるまで、ステップ１７０３から１７１７の適切なステップを繰り返す。ステップ１７１０に戻り、ＹＥＳの結果が得られると、制御をステップ１７０８に戻し、ステップ１７０８においてＮＯの結果が得られるまで、またはステップ１７１０においてＮＯの結果が得られるまで、ステップ１７０８から１７１０を繰り返���。次に、ＮＯの結果を出すステップ１７０８または１７１０に関して上述したように、プロセスを繰り返す。ステップ１７１３に戻り、テスト結果がＮＯである場合には、子ノードを特定せず、制御をステップ１７０３に戻す。その後、ステップ１７０３から１７１７の適切なステップを、ステップ１７０６、１７１４、または１７１７のいずれかが到達されるまで繰り返す。
【００９０】
ＳＩＳＬアーキテクチャのさらなる詳細については、１９９９年８月３０日付けで提出され、本願の譲受人に譲渡された米国特許出願第０９／３８６、０９４号に記載されている。
【００９１】
上記の実施形態は、言うまでもなく、本発明の原理を例示しているに過ぎない。事実、本発明の精神および範囲から逸脱せずに当業者によって多数の他の方法または装置が考えられ得る。
【００９２】
【発明の効果】
上記のように、本発明によると、ユーザは、データにアクセスし、情報の提示を作成するために特定の機械に集中せずに、インターフェースによってサポートされる質問に答えることに集中することが可能になる。
【図面の簡単な説明】
【図１】本発明が実施され得るパーソナルコンピュータまたはワークステーションの詳細を示す簡単なブロック図。
【図２】本発明の実施形態が実施され得るシステムアーキテクチャの詳細を示す簡単なブロック図。
【図３】データ独立インターフェースの部分のための、図２のＳＩＳＬサービス論理を示す反応制約グラフ。
【図４】組織的データへの自然語インターフェースの部分のための、図２のＳＩＳＬサービス論理を示す反応制約グラフ。
【図５】本発明の実施形態において用いられるステップを示すフローチャート。
【図６】本発明の他の実施形態において用いられるステップを示すフローチャート。
【図７】本発明のさらに他の実施形態において用いられるステップを示すフローチャート。
【図８】本発明のさらに他の実施形態において用いられるステップを示すフローチャート。
【図９】本発明の規定される実施形態において用いられるステップを示すフローチャート。
【図１０】本発明の他の規定される実施形態において用いられるステップを示すフローチャート。
【図１１】本発明のさらに他の規定される実施形態において用いられるステップを示すフローチャート。
【図１２】本発明のさらに他の規定される実施形態において用いられるステップを示すフローチャート。
【図１３】本発明が有利に用いられ得るインタラクティブシステムの詳細を示す簡単なブロック図。
【図１４】図１３の実施形態において用いられるＳＩＳＬ（いくつかのインターフェース、単一論理）アーキテクチャの詳細を示す簡単なブロック図。
【図１５】図１４のＳＩＳＬアーキテクチャを実現するステップを示すフローチャート。
【図１６】反応制約グラフのプロセスにおけるステップを示すフローチャート。
【図１７Ａ】制約ノードを実行するプロセスにおけるステップを示すフローチャート（Ａ、Ｂ、ＣおよびＤは図１７Ｂへと続く）。
【図１７Ｂ】制約ノードを実行するプロセスにおけるステップを示すフローチャート（Ａ、Ｂ、ＣおよびＤは図１７Ａから続く）。
【符号の説明】
１００  コンピュータシステム
１０１  中央処理ユニット
１０２  バス
１０３  モニタおよびディスプレイ
１０４  Ｉ／Ｏコントローラ
１０５  システムメモリ
１０６  キーボード
１０７  マウス
１０８  ディスクドライブ
１０９  ハードディスクドライブ
１１０  モデム
【図１】
0003779162.tif 000010
【図２】
0003779162.tif 000011
【図３】
0003779162.tif 000012
【図４】
0003779162.tif 000013
【図５】
0003779162.tif 000014
【図６】
0003779162.tif 000015
【図７】
0003779162.tif 000016
【図８】
0003779162.tif 000017
【図９】
0003779162.tif 000018
【図１０】
0003779162.tif 000019
【図１１】
0003779162.tif 000020
【図１２】
0003779162.tif 000021
【図１３】
0003779162.tif 000022
【図１４】
0003779162.tif 000023
【図１５】
0003779162.tif 000024
【図１６】
0003779162.tif 000025
【図１７Ａ】
0003779162.tif 000026
【図１７Ｂ】
0003779162.tif 000027