(57)【要約】１つ以上のプロセッサ及びメモリを有する電子機器は、複数のリンクを含む第１の文書を受信する。電子機器は第１の文書の少なくとも一部分の音声読み上げを出力し、複数のリンクのうちのリンクを特定する可聴情報を出力する。リンクを特定する可聴情報を出力することに応じて、電子機器はユーザからリンクに関する音声コマンドを受け取り、ユーザから音声コマンドを受け取ることに応じて、リンクに関連付けられる第２の文書の少なくとも一部分の音声読み上げを出力する。
2015528918.tif 000002
【特許請求の範囲】
【請求項１】
文書内をナビゲートする方法であって、
１つ以上のプロセッサ及びメモリを有する電子機器において、
複数のリンクを含む第１の文書を受信することと、
前記第１の文書の少なくとも一部分の音声読み上げを出力することと、
前記複数のリンクのうちのリンクを特定する可聴情報を出力することと、
前記リンクを特定する前記可聴情報を出力することに応じて、ユーザから前記リンクに関する音声コマンドを受け取ることと、
前記ユーザから前記音声コマンドを受け取ることに応じて、前記リンクに関連付けられる第２の文書の少なくとも一部分の音声読み上げを出力することと、
を含む、方法。
【請求項２】
前記リンクが、前記第１の文書の前記一部分内のテキストに関連付けられる、請求項１に記載の方法。
【請求項３】
前記ユーザから前記リンクに関する前記音声コマンドを受け取ることに応じて、前記リンクについての情報を記憶することと、
前記第２の文書の１つ以上の部分の音声読み上げを出力することと、
を含む、請求項１〜２のいずれか一項に記載の方法。
【請求項４】
前記第２の文書の少なくとも一部分の前記音声読み上げを出力することの後に、
前記ユーザから、前記第１の文書へ戻るナビゲーションを要求する音声コマンドを受け取ることと、
前記ユーザから、前記第１の文書へ戻るナビゲーションを要求する前記音声コマンドを受け取ることに応じて、前記第１の文書内の、前記リンクに関連付けられるテキストの後に続く前記第１の文書の１つ以上の部分の音声読み上げを出力することと、
を含む、請求項３に記載の方法。
【請求項５】
前記第２の文書の少なくとも一部分の前記音声読み上げを出力することの後に、前記第１の文書へナビゲートして戻ることについての音声問い合わせを出力することと、
前記第１の文書へナビゲートして戻ることについての前記音声問い合わせを出力することに応じて、前記ユーザから、前記第１の文書へ戻るナビゲーションを要求する音声コマンドを受け取ることと、
前記ユーザから、前記第１の文書へ戻るナビゲーションを要求する前記音声コマンドを受け取ることに応じて、前記第１の文書内の、前記リンクに関連付けられるテキストを含む前記第１の文書の１つ以上の部分の音声読み上げを出力することと、
を含む、請求項３に記載の方法。
【請求項６】
前記第２の文書の少なくとも一部分の前記音声読み上げを出力することの後に、前記ユーザから、前記第１の文書へ戻るナビゲーションを要求する前記音声コマンドを受け取ることに応じて、前記第１の文書内の、前記リンクに関連付けられるテキストの後に続く前記第１の文書の１つ以上の部分の音声読み上げを自動的に出力すること
を含む、請求項３に記載の方法。
【請求項７】
前記音声コマンドが第１の種類の音声コマンドであり、
前記ユーザから、前記リンクに関する、前記第１の種類とは別の第２の種類の音声コマンドを受け取ることと、
前記ユーザから前記リンクに関する前記第２の種類の前記音声コマンドを受け取ることに応じて、
前記第２の文書から情報を取得することと、及び
前記第２の文書からの前記情報に基づき前記第２の種類の前記音声コマンドに対応する音声情報を出力することと、
を含む、請求項１〜６のいずれか一項に記載の方法。
【請求項８】
前記第２の種類の前記音声コマンドが、前記第２の文書の作成者についての情報の要求を含む、請求項７に記載の方法。
【請求項９】
前記第２の種類の前記音声コマンドが、前記第２の文書の要約の要求を含む、請求項７〜８のいずれか一項に記載の方法。
【請求項１０】
前記ユーザからの音声コマンドに対応する候補リンクとして２つ以上のリンクを特定することと、
前記候補リンクについての可聴情報を出力することと、
前記ユーザから前記候補リンクのうちの単一のリンクの選択を受け取ることと、
を更に含む、請求項１〜９のいずれか一項に記載の方法。
【請求項１１】
文書のブラウジング方法であって、
１つ以上のプロセッサ及びメモリを有する電子機器において、
複数の部分を有する前記文書を受信することであって、前記部分のうちの少なくともいくつかはそれぞれのメタデータに関連付けられる、複数の部分を有する前記文書を受信することと、
前記文書のそれぞれの部分を前記それぞれのメタデータに基づき可聴的に区別することを含む、前記それぞれの部分の音声読み上げを出力することと、
ユーザから、特定のメタデータに関連付けられる特定の部分へのナビゲーションを要求する音声コマンドを受け取ることと、
前記音声コマンドを受け取ることに応じて、前記特定のメタデータに関連付けられる前記特定の部分の音声読み上げを出力することと、
を含む、方法。
【請求項１２】
前記文書内のテキストの第１の部分の音声読み上げを、第１の音声特性のセットを用いて前記ユーザへ出力することと、
前記文書内の前記テキストの第２の部分の音声読み上げを、前記第１の音声特性のセットとは別の第２の音声特性のセットを用いて前記ユーザへ出力することと、
によって、前記テキストの前記それぞれの部分の音声読み上げを前記それぞれの部分のそれぞれのスタイルに応じて前記ユーザへ出力することを更に含む、請求項１１に記載の方法。
【請求項１３】
前記文書の１つ以上の部分の前記音声読み上げを出力する間に、前記ユーザからの前記音声コマンドの少なくとも一部分を受け取ることを更に含む、請求項１１〜１２のいずれか一項に記載の方法。
【請求項１４】
前記文書の前記それぞれの部分のうちの少なくとも１つが、前記文書のそれぞれの段落である、請求項１１〜１３のいずれか一項に記載の方法。
【請求項１５】
前記文書の前記それぞれの部分のうちの少なくとも１つが、前記文書のそれぞれの見出しである、請求項１１〜１４のいずれか一項に記載の方法。
【請求項１６】
前記文書の前記それぞれの部分のうちの少なくとも１つが、前記文書のそれぞれの文である、請求項１１〜１５のいずれか一項に記載の方法。
【請求項１７】
前記文書の第１の部分が第１のスタイルを有し、前記文書の第２の部分が、前記第１のスタイルとは別の第２のスタイルを有する、請求項１１〜１６のいずれか一項に記載の方法。
【請求項１８】
前記文書の各部分が単一のリンクに関連付けられる、請求項１１〜１７のいずれか一項に記載の方法。
【請求項１９】
１つ以上の文書の特定方法であって、
１つ以上のプロセッサ及びメモリを有する電子機器において、
複数の文書のうちの文書の少なくとも一部分の音声読み上げを出力することと、
前記音声読み上げを出力する間に、ユーザから、特定の基準に該当する文書を要求する音声コマンドを受け取ることと、
前記ユーザから前記音声コマンドを受け取ることに応じて、
前記複数の文書のうち、前記特定の基準に該当する１つ以上の文書を特定することと、及び
前記１つ以上の特定された文書のそれぞれの文書の少なくとも一部分の音声読み上げを出力することと、
を含む、方法。
【請求項２０】
前記特定の基準は、前記１つ以上の特定された文書が、前記ユーザによって特定された１人以上の作成者によって作成されていることを必要とする、請求項１９に記載の方法。
【請求項２１】
前記特定の基準は、前記１つ以上の特定された文書が、特定の文書に関連付けられることを必要とする、請求項１９〜２０のいずれか一項に記載の方法。
【請求項２２】
前記特定の基準は、前記１つ以上の特定された文書が、特定の文書への返信であることを必要とする、請求項１９〜２１のいずれか一項に記載の方法。
【請求項２３】
前記特定の基準は、前記１つ以上の特定された文書が、それぞれの作成者からの最後のメッセージを含むことを必要とする、請求項１９〜２２のいずれか一項に記載の方法。
【請求項２４】
前記特定の基準は、前記１つ以上の特定された文書が、前記ユーザによって特定された特定の日付範囲に該当することを必要とする、請求項１９〜２３のいずれか一項に記載の方法。
【請求項２５】
前記１つ以上の特定された文書の数を指示する可聴情報を出力することを更に含む、請求項１９〜２４のいずれか一項に記載の方法。
【請求項２６】
前記それぞれの文書は前記１つ以上の特定された文書の最後の文書であることを指示する、可聴情報を出力することを更に含む、請求項１９〜２５のいずれか一項に記載の方法。
【請求項２７】
１つ以上のプロセッサと、
請求項１〜２６に記載の前記方法のいずれかを実行するための命令を含む、前記１つ以上のプロセッサにより実行されるための１つ以上のプログラムを記憶したメモリと、
を備える、ポータブル電子機器又はコンピュータシステム。
【請求項２８】
１つ以上のプログラムを記憶するコンピュータ可読記憶媒体であって、前記１つ以上のプログラムは、１つ以上のプロセッサを有するポータブル電子機器又はコンピュータシステムによって実行されると、前記機器に請求項１〜２６に記載の前記方法のうちのいずれかを実行させる命令を含む、コンピュータ可読記憶媒体。
【請求項２９】
ディスプレイ、メモリ、及び前記メモリ内に記憶された１つ以上のプログラムを実行するための１つ以上のプロセッサを有するポータブル電子機器又はコンピュータシステム上のグラフィカルユーザインターフェースであって、請求項１〜２６に記載の前記方法のいずれかに従って表示されるユーザインターフェース群を備える、グラフィカルユーザインターフェース。
【請求項３０】
請求項１〜２６に記載の前記方法のいずれかを実行するための手段を備える、ポータブル電子機器又はコンピュータシステム。
【請求項３１】
ポータブル電子機器又はコンピュータシステムにおいて用いるための情報処理装置であって、請求項１〜２６に記載の前記方法のいずれかを実行するための手段を備える、情報処理装置。
【請求項３２】
請求項１〜２６に記載の前記方法のいずれかを実行するように構成される処理ユニットを備える、ポータブル電子機器又はコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
開示されている諸実施形態は概してデジタルアシスタントシステムに関し、より具体的には、文書の音声作動式ナビゲーション及び文書のブラウジングを実行するデジタルアシスタントシステムに関する。
【背景技術】
【０００２】
人間の個人的なアシスタントとちょうど同じように、デジタルアシスタントシステムは、要求されたタスクを実行し、要求された助言、情報、又はサービスを提供することができる。デジタルアシスタントシステムのユーザの要求を達成する能力は、デジタルアシスタントシステムが、要求又は命令を正確に理解することに依存する。自然言語処理における近年の進歩は、ユーザが自然言語を使って口頭又はテキストの形式でデジタルアシスタントシステムと対話することを可能にした。このようなデジタルアシスタントシステムは、ユーザの入力を解釈してユーザの意図を推測し、推測された意図を実施可能なタスク及びパラメータに翻訳し、タスクを実行するべく動作を実行するか又はサービスをデプロイし、ユーザが理解できる出力を作成することができる。
【０００３】
このようなデジタルアシスタントシステムは、電子機器と対話するアクセシビリティが制約されているユーザを支援するように構成されることができる。例えば、低視力のユーザ及び盲目のユーザ等の視覚障害者、失読症のユーザ若しくは学習障害のある他のユーザ、又は、単に操作中に機器を見ずに機器を使いたい若しくは使う必要がある目が見えるユーザでさえも、ユーザに情報を読み上げるデジタルアシスタントシステムから利益を得られる。別の例では、タッチスクリーンを有する電子機器においては、何らかの指又は手の障害のある人々等の、運動技能に制約のある人々は、タッチスクリーン上でタッチジェスチャを実行することが、不可能ではないにしても、難しいと感じる場合がある。しかし、デジタルアシスタントシステムは音声コマンドを受け取ることができ、それによってタッチジェスチャの必要性を取り除く。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、文書のナビゲーション及びブラウジングは依然として、煩わしく非効率的なままであり、そのため、視覚障害及び／又は運動技能の制約のあるユーザには著しい認知的負担を生みだしている。
【課題を解決するための手段】
【０００５】
上述したように、視覚障害及び／又は運動技能の制約のあるユーザに、文書のナビゲーション及びブラウジングのための改善されたユーザインターフェースを提供するデジタルアシスタントシステムが必要とされている。これは、ユーザが効率的に文書内をナビゲートし、ブラウズすることを可能にする。
【０００６】
本明細書に開示されている諸実施形態は、文書の音声作動式ナビゲーション及びブラウジングを提供する方法、システム、及びコンピュータ可読記憶媒体を提供する。
【０００７】
いくつかの実施形態は、１つ以上のプロセッサ及びメモリを有する電子機器において実行される文書内のナビゲート方法を提供する。本方法は、複数のリンクを含む第１の文書を受信することと、第１の文書の少なくとも一部分の音声読み上げを出力することと、複数のリンクのうちのリンクを特定する可聴情報を出力することと、リンクを特定する可聴情報を出力することに応じて、ユーザからリンクに関する第１の種類の音声コマンドを受け取ることと、を含む。本方法はまた、ユーザから音声コマンドを受け取ることに応じて、リンクに関連付けられる第２の文書の少なくとも一部分の音声読み上げを出力することを含む。
【０００８】
いくつかの実施形態によれば、１つ以上のプロセッサ及びメモリを有する電子機器において実行される文書のブラウジング方法は、複数の部分を有する文書を受信することを含み、部分のうちの少なくともいくつかはそれぞれのメタデータに関連付けられる。本方法はまた、文書のそれぞれの部分の音声読み上げを出力することであって、それぞれの部分をそれぞれのメタデータに基づき可聴的に区別することを含む、文書のそれぞれの部分の音声読み上げを出力することを含む。本方法は、ユーザから特定のメタデータに関連付けられる特定の部分へのナビゲーションを要求する音声コマンドを受け取ることと、音声コマンドを受け取ることに応じて、特定のメタデータに関連付けられる特定の部分の音声読み上げを出力することと、を更に含む。
【０００９】
いくつかの実施形態によれば、１つ以上のプロセッサ及びメモリを有する電子機器において、実行される文書のセットを特定する方法が、複数の文書のうちの文書の少なくとも一部分の音声読み上げを出力することを含む。本方法はまた、音声読み上げを出力する間に、ユーザから特定の基準に該当する文書を要求する音声コマンドを受け取ることを含む。本方法は、ユーザから音声コマンドを受け取ることに応じて、複数の文書のうち、特定の基準に該当する１つ以上の文書を特定し、１つ以上の特定された文書のそれぞれの文書の少なくとも一部分の音声読み上げを出力することを更に含む。
【００１０】
いくつかの実施形態によれば、電子機器は、１つ以上のプロセッサと、この１つ以上のプロセッサにより実行されるための１つ以上のプログラムを記憶したメモリと、を含む。１つ以上のプログラムは、上述の方法のいずれかの操作を実行するための命令を含む。いくつかの実施形態によれば、ディスプレイ、メモリ、及びこのメモリ内に記憶された１つ以上のプログラムを実行するための１つ以上のプロセッサを有する電子機器上のグラフィカルユーザインターフェースは、上述の方法のいずれかに記載されているように、入力に応じて更新される、上述の方法のいずれかで表示される要素のうちの１つ以上を含む。いくつかの実施形態によれば、コンピュータ可読記憶媒体は、１つ以上のプロセッサ及びメモリを有する電子機器によって実行されると、機器に上述の方法のいずれかの操作を実行させる命令を内部に記憶する。いくつかの実施形態に係る、電子機器は、上記に述べた方法のいずれかの操作を実行するための手段を含む。いくつかの実施形態に係る、電子機器において使用するための情報処理装置は、上記に述べた方法のいずれかの操作を実行するための手段を含む。いくつかの実施形態によれば、電子機器は、上述の方法のいずれかの操作を実行するように構成される処理ユニットを含む。
【００１１】
いくつかの実施形態によれば、電子機器は、オーディオ入力を受け取るように構成されるオーディオ入力ユニットを含む。電子機器はまた、可聴情報を出力するように構成されるオーディオ出力ユニットを含む。電子機器は、オーディオ入力ユニット及びオーディオ出力ユニットに結合される処理ユニットを含む。処理ユニットは、複数のリンクを含む第１の文書を受信するように構成される。処理ユニットは、第１の文書の少なくとも一部分の音声読み上げを出力するように構成される。処理ユニットは、複数のリンクのうちのリンクを特定する可聴情報を出力するように構成される。処理ユニットは、リンクを特定する可聴情報を出力することに応じて、ユーザからリンクに関する音声コマンドを受け取るように構成される。処理ユニットは、ユーザから音声コマンドを受け取ることに応じてリンクに関連付けられる第２の文書の少なくとも一部分の音声読み上げを出力するように構成される。
【００１２】
いくつかの実施形態によれば、電子機器は、オーディオ入力を受け取るように構成されるオーディオ入力ユニットを含む。電子機器はまた、可聴情報を出力するように構成されるオーディオ出力ユニットを含む。電子機器は、オーディオ入力ユニット及びオーディオ出力ユニットに結合される処理ユニットを含む。処理ユニットは、複数の部分を有する文書を受信するように構成され、部分のうちの少なくともいくつかはそれぞれのメタデータに関連付けられる。処理ユニットは、文書のそれぞれの部分の音声読み上げであって、それぞれの部分をそれぞれのメタデータに基づき可聴的に区別することを含む、音声読み上げを出力するように構成される。処理ユニットは、ユーザから、特定のメタデータに関連付けられる特定の部分へのナビゲーションを要求する音声コマンドを受け取るように構成される。処理ユニットは、音声コマンドを受け取ることに応じて特定のメタデータに関連付けられる特定の部分の音声読み上げを出力するように構成される。
【００１３】
いくつかの実施形態によれば、電子機器は、オーディオ入力を受け取るように構成されるオーディオ入力ユニットを含む。電子機器はまた、可聴情報を出力するように構成されるオーディオ出力ユニットを含む。電子機器は、オーディオ入力ユニット及びオーディオ出力ユニットに結合される処理ユニットを含む。処理ユニットは、複数の文書のうちの文書の少なくとも一部分の音声読み上げを出力するように構成される。処理ユニットは、音声読み上げを出力している最中に、ユーザから、特定の基準に該当する文書を要求する音声コマンドを受け取るように構成される。処理ユニットは、ユーザから音声コマンドを受け取ることに応じて、複数の文書のうち、特定の基準に該当する１つ以上の文書を特定し、１つ以上の特定された文書のそれぞれの文書の少なくとも一部分の音声読み上げを出力するように構成される。
【００１４】
こうして、文書のナビゲーション及びブラウジングを可能にする新しい改善された方法を有するデジタルアシスタントシステムが提供され、それにより、アクセシビリティに制約のあるユーザのためのユーザインターフェースを改善する。このような方法及びシステムは既存の方法及びシステムを補完するか又はそれらに取って代わることができる。
【図面の簡単な説明】
【００１５】
【図１】いくつかの実施形態に係るデジタルアシスタントが動作する環境を示すブロック図である。
【図２】いくつかの実施形態に係るデジタルアシスタントクライアントシステムを示すブロック図である。
【図３】いくつかの実施形態に係る独立型デジタルアシスタントシステム又はデジタルアシスタントサーバシステムを示すブロック図である。
【図４Ａ】いくつかの実施形態に係る電子機器上に表示される例示的なユーザインターフェースを示す図である。
【図４Ｂ】いくつかの実施形態に係る電子機器上に表示される例示的なユーザインターフェースを示す図である。
【図４Ｃ】いくつかの実施形態に係る電子機器上に表示される例示的なユーザインターフェースを示す図である。
【図４Ｄ】いくつかの実施形態に係る電子機器上に表示される例示的なユーザインターフェースを示す図である。
【図４Ｅ】いくつかの実施形態に係る電子機器上に表示される例示的なユーザインターフェースを示す図である。
【図４Ｆ】いくつかの実施形態に係る電子機器上に表示される例示的なユーザインターフェースを示す図である。
【図４Ｇ】いくつかの実施形態に係る電子機器上に表示される例示的なユーザインターフェースを示す図である。
【図４Ｈ】いくつかの実施形態に係る電子機器上に表示される例示的なユーザインターフェースを示す図である。
【図４Ｉ】いくつかの実施形態に係る電子機器上に表示される例示的なユーザインターフェースを示す図である。
【図４Ｊ】いくつかの実施形態に係る電子機器上に表示される例示的なユーザインターフェースを示す図である。
【図４Ｋ】いくつかの実施形態に係る電子機器上に表示される例示的なユーザインターフェースを示す図である。
【図４Ｌ】いくつかの実施形態に係る電子機器上に表示される例示的なユーザインターフェースを示す図である。
【図４Ｍ】いくつかの実施形態に係る電子機器上に表示される例示的なユーザインターフェースを示す図である。
【図４Ｎ】いくつかの実施形態に係る電子機器上に表示される例示的なユーザインターフェースを示す図である。
【図５】いくつかの実施形態に係る電子機器によって実行される文書内をナビゲートするための操作を示すフローチャートである。
【図６】いくつかの実施形態に係る電子機器によって実行される文書をブラウズするための操作を示すフローチャートである。
【図７】いくつかの実施形態に係る電子機器によって実行される文書のセットを特定するための操作を示すフローチャートである。
【図８】いくつかの実施形態に係る電子機器の機能ブロック図である。
【図９】いくつかの実施形態に係る電子機器の機能ブロック図である。
【図１０】いくつかの実施形態に係る電子機器の機能ブロック図である。
【発明を実施するための形態】
【００１６】
同様の参照番号は、図面を通して対応する部分を指す。
【００１７】
図１は、いくつかの実施形態に係るデジタルアシスタントの動作環境１００のブロック図である。用語「デジタルアシスタント」、「仮想アシスタント」、「インテリジェント自動アシスタント」、又は「自動デジタルアシスタント」は、口頭及び／又はテキスト形式の自然言語入力を解釈してユーザ意図を推測し（例えば、自然言語入力に対応するタスクの種類を特定し）、推測されたユーザ意図に基づき動作を実行する（例えば、特定されたタスクの種類に対応するタスクを実行する）あらゆる情報処理システムを指す。例えば、推測されたユーザ意図に基づいて動作するために、システムは、以下のことのうちの１つ以上を実行することができる：推測されたユーザ意図を果たすように設計されたステップ及びパラメータを有するタスクフローを特定すること（例えば、タスクの種類を特定すること）、推測されたユーザ意図からの特定の要求事項をタスクフロー内に入力すること、プログラム、方法、サービス、ＡＰＩ、若しくは同様のものを呼び出すことによってタスクフローを実行すること（例えば、サービスプロバイダに要求を送信すること）、並びに可聴（例えば、発語）及び／又は視覚形式のユーザへの出力応答を生成すること。
【００１８】
具体的には、デジタルアシスタントシステムは、少なくとも部分的には自然言語のコマンド、要求、ステートメント、注釈、及び／又は問い合わせの形態でユーザ要求を受け入れる能力を有する。通例、ユーザ要求はデジタルアシスタントシステムによる情報回答又はタスクの実行のいずれかを求める。一般的に、ユーザ要求への満足な応答は、要求された情報回答の提供、要求されたタスクの実行のいずれか、又はその２つの組み合わせとなる。例えば、ユーザはデジタルアシスタントシステムに「私は今どこにいますか？」等の質問をする場合がある。ユーザの現在のロケーションに基づき、デジタルアシスタントは、「あなたはセントラルパーク内の西門の近くにいます」と回答する場合がある。ユーザは、例えば、「私の友人を、来週の私のガールフレンドの誕生日パーティに招待して下さい」と述べることによって、タスク実行を要求する場合もある。それに応じて、デジタルアシスタントは、音声出力、「はい、ただ今」を生成することによって要求を了解し、次に、ユーザの電子メールアドレスから、ユーザの電子アドレス帳に載っているユーザの友人の各々に適切なカレンダー招待状を送信してもよい。情報又は種々のタスクの実行を要求するためにデジタルアシスタントと対話する方法は他にも数多く存在する。言葉による応答を提供し、プログラムされた動作を取ることに加えて、デジタルアシスタントは他の視覚又はオーディオ形式の応答を（例えば、テキスト、警報、音楽、ビデオ、アニメーション等として）提供することもできる。
【００１９】
図１に示されているように、いくつかの実施形態では、デジタルアシスタントシステムはクライアント−サーバモデルに従って実施される。デジタルアシスタントシステムは、ユーザ機器（例えば、１０４ａ及び１０４ｂ）上で実行されるクライアント側部分（例えば、１０２ａ及び１０２ｂ）（以後、「デジタルアシスタント（ＤＡ（digital assistant））クライアント１０２」）、並びにサーバシステム１０８上で実行されるサーバ側部分１０６（以後「デジタルアシスタント（ＤＡ）サーバ１０６」）を含む。ＤＡクライアント１０２は１つ以上のネットワーク１１０を通じてＤＡサーバ１０６と通信する。ＤＡクライアント１０２は、ユーザ対応入力及び出力処理、並びにＤＡサーバ１０６との通信等のクライアント側機能性を提供する。ＤＡサーバ１０６は、それぞれのユーザ機器１０４（クライアント機器とも呼ばれる）上に各々常駐する任意の数のＤＡクライアント１０２のためのサーバ側機能性を提供する。
【００２０】
いくつかの実施形態では、ＤＡサーバ１０６は、クライアント対応Ｉ／Ｏインターフェース１１２、１つ以上の処理モジュール１１４、データ及びモデル１１６、並びに外部サービスへのＩ／Ｏインターフェース１１８を含む。クライアント対応Ｉ／Ｏインターフェースはデジタルアシスタントサーバ１０６のためのクライアント対応入力及び出力処理を促進する。１つ以上の処理モジュール１１４はデータ及びモデル１１６を利用し、自然言語入力に基づきユーザの意図を判定し、推測されたユーザ意図に基づきタスク実行を実行する。
【００２１】
いくつかの実施形態では、ＤＡサーバ１０６は、タスク完了又は情報取得のためにネットワーク（単数又は複数）１１０を通じて外部サービス（例えば、ナビゲーションサービス（単数又は複数）、メッセージングサービス（単数又は複数）、情報サービス（単数又は複数）、カレンダーサービス、電話サービス等）と通信する。外部サービスへのＩ／Ｏインターフェース１１８はこのような通信を促進する。
【００２２】
ユーザ機器１０４の例としては、限定するものではないが、ハンドヘルドコンピュータ、無線携帯情報端末（personal digital assistant、ＰＤＡ）、タブレットコンピュータ、ラップトップコンピュータ、デスクトップコンピュータ、セルラー電話、スマートフォン、拡張型汎用パケット無線サービス（enhanced general packet radio service、ＥＧＰＲＳ）携帯電話、メディアプレーヤ、ナビゲーション機器、ゲームコンソール、テレビ、遠隔制御装置、又はこれらのデータ処理機器のうちの任意の２つ以上の組み合わせ、あるいは任意の他の好適なデータ処理機器が挙げられる。ユーザ機器１０４に関する更なる詳細が、図２に示される例示的なユーザ機器１０４に関して提供されている。
【００２３】
通信ネットワーク（単数又は複数）１１０の例としては、ローカルエリアネットワーク（local area network、「ＬＡＮ」）及びワイドエリアネットワーク（wide area network、「ＷＡＮ」）、例えば、インターネット、が挙げられる。通信ネットワーク（単数又は複数）１１０は、イーサネット（登録商標）、ユニバーサルシリアルバス（Universal Serial Bus、ＵＳＢ）、ファイヤワイヤ（登録商標）、移動通信用のグローバルシステム（Global System for Mobile Communications、ＧＳＭ）、拡張データＧＳＭ環境（Enhanced Data GSM Environment、ＥＤＧＥ）、符号分割多元接続（code division multiple access、ＣＤＭＡ）、時分割多元接続（time division multiple access、ＴＤＭＡ）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｗｉ−Ｆｉ（登録商標）、ボイス・オーバー・インターネット・プロトコル（voice over Internet Protocol、ＶｏＩＰ）、Ｗｉ−ＭＡＸ（登録商標）、又は任意の他の好適な通信プロトコル等の、種々の有線若しくは無線プロトコルを含む、任意の周知のネットワークプロトコルを用いて実施されてよい。
【００２４】
サーバシステム１０８は少なくとも１つのデータ処理装置、及び／又はコンピュータの分散型ネットワーク上に実施することができる。
【００２５】
図１に示されるデジタルアシスタントシステムは、クライアント側部分（例えば、ＤＡクライアント１０２）及びサーバ側部分（例えば、ＤＡサーバ１０６）の両方を含むが、いくつかの実施形態では、デジタルアシスタントシステムはサーバ側部分（例えば、ＤＡサーバ１０６）のみを指す。代替的に、いくつかの実施形態では、デジタルアシスタントの機能は、ユーザ機器上にインストールされる独立型アプリケーションとして実施することができる。加えて、デジタルアシスタントのクライアント部分とサーバ部分との間の機能性の分配は実施形態よって異なり得る。例えば、いくつかの実施形態では、ＤＡクライアント１０２は、ユーザ対応入力及び出力処理機能のみを提供し、デジタルアシスタントの全ての他の機能性をＤＡサーバ１０６に委ねるシン・クライアントである。いくつかの他の実施形態では、ＤＡクライアント１０２は、ＤＡサーバ１０６の１つ以上の機能を実行する又は支援するように構成される。
【００２６】
図１はまた、ウェブサーバ１２０（例えば、ウェブサーバ１（１２２−１）、ウェブサーバ２（１２２−２）、ウェブサーバ３（１２２−３）、等）も示している。１つ以上のウェブサーバ１２０はデジタルアシスタントシステムの一部ではないが、サーバシステム１０８及び／又はユーザ機器（単数又は複数）１０４は、１つ以上の文書、及び／又は１つ以上の文書に関連付けられる情報を取得するためにウェブサーバ１２０の１つ以上と通信してもよい。
【００２７】
図２は、いくつかの実施形態に係るユーザ機器１０４のブロック図である。ユーザ機器１０４は、メモリインターフェース２０２、１つ以上のプロセッサ２０４、及び周辺装置インターフェース２０６を含む。ユーザ機器１０４内の種々の構成要素は１つ以上の通信バス又は信号線によって結合される。ユーザ機器１０４は、周辺装置インターフェース２０６に結合される種々のセンサ、サブシステム、及び周辺機器を含む。センサ、サブシステム、及び周辺機器は情報を収集し、及び／又はユーザ機器１０４の種々の機能性を促進する。
【００２８】
例えば、いくつかの実施形態では、配向、光、及び近接検知機能を促進するために、動きセンサ２１０、光センサ２１２、及び近接センサ２１４が周辺装置インターフェース２０６に結合される。いくつかの実施形態では、関連機能性を促進するために、測位システム（例えば、ＧＰＳ受信機）、温度センサ、生体測定センサ、及び同様のもの等の、その他のセンサ２１６が周辺装置インターフェース２０６に接続される。
【００２９】
いくつかの実施形態では、ユーザ機器１０４は、周辺装置インターフェース２０６に結合されるカメラサブシステム２２０を含む。いくつかの実施形態では、カメラサブシステム２２０の光学センサ２２２が、写真の撮影及びビデオクリップの録画等の、カメラ機能を促進する。いくつかの実施形態では、ユーザ機器１０４は、１つ以上の有線及び／又は無線通信サブシステム２２４を含む、通信機能を提供する。通信サブシステム２２４は通例、種々の通信ポート、無線周波数受信機及び伝送機、並びに／又は光（例えば、赤外線）受信機及び伝送機を含む。いくつかの実施形態では、ユーザ機器１０４は、音声認識、音声応答、デジタル録音、及び電話機能等の、音声使用可能機能を促進するために、１つ以上のスピーカ２２８及び１つ以上のマイクロフォン２３０に結合されるオーディオサブシステム２２６を含む。
【００３０】
いくつかの実施形態では、Ｉ／Ｏサブシステム２４０も周辺インターフェース２０６に結合される。いくつかの実施形態では、ユーザ機器１０４はタッチスクリーン２４６を含み、Ｉ／Ｏサブシステム２４０は、タッチスクリーン２４６に結合されるタッチスクリーンコントローラ２４２を含む。ユーザ機器１０４がタッチスクリーン２４６及びタッチスクリーンコントローラ２４２を含む場合には、タッチスクリーン２４６及びタッチスクリーンコントローラ２４２は通例、例えば、容量性、抵抗性、赤外線、表面超音波技術、近接センサアレイ、及び同様のもの等の、複数のタッチ感知技術の任意のものを用いて接触及び移動又はその中断を検出するように構成される。いくつかの実施形態では、ユーザ機器１０４は、タッチ感知面を含まないディスプレイを含む。いくつかの実施形態では、ユーザ機器１０４は、分離したタッチ感知面を含む。いくつかの実施形態では、ユーザ機器１０４はその他の入力コントローラ（単数又は複数）２４４を含む。ユーザ機器１０４がその他の入力コントローラ（単数又は複数）２４４を含む場合には、その他の入力コントローラ（単数又は複数）２４４は通例、１つ以上のボタン、ロッカスイッチ、サムホイール、赤外線ポート、ＵＳＢポート、及び／又はスタイラス等のポインタ機器等の、その他の入力／制御機器２４８に結合される。
【００３１】
メモリインターフェース２０２はメモリ２５０に結合される。いくつかの実施形態では、メモリ２５０は、高速ランダムアクセスメモリ並びに／又は不揮発性メモリ（例えば、１つ以上の磁気ディスク記憶装置、１つ以上のフラッシュメモリ装置、１つ以上の光学記憶装置、及び／若しくはその他の不揮発性固体メモリ装置）等の、永続的コンピュータ可読媒体を含む。
【００３２】
いくつかの実施形態では、メモリ２５０は、オペレーティングシステム２５２、通信モジュール２５４、グラフィカルユーザインターフェースモジュール２５６、センサ処理モジュール２５８、電話モジュール２６０、及びアプリケーション２６２、並びにそれらのサブセット若しくはスーパーセットを記憶する。オペレーティングシステム２５２は、基本システムサービスを処理するための命令、及びハードウェア依存タスクを実行するための命令を含む。通信モジュール２５４は、１つ以上の追加機器、１つ以上のコンピュータ及び／又は１つ以上のサーバとの通信を促進する。グラフィカルユーザインターフェースモジュール２５６はグラフィックユーザインターフェース処理を促進する。センサ処理モジュール２５８はセンサ関連の処理及び機能（例えば、１つ以上のマイクロフォン２２８を用いて受け取られた音声入力の処理）を促進する。電話モジュール２６０は電話関連のプロセス及び機能を促進する。アプリケーションモジュール２６２は、電子メッセージング、ウェブブラウジング、メディア処理、ナビゲーション、イメージング及び／又はその他のプロセス及び機能等の、ユーザアプリケーションの種々の機能性を促進する。いくつかの実施形態では、アプリケーションモジュール２６２はウェブブラウザアプリケーション２７０を含むか、又はそれと対話する。いくつかの実施形態では、アプリケーションモジュール２６２は電子メッセージングアプリケーションを含むか、又はそれと対話する。
【００３３】
上述したように、いくつかの実施形態では、メモリ２５０はまた、デジタルアシスタントのクライアント側機能性を提供するために、（例えば、デジタルアシスタントクライアントモジュール２６４内の）クライアント側デジタルアシスタント命令、並びに種々のユーザデータ２６６（例えば、ユーザ固有の語彙データ、設定データ、及び／若しくはユーザの電子アドレス帳、ｔｏ−ｄｏリスト、買い物リストなど等のその他のデータ）も記憶する。
【００３４】
種々の実施形態では、デジタルアシスタントクライアントモジュール２６４は、ユーザ機器１０４の種々のユーザインターフェース（例えば、Ｉ／Ｏサブシステム２４４）を通じて音声入力、テキスト入力、タッチ入力、及び／又はジェスチャ入力を受け入れる能力を有する。デジタルアシスタントクライアントモジュール２６４はまた、オーディオ、視覚、及び／又は触覚形態の出力を提供する能力も有する。例えば、出力は、音声、音響、警報、テキストメッセージ、メニュー、グラフィック、ビデオ、アニメーション、振動、及び／又は上記のもののうちの２つ以上の組み合わせとして提供することができる。動作時、デジタルアシスタントクライアントモジュール２６４は、通信サブシステム２２４を用いてデジタルアシスタントサーバ（例えば、デジタルアシスタントサーバ１０６、図１）と通信する。
【００３５】
いくつかの実施形態では、デジタルアシスタントクライアントモジュール２６４は、ユーザ入力に関連付けられるコンテクストを確立するために、種々のセンサ、サブシステム及び周辺機器を利用してユーザ機器１０４の周囲環境から追加情報を収集する。いくつかの実施形態では、デジタルアシスタントクライアントモジュール２６４は、ユーザの意図の推測を助けるために、ユーザ入力とともにコンテクスト情報又はそのサブセットをデジタルアシスタントサーバ（例えば、デジタルアシスタントサーバ１０６、図１）に提供する。
【００３６】
いくつかの実施形態では、ユーザ入力に付随し得るコンテクスト情報は、センサ情報、例えば、照明、環境ノイズ、周囲温度、周囲環境の画像又はビデオ、等を含む。いくつかの実施形態では、コンテクスト情報はまた、機器の物理的状態、例えば、機器配向、機器ロケーション、機器温度、電力レベル、速度、加速度、運動パターン、セルラー信号強度、等も含む。いくつかの実施形態では、ユーザ機器１０６のソフトウェア状態に関する情報、例えば、ユーザ機器１０４の実行中のプロセス、インストールされているプログラム、過去及び現在のネットワーク活動、バックグラウンドサービス、誤りログ、資源使用状況等も、ユーザ入力に関連付けられるコンテクスト情報としてデジタルアシスタントサーバ（例えば、デジタルアシスタントサーバ１０６、図１）に提供される。
【００３７】
いくつかの実施形態では、ＤＡクライアントモジュール２６４は、デジタルアシスタントサーバからの要求に応じてユーザ機器１０４上に記憶されている情報（例えば、ユーザデータ２６６の少なくとも一部）を選択的に提供する。いくつかの実施形態では、デジタルアシスタントクライアントモジュール２６４はまた、デジタルアシスタントサーバ１０６（図１）による要求に応じて自然言語ダイアログ又はその他のユーザインターフェースを介してユーザから追加入力も引き出す。デジタルアシスタントクライアントモジュール２６４は、意図推測及び／又はユーザ要求内に表されているユーザの意図の達成においてデジタルアシスタントサーバ１０６を助けるために、追加入力をデジタルアシスタントサーバ１０６に渡す。
【００３８】
いくつかの実施形態では、メモリ２５０は追加の命令又はより少数の命令を含んでもよい。更に、ユーザ機器１０４の種々の機能は、１つ以上の信号処理及び／又は特定用途向け集積回路の形態を含む、ハードウェアの形態及び／又はファームウェアの形態で実施されてもよく、それゆえ、ユーザ機器１０４は、図２に示されている全てのモジュール及びアプリケーションを含む必要はない。例えば、いくつかの実施形態では、ユーザ機器１０４はタッチスクリーン２４６を含まない。
【００３９】
図３は、いくつかの実施形態に係る例示的なデジタルアシスタントシステム３００のブロック図である。いくつかの実施形態では、デジタルアシスタントシステム３００は独立型コンピュータシステム上に実施される。いくつかの実施形態では、デジタルアシスタントシステム３００は複数のコンピュータにわたって分散される。いくつかの実施形態では、デジタルアシスタントのモジュール及び機能のいくつかはサーバ部分及びクライアント部分に分割される。この場合には、クライアント部分はユーザ機器（例えば、ユーザ機器１０４）上に常駐し、例えば、図１に示されているように、１つ以上のネットワークを通じてサーバ部分（例えば、サーバシステム１０８）と通信する。いくつかの実施形態では、デジタルアシスタントシステム３００は、図１に示されるサーバシステム１０８（及び／又はデジタルアシスタントサーバ１０６）の一実施形態である。いくつかの実施形態では、デジタルアシスタントシステム３００はユーザ機器（例えば、ユーザ機器１０４、図１）内に実施され、それにより、クライアント−サーバシステムの必要性を取り除いている。デジタルアシスタントシステム３００はデジタルアシスタントシステムの単なる一例にすぎず、デジタルアシスタントシステム３００は、図示されているよりも多数若しくは少数の構成要素を有してもよく、２つ以上の構成要素を組み合わせてもよく、又は構成要素の異なる構成若しくは配置を有してもよいことに留意されたい。図３に示される種々の構成要素は、１つ以上の信号処理及び／若しくは特定用途向け集積回路を含む、ハードウェア、ソフトウェア、ファームウェア、又はそれらの組み合わせの形態で実施されてもよい。
【００４０】
デジタルアシスタントシステム３００は、メモリ３０２、１つ以上のプロセッサ３０４、入力／出力（Ｉ／Ｏ）インターフェース３０６、及びネットワーク通信インターフェース３０８を含む。これらの構成要素は１本以上の通信バス又は信号線３１０を通じて互いに通信する。
【００４１】
いくつかの実施形態では、メモリ３０２は、高速ランダムアクセスメモリ並びに／又は不揮発性コンピュータ可読記憶媒体（例えば、１つ以上の磁気ディスク記憶装置、１つ以上のフラッシュメモリ装置、１つ以上の光学記憶装置、及び／若しくはその他の不揮発性固体メモリ装置）等の、永続的コンピュータ可読媒体を含む。
【００４２】
Ｉ／Ｏインターフェース３０６は、ディスプレイ、キーボード、タッチスクリーン、及びマイクロフォン等の、デジタルアシスタントシステム３００の入力／出力機器３１６をユーザインターフェースモジュール３２２に結合する。Ｉ／Ｏインターフェース３０６は、ユーザインターフェースモジュール３２２と協働して、ユーザ入力（例えば、音声入力、キーボード入力、タッチ入力等）を受け取り、それらを適宜に処理する。いくつかの実施形態では、デジタルアシスタントが独立型ユーザ機器上に実施される場合には、デジタルアシスタントシステム３００は、図２におけるユーザ機器１０４に関して説明されている構成要素並びにＩ／Ｏ及び通信インターフェースの任意のもの（例えば、１つ以上のマイクロフォン２２８）を含む。いくつかの実施形態では、デジタルアシスタントシステム３００はデジタルアシスタント実施のサーバ部分を表し、ユーザ機器（例えば、図２に示されるユーザ機器１０４）上に常駐するクライアント側部分を通じてユーザと対話する。
【００４３】
いくつかの実施形態では、ネットワーク通信インターフェース３０８は有線通信ポート（単数又は複数）３１２並びに／又は無線伝送及び受信回路機構３１４を含む。有線通信ポート（単数又は複数）は、１つ以上の有線インターフェース、例えば、イーサネット（登録商標）、ユニバーサルシリアルバス（ＵＳＢ）、ファイヤワイヤ（登録商標）等を介して通信信号を受信及び送信する。無線回路機構３１４は通例、通信ネットワーク及びその他の通信機器から／へＲＦ信号及び／又は光信号を受信及び送信する。無線通信は、ＧＳＭ、ＥＤＧＥ、ＣＤＭＡ、ＴＤＭＡ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｗｉ−Ｆｉ（登録商標）、ＶｏＩＰ、Ｗｉ−ＭＡＸ（登録商標）、あるいは任意のその他の好適な通信プロトコル等の、複数の通信規格、プロトコル及び技術の任意のものを用いてよい。ネットワーク通信インターフェース３０８は、デジタルアシスタントシステム３００と、インターネット、セルラー電話ネットワーク、無線ローカルエリアネットワーク（ＬＡＮ）及び／若しくはメトロポリタンエリアネットワーク（metropolitan area network、ＭＡＮ）等のイントラネット及び／若しくは無線ネットワーク等の、ネットワーク、並びに他の機器との間の通信を可能にする。
【００４４】
いくつかの実施形態では、メモリ３０２の永続的コンピュータ可読記憶媒体は、オペレーティングシステム３１８、通信モジュール３２０、ユーザインターフェースモジュール３２２、１つ以上のアプリケーション３２４、及びデジタルアシスタントモジュール３２６の全て又はサブセットを含むプログラム、モジュール、命令、及びデータ構造を記憶する。１つ以上のプロセッサ３０４はこれらのプログラム、モジュール、命令、及びデータ構造から／へと、読み出し／書き込みを実行する。
【００４５】
オペレーティングシステム３１８（例えば、Ｄａｒｗｉｎ、ＲＴＸＣ、ＬＩＮＵＸ、ＵＮＩＸ、ＯＳ  Ｘ、ウィンドウズ（登録商標）、又はＶｘＷｏｒｋｓ等の組み込みオペレーティングシステム）は、一般システムタスク（例えば、メモリ管理、記憶装置制御、電力管理等）を制御及び管理するための種々のソフトウェア構成要素及び／又はドライバを含み、種々のハードウェア、ファームウェア、及びソフトウェア構成要素の間の通信を促進する。
【００４６】
通信モジュール３２０は、ネットワーク通信インターフェース３０８を通じたデジタルアシスタントシステム３００とその他の機器との間の通信を促進する。例えば、通信モジュール３２０は、図２に示される機器１０４の通信モジュール２５４と通信してもよい。通信モジュール３２０はまた、無線回路機構３１４及び／又は有線通信ポート３１２によって受信されたデータを処理するための種々のソフトウェア構成要素も含む。
【００４７】
いくつかの実施形態では、ユーザインターフェースモジュール３２２はＩ／Ｏインターフェース３０６を介して（例えば、キーボード、タッチスクリーン、及び／又はマイクロフォンから）ユーザからのコマンド及び／又は入力を受け取り、ディスプレイ上にユーザインターフェースオブジェクトを提供する。
【００４８】
アプリケーション３２４は、１つ以上のプロセッサ３０４によって実行されるように構成されるプログラム及び／又はモジュールを含む。例えば、デジタルアシスタントシステムが独立型ユーザ機器上に実施される場合には、アプリケーション３２４は、ゲーム、カレンダーアプリケーション、ナビゲーションアプリケーション、ウェブブラウザアプリケーション、又は電子メールアプリケーション等の、ユーザアプリケーションを含んでもよい。デジタルアシスタントシステム３００がサーバファーム上に実施される場合には、アプリケーション３２４は、例えば、資源管理アプリケーション、診断アプリケーション、又はスケジューリングアプリケーションを含んでもよい。
【００４９】
メモリ３０２はまた、デジタルアシスタントモジュール（又はデジタルアシスタントのサーバ部分）３２６も記憶する。いくつかの実施形態では、デジタルアシスタントモジュール３２６は、以下のサブモジュール、又はそれらのサブセット若しくはスーパーセットを含む：入力／出力処理モジュール３２８、発語テキスト化（speech−to−text、ＳＴＴ）処理モジュール３３０、自然言語処理モジュール３３２、ダイアログフロー処理モジュール３３４、タスクフロー処理モジュール３３６、及びサービス処理モジュール３３８。これらの処理モジュールの各々は、デジタルアシスタント３２６の以下のデータ及びモデルのうちの１つ以上、又はそれらのサブセット若しくはスーパーセットへのアクセスを有する：オントロジ３６０、語彙索引３４４、ユーザデータ３４８、タスクフローモデル３５４、及びサービスモデル３５６。
【００５０】
いくつかの実施形態では、デジタルアシスタントモジュール３２６内に実施された処理モジュール（例えば、入力／出力処理モジュール３２８、ＳＴＴ処理モジュール３３０、自然言語処理モジュール３３２、ダイアログフロー処理モジュール３３４、タスクフロー処理モジュール３３６、及び／若しくはサービス処理モジュール３３８）、データ、並びにモデルを用いて、デジタルアシスタントシステム３００は以下のもののうちの少なくともいくつかを実行する：ユーザから受け取られた自然言語入力内に表現されているユーザの意図を特定すること、（例えば、単語、名前、意志等の曖昧さを除去することによって）ユーザの意図を完全に推測するために必要な情報を能動的に引き出して入手すること、推測された意図を達成するためのタスクフローを決定すること、及び推測された意図を達成するためにタスクフローを実行すること。いくつかの実施形態では、デジタルアシスタントはまた、種々の理由で満足な応答がユーザに提供されないか、又は提供できなかった場合に、適切な対応を取る。
【００５１】
いくつかの実施形態では、Ｉ／Ｏ処理モジュール３２８は、ユーザ入力（例えば、発語入力）を入手するため、及びユーザ入力への応答を提供するために、Ｉ／Ｏ機器３１６を通じてユーザと対話するか、又はネットワーク通信インターフェース３０８を通じてユーザ機器（例えば、図１におけるユーザ機器１０４）と対話する。Ｉ／Ｏ処理モジュール３２８は、ユーザ入力とともに、又はその受け取りの直後に、ユーザ入力に関連付けられるコンテクスト情報をユーザ機器から任意追加的に入手する。コンテクスト情報は、ユーザ入力に関連するユーザ固有のデータ、語彙、及び／又は設定を含む。いくつかの実施形態では、コンテクスト情報はまた、ユーザ要求が受け取られる時点における機器（例えば、図１におけるユーザ機器１０４）のソフトウェア及びハードウェア状態、並びに／又はユーザ要求が受け取られた時点におけるユーザの周囲環境に関する情報も含む。いくつかの実施形態では、Ｉ／Ｏ処理モジュール３２８はまた、ユーザ要求について、ユーザに補足質問を送信し、ユーザから回答を受け取る。いくつかの実施形態では、ユーザ要求がＩ／Ｏ処理モジュール３２８によって受け取られ、ユーザ要求が発語入力を包含する場合には、Ｉ／Ｏ処理モジュール３２８は発語入力を発語テキスト化変換のために発語テキスト化（ＳＴＴ）処理モジュール３３０へ転送する。
【００５２】
いくつかの実施形態では、発語テキスト化処理モジュール３３０は、Ｉ／Ｏ処理モジュール３２８を通じて発語入力（例えば、音声記録内にキャプチャされたユーザ発言）を受け取る。いくつかの実施形態では、発語テキスト化処理モジュール３３０は、発語入力を、音素の列、並びに最終的には、１つ以上の言語で書かれた単語若しくはトークンの列として認識するために、種々の音響モデル及び言語モデルを用いる。発語テキスト化処理モジュール３３０は、隠れマルコフモデル、動的タイムワーピング（Dynamic Time Warping、ＤＴＷ）ベースの発語認識、並びにその他の統計的及び／若しくは解析的技法等の、任意の好適な発語認識技法、音響モデル、及び言語モデルを用いて実施される。いくつかの実施形態では、発語テキスト化処理は、サードパーティサービスによって、又はユーザの機器上で少なくとも部分的に実行され得る。発語テキスト化処理モジュール３３０が発語テキスト化処理（例えば、単語又はトークンの列）の結果を入手すると、それは結果を意図の推測のために自然言語処理モジュール３３２へ渡す。
【００５３】
デジタルアシスタント３２６の自然言語処理モジュール３３２（「自然言語プロセッサ」）は、発語テキスト化処理モジュール３３０によって生成された単語又はトークンの列（「トークン列」）を獲得し、トークン列を、デジタルアシスタントによって認識される１つ以上の「実施可能な意図」に関連付けようと試みる。本明細書で使用するとき、「実施可能な意図」は、デジタルアシスタント３２６及び／又はデジタルアシスタントシステム３００によって実行されることができ、タスクフローモデル３５４内に実施される、関連付けられたタスクフローを有するタスクを表す。関連付けられたタスクフローは、タスクを実行するためにデジタルアシスタントシステム３００が取る一連のプログラムされた動作及びステップである。デジタルアシスタントシステムの能力の範囲は、タスクフローモデル３５４内に実施され、記憶されているタスクフローの数及び種類に依存し、又は、換言すれば、デジタルアシスタントシステム３００が認識する「実施可能な意図」の数及び種類に依存する。ただし、デジタルアシスタントシステム３００の有効性はまた、自然言語で表現されたユーザ要求から正確な「実施可能な意図（単数又は複数）」を推測するデジタルアシスタントシステムの能力にも依存する。
【００５４】
いくつかの実施形態では、発語テキスト化処理モジュール３３０から入手される単語又はトークンの列に加えて、自然言語プロセッサ３３２はまた、ユーザ要求に関連付けられるコンテクスト情報も（例えば、Ｉ／Ｏ処理モジュール３２８から）受け取る。自然言語プロセッサ３３２は、発語テキスト化処理モジュール３３０から受け取られたトークン列内に包含されている情報を明らかにし、補完し、及び／又は更に明確にするために、コンテクスト情報を任意追加的に用いる。コンテクスト情報は、例えば、ユーザ設定、ユーザ機器のハードウェア及び／又はソフトウェア状態、ユーザ要求の前、最中、若しくは直後に集められたセンサ情報、デジタルアシスタントとユーザとの間の以前の対話（例えば、ダイアログ）、並びに同様のものを含む。
【００５５】
いくつかの実施形態では、自然言語処理はオントロジ３６０に基づく。オントロジ３６０は、複数のノードを包含する階層構造であり、各ノードは、「実施可能な意図群」又はその他の「特性群」のうちの１つ以上に関連する「実施可能な意図」又は「特性」のいずれかを表す。上述のように、「実施可能な意図」は、デジタルアシスタントシステム３００が実行する能力を有するタスク（例えば、「実施可能」であるか又は実施の対象とすることができるタスク）を表す。「特性」は、実施可能な意図、又は別の特性の下位態様に関連付けられるパラメータを表す。オントロジ３６０内の実施可能な意図ノードと特性ノードとの間のリンクは、特性ノードによって表されるパラメータは、実施可能な意図ノードによって表されるタスクにどのように関連するのかを定義する。
【００５６】
いくつかの実施形態では、オントロジ３６０は実施可能な意図ノード及び特性ノードで構成される。オントロジ３６０内において、各々の実施可能な意図ノードは１つ以上の特性ノードに直接又は１つ以上の中間特性ノードを介してリンクされる。同様に、各特性ノードは１つ以上の実施可能な意図ノードに直接又は１つ以上の中間特性ノードを介してリンクされる。
【００５７】
実施可能な意図ノードは、そのリンクされた概念ノードとともに、「定義域」といわれる場合がある。本説明では、各定義域はそれぞれの実施可能な意図に関連付けられ、特定の実施可能な意図に関連付けられるノード（及びそれらの間の関係）のグループを指す。いくつかの実施形態では、オントロジ３６０は多くの定義域で構成される。各定義域は１つ以上の特性ノードを１つ以上の他の定義域と共有する場合がある。
【００５８】
いくつかの実施形態では、オントロジ３６０は、デジタルアシスタントが理解し、作用する能力を有する全ての定義域（及びしたがって実施可能な意図）を含む。いくつかの実施形態では、オントロジ３６０は、定義域若しくはノードを追加若しくは除去すること、又はオントロジ３６０内のノード間の関係を変更することなどによって、変更されてもよい。
【００５９】
いくつかの実施形態では、複数の関連する実施可能な意図に関連付けられるノードは、オントロジ３６０内の「上位定義域」の下にクラスタ化されてもよい。例えば、「旅行」上位定義域は、旅行に関連する特性ノード及び実施可能な意図ノードのクラスタを含んでもよい。旅行に関連する実施可能な意図ノードは、「航空券予約」、「ホテル予約」、「レンタカー」、「行き方を知る」、「興味のある場所を探す」などを含んでもよい。同じ上位定義域（例えば、「旅行」上位定義域）の下の実施可能な意図ノードは多くの特性ノードを共通に有する場合がある。例えば、「航空券予約」、「ホテル予約」、「レンタカー」、「行き方を知る」、「興味のある場所を探す」のための実施可能な意図ノードは、特性ノード「出発地」、「目的地」、「出発日／時間」、「到着日／時間」、及び「同行人数」のうちの１つ以上を共有してもよい。
【００６０】
いくつかの実施形態では、オントロジ３６０内の各ノードは、そのノードによって表される特性又は実施可能な意図に関連する単語及び／又は成句のセットに関連付けられる。各ノードに関連付けられる単語及び／又は成句のそれぞれのセットは、そのノードに関連付けられるいわゆる「語彙」である。各ノードに関連付けられる単語及び／又は成句のそれぞれのセットは、ノードによって表される特性又は実施可能な意図に関連して語彙索引３４４内に記憶することができる。例えば、「レストラン」の特性のためのノードに関連付けられる語彙は、「食べ物」、「飲み物」、「料理」、「空腹」、「食べる」、「ピザ」、「ファーストフード」、「食事」など等の単語を含んでもよい。別の例を挙げると、「電話をかける（initiate a phone call）」の実施可能な意図のためのノードに関連付けられる語彙は、「電話する（call）」、「電話する（phone）」、「ダイアルする（dial）」、「電話をかける（ring）」、「この番号に電話する（call this number）」、「〜に電話をかける（make a call to）」など等の単語及び成句を含んでもよい。語彙索引３４４は異なる言語の単語及び成句を任意追加的に含む。
【００６１】
いくつかの実施形態では、自然言語プロセッサ３３２は、発語テキスト化処理モジュール３３０からトークン列（例えば、テキストストリング）を受け取り、どのノードがトークン列内の単語によって暗示されているのかを判定する。いくつかの実施形態では、トークン列内の単語又は成句が（語彙索引３４４を介して）オントロジ３６０内の１つ以上のノードに関連付けられることが分かれば、その単語又は成句はそれらのノードを「トリガ」又は「活性化」することになる。複数のノードが「トリガされる」場合には、活性化されたノードの量及び／又は相対的重要度に基づき、自然言語プロセッサ３３２は実施可能な意図のうちの１つを、ユーザがデジタルアシスタントに実行させようと意図したタスク（又はタスクの種類）として選択することになる。いくつかの実施形態では、最も多く「トリガされた」ノードを有する定義域が選択される。いくつかの実施形態では、最も高い信頼値を有する定義域（例えば、その種々のトリガされたノードの相対的重要度に基づく）が選択される。いくつかの実施形態では、定義域は、トリガされたノードの数及び重要度の組み合わせに基づき選択される。いくつかの実施形態では、ノードを選択する際には、デジタルアシスタントシステム３００はユーザからの同様の要求を以前に正確に解釈したかどうか等の追加の因子も考慮される。
【００６２】
いくつかの実施形態では、デジタルアシスタントシステム３００はまた、特定の実体の名前も語彙索引３４４内に記憶する。そのため、これらの名前の１つがユーザ要求内に検出されると、自然言語プロセッサ３３２は、その名前はオントロジ内の特性又は下位特性の特定のインスタンスを指していると認識できることになる。いくつかの実施形態では、特定の実体の名前は、企業、レストラン、人、映画、及び同様のものの名前である。いくつかの実施形態では、デジタルアシスタントシステム３００は、ユーザのアドレス帳、映画データベース、ミュージシャンデータベース、及び／又はレストランデータベース等の、他のデータ源から特定の実体名を検索し、これらを特定することができる。いくつかの実施形態では、自然言語プロセッサ３３２が、トークン列内の単語は特定の実体の名前（ユーザのアドレス帳内の名前等）であると特定すると、その単語は、ユーザ要求のためにオントロジ内の実施可能な意図を選択する際に追加的な重要性を与えられる。
【００６３】
例えば、ユーザ要求から単語「Ｍｒ．Ｓａｎｔｏ」が認識され、語彙索引３４４内にユーザの連絡先リスト内の連絡先の１つとして姓「Ｓａｎｔｏ」が見つかった場合には、このとき、ユーザ要求は、「メッセージを送信する」又は「電話をかける」定義域に対応する可能性が高い。別の例を挙げると、単語「ＡＢＣ  Ｃａｆｅ」がユーザ要求内に見つかり、語彙索引３４４内にユーザの市内の特定のレストランの名前として用語「ＡＢＣ  Ｃａｆｅ」が見つかった場合には、このとき、ユーザ要求は「レストラン予約」定義域に対応する可能性が高い。
【００６４】
ユーザデータ３４８は、ユーザ固有語彙、ユーザ設定、ユーザアドレス、ユーザの既定言語及び第二言語、ユーザの連絡先リスト、並びに各ユーザのためのその他の短期的若しくは長期的情報等の、ユーザ固有の情報を含む。自然言語プロセッサ３３２は、ユーザ入力内に包含されている情報を補完してユーザ意図を更に明確にするためにユーザ固有の情報を用いることができる。例えば、ユーザ要求「私の誕生日パーティに私の友人を招待する」の場合には、自然言語プロセッサ３３２は、誰が「友人」であり、いつ、及びどこで「誕生日パーティ」は催されるのであろうかを判定するために、こうした情報を自分の要求内で明示的に提供するようにユーザに要請する代わりに、ユーザデータ３４８にアクセスすることができる。
【００６５】
自然言語プロセッサ３３２がユーザ要求に基づき実施可能な意図（又は定義域）を特定すると、自然言語プロセッサ３３２は、特定された実施可能な意図を表すために、構造化されたクエリを生成する。いくつかの実施形態では、構造化されたクエリは、実施可能な意図のための定義域内の１つ以上のノードのためのパラメータを含み、パラメータの少なくとも一部には、ユーザ要求内で指定される特定の情報及び要求事項が入力される。例えば、ユーザは「私のために７時に寿司屋で夕食の予約を取って下さい」と言う場合がある。この場合には、自然言語プロセッサ３３２は、ユーザ入力に基づき、実施可能な意図を「レストラン予約」であると正確に特定することができてもよい。オントロジによれば、「レストラン予約」定義域のための構造化されたクエリは、｛料理｝、｛時間｝、｛日付｝、｛同行人数｝、及び同様のもの等のパラメータを含み得る。ユーザの発言内に包含されている情報に基づき、自然言語プロセッサ３３２はレストラン予約定義域のための部分的な構造化されたクエリを生成してもよい。ここでは、部分的な構造化されたクエリは、パラメータ｛料理＝「寿司」｝及び｛時間＝「午後７時」｝を含む。しかし、本例では、ユーザの発言は、定義域に関連付けられる構造化されたクエリを完成するために十分な情報を包含していない。したがって、｛同行人数｝及び｛日付｝等のその他の必要パラメータは、現在利用可能な情報に基づいては、構造化されたクエリ内に指定されない。いくつかの実施形態では、自然言語プロセッサ３３２は、構造化されたクエリのいくつかのパラメータに、受け取られたコンテクスト情報を入力する。例えば、ユーザが「私の近くの」寿司レストランを要求した場合には、自然言語プロセッサ３３２は、構造化されたクエリ内の｛ロケーション｝パラメータにユーザ機器１０４からＧＰＳ座標を入力してもよい。
【００６６】
いくつかの実施形態では、自然言語プロセッサ３３２は、（あらゆる入力済みのパラメータを含む）構造化されたクエリをタスクフロー処理モジュール３３６（「タスクフロープロセッサ」）に渡す。タスクフロープロセッサ３３６は、自然言語プロセッサ３３２から、構造化されたクエリを受け取ること、構造化されたクエリを完成させること、及びユーザの最終的な要求を「完了する」ために必要とされる動作を実行すること、のうちの１つ以上を実行するように構成される。いくつかの実施形態では、これらのタスクを完成させるために必要な種々の手順はタスクフローモデル３５４内で提供される。いくつかの実施形態では、タスクフローモデル３５４は、ユーザから追加情報を入手するための手順、及び実施可能な意図に関連付けられる動作を実行するためのタスクフローを含む。
【００６７】
上述したように、構造化されたクエリを完成させるために、タスクフロープロセッサ３３６は、追加情報を入手し、及び／又は潜在的に曖昧な発言の曖昧さを除去するために、ユーザとの追加のダイアログを開始することが必要になる場合がある。このような対話が必要となる場合には、タスクフロープロセッサ３３６は、ユーザとのダイアログに携わるためにダイアログ処理モジュール３３４を呼び出す。いくつかの実施形態では、ダイアログ処理モジュール３３４は、どのように（及び／又はいつ）ユーザに追加情報を求めるべきかを決定し、ユーザ応答を受け取り、これらを処理する。いくつかの実施形態では、Ｉ／Ｏ処理モジュール３２８を通じてユーザに質問が提供され、ユーザから回答が受け取られる。例えば、ダイアログ処理モジュール３３４はオーディオ及び／又は視覚出力を介してユーザにダイアログ出力を提示し、口頭の応答又は物理的（例えば、タッチジェスチャ）応答を介してユーザから入力を受け取る。上述の例を続けると、タスクフロープロセッサ３３６が、定義域「レストラン予約」に関連付けられる構造化されたクエリのための「同行人数」及び「日付」情報を決定するために、ダイアログ処理モジュール３３４を呼び出すと、ダイアログフロープロセッサ３３４は、「何人分ですか？」及び「どの日にしますか？」等の、ユーザに送るための質問を生成する。ユーザから回答が受け取られると、ダイアログ処理モジュール３３４は、構造化されたクエリに、欠けている情報を入力するか、又は構造化されたクエリから欠けている情報を完成させるために情報をタスクフロープロセッサ３３６に渡す。
【００６８】
場合によっては、タスクフロープロセッサ３３６は、１つ以上の曖昧な特性を有する構造化されたクエリを受け取ることがある。例えば、「メッセージを送信する」定義域のための構造化されたクエリは、意図された受信者は「Ｂｏｂ」であることを指示する場合があり、ユーザは、「Ｂｏｂ」という名前の連絡先を複数有する場合がある。タスクフロープロセッサ３３６は、ダイアログプロセッサ３３４が、構造化されたクエリのこの特性の曖昧さを除去するように要求することになる。その結果として、ダイアログプロセッサ３３４は「どのＢｏｂですか？」とユーザに尋ね、ユーザが選び得る「Ｂｏｂ」という名前の連絡先のリストを表示してもよい（又は読み上げてもよい）。
【００６９】
タスクフロープロセッサ３３６が、実施可能な意図のための構造化されたクエリを完成させると、タスクフロープロセッサ３３６は、実施可能な意図に関連付けられる最終的なタスクの実行に進む。それに応じて、タスクフロープロセッサ３３６は、構造化されたクエリ内に包含されている特定のパラメータに応じてタスクフローモデル内のステップ及び命令を実行する。例えば、「レストラン予約」の実施可能な意図のためのタスクフローモデルは、レストランと連絡をとり、特定の時間に特定の同行人数のための予約を実際に希望するためのステップ及び命令を含み得る。例えば、｛レストラン予約、レストラン＝ＡＢＣ  Ｃａｆｅ、日付＝３／１２／２０１２、時間＝午後７時、同行人数＝５｝等の構造化されたクエリを用いて、タスクフロープロセッサ３３６は、（１）ＡＢＣ  Ｃａｆｅのサーバ、又はＡＢＣ  Ｃａｆｅ等の複数のレストランのための予約を受け入れるように構成されたレストラン予約システムにログオンするステップ、（２）ウェブサイト上のフォーム内に日付、時間、及び同行人数情報を入力するステップ、（３）フォームを送信するステップ、並びに（４）ユーザのカレンダー内に予約のためのカレンダー項目を記入するステップ、を実行してもよい。
【００７０】
いくつかの実施形態では、タスクフロープロセッサ３３６は、ユーザ入力内で要求されたタスクを完了するため、又はユーザ入力内で要求された情報の回答を提供するために、サービス処理モジュール３３８（「サービスプロセッサ」）の補助を用いる。例えば、サービスプロセッサ３３８は、電話をかけるため、カレンダー項目を設定するため、地図検索を呼び出すため、ユーザ機器上にインストールされているその他のユーザアプリケーションを呼び出すか若しくはそれと対話するため、並びにサードパーティサービス（例えばレストラン予約ポータル、ソーシャルネットワーキングウェブサイト、バンキングポータル等）を呼び出すか若しくはそれと対話するために、タスクフロープロセッサ３３６の代わりに動作することができる。いくつかの実施形態では、各サービスによって必要とされるプロトコル及びアプリケーションプログラミングインターフェース（application programming interface、ＡＰＩ）は、サービスモデル群３５６の中のそれぞれのサービスモデルによって指定され得る。サービスプロセッサ３３８はサービスのための適当なサービスモデルにアクセスし、サービスモデルに係るサービスによって必要とされるプロトコル及びＡＰＩに従ってサービスの要求を生成する。
【００７１】
例えば、レストランがオンライン予約サービスを可能にしている場合には、レストランは、予約を行うために必要なパラメータ、及び必要なパラメータの値をオンライン予約サービスへ伝達するためのＡＰＩを指定するサービスモデルを提出することができる。タスクフロープロセッサ３３６によって要求されると、サービスプロセッサ３３８は、サービスモデル群３５６内に記憶されているウェブアドレスを用いてオンライン予約サービスとのネットワーク接続を確立し、必要な予約のパラメータ（例えば、時間、日付、同行人数）を、オンライン予約サービスのＡＰＩに従う書式でオンライン予約インターフェースへ送信することができる。
【００７２】
いくつかの実施形態では、ユーザの意図を推測して明確にし、ユーザ意図を更に明らかにして絞り込むための情報を入手し、ユーザの意図を達成するべく応答を最終的に生成する（例えば、ユーザに出力を提供するか、又はタスクを完了する）ために、自然言語プロセッサ３３２、ダイアログプロセッサ３３４、及びタスクフロープロセッサ３３６は集合的かつ反復的に用いられる。
【００７３】
いくつかの実施形態では、ユーザの要求を達成するために必要なタスクが全て実行された後に、デジタルアシスタント３２６は確認応答を策定し、Ｉ／Ｏ処理モジュール３２８を通じてユーザへ応答を送り返す。ユーザ要求が情報の回答を求めている場合には、確認応答は、要求されている情報をユーザに提示する。いくつかの実施形態では、デジタルアシスタントはまた、デジタルアシスタント３２６によって作成された応答にユーザは満足であるかどうかを指示するようにユーザに要求する。
【００７４】
図４Ａ〜４Ｎは、いくつかの実施形態に係る電子機器（例えば、図２に関して説明されているユーザ機器１０４又は図３に関して説明されている独立型機器３００）上に表示される例示的なユーザインターフェースを示す。
【００７５】
図４Ａ〜４Ｊは、いくつかの実施形態に係る１つ以上の文書内のナビゲート及びブラウジングに関連付けられる例示的なユーザインターフェースを示す。
【００７６】
図４Ａは、第１の文書の一部分を包含する例示的なユーザインターフェースを示す。いくつかの実施形態では、第１の文書は、例えば下線を用いて指示される複数のリンク（例えば、「新しい国家」、「内戦」、「激戦地」、及び「その地の一部」）を含む。
【００７７】
図４Ａはまた、いくつかの実施形態では、第１の文書の音声読み上げを出力するのに先立って、電子機器は、第１の文書上の現在の位置を指示する可聴情報及び／又は第１の文書についての情報を含む可聴情報を出力することも示している。例えば、電子機器は、読み上げられる第１の文書の部分は第１の文書の冒頭であること、又は電子機器は音声読み上げをまさに出力しようとしていることを指示するオーディオ信号（例えば、「ビープ」）又は音声指示を出力してもよい。加えて、又は代わりに、電子機器は、第１の文書の題名、作成者、日付、及び出典等の、第１の文書についての情報を出力してもよい。
【００７８】
図４Ｂは、電子機器が、テキスト「８７年前、私たちの先祖は、この大陸に、自由という理念によってうち建てられ、人は皆、平等に造られているという命題に捧げられた」に対応する第１の文書の一部分の音声読み上げを出力することを示す。
【００７９】
図４Ｃは、電子機器が、テキスト「新しい国家」に関連付けられるリンクを特定する可聴情報を出力することを示す。例えば、電子機器は、単語「リンク」の音声信号、及び／又は「ビープ」のようなオーディオ信号を出力する。いくつかの実施形態では、用語「リンク」は、リンクされている文書のロケーションを包含するメタデータを指す。いくつかの実施形態では、用語「リンク」はハイパーテキストアンカを含む。音声信号及びオーディオ信号は、リンクに関連付けられるテキストの音声読み上げを出力する前又は後に出力されてもよい。いくつかの実施形態では、電子機器はまた、リンクされている文書の題名、作成者、日付、及び出典等の、リンクについての情報も出力する。
【００８０】
いくつかの実施形態では、音声信号、オーディオ信号、リンクについての情報、及び／又はリンクに関連付けられるテキストの音声読み上げを出力した後、電子機器は所定の期間（例えば、１、２、３、４、又は５秒等の間）一時停止する。
【００８１】
図４Ｄは、電子機器が、リンクに関連付けられるテキストの後に続く第１の文書の一部分の音声読み上げを出力することを示す。
【００８２】
いくつかの実施形態では、電子機器はユーザから音声コマンドを受け取る。いくつかの実施形態では、電子機器は、電子機器が音声信号、オーディオ信号、リンクについての情報、及び／若しくはリンクに関連付けられるテキストの音声読み上げを出力する間か、一時停止の最中か、又は電子機器が、リンクに関連付けられるテキストの後に続く文書の一部分の音声読み上げを出力する間に、ユーザから音声コマンドを受け取る。いくつかの実施形態では、電子機器は、そのリンクとは別の第２のリンクについての音声信号及び／又はオーディオ信号を出力するのに先立って、ユーザから音声コマンドを受け取る。
【００８３】
いくつかの実施形態では、音声コマンドは、リンクされている文書へナビゲートせよ（例えば、「リンクをたどれ」）との要求である。いくつかの実施形態では、電子機器は、文書の、最後に音声で読み上げられた部分を記憶する。いくつかの実施形態では、電子機器は、文書の、最後に音声で読み上げられた部分の代わりに、リンクについての情報（例えば、リンクの位置及び／又は識別情報）を記憶する。
【００８４】
図４Ｅは、電子機器が、リンクされている文書の一部分を表示し、リンクされている文書の一部分の音声読み上げを出力することを示す。いくつかの実施形態では、リンクされている文書の音声読み上げを出力するのに先立って、電子機器は、文書上の現在の位置を指示する可聴情報及び／又は文書についての情報を含む可聴情報を出力する。例えば、電子機器は、読み上げられる文書の部分は文書の冒頭であること、又は電子機器は音声読み上げをまさに出力しようとしているところであることを指示するオーディオ信号（例えば、「ビープ」）又は音声指示を出力してもよい。加えて、又は代わりに、電子機器は、文書の題名、作成者、日付、及び出典等の、文書についての情報を出力してもよい。更に、電子機器は、読み上げられる文書の部分は見出し、新しい行、新しい文、及び／又は新しい段落であることを指示するオーディオ信号又は音声指示を出力してもよい。
【００８５】
図４Ｆは、電子機器が、リンクされている文書の後続の部分の音声読み上げを更に出力することを示す。同様に、電子機器は、リンクされている文書の残りの部分の音声読み上げを出力し続けてもよい。
【００８６】
図４Ｇは、電子機器が、リンクされている文書の最後の文の音声読み上げを出力することを示す。
【００８７】
いくつかの実施形態では、電子機器が、リンクされている文書の１つ以上の部分の音声読み上げを出力する間に、電子機器はユーザから、第１の文書へ戻るナビゲーションを要求する音声コマンドを受け取る。図４Ｈは、それに応じて、電子機器は第１の文書の１つ以上の部分を表示し、第１の文書の一部分の音声読み上げを出力することを示す。
【００８８】
いくつかの実施形態では、電子機器は、第１の文書へナビゲートして戻ることについての音声問い合わせを出力する。いくつかの実施形態では、電子機器は、リンクされている文書の最後の文の音声読み上げを出力した後に、第１の文書へナビゲートして戻ることについての音声問い合わせを出力する。ユーザが、第１の文書へ戻るナビゲーションを要求する音声コマンドを提供すると、電子機器は、以上に説明されたように、第１の文書の一部分の音声読み上げを出力する（すなわち、第１の文書へナビゲートして戻る）。代替として、いくつかの実施形態では、例えば、電子機器が、リンクされている文書の音声読み上げの出力を完了すると、電子機器は、ユーザから音声コマンドを受け取ることなく第１の文書へ自動的にナビゲートして戻る。
【００８９】
いくつかの実施形態では、電子機器が第１の文書の音声読み上げの出力を再開するとき、電子機器は、第１の文書の、最後に音声で読み上げられた部分に対応する第１の文書の一部分の音声読み上げの出力を開始する。いくつかの実施形態では、電子機器は、リンクに関連付けられるテキストの音声読み上げを出力することによって、再開する。いくつかの実施形態では、電子機器は、リンクに関連付けられるテキストの後に続く第１の文書の一部分の音声読み上げを出力することによって、再開する。いくつかの実施形態では、電子機器は、リンクに関連付けられるテキストを含む文の音声読み上げを出力することによって、再開する。いくつかの実施形態では、電子機器は、リンクに関連付けられるテキストを含む段落の音声読み上げを出力することによって、再開する。
【００９０】
図４Ｉは、電子機器が第１の文書内の次の段落の一部分の音声読み上げを出力することを示す。いくつかの実施形態では、次の段落の一部分の音声読み上げを出力するのに先立って、電子機器は、文書上の現在の位置を指示する可聴情報を出力する。例えば、電子機器は、読み上げられる文書の部分は新しい行、新しい文、及び／又は新しい段落であることを指示するオーディオ信号又は音声指示を出力してもよい。
【００９１】
図４Ｊは、いくつかの実施形態では、文書は、それぞれのスタイルを有する複数の部分を含むことを示す。換言すれば、文書の第１の部分は第１のスタイルを含んでよく、文書の第２の部分は第２のスタイルを含む。例えば、図４Ｊに示されている文書の第１の段落は第１のスタイルを有し（例えば、段落は非イタリック体のフォントが使われている）、文書の後続の段落は、第１のスタイルとは別の第２のスタイルを有する（例えば、段落はイタリック体のフォントが使われている）。電子機器は、第１の音声特性のセット（例えば、成人女性の音声）を用いた文書の第１の部分の音声読み上げ、及び第２の音声特性のセット（例えば、成人男性の音声）を用いた文書の第２の部分の音声読み上げを出力する。音声特性は、ピッチ、速度、及び音量のうちの１つ以上、並びに／又は例えば、性別（例えば、男性若しくは女性）並びに年齢（例えば、成人若しくは子ども）に基づき分類される話者の特定グループに典型的な特性を含んでもよい。
【００９２】
図４Ｋ〜４Ｎは、いくつかの実施形態に係る１つ以上の文書を特定することに関連付けられる例示的なユーザインターフェースを示す。図４Ｋ〜４Ｎに示されている例示的なユーザインターフェースは電子メールメッセージを含んでいるが、本の章、百科事典の見出し項目など等の、他の形式の文書に類似の方法を用いることができる。
【００９３】
図４Ｋは電子メッセージの例示的なユーザインターフェースを示す。電子機器はメッセージの少なくとも一部分の音声読み上げを出力する（例えば、「Ｄａｖｉｄからあなた、Ｊｏｈｎ、Ｋａｒｅｎ、及びＰａｕｌ宛の電子メール。件名、新機能。メッセージには次のように書かれています、『これはとてもよさそうですよ。チームの皆さんはどう思いますか？』」）。
【００９４】
いくつかの実施形態では、電子機器はユーザから、特定の基準に該当する１つ以上の文書を要求する音声コマンドを受け取る。例えば、いくつかの実施形態では、特定の基準は、１つ以上の文書は１人以上の作成者によって作成されていることである（例えば、「Ｄａｖｉｄからの電子メールメッセージを探す」、「Ｄａｖｉｄ、Ｊｏｈｎ、Ｋａｒｅｎ、及びＰａｕｌからの電子メールメッセージを探す」、「この電子メールのアドレスからの電子メールメッセージを探す」等）。他の実施形態では、特定の基準は、１つ以上の文書は特定の文書に関連付けられることである（例えば、「このスレッド内の電子メールメッセージを探す」、「この電子メールへの返信を探す」等）。更に他の実施形態では、特定の基準は、１つ以上の文書は特定の文書への返信であることである。なお他の実施形態では、特定の基準は、１つ以上の文書はそれぞれの作成者からの最後のメッセージを含むことである（例えば、「Ｄａｖｉｄからの最後の電子メールを探す」）。いくつかの実施形態では、特定の基準は、１つ以上の文書はそれぞれの作成者からの最初のメッセージを含むことである。
【００９５】
いくつかの実施形態では、特定の基準は、１つ以上の文書は特定の日付範囲に該当することである（例えば、「先週受信された電子メールを探す」、「１月１日から３月３１日までに受信された電子メールメッセージを探す」等）。いくつかの実施形態では、特定の日付範囲は単一の日付に対応する。
【００９６】
いくつかの実施形態では、特定の基準は上述の基準のうちの１つ以上を含む（例えば、「先週受信されたＤａｖｉｄ及びＫａｒｅｎからの電子メールを探す」）。
【００９７】
図４Ｌは、ユーザが、特定の作成者、例えば、Ｄａｖｉｄによって作成された電子メールメッセージを要求することに応じて表示される例示的なユーザインターフェースを示す。電子機器は電子メールメッセージのリストの音声読み上げを出力する。いくつかの実施形態では、電子機器は、リスト内の電子メールメッセージの数を指示する可聴情報を出力する。
【００９８】
図４Ｍは、ユーザが、以前に表示された電子メールメッセージへの返信を要求することに応じて表示される代替的なユーザインターフェースを示す。電子機器は返信のリストの音声読み上げを出力する。いくつかの実施形態では、電子機器は、リスト内の電子メールメッセージの数を指示する可聴情報を出力する。
【００９９】
いくつかの実施形態では、電子機器はリスト（例えば、図４Ｌ又は図４Ｍに示されているリスト）内の電子メールメッセージの音声読み上げを出力する。いくつかの実施形態では、電子機器がリスト内の最後の電子メールの音声読み上げを出力する際には、電子機器は、読み上げられる電子メールはリスト内の最後の電子メールであることを指示する可聴情報を出力する。
【０１００】
図４Ａ〜４Ｎは、電子機器上に表示される例示的なユーザインターフェースを示しているが、いくつかの実施形態では、電子機器は、電子機器上に例示的なユーザインターフェースを表示することなく、可聴情報（例えば、音声読み上げ及び／又は可聴信号）を出力する。いくつかの実施形態では、電子機器はディスプレイを全く含まない。
【０１０１】
図５は、いくつかの実施形態に係る電子機器（例えば、図２に関して説明されているユーザ機器１０４又は図３に関して説明されている独立型機器３００）によって実行される文書内をナビゲートするための操作を示すフローチャートである。いくつかの実施形態では、電子機器はポータブル電子機器を含む。いくつかの実施形態では、電子機器はコンピュータシステムを含む。
【０１０２】
これらの操作は単なる例示に過ぎず、種々の実施形態では、より少数の、又はより少ない操作が電子機器によって実行されてもよい。
【０１０３】
いくつかの実施形態では、電子機器は第１の文書を受信する（５０２）。
【０１０４】
電子機器は文書の一部分の音声読み上げを出力する（５０４）（例えば、図４Ｂ）。
【０１０５】
いくつかの実施形態では、電子機器は、文書のその部分はリンクを含むかどうかを判定する（５０６）。文書のその部分がリンクを含む場合には、電子機器は、複数のリンクのうちのリンクを特定する可聴情報（例えば、図４Ｃに関して説明されたように、単語「リンク」の音声出力若しくはオーディオ信号「ビープ」、並びに／又はリンクされている文書の題名、作成者、日付、及び出典等の、リンクについての情報）を出力する（５０８）。
【０１０６】
いくつかの実施形態では、電子機器はユーザから音声コマンドを受け取る。いくつかの実施形態では、電子機器は、電子機器は音声コマンドを受け取ったかどうかを判定する（５１０）。
【０１０７】
いくつかの実施形態では、電子機器が音声コマンドを受け取ると、電子機器は、受け取られた音声コマンドはナビゲーションコマンドであるかどうか（例えば、受け取られた音声コマンドは、リンクに関連付けられる第２の文書（すなわち、リンクされている文書）へのナビゲーションの要求を含むかどうか）を判定する（５１２）。受け取られた音声コマンドが、リンクされている文書へのナビゲーションの要求を含む場合には、電子機器は、リンクされている文書を取得する（５１４）。次に、電子機器は、リンクされている文書の１つ以上の部分の音声読み上げを出力する（５０４）（例えば、図４Ｅ）。
【０１０８】
いくつかの実施形態では、電子機器が音声コマンドを受け取ると、電子機器は、受け取られた音声コマンドは情報コマンドであるかどうか（例えば、受け取られた音声コマンドは、リンクされている文書についての情報の要求を含むかどうか）を判定する（５１６）。受け取られた音声コマンドが、「作成者は誰か」等の、リンクされている文書についての情報（例えば、題名、作成者、日付、出典、要旨、要約、最初の文、最初の段落等）の要求を含む場合には、電子機器は、要求されている情報を取得する（５１８）。いくつかの実施形態では、要求されている情報の少なくとも一部分は、リンクされている文書から入手される（例えば、題名、作成者、日付、及び要旨）。いくつかの実施形態では、要求されている情報の少なくとも一部分は、リンクされている文書を処理することによって入手される（例えば、リンクされている文書を要約すること）。いくつかの実施形態では、要求されている情報の少なくとも一部分はサードパーティサーバによって提供される（例えば、リンクされている文書の批評）。電子機器は、要求されている情報の音声読み上げを出力する（５２０）。他の実施形態では、電子機器は、要求されている情報の少なくとも一部分を、リンクされている文書のメタデータから受け取るか、又は詳細を得るために、リンクされている文書に関連付けられる他のソースから情報を取得する。
【０１０９】
いくつかの実施形態では、ユーザが、２つの隣接するリンクの間、又は２つの隣接するリンクの直後に音声コマンドを提供した場合には、電子機器は、２つのリンクを、音声コマンドに対応する候補リンクとして特定する。ユーザの音声コマンドは、２つの隣接するリンクの１つ目のリンク又は２つ目のリンクに向けられている可能性があるため、ユーザの音声コマンドはどちらのリンクに対して実行されるべきであるかについて明らかにする必要があり得る。いくつかの実施形態では、電子機器は、候補リンクについての可聴情報、及び／又はユーザはどちらのリンクに対して音声コマンドを実行したいのかについての可聴問い合わせを出力する。例えば、電子機器が、文「学校Ａと学校Ｂとの次の試合は３月３日にあります」の音声読み上げを出力する間に、ユーザは音声コマンド「リンクをたどる」を提供する。いくつかの実施形態では、電子機器は可聴問い合わせ「どのリンクですか？」を出力し、ユーザから後続の音声コマンドを受け取る。後続の音声コマンドが「学校Ｂ」である場合には、電子機器は、テキスト「学校Ｂ」にリンクされている文書を取得し、リンクされている文書の一部分の音声読み上げを出力する。
【０１１０】
いくつかの実施形態では、文書のそれぞれの部分の音声読み上げを出力した後、電子機器は、文書の最後に到達したかどうか（例えば、電子機器は全文書の音声読み上げを出力したかどうか）を判定する（５２２）。文書の最後に到達していなければ、電子機器は文書の後続の部分の音声読み上げを出力する（５０４）。いくつかの実施形態では、文書の最後に到達した場合には、電子機器はユーザからのナビゲーションコマンドを待つ。電子機器がユーザから、以前の文書又は新しい文書へのナビゲーションを要求するナビゲーションコマンドを受け取ると（５２４）、電子機器は以前の文書又は新しい文書を取得する（５２６）。上述したように、これらの操作（例えば、操作５２２、５２４、及び５２６等）はサーバ又はモバイル機器によって実行されてもよい。いくつかの実施形態では、ユーザからナビゲーションコマンドを受け取るのに先立って、電子機器は、（例えば、図４Ｇに関して説明されたように）ユーザは別の文書へナビゲートしたいのかどうかについての音声問い合わせを出力する。いくつかの実施形態では、ユーザが別の文書へナビゲートしたくない場合には、電子機器は音声読み上げの出力を停止する。
【０１１１】
図６は、いくつかの実施形態に係る電子機器（例えば、図２に関して説明されているユーザ機器１０４又は図３に関して説明されている独立型機器３００）によって実行される文書をブラウズするための操作を示すフローチャートである。いくつかの実施形態では、電子機器はポータブル電子機器を含む。いくつかの実施形態では、電子機器はコンピュータシステムを含む。
【０１１２】
これらの操作は単なる例示に過ぎず、種々の実施形態では、より少数の、又はより少ない操作が電子機器によって実行されてもよい。
【０１１３】
いくつかの実施形態では、電子機器は、複数の部分を有する文書を受信する（６０２）。部分のうちの少なくともいくつかはそれぞれのメタデータに関連付けられる。いくつかの実施形態では、それぞれのメタデータは文書の構造（例えば、段落、文、見出し、スタイル等）を指示する。
【０１１４】
電子機器は文書のそれぞれの部分の音声読み上げを出力する（６０４）。文書のそれぞれの部分の音声読み上げを出力する間、電子機器は各個それぞれの部分を、その部分のそれぞれのメタデータに基づき可聴的に区別する。例えば、電子機器は、それぞれの部分はサインポストに対応するかどうかを判定する（６０６）。本明細書で使用するとき、サインポストは文書内の所定のロケーション又は所定の形式のロケーションを指す。いくつかの実施形態では、それぞれの部分がサインポストに対応する場合には、電子機器は、その部分はサインポストに対応するかどうかを指示するための音声信号又はオーディオ信号を出力する（６０８）。例えば、いくつかの実施形態では、新しい段落の開始時に、電子機器は、新しい段落の冒頭を指示するための音声信号又はオーディオ信号を出力する。同様に、いくつかの実施形態では、節の冒頭若しくは最後を指示するため、並びに／又はブックマークを指示するための音声信号又はオーディオ信号が用いられる。
【０１１５】
部分はサインポストに対応するのかどうかを指示するための音声信号又はオーディオ信号を出力した後に（例えば、部分はサインポストに対応するのかどうかを指示するための音声信号又はオーディオ信号を出力した後に、２つの段落の音声読み上げを出力した後に）、電子機器はユーザから音声コマンドを受け取り、音声コマンドはナビゲーションコマンドであるかどうかを判定する（６１０）。音声コマンドが、サインポストへのナビゲーションを要求するナビゲーションコマンドである場合には、電子機器は、サインポストに対応する部分へナビゲートし（６１４）、サインポストに対応する部分の音声読み上げを出力する（６０４）。
【０１１６】
いくつかの実施形態では、文書のそれぞれの部分の音声読み上げを出力した後、電子機器は、文書の最後に到達したかどうか（例えば、電子機器は全文書の音声読み上げを出力したかどうか）を判定する（６１６）。文書の最後に到達していなければ、電子機器は文書の後続の部分の音声読み上げを出力する（６０４）。
【０１１７】
図７は、いくつかの実施形態に係る電子機器（例えば、図２に関して説明されているユーザ機器１０４又は図３に関して説明されている独立型機器３００）によって実行される文書のセットを特定するための操作を示すフローチャートである。いくつかの実施形態では、電子機器はポータブル電子機器を含む。いくつかの実施形態では、電子機器はコンピュータシステムを含む。
【０１１８】
これらの操作は単なる例示に過ぎず、種々の実施形態では、より少数の、又はより少ない操作が電子機器によって実行されてもよい。
【０１１９】
いくつかの実施形態では、電子機器は文書の少なくとも一部分の音声読み上げを出力する（７０２）。
【０１２０】
電子機器はユーザから、特定の基準に該当する文書を要求する音声コマンドを受け取る（７０４）。いくつかの実施形態では、電子機器は、音声読み上げを出力する間に、音声コマンドの少なくとも一部分を受け取る。いくつかの実施形態では、特定の基準は、１つ以上の特定された文書は、（７０６）ユーザによって特定された１人以上の作成者によって作成されていることを必要とする。いくつかの実施形態では、特定の基準は、１つ以上の特定された文書は、（７０８）特定の文書に関連付けられることを必要とする。いくつかの実施形態では、特定の基準は、１つ以上の特定された文書は、（７１０）特定の文書への返信であることを必要とする。いくつかの実施形態では、特定の基準は、１つ以上の特定された文書は、（７１２）それぞれの作成者からの最後のメッセージを含むことを必要とする。いくつかの実施形態では、特定の基準は、１つ以上の特定された文書は、（７１４）ユーザによって特定された特定の日付範囲に該当することを必要とする。
【０１２１】
いくつかの実施形態では、特定の基準に該当する文書を要求する音声コマンドを受け取るのに先立って、電子機器はユーザから文書に関する情報（例えば、作成者、単語数、最後の更新の日付、文書内の節の数、等）の要求を受け取る。いくつかの実施形態では、文書に関する情報の要求に応じて、電子機器は可聴情報を出力する、文書に関する要求された情報を含む。いくつかの実施形態では、電子機器は、要求された情報を、１つ以上の遠隔コンピュータシステム（例えば、１つ以上の検索エンジン及び／又はデータベースサーバ）から取得する。いくつかの実施形態では、電子機器は、要求された情報を文書から判定する。
【０１２２】
いくつかの実施形態では、電子機器はユーザから、要求された情報を記憶せよとの要求を受け取り、それに応じて、要求された情報を（例えば、電子機器上又は遠隔に）記憶する。いくつかの実施形態では、電子機器は、要求された情報を記憶せよとのユーザからの要求なしに、要求された情報を記憶する。
【０１２３】
一例では、要求は文書の長さについてのものであり（例えば、「この記事はどのぐらいの長さか？」）、文書の長さについての要求に応じて、電子機器は文書の長さ（例えば、単語数又はページ数）を判定し、文書の長さを含む可聴情報を出力する。別の例では、要求は、文書は更新されたかどうかについてのものであり（例えば、「この記事は更新されたか？）、文書は更新されたかどうかについての要求に応じて、電子機器は、文書は更新されているかどうかを判定し、文書は更新されているかどうかを指示する可聴情報（例えば、「記事に修正があります」）を出力する。更に別の例では、要求は文書の作成者についてのものである（例えば、「この記事を書いたのは誰ですか？」）。いくつかの実施形態では、文書の作成者についての要求に応じて、電子機器は、文書の作成者を含む可聴情報を出力する。場合によっては、作成者情報は文書から抽出される（例えば、「作成者〜（authored by）」としてのテキスト部分内、又はマークアップ言語内の作成者フィールド内）。場合によっては、作成者情報は、文書にリンクしているウェブページから抽出される。
【０１２４】
いくつかの実施形態では、電子機器は、要求された情報に基づく追加情報の要求を受け取り、追加情報を入手し、追加情報を出力する。作成者情報に関して上述された例のいくつかにおいては、文書の作成者を含む可聴情報を出力した後、電子機器は、同じ作成者によって作成された他の文書の要求（例えば、「この作成者は他にどんな記事を書いていますか？」）を受け取り、それに応じて、文書の作成者によって作成された他の文書を含む情報を入手し、情報を出力する。いくつかの実施形態では、電子機器は、１つ以上の遠隔コンピュータシステム（例えば、１つ以上の検索エンジン及び／又はデータベースサーバ）へ要求を送信し、１つ以上の遠隔コンピュータシステムの少なくともサブセットから情報の少なくとも一部分を受信することによって、文書の作成者によって作成された他の文書を含む情報を入手する。
【０１２５】
いくつかの実施形態では、文書の少なくとも一部分の音声読み上げを出力する間に、電子機器はユーザから、文書に関する情報を記憶せよとの要求を受け取る。いくつかの実施形態では、文書に関する情報を記憶せよとの要求を受け取ることに応じて、電子機器は文書に関する情報を記憶する。例えば、いくつかの実施形態では、要求は、文書をブックマークすること（例えば、「この記事をブックマークすること」）であり、電子機器は文書のためのアクセス情報（例えば、文書のためのユニバーサルリソースロケータ）をブックマークとして記憶する。いくつかの実施形態では、電子機器は文書のためのアクセス情報を電子機器上に記憶する。いくつかの実施形態では、電子機器はアクセス情報を遠隔サーバにおいて記憶する。
【０１２６】
いくつかの実施形態では、電子機器は、後続の操作（例えば、以下において説明される操作７１６、７１８、及び７２０）を実行することなく、要求された情報を提供することは、当業者には明らかであろう。
【０１２７】
電子機器は、特定の基準に該当する１つ以上の文書を特定する（７１６）（例えば、図４Ｌ及び４Ｍ）。
【０１２８】
電子機器は、１つ以上の特定された文書のそれぞれの文書の少なくとも一部分の音声読み上げを出力する（７１８）。
【０１２９】
いくつかの実施形態では、文書のそれぞれの部分の音声読み上げを出力した後、電子機器は、文書の最後に到達したかどうか（例えば、電子機器は全文書の音声読み上げを出力したかどうか）を判定する（７２０）。文書の最後に到達していなければ、電子機器は文書の後続の部分の音声読み上げを出力する（７１８）。
【０１３０】
いくつかの実施形態では、文書の最後に到達していれば、電子機器は、１つ以上の特定された文書内の全ての文書は既読であるかどうかを判定する。１つ以上の特定された文書の全ての文書が既読ではなければ、電子機器は１つ以上の特定された文書内の次の文書の一部分の音声読み上げを出力する。
【０１３１】
いくつかの実施形態に基づき、図８は、上述した通りの本発明の原理に基づいて構成される電子機器８００の機能ブロック図を示す。この機器の機能ブロックは、本発明の原理を実行するためにハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組み合わせにより実施することができる。図８に述べられる機能ブロックは、上記に述べたような本発明の原理を実施するために、組み合わせるか、又はサブブロックに分割することができることが当業者によって理解される。したがって、本明細書における説明は、あらゆる可能な組み合わせ若しくは分割、又は本明細書に述べられる更なる機能ブロックの定義を支持しうるものである。
【０１３２】
図８に示されているように、電子機器８００は、オーディオ入力ユニット８０４及びオーディオ出力ユニット８０６を含む。いくつかの実施形態では、電子機器８００は、電子文書の１つ以上の部分を表示するように構成されるディスプレイユニット８０２を含む。いくつかの実施形態では、電子機器８００は、タッチ感知面ユニット８０８上における１つ以上のジェスチャを検出するように構成されるタッチ感知面ユニット８０８を含む。電子機器は、オーディオ入力ユニット８０４及びオーディオ出力ユニット８０６に結合される処理ユニット８１０を更に含む。いくつかの実施形態では、処理ユニット８１０はまた、ディスプレイユニット８０２及びタッチ感知面ユニット８０８にも結合される。いくつかの実施形態では、処理ユニット８１０は、文書受信ユニット８１２、出力ユニット８１４、音声コマンド受信ユニット８１６、記憶ユニット８１８、取得ユニット８２０、特定ユニット８２２、及びユーザ選択受信ユニット８２４を含む。
【０１３３】
処理ユニット８１０は、複数のリンクを含む第１の文書を（例えば、文書受信ユニット８１２を用いて）受信するように構成される。処理ユニット８１０は、第１の文書の少なくとも一部分の音声読み上げを（例えば、出力ユニット８１４を用いてオーディオ出力ユニット８０６を通じて）出力するように構成される。処理ユニット８１０は、複数のリンクのうちのリンクを特定する可聴情報を（例えば、出力ユニット８１４を用いてオーディオ出力ユニット８０６を通じて）出力するように構成される。処理ユニット８１０は、リンクを特定する可聴情報を出力することに応じて、ユーザからリンクに関する音声コマンドを（例えば、音声コマンド受信ユニット８１６を用いてオーディオ入力ユニット８０４を通じて）受け取るように構成される。処理ユニット８１０は、ユーザから音声コマンドを受け取ることに応じて、リンクに関連付けられる第２の文書の少なくとも一部分の音声読み上げを（例えば、出力ユニット８１４を用いてオーディオ出力ユニット８０６を通じて）出力するように構成される。
【０１３４】
いくつかの実施形態では、リンクは第１の文書の部分内のテキストに関連付けられる。
【０１３５】
いくつかの実施形態では、処理ユニット８１０は、ユーザからリンクに関する音声コマンドを受け取ることに応じて、リンクについての情報を（例えば、記憶ユニット８１８を用いて）記憶し、第２の文書の１つ以上の部分の音声読み上げを（例えば、出力ユニット８１４を用いてオーディオ出力ユニット８０６を通じて）出力するように構成される。
【０１３６】
いくつかの実施形態では、処理ユニット８１０は、第２の文書の少なくとも一部分の音声読み上げを出力した後に、ユーザから、第１の文書へ戻るナビゲーションを要求する音声コマンドを（例えば、音声コマンド受信ユニット８１６を用いてオーディオ入力ユニット８０４を通じて）受け取り、ユーザから、第１の文書へ戻るナビゲーションを要求する音声コマンドを受け取ることに応じて、第１の文書内の、リンクに関連付けられるテキストの後に続く第１の文書の１つ以上の部分の音声読み上げを（例えば、出力ユニット８１４を用いてオーディオ出力ユニット８０６を通じて）出力するように構成される。
【０１３７】
いくつかの実施形態では、処理ユニット８１０は、第２の文書の少なくとも一部分の音声読み上げを出力した後に、第１の文書へナビゲートして戻ることについての音声問い合わせを（例えば、出力ユニット８１４を用いてオーディオ出力ユニット８０６を通じて）出力し、第１の文書へナビゲートして戻ることについての音声問い合わせを出力することに応じて、ユーザから、第１の文書へ戻るナビゲーションを要求する音声コマンドを（例えば、音声コマンド受信ユニット８１６を用いてオーディオ入力ユニット８０４を通じて）受け取り、ユーザから、第１の文書へ戻るナビゲーションを要求する音声コマンドを受け取ることに応じて、第１の文書内の、リンクに関連付けられるテキストを含む第１の文書の１つ以上の部分の音声読み上げを（例えば、出力ユニット８１４を用いてオーディオ出力ユニット８０６を通じて）出力するように構成される。
【０１３８】
いくつかの実施形態では、処理ユニット８１０は、第２の文書の少なくとも一部分の音声読み上げを出力した後に、ユーザから、第１の文書へ戻るナビゲーションを要求する音声コマンドを受け取ることに応じて、第１の文書内の、リンクに関連付けられるテキストの後に続く第１の文書の１つ以上の部分の音声読み上げを（例えば、出力ユニット８１４を用いてオーディオ出力ユニット８０６を通じて）自動的に出力するように構成される。
【０１３９】
いくつかの実施形態では、音声コマンドは第１の種類の音声コマンドである。いくつかの実施形態では、処理ユニット８１０は、ユーザから、リンクに関する、第１の種類とは別の第２の種類の音声コマンドを（例えば、音声コマンド受信ユニット８１６を用いてオーディオ入力ユニット８０４を通じて）受け取り、ユーザからリンクに関する第２の種類の音声コマンドを受け取ることに応じて、第２の文書から情報を（例えば、取得ユニット８２０を用いて）取得し、第２の文書からの情報に基づき第２の種類の音声コマンドに対応する音声情報を（例えば、出力ユニット８１４を用いてオーディオ出力ユニット８０６を通じて）出力するように構成される。
【０１４０】
いくつかの実施形態では、第２の種類の音声コマンドは第２の文書の作成者についての情報の要求を含む。
【０１４１】
いくつかの実施形態では、第２の種類の音声コマンドは第２の文書の要約の要求を含む。
【０１４２】
いくつかの実施形態では、処理ユニット８１０は、ユーザからの音声コマンドに対応する候補リンクとして２つ以上のリンクを（例えば、特定ユニット８２２を用いて）特定し、候補リンクについての可聴情報を（例えば、出力ユニット８１４を用いてオーディオ出力ユニット８０６を通じて）出力し、ユーザから候補リンクのうちの単一のリンクの選択を（例えば、ユーザ選択受信ユニット８２４を用いてオーディオ入力ユニット８０４又はタッチ感知面ユニット８０８を通じて）受け取るように構成される。
【０１４３】
いくつかの実施形態に基づき、図９は、上述した通りの本発明の原理に基づいて構成される電子機器９００の機能ブロック図を示す。この機器の機能ブロックは、本発明の原理を実行するためにハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組み合わせにより実施することができる。図９に述べられる機能ブロックは、上記に述べたような本発明の原理を実施するために、組み合わせるか、又はサブブロックに分割することができることが当業者によって理解される。したがって、本明細書における説明は、あらゆる可能な組み合わせ若しくは分割、又は本明細書に述べられる更なる機能ブロックの定義を支持しうるものである。
【０１４４】
図９に示されているように、電子機器９００は、オーディオ入力ユニット９０４及びオーディオ出力ユニット９０６を含む。いくつかの実施形態では、電子機器９００は、電子文書の１つ以上の部分を表示するように構成されるディスプレイユニット９０２を含む。いくつかの実施形態では、電子機器９００は、タッチ感知面ユニット９０８上における１つ以上のジェスチャを検出するように構成されるタッチ感知面ユニット９０８を含む。電子機器は、オーディオ入力ユニット９０４及びオーディオ出力ユニット９０６に結合される処理ユニット９１０を更に含む。いくつかの実施形態では、処理ユニット９１０はまた、ディスプレイユニット９０２及びタッチ感知面ユニット９０８にも結合される。いくつかの実施形態では、処理ユニット９１０は、文書受信ユニット９１２、出力ユニット９１４、及び音声コマンド受信ユニット９１６を含む。
【０１４５】
処理ユニット９１０は、複数の部分を有する文書を（例えば、文書受信ユニット９１２を用いて）受信するように構成され、部分のうちの少なくともいくつかはそれぞれのメタデータに関連付けられる。処理ユニット９１０は、文書のそれぞれの部分の音声読み上げであって、それぞれの部分をそれぞれのメタデータに基づき可聴的に区別することを含む、音声読み上げを（例えば、出力ユニット９１４を用いてオーディオ出力ユニット９０６を通じて）出力するように構成される。処理ユニット９１０は、ユーザから、特定のメタデータに関連付けられる特定の部分へのナビゲーションを要求する音声コマンドを（例えば、音声コマンド受信ユニット９１６を用いてオーディオ入力ユニット９０４を通じて）受け取るように構成される。処理ユニット９１０は、音声コマンドを受け取ることに応じて、特定のメタデータに関連付けられる特定の部分の音声読み上げを（例えば、出力ユニット９１４を用いてオーディオ出力ユニット９０６を通じて）出力するように構成される。
【０１４６】
いくつかの実施形態では、処理ユニット９１０は、文書内のテキストの第１の部分の音声読み上げを、第１の音声特性のセットを用いてユーザへ（例えば、出力ユニット９１４を用いてオーディオ出力ユニット９０６を通じて）出力し、文書内のテキストの第２の部分の音声読み上げを、第１の音声特性のセットとは別の第２の音声特性のセットを用いてユーザへ（例えば、出力ユニット９１４を用いてオーディオ出力ユニット９０６を通じて）出力することによって、テキストのそれぞれの部分の音声読み上げをそれぞれの部分のそれぞれのスタイルに応じてユーザへ出力するように構成される。
【０１４７】
いくつかの実施形態では、処理ユニット９１０は、文書の１つ以上の部分の音声読み上げを出力する間にユーザからの音声コマンドの少なくとも一部分を（例えば、音声コマンド受信ユニット９１６を用いてオーディオ入力ユニット９０４を通じて）受け取るように構成される。
【０１４８】
いくつかの実施形態では、文書のそれぞれの部分のうちの少なくとも１つは文書のそれぞれの段落である。
【０１４９】
いくつかの実施形態では、文書のそれぞれの部分のうちの少なくとも１つは文書のそれぞれの見出しである。
【０１５０】
いくつかの実施形態では、文書のそれぞれの部分のうちの少なくとも１つは文書のそれぞれの文である。
【０１５１】
いくつかの実施形態では、文書の第１の部分は第１のスタイルを有し、文書の第２の部分は、第１のスタイルとは別の第２のスタイルを有する。
【０１５２】
いくつかの実施形態では、文書の各部分は単一のリンクに関連付けられる。
【０１５３】
いくつかの実施形態に基づき、図１０は、上述した通りの本発明の原理に基づいて構成される電子機器１０００の機能ブロック図を示す。この機器の機能ブロックは、本発明の原理を実行するためにハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組み合わせにより実施することができる。図１０に述べられる機能ブロックは、上記に述べたような本発明の原理を実施するために、組み合わせるか、又はサブブロックに分割することができることが当業者によって理解される。したがって、本明細書における説明は、あらゆる可能な組み合わせ若しくは分割、又は本明細書に述べられる更なる機能ブロックの定義を支持しうるものである。
【０１５４】
図１０に示されているように、電子機器１０００は、オーディオ入力ユニット１００４及びオーディオ出力ユニット１００６を含む。いくつかの実施形態では、電子機器１０００は、電子文書の１つ以上の部分を表示するように構成されるディスプレイユニット１００２を含む。いくつかの実施形態では、電子機器１０００は、タッチ感知面ユニット１００８上における１つ以上のジェスチャを検出するように構成されるタッチ感知面ユニット１００８を含む。電子機器は、オーディオ入力ユニット１００４及びオーディオ出力ユニット１００６に結合される処理ユニット１０１０を更に含む。いくつかの実施形態では、処理ユニット１０１０はまた、ディスプレイユニット１００２及びタッチ感知面ユニット１００８にも結合される。いくつかの実施形態では、処理ユニット１０１０は、出力ユニット１０１２、音声コマンド受信ユニット１０１４、及び特定ユニット１０１６を含む。
【０１５５】
処理ユニット１０１０は、複数の文書のうちの文書の少なくとも一部分の音声読み上げを（例えば、出力ユニット１０１２を用いてオーディオ出力ユニット１００６を通じて）出力するように構成される。処理ユニット１０１０は、音声読み上げを出力する間に、ユーザから、特定の基準に該当する文書を要求する音声コマンドを（例えば、音声コマンド受信ユニット１０１４を用いてオーディオ入力ユニット１００４を通じて）受け取るように構成される。処理ユニット１０１０は、ユーザから音声コマンドを受け取ることに応じて、複数の文書のうち、特定の基準に該当する１つ以上の文書を（例えば、特定ユニット１０１６を用いて）特定し、１つ以上の特定された文書のそれぞれの文書の少なくとも一部分の音声読み上げを（例えば、出力ユニット１０１２を用いてオーディオ出力ユニット１００６を通じて）出力するように構成される。
【０１５６】
いくつかの実施形態では、特定の基準は、１つ以上の特定された文書は、ユーザによって特定された１人以上の作成者によって作成されていることを必要とする。
【０１５７】
いくつかの実施形態では、特定の基準は、１つ以上の特定された文書は、特定の文書に関連付けられることを必要とする。
【０１５８】
いくつかの実施形態では、特定の基準は、１つ以上の特定された文書は、特定の文書への返信であることを必要とする。
【０１５９】
いくつかの実施形態では、特定の基準は、１つ以上の特定された文書は、それぞれの作成者からの最後のメッセージを含むことを必要とする。
【０１６０】
いくつかの実施形態では、特定の基準は、１つ以上の特定された文書は、ユーザによって特定された特定の日付範囲に該当することを必要とする。
【０１６１】
いくつかの実施形態では、処理ユニット１０１０は、１つ以上の特定された文書の数を指示する可聴情報を（例えば、出力ユニット１０１２を用いてオーディオ出力ユニット１００６を通じて）出力するように構成される。
【０１６２】
いくつかの実施形態では、処理ユニット１０１０は、それぞれの文書は、１つ以上の特定された文書のうちの最後の文書であることを指示する可聴情報を（例えば、出力ユニット１０１２を用いてオーディオ出力ユニット１００６を通じて）出力するように構成される。
【０１６３】
上述の記載は、説明の目的のために、特定の実施形態を参照して記載されている。しかし、上述の例示的説明は、網羅的であること、又は本発明を、開示されている寸分違わない形態に限定することを意図されてはいない。多くの変更及び変形が上述の教示に鑑みて可能である。本発明の原理及びその実際的な応用を最良の形で説明し、それによって他の当業者が、想到される特定の用途に好適な種々の改良と共に本発明及び様々な実施形態を最良な形で利用することを可能とするために、これらの実施形態を選択し説明した。
【０１６４】
例えば、図６に関して説明されている操作の１つ以上の態様は、図７及び８に関して説明されている操作とともに用いられてもよい（例えば、文書の最後に到達した後に可聴問い合わせを出力すること）。同様に、図７に関して説明されている操作の１つ以上の態様は、図６及び８に関して説明されている操作とともに用いられてもよく、図８に関して説明されている操作の１つ以上の態様は、図６及び７に関して説明されている操作とともに用いられてもよい。簡潔にするために、これらの詳細は繰り返されていない。
【図１】
2015528918.tif 000003
【図２】
2015528918.tif 000004
【図３】
2015528918.tif 000005
【図４Ａ】
2015528918.tif 000006
【図４Ｂ】
2015528918.tif 000007
【図４Ｃ】
2015528918.tif 000008
【図４Ｄ】
2015528918.tif 000009
【図４Ｅ】
2015528918.tif 000010
【図４Ｆ】
2015528918.tif 000011
【図４Ｇ】
2015528918.tif 000012
【図４Ｈ】
2015528918.tif 000013
【図４Ｉ】
2015528918.tif 000014
【図４Ｊ】
2015528918.tif 000015
【図４Ｋ】
2015528918.tif 000016
【図４Ｌ】
2015528918.tif 000017
【図４Ｍ】
2015528918.tif 000018
【図４Ｎ】
2015528918.tif 000019
【図５】
2015528918.tif 000020
【図６】
2015528918.tif 000021
【図７】
2015528918.tif 000022
【図８】
2015528918.tif 000023
【図９】
2015528918.tif 000024
【図１０】
2015528918.tif 000025
【手続補正書】
【提出日】平成26年11月28日(2014.11.28)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
文書内をナビゲートする方法であって、
１つ以上のプロセッサ及びメモリを有する電子機器において、
複数のリンクを含む第１の文書を受信することと、
前記第１の文書の少なくとも一部分の音声読み上げを出力することと、
前記複数のリンクのうちのリンクを特定する可聴情報を出力することと、
前記リンクを特定する前記可聴情報を出力することに応じて、ユーザから前記リンクに関する音声コマンドを受け取ることと、
前記ユーザから前記音声コマンドを受け取ることに応じて、第２の文書の少なくとも一部分の音声読み上げを出力することと、
を含む方法。
【請求項２】
前記リンクが、前記第１の文書の前記一部分内のテキストに関連付けられる、請求項１に記載の方法。
【請求項３】
前記ユーザから前記リンクに関する前記音声コマンドを受け取ることに応じて、前記リンクについての情報を記憶することと、
前記第２の文書の１つ以上の部分の音声読み上げを出力することと、
を含む、請求項１〜２のいずれか一項に記載の方法。
【請求項４】
前記第２の文書の少なくとも一部分の前記音声読み上げを出力することの後に、
前記ユーザから、前記第１の文書へ戻るナビゲーションを要求する音声コマンドを受け取ることと、
前記ユーザから、前記第１の文書へ戻るナビゲーションを要求する前記音声コマンドを受け取ることに応じて、前記第１の文書内の、前記リンクに関連付けられるテキストの後に続く前記第１の文書の１つ以上の部分の音声読み上げを出力することと、
を含む、請求項３に記載の方法。
【請求項５】
前記第２の文書の少なくとも一部分の前記音声読み上げを出力することの後に、前記第１の文書へナビゲートして戻ることについての音声問い合わせを出力することと、
前記第１の文書へナビゲートして戻ることについての前記音声問い合わせを出力することに応じて、前記ユーザから、前記第１の文書へ戻るナビゲーションを要求する音声コマンドを受け取ることと、
前記ユーザから、前記第１の文書へ戻るナビゲーションを要求する前記音声コマンドを受け取ることに応じて、前記第１の文書内の、前記リンクに関連付けられるテキストを含む前記第１の文書の１つ以上の部分の音声読み上げを出力することと、
を含む、請求項３に記載の方法。
【請求項６】
前記第２の文書の少なくとも一部分の前記音声読み上げを出力することの後に、前記ユーザから、前記第１の文書へ戻るナビゲーションを要求する前記音声コマンドを受け取ることに応じて、前記第１の文書内の、前記リンクに関連付けられるテキストの後に続く前記第１の文書の１つ以上の部分の音声読み上げを自動的に出力することを含む、請求項３に記載の方法。
【請求項７】
前記音声コマンドが第１の種類の音声コマンドであり、
前記ユーザから、前記リンクに関する、前記第１の種類とは別の第２の種類の音声コマンドを受け取ることと、
前記ユーザから前記リンクに関する前記第２の種類の前記音声コマンドを受け取ることに応じて、
前記第２の文書から情報を取得することと、及び
前記第２の文書からの前記情報に基づき前記第２の種類の前記音声コマンドに対応する音声情報を出力することと、
を含む、請求項１〜６のいずれか一項に記載の方法。
【請求項８】
前記第２の種類の前記音声コマンドが前記第２の文書の作成者についての情報の要求を含む、請求項７に記載の方法。
【請求項９】
前記第２の種類の前記音声コマンドが前記第２の文書の要約の要求を含む、請求項７〜８のいずれか一項に記載の方法。
【請求項１０】
前記ユーザからの音声コマンドに対応する候補リンクとして２つ以上のリンクを特定することと、
前記候補リンクについての可聴情報を出力することと、
前記ユーザから前記候補リンクのうちの単一のリンクの選択を受け取ることと、
を更に含む、請求項１〜９のいずれか一項に記載の方法。
【請求項１１】
電子機器であって、
１つ以上のプロセッサと、
前記１つ以上のプロセッサにより実行されるための１つ以上のプログラムを記憶したメモリであって、前記１つ以上のプログラムは、
複数のリンクを含む第１の文書を受信するため、
前記第１の文書の少なくとも一部分の音声読み上げを出力するため、
前記複数のリンクのうちのリンクを特定する可聴情報を出力するため、
前記リンクを特定する前記可聴情報を出力することに応じて、ユーザから前記リンクに関する音声コマンドを受け取るため、及び
前記ユーザから前記音声コマンドを受け取ることに応じて、第２の文書の少なくとも一部分の音声読み上げを出力するための
命令を含む、メモリと、
を備える、電子機器。
【請求項１２】
前記リンクが、前記第１の文書の前記一部分内のテキストに関連付けられる、請求項１１に記載の電子機器。
【請求項１３】
前記１つ以上のプログラムが、
前記ユーザから前記リンクに関する前記音声コマンドを受け取ることに応じて、前記リンクについての情報を記憶するため、及び
前記第２の文書の１つ以上の部分の音声読み上げを出力するための
命令を含む、請求項１１〜１２のいずれか一項に記載の電子機器。
【請求項１４】
前記１つ以上のプログラムが、
前記第２の文書の少なくとも一部分の前記音声読み上げを出力した後に、
前記ユーザから、前記第１の文書へ戻るナビゲーションを要求する音声コマンドを受け取るため、及び
前記ユーザから、前記第１の文書へ戻るナビゲーションを要求する前記音声コマンドを受け取ることに応じて、前記第１の文書内の、前記リンクに関連付けられるテキストの後に続く前記第１の文書の１つ以上の部分の音声読み上げを出力するための
命令を含む、請求項１３に記載の電子機器。
【請求項１５】
前記１つ以上のプログラムが、
前記第２の文書の少なくとも一部分の前記音声読み上げを出力した後に、前記第１の文書へナビゲートして戻ることについての音声問い合わせを出力するため、
前記第１の文書へナビゲートして戻ることについての前記音声問い合わせを出力することに応じて、前記ユーザから、前記第１の文書へ戻るナビゲーションを要求する音声コマンドを受け取るため、及び
前記ユーザから、前記第１の文書へ戻るナビゲーションを要求する前記音声コマンドを受け取ることに応じて、前記第１の文書内の、前記リンクに関連付けられるテキストを含む前記第１の文書の１つ以上の部分の音声読み上げを出力するための
命令を含む、請求項１３に記載の電子機器。
【請求項１６】
前記１つ以上のプログラムが、前記第２の文書の少なくとも一部分の前記音声読み上げを出力した後に、前記ユーザから、前記第１の文書へ戻るナビゲーションを要求する前記音声コマンドを受け取ることに応じて、前記第１の文書内の、前記リンクに関連付けられるテキストの後に続く前記第１の文書の１つ以上の部分の音声読み上げを自動的に出力するための命令を含む、請求項１３に記載の電子機器。
【請求項１７】
前記音声コマンドが第１の種類の音声コマンドであり、前記１つ以上のプログラムが、
前記ユーザから、前記リンクに関する、前記第１の種類とは別の第２の種類の音声コマンドを受け取るため、並びに
前記ユーザから前記リンクに関する前記第２の種類の前記音声コマンドを受け取ることに応じて、
前記第２の文書から情報を取得するため、及び
前記第２の文書からの前記情報に基づき前記第２の種類の前記音声コマンドに対応する音声情報を出力するための
命令を含む、請求項１１〜１６のいずれか一項に記載の電子機器。
【請求項１８】
前記第２の種類の前記音声コマンドが前記第２の文書の作成者についての情報の要求を含む、請求項１７に記載の電子機器。
【請求項１９】
前記第２の種類の前記音声コマンドが前記第２の文書の要約の要求を含む、請求項１７に記載の電子機器。
【請求項２０】
１つ以上のプログラムを記憶する永続的コンピュータ可読記憶媒体であって、前記１つ以上のプログラムは、１つ以上のプロセッサを有するポータブル電子機器又はコンピュータシステムによって実行されると、前記電子機器又はコンピュータシステム機器に、
複数のリンクを含む第１の文書を受信すること、
前記第１の文書の少なくとも一部分の音声読み上げを出力すること、
前記複数のリンクのうちのリンクを特定する可聴情報を出力すること、
前記リンクを特定する前記可聴情報を出力することに応じて、ユーザから前記リンクに関する音声コマンドを受け取ること、
前記ユーザから前記音声コマンドを受け取ることに応じて、第２の文書の少なくとも一部分の音声読み上げを出力すること、
を行わせる命令を含む、永続的コンピュータ可読記憶媒体。
【国際調査報告】
2015528918.tif 000026
2015528918.tif 000027
2015528918.tif 000028
2015528918.tif 000029
2015528918.tif 000030