(57)【要約】  ユーザは、スレッド内に含まれるメッセージ中を容易に読み、ブラウズし、ジャンプすることができる。メッセージの様々な部分は、それらが容易に識別可能であるように強調表示されることができる。ユーザは、スレッド内の次のメッセージまたは前のメッセージに移動するために矢印ボタンなどのユーザインターフェース要素を選択することにより、スレッド中を容易にナビゲートすることができる。スレッドの順序は、ユーザが第１のメッセージから最後のメッセージにスレッドを見る、または最後のメッセージから第１のメッセージにスレッドを見ることができるように逆にされることもできる。スレッド内のメッセージは、スレッド内でメッセージのセクションの識別を容易にするためにＸＭＬタグを使用することなどにより印を付けられることができる。
2009508233.tif 000002
【特許請求の範囲】
【請求項１】
スレッド内のメッセージをナビゲートするコンピュータ実装方法であって、
前記スレッドにアクセスすることと、
前記スレッド内の各メッセージヘッダに関する位置を決定することと、
各メッセージヘッダに関する前記位置に少なくとも一部基づいて前記スレッド内の各メッセージの外観を変更することと、
前記スレッドをレンダリングすることと
を備えることを特徴とするコンピュータ実装方法。
【請求項２】
前記スレッド内の各メッセージの前記外観を変更することは、各メッセージヘッダのシェーディングを変更することと、グラディエントシェーディングを各メッセージヘッダに適用することと、各メッセージヘッダの色を変更することと、前記メッセージヘッダの少なくとも一部分を折り畳むことと、前記メッセージヘッダの少なくとも一部分を展開することと、各メッセージヘッダ内に識別子を含むことと、選択されたときに前記スレッド内の前記メッセージに関係するナビゲーション機能を実行する選択可能なユーザインターフェース要素を前記メッセージヘッダのうちの少なくとも１つ内に含むこととのうちの少なくとも１つを実行することを備えることを特徴とする請求項１に記載のコンピュータ実装方法。
【請求項３】
前記スレッド内の各メッセージヘッダに関する前記位置を決定することは、前記メッセージヘッダの位置を識別するために前記スレッドに試行錯誤法を適用することを備えることを特徴とする請求項１に記載のコンピュータ実装方法。
【請求項４】
前記スレッド内の各メッセージヘッダに関する前記位置を決定することは、送信者フィールド、宛先フィールド、件名フィールド、およびメッセージフィールドのうちの少なくとも１つを探し出すことを備えることを特徴とする請求項３に記載のコンピュータ実装方法。
【請求項５】
マークアップ言語を使用して前記スレッドをタグ付けすることをさらに備え、前記スレッドをタグ付けすることは各メッセージに関連する少なくとも１つの要素をタグ付けすることを備えることを特徴とする請求項１に記載のコンピュータ実装方法。
【請求項６】
前記要素は、メッセージヘッダ要素と、メッセージ要素と、送信者要素と、送信日要素と、宛先要素と、ｃｃ要素と、ｂｃｃ要素と、件名要素と、値要素とのうちの少なくとも１つであることを特徴とする請求項５に記載のコンピュータ実装方法。
【請求項７】
前記タグ付けすることは、前記スレッドに一時的に関連していることを特徴とする請求項５に記載のコンピュータ実装方法。
【請求項８】
前記マークアップは、ＸＭＬマークアップであることを特徴とする請求項５に記載のコンピュータ実装方法。
【請求項９】
ユーザが前記メッセージのうちの１つの上をホバーしているときに決定し、前記スレッド内の１つのメッセージから前記スレッド内の他のメッセージにナビゲートするために選択されることができるナビゲーション制御を表示することをさらに備えることを特徴とする請求項１に記載のコンピュータ実装方法。
【請求項１０】
前記ナビゲーション制御は、それが、前記スレッドがナビゲートされる画面位置とほぼ同一の画面位置にとどまるように表示されることを特徴とする請求項９に記載のコンピュータ実装方法。
【請求項１１】
前記スレッド内の前記メッセージの順序を逆にすることをさらに備えることを特徴とする請求項１に記載のコンピュータ実装方法。
【請求項１２】
スレッド内のメッセージをナビゲートするコンピュータ実行可能命令を有するコンピュータ可読メディアであって、
前記スレッドにアクセスすることと、
各メッセージヘッダを識別するために前記スレッドを解析することと、
スキーマにより各メッセージヘッダをタグ付けすることと、
各メッセージヘッダの外観を変更することと、
前記スレッドをレンダリングすることと
を備えることを特徴とするコンピュータ可読メディア。
【請求項１３】
前記スキーマはＸＭＬスキーマであることを特徴とする請求項１２に記載のコンピュータ可読メディア。
【請求項１４】
各メッセージヘッダを識別するために前記スレッドを解析することは、送信者フィールド、宛先フィールド、件名フィールド、およびメッセージフィールドのうちの少なくとも１つを探し出すことを備えることを特徴とする請求項１３に記載のコンピュータ可読メディア。
【請求項１５】
前記スキーマにより各メッセージヘッダをタグ付けすることは、送信者フィールド、送信日フィールド、宛先フィールド、ｃｃフィールド、ｂｃｃフィールド、および件名フィールドにタグ付けすることを備えることを特徴とする請求項１２に記載のコンピュータ可読メディア。
【請求項１６】
前記スレッド内に選択可能なナビゲーション制御を表示し、前記選択可能なナビゲーション制御が選択されるときに前記スレッドの前記レンダリングを変更することをさらに備えることを特徴とする請求項１２に記載のコンピュータ可読メディア。
【請求項１７】
前記選択可能なナビゲーション制御は、次のメッセージに移動すること、前のメッセージに移動すること、前記スレッドの先頭に移動すること、前記スレッドの末尾に移動すること、および前記スレッドを逆にすることのうちの少なくとも１つを実行することを特徴とする請求項１６に記載のコンピュータ可読メディア。
【請求項１８】
スレッド内のメッセージをナビゲートするシステムであって、
前記スレッドをアクセスする手段と、
前記スレッドの各メッセージヘッダに関する位置を決定する手段と、
各メッセージヘッダの外観を変更する手段と、
メッセージヘッダ内に表示される少なくとも１つのナビゲーション制御を使用して前記スレッド内でナビゲートする手段と、
前記スレッドをレンダリングする手段と
を備えることを特徴とするシステム。
【請求項１９】
各メッセージの前記外観を変更する手段は、各メッセージヘッダのシェーディングを変更することを備えることを特徴とする請求項１８に記載のシステム。
【請求項２０】
ＸＭＬスキーマにより前記スレッドをタグ付けする手段をさらに備えることを特徴とする請求項１９に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スレッド内のメッセージをナビゲートするコンピュータ実装方法、およびコンピュータ可読メディア、およびそのシステムに関する。
【背景技術】
【０００２】
電子通信は、ビジネスおよび家庭の両方で個人生活の不可欠な一部となっている。電子メール、インスタントメッセージング（Ｉｎｓｔａｎｔ  Ｍｅｓｓａｇｉｎｇ）、ＳＭＳなどの電子通信の使用により、個人は、連絡を保ち、取引を行い、会議を設定することができる。例えば、いくつかの個人情報マネジャ（ＰＩＭ）プログラムにより、ユーザは、電子メールメッセージ、スケジュール（ｓｃｈｅｄｕｌｅ）、タスク、メモ（ｎｏｔｅ）、連絡先、および他の情報を管理し体系化することができる。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ユーザがそれらの電子メールメッセージをより容易にナビゲートすることを助けるためにそれらは、日付、サイズ、会話、件名、重要性などの属性によりメッセージをグループ化することができる。多くのユーザは、それらの電子メールメッセージをオンラインで読む。しかし、コンテンツの隅から隅までおよび多くの返信を単一のスレッドに統合させることを考慮すると長い電子メールの会話を読むことはしばしば困難である。
【課題を解決するための手段】
【０００４】
この要約は、下記の発明を実施するための最良の形態でさらに説明される概念の選択を簡略化した形態で紹介するために提供される。この要約は、特許請求された主題の重要な特徴または不可欠な特徴を識別するものでもなく、特許請求された主題の範囲を決定する助けとして使用されるものでもない。
【０００５】
ユーザは、スレッド内に含まれるメッセージ中を容易に読み、ブラウズし、ジャンプすることができる。ユーザインターフェース要素は、ユーザがスレッド内に含まれるメッセージを識別することを容易にする。メッセージの様々な部分は、それらが容易に識別可能であるように強調表示されることができる。ユーザは、スレッド内の次のメッセージまたは前のメッセージに移動するために、矢印ボタンなどのユーザインターフェース要素を選択することによりスレッド中を容易にナビゲートすることができる。スレッドの順序は、ユーザが第１のメッセージから最後のメッセージにスレッドを見る、または最後のメッセージから第１のメッセージにスレッドを見ることができるように逆にされることもできる。スレッド内のメッセージは、スレッド内のメッセージのセクション（ｓｅｃｔｉｏｎ）の識別を容易にするためにＸＭＬタグを使用することなどにより印を付けられることができる。
【発明を実施するための最良の形態】
【０００６】
同様の数字が同様の要素を表す図面をここで参照すると、本発明の様々な態様が説明されている。具体的には、図１および対応する議論は、本発明の実施形態が実現されることができる適切なコンピューティング環境の簡潔な概略的説明を提供するものである。
【０００７】
概して、プログラムモジュールは、ルーチン（ｒｏｕｔｉｎｅ）、プログラム、コンポーネント（ｃｏｍｐｏｎｅｎｔ）、データ構造、および特定のタスクを実行または特定の抽象データ型を実装する他の種類の構造を含む。他のコンピュータシステム構成が、ハンドヘルド（ｈａｎｄ−ｈｅｌｄ）装置、マルチプロセッサシステム、マイクロプロセッサベースまたはプログラマブルな家庭用電子機器、ミニコンピュータ、メインフレームコンピュータなどを含んで使用されることもできる。分散コンピューティング環境が、タスクが通信ネットワークを介して接続されるリモート処理装置により実行される場合に使用されることもできる。分散コンピューティング環境において、プログラムモジュールはローカルメモリ記憶装置またはリモートメモリ記憶装置の両方に配置されることができる。
【０００８】
本明細書で示されたルーチンの議論を読むとき、様々な実施形態の論理動作は、（１）コンピューティングシステム上で実行するコンピュータ実装の行為またはプログラムモジュールのシーケンス（ｓｅｑｕｅｎｃｅ）としておよび／または（２）コンピューティングシステム内の相互接続装置の論理回路または回路モジュールとして実現されることが理解されよう。実装形態は、本発明を実現するコンピューティングシステムの性能要求に依存する選択の問題である。従って、例示され、説明された本明細書の実施形態を構成する論理動作は、操作、構造上の装置、行為、またはモジュールと様々に呼ばれる。これらの操作、構造上の装置、行為およびモジュールは、ソフトウェア内、ファームウェア内、特定用途のデジタル論理回路内、およびその任意の組合せで実現されることができる。
【０００９】
本明細書で使用されているように用語「メッセージ」は、スレッド内の１つのメッセージヘッダの先頭からスレッド内にある次のメッセージヘッダの先頭までであるスレッドの領域を意味する。
【００１０】
ここで図１を参照すると、様々な実施形態で使用されるコンピュータ２用の例示のコンピュータアーキテクチャが説明されている。図１に示されるコンピュータアーキテクチャは、中央処理装置５（「ＣＰＵ」）を含む従来のデスクトップまたはラップトップコンピュータ、ランダムアクセスメモリ９（「ＲＡＭ」）および読取り専用メモリ（「ＲＯＭ」）１１を含むシステムメモリ７、ならびにメモリをＣＰＵ５に結合するシステムバス１２を示す。起動中などにコンピュータ内の要素間で情報を転送する助けをする基本ルーチンを含む基本入力／出力システムは、ＲＯＭ１１内に格納される。コンピュータ２は、下記でより詳細に説明されるオペレーティングシステム１６、アプリケーションプログラム、および他のプログラムモジュールを格納するための大容量記憶装置１４をさらに含む。
【００１１】
大容量記憶装置１４は、バス１２に接続された大容量ストレージコントローラ（図示せず）を介してＣＰＵ５に接続されている。大容量記憶装置１４およびその関連のコンピュータ可読メディアは、コンピュータ２のために不揮発性ストレージを提供する。本明細書に含まれるコンピュータ可読メディアの説明がハードディスクまたはＣＤ−ＲＯＭドライブなどの大容量記憶装置を参照するが、コンピュータ可読メディアは、コンピュータ２によりアクセスされることができる任意の利用可能なメディアであってよい。
【００１２】
例として、しかし限定ではなく、コンピュータ可読メディアは、コンピュータストレージメディア（ｃｏｍｐｕｔｅｒ  ｓｔｏｒａｇｅ  ｍｅｄｉａ）、および通信メディアを備えることができる。コンピュータストレージメディアは、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報を格納するための任意の方法または技術で実現される揮発性および不揮発性、リムーバブル（ｒｅｍｏｖａｂｌｅ）およびノンリムーバブル（ｎｏｎ−ｒｅｍｏｖａｂｌｅ）のメディアを含む。コンピュータストレージメディアは、限定されないがＲＡＭ、ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ（ｆｌａｓｈ  ｍｅｍｏｒｙ）、または他の半導体メモリ技術、ＣＤ−ＲＯＭ、デジタルバーサタイルディスク（「ＤＶＤ」）、または他の光記憶装置、磁気カセット、磁気テープ、磁気ディスクストレージもしくは他の磁気記憶装置、または所望の情報を格納するために使用されることができ、コンピュータ２によってアクセスされることができる他の任意のメディアを含む。
【００１３】
本発明の様々な実施形態により、コンピュータ２は、インターネットなどのネットワーク１８を介してリモートコンピュータ（ｒｅｍｏｔｅ  ｃｏｍｐｕｔｅｒ）への論理接続を使用してネットワーク型環境内で動作することができる。コンピュータ２は、バス１２に接続されたネットワークインターフェースユニット（ｎｅｔｗｏｒｋ  ｉｎｔｅｒｆａｃｅ  ｕｎｉｔ）２０を介してネットワーク１８に接続することができる。ネットワークインターフェースユニット２０は、他の種類のネットワークおよびリモートコンピュータシステムに接続するために使用されることもできる。コンピュータ２は、キーボード、マウス、または電子スタイラス（ｅｌｅｃｔｒｏｎｉｃ  ｓｔｙｌｕｓ）（図１に図示せず）を含むいくつかの他の装置からの入力信号を受信し処理するために入力／出力コントローラ２２を含むこともできる。同様に、入力／出力コントローラ２２は、表示画面、プリンタ、または他の種類の出力装置に出力信号を提供することができる。
【００１４】
簡単に上述したように、いくつかのプログラムモジュールおよびデータファイルが、Ｒｅｄｍｏｎｄ、Ｗａｓｈｉｎｇｔｏｎのマイクロソフト社からのＷＩＮＤＯＷＳ（登録商標）  ＸＰオペレーティングシステムなどネットワーク型パーソナルコンピュータの動作を制御するために適するオペレーティングシステム１６を含んでコンピュータ２の大容量記憶装置１４およびＲＡＭ９内に格納されることができる。大容量記憶装置１４およびＲＡＭ９は、１つまたは複数のプログラムモジュールを格納することもできる。具体的には、大容量記憶装置１４およびＲＡＭ９は、電子メールプログラム２４およびワードプロセッシングアプリケーションプログラム（ｗｏｒｄ  ｐｒｏｃｅｓｓｉｎｇ  ａｐｐｌｉｃａｔｉｏｎ  ｐｒｏｇｒａｍ）１０を格納することができる。ワードプロセッシングアプリケーションプログラム１０は、電子メールプログラム２４に関する電子メールなどの電子文書を生成し編集するための機能を提供するように動作する。本発明の１つの実施形態により、ワードプロセッシングアプリケーションプログラム１０は、マイクロソフト社からのＭＩＣＲＯＳＯＦＴ  ＷＯＲＤワードプロセッシングアプリケーションプログラムを備える。他のワードプロセッシングアプリケーションも使用されることができる。
【００１５】
電子メールアプリケーションプログラム２４は、電子メールに関係する機能を提供するように動作する。例えば、電子プログラム２４は、電子メールを生成し、表示し、送信し、受信するために使用されることができる。本発明の１つの実施形態により、電子メールアプリケーションプログラム２４は、マイクロソフト社からのＭＩＣＲＯＳＯＦＴ  ＯＵＴＬＯＯＫ電子メールアプリケーションプログラムを備える。他の電子メールおよび／またはメッセージングアプリケーション（ｍｅｓｓａｇｉｎｇ  ａｐｐｌｉｃａｔｉｏｎ）も使用されることができる。
【００１６】
電子メールの表示と共に、電子メールレイアウトマネジャ（ｌａｙｏｕｔ  ｍａｎａｇｅｒ）２６がより容易なナビゲーションのために電子メールをフォーマット化するために使用されることができる。電子メールレイアウトマネジャ２６が電子メールプログラム２４と別々に示されているが、この機能は多くの場所の中に存在してよい。例えば、この機能は電子メールプログラム内にまたはある他の位置に含まれていてよい。概して、電子メールレイアウトマネジャ２６は、それが容易にナビゲートされることができるようにスレッドを構成する。
【００１７】
図２は、本発明の態様によるスレッドナビゲーションシステム（ｔｈｒｅａｄ  ｎａｖｉｇａｔｉｏｎ  ｓｙｓｔｅｍ）２００を示す。
概して、スレッドナビゲーションシステム２００は、ユーザがスレッド内に含まれるメッセージ中を読み、ブラウズし、ジャンプする助けをする。レイアウトマネジャ２６は、電子メールアプリケーション２４のためにサービスを提供する。１つの実施形態により、電子メール文書および対応するスレッドがバッキングストア（ｂａｃｋｉｎｇ  ｓｔｏｒｅ）３４内に格納されることができる。レイアウトマネジャ２６との通信を容易にするために１つまたは複数のコールバック（ｃａｌｌｂａｃｋ）ルーチンが実行されてよい。コールバックコードの使用によりレイアウトマネジャ２６は、様々なスレッドの部分を構成するために必要な追加の情報を照会することができる。
【００１８】
レイアウトマネジャ２６は、電子メールをフォーマット化し、スレッド中をナビゲートするための機能を提供する。レイアウトマネジャ２６は、電子メールアプリケーションプログラム２４からの要求に応答してこれらの機能を提供する。電子メールプログラム２４およびレイアウトマネジャ２６は、電子メールのスレッドの関連部分中を読み、ブラウズし、ジャンプすることを容易にするためのナビゲーションツールを含む。レイアウトマネジャ２６は、ユーザがスレッド内に含まれるメッセージを識別しナビゲートすることを容易にするために電子メール内にユーザインターフェース要素を含むことができる。レイアウトマネジャ２６は、メッセージの様々な部分がより容易に識別可能であるようにそれらを強調表示することもできる。ユーザインターフェース要素がスレッド内に含まれるとき、ユーザは、スレッド内の次のメッセージまたは前のメッセージに移動するために矢印ボタンなどのユーザインターフェース要素を選択することによってスレッド中を容易にナビゲートすることができる。レイアウトマネジャ２６は、メッセージの順序がレンダリングされる前にスレッド内でメッセージの順序を変更することもできる。例えば、スレッドの順序は、ユーザがスレッド内で送信された第１のメッセージから最後のメッセージ（最新のメッセージ）にスレッドを見る、または最後のメッセージから第１のメッセージにスレッドを見ることができるように逆にされることができる。レイアウトマネジャ２６は、スレッド内でメッセージのセクションの識別を容易にするためにＸＭＬタグを使用することなどによりスレッドに印を付けることもできる。
【００１９】
電子メールプログラム２４は、少なくとも一部分のスレッドがフォーマット化されることを要求するためにレイアウトマネジャ２６と通信することができる。電子メールプログラム２４は、フォーマット化されるべきである電子メールからテキストおよび他のコンテンツをレイアウトマネジャ２６に提供することもできる。電子メールのスレッドの部分をタグ付けすることにより電子メールプログラムは、スレッド内でセクションをより容易に識別することができる。例えば、ＸＭＬマークアップが、電子メールのヘッダ部分が容易に識別されることができるようにそれをタグ付けするために使用されることができる。電子メールプログラム２４は、電子メール文書４０をレンダリングするために構成されることもできる。
【００２０】
図３は、例示のスレッドを示す。図示されるように、電子メールのスレッド３００は、電子メールのスレッド３００内に５つの異なるメッセージ（３２０、３２１、３２２、３２３および３２４）を示す。１つの実施形態により、各メッセージのヘッダおよび／または先頭は、ユーザが異なるメッセージが始まり終わる場所を容易に識別することができるようにシェーディングされている（３１０、３１１、３１２および３１３参照）。スレッド内の個々のメッセージを強調表示する任意の方法が使用されることができる。例えば、メッセージが１つの色で示されることができ、ヘッダ情報が異なる色で示されることができる。他の実施形態により、ヘッダは多くの異なる方法で表示されることができる。例えば、ヘッダは、折り畳んで、半分折り畳んで、または完全に展開して示されることができる。他の情報がヘッダ内に格納されることもできる。例えば、ヘッダは、スレッド内の現在のメッセージの数を示す数字（３３０）を含むことができる。この例では第２のヘッダ３１０は、それが５つの全メッセージのうちの第２番目（３３０）であることを示す。
【００２１】
１つの実施形態により、ユーザが返信３４０をヒット（ｈｉｔ）するとき、ヘッダ情報はタグ付けされ、返信内に含まれる。ヘッダを識別する１つの方法は、「送信者」、「宛先」、「件名」など（ボックス（ｂｏｘ）３５０を参照）のスレッド内のフィールドを探すことによりどこにそのヘッダがあるかを決定するために試行錯誤法を使用することである。ヘッダを探し出すことの他の代替方法はヘッダにタグ付けをすることである。例えば、ＸＭＬマークアップが、どこにヘッダがあるかを示すために使用されることができる（下記の図および関連の議論を参照）。試行錯誤法は、どこでヘッダが始まり終わりうるかを適度に決定することができるが、ＸＭＬマークアップを使用するとプログラムは、送信者が誰であったか、受信者が誰であったか、件名が何であるか、日付がいつであるかに関して確実でありうる。１つの実施形態により、ヘッダは、それが目立つようにグラディエントシェーディング（ｇｒａｄｉｅｎｔ  ｓｈａｄｅ）される（３１０〜３１３）。このシェーディングは、ユーザがスレッドを視覚的に解析する助けをする。ユーザは、電子メールのスレッド中を迅速にスクロールダウン（ｓｃｒｏｌｌ  ｄｏｗｎ）し、シェーディングが始まるときにスレッド内の次のメッセージが始まることを知ることができる。
【００２２】
ヘッダは、誰が電子メールを送信したか、日付、または他の情報などの特徴に基づいて区別可能であってもよい。例えば、１人のユーザに関連したヘッダは赤色にされる（図示せず）が、他のユーザに関連したヘッダは緑色にされることができる。
【００２３】
図４は、スレッド内のメッセージをナビゲートするためのユーザインターフェース要素を示す。ユーザインターフェース要素は、ユーザにスレッド中をスクロールする必要もなく、スレッド内の１つのメッセージから次のメッセージにナビゲートする方法を提供することができる。１つの実施形態により、次の矢印４１０および前の矢印４２０によりユーザはスレッド内の次のメッセージまたは前のメッセージにナビゲートすることができる。
【００２４】
１つの実施形態により、ユーザがヘッダ４３０のシェーディング部分上をホバー（ｈｏｖｅｒ）するとき、２つのナビゲーションの矢印（４１０および４２０）が現れ、選択されたときにスレッドの表示された部分は、スレッド内の次のヘッダまたは前のヘッダに迅速にジャンプする。このようにして、ユーザは、矢印上にそれらのカーソル（ｃｕｒｓｏｒ）を置き、クリックし続けて、他のメッセージを選択するためにそれらのマウスを移動する必要もなくスレッド中を移動することができる。これによりユーザは、スレッド内の各メッセージに非常に迅速に進むことにより電子メールのスレッド内のメッセージを容易にナビゲートすることができる。例えば、ユーザが誰かの特定の返信を探している場合、ユーザは、その返信が探し出されるまで電子メールのスレッドをナビゲートするためにナビゲーションの矢印のうちの１つをクリックし続けることができる。
【００２５】
ナビゲーションの矢印の使用は、何かを検索するために電子メールのスレッド中をスクロールすることの代替方法である。ユーザは、画面の一部分を視覚的に見て、ナビゲーションの矢印のうちの１つをクリックし続け、ユーザが見ている画面の部分にメッセージをもたらすように最終的にクリックすることができる。本発明の１つの実施形態により、ユーザは、電子メールのスレッドの先頭または最後に移動するためにユーザインターフェース要素を選択することができる。最後の電子メールに進むとユーザは、電子メールを時間順に読むことをできる。ユーザは、第１の人が何を言ったかを読み、次いで次のスレッドに進むために上矢印をクリックするまたはスクロールすることができる。
【００２６】
図５は、スレッド内でメッセージの順序を逆にすることを示す。ユーザがスレッドを読むときに望みうるいくつかのことがある。１つは、時間順にスレッドを読むことである。スレッドを逆にすることなく、ユーザは最後のスレッドにナビゲートしなければならず、次いで最後から先頭にスレッドを読むであろう。
【００２７】
スレッド内のメッセージは、スレッドがスレッド内の第１の送信されたメッセージから始まるように逆にされることができる。１つの実施形態により、「元の電子メールとの会話を開始」と呼ばれるボタンが、スレッド全体内で最も古い返信が最初であるようにスレッド全体を逆にするために使用されることができる。典型的にはスレッドは、最も最近に送信されたメッセージから始まり、電子メールのスレッド内の元のメッセージである最も古いメッセージへ遡って行く。順序を逆にすることによりユーザは、長いスレッドにとってしばしば望ましい順序でスレッド全体を読むことができる。
【００２８】
元の順序５１０を参照すると、３つのメッセージがスレッド内に含まれている。第１のメッセージ（５３０）は、２００４年１１月１４日に送信され、スレッド５１０内で最後に表示されている。第２のメッセージ（５４０）は、２００４年１１月１５日午後９時５９分に送信され、スレッド５１０内で２番目に表示されている。第３のメッセージ（５５０）は、２００４年１１月１５日午後１１時１３分に送信され、スレッド５１０内で最初に表示されている。この例示のスレッドは、全体として容易に見られることができるが、多くのスレッドははるかに長く、ユーザがスレッド中をナビゲートすることは困難でありうる。
【００２９】
逆にされたスレッド５２０において、スレッド内に含まれたメッセージは、ここでユーザがスレッド内で送信された次のメッセージを見る前にスレッド内で送信された第１のメッセージを見ることができるように逆にされている。逆にされたとき、ここでメッセージ５３０がスレッド５２０内で最初に表示され、それに続いてメッセージ５４０、次いでメッセージ５５０が続く。
【００３０】
図６は、スレッドをタグ付けすることを示す。スレッドは、スレッドの一部が容易に識別されることができるようにタグ付けされている。１つの実施形態により、スレッドはＸＭＬスキーマ（ｓｃｈｅｍａ）によりタグ付けされる。多くの異なるマーキングスキーマ（ｍａｒｋｉｎｇ  ｓｃｈｅｍａ）が使用されることができる。１つの実施形態により、マークアップはスペース（ｓｐａｃｅ）を節約するために簡潔である。サンプル（ｓａｍｐｌｅ）の電子メール６１０を参照すると、Ｒｏｂｅｒｔｏ  Ｔａｂｏａｄａが送信者であり、Ｄｅｂｏｒａｈ  Ｈａｒｒｉｓが受信者であり、件名が「夕食」であり、メッセージが２００４年１０月２２日金曜日午後２時０１分に送信されたことが理解されよう。メッセージの本文は、「どこに夕食に行きたいか？  Ｒｏｂｅｒｔｏ」である。１つの実施形態により、メッセージ内の各項目は、要素を使用してタグ付けされる。電子メール６１０のＸＭＬマークアップ６２０は、例示のタグ付けされた要素を示す。下記の表は例示の要素の説明を示す。
【００３１】
【表１】
2009508233.tif 000003
【００３２】
あるいは、電子メール内の要素の一部分だけがタグ付けされてよい。例えば、ヘッダ情報のすべてが単一のユニットとしてタグ付けされることができる。
【００３３】
図７は、複雑なスレッド７００を示す。スレッド７１０内のメッセージは、様々な電子メールプログラムから来ることができる。例えば、第１のメッセージはプログラム１により生成されることができるが、スレッド内の残りのメッセージはプログラム２により生成されることができる。１つの実施形態により、スレッドが受信されるとき、スレッドはヘッダ情報を探し出すために解析される。構文解析は、マークアップを使用しない電子メールプログラムを使用して書かれる電子メールメッセージに関するヘッダブロック（ｈｅａｄｅｒ  ｂｌｏｃｋ）を識別する。１つの実施形態により、一時的なタグが、スレッドがレンダリングされる前にスレッドに加えられる。タグは存続することもできる。一時的なタグ付けは、電子メールのコンポーザ（ｃｏｍｐｏｓｅｒ）のレガシ（ｌｅｇａｃｙ）版（または他の電子メールクライアント）が必要とされるとき、本明細書で説明されるナビゲーション機能を提供する助けをする。
【００３４】
電子メールに印を付けるために使用されるＸＭＬマークアップは、スレッド内で肥大化を避けるために簡潔である。図示されるように、電子メールのサイズがＸＭＬマークアップ７２０により著しく影響を及ぼされないように非常に簡単なタグが使用される。ＸＭＬマークアップ７２０は、サンプルの電子メール７１０のマークアップである。
【００３５】
図８は、本発明の態様によるスレッド中をナビゲートするプロセスを示す。開始操作後、プロセスは、スレッドがアクセスされるブロック８１０に進む。
【００３６】
操作８２０に進むと、スレッドは、対象となる項目の位置を決定するために解析される。上述のように、１つの実施形態により各メッセージに関するヘッダが対象となる項目である。しかし、スレッド内の任意の項目が対象となる項目として指定されることができる。構文解析は、既にタグ付けされているスレッド内の位置に関するスレッドを調査し、既にタグ付けされたスレッドの範囲を識別し、次いでタグ付けされなかったスレッドの部分をタグ付けする。この時点でヘッダの位置は知られる。
【００３７】
操作８３０に移動すると、ヘッダなどのスレッドの外観が変更されることができる。例えば、グラディエントシェーディングがヘッダに適用されることができ、ヘッダは、色付けされ、圧縮される／拡張されることなどができる。概して、定義される任意の動作が適用されることができる。
【００３８】
操作８４０ではスレッドは、レンダリングされ、スレッド中をナビゲーションするためにユーザに示される。レンダリングされたスレッドは、ユーザがスレッドをより容易にナビゲートすることができるように変更された外観を含む。
【００３９】
操作８５０に進むとスレッドとの対話が、ユーザが上述のナビゲーション機能のいずれかを活性化したかどうかを決定するためにモニタされる。例えば、プロセスは、ユーザがヘッダ上をホバーするかどうかモニタすることができる。プロセスは、いつユーザインターフェースボタンが選択されるかを決定するためにモニタすることもできる。
【００４０】
操作８６０に移行すると、任意の決定されたナビゲーション動作が行われる。例えば１つの実施形態により、ユーザがヘッダ上をホバーするとき、次の矢印および前の矢印が示される。動作は、ユーザインターフェース制御を選択する動作に基づいて表示を変えていてもよい。例えば、制御は、スレッドを逆にする、スレッドの先頭／最後に移動する、スレッド内の次の／前のメッセージに移動するなどのために選択されることができる。
【００４１】
次いでプロセスは、終了操作に移動し、他の動作を処理し続ける。
【００４２】
上記の明細書、例およびデータは、本発明の構成の製造および使用の完全な説明を提供する。
【図面の簡単な説明】
【００４３】
【図１】例示のコンピューティング装置を示す図である。
【図２】スレッドナビゲーションシステムを概略的に示す機能ブロック図である。
【図３】例示のスレッドを示す図である。
【図４】スレッド内のメッセージをナビゲートするためのユーザインターフェース要素を示す図である。
【図５】スレッド内でメッセージの順序を逆にすることを示す図である。
【図６】スレッドをタグ付けすることを示す図である。
【図７】複雑なスレッドを示す図である。
【図８】本発明の態様によるスレッド中をナビゲートするプロセスを示す図である。
【図１】
2009508233.tif 000004
【図２】
2009508233.tif 000005
【図３】
2009508233.tif 000006
【図４】
2009508233.tif 000007
【図５】
2009508233.tif 000008
【図６】
2009508233.tif 000009
【図７】
2009508233.tif 000010
【図８】
2009508233.tif 000011
【国際調査報告】
2009508233.tif 000012
2009508233.tif 000013