(57)【要約】クライアント−サーバアーキテクチャにおいてサーバ（４１０）がクライアント（４３５）と通信してユーザと対話を行う。クライアントは、ＶｏｉｃｅＸＭＬなどの特定のマークアップ言語をサポートするブラウザ（４４０）を含む。サーバは、ユーザとの対話の様々な状態を表わす情報を含むデータファイルを読み取り、その情報を使用して、対話の所与の状態に関してユーザに再生されるべきプロンプトを表わすオブジェクト（３１０）、ユーザからの予期される応答の文法、およびその他の状態情報を生成する対話フローインタプリタ（ＤＦＩ）を含む。
2004530982.tif 000002
【特許請求の範囲】
【請求項１】
クライアント−サーバコンピューティングシステムにおいて、マークアップ言語の命令を含むドキュメントをサーバから取り出し、前記マークアップ言語命令に従って前記ドキュメントをレンダリングしてユーザとの対話を提供するブラウザを含むクライアントと通信するサーバであって、
前記対話の様々な状態を表わす情報を含むデータファイルを読み取り、その情報を使用して、前記対話の所与の状態に関して、前記ユーザに再生されるべきプロンプト、および前記ユーザからの予期される応答の文法の少なくとも１つを表わすオブジェクトを生成する対話フローインタプリタ（ＤＦＩ）と、
前記ＤＦＩによって生成された前記オブジェクトの等価物を表わす命令をドキュメント内に前記マークアップ言語で生成するマークアップ言語ジェネレータと、
前記マークアップ言語ジェネレータによって生成された命令を含むドキュメントを前記クライアントブラウザに送達するサーバアプリケーションと
を含むことを特徴とするサーバ。
【請求項２】
前記マークアップ言語は、ＶｏｉｃｅＸＭＬ、ＳＡＬＴ、ＨＴＭＬ、およびＷＭＬの１つを含むことを特徴とする請求項１に記載のサーバ。
【請求項３】
前記マークアップ言語は、ＶｏｉｃｅＸＭＬを含み、前記ブラウザは、ＶｏｉｃｅＸＭＬ対応ブラウザを含むことを特徴とする請求項１に記載のサーバ。
【請求項４】
前記クライアントからの通信を前記サーバの前記サーバアプリケーションに誘導するアプリケーションサーバをさらに含むことを特徴とする請求項１に記載のサーバ。
【請求項５】
前記アプリケーションサーバおよび前記サーバアプリケーションは、ＪＳＰ／サーブレットモデルに準拠することを特徴とする請求項４に記載のサーバ。
【請求項６】
前記アプリケーションサーバおよび前記サーバアプリケーションは、ＡＳＰ／ＩＩＳモデルに準拠することを特徴とする請求項４に記載のサーバ。
【請求項７】
クライアントが、マークアップ言語の命令を含むドキュメントをサーバから取り出し、前記マークアップ言語命令に従って前記ドキュメントをレンダリングしてユーザとの対話を提供するブラウザを含むクライアント−サーバコンピューティングシステムにおいて、前記ユーザとコンピュータシステムの間で対話を行うための方法であって、
ユーザからの要求に応答して前記サーバにおいて対話フローインタプリタ（ＤＦＩ）をインスタンス化し、前記ＤＦＩが、前記対話の様々な状態を表わす情報を含むデータファイルを読み取り、その情報を使用して、前記対話の現行の状態に関して、前記ユーザに再生されるべきプロンプト、および前記ユーザからの予期される応答の文法の少なくとも１つを表わすオブジェクトを生成ステップと、
ドキュメント内で、前記ＤＦＩによって生成された前記オブジェクトの等価物を表わす前記マークアップ言語の命令を生成ステップと、
前記生成されたマークアップ言語命令を含む前記ドキュメントを前記クライアントブラウザに伝送するステップと
を含むことを特徴とする方法。
【請求項８】
前記マークアップ言語は、ＶｏｉｃｅＸＭＬ、ＳＡＬＴ、ＨＴＭＬ、およびＷＭＬの１つを含むことを特徴とする請求項７に記載の方法。
【請求項９】
前記マークアップ言語は、ＶｏｉｃｅＸＭＬを含み、前記ブラウザは、ＶｏｉｃｅＸＭＬ対応ブラウザを含むことを特徴とする請求項７に記載の方法。
【請求項１０】
前記伝送するステップは、ＪＳＰ／サーブレットモデルに従って行われることを特徴とする請求項７に記載の方法。
【請求項１１】
前記伝送するステップは、ＡＳＰ／ＩＩＳモデルに従って行われることを特徴とする請求項７に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声対応の対話型音声応答（ＩＶＲ）システム、および人間とコンピュータの間の対話に関わる同様のシステムの分野に関する。より詳細には、本発明は、サーバから音声アプリケーション情報を動的に生成するシステムおよび方法に関し、詳細には、マークアップ言語ドキュメントを、そのようなマークアップ言語ドキュメントをクライアントコンピュータ上でレンダリングすることができるブラウザに動的に生成することに関する。
【背景技術】
【０００２】
本出願は、参照により全体が本明細書に組み込まれている２００１年５月４日に出願した「Ｗｅｂサーバからの音声アプリケーション情報の動的な生成（Dynamic Generation of Voice Application Information from a Web Server）」という名称の米国特許仮出願第２８８，７０８号明細書の特許出願日の恩典を主張する。
【０００３】
本明細書で開示する主題は、「スプレッドシートインターフェースまたはテーブルインターフェースを使用して言語文法を生成するためのシステムおよび方法（System And Method For Creating A Language Grammar Using A Spreadsheet Or Table Interface）」という名称の米国特許第５，９９５，９１８号明細書（１９９９年１１月３０日に発行された）、「音声対応アプリケーションのためのシステムおよび方法（System and Method for Speech Enabled Application）」という名称の米国特許第６，０９４，６３５号明細書（２０００年７月２５日に発行された）、「対話の設計およびシミュレーションのための装置（Apparatus for Design and Simulation of Dialogue）」という名称の米国特許第６，３２１，１９８号明細書（２００１年１１月２０日に発行された）、および２０００年１０月３０日に出願した「対話フローインタプリタ開発ツール（Dialogue Flow Interpreter Development Tool）」という名称の係属中の米国特許出願第０９／７０２，２４４号明細書に関し、以上のすべてが、本出願の譲受人に譲渡され、以上の明細書の内容は、参照により全体が本明細書に組み込まれている。
【０００４】
ここ数年間のインターネットの急激な成長、特にＷｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂの急激な成長は、いくら控えめに言っても控えめになり過ぎることはない。それに対応する世界経済に対する影響も同様に、劇的であった。このコンピュータ網をナビゲートすることにほんのわずかでも親しんでいるユーザには、実質的にあらゆるタイプの情報が入手可能である。それでも、Ｗｅｂ上で普通なら入手可能であるはずの、個人にとって重要である、またはクリティカルである可能性さえある情報が、その個人の手に届かない場合が依然として存在する。たとえば、旅行中の個人が、陸線電話機、モバイル電話機、無線パーソナルデジタルアシスタント、または同様のデバイスを使用して自身の現在の目的地からの特定の航空会社による出発航空便に関する情報を得ることを所望する可能性がある。その情報は、航空会社のＷｅｂサーバから容易に入手可能である可能性があるが、過去には、旅行者は、電話機からＷｅｂサーバへのアクセスを有していなかった。しかし、最近、電話機、および電話ベースの音声アプリケーションをＷｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂと結び付ける進展がみられる。１つのそのような進展が、ボイスエクステンデッドマークアップ言語（Ｖｏｉｃｅ  Ｅｘｔｅｎｄｅｄ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）（ＶｏｉｃｅＸＭＬ）である。
【０００５】
ＶｏｉｃｅＸＭＬは、人間／コンピュータ対話を表現するためのＷｅｂベースのマークアップ言語である。ＶｏｉｃｅＸＭＬは、ハイパーテキストマークアップ言語（ＨＴＭＬ）と同様であるが、音声入力と音声出力をともに有する音声ブラウザを想定している。図１に見られるとおり、ＶｏｉｃｅＸＭＬシステムに関する通常の構成は、インターネットを介してＷｅｂサーバ１１０に接続されたＷｅｂブラウザ１６０（クライアント上に常駐する）と、インターネットと公衆交換電話網（ＰＳＴＮ）の両方に接続されたＶｏｉｃｅＸＭＬゲートウェイノード１４０（音声ブラウザを含む）とを含む可能性がある。Ｗｅｂサーバは、Ｗｅｂブラウザ１６０によって要求された場合、マルチメディアファイルおよびＨＴＭＬドキュメント（スクリプト、および同様のプログラムを含む）を提供することができ、音声ブラウザ１４０からの要求時に、音声／文法情報およびＶｏｉｃｅＸＭＬドキュメント（スクリプト、および同様のプログラムを含む）を提供することができる。
【０００６】
ＶｏｉｃｅＸＭＬで書かれた音声アプリケーションを展開することへの関心が広がるにつれ、音声ユーザインターフェースフロントエンドとビジネス規則主導（ｂｕｓｉｎｅｓｓ−ｒｕｌｅ  ｄｒｉｖｅｎ）バックエンドの高度で優美な統合の必要性が、さらに重要になっている。ＶｏｉｃｅＸＭＬ自体、音声ユーザインターフェースを表現するための満足のいく媒体であるが、アプリケーションのビジネス規則を実施するのにはほとんど役立たない。
【０００７】
インターネットコミュニティ内で、ユーザインターフェース（ＨＴＭＬブラウザ）とビジネス規則主導バックエンドを統合することの問題は、アプリケーションとバックエンドデータ操作をともに定義するサーバコードが書かれる動的に生成されたＨＴＭＬの使用を介して対処されてきた。ユーザがブラウザを介してアプリケーションを取り出した際、アプリケーションは、Ｗｅｂサーバがｈｔｔｐ応答として伝送するＨＴＭＬ（またはＸＭＬ）を動的に生成する。ユーザの入力（マウスクリップ、およびキーボードエントリ）がブラウザによって収集され、ＨＴＴＰ要求（ＧＥＴまたはＰＯＳＴ）の中でサーバに戻され、アプリケーションによって処理される。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
この動的な生成モデルが、音声アプリケーションにおいて使用するためにＶｏｉｃｅＸＭＬコミュニティによって拡張されている。サーバ常駐アプリケーションコードが、サーバに見えるデータと対話し、ＶｏｉｃｅＸＭＬのストリームを生成する。しかし、この手法は、それぞれの新しいアプリケーションに関してカスタムコードの開発を必要とするか、または（良くても）再使用を容易にするテンプレートとして構造化されることが可能なカスタムコードの再使用可能な構成要素を必要とする。
【０００９】
したがって、前述した動的生成アーキテクチャの長所を活用するが、本願特許出願人によって開発されたナチュラルランゲージスピーチアシスタント（Ｎａｔｕｒａｌ  Ｌａｎｇｕａｇｅ  Ｓｐｅｅｃｈ  Ａｓｓｉｓｔａｎｔ）（ＮＬＳＡ）を含む系列のアプリケーション開発ツールなどの統合されたサービス生成環境によって提供されるアプリケーション開発の極度の単純化を利用する音声アプリケーション開発−展開アーキテクチャが求められている。本発明は、この必要を満たす。
【００１０】
【特許文献１】
米国特許第５，９９５，９１８号明細書
【特許文献２】
米国特許第６，３２１，１９８号明細書
【特許文献３】
米国特許出願第０９／７０２，２４４号明細書
【特許文献４】
米国特許第６，０９４，６３５号明細書
【課題を解決するための手段】
【００１１】
本発明は、アプリケーション開発者が、統合されたサービス生成環境において既存の音声アプリケーション開発ツールを使用して音声対応アプリケーションを設計し、ユーザとの音声アプリケーション対話が、特定のマークアップ言語でドキュメントを動的に生成すること、および適切なクライアントブラウザによってそのドキュメントをレンダリングすることを介して行われるクライアント−サーバ環境においてその音声アプリケーションを展開することができるようにする。本発明の一実施形態は、クライアント−サーバ環境においてクライアントと通信してユーザとの対話を行うサーバを含み、クライアントは、マークアップ言語の命令を含むドキュメントをサーバから取り出し、そのマークアップ言語命令に従ってそのドキュメントをレンダリングしてユーザとの対話を提供するブラウザを含む。サーバは、ユーザとの対話の様々な状態を表わす情報を含むデータファイルを読み取り、その情報を使用して、対話の所与の状態に関して、ユーザに再生されるべきプロンプトを表わすオブジェクト、ユーザから予期される応答の文法、およびその他の状態情報を生成する対話フローインタプリタ（ｄｉａｌｏｇｕｅ  ｆｌｏｗ  ｉｎｔｅｒｐｒｅｔｅｒ（解釈器））を含む。データファイルは、Ｕｎｉｓｙｓ  ＮＬＳＡなどの統合されたサービス生成環境を使用して音声アプリケーション開発者によって生成される。サーバは、ＤＦＩによって生成されるオブジェクトの等価物を表わす命令をクライアントブラウザのマークアップ言語でドキュメント内に生成するマークアップ言語ジェネレータ（生成器）をさらに含む。要するに、マークアップ言語ジェネレータは、一体型の音声アプリケーションで使用するためのＤＦＩによって通常、生成される情報を、ブラウザベースのクライアント−サーバ環境で使用するための動的に生成されたマークアップ言語ドキュメントに変換するＤＦＩのまわりのラッパ（ｗｒａｐｐｅｒ）の役割をする。サーバアプリケーションが、ＤＦＩおよびマークアップ言語ジェネレータをインスタンス化して、音声アプリケーションの全体的なシェルを提供し、アプリケーションの背後の必要なビジネス論理を供給する。サーバアプリケーションは、生成されたマークアップ言語ドキュメントをクライアントブラウザに送達すること、およびブラウザから要求、および関連する情報を受け取ることを担う。アプリケーションサーバ（すなわち、アプリケーションホストソフトウェア（ａｐｐｌｉｃａｔｉｏｎ  ｈｏｓｔｉｎｇ  ｓｏｆｔｗａｒｅ））を使用して、１つまたは複数のブラウザと、以上の仕方で展開された１つまたは複数の異なる音声アプリケーションの間の通信を誘導することができる。本発明の音声アプリケーション開発−展開アーキテクチャを使用して、ＶｏｉｃｅＸＭＬ、スピーチアプリケーションランゲージタグ（Ｓｐｅｅｃｈ  Ａｐｐｌｉｃａｔｉｏｎ  Ｌａｎｇｕａｇｅ  Ｔａｇ）（ＳＡＬＴ）、ハイパーテキストマークアップ言語（ＨＴＭＬ）、その他を含む様々なマークアップ言語のいずれにおいても、音声アプリケーション情報の動的な生成を可能にすることができる。サーバは、サンマイクロシステムズ社によって開発されたＪａｖａ（登録商標）サーバページーズ��Ｊａｖａ（登録商標）Ｓｅｒｖｅｒ  Ｐａｇｅｓ）（ＪＳＰ）／サーブレット（Ｓｅｒｖｌｅｔ）モデル（Ｊａｖａ（登録商標）サーブレットＡＰＩ規格で規定された）、およびマイクロソフトコーポレーションによって開発されたアクティブサーバページーズ（Ａｃｔｉｖｅ  Ｓｅｒｖｅｒ  Ｐａｇｅｓ）（ＡＳＰ）／インターネットインフォメーションサーバ（Ｉｎｔｅｒｎｅｔ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｓｅｒｖｅｒ）（ＩＩＳ）を含む様々なアプリケーションサービスプロバイダモデルで実施することができる。
【００１２】
本発明のその他の特徴は、以下で明らかになる。
【００１３】
以下の概要、および以下の詳細な説明は、添付の図面と併せ読むことにより、よりよく理解される。本発明を例示するため、図面では、本発明の例示的な構成を示している。ただし、本発明は、開示する特定の方法および手段に限定されない。
【発明を実施するための最良の形態】
【００１４】
図２は、一体型音声アプリケーションの設計および展開のための例示的なアーキテクチャを示している。Ｕｎｉｓｙｓ  ＮＬＳＡ系列の音声アプリケーション開発ツールが、音声アプリケーションの開発および展開のこの手法の一例である。以下により詳細に説明するとおり、本発明は、音声アプリケーション開発のこの手法をベースにして、ユーザとの音声アプリケーション対話が、特定のマークアップ言語のドキュメントの動的な生成、および適切なクライアントブラウザによるそのドキュメントのレンダリングを介して行われるクライアント−サーバ環境において、その仕方で開発された音声アプリケーションが展開されることを可能にする。ただし、音声アプリケーション開発者の観点からは、開発プロセスは、基本的に違わない。Ｕｎｉｓｙｓ  ＮＬＳＡは、図２に示したアーキテクチャを実施する音声アプリケーション設計−開発環境の一例であり、したがって、以下に提供する例示的な説明の基礎の役割をするが、本発明は、Ｕｎｉｓｙｓ  ＮＬＳＡ環境の文脈における実施に全く限定されないものと理解されたい。むしろ、本発明は、このアーキテクチャ、またはそれと等価のアーキテクチャを実施するあらゆる音声アプリケーション設計−開発環境の文脈で使用することができる。
【００１５】
図示するとおり、このアーキテクチャは、オフライン環境とランタイム環境の両方から成る。主要なオフライン構成要素は、統合されたサービス生成環境である。この例では、統合されたサービス生成環境は、ナチュラルランゲージスピーチアシスタント、または「ＮＬＳＡ」（ペンシルベニア集ブルーベルの本願特許出願人によって開発された）を含む。Ｕｎｉｓｙｓ  ＮＬＳＡのような統合されたサービス生成環境により、開発者は、音声アプリケーションの対話フロー（ときとして、「コールフロー」と呼ばれる）、ならびに再生されるべきプロンプト、予期されるユーザ応答、および対話フローの各状態でとられるべきアクションを定義する一連のデータファイル２１５を生成することができるようになる。データファイル２１５は、各ノードが対話フローの状態を表わし、各エッジが、ある対話状態から別の対話状態への応答を条件とする遷移（ｒｅｓｐｏｎｓｅ−ｃｏｎｔｉｎｇｅｎｔ  ｔｒａｎｓｉｔｉｏｎ）を表わす有向グラフを定義しているものと考えることができる。サービス生成環境から出力されたデータファイル２１５は、以下により十分に説明するとおり、サウンドファイル、文法ファイル（音声認識器から受け取られる予期されるユーザ応答を束縛する）、および対話フローインタプリタ（ＤＦＩ）２２０によって使用される形態で対話フロー（たとえば、ＤＦＩファイル）を定義するファイルから成ることが可能である。ＮＬＳＡのケースでは、対話フローを定義するファイルは、対話フローのＸＭＬ表現を含む。
【００１６】
図５は、電話機を介してアプリケーションにアクセスするユーザが「ロビンのレストラン」と呼ばれるベンダからハンバーガーまたはピザなどの食料品を注文することを可能にする例示的な音声アプリケーションに関する対話フローの第１の状態のＸＭＬ表現を含む例示的なＤＦＩファイルである。図示するとおり、この例示的なアプリケーションにおける第１の状態は、「挨拶」と呼ばれ、この状態に関するＸＭＬファイルは、ユーザに再生されるべきプロンプト（たとえば、「ロビンのレストランへようこそ。ハンバーガーまたはピザはいかがですか」）、アプリケーションがユーザの口頭の応答を理解することができるようにする自動音声認識器（ＡＳＲ）と併せて使用するための文法を定義する文法ファイル（たとえば、「挨拶文法」）、およびユーザ応答に基づいてとられるべきアクション（たとえば、ユーザがハンバーガーを選択した場合、次の状態＝「飲み物注文」、またはユーザがピザを注文した場合、次の状態＝「ピザのトッピング（ｔｏｐｐｉｎｇ）を得る」）を指定する。
【００１７】
図２を再び参照すると、音声アプリケーション２３０のフローを制御するのに対話フローインタプリタが使用するデータファイルを生成することに加えて、サービス生成環境は、音声アプリケーションを実行するのに必要な基本的なコードである音声アプリケーション２３０のためのシェルコードを生成することも行う。次に、開発者は、データベースと対話して特定のアプリケーションに妥当な情報を記憶し、取得するコードなどのさらなるコードを音声アプリケーション２３０に追加して、アプリケーションの背後のビジネス論理を実施することができる。たとえば、このビジネス論理コードは、ベンダに関するインベントリを維持すること、またはユーザがアクセスすることを所望する可能性がある情報のデータベースを維持することが可能である。したがって、統合されたサービス生成環境は、ユーザとの音声対話を実施するのに必要なコードを生成し、開発者は、アプリケーションのビジネス規則主導バックエンドを実施するコードを追加することによってアプリケーションを完成させる。
【００１８】
Ｕｎｉｓｙｓ  ＮＬＳＡは、容易に理解されるスプレッドシートの隠喩を用いて、エンドユーザが対話の所与の状態において言うことが予期されることを正確に定義する語および句の間の関係を表現する。このツールにより、変数およびサウンドファイルを管理するための機能、ならびに実際のコードの生成に先立ってアプリケーションをシミュレートするための機構が提供される。また、このツールにより、記録スクリプト（アプリケーションの「音声」の記録を管理するための）、およびアプリケーションのアーキテクチャを要約する対話設計ドキュメントも生成される。ＮＬＳＡ、およびこのツールによるデータファイル２１５の生成に関するさらなる詳細は、（特許文献１）および（特許文献２）、ならびに本出願と同じ出願人に譲渡された同時係属の（特許文献３）で提供されている。
【００１９】
図２の音声アプリケーション開発−展開アーキテクチャのランタイム環境は、音声アプリケーションシェル−ビジネス論理コード２３０、および音声アプリケーション２３０がインスタンス化し、呼び出してユーザとのアプリケーション対話を制御する対話フローインタプリタ２２０の１つまたは複数のインスタンスを含む。音声アプリケーション２３０は、自動音声認識器（ＡＳＲ）２３５とインターフェースをとり、ユーザから受け取られた口頭の発話を音声アプリケーションが使用可能なテキスト形態に変換することができる。また、音声アプリケーション２３０は、テキスト情報をユーザに再生されるべき音声に変換するテキスト−音声エンジン（ＴＴＳ）２４０とインターフェースをとることもできる。音声アプリケーション２３０は、代替として、ＴＴＳエンジン２４０の使用の代わりに、またはその使用に加えて、あらかじめ記録されたサウンドファイルをユーザに再生することも可能である。また、音声アプリケーション２３０は、電話インターフェース２４５を介して公衆交換電話網（ＰＳＴＮ）とインターフェースをとり、ユーザがそのネットワーク上の電話機２２５から音声アプリケーション２３０と対話するための手段を提供することも可能である。その他の実施形態では、音声アプリケーションは、コンピュータから直接にユーザと対話することも可能であり、その場合、ユーザは、コンピュータシステムのマイクロホンおよびスピーカを使用してアプリケーションに話しかけ、アプリケーションを聴き取る。さらに別の可能性は、ユーザがボイスオーバーＩＰ（ＶＯＩＰ）接続を介してアプリケーションと対話することである。
【００２０】
Ｕｎｉｓｙｓ  ＮＬＳＡ環境では、ランタイム環境は、自然言語インタプリタ（ＮＬＩ）２２５の機能がＡＳＲ２３５の一環として提供されない場合、自然言語インタプリタ（ＮＬＩ）２２５も含むことが可能である。ＮＬＩは、有効な発話を表現し、その発話をトークンに関連付け、アプリケーションに妥当なその他の情報を提供するデータファイル２１５の所与の文法ファイルにアクセスする。ＮＬＩは、文法に基づいてユーザ発話を抽出し、処理して、発話の意味を表わすトークンなどのアプリケーションに有用な情報を提供する。次に、このトークンを使用して、たとえば、音声アプリケーションが応答としてどのようなアクションをとるかを決定することができる。例示的なＮＬＩの動作は、（特許文献４）（ＮＬＩは、「ランタイムインタプリタ」と呼ばれている）、および（特許文献２）（ＮＬＩは、「ランタイムＮＬＩ」と呼ばれている）で説明されている。
【００２１】
対話フローインタプリタ（ＤＦＩ）は、音声アプリケーション２３０によってインスタンス化される。ＤＦＩは、サービス生成環境によって生成されたデータファイル２１５の中に含まれるアプリケーションの表現にアクセスする。ＤＦＩは、データファイル２１５の中の音声アプリケーションの表現を調べることにより、音声アプリケーション対話状態のクリティカルな構成要素をオブジェクトの形態で呼出し側のプログラムに提供する。このプロセスを理解するため、対話状態を構成する構成要素を理解することが不可欠である。
【００２２】
基本的に、対話の各状態は、アプリケーションとユーザの間の１つの会話上のやりとりを表わす。状態の構成要素は、以下のテーブルの中で定義されている。
【００２３】
【表１】
2004530982.tif 000003
【００２４】
Ｕｎｉｓｙｓ  ＮＬＳＡでは、サービス生成環境内のツールを使用して各応答が、エンドユーザが言うことが予期される実際の語および句まで純化される。プロンプトおよび応答に、一定のストリングリテラル（ｌｉｔｅｒａｌ）の代わりに変数を導入することが可能であり、変数およびアクションをデータストレージ活動に明示的に関連付けることができる。したがって、音声アプリケーションの完全な規定は、すべてのアプリケーションの対話状態の規定、および各状態に関する内部構成要素のそれぞれの規定を必要とする。
【００２５】
ランタイムに音声アプリケーション２３０によって呼び出された際、ＤＦＩは、現行の対話状態、ならびに以下のとおり、その状態を機能させるのに必要とされる構成要素またはオブジェクトのそれぞれを提供する。
【００２６】
【表２】
2004530982.tif 000004
【００２７】
ＤＦＩによって提供される情報のソースは、データファイル２１５の中でサービス生成環境によって生成されたアプリケーションの表現から引き出される。
【００２８】
このように、ＤＦＩおよび関連するデータファイル２１５は、音声アプリケーション対話を実施するのに必要なコードおよび情報を含む。したがって、この単純化された形態では、音声アプリケーション２３０は、アプリケーションが、単にＤＦＩ２２０上でメソッドを、たとえば、再生されるべきプロンプトについての情報を得るため（たとえば、「ＤＦＩ．Ｇｅｔ＿Ｐｒｏｍｐｔ（）」）、ユーザの予期される応答、および関連する文法についての情報を得るため（たとえば、「ＤＦＩ．Ｇｅｔ＿Ｒｅｓｐｏｎｓｅ（）」）、および所与の状態の背後で必要なビジネス論理を行った後、対話が次の状態に進むようにするために（たとえば、「ＤＦＩ。Ａｄｖａｎｃｅ＿Ｓｔａｔｅ」）呼び出すだけでよい。
【００２９】
ＤＦＩのＵｎｉｓｙｓ実施形態では、開発者がＣ、Ｖｉｓｕａｌ  Ｂａｓｉｃ、Ｊａｖａ（登録商標）などの様々なプログラミング言語のいずれか、または任意の他のプログラミング言語でコード化することができる音声アプリケーション２３０が、ＤＦＩ２２０をインスタンス化し、ＤＦＩ２２０を呼び出してデータファイル２１５の中で指定された設計を解釈させる。ＤＦＩ２２０は、アプリケーションの中の対話フローを制御し、開発者が以前に書かなければならなかったすべての基礎にあるコードを供給する。ＤＦＩ２２０は、実際上、対話の低レベルの詳細を実施する「標準化された」オブジェクトのライブラリを提供する。ＤＦＩ２２０は、音声アプリケーション２３０の実施をさらに単純化するアプリケーションプログラミングインターフェース（ＡＰＩ）として実施される。ＤＦＩ２１５は、音声アプリケーション２３０の対話を始めから終りまで自動的に主導し、これにより、対話管理の重大で、しばしば、複雑なタスクをなくす。従来、そのようなプロセスは、アプリケーションに依存し、したがって、それぞれのアプリケーションに関して実施しなおすことを要する。
【００３０】
前述したとおり、音声アプリケーションの対話は、状態間の一連の遷移を含む。各状態は、再生されるべきプロンプト、ロードされるべき音声認識器の文法（音声システムのユーザが何を言うかを聴取するため）、発呼者の応答に対する返答、および各応答に基づいてとられるべきアクションを含む独自の１組のプロパティを有する。ＤＦＩ２２０は、アプリケーションの寿命にわたる任意の所与の時点で対話の状態を追跡し、状態プロパティにアクセスする関数を公開する。
【００３１】
図３を参照すると、Ｕｎｉｓｙｓ  ＮＬＳＡにおいて、ＤＦＩがアクセスを提供する状態のプロパティ（プロンプト、応答、アクション等）が、オブジェクト３１０の形態で実現されている。これらのオブジェクトの例には、プロンプトオブジェクト、スニペット（Ｓｎｉｐｐｅｔ）オブジェクト、文法オブジェクト、応答オブジェクト、アクションオブジェクト、および変数オブジェクトが含まれるが、以上には限定されない。例示的なＤＦＩ関数３８０は、前述したオブジェクトのいくつかを戻す。例示的な関数には、以下が含まれる。すなわち、
Ｇｅｔ＿Ｐｒｏｍｐｔ（）３２０：再生されるべき適切なプロンプトを定義する情報を含むプロンプトオブジェクトを戻す；次に、この情報は、たとえば、ＴＴＳエンジン４５０に送られることが可能であり、ＴＴＳエンジン４５０は、その情報をユーザに再生されるべき音声データに変換することができる；
Ｇｅｔ＿Ｇｒａｍｍａｒ（）３３０：現行の状態に対する適切な文法に関する情報を含む文法オブジェクトを戻す；次に、この文法は、音声認識エンジン（ＡＳＲ）４４５にロードされて、ユーザからの有効な発話の認識を束縛する；
Ｇｅｔ＿Ｒｅｓｐｏｎｓｅ（３４０）：実際のユーザ応答、この応答が含む可能性があるあらゆる変数、およびこの応答に関して定義されたすべての可能なアクションから成る応答オブジェクトを戻す；および
Ａｄｖａｎｃｅ＿Ｓｔａｔｅ３５０：対話を次の状態に遷移させる。
【００３２】
他のＤＦＩ関数３７０を使用して状態非依存のプロパティ（すなわち、グローバルプロパティ）が取得される。これには、音声アプリケーションに関連する様々なデータファイル２１５に関するディレクトリパスに関する情報、アプリケーションの入力モード（たとえば、ＤＴＭＦまたは音声）、対話の現在の状態、および対話の前の状態が含まれるが、以上には限定されない。以上の関数のすべてが、音声アプリケーション２３０コードから呼び出されて、音声アプリケーションの実行中に対話についての情報を提供することが可能である。
【００３３】
ＤＦＩ２２０の機能および動作に関するさらなる詳細は、２０００年１０月３０日に出願した「対話フローインタプリタ開発ツール（Dialogue Flow Interpreter Development Tool）」という名称の同時係属の、本出願と同じ出願人に譲渡された（特許文献３）で見ることができる。
【００３４】
前述し、図２および３で示したとおり、統合されたサービス生成環境２１０、データファイル２１５、およびＤＦＩ２２０およびＮＬＩ２２５のランタイム構成要素は、これまで、一体型の音声アプリケーション２３０の生成において使用されてきた。本発明は、図２および３で示したアーキテクチャをベースにして、ユーザとの音声アプリケーション対話が、特定のマークアップ言語のドキュメントの動的な生成、および適切なクライアントブラウザによるそのドキュメントのレンダリングを介して行われるクライアント−サーバ環境において、その仕方で開発された音声アプリケーションが展開されることを可能にする。
【００３５】
本発明の音声アプリケーション開発−展開に関する新しいアーキテクチャを図４に示している。図４は、本発明のランタイム構成要素のアーキテクチャを示している。オフライン構成要素は、基本的に、図２に示したアーキテクチャと同じである。つまり、統合されたサービス生成環境を使用して、音声アプリケーションの対話フローを定義する１組のデータファイル２１５が生成される。図２のアーキテクチャの場合と同様に、本発明の新しいアーキテクチャは、同じ対話フローインタプリタ（ＤＦＩ）２２０（およびオプションとして、自然言語インタプリタ（ＮＬＩ）２２５のＮＬＳＡ実施形態）を利用して、ユーザとの対話を管理し、制御する。ただし、本発明のアーキテクチャは、ユーザとの音声アプリケーション対話が、特定のマークアップ言語のドキュメントの動的な生成、および適切なクライアントブラウザによるそのドキュメントのレンダリングを介して行われるクライアント−サーバ環境において、その対話を実施する音声アプリケーションが展開されることを可能にするように設計されている。
【００３６】
図示するとおり、クライアント４３５は、サーバからマークアップ言語の命令を含むドキュメントを取り出し、そのマークアップ言語命令に従ってドキュメントをレンダリングしてユーザとの対話を提供するブラウザ４４０を含む。本発明を使用して、ＶｏｉｃｅＸＭＬ、スピーチアプリケーションランゲージタグ（ＳＡＬＴ）、ハイパーテキストマークアップ言語（ＨＴＭＬ）、ならびに無線アプリケーションプロトコル（Ｗｉｒｅｌｅｓｓ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）（ＷＡＰ）ベースのセル電話アプリケーションのための無線マークアップ言語（Ｗｉｒｅｌｅｓｓ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）（ＷＭＬ）や、ハンドヘルドデバイスのためのＷ３プラットフォームなどのその他を含む様々なマークアップ言語のいずれにおいても、音声アプリケーション情報の動的な生成を可能にすることができる。したがって、ブラウザは、ＶｏｉｃｅＸＭＬ対応ブラウザ、ＳＡＬＴ対応ブラウザ、ＨＴＭＬ対応ブラウザ、ＷＭＬ対応ブラウザ、または任意の他のマークアップ言語対応ブラウザを含むことが可能である。ＶｏｉｃｅＸＭＬ対応ブラウザの例には、ＰｉｐｅＢｅａｃｈ  ＡＢから市販される「ＳｐｅｅｃｈＷｅｂ」、ボイスジニーテクノロジー社（Ｖｏｉｃｅ  Ｇｅｎｉｅ  Ｔｅｃｈｎｏｌｏｇｙ  Ｉｎｃ．）から市販される「Ｖｏｉｃｅ  Ｇｅｎｉｅ」、およびニュアンスコミュニケーションズから市販される「Ｖｏｙａｇｅｒ」が含まれる。ＶｏｉｃｅＸＭＬブラウザ製品は、一般に、自動音声認識器４４５と、テキスト−音声合成器４５０と、電話インターフェース４６０とを含む。ＡＳＲ４４５、ＴＴＳ４５０、および電話インターフェースは、異なるベンダから供給されることも可能である。
【００３７】
図４に示すとおり、ＶｏｉｃｅＸＭＬ対応ブラウザの場合、ユーザは、公衆交換電話網４６５に接続された電話機または他のデバイスからブラウザと対話することができる。代替として、ユーザは、ボイスオーバーインターネットＩＰ接続（ＶＯＩＰ）（図示せず）を使用してブラウザと対話することができる。他の音声実施形態では、ユーザが直接アクセスを有するワークステーション上または他のコンピュータ上でクライアントが実行されていることが可能であり、その場合、ユーザは、ワークステーションの入力／出力能力（たとえば、マウス、マイクロホン、スピーカ等）を使用してブラウザ４４０と対話することができる。ＨＴＭＬブラウザまたはＷＭＬブラウザなどの非音声のブラウザの場合、ユーザは、たとえば、グラフィックスによってブラウザと対話する。
【００３８】
ブラウザ４４０は、たとえば、インターネット４３０を介して伝送される標準のＷｅｂベースのＨＴＴＰコマンド（たとえば、ＧＥＴおよびＰＯＳＴ）を介して本発明のサーバ４１０と通信する。ただし、本発明は、インターネットの一部であるか否かにかかわらず、ローカルエリアネットワーク、ワイドエリアネットワーク、および無線網を含む任意の私設ネットワークまたは公共ネットワークを介して展開することができる。
【００３９】
好ましくは、アプリケーションサーバ４２５（すなわち、アプリケーションホストソフトウェア）が、クライアントブラウザ４４０からの要求を代行受信し、その要求をサーバコンピュータ４１０上でホストされる適切な音声アプリケーション（たとえば、サーバアプリケーション）４１５に転送する。このようにして、複数の音声アプリケーションがユーザによる使用に供されることが可能である。
【００４０】
前述した対話フローインタプリタ（ＤＦＩ）２２０（およびオプションとして、ＮＬＩ２２５）、およびデータファイル２１５に加えて、サーバ４１０は、ＤＦＩによって生成されるオブジェクトの等価物を表わすクライアントブラウザ４４０によってサポートされるマークアップ言語の命令をドキュメント内で生成するマークアップ言語ジェネレータ４２０をさらに含む。つまり、マークアップ言語ジェネレータ４２０は、一体型の音声アプリケーションで使用するためにＤＦＩによって通常、生成される、前述したプロンプト、応答、アクション、およびその他のオブジェクトなどの情報を、クライアントブラウザ４４０に提供することができるドキュメント内の動的に生成されたマークアップ言語命令に変換するＤＦＩ２２０（およびオプションとして、ＮＬＩ２２５）のまわりのラッパの役割をする。
【００４１】
単に例として、図５に示した例示的なＤＦＩファイルのＸＭＬ表現に基づいてＤＦＩ２２０によって戻されるプロンプトオブジェクトは、以下の情報を含むことが可能である。
【００４２】
2004530982.tif 000005
【００４３】
プロンプトオブジェクトは、基本的に、この情報のメモリ内の表現である。この例では、マークアップ言語ジェネレータ４２０は、ＶｏｉｃｅＸＭＬ対応クライアントブラウザによるレンダリングのために以下のＶｏｉｃｅＸＭＬ命令を生成することができる。
【００４４】
2004530982.tif 000006
【００４５】
以上の命令は、クライアントブラウザに伝送して戻されるドキュメントの中に生成される。以下は、図５の例示的な対話の状態に関連するいくつかのオブジェクトのＶｏｉｃｅＸＭＬ表現を含むより大きいドキュメントの例である。
【００４６】
2004530982.tif 000007
2004530982.tif 000008
【００４７】
図２に示した音声アプリケーション２３０と同様であるが、図４のクライアント−サーバ環境において展開するために設計されたサーバアプリケーション４１５が、ＤＦＩ２２０およびマークアップ言語ジェネレータ４２０をインスタンス化して音声アプリケーションの全体的なシェルを提供し、アプリケーションの背後の必要なビジネス論理を供給する。サーバアプリケーション４１５は、生成されたマークアップ言語ドキュメントをクライアントブラウザ４４０に送達すること、およびたとえば、アプリケーションサーバ４２５を介してブラウザ４４０から要求、および関連する情報を受け取ることを担う。サーバアプリケーション４１５およびアプリケーションサーバ４２５は、サンマイクロシステムズ社によって開発されたＪａｖａ（登録商標）サーバページーズ（ＪＳＰ）／サーブレットモデル（Ｊａｖａ（登録商標）サーブレットＡＰＩ規格で規定された）（この場合、サーバアプリケーション４１５は、このモデルのＪａｖａ（登録商標）サーブレット規格に準拠し、アプリケーションサーバ４２５は、たとえば、「Ｔｈｅ  Ｊａｋａｒｔａ  Ｐｒｏｊｅｃｔ」によって提供される「Ｔｏｍｃａｔ」リファレンス実施形態を含むことが可能である）、およびマイクロソフトコーポレーションによって開発されたアクティブサーバページーズ（ＡＳＰ）／インターネットインフォメーションサーバ（ＩＩＳ）（この場合、アプリケーションサーバ４２５は、Ｍｉｃｒｏｓｏｆｔ  ＩＩＳを含む）を含む様々なアプリケーションサービスプロバイダモデルで実施することができる。
【００４８】
一実施形態では、サーバアプリケーション４１５は、適切な．ａｓｐファイルまたは．ｊｓｐファイル、ならびにＤＦＩ２２０およびマークアップ言語ジェネレータ４２０のインスタンスとの組合せで、ブラウザ４４０に戻されるべきマークアップ言語ドキュメントを生成するサーバ４１０上の実行可能なスクリプトとして実現することができる。
【００４９】
好ましくは、サービス生成環境は、音声アプリケーションの対話を定義するデータファイルを生成することに加えて、サーバアプリケーション４１５の基本的なシェルコードも生成して、特定のクライアント−サーバ仕様（たとえば、ＪＳＰ／サーブレット、またはＡＳＰ／ＩＩＳ）をコーディングしなければならないことからアプリケーション開発者をさらに解放する。開発者が行わなければならないのは、アプリケーションのビジネス論理を実施するのに必要なコードを提供することだけである。他のＷｅｂ開発者は、サーバ上でＡＳＰ／ＩＩＳ技術およびＪＳＰ／サーブレット技術を使用してマークアップ言語コードを動的に生成するが、サーバ上で解釈エンジン（すなわち、ＤＦＩ２２０）を使用して、それ自体、オフラインツールによって構築されたアプリケーションを表わす基本的な情報を取得するのは、本発明のアーキテクチャが最初であると考えられる。
【００５０】
ＤＦＩ２２０は、マークアップ言語ドキュメントを動的に生成することができる情報ソースを提供するのに理想的に適している。ＡＳＰ／ＩＩＳモデルまたはＪＳＰ／サーブレットモデルを使用して、サーバアプリケーション４１５は、前述したのと同じＤＦＩメソッドを呼び出すが、戻されるオブジェクトは、マークアップ言語ジェネレータ４２０によって適切なマークアップ言語タグに翻訳され、マークアップ言語ドキュメントにパッケージ化されて、サーバアプリケーション４１５が、動的に生成されたマークアップ言語ドキュメントを遠隔のクライアントブラウザにストリーミングすることが可能になる。所与の対話状態におけるアクションが何らかのデータベース読取り活動、またはデータベース書き込み活動を含む場合はいつでも、その活動は、ＤＦＩ２２０の制御の下で行われ、トランザクションの結果は、生成されたマークアップ言語命令に反映される。
【００５１】
したがって、ＤＦＩ２２０は、実質的にサーバアプリケーション４１５の延長となる。本実施形態では、データファイル２１５を構成する音声アプリケーション対話、および関連する音声認識文法、音声ファイル、またはアプリケーション特有のデータは、サーバに見えるデータストア（ｓｅｒｖｅｒ−ｖｉｓｉｂｌｅ  ｄａｔａ  ｓｔｏｒｅ）上に常駐する。対話フローを表わすファイルは、ＸＭＬ（たとえば、図５）で表わされ、文法は、Ｗ３Ｃ音声インターフェースフレームワークに関する音声認識文法規格（または、必要な場合、ベンダ特有の文法形式で）表わされる。したがって、原則として、単一のサービス生成環境を使用して、開発者が、特定のマークアップ言語、または特定のクライアント−サーバ環境の技術的な複雑さに最小限の注意しか払わずに音声アプリケーションを作成し、展開することを可能にしながら、音声アプリケーション全体を構築することができる。
【００５２】
動作の際、本発明のアーキテクチャによるユーザとの対話の制御は、一般に、以下のとおり行われる。
【００５３】
１．ユーザがクライアントブラウザ４４０にアクセスし、特定の音声アプリケーションを選択することを、特定の電話番号をダイヤル呼出ししたことで、またはその音声アプリケーションにマップされる固有ユーザ身元証明を提供したことで選択する。
【００５４】
２．ブラウザ４４０が、サーバからドキュメントを取り出すことによってサーバコンピュータ４１０から（たとえば、アプリケーションサーバ４２５を介して）その選択されたアプリケーション４１５を要求する。
【００５５】
３．サーバアプリケーション４１５は、ＤＦＩ２２０上で適切なメソッドを呼び出して、対話の現行の状態に関連するオブジェクト（たとえば、プロンプト、応答、アクション等）を獲得する。マークアップ言語ジェネレータ４２０が、そのオブジェクトに関する適切なマークアップ言語ドキュメントの中に戻されるべき等価のマークアップ言語命令（たとえば、ブラウザ４４０がプロンプトを再生し、指定されたユーザ発話を聴取するようにさせる命令）を生成する。
【００５６】
４．変数（ＡＳＲによって決定された）として表現されたユーザ発話、およびその発話の意味が、ブラウザ４４０によって（たとえば、ＨＴＴＰ「ＰＯＳＴ」を介して）サーバアプリケーション４１５に送り返される。
【００５７】
５．サーバアプリケーション４１５が、発話に関連する変数を使用して音声アプリケーションのビジネス規則を実行し、ＤＦＩ２２０に対する適切なコール（たとえば、Ａｄｖａｎｃｅ＿Ｓｔａｔｅ（）３５０）を介して次の状態に遷移する。次の状態は、どのようなプロンプトを再生するか、何を聴取するかなどの情報を含むことが可能であり、この情報は、マークアップ言語ドキュメントの形態でブラウザに再び送り返される。次に、このプロセスが、基本的に繰り返される。
【００５８】
ＡＳＲが、発話から意味を抽出する備えがない実施形態では、ステップ４で、発話は、サーバアプリケーション４１５に送り返されることが可能であり、サーバアプリケーション４１５が、ＮＬＩ（たとえば、ＮＬＩ２２５）を呼び出して意味を抽出することができる。
【００５９】
以上のやり方で、アプリケーションが所望のタスクを行い終えるまで、状態が次から次へと実行される。
【００６０】
したがって、前述したアーキテクチャにより、サーバ４１０上でＤＦＩ２２０を使用して、音声アプリケーション対話を表わす基本的な情報（オフラインのサービス生成環境によって生成された）をデータファイル２１５から取得することが可能になることが理解されよう。ほとんどの解決策は、特定の技術にコミットすることに関わり、「ホスト側技術」が変更された場合、アプリケーションの完全な書換えを要するが、本発明の設計抽象化手法により、いずれの特定のプラットフォームへのコミットメントも最小限に抑えられる。本発明のシステムの下では、ユーザは、特定のマークアップ言語を習得する必要がなく、特定のクライアント−サーバモデル（たとえば、ＡＳＰ／ＩＩＳまたはＪＳＰ／サーブレット）の複雑さを学ぶ必要もない。
【００６１】
前述したアーキテクチャの利点には、ＪＳＰ／サーブレットやＡＳＰ／ＩＩＳなどの競合するインターネット技術「標準」間における移動の容易さが含まれる。さらなる利点は、前述したアーキテクチャにより、進化しているマークアップ言語標準（たとえば、ＶｏｉｃｅＸＭＬ）の変化からユーザおよびアプリケーション設計者が保護されることである。最後に、本明細書で開示した斬新なアーキテクチャにより、複数の送達プラットフォーム（たとえば、話し言葉のためのＶｏｉｃｅＸＭＬ）、ＷＡＰベースのセル電話アプリケーションのためのＷＭＬ、およびハンドヘルドデバイスのためのＷ３プラットフォームを提供する。
【００６２】
本発明のアーキテクチャは、ハードウェアまたはソフトウェアで、あるいはハードウェアとソフトウェアの組合せで実施することができる。ソフトウェアで実施された場合、プログラムコードは、プロセッサと、プロセッサが読み取ることができる記憶媒体（揮発性および不揮発性のメモリおよび／または記憶要素を含む）と、少なくとも１つの入力デバイスと、少なくとも１つの出力デバイスとをそれぞれが含むプログラマブルコンピュータ（たとえば、サーバ４１０およびクライアント４３５）上で実行される。プログラムコードが、入力デバイスを使用して入力されたデータに適用されて、前述した機能が行われ、出力情報が生成される。出力情報は、１つまたは複数の出力デバイスに適用される。そのようなプログラムコードは、好ましくは、高レベルの手続き言語、またはオブジェクト指向プログラミング言語で実装される。ただし、プログラムコードは、所望される場合、アセンブリ言語または機械語で実装することが可能である。いずれにしても、言語は、コンパイルされた言語、または解釈された言語であることが可能である。プログラムコードは、限定としてではなく、フロッピー（登録商標）ディスケット、ＣＤ−ＲＯＭ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、磁気テープ、フラッシュメモリ、ハードディスクドライブを含む磁気記憶媒体、電気記憶媒体、または光記憶媒体などのコンピュータ可読媒体上、あるいは任意の他のマシン可読媒体上に記憶されることが可能であり、プログラムコードが、コンピュータなどのマシンにロードされた際、そのマシンが、本発明を実施するための装置になる。また、プログラムコードは、電気配線またはケーブル配線を介して、光ファイバを介して、インターネットまたはイントラネットを含むネットワークを介して、または任意の他の伝送形態を介してなど、何らかの伝送媒体を介して伝送されることも可能であり、プログラムコードが受信され、コンピュータなどのマシンにロードされて、マシンによって実行された際、そのマシンが、本発明を実施するための装置になる。汎用コンピュータ上に実装される場合、プログラムコードは、プロセッサと組になって特定の論理回路と同様に動作する固有の装置を提供する。
【００６３】
以上の説明で、本発明は、アプリケーション開発者が、統合されたサービス生成環境において既存の音声アプリケーション開発ツールを使用して音声対応アプリケーションを設計し、ユーザとの音声アプリケーション対話が、特定のマークアップ言語でドキュメントを動的に生成すること、および適切なクライアントブラウザによってそのドキュメントをレンダリングすることを介して行われるクライアント−サーバ環境においてその音声アプリケーションを展開することができるようにする音声アプリケーションの開発および展開のための新しく有用なアーキテクチャを含むことを見て取ることができよう。実施形態の発明上の概念を逸脱することなく、前述した実施形態に変更を加えることが可能であることを理解されたい。したがって、本発明は、開示した特定の実施形態には限定されず、頭記の特許請求の範囲によって定義される本発明の趣旨および範囲に含まれるすべての変形形態を範囲に含むものとする。
【図面の簡単な説明】
【００６４】
【図１】クライアント−サーバ環境において音声対応ブラウザを使用する例示的な従来技術の環境を示すブロック図である。
【図２】一体型音声アプリケーションのための開発−展開環境を示すブロック図である。
【図３】図２に示した環境の対話フローインタプリタのさらなる詳細を示す図である。
【図４】本発明の一実施形態によるユーザとの対話を提供するクライアント−サーバ環境において使用するためのサーバを示すブロック図である。
【図５】音声アプリケーションの対話を誘導するように図２および３の対話フローインタプリタによって使用されるデータファイルの例を示す図である。
【図１】
2004530982.tif 000009
【図２】
2004530982.tif 000010
【図３】
2004530982.tif 000011
【図４】
2004530982.tif 000012
【図５】
2004530982.tif 000013
【国際公開パンフレット】
2004530982.tif 000014
2004530982.tif 000015
2004530982.tif 000016
2004530982.tif 000017
2004530982.tif 000018
2004530982.tif 000019
2004530982.tif 000020
2004530982.tif 000021
2004530982.tif 000022
2004530982.tif 000023
2004530982.tif 000024
2004530982.tif 000025
2004530982.tif 000026
2004530982.tif 000027
2004530982.tif 000028
2004530982.tif 000029
2004530982.tif 000030
2004530982.tif 000031
2004530982.tif 000032
2004530982.tif 000033
2004530982.tif 000034
2004530982.tif 000035
2004530982.tif 000036
2004530982.tif 000037
2004530982.tif 000038
2004530982.tif 000039
【国際調査報告】
2004530982.tif 000040