(57)【要約】  コンテンツファイルのためのカスタムオブジェクトを生成するための技法が説明される。装置は、デジタルモンタージュのためのタイルオブジェクトを生成するように動作可能な作成コンポーネントを含むモンタージュアプリケーションを実行するように構成される論理デバイスを含むことができ、作成コンポーネントは、コンテンツファイルをデジタルモンタージュの表示面の表示タイルと関連付けるための制御指示を受け取り、コンテンツファイルのコンテンツファイルタイプを特定し、コンテンツファイルタイプに従って、コンテンツファイルからの情報を伴うタイルオブジェクトを生成するために動作可能である。他の実施形態が説明され特許請求される。
2014519673.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツファイルをデジタルモンタージュの表示面の表示タイルと関連付けるための制御指示を受信するステップと、
前記コンテンツファイルのコンテンツファイルタイプを特定するステップと、
前記コンテンツファイルタイプに基づいて前記コンテンツファイルのコンテンツ部分を取り込むステップと、
前記コンテンツ部分に基づいてタイルオブジェクトを生成するステップと
を含む、コンピューター実施方法。
【請求項２】
対応するタイルオブジェクトコンテナー内に格納される選択されたコンテンツ部分クリップを有するタイルオブジェクト面として、前記タイルオブジェクトを生成するステップを含む、請求項１に記載のコンピューター実施方法。
【請求項３】
前記コンテンツファイルタイプと、前記コンテンツファイルタイプと関連付けられるタイプ定義とのうちの少なくとも１つに基づいて、前記コンテンツファイルの前記コンテンツ部分からコンテンツ部分クリップを選択するステップを含み、前記タイプ定義が、コンテンツおよびプロパティクラス、コンテンツオブジェクトクラス、またはコンテンツページクラスの情報を含む、請求項１に記載のコンピューター実施方法。
【請求項４】
選択されたコンテンツ部分クリップをタイルオブジェクト面の対応するタイルオブジェクトコンテナーと関連付けるステップを含む、請求項１に記載のコンピューター実施方法。
【請求項５】
前記コンテンツファイルの前記コンテンツ部分からコンテンツ部分クリップを選択すること、または
前記コンテンツファイルの前記コンテンツ部分からのコンテンツ部分クリップを、対応するタイルオブジェクトコンテナーと関連付けること
のうちの少なくとも１つを行うための制御指示を入力デバイスから受け取るステップを含む、請求項１に記載のコンピューター実施方法。
【請求項６】
対応するタイルオブジェクトコンテナー内にコンテンツ部分クリップを収めて、前記対応するタイルオブジェクトコンテナーのコンテナー定義とフィッティングアルゴリズムとのセットに従って、埋まったコンテナーを形成するステップを含む、請求項１に記載のコンピューター実施方法。
【請求項７】
実行されると、請求項１、２、３、４、５、または６のいずれか一項に記載の方法をシステムが実行することを可能にする命令を格納する記憶媒体を含む、製造物品。
【請求項８】
デジタルモンタージュのためのタイルオブジェクトを生成するように動作可能な作成コンポーネントを含むモンタージュアプリケーションを実行するように構成された論理デバイスであって、前記作成コンポーネントが、コンテンツファイルを前記デジタルモンタージュの表示面の表示タイルと関連付けるための制御指示を受け取り、前記コンテンツファイルのコンテンツファイルタイプを特定し、前記コンテンツファイルタイプに従って、前記コンテンツファイルからの情報を伴う前記タイルオブジェクトを生成するためのものである、論理デバイス
を備える装置。
【請求項９】
前記作成コンポーネントが、前記コンテンツファイルタイプに対応するタイプモジュールのためのタイプ定義に基づいて、タイルオブジェクトコンテナーのための前記コンテンツファイルから情報を選択し、前記選択された情報に基づいて前記タイルオブジェクトを生成するように動作可能である、請求項８に記載の装置。
【請求項１０】
前記作成コンポーネントが、フィッティングアルゴリズムを実行し、前記フィッティングアルゴリズムが、１つまたは複数のタイルオブジェクトコンテナー内に前記コンテンツファイルからの情報を収めて、対応するタイルオブジェクトコンテナーのコンテナー定義と前記フィッティングアルゴリズムとのセットに従って、埋まったコンテナーを形成するように構成される、請求項８に記載の装置。
【発明の詳細な説明】
【背景技術】
【０００１】
[0001]モンタージュ（montage）は、別々の要素を統合して単一の合成要素を形成することを含み得る。たとえば、モンタージュは、いくつかの別々の写真で構成された合成写真、または完全に異なる画像の高速なシーケンスを含むビデオシーケンスを含み得る。電子モンタージュシステムは、異なるウェブアプリケーションから提供された異なる構成ウェブページを含む合成ウェブページなど、デジタルコンテンツを使用して、デジタルモンタージュを作成するように設計されてきた。場合によっては、構成ウェブページは、検索エンジンによって使用される所与の検索用語に関連するウェブページなどの主題、またはブラウザーの履歴に記憶されたユーザーが常に訪れるウェブページに従って、編成される。構成ウェブページは、合成ウェブページに空間的な制約があることにより、実際のウェブページの忠実度の低い表現であることがしばしばある。したがって、ユーザーは、ある構成ウェブページを選択して、より精細な表示のために、選択されたウェブページのより忠実度の高いバージョンを取り込むことができる。
【発明の概要】
【発明が解決しようとする課題】
【０００２】
[0002]しかしながら、デジタル情報の量が増えるにつれて、意味のある情報をユーザーに提供するような方法でデジタルモンタージュを構築することが、ますます難しくなっている。より具体的には、ある特定のコンテンツソースに関心があるかどうかについてユーザーが情報に基づく判断を下すことを可能にする方法で、複数のコンテンツソースからのコンテンツをデジタルモンタージュにおいて表現することがますます難しくなっている。本改善点が必要とされたのは、これらの、および他の検討事項を考慮した結果である。
【課題を解決するための手段】
【０００３】
[0003]この「発明の概要」は、以下の「発明を実施するための形態」においてさらに説明される複数の概念から選ばれたものを、簡単な形態で紹介するために与えられる。この「発明の概要」は、特許請求される主題の主要な特徴または不可欠な特徴を特定することも、特許請求される主題の範囲を決定するのを助けることも意図されていない。
【０００４】
[0004]様々な実施形態は、一般に、電子モンタージュシステムを対象とする。いくつかの実施形態は特に、異種のデータソースからデジタルモンタージュを生成するように構成された、電子モンタージュシステムを対象とする。電子モンタージュシステムは、ユーザーが、データソースのカスタマイズされた表現を伴う、カスタマイズされたデジタルモンタージュを生成することを可能にでき、これによって、他のユーザーが、より詳細な表示を行うことに関心のあるデータソースを迅速に特定し選択することが可能になる。電子モンタージュシステムは、公開モデル、メッセージングモデル、または公開モデルとメッセージングモデルの組合せを介して、カスタマイズされたデジタルモンタージュを他のユーザーに公開することができる。
【０００５】
[0005]一実施形態では、たとえば、装置は、モンタージュアプリケーションを実行するように構成される論理デバイスを含み得る。論理デバイスは、たとえば、プロセッサとメモリとを有する処理システムを含み得る。モンタージュアプリケーションは、複数の表示タイルを有する表示面を提供し、コンテンツファイルを表示タイルと関連付けるための制御指示を受け取り、コンテンツファイルのコンテンツファイルタイプに基づいてコンテンツファイルのためのタイルオブジェクトを生成し、表示面とタイルオブジェクトとをモンタージュとして記憶するように動作可能な、作成コンポーネントを含み得る。
【０００６】
[0006]モンタージュアプリケーションはさらに、デジタルモンタージュのためのタイルオブジェクトを生成するように動作可能な、作成コンポーネントを含み得る。作成コンポーネントは、コンテンツファイルをデジタルモンタージュの表示面の表示タイルと関連付け、コンテンツファイルのコンテンツファイルタイプを特定し、コンテンツファイルタイプに従ってコンテンツファイルからの情報を伴うタイルオブジェクトを生成するための、制御指示を受け取ることができる。作成コンポーネントは、１つまたは複数のタイルオブジェクトコンテナーに格納されているコンテンツファイルからの選択された情報を有するタイルオブジェクト面として、タイルオブジェクトを生成することができる。
【０００７】
[0007]モンタージュアプリケーションはまたさらに、表示面の各々の関連付けられた表示タイル内に各々のタイルオブジェクトを表示するための第１のユーザーインターフェースビューを生成し、タイルオブジェクトを選択するための制御指示を受け取り、タイルオブジェクトに対応するコンテンツファイルを表示するための第２のユーザーインターフェースビューを生成するように動作可能な、表示コンポーネントを含み得る。
【０００８】
[0008]これらのおよび他の特徴および利点は、以下の発明を実施するための形態を読み、関連する図面を検討すれば明らかであろう。前述の全般的な説明と、以下の発明を実施するための形態の両方が単なる例であり、特許請求される態様を制限するものではないことを理解されたい。
【図面の簡単な説明】
【０００９】
【図１】[0009]モンタージュシステムのある実施形態を示す図である。
【図２】[0010]作成コンポーネントのある実施形態を示す図である。
【図３Ａ】[0011]表示面のある実施形態を示す図である。
【図３Ｂ】[0012]タイルオブジェクトを伴う表示面のある実施形態を示す図である。
【図３Ｃ】[0013]タイルオブジェクトコンテナーを伴うタイルオブジェクトのある実施形態を示す図である。
【図４】[0014]作成コンポーネントのある例を示す図である。
【図５】[0015]メッセージングシステムのある実施形態を示す図である。
【図６】[0016]メッセージングシステムのメッセージフローのある実施形態の図である。
【図７ＡＢ】[0017]図７Ａはメッセージのユーザーインターフェースビューのある実施形態の図である。[0018]図７Ｂはモンタージュのユーザーインターフェースビューのある実施形態の図である。
【図７ＣＤ】[0019] 図７Ｃはタイルオブジェクトのユーザーインターフェースビューのある実施形態の図である。[0020] 図７Ｄはコンテンツファイルのユーザーインターフェースビューのある実施形態の図である。
【図８Ａ】[0021]作成コンポーネントがモンタージュを生成するための論理フローのある実施形態を示す図である。
【図８Ｂ】[0022]作成コンポーネントがモンタージュのためのタイルオブジェクトを生成するための論理フローのある実施形態を示す図である。
【図９】[0023]コンポーネントを公開するための論理フローのある実施形態を示す図である。
【図１０】[0024]コンピューティングアーキテクチャのある実施形態を示す図である。
【発明を実施するための形態】
【００１０】
[0025]様々な実施形態は全般に、異種のデータソースからデジタルモンタージュを生成するように構成された、電子モンタージュシステムを対象とする。電子モンタージュシステムは、たとえば、ユーザーが、アプリケーションプログラムなどの異なるソフトウェアプログラムによって生成されるコンテンツファイルを使用して、高度にカスタマイズされたデジタルモンタージュを生成することを可能にし得る。
【００１１】
[0026]デジタルモンタージュは、基礎となるコンテンツファイルのカスタマイズされた表現を含む、１つまたは複数のタイルオブジェクトを含み得る。タイルオブジェクトは、コンテンツファイルの表現、エージェント、または「ティーザー(teaser)」を含み得る。タイルオブジェクトは、関連付けられたコンテンツファイルに関心があるかどうか、および関連付けられたコンテンツファイルがより詳細な調査に値するかどうかを、コンテンツ利用者が迅速かつ容易に判定することを可能にする方法でレンダリングされた、関連付けられたコンテンツファイルからの情報の簡潔なセットである。タイルオブジェクトは、コンテンツファイルから選択的に抽出されコンテンツファイルのために特別に作成されたタイプ定義に従ってフォーマットされた情報を使用して、構築され得る。タイプ定義は、ファイル拡張、データスキーマ、フォーマット制御、埋め込みオブジェクト、埋め込みコード、プロパティ、スクリプト、および他のファイル特有の情報などの、コンテンツファイルについての詳細な情報を含む。タイプ定義はまた、コンテンツファイルから抽出すべき情報のタイプ、抽出された情報のフォーマット、作成すべきタイルオブジェクトのバージョンの数などに関する、規則のセットを含む。このようにして、広範囲のコンテンツファイルを使用してデジタルモンタージュを作成しつつ、見る者に意味のある情報を提供する表現が高度なタイルオブジェクトを構築することができる。この手法は、見る者が、モンタージュ中のタイルオブジェクトを容易に調査し、多数のタイルオブジェクトの中から関心のあるコンテンツファイルを特定し、あるタイルオブジェクトを選択してより詳細な表示のためにコンテンツファイルを迅速に取り込むことを可能にする。その結果、実施形態は、価格、スケーラビリティ、モジュール性、拡張性、または操作者、デバイス、もしくはネットワークのための相互運用性を改善することができる。
【００１２】
[0027]図１は、モンタージュアプリケーション１４０を有するモンタージュシステム１００のブロック図を示す。一実施形態では、たとえば、モンタージュシステム１００およびモンタージュアプリケーション１４０は、たとえば、コンポーネント１１０、１３０などの様々なコンポーネントを含み得る。本明細書で使用される場合、「システム」および「アプリケーション」および「コンポーネント」という用語は、ハードウェア、ハードウェアとソフトウェアと組合せ、ソフトウェア、または実行中のソフトウェアといずれかを含む、コンピューター関連のエンティティを指すことが意図される。たとえば、コンポーネントは、プロセッサ上で実行されるプロセス、プロセッサ、ハードディスクドライブ、（光学／または磁気ストレージ媒体の）複数のストレージデバイス、オブジェクト、実行ファイル、実行スレッド、プログラム、および／またはコンピューターとして実装され得る。例示として、サーバー上で実行されるアプリケーションとサーバーの両方が、コンポーネントであり得る。１つまたは複数のコンポーネントは、プロセスおよび／または実行スレッド内に存在してもよく、コンポーネントは、所与の実装形態における望みに応じて、１つのコンピューターに局在してもよく、かつ／また２つ以上のコンピューターに分散してもよい。実施形態は、これに関連して限定はされない。
【００１３】
[0028]図１に示される図解された実施形態では、モンタージュシステム１００およびモンタージュアプリケーション１４０は、電子デバイスによって実装され得る。電子デバイスの例は、限定されることなく、モバイルデバイス、携帯情報端末、モバイルコンピューティングデバイス、スマートフォン、携帯電話、ハンドセット、受信用ページャー、双方向ページャー、メッセージングデバイス、コンピューター、パーソナルコンピューター（ＰＣ）、デスクトップコンピューター、ラップトップコンピューター、ノートブックコンピューター、ハンドヘルドコンピューター、タブレットコンピューター、サーバー、サーバーアレイまたはサーバーファーム、ウェブサーバー、ネットワークサーバー、インターネットサーバー、ワークステーション、ミニコンピューター、メインフレームコンピューター、スーパーコンピューター、ネットワーク機器、ウェブ機器、分散型コンピューティングシステム、マルチプロセッサシステム、プロセッサベースのシステム、ゲームデバイス、家電製品、プログラム可能な家電製品、テレビ、デジタルテレビ、セットトップボックス、ワイヤレスアクセスポイント、基地局、加入者局、モバイルサブスクライバーセンター、無線ネットワークコントローラー、ルーター、ハブ、ゲートウェイ、ブリッジ、スイッチ、マシン、またはこれらの組合せを含み得る。図１に示されるモンタージュアプリケーション１４０は、あるトポロジーでは限られた数の要素を有するが、モンタージュアプリケーション１４０は、所与の実装形態に必要に応じて、代替的なトポロジーでは、より多数またはより少数の要素を含み得ることが理解され得る。
【００１４】
[0029]コンポーネント１１０、１３０は、様々なタイプの通信媒体を介して通信可能に結合され得る。コンポーネント１１０、１３０は、互いに動作を調整することができる。この調整には、単方向のまたは双方向の情報の交換が関与し得る。たとえば、コンポーネント１１０、１３０は、通信媒体を通じて通信される信号という形で、情報を通信することができる。情報は、様々な信号線に割り当てられる信号として実装され得る。そのような割り当てにおいては、各メッセージが信号である。しかしながら、さらなる実施形態は代わりに、データメッセージを利用することができる。そのようなデータメッセージは、様々な接続を通じて送信され得る。例示的な接続には、パラレルインターフェース、シリアルインターフェース、およびバスインターフェースがある。
【００１５】
[0030]図１に示される図解された実施形態では、モンタージュシステムは、１つまたは複数のコンテンツファイル１０４−ｃと、モンタージュアプリケーション１４０とを含み得る。コンテンツファイル１０４−ｃは、アプリケーションプログラム、ウェブアプリケーション、ウェブサービスなど、ソフトウェアプログラムによって生成されたデジタルコンテンツを含み得る。モンタージュアプリケーション１４０は、１つまたは複数の選択されたコンテンツファイル１０４−ｃを使用して、モンタージュ１２０を生成することができる。一実施形態では、１つまたは複数のコンテンツファイル１０４−ｃは、ユーザーによって手動で選択され得る。一実施形態では、１つまたは複数のコンテンツファイル１０４−ｃは、たとえば、検索エンジンによって使用される所与の検索語に関連する検索結果、またはブラウザーの履歴に記憶されているユーザーが常に訪れているコンテンツファイル１０４−ｃを使用して、ソフトウェアプログラムによって自動的に選択され得る。
【００１６】
[0031]モンタージュアプリケーション１４０は、要素の中でもとりわけ、作成コンポーネント１１０と表示コンポーネント１３０とを含み得る。作成コンポーネント１１０は、モンタージュ１２０を作成または生成するためにユーザーによって使用され得る。モンタージュ１２０を作成または生成するユーザーは、本明細書では「コンテンツ作成者」と呼ばれることがあり得る。表示コンポーネント１３０は、モンタージュ１２０を見る、または操作するためにユーザーによって使用され得る。モンタージュ１２０を見るまたは操作するユーザーは、本明細書では「コンテンツ利用者」と呼ばれることがあり得る。モンタージュアプリケーション１４０はさらに、図２〜図１１を参照してより詳しく説明されるような、他のコンポーネントを含む。
【００１７】
[0032]作成コンポーネント１１０は概して、コンテンツ作成者がモンタージュ１２０を生成し、創作し、または他の方法で作成することを可能にするための、ユーザーインターフェースビューとツールとを生成することを含む、モンタージュアプリケーション１４０のための作成動作を管理することができる。モンタージュ１２０は、単一の合成デジタル情報要素を形成するための、選択されたコンテンツファイル１０４−ｃからのデジタル情報要素の単一の合成または統合を含み得る。モンタージュ１２０は、たとえば、アプリケーションプログラムのためのアプリケーションファイルなど、異種のアプリケーションによって生成される異なる構成デジタル情報要素を有する合成ドキュメントを含み得る。場合によっては、構成デジタル情報要素は、そうしたデジタル情報要素が事業プロジェクトに関するか、個人的な休暇に関するか、または休日に関するかなどの、主題に従って編成される。構成デジタル情報要素は、しばしば合成ドキュメントの空間制約が原因で、実際のコンテンツファイル１０４−ｃの忠実度の低い表現である。したがって、コンテンツ利用者は、ある構成デジタル情報要素を選択して、より精細な表示のために、関連するコンテンツファイル１０４−ｃのより忠実度の高いバージョンを取り込むことができる。
【００１８】
[0033]一実施形態では、たとえば、作成コンポーネント１１０は、モンタージュ１２０のための表示面１２２を設けるように構成され得る。表示面１２２は、あるトポロジーでは、表示面１２２上で画定または配置される複数の表示タイル１２４−ａを有し得る。作成コンポーネント１１０は、いくつかのコンテンツファイル１０４−ｃをいくつかの表示タイル１２４−ａと関連付けるための、制御指示１０２−ｂを受け取ることができる。作成コンポーネント１１０は、様々なコンテンツファイルタイプと、コンテンツファイル１０４−ｃと関連付けられるタイプ定義とに基づいて、コンテンツファイル１０４−ｃのためのタイルオブジェクト１２６−ｅを生成することができる。作成コンポーネント１１０は、モンタージュ１２０の一部として、表示面１２２とタイルオブジェクト１２６−ｅとを記憶することができ、モンタージュ１２０は次いで、様々なコンテンツ利用者に公開または配信され得る。
【００１９】
[0034]本明細書で使用されるような「ａ」および「ｂ」および「ｃ」および同様の識別子が、任意の正の整数を表す変数を意図することは、注目に値する。したがって、たとえば、ある実装形態においてａ=５という値を設定する場合、表示タイル１２４−ａの完全なセットは、表示タイル１２４−１、１２４−２、１２４−３、１２４−４、および１２５−５を含み得る。実施形態は、これに関連して限定はされない。
【００２０】
[0035]作成コンポーネント１１０は、複数の表示タイル１２４−ａを有する表示面１２２を設けることによって、モンタージュ１２０を生成するための作成動作を開始することができる。表示面１２２は、座標系と境界とを有する任意の定義されたサイズの２次元（２Ｄ）または３次元（３Ｄ）の位相空間を含み得る。表示面１２２の例は、ワードプロセッシングプログラムのドキュメント、プレゼンテーションプログラムのスライド、スプレッドシートプログラムのワークシート、メモ帳プログラムのメモ帳、個人情報マネージャー（ＰＩＭ）の連絡先カード、およびアプリケーションプログラムによって、典型的に使用される他の空間を含み得る。
【００２１】
[0036]表示タイル１２４−ａは、タイルオブジェクト１２６−ｅなどの具体的な情報のセットを提示するように設計された、表示面１２２の定義された領域を含み得る。定義された領域は、所与の実装形態における望みに応じて、任意のサイズ、寸法、または形状であってもよい。所与の表示面１２２は、任意の数の表示面１２４−ａを有してもよく、各表示タイル１２４−ａは、すべての表示タイル１２４−ａが表示面１２２の所与のサイズ内に確実に収まるような、定義のセット（たとえば、サイズ、形状、寸法、配置）を有し得る。表示タイル１２４−ａの定義は、表示面１２２、コンテンツファイル１０４−ｃのセット、コンテンツファイル１０４−ｃと表示タイル１２４−ａとの関連、コンテンツファイル１０４−ｃと関連付けられるタイルオブジェクト１２６−ｅ、ディスプレイの特性、デバイスの特性、ユーザー選好、および他の要因に基づいて、動的に変化し得る。実施形態は、これに関連して限定はされない。
【００２２】
[0037]一実施形態では、コンテンツ作成者は、表示面１２２と表示タイル１２４−ａとをカスタム定義することができる。モンタージュアプリケーション１４０のユーザーインターフェースは、表示面１２２の特性と、表示面１２２上の表示タイル１２４−ａのセットとを修正するように特別に定義される、様々な制御機構を提供することができる。そのような制御機構の例は、限定されることなく、描画制御機構、寸法制御機構、サイズ制御機構、幅制御機構、高さ制御機構、ピクセル制御機構、リフレッシュ制御機構などを含み得る。あるいは、コンテンツ作成者は、異なる表示面と表示タイル１２４−ａとを提供する、任意の数のモンタージュテンプレートから選択することができる。
【００２３】
[0038]作成コンポーネント１１０は、いくつかのコンテンツファイル１０４−ｃをいくつかの表示タイル１２４−ａと関連付けるための、制御指示１０２−ｂを受け取ることができる。作成コンポーネント１１０は、ユーザーが、コンテンツファイル１０４−ａを選択し、コンテンツファイル１０４−ａを表示タイル１２４−ａと関連付けることを可能にする、ユーザーインターフェースビューとツールとを生成することができる。たとえば、ユーザーは、コンテンツファイル１０４−１を選択し表示タイル１２４−１上でコンテンツファイル１０４−１をドラッグするためのポインティングデバイスなどの入力デバイスを使用することができる。ユーザーの選択は、選択を作成コンポーネント１１０に示すメッセージまたは信号として、制御指示１０２−ｂを生成することができる。あるいは、制御指示１２０−ｂは、コンテンツ選択アルゴリズムに従ってプログラム的に生成され得る。たとえば、コンテンツ選択アルゴリズムは、検索エンジンによって生成される検索結果から、またはユーザーのブラウジングパターンの分析によって、コンテンツファイル１０４−ｃを自動的に選択するための、定義された規則のセットを有し得る。実施形態は、これに関連して限定はされない。
【００２４】
[0039]コンテンツファイル１０４−ｃは、アプリケーションプログラム、ウェブアプリケーション、ウェブサービス、クライアントアプリケーション、サーバーアプリケーション、システムプログラムなど、ソフトウェアプログラムによって生成される、任意のデジタル情報要素またはデジタルコンテンツを含み得る。異なるソフトウェアプログラムは、異なるタイプのデジタルコンテンツを生成し得る。したがって、異なるソフトウェアプログラムによって生成されるデジタルコンテンツは、異種のデジタルコンテンツを含み得る。コンテンツファイル１０４−ｃの例は、限定されることなく、ワードプロセッシングファイル、スプレッドシートファイル、プレゼンテーションファイル、個人情報マネージャー（ＰＩＭ）ファイル、データベースファイル、パブリッシャーファイル、ドローイングファイル、メモ帳ファイル、メッセージファイル、プロジェクトファイルなど、アプリケーションファイルを含み得る。コンテンツファイル１０４−ｃのさらなる例は、オーディオファイル、画像ファイル、ビデオファイル、オーディオ／ビデオ（ＡＶ）ファイル、動画ファイル、ゲームファイル、マークアップファイル、ウェブページファイル、ソーシャルネットワーキングサービス（ＳＮＳ）ファイルなど、マルチメディアファイルを含み得る。これらはコンテンツファイル１０４−ｃの少数の例にすぎず、実施形態はこれらの例に限定されないことが理解され得る。
【００２５】
[0040]一実施形態では、コンテンツファイル１０４−ｃは、ワシントン州レッドモンドのＭｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎによって製造される、ＭＩＣＲＯＳＯＦＴ  ＷＩＮＤＯＷＳ（登録商標）向けＭＩＣＲＯＳＯＦＴ（登録商標）  ＯＦＦＩＣＥ生産性スイートなど、特定のオペレーティングシステムのために設計された、相互に関連するクライアントアプリケーション、サーバーアプリケーション、ウェブサービスという、生産性スイートのコンテンツファイルを含み得る。クライアントアプリケーションの例は、限定されることなく、ＭＩＣＲＯＳＯＦＴ  ＷＯＲＤ、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ（登録商標）、ＭＩＣＲＯＳＯＦＴ  ＰＯＷＥＲＰＯＩＮＴ（登録商標）、ＭＩＣＲＯＳＯＦＴ  ＯＵＴＬＯＯＫ（登録商標）、ＭＩＣＲＯＳＯＦＴ  ＡＣＣＥＳＳ（登録商標）、ＭＩＣＲＯＳＯＦＴ  ＩＮＦＯＰＡＴＨ（登録商標）、ＭＩＣＲＯＳＯＦＴ  ＯＮＥＮＯＴＥ（登録商標）、ＭＩＣＲＯＳＯＦＴ  ＰＲＯＪＥＣＴ、ＭＩＣＲＯＳＯＦＴ  ＰＵＢＬＩＳＨＥＲ、ＭＩＣＲＯＳＯＦＴ  ＳＨＡＲＥＰＯＩＮＴ（登録商標）  ＷＯＲＫＳＰＡＣＥ、ＭＩＣＲＯＳＯＦＴ  ＶＩＳＩＯ（登録商標）、ＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ  ＩＮＴＥＲＣＯＮＮＥＣＴ、ＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ  ＰＩＣＴＵＲＥ  ＭＡＮＡＧＥＲ、ＭＩＣＲＯＳＯＦＴ  ＳＨＡＲＥＰＯＩＮＴ  ＤＥＳＩＧＮＥＲ、およびＭＩＣＲＯＳＯＦＴ  ＬＹＮＣを含み得る。サーバーアプリケーションの例は、限定されることなく、ＭＩＣＲＯＳＯＦＴ  ＳＨＡＲＥＰＯＩＮＴ  ＳＥＲＶＥＲ、ＭＩＣＲＯＳＯＦＴ  ＬＹＮＣ  ＳＥＲＶＥＲ、ＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ  ＦＯＲＭＳ  ＳＥＲＶＥＲ、ＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ  ＧＲＯＯＶＥ（登録商標）  ＳＥＲＶＥＲ、ＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ  ＰＲＯＪＥＣＴ  ＳＥＲＶＥＲ、ＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ  ＰＲＯＪＥＣＴ  ＰＯＲＴＦＯＬＩＯ  ＳＥＲＶＥＲ、およびＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ  ＰＥＲＦＯＲＭＡＮＣＥＰＯＩＮＴ（登録商標）  ＳＥＲＶＥＲを含み得る。ウェブサービスの例は、限定されることなく、ＭＩＣＲＯＳＯＦＴ  ＷＩＮＤＯＷＳ  ＬＩＶＥ（登録商標）、ＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ  ＷＥＢ  ＡＰＰＬＩＣＡＴＩＯＮＳ、ＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ  ＬＩＶＥ、ＭＩＣＲＯＳＯＦＴ  ＬＩＶＥ  ＭＥＥＴＩＮＧ、ＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ  ＰＲＯＤＵＣＴ  ＷＥＢ  ＳＩＴＥ、ＭＩＣＲＯＳＯＦＴ  ＵＰＤＡＴＥ  ＳＥＲＶＥＲ、およびＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ  ３６５を含み得る。実施形態は、これらに関連して限定はされない。
【００２６】
[0041]一実施形態では、コンテンツファイル１０４−ｃは、モンタージュ１２０を作成するためにモンタージュアプリケーション１４０の同じコンテンツ作成者によって個人的に作成された、コンテンツファイルを含み得る。たとえば、コンテンツ作成者が事業プロジェクトのプロジェクトマネージャーであり、事業プロジェクトの過程で、ワードプロセッシングファイル、スプレッドシートファイル、およびプレゼンテーションファイルなど、事業プロジェクトと関連する様々なアプリケーションファイルを作成したと仮定する。コンテンツ作成者は、モンタージュアプリケーション１４０の作成コンポーネント１１０を使用して、コンテンツ作成者によって個人的に作成された各ファイルのためのタイルオブジェクト１２６−ｅを有する、幹部向けの報告を作成することができる。
【００２７】
[0042]作成コンポーネント１１０は、コンテンツファイル１０４−ｃの様々なコンテンツファイルタイプに基づいて、選択されたコンテンツファイル１０４−ｃのためのタイルオブジェクト１２６−ｅを生成することができる。コンテンツファイル１０４−ｃが表示タイル１２４−ａと関連付けられると、作成コンポーネント１１０は、選択されたコンテンツファイル１０４−ｃのためのタイルオブジェクト１２６−ｅを生成することができる。一実施形態では、単一のコンテンツファイル１０４−ｃが単一の表示タイル１２４−ａと関連付けられてもよく、これによって１対１の対応を形成する。一実施形態では、複数のコンテンツファイル１０４−ｃが単一の表示タイル１２４−ａと関連付けられてもよく、これによって１対多数の対応を形成する。
【００２８】
[0043]タイルオブジェクト１２６−ｅは、コンテンツファイル１０４−ｃの表現、エージェント、または「ティーザー」を含み得る。タイルオブジェクト１２６−ｅは、関連付けられたコンテンツファイル１０４−ｃに関心があるかどうか、および関連付けられたコンテンツファイル１０４−ｃがより詳細な調査に値するかどうかを、コンテンツ利用者が迅速かつ容易に判定することを可能にする方法でレンダリングされた、関連付けられたコンテンツファイル１０４−ｃからの情報の簡潔なセットである。
【００２９】
[0044]タイルオブジェクト１２６−ｅは、コンテンツファイル１０４−ｃから取り込まれたコンテンツ部分１０６−ｄを使用して生成され得る。コンテンツ部分１０６−ｄは、コンテンツファイル１０４−ｃによって記憶されている完全な情報のセットから導出または抽出された、情報のサブセットを含み得る。モンタージュ１２０の１つの利点は、異なるコンテンツファイル１０４−ｃからの情報が、単一の表示面１２２に表示され得るということである。しかしながら、各コンテンツファイル１０４−ｃは、単一の表示タイル１２４−ａの定義された領域内で表示され得る、より多くの量の情報を含み得る。たとえば、コンテンツファイル１０４−１がワードプロセッシングドキュメントを含む場合、作成コンポーネント１１０は、サムネイルとして小型化される場合でも、ワードプロセッシングドキュメント内に含まれるすべての情報（たとえば、テキスト、図、画像、絵、埋め込みオブジェクト）を表示タイル１２４−１の利用可能な領域または空間の中に収めることが不可能であり得る。したがって、作成コンポーネント１１０は、コンテンツソース１０４−１内に含まれる情報のセットから情報のサブセットを取り込み、表示タイル１２４−１の境界のセット内へと情報のサブセットをフォーマットし、タイルオブジェクト１２６−１としてフォーマットされた情報のサブセットを記憶することができる。たとえば、タイルオブジェクト１２６−１は、ワードプロセッシングドキュメント、ワードプロセッシングドキュメントのコンテンツ作成者（たとえば、作成者）、およびワードプロセッシングドキュメントからの画像の組合せを含み得る。
【００３０】
[0045]タイルオブジェクト１２６−ｅはまた、対応するコンテンツファイル１０４−ｃへの参照（たとえば、アドレス、ポインタ、またはリンク）を含んでよく、またはこれと関連付けられてもよい。タイルオブジェクト１２６−ｅがより詳細な調査のためにユーザーによって選択される場合、対応するコンテンツファイル１０４−ｃを取り込みコンテンツファイル１０４−ｃの完全な忠実度の表示を行うために、この参照が使用され得る。一実施形態では、参照は、ローカルのデータストアに記憶されるような、コンテンツファイル１０４−ｃに対するものであってもよい。この場合、参照は、ピアツーピア技術を使用して、コンテンツファイル１０４−ｃを取り込むために使用され得る。一実施形態では、参照は、遠隔のデータストアに記憶されるコンテンツファイル１０４−ｃに対するものであってもよい。この場合、参照は、ネットワークストレージおよびアクセス技術を使用して、コンテンツファイル１０４−ｃを取り込むために使用され得る。
【００３１】
[0046]一実施形態では、単一のコンテンツファイル１０４−ｃは、単一の表示タイル１２４−ａと関連付けられ得る。この場合、単一のタイルオブジェクト１２６−ｅは、各表示タイル１２４−ａの中に表示される。一実施形態では、複数のコンテンツファイル１０４−ｃは、単一の表示タイル１２４−ａと関連付けられ得る。この場合、複数のタイルオブジェクト１２６−ｅは、単一の表示タイル１２４−ａの中に表示され得る。レンダリングされるとき、コンテンツ利用者は、表示コンポーネント１３０によって提供される選択ツールを使用して、異なる表示タイル１２４−ａに表示される複数のタイルオブジェクト１２６−ｅの間を行き来し、単一の表示タイル１２４−ａに表示される複数のタイルオブジェクト１２６−ｅの間も行き来できるので、コンテンツ利用者は、関心のあるタイルオブジェクト１２６−ｅを選択することができる。たとえば、コンテンツ作成者が、対応するコンテンツファイル１０４−１〜１０４−１００からの写真を表示タイル１２４−１と関連付けると仮定する。１００個の写真のサムネイルが、タイルオブジェクト１２６−１〜１２６−１００として生成されてもよく、表示タイル１２４−１の所与の寸法の中に収まる大きさにされ得る。選択ツールは、タイルオブジェクト１２６−１〜１２６−１００の間を行き来して、所与の画像を選択し拡大するために使用され得る。
【００３２】
[0047]異なるコンテンツファイル１０４−ｃを表示面１２２の異なる表示タイル１２４−ａと関連付けるための作成動作をユーザーが完了すると、作成コンポーネント１１０は、モンタージュ１２０の一部として、表示面１２２とタイルオブジェクト１２６−ｅとを記憶することができる。
【００３３】
[0048]表示コンポーネント１３０は概して、電子デバイスの電子ディスプレイにモンタージュ１２０を表示するためのユーザーインターフェースビューとツールとを生成することを含めて、モンタージュアプリケーション１４０の表示動作を管理することができる。一実施形態では、たとえば、表示コンポーネント１３０は、モンタージュ１２０の表示面１２２上の各々の関連付けられる表示タイル１２４−ａ内に各タイルオブジェクト１２６−ｅを表示するための、第１のユーザーインターフェースビューを生成することができる。表示コンポーネント１３０は、タイルオブジェクト１２６−ｅを選択するための制御指示１３２−ｆを受け取り、選択されたタイルオブジェクト１２６−ｅに対応するコンテンツファイル１０４−ｃを表示するための第２のユーザーインターフェースビューを生成することができる。
【００３４】
[0049]図２は、モンタージュアプリケーション１４０の作成コンポーネント１１０のより詳細なブロック図を示す。作成コンポーネント１１０は、コンテンツファイル１０４−ｃのタイプのタイプ定義に基づいて、コンテンツファイル１０４−ｃからコンテンツのいくつかの部分を取り込むことによって、関連付けられるコンテンツファイル１０４−ｃのためのタイルオブジェクト１２６−ｅをインテリジェントに生成することができる。たとえば、コンテンツの部分は、コンテンツファイル１０４−ｃからのテキスト、コンテンツファイル１０４−ｃのメタデータ、コンテンツファイル１０４−ｃからのオブジェクト、またはこれらの何らかの組合せを含み得る。
【００３５】
[0050]一実施形態では、コンテンツファイル１０４−ｃは、モンタージュアプリケーション１４０を実装する同じ電子デバイス内で実装される、ローカルのデータストア２１０に記憶され得る。たとえば、コンピューティングデバイスは、コンピューティングデバイスの大容量ストレージデバイスに記憶されるコンテンツファイル１０４−１、１０４−２を使用して、モンタージュアプリケーション１４０を実装することができる。一実施形態では、コンテンツファイル１０４−ｃは、モンタージュアプリケーション１４０を実装する電子デバイスとは異なる電子デバイスによって実装される、遠隔のデータストア２１２に記憶され得る。たとえば、コンピューティングデバイスは、サーバーデバイスの大容量ストレージデバイスに記憶されるコンテンツファイル１０４−３を使用して、モンタージュアプリケーション１４０を実装することができる。
【００３６】
[0051]図２に示される図解された実施形態では、作成コンポーネント１１０は、複数のタイプのモジュール２０２−ｇを含み、または実装することができる。各々のタイプモジュール２０２−ｇは、それぞれのコンテンツファイル１０４−ｃのコンテンツファイルタイプに対応し得る。コンテンツファイル１０４−ｃのコンテンツファイルタイプの例は、限定されることなく、ワードプロセッシングファイルタイプ、スプレッドシートファイルタイプ、プレゼンテーションファイルタイプ、ＰＩＭファイルタイプ、データベースファイルタイプ、パブリッシャーファイルタイプ、ドローイングファイルタイプ、メモ帳ファイルタイプ、メッセージファイルタイプなど、アプリケーションファイルタイプを含み得る。コンテンツファイル１０４−ｃのさらなる例は、オーディオファイルタイプ、画像ファイルタイプ、ビデオファイルタイプ、ＡＶファイルタイプ、動画ファイルタイプ、ゲームファイルタイプ、マークアップファイルタイプ、ウェブページタイプなど、マルチメディアファイルタイプを含み得る。これらはコンテンツファイルタイプの少数の例にすぎず、実施形態はこれらの例には限定されないことが理解され得る。
【００３７】
[0052]タイプモジュール２０２−ｇは、あるコンテンツファイルタイプのタイプ定義２０４−ｈに基づいてコンテンツファイル１０４−ｃから情報を取り込み、取り込まれた情報およびタイプ定義２０４−ｈに基づいてタイルオブジェクト１２６−ｅを生成することができる。タイプ定義２０４−ｈは、コンテンツファイル１０４−ｃから選択された部分を抽出し、表示タイル１２４−ａの定義された領域内へと抽出された部分をフォーマットするための、定義、規則、プロパティ、方法、イベント、座標、または命令のセットを含み得る。特定のコンテンツファイル１０４−ｃのための特定のタイプ定義２０４−ｈを実装することによって、作成コンポーネント１１０は、特定の状況（たとえば、仕事、私用）およびコンテンツ利用者の関連するセットに対して特別に設計された、高度にカスタマイズされたタイルオブジェクト１２６−ｅを生成することができる。タイプ定義２０４−ｈは、モンタージュアプリケーション１４０に提供されるデフォルトのタイプ定義、またはモンタージュアプリケーション１４０を使用して作成されるユーザー定義されたタイプ定義であってもよい。
【００３８】
[0053]例として、コンテンツファイル１０４−１はワードプロセッシングドキュメント１０４−１であり、タイプモジュール２０２−１はワードプロセッシングファイルタイプのためのものであり、タイプ定義２０４−１はワードプロセッシングファイルタイプのための定義のセットであると仮定する。タイプ定義２０４−１は、タイプオブジェクト１２６−１を作成するときに使用される様々なタイプの情報を含み得る。たとえば、タイプ定義２０４−１は、拡張マークアップ言語フォーマット（たとえば、.ｄｏｃｘ、.ｄｏｃｍ、.ｄｏｔｘ、.ｄｏｔｍ）、バイナリフォーマット（たとえば、.ｄｏｃ、.ｄｏｔ）、およびオープンドキュメントフォーマット（たとえば、.ｏｄｔ）など、ワードプロセッシングアプリケーションの様々なバージョンと関連付けられる、サポートされるファイルフォーマットを含み得る。タイプ定義２０４−１は、暗号化されたファイルにアクセスするためのセキュリティ認証情報（たとえば、パスワード、証明書、公開鍵または秘密鍵）を含み得る。タイプ定義２０４−１は、ファイルのための埋め込みコードまたはロードされたコード（たとえば、マクロ、拡張パック）にアクセスするためのツールを含み得る。タイプ定義２０４−１は、ドキュメント中にサポートされるフィールド（たとえば、Ａｓｋフィールド、Ａｕｔｈｏｒフィールド、Ｄａｔａｂａｓｅフィールド、Ｆｉｌｌｉｎフィールド、Ｉｎｃｌｕｄｅｐｉｃｔｕｒｅフィールド、Ｉｎｃｌｕｄｅｔｅｘｔフィールド、Ｍａｉｌｍｅｒｇｅフィールド）を含み得る。タイプ定義２０４−１は、ドキュメントに対するリンク（たとえば、リンクされたオブジェクト、マスタードキュメント、テンプレート参照、リンクされたカスケードスタイルシート参照）を扱うための規則を含み得る。タイプ定義２０４−１は、データセット（たとえば、メールマージデータ）を扱うための規則を含み得る。タイプ定義２０４−１は、オブジェクトのリンクと埋め込み（ｏｂｊｅｃｔ  ｌｉｎｋｉｎｇ  ａｎｄ  ｅｍｂｅｄｄｉｎｇ：ＯＬＥ）オブジェクトを扱うための規則を含み得る。タイプ定義２０４−１の他の情報が可能であり、実施形態はこれに関連して限定はされない。
【００３９】
[0054]さらに、タイプ定義２０４−１は、コンテンツファイル１０４−１から取り込むべき情報のタイプに関する、規則のセットを含み得る。たとえば、タイプ定義２０４−１は、コンテンツファイル１０４−１からのコンテンツおよびプロパティクラス（たとえば、段落またはプロパティ）、コンテンツファイル１０４−１のコンテンツオブジェクトクラス（たとえば、画像、埋め込みオブジェクト）、およびコンテンツファイル１０４−１内のコンテンツページクラス、またはこれらの何らかの組合せを含む、情報の３つのクラスと関連する規則とを含み得る。任意の数のクラスまたはカテゴリーが、所与のコンテンツファイルタイプに対して定義され得ることが、理解され得る。
【００４０】
[0055]一実施形態では、コンテンツおよびプロパティクラスの例は、次のように表１において示され得る。
【００４１】
【表１】
2014519673.tif 000003
【００４２】
[0056]一実施形態では、コンテンツオブジェクトクラスの例は、次のように表２において示され得る。
【００４３】
【表２】
2014519673.tif 000004
【００４４】
[0057]一実施形態では、コンテンツページクラスの例は、次のように表３において示され得る。
【００４５】
【表３】
2014519673.tif 000005
【００４６】
[0058]作成コンポーネント１１０は、タイプモジュール２０２−１と関連するタイプ定義２０４−１とを使用して、ローカルのデータストア２１０からコンテンツファイル１０４−１からのコンテンツ部分１０６−１を取り込むことができる。タイプモジュール２０２−１は次いで、コンテンツ部分１０６−１を編成しフォーマットして、タイルオブジェクト１２６−１を生成することができる。たとえば、タイプ定義２０４−１のための規則は、ドキュメント内から取り込まれた任意のテキスト、たとえば最初のＮ個の段落が、ドキュメント内で規定されるようなスタイルフォーマットを保持することを定め得る。別の規則は、ドキュメント内の実際のテキストではないコンテンツプロパティが、ドキュメント内で定義される通常のスタイルとしてフォーマットされるというものであり得る。さらに別の規則は、コンテンツ部分１０６−１のテキスト全体が表示タイル１２４−１の寸法の中に収まり得ない場合、省略記号「…」がテキストの終わりに付加されるというものであり得る。これらはいくつかの例示的な規則にすぎず、他の規則が可能である。実施形態は、これに関連して限定はされない。
【００４７】
[0059]いくつかの場合には、タイプ定義２０４−１は、非公式には「マッシュアップ(mashup)」と呼ばれることがある、コンテンツおよびプロパティクラスとコンテンツオブジェクトクラスとコンテンツページクラスとの組合せから、タイルオブジェクト１２６−１を作成するための規則のセットを定義することができる。これによって、コンテンツファイル１０４−１のコンテンツを表すように構築される、高度にカスタマイズされたタイルオブジェクト１２６−１を実現する。
【００４８】
[0060]一実施形態では、異なるクラスの組合せの例が、次のように表４において示され得る。
【００４９】
【表４】
2014519673.tif 000006
【００５０】
[0061]タイプ定義２０４−１はまた、タイルオブジェクト１２６−１を単一のクラスまたはクラス内のタイプに制限する規則を提供することができる。たとえば、規則は、コンテンツファイル１０４−１からのテキストの形式のコンテンツのみ、またはコンテンツファイル１０４−１の画像の形式のコンテンツオブジェクトのみを使用するように、タイプモジュール２０２−１を定義することができる。
【００５１】
[0062]タイプ定義２０４−１はさらに、コンテンツファイル１０４−１のためのタイルオブジェクト１２６−１を生成するための、デバイスを特定することができる。たとえば、規則は、サーバーデバイスと対話してタイルオブジェクト１２６−１を生成し取り込むための、タイプモジュール２０２−１を定義することができる。
【００５２】
[0063]タイプ定義２０４−１はまたさらに、最終的な選択のためにユーザーへ表示する、タイルオブジェクト１２６−１の複数のバージョンのリストを生成するための規則を提供することができる。たとえば、規則は、タイルオブジェクト１２６−１のＰ個のバージョンを生成することができ、Ｐは任意の正の整数を表す（たとえば、Ｐ=１０）。タイルオブジェクト１２６−１の複数のバージョンのリストは、次のような表５において与えられる例に従って生成され得る。
【００５３】
【表５】
2014519673.tif 000007
【００５４】
[0064]タイプモジュール２０２−ｇは、タイプ定義２０４−ｈによって提供される情報に対する追加の情報を使用して、タイルオブジェクト１２６−ｅを生成することができる。たとえば、タイプモジュール２０２−ｇは、コンテンツファイル１０４−ａのために選択された表示タイル１２４−ａについての情報を入力として受け取ることができる。タイプモジュール２０２−ｇは、位置、サイズ、形状、寸法、配置、境界、隣接する（ａｄｊａｃｅｎｔ）表示タイル１２４−ａ、隣り合う（ａｄｊｏｉｎｉｎｇ）表示タイル１２４−ａなどの情報を受け取ることができる。たとえば、タイプモジュール２０２−１が、表示タイル１２４−１の現在の寸法には大きすぎるタイルオブジェクト１２６−１を構築するためのタイプ定義２０４−１を使用している場合、タイプモジュール２０２−１は、隣接するまたは隣り合う表示タイル１２４−２、１２４−３についての情報を使用して、表示タイル１２４−１の現在の寸法がより大きなタイルオブジェクト１２６−１を収容するように大きくされ得るかどうか、および表示タイル１２４−２、１２４−３の現在の寸法がそれに従って小さくされ得るかどうかを、判定することができる。作成コンポーネント１１０は、そのような場合に対応するための、様々なフィッティングアルゴリズムを実装することができる。
【００５５】
[0065]図３Ａは、作成コンポーネント１１０によって生成されるユーザーインターフェースビュー３００のある実施形態を示す。ユーザーインターフェースビュー３００は、任意のタイルオブジェクト１２６−ｅがコンテンツファイル１０４−ｃのために作成される前、複数の空の表示タイル１２４−ａを伴う表示面１２２を含み得る。ユーザーインターフェースビュー３００はまた、コピーコマンド３０２−１、切り取りコマンド３０２−２、および貼り付けコマンド３０２−３などの作成者からの制御指示１０２−ｂを受け取るための、様々なグラフィカルユーザーインターフェース（ＧＵＩ）ツール３０２−ｓを含み得る。移動コマンド、形式を選択して貼り付けコマンドなど、図３Ａに示されるもの以外の他のＧＵＩツール３０２−ｓが使用されてもよい。
【００５６】
[0066]ユーザーインターフェースビュー３００はさらに、ファイルナビゲーションツール３０４を含み得る。ファイルナビゲーションツール３０４は、記憶されたデータファイルを伴うファイルシステムをナビゲートするために設計された、所与のＯＳ向けのファイルマネージャーアプリケーションを含み得る。たとえば、ファイルナビゲーションツール３０４は、ローカルのデータストア２１０または遠隔のデータストア２１２からの様々なコンテンツファイル１０４−ｃをナビゲートし表示するために使用され得る。ファイルナビゲーションツール３０４の例は、ＭＩＣＲＯＳＯＦＴ  ＷＩＮＤＯＷＳオペレーティングシステムのために設計されたＭＩＣＲＯＳＯＦＴ  ＷＩＮＤＯＷＳ  ＥＸＰＬＯＲＥＲを含み得る。他のファイルナビゲーションツールも使用され得る。
【００５７】
[0067]作成動作の間、作成コンポーネント１１０は、たとえば、ポインティングデバイス３０８またはタッチスクリーンディスプレイ上でのジェスチャー３１０など、入力デバイスからコンテンツファイル１０４−１を表示タイル１２４−１と関連付けるための制御指示１０２−ｂを受け取ることができる。たとえば、コンテンツ作成者は、１つまたは両方のデータストア２１０、２１２によって記憶されているコンテンツファイル１０４−ｃをナビゲートし表示するためのファイルナビゲーションツール３０４を利用することによって、モンタージュ１２０を作成することができる。コンテンツ作成者は、ポインティングデバイス３０８またはタッチスクリーンディスプレイ上でのジェスチャー３１０など、様々な入力デバイスを使用して、表示タイル１２４−ａのためのコンテンツファイル１０４−ｃを選択することができる。示されるように、ポインティングデバイス３０８は、コンテンツファイル１０４−１を選択して、ドラッグアンドドロップ技法を使用してコンテンツファイル１０４−１を表示タイル１２４−１上で動かすために使用され得る。あるいは、ＧＵＩ入力ツール３０２が、同様の動作を実行するために使用され得る。
【００５８】
[0068]図３Ｂは、作成コンポーネント１１０によって生成されるユーザーインターフェースビュー３２０のある実施形態を示す。ユーザーインターフェースビュー３２０は、タイルオブジェクト１２６−１がコンテンツファイル１０４−１のために作成された後、埋まった表示タイル１２４−１を伴う表示面１２２を含み得る。コンテンツ作成者がコンテンツファイル１０４−１を作成し、それを表示タイル１２４−１と関連付けると、作成コンポーネント１１０は、コンテンツファイル１０４−１のコンテンツファイルタイプを特定することができる。この例では、作成コンポーネント１１０は、コンテンツファイル１０４−１のコンテンツファイルタイプを、アプリケーションファイルタイプ、より具体的にはワードプロセッシングファイルとして特定する。作成コンポーネント１１０は、タイプモジュール２０２−１と、ワードプロセッシングファイルからタイルオブジェクトを生成するために特別に設計されたタイプ定義２０４−１とを利用することができる。タイプモジュール２０２−１は、タイプ定義２０４−１を使用して、コンテンツファイル１０４−１から適切なコンテンツ部分１０６−１を取り込むことができ、コンテンツ部分１０６−１は、コンテンツおよびプロパティクラス、コンテンツオブジェクトクラス、コンテンツページクラス、またはクラスの組合せの情報を含む。タイプモジュール２０２−１は、コンテンツ部分１０６−１を使用してタイルオブジェクト１２６−１を生成し、表示タイル１２４−１の境界内でタイルオブジェクト１２６−１を表示することができる。
【００５９】
[0069]図３Ｃは、作成コンポーネント１１０によって生成されるユーザーインターフェースビュー３４０のある実施形態を示す。ユーザーインターフェースビュー３４０は、所与のコンテンツファイル１０４−ｃが対応する表示タイル１２４−ａと関連付けられた後の、タイルオブジェクト１２６−ｅの構築を示す。
【００６０】
[0070]前に説明されたように、ＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥドキュメント、ウェブサイト、地図、フィード、記事、ウェブログ（ブログ）など、コンテンツファイル１０４−ｃの、何らかの種類の意味のある表現を行うことが望ましい場合がある。タイルオブジェクト１２６−ｅは、コンテンツファイル１０４−ｃからのコンテンツを読みまたは見ることをユーザーに求めまたは勧める、コンテンツファイル１０４−ｃのカスタム表現を提供する。目立つようにするために、タイルオブジェクト１２６−ｅの１つの望ましい特徴は、コンテンツファイル１０４−ｃのティーザーまたはプレビューのように、可読であり人を引きつけるものでなければならないということである。加えて、タイルオブジェクト１２６−ｅは、強制的なユーザー入力または対話を何ら必要とすることなく、自動的に生成されるべきである。しかしながら、いくつかの場合には、ユーザーインターフェース制御（たとえば、ＧＵＩ入力ツール３０２）は、任意選択で、ユーザー入力を勧めるように表示されてもよい。
【００６１】
[0071]タイル作成動作を開始するために、作成コンポーネント１１０は、コンテンツファイル１０４−ｃをデジタルモンタージュ１２０の表示面１２２の表示タイル１２４−ａと関連付けるための、制御指示１０２−ｂを受け取ることができる。作成コンポーネント１１０は、コンテンツファイル１０４−ｃのコンテンツファイルタイプを特定し、コンテンツファイルタイプに従って、コンテンツファイル１０４−ｃからの情報を伴うタイルオブジェクト１２６−ｅを生成することができる。
【００６２】
[0072]様々な実施形態では、作成コンポーネント１１０は、１つまたは複数のタイルオブジェクトコンテナー３４２−ｕ内に格納または表示されるものとして、コンテンツファイル１０４−ｃから取り込まれた選択情報を伴うタイルオブジェクト面３４６を有するタイルオブジェクト１２６−ｅを自動的に生成することができる。一実施形態では、選択される情報は、たとえば、コンテンツファイル１０４−ｃからのコンテンツ、またはコンテンツファイル１０４−１のためのコンテンツ部分１０６−１など、コンテンツファイル１０４−ｃから取り込まれたコンテンツ部分を含み得る。
【００６３】
[0073]表示面１２２の表示タイル１２４−ａと同様に、タイルオブジェクトコンテナー３４２−ｕは、コンテンツ部分またはコンテンツ部分クリップ３４４−ｖなど、具体的な情報のセットを表示するために指定された、タイルオブジェクト面３４６の定義された領域を含み得る。定義された領域は、所与の実装形態における望みに応じて、任意のサイズ、寸法、または形状であってもよい。所与のタイルオブジェクト面３４６は、任意の数のタイルオブジェクトコンテナー３４２−ｕを有してもよく、各タイルオブジェクトコンテナー３４２−ｕは、すべてのタイルオブジェクトコンテナー３４２−ｕがタイルオブジェクト面３４６の所与のサイズ内に確実に収まるようにするための、定義のセット（たとえば、サイズ、形状、寸法、配置）を有し得る。タイルオブジェクトコンテナー３４２−ｕの定義は、他のタイルオブジェクトコンテナー３４２−ｕ、タイルオブジェクト面３４６、コンテンツ部分またはコンテンツ部分クリップ３４４−ｖとタイルオブジェクトコンテナー３４２−ｕとの関連、１つまたは複数の表示タイル１２４−ａ、表示面１２２、コンテンツファイル１０４−ｃのセット、コンテンツファイル１０４−ｃと表示タイル１２４−ａとの関連、コンテンツファイル１０４−ｃと関連付けられるタイルオブジェクト１２６−ｅ、ディスプレイの特性、デバイスの特性、ユーザー選好、および他の要因に基づいて、動的に変化し得る。実施形態は、これに関連して限定はされない。
【００６４】
[0074]一実施形態では、コンテンツ作成者は、タイルオブジェクト面３４６とタイルオブジェクトコンテナー３４２−ｕとをカスタム定義することができる。モンタージュアプリケーション１４０のユーザーインターフェースは、タイルオブジェクト面３４６の特性とタイルオブジェクト面３４６上のタイルオブジェクトコンテナー３４２−ｕのセットとを修正するために特別に定義された様々な制御機構（たとえば、ＧＵＩ入力ツール３０２）を提供することができる。そのような制御機構の例は、限定されることなく、描画制御機構、寸法制御機構、サイズ制御機構、幅制御機構、高さ制御機構、ピクセル制御機構、リフレッシュ制御機構などを含み得る。あるいは、コンテンツ作成者は、異なるタイルオブジェクト面とタイルオブジェクトコンテナー３４２−ｕとを提供する任意の数のタイルテンプレートから選択することができる。
【００６５】
[0075]一実施形態では、たとえば、作成コンポーネント１１０は、それぞれのタイルオブジェクトコンテナー３４２−ｕに適したコンテンツファイル１０４−ｃから情報を選択することができる。作成コンポーネント１１０は、たとえば、コンテンツファイル１０４−ｃのコンテンツファイルタイプに基づいて、そのような情報を選択することができる。図２を参照して詳しく説明されたように、作成コンポーネント１１０は、各々のコンテンツファイルタイプに対応する複数のタイプモジュール２０２−ｇを含み、各々のタイプモジュール２０２−ｇは、タイプモジュール２０２−ｇのためのタイプ定義２０４−ｈに基づいて、特別な方式でコンテンツファイル１０４−ｃから情報のセットを取り込むように構成される。作成コンポーネント１１０は、コンテンツファイル１０４−ｃのコンテンツファイルタイプを特定し、タイプモジュール２０２−ｇと関連するタイプ定義２０４−ｈとを使用してコンテンツファイル１０４−ｃから情報を選択し、選択された情報を伴うタイルオブジェクト１２６−ｅを生成することができる。
【００６６】
[0076]一実施形態では、作成コンポーネント１１０は、１つまたは複数のタイルオブジェクトコンテナー３４２−ｕ内にコンテンツファイル１０４−ｃからの情報を収めるように設計されるフィッティングアルゴリズムを実行し、対応するタイルオブジェクトコンテナー３４２−ｕのコンテナー定義とフィッティングアルゴリズムとのセットに従って、埋まったコンテナー３４８−ｗを形成することができる。一実施形態では、コンテナー定義は、タイプモジュール２０２−ｇのタイプ定義２０４−ｈの一部を含み得る。加えて、または代替的に、コンテナー定義は、タイプ定義２０４−ｈによって提供される情報に対して追加の情報を含み得る。たとえば、タイプモジュール２０２−ｇは、コンテンツファイル１０４−ｃのために選択された表示タイル１２４−ａのタイルオブジェクトコンテナー３４２−ｕについての情報を入力として受け取ることができる。タイプモジュール２０２−ｇは、位置、サイズ、形状、寸法、配置、境界、隣接するタイルオブジェクトコンテナー３４２−ｕ、隣り合うタイルオブジェクトコンテナー３４２−ｕなどの情報を受け取ることができる。たとえば、タイプモジュール２０２−１が、表示タイル１２４−１のタイルオブジェクトコンテナー３４２−１の現在の寸法には大きすぎるタイルオブジェクト１２６−１を構築するためのタイプ定義２０４−１を使用している場合、タイプモジュール２０２−１は、隣接するまたは隣り合うタイルオブジェクトコンテナー３４２−２、３４２−３についての情報を使用して、タイルオブジェクトコンテナー３４２−１の現在の寸法がコンテンツ部分１０６−１からのより大量の情報を収容するように大きくされ得るかどうか、およびタイルオブジェクトコンテナー３４２−２、３４２−３の現在の寸法がそれに従って小さくされ得るかどうかを、判定することができる。作成コンポーネント１１０は、そのような場合に対応するための、様々なフィッティングアルゴリズムを実装することができる。
【００６７】
[0077]ユーザーが、特定のコンテンツファイル１０４−ｃに対して利用可能な自動的に生成されたタイルテンプレートのセットから、所与のタイルオブジェクト１２６−ｅのタイルテンプレートを選べるようにすることが望ましい場合があり得る。たとえば、ユーザーが、タイルテンプレートまたは自動的に生成されたタイルオブジェクト１２６−ｅのいずれも好まない場合、ユーザーは、ユーザーインターフェース制御機構のセットを使用して、タイルテンプレートまたは特定のタイルオブジェクト１２６−ｅを編集し、タイルオブジェクト１２６−ｅのために選択されたコンテンツをカスタマイズすることができる。ユーザーインターフェース制御機構の例は、たとえば、ＧＵＩ入力ツール３０２を含み得る。
【００６８】
[0078]図３Ｂを参照して説明されるように、コンテンツ作成者がコンテンツファイル１０４−１を選択し、それを表示タイル１２４−１と関連付けると、作成コンポーネント１１０は、タイルオブジェクト１２６−１の作成、構築、または生成を開始し、コンテンツファイル１０４−１内に含まれるコンテンツを表現することができる。
【００６９】
[0079]たとえば、作成コンポーネント１０４−１は、コンテンツファイル１０４−１のコンテンツファイルタイプを特定することができる。この例では、作成コンポーネント１１０は、コンテンツファイル１０４−１のコンテンツファイルタイプを、アプリケーションファイルタイプ、より具体的にはワードプロセッシングファイルとして特定する。作成コンポーネント１１０は、タイプモジュール２０２−１と、ワードプロセッシングファイルからタイルオブジェクトを生成するために特別に設計されたタイプ定義２０４−１とを利用することができる。タイプモジュール２０２−１は、タイプ定義２０４−１を使用して、コンテンツファイル１０４−１から適切なコンテンツ部分１０６−１および／またはコンテンツ部分クリップ３４４−ｖを取り込むことができ、コンテンツ部分１０６−１は、コンテンツおよびプロパティクラス、コンテンツオブジェクトクラス、コンテンツページクラス、またはクラスの組合せの情報を含む。タイプモジュール２０２−１は、コンテンツ部分１０６−１および／またはコンテンツ部分クリップ３４４−ｖを使用してタイルオブジェクト１２６−１のための１つまたは複数の埋まったコンテナー３４８−ｗを生成することができる。タイプモジュール２０２−１は次いで、タイルオブジェクト１２６−１の境界内で埋まったコンテナー３４８−ｗを表示することができる。
【００７０】
[0080]図３Ｃを参照すると、ユーザーインターフェースビュー３４０は、コンテンツファイル１０４−１が図３Ａ、図３Ｂを参照して説明されたような表示タイル１２４−１と関連付けられた場合を示し得る。より具体的には、ユーザーインターフェースビュー３４０は、所与のコンテンツファイル１０４−１が対応する表示タイル１２４−１と関連付けられた後の、タイルオブジェクト１２６−１の構築を示す。図３Ｃに示されるように、ユーザーインターフェースビュー３４０は、コンテンツファイル１０４−１のタイルオブジェクト１２６−１の作成の間の、コンテンツファイル１０４−１のコンテンツ部分１０６−１からのコンテンツ部分クリップ３４４−１を格納する埋まったコンテナー３４８−１を伴うタイルオブジェクト１２６−１を示す。たとえば、作成コンポーネント１１０は、コンテンツファイル１０４−１から取り込まれたコンテンツ部分１０６−１から、１つまたは複数のコンテンツ部分クリップ３４４−ｖを抽出することができる。タイプ定義２０４−１は、コンテンツファイル１０４−１から取り込むべき情報のタイプに関する、規則のセットを含み得る。たとえば、タイプ定義２０４−１は、コンテンツファイル１０４−１からのコンテンツおよびプロパティクラス（たとえば、段落またはプロパティ）、コンテンツファイル１０４−１のコンテンツオブジェクトクラス（たとえば、画像、埋め込みオブジェクト）、およびコンテンツファイル１０４−１内のコンテンツページクラス、またはこれらの何らかの組合せを含む、情報の３つのクラスと関連する規則とを含み得る。作成コンポーネント１１０は、タイプ定義２０４−１によって提供される規則を使用して、コンテンツファイル１０４−１のコンテンツ部分１０６−１から選択されたコンテンツ部分クリップ３４４−ｖを取り込むことができる。ユーザーインターフェースビュー３４０は、コンテンツ部分クリップ３４４−１がコンテンツ部分１０６−１から取り込まれ、対応するタイルオブジェクトコンテナー３４２−１内に配置され、埋まったコンテナー３４８−１を形成する場合を示す。作成コンポーネント１１０は、タイルオブジェクト１２６−１が完全に埋まるまで、タイプ定義２０４−１によって提供される規則に従って追加の埋まったコンテナー３４８−２〜３４８−ｗを作成するために、コンテンツ部分１０６−１から選択されたコンテンツ部分クリップ３４４−ｖを取り込み続けることができる。
【００７１】
[0081]図４は、タイルオブジェクト１２６−１を生成する作成コンポーネント１１０の例を示す。示されるように、コンテンツファイル１０４−１は、タイトル４０２と、最初の段落４０４と、２番目の段落４０６と、様々なメタデータ４０８とを含む、コンテンツおよびプロパティクラスの様々なタイプの情報を含み得る。コンテンツファイル１０４−１はさらに、画像４１０と、棒グラフ４１２と、等式４１４とを含む、コンテンツオブジェクトクラスの様々なタイプの情報を含み得る。タイプ定義２０４−１は、「タイルテンプレート１」と名付けられた特定のタイルテンプレートを使用するための第１の規則と、タイトル４０２を取り込むための第２の規則と、メタデータ４０８から作成者を取り込むための第３の規則と、最初のＮ個の段落４０４、４０６（たとえば、Ｎ=２）を取り込むための第４の規則と、この場合には棒グラフ４１２である最初のグラフを取り込むための第５の規則とを含む、５つの規則を含み得る。タイプモジュール２０１−１は、タイプ定義２０４−１を使用して、タイプ定義２０４−１の規則１〜５に従ってコンテンツファイル１０４−１からコンテンツ部分１０６−１を取り込み、オブジェクト１２６−１を生成することができ、オブジェクト１２６−１は、「タイルテンプレート１」に従ってフォーマットされるコンテンツ部分１０６−１の特定の情報を伴う、ユーザーインターフェースビューとして表示される。
【００７２】
[0082]図５は、モンタージュアプリケーション１４０によって生成されるモンタージュ１２０を公開または配信するのに適した、メッセージングシステム５００のある実施形態を示す。コンテンツ作成者は、ユーザーインターフェースコンポーネント５３８によって提供される様々なユーザーインターフェースビューを使用して、モンタージュアプリケーション１４０を使用してモンタージュ１２０を生成することができる。ユーザーインターフェースコンポーネント５３８は、モンタージュアプリケーション１４０のネイティブなユーザーインターフェースコンポーネント、またはモンタージュアプリケーション１４０を実行するＯＳ（たとえば、ＭＩＣＲＯＳＯＦＴ  ＷＩＮＤＯＷＳ）のためのユーザーインターフェースコンポーネントを含み得る。モンタージュ１２０が生成されると、コンテンツ作成者は、公開モデル、メッセージングモデル、または公開モデルとメッセージングモデルの組合せを使用して、モンタージュ１２０を様々なコンテンツ利用者に配信することができる。
【００７３】
[0083]一実施形態では、モンタージュアプリケーション１４０は、公開コンポーネント５３２を使用して、ローカルのデータストア２１０から遠隔のデータストア２１２に、モンタージュと関連するコンテンツファイル１０４−ｃとを公開することができる。遠隔のデータストア２１２は、たとえば、ソーシャルネットワーキングサービス（ＳＮＳ）などのネットワークサービスによってアクセス可能な、ネットワークストレージサーバー５３０の一部として実装され得る。コンテンツ利用者は、ネットワークサービスにアクセスして、ネットワークサービスの複数のバージョンを見ることができる。
【００７４】
[0084]一実施形態では、モンタージュアプリケーション１４０は、ネイティブなメッセージコンポーネント５３４を使用して、モンタージュ１２０と関連するコンテンツファイル１０４−ｃとを、メッセージサーバー５４０などのメッセージングアーキテクチャを介して、メッセージ５１６およびメッセージの添付物として送ることができる。コンテンツ利用者は、メッセージの複数のバージョンにアクセスし、それらを見ることができる。あるいは、モンタージュアプリケーション１４０は、外部の（ネイティブではない）メッセージアプリケーション５４２−ｋを使用してもよい。
【００７５】
[0085]一実施形態では、モンタージュアプリケーション１４０は、モンタージュ１２０と関連するコンテンツファイル１０４−ｃとをネットワークサービスに公開することによって、公開モデルとメッセージングモデルの両方の組合せを使用し、モンタージュ１２０と関連するコンテンツファイル１０４−ｃとのネットワークバージョンのためのリンク５１８−ｎを受け取り、リンク５１８−ｎを伴うメッセージ５１６を送ることができる。コンテンツ利用者は、メッセージ５１６にアクセスし、リンク５１８−ｎを選択し、モンタージュ１２０のネットワークバージョンを見ることができる。さらに、コンテンツ利用者は、モンタージュ１２０のタイルオブジェクト１２６−ｅを選択し、選択されたタイルオブジェクト１２６−ｅと関連付けられるコンテンツファイル１０４−ｃのネットワークバージョンを見ることができる。
【００７６】
[0086]モンタージュアプリケーション１４０は、セキュリティコンポーネント５３６を使用して、コンテンツ利用者によるモンタージュ１２０および関連するコンテンツファイル１０４−ｃへのアクセス許可とアクセス権とを管理することができる。セキュリティコンポーネント５３６は、アカウント、認証情報、許可情報、セキュリティ情報（たとえば、暗号化／復号アルゴリズム、セキュリティキー、証明書など）、アクセス許可レベルなどを管理することができる。一実施形態では、セキュリティコンポーネント５３６は、ローカルのデータストア２１０から、ネットワークサービスがアクセス可能なネットワークストレージサーバー５５０のための遠隔のデータストア２１２への、コンテンツファイル１０４−ｃの通信を許可するための、コンテンツ作成者からのコマンドを表す制御指示を、入力デバイスから受け取ることができる。
【００７７】
[0087]図５に示される図解された実施形態では、メッセージングシステム５００は、すべてがネットワーク５３０を通じて通信している、複数のコンピューティングデバイス５１０−ｊと、メッセージサーバー５４０と、ネットワークストレージサーバー５５０とを含み得る。コンピューティングデバイス５１０−ｊは各々、モンタージュアプリケーション１４０および／または１つまたは複数のメッセージアプリケーション５４２−ｋを実装することができる。図５に示されるようなメッセージングシステム５００は、あるトポロジーでは限られた数の要素を有するが、メッセージングシステム５００は、所与の実装形態における望みに応じて、代替的なトポロジーではより多数または少数の要素を含み得ることが理解され得る。
【００７８】
[0088]ネットワーク５３０は、メッセージングシステム５００の様々なデバイスの間で情報を通信するように設計される、通信フレームワークを含み得る。ネットワーク５３０は、パケット交換ネットワーク（たとえば、インターネットなどの公開ネットワーク、企業イントラネットなどの非公開ネットワークなど）、回線交換ネットワーク（たとえば、公衆交換電話網）、またはパケット交換ネットワークと回線交換ネットワークの組合せ（適切なゲートウェイと変換器とを伴う）とともに使用するのに適した技法など、任意のよく知られている通信技法を実装することができる。
【００７９】
[0089]メッセージサーバー５４０は、説明された実施形態に従って様々な方法を実行するように動作する、１つまたは複数のサーバーコンピューティングデバイスおよび／またはサーバープログラムを、含みまたは利用することができる。たとえば、サーバープログラムは、インストールされかつ／または配備されると、いくつかのサービスおよび機能を提供するための、サーバーコンピューティングデバイスの１つまたは複数のサーバー機能をサポートすることができる。例示的なメッセージサーバー５４０は、たとえば、ＭＩＣＲＯＳＯＦＴ  ＯＳ、ＵＮＩＸ（登録商標）ＯＳ、ＬＩＮＵＸ（登録商標）ＯＳ、または他の適切なサーバーベースのＯＳなど、サーバーＯＳを動作させる、スタンドアロンな企業規模のサーバーコンピューターを含み得る。例示的なサーバープログラムは、たとえば、着信メッセージと送信メッセージとを管理するためのＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ  ＣＯＭＭＵＮＩＣＡＴＩＯＮＳ  ＳＥＲＶＥＲ（ＯＣＳ）などの通信サーバープログラム、電子メール、ボイスメール、ＶｏＩＰ、インスタントメッセージング（ＩＭ）、グループＩＭ、拡張プレゼンス、およびオーディオビデオ会議のユニファイドメッセージング（ＵＭ）を実現するためのＭＩＣＲＯＳＯＦＴ  ＥＸＣＨＡＮＧＥ  ＳＥＲＶＥＲなどのメッセージングサーバープログラム、ならびに／または説明された実施形態に従った、他のタイプのプログラム、アプリケーション、もしくはサービスを含み得る。
【００８０】
[0090]ネットワークストレージサーバー５５０はまた、説明された実施形態に従って様々な動作を実行するように動作する、１つまたは複数のサーバーコンピューティングデバイスおよび／またはサーバープログラムを、含みまたは利用することができる。たとえば、サーバープログラムは、インストールされかつ／または配備されると、いくつかのサービスと機能とを提供するための、サーバーコンピューティングデバイスの１つまたは複数のサーバー機能をサポートすることができる。例示的なネットワークストレージサーバー５５０は、たとえば、ＭＩＣＲＯＳＯＦＴ  ＯＳ、ＵＮＩＸ  ＯＳ、ＬＩＮＵＸ  ＯＳ、または他の適切なサーバーベースのＯＳなど、サーバーＯＳを動作させる、スタンドアロンな企業規模のサーバーコンピューターを含み得る。例示的なサーバープログラムは、たとえば、画像、写真、フォトアルバム、ビデオ、ビデオアルバムなどのマルチメディアファイルまたはメディアファイルを含む、ドキュメントおよびファイルのオンラインネットワークストレージを提供する、ＭＩＣＲＯＳＯＦＴ  ＬＩＶＥなどのネットワークストレージサーバープログラムを含み得る。例示的なサーバープログラムはさらに、たとえば、ソーシャルネットワーキングアプリケーションプログラム、検索アプリケーション、ドキュメント管理プログラム、ウェブログ（ブログ）、ワードプロセッシングプログラム、スプレッドシートプログラム、データベースプログラム、ドローイングプログラム、ドキュメント共有プログラム、メッセージアプリケーション、ウェブサービス、ウェブアプリケーション、ウェブサーバー、および／または説明された実施形態に従った、他のタイプのプログラム、アプリケーション、もしくはサービスを含み得る。
【００８１】
[0091]コンピューティングデバイス５１０−ｊは各々、プロセッサ５０２に通信可能に結合された、プロセッサ５０２とメモリ５０４とを含み得る。プロセッサ５０２およびメモリ５０４は各々、通信インターフェース５０９に通信可能に結合され得る。コンピューティングデバイス５１０−ｊの例示的なアーキテクチャおよび例は、図１０を参照して説明され得る。
【００８２】
[0092]通信インターフェース５０９は、コンピューティングデバイス５１０−ｊが、ネットワーク５３０を介して、互いにかつメッセージングシステム５００の他のデバイスと通信するのを可能にするための、様々な通信技法を含みまたは実装することができる。たとえば、メッセージングシステム５００の様々なデバイスは各々、１つまたは複数の通信インターフェース、ネットワークインターフェース、ネットワークインターフェースカード（ＮＩＣ）、無線、ワイヤレス送信機／受信機（送受信機）、有線および／またはワイヤレスの通信媒体、物理的な接続など、ネットワーク５３０と相互運用可能なように設計された様々なタイプの標準的な通信要素を実装する、通信インターフェース５０９を含み得る。限定ではなく例として、通信媒体は、有線通信媒体とワイヤレス通信媒体とを含む。有線通信媒体の例は、ワイヤ、ケーブル、金属リード線、プリント回路基板（ＰＣＢ）、バックプレーン、スイッチ構成、半導体材料、ツイストペアワイヤ、同軸ケーブル、光ファイバー、伝搬信号などを含み得る。ワイヤレス通信媒体の例は、音響媒体、無線周波数（ＲＦ）スペクトル媒体、赤外線媒体、および他のワイヤレス媒体を含み得る。
【００８３】
[0093]様々な実施形態では、通信インターフェース５０９は、複数の異なるタイプの転送機構５１２−ｍを含み得る。転送機構５１２−ｍの各々は、通信パラメーターの同じまたは異なるセットを実装または利用して、メッセージングシステム５００の様々なデバイスの間で情報を通信することができる。一実施形態では、たとえば、転送機構５１２−ｍの各々は、通信パラメーターの異なるセットを実装または利用して、コンピューティングデバイス５１０−ｊとメッセージサーバー５４０との間で情報を通信することができる。通信パラメーターのいくつかの例は、限定されることなく、通信プロトコル、通信規格、無線周波数（ＲＦ）バンド、無線、送信機／受信機（送受信機）、無線プロセッサ、ベースバンドプロセッサ、ネットワークスキャン閾値パラメーター、無線周波数チャネルパラメーター、アクセスポイントパラメーター、速度選択パラメーター、フレームサイズパラメーター、アグリゲーションサイズパラメーター、パケットリトライ限界パラメーター、プロトコルパラメーター、無線パラメーター、変調および符号化方式（ＭＣＳ）、確認応答パラメーター、媒体アクセス制御（ＭＡＣ）層パラメーター、物理（ＰＨＹ）層パラメーター、およびコンピューティングデバイス５１０−ｊによって実施される通信インターフェース５０９に対する動作に影響を与える任意の他の通信パラメーターを含み得る。実施形態は、これに関連して限定はされない。
【００８４】
[0094]様々な実施形態では、コンピューティングデバイス５１０−１の通信インターフェース５０９は、様々な帯域幅または通信速度を提供する、異なる通信パラメーターを実装することができる。たとえば、転送機構５１２−１は、ネットワーク５３０への情報の高速通信に適した通信パラメーターを実装する高速インターフェースを含み得るが、転送機構５１２−２は、ネットワーク５３０への情報の低速通信に適した通信パラメーターを実装する低速インターフェースを含み得る。
【００８５】
[0095]有線通信に関しては、たとえば、転送機構５１２−１は、インターネットなどのパケット交換ネットワークを通じて情報を通信するように設計される、ネットワークインターフェースを含み得る。転送機構５１２−１は、異なるタイプの有線ネットワークシステムまたはプロトコルに従って、データ通信機能を提供するように構成され得る。データ通信サービスを提供する適切な有線ネットワークの例は、Ｉｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｔａｓｋ  Ｆｏｒｃｅ（ＩＥＴＦ）  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ（ＴＣＰ）およびＩｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ（ＩＰ）通信規格スイート、Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ（ＵＤＰ）、Ｄａｔａｇｒａｍ  Ｃｏｎｇｅｓｔｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ（ＤＣＣＰ）、Ｓｔｒｅａｍ  Ｃｏｎｔｒｏｌ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｐｒｏｔｏｃｏｌ（ＳＣＴＰ）、Ｒｅｓｏｕｒｃｅ  Ｒｅｓｅｒｖａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ（ＲＳＶＰ）、Ｅｘｐｌｉｃｉｔ  Ｃｏｎｇｅｓｔｉｏｎ  Ｎｏｔｉｆｉｃａｔｉｏｎ（ＥＣＮ）プロトコル、Ｏｐｅｎ  Ｓｈｏｒｔｅｓｔ  Ｐａｔｈ  Ｆｉｒｓｔ（ＯＳＰＦ）プロトコルスイート、Ｒｅｌｉａｂｌｅ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ（ＲＴＰ）、ＩＥＴＦ  Ｒｅａｌ−Ｔｉｍｅ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ（ＲＴＰ）などを含み得る。転送機構５１２−２は、Ｓｉｍｐｌｅ  Ｍａｉｌ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ（ＳＭＴＰ）、ｅｘｔｅｎｄｅｄ  ＳＭＴＰ（ＥＳＭＴＰ）、Ｐｏｓｔ  Ｏｆｆｉｃｅ  Ｐｒｏｔｏｃｏｌ（ＰＯＰ）、ＰＯＰ３、Ｉｎｔｅｒｎｅｔ  Ｍｅｓｓａｇｅ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ（ＩＭＡＰ）、Ｍｕｌｔｉｐｕｒｐｏｓｅ  Ｉｎｔｅｒｎｅｔ  Ｍａｉｌ  Ｅｘｔｅｎｓｉｏｎｓ（ＭＩＭＥ）プロトコル、Ｕｎｉｘ−ｔｏ−Ｕｎｉｘ  Ｃｏｐｙ（ＵＵＣＰ）プロトコル、ＩＴＵ−Ｔ  Ｘ.４００プロトコルなどのＩｎｔｅｒｎａｔｉｏｎａｌ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｕｎｉｏｎ（ＩＴＵ）プロトコルスイートなど、様々なメッセージプロトコルに従ってデータ通信を提供するように構成され得る。他の有線通信技法が実装されてもよく、実施形態はこれに関連して限定されないことが理解され得る。
【００８６】
[0096]ワイヤレス通信に関しては、たとえば、転送機構５１２−１は、ワイヤレスローカルエリアネットワーク（ＷＬＡＮ）を通じて情報を通信するように設計された無線を含み得る。転送機構５１２−１は、異なるタイプのワイヤレスネットワークシステムまたはプロトコルに従って、データ通信機能を提供するように構成され得る。データ通信サービスを提供する適切なワイヤレスネットワークシステムの例は、ＩＥＥＥ８０２.１１ａ／ｂ／ｇ／ｎ標準プロトコルシリーズおよびそれらの変形（「ＷｉＦｉ」とも呼ばれる）、ＩＥＥＥ８０２.１６標準プロトコルシリーズおよびその変形（「ＷｉＭａｘ」とも呼ばれる）、ＩＥＥＥ８０２.２０標準プロトコルシリーズおよびその変形など、Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｅｌｅｃｔｒｉｃａｌ  ａｎｄ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｅｎｇｉｎｅｅｒｓ（ＩＥＥＥ）８０２.ｘｘプロトコルシリーズを含み得る。転送機構５１２−２は、１つまたは複数のセルラー無線電話システムによって提供されるデータネットワーキングリンクを通じて、情報を通信するように設計される無線を含み得る。データ通信サービスを提供するセルラー無線電話システムの例は、Ｇｅｎｅｒａｌ  Ｐａｃｋｅｔ  Ｒａｄｉｏ  Ｓｅｒｖｉｃｅ（ＧＰＲＳ）システムを伴うＧＳＭ（登録商標）（ＧＳＭ／ＧＰＲＳ）、ＣＤＭＡ／１ｘＲＴＴシステム、Ｅｎｈａｎｃｅｄ  Ｄａｔａ  Ｒａｔｅｓ  ｆｏｒ  Ｇｌｏｂａｌ  Ｅｖｏｌｕｔｉｏｎ（ＥＤＧＥ）システム、Ｅｖｏｌｕｔｉｏｎ  Ｄａｔａ  Ｏｎｌｙ  またはＥｖｏｌｕｔｉｏｎ  Ｄａｔａ  Ｏｐｔｉｍｉｚｅｄ（ＥＶ−ＤＯ）システム、Ｅｖｏｌｕｔｉｏｎ  Ｆｏｒ  Ｄａｔａ  ａｎｄ  Ｖｏｉｃｅ（ＥＶ−ＤＶ）システム、Ｈｉｇｈ  Ｓｐｅｅｄ  Ｄｏｗｎｌｉｎｋ  Ｐａｃｋｅｔ  Aｃｃｅｓｓ（ＨＳＤＰＡ）システム、Ｈｉｇｈ  Ｓｐｅｅｄ  Ｕｐｌｉｎｋ  Ｐａｃｋｅｔ  Ａｃｃｅｓｓ（ＨＳＵＰＡ）などを含み得る。他のワイヤレス技法が実装されてもよく、実施形態はこれに関連して限定されないことが理解され得る。
【００８７】
[0097]様々な実施形態において、コンピューティングデバイス５１０−１の通信インターフェース５０９は、同一のまたは実質的に同様の帯域幅または通信速度を提供する、通信パラメーターの同じセットを実装することができる。しかしながら、転送機構５１２−１、５１２−２は、異なる時点で、モンタージュアプリケーション１４０および／またはメッセージアプリケーション５４２−１によって利用されることがある。一実施形態では、たとえば、モンタージュアプリケーション１４０は、第１の期間に、モンタージュ１２０とモンタージュ１２０のための１つまたは複数のコンテンツファイル１０４−ｃとを通信することができ、モンタージュアプリケーション１４０および／またはメッセージアプリケーション５４２−１は、第２の期間に、モンタージュ１２０および／またはサポートするコンテンツファイル１０４−ｃに関連する情報を伴うメッセージ５１６を通信することができる。一実施形態では、たとえば、第１の期間および第２の期間は完全に不連続であってもよく、この場合、第１の期間の開始時間と終了時間は第２の期間の開始時間よりも前である。一実施形態では、たとえば、第１の期間および第２の期間は部分的に重複していてもよく、この場合、第１の期間の開始時間は第２の期間の開始時間よりも前であるが、第１の期間の終了時間は第２の期間の開始時間よりも後である。実施形態は、これに関連して限定はされない。
【００８８】
[0098]コンピューティングデバイス５１０−ｊは各々、種々のフォーマットで様々なタイプのメッセージを通信するように構成された、メッセージコンポーネント５３４を伴うモンタージュアプリケーション１４０、および／または１つまたは複数のメッセージアプリケーション５４２−ｋを実装することができる。１つの実施形態が、メッセージングモデルとしてメッセージアプリケーション５４２−ｋに関して説明されるが、そのような説明は、モンタージュアプリケーション１４０のメッセージコンポーネント５３４を利用する他の実施形態に適用され得る。
【００８９】
[0099]メッセージアプリケーション５４２−ｋの各々が、特定のアプリケーションのための特定のタイプおよびフォーマットのメッセージの処理を可能にする、特定の種類の転送機構を表すものであってもよい。メッセージアプリケーション５４２−ｋは、限定されることなく、ファクシミリアプリケーション、ビデオメッセージアプリケーション、インスタントメッセージング（ＩＭ）アプリケーション、チャットアプリケーション、電子メール（ｅメール）アプリケーション、ショートメッセージサービス（ＳＭＳ）アプリケーション、マルチメディアメッセージサービス（ＭＭＳ）アプリケーション、ソーシャルネットワークシステム（ＳＮＳ）アプリケーションなどを含み得る。実施形態はこれに関して限定されず、メッセージアプリケーション５４２−ｋは、説明された実施形態と矛盾しない任意の他のタイプのメッセージングアプリケーションまたは通信アプリケーションを含み得ることを理解されたい。コンピューティングデバイス５１０−ｊは各々、説明された実施形態と矛盾しないメッセージアプリケーション５４２−ｋに加えて、他のタイプのアプリケーションを実装することができることも理解されたい。
【００９０】
[00100]図５に示されるように、たとえば、コンピューティングデバイス５１０−１、５１０−２は、それぞれのメッセージアプリケーション５４２−１、５４２−２を実装することができる。メッセージアプリケーション５４２−１、５４２−２は概して、コンピューティングデバイス５１０−１、５１０−２のためにメッセージを生成し、送信し、受信し、更新し、修正し、他の方法で管理するように動作することができる。本明細書で説明されるコンピューティングデバイス５１０−１およびそのメッセージアプリケーション５４２−１について示される実装形態の詳細は、コンピューティングデバイス５１０−２およびその対応するメッセージアプリケーション５４２−２にも適用されることが理解され得る。
【００９１】
[00101]一実装形態では、メッセージアプリケーション５４２−１、５４２−２は、ネットワークデバイス上で実装されウェブブラウザーを介してコンピューティングデバイス５１０−１、５１０−２によってアクセスされる、ネットワークベースのメッセージアプリケーションではなく、コンピューティングデバイス５１０−１のプロセッサ５０２およびメモリ５０４など、コンピューティングデバイス５１０−１、５１０−２によって提供されるローカルのリソースによって記憶され実行される、スタンドアロンのクライアントベースアプリケーションとして実装される。一実施形態では、メッセージアプリケーション５４２−１、５４２−２は、コンピューティングデバイス５１０−１、５１０−２のローカルのリソース上で部分的に実行されネットワークリソース上で部分的に実行される、分散処理に適した分散型アプリケーションを含み得る。加えて、または代替的に、メッセージアプリケーション５４２−１、５４２−２は、ネットワークデバイス上で実装されウェブブラウザーを介してコンピューティングデバイス５１０−１、５１０−２によってアクセスされる、ネットワークベースのメッセージアプリケーションを含み得る。実施形態は、これに関連して限定はされない。
【００９２】
[00102]一実施形態では、たとえば、メッセージアプリケーション５４２−１は、転送機構５１２−２を通じてメッセージ５１６を通信するように構成され得る。メッセージ５１６は、転送機構５１２−２を通じて通信する場合、モンタージュ１２０に対する１つまたは複数の埋め込みリンク５１８−ｎおよび／または１つまたは複数のコンテンツファイル１０４−ｃおよび／またはモンタージュ１２０を含み得る。１つまたは複数の埋め込みリンク５１８−ｎは、たとえば、ネットワークストレージサーバー５５０に記憶されメッセージ送信者またはメッセージ受信者によってアクセス可能な、モンタージュ１２０および／または１つまたは複数のコンテンツファイル１０４−ｃに対する参照を含み得る。
【００９３】
[00103]リンク５１８−ｎの各々は、ユーザーが直接たどり得る、またはプログラムが自動的にたどる、記憶されたモンタージュ１２０およびコンテンツファイル１０４−ｃに対する参照またはポインタを含み得る。参照は、デバイス（たとえば、ファイルサーバー）のメモリ中の他の場所にある参照対象（たとえば、オブジェクト、ファイル、データ項目など、記憶されたモンタージュ１２０およびコンテンツファイル１０４−ｃ）を参照するデータ型であり、参照対象にアクセスするために使用される。概して、参照は、プログラムが参照対象に直接アクセスすることを可能にする値である。参照対象は、参照と同じデバイス、または参照と異なるデバイスに記憶され得る。大半のプログラミング言語が、何らかの形式の参照をサポートする。リンク５１８−ｎの例は、限定されることなく、Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ（ＷＷＷ）によって使用されるような、ハイパーテキストおよびハイパーリンクを含み得る。ハイパーテキストは、ハイパーリンクを伴うテキストである。ハイパーリンクは、典型的には、アンカーを含み、アンカーは、ハイパーリンクが存在し得るメッセージ内の位置である。ハイパーリンクの対象は、ハイパーリンクが導く記憶されたモンタージュ１２０および／またはコンテンツファイル１０４−ｃである。ユーザーは、アンカーが示されているとき、何らかの方法でアンカーを活動させることによって、たとえば、アンカーにタッチする（たとえば、タッチスクリーンディスプレイによって）ことによって、またはポインティングデバイス（たとえば、マウス）でアンカーをクリックすることによって、リンクをたどることができる。リンク５１８−ｎが活動すると、その対象が、ウェブブラウザーまたはアプリケーションプログラムを介して表示される。
【００９４】
[00104]前に説明されたように、モンタージュアプリケーション１４０は、モンタージュ１２０と関連するコンテンツファイル１０４−ｃとをネットワークストレージサーバー５５０の遠隔のデータストア２１２に公開することによって、公開モデルとメッセージングモデルの両方のハイブリッドを使用し、モンタージュ１２０および関連するコンテンツファイル１０４−ｃのネットワークバージョンに対するリンク５１８−ｎを受信し、リンク５１８−ｎを伴うメッセージ５１６を送信することができる。コンテンツ利用者は、メッセージ５１６にアクセスし、リンク５１８−ｎを選択し、モンタージュ１２０のネットワークバージョンを見ることができる。さらに、コンテンツ利用者は、モンタージュ１２０のタイルオブジェクト１２６−ｅを選択して、選択されたタイルオブジェクト１２６−ｅと関連付けられるコンテンツファイル１０４−ｃのネットワークバージョンを見ることができる。このハイブリッドモデルは、図６を参照してより詳しく説明され得る。
【００９５】
[00105]図６は、メッセージングシステム５００のためのメッセージフローのある実施形態を示す。図６に示されるように、公開コンポーネント５３２は、モンタージュ１２０と関連するコンテンツファイル１０４−ｃとをネットワークサービス６５２に公開することができる。公開コンポーネント５３２は、矢印６０２によって示されるように、転送機構５１２−１を通じて、モンタージュ１２０と関連するコンテンツファイル１０４−ｃとをネットワークストレージサーバー５５０に送信することができる。高速な転送機構として、転送機構５１２−１は、たとえば、メッセージ５１６のメッセージサイズに対して、典型的には、コンテンツファイル１０４−ｃと関連付けられるより大きなサイズのファイルを転送するのに十分な帯域幅を有し得る。
【００９６】
[00106]ネットワークストレージサーバー５５０は、モンタージュ１２０と関連するコンテンツファイル１０４−ｃとを受信し、それらを遠隔のデータストア２１２に記憶することができる。ネットワークストレージサーバー５５０は次いで、矢印６０４によって示されるように、遠隔のデータストア２１２に記憶されるようなモンタージュ１２０およびコンテンツファイル１０４−ｃへのリンク５１８−ｎを送信することができる。
【００９７】
[00107]公開コンポーネント５３２は、リンク５１８−ｎを受信し、リンクを作成コンポーネント１１０に転送することができる。作成コンポーネント１１０は、リンク５１８−ｎを各タイルオブジェクト１２６−ｅと関連付け、また、コンテンツ利用者がタイルオブジェクト１２６−ｅを選択し遠隔のデータストア２１２からの関連するコンテンツファイル１０４−ｃをより詳しく見るためにそれにアクセスできるように、上記の関連付けによってモンタージュ１２０を更新することができる。
【００９８】
[00108]公開モデルにふさわしい一実施形態では、作成コンポーネント１１０が、更新されたモンタージュ１２０を公開コンポーネント５３２に送信することができる。公開コンポーネント５３２は次いで、矢印６０６によって示されるように、更新されたモンタージュ１２０とリンク５１８−ｎとをネットワークサービス６５２上で公開することができる。たとえば、ネットワークサービス６５２は、ソーシャルネットワーキングサービス（ＳＮＳ）を含んでよく、コンテンツ作成者と定義された関係を有するコンテンツ利用者（たとえば、友人）は、公開されたリンク５１８−ｎを介して、モンタージュ１２０および関連するコンテンツファイル１０４−ｃにアクセスすることができる。別の例では、ネットワークサービス６５２は、アカウントをコンテンツ作成者に提供することができ、このアカウントは、ネットワークサービス６５２および／またはセキュリティコンポーネント５３６のためのアクセス許可セットに従って、コンテンツ利用者による閲覧が可能にされ得る。矢印６１０によって示されるように、コンテンツ利用者は、コンピューティングデバイス５１０−２を介してネットワークサービス６５２にアクセスし、ウェブブラウザーを介して、モンタージュ１２０のためのファイルへのリンク５１８−ｎを選択し、遠隔のデータストア２１２からモンタージュ１２０を要求することができる。矢印６１２によって示されるように、ネットワークサービス６５２は、要求を受信し、モンタージュ１２０をコンピューティングデバイス５１０−２に送信することができる。コンピューティングデバイス５１０−２は、表示タイル１２４−ａの中で、タイルオブジェクト１２６−ｅを伴う表示面１２２のユーザーインターフェースビューとして、モンタージュ１２０を表示することができる。コンピューティングデバイス５１０−２は、ウェブブラウザー向けのウェブページとして、またはモンタージュ１２０を見るように設計されたモンタージュアプリケーション１４０もしくはモンタージュビューワーなどのアプリケーションプログラムのユーザーインターフェースビューとして、ユーザーインターフェースビューを生成することができる。
【００９９】
[00109]メッセージングモデルにふさわしい一実施形態では、作成コンポーネント１１０は、更新されたモンタージュ１２０とリンク５１８−ｎとを、メッセージコンポーネント５３４（またはメッセージアプリケーション５４２−１）に転送することができる。メッセージコンポーネント５３４は、リンク５１８−ｎとメッセージ内容６２０とを、入力として受け取ることができる。メッセージ内容６２０は、コンテンツ作成者からのメッセージを含み得る。メッセージコンポーネント５３４は、メッセージ内容６２０とリンク５１８−ｎとを伴う、メッセージ５１６を生成することができる。加えて、または代替的に、メッセージ５１６は任意選択で、メッセージ転送機構５１２−２におけるファイルサイズの制約および利用可能な帯域幅に応じて、モンタージュ１２０および／またはいくつかのコンテンツファイル１０４−ｃを含んでよい。モンタージュ１２０は、モンタージュ１２０の完全な忠実度のバージョン、または転送機構５１２−２の利用可能な帯域幅により適したモンタージュ１２０のより忠実度の低いバージョン、たとえばモンタージュ１２０のサムネイルバージョンを含み得る。
【０１００】
[00110]矢印６０８によって示されるように、メッセージコンポーネント５３４は、メッセージサーバー５４０を介して、コンピューティングデバイス５１０−２のメッセージアプリケーション５４２−２に、転送機構５１２−２を通じてメッセージ５１６を送信することができる。矢印６１０によって示されるように、コンテンツ利用者は、メッセージ５１６を開け、モンタージュ１２０へのリンク５１８−ｎを選択し、遠隔のデータストア２１２からのモンタージュ１２０を要求することができる。矢印６１２によって示されるように、ネットワークサービス６５２は、要求を受信し、モンタージュ１２０をコンピューティングデバイス５１０−２に送信することができる。コンピューティングデバイス５１０−２は、表示タイル１２４−ａの中で、タイルオブジェクト１２６−ｅを伴う表示面１２２のユーザーインターフェースビューとして、モンタージュ１２０を表示することができる。コンピューティングデバイス５１０−２は、ウェブブラウザー向けのウェブページ、またはモンタージュ１２０を見るように設計されたモンタージュアプリケーション１４０もしくはモンタージュビューワーなど、アプリケーションプログラムのユーザーインターフェースビューとして、ユーザーインターフェースビューを生成することができる。
【０１０１】
[00111]図７Ａは、例示的なメッセージ５１６のユーザーインターフェースビュー７００のある実施形態を示す。図６を参照して説明されたように、コンテンツ作成者は、モンタージュアプリケーション１４０および／またはメッセージングアプリケーション５４２−１を使用して、モンタージュ１２０またはモンタージュ１２０への参照を伴うメッセージ５１６を生成し送信することができる。コンテンツ利用者は、コンピューティングデバイス５１０−２とメッセージングアプリケーション５４２−２とを介して、メッセージ５１６を受信することができる。ユーザーインターフェースビュー７００は、メッセージ５１６が電子メールメッセージとして実装される例を提供する。
【０１０２】
[00112]メッセージ５１６は、とりわけ、返信ボタン、全員に返信ボタン、転送ボタン、削除ボタン、フォルダーに移動ボタン、規則作成ボタンなど、電子メールのための種々のコマンド要素を有する、リボンバー７０２を含み得る。メッセージ５１６はさらに、アドレス情報を伴うアドレスバー７０４、およびメッセージ本文７０６を含み得る。メッセージ本文７０６は、モンタージュファイルサムネイル７２０と、遠隔のデータストア２１２に記憶されるようなモンタージュ１２０へのリンク５１８−１とを有する、画面を含み得る。モンタージュファイルサムネイル７２０は、モンタージュ１２０のより忠実度の低いバージョンを含み得る。
【０１０３】
[00113]コンテンツ利用者は、たとえば、ポインティングデバイス７１０などの入力デバイスを使用して、モンタージュサムネイル７２０を選択することができる。コンテンツ利用者はまた、たとえば、タッチスクリーンディスプレイ上でのジェスチャー７１２などの入力デバイスを使用して、「生徒クラス旅行」というタイトルのリンク５１８−１を選択することができる。どちらの場合でも、この選択によって、モンタージュ１２０を見るためのウェブブラウザーまたはアプリケーションプログラムが起動する。
【０１０４】
[00114]図７Ｂは、メッセージ５１６から起動された後の、モンタージュ１２０のユーザーインターフェースビュー７４０のある実施形態を示す。コンピューティングデバイス５１０−２の所与の実装形態に応じて、コンピューティングデバイス５１０−２は、ウェブブラウザー向けのウェブページとして、またはモンタージュ１２０を見るために特別に設計されたモンタージュアプリケーション１４０またはモンタージュビューワー７３０など、アプリケーションプログラムのユーザーインターフェースビューとして、ユーザーインターフェースビュー７４０を生成することができる。たとえば、コンピューティングデバイス５１０−２および／またはモンタージュビューワー７３０のために実装されるモンタージュアプリケーション１４０の表示コンポーネント１３０は、モンタージュ１２０を開くための制御指示を受け取り、遠隔のデータストア２１２からモンタージュ１２０を取り込む動作を開始することができる。表示コンポーネント１３０および／またはモンタージュビューワー７３０は、適切な表示タイル１２４−ａの中のタイルオブジェクト１２６−ｅを伴う表示面１２２を含む、モンタージュ１２０のユーザーインターフェースビュー７４０を表示することができる。
【０１０５】
[00115]ウェブページとしてレンダリングされる場合、表示コンポーネント１３０は、ハイパーテキストマークアップ言語（ＨＴＭＬ）または同様のコードなど、ウェブページのために特別に設計されたコードを使用することができる。しかしながら、ＨＴＭＬコードは、クライアントデバイス５１０−２によって実装される所与のタイプのウェブブラウザーによって制限され得る。モンタージュビューワー７３０のためのユーザーインターフェースビューとしてレンダリングされる場合、表示コンポーネント１３０および／またはモンタージュビューワー７３０は、モンタージュビューワー７３０に最適化されたコードを使用することができる。たとえば、モンタージュ１２０は、ウェブページ向けのＨＴＭＬコードを使用して生成されてもよく、拡張マークアップ言語（ＸＭＬ）コードがそのＨＴＭＬコードに埋め込まれる。ＸＭＬコードは、モンタージュアプリケーション１４０またはモンタージュビューワー７３０のために特別に設計されたデータスキーマによって生成され得る。したがって、モンタージュアプリケーション１４０またはモンタージュビューワー７３０は、ウェブページに使用されるモンタージュ１２０の忠実度の低いバージョンと比べて、忠実度の高いモンタージュ１２０のバージョンをレンダリングすることができる。
【０１０６】
[00116]図7Cは、モンタージュビューワー７３０の中で表示される、モンタージュ１２０のある例のユーザーインターフェースビュー７５０のある実施形態を示す。図７Ｂを参照して説明されたように、モンタージュビューワー７３０は、適切な表示タイル１２４−ａの中のタイルオブジェクト１２６−ｅを伴う表示面１２２を含む、モンタージュ１２０のユーザーインターフェースビュー７４０を表示することができる。表示面１２２は、図４を参照して上で説明されたように、コンテンツファイル１０４−１のためのタイルオブジェクト１２６−１を含むと仮定する。
【０１０７】
[00117]コンテンツ利用者は、たとえば、ポインティングデバイス７１０などの入力デバイスを使用して、タイルオブジェクト１２６−１を選択することができる。コンピューティングデバイス５１０−２および／またはモンタージュビューワー７３０に対して実装されるモンタージュアプリケーション１４０の表示コンポーネント１３０は、タイルオブジェクト１２６−１を選択するための制御指示を受け取り、遠隔のデータストア２１２からタイルオブジェクト１２６−１のためのコンテンツファイル１０４−１を取り込む。
【０１０８】
[00118]図７Ｄは、モンタージュ１２０から起動された後の、コンテンツファイル１０４−１のユーザーインターフェースビュー７６０のある実施形態を示す。表示コンポーネント１３０および／またはモンタージュビューワー７３０は、遠隔のデータストア２１２から取り込まれたコンテンツファイル１０４−１の完全な忠実度のバージョンとともに、ユーザーインターフェースビュー７６０を表示することができる。あるいは、コンテンツファイル１０４−１は、コンテンツファイル１０４−１を生成するために使用されるものと同様のネイティブなアプリケーションプログラムを使用して、またはそのようなアプリケーションプログラムのために特別に設計されたビューワーを使用して、レンダリングされ得る。実施形態は、これに関連して限定はされない。
【０１０９】
[00119]様々な実施形態では、表示コンポーネント１３０は、様々なサイズ、解像度、リフレッシュレート、バックライト、消費電力など、様々な特性を有するディスプレイ上で見るための、モンタージュ１２０を動的に生成することができる。そのような場合、表示コンポーネント１３０は、ディスプレイのディスプレイ特性を検出し、ディスプレイ上での表示のためにモンタージュ１２０を修正するように構成され得る。たとえば、表示コンポーネント１３０は、多くの会議室で行われるようにタッチ制御によって大型の壁面ディスプレイ上に表示される場合、より多数の表示タイル１２４−ａおよびタイルオブジェクト１２６−ｅを伴う、はるかに大型のバージョンのモンタージュ１２０を生成することができる。一方、表示コンポーネント１３０は、スマートフォンで表示される場合、より少数の表示タイル１２４−ａおよびタイルオブジェクト１２６−ｅを伴う、より小型のバージョンのモンタージュ１２０を生成することができる。同様に、表示コンポーネント１３０は、所与のディスプレイの画面解像度またはピクセルサイズに基づいて、異なるレベルの忠実度でモンタージュ１２０を生成することができる。別の例では、表示コンポーネント１３０は、ポートレートモードではあるバージョンのモンタージュ１２０を生成し、パノラミックモードでは、たとえばユーザーがスマートフォンまたはタブレットを回転させるときは、別のバージョンのモンタージュ１２０を生成することができる。実施形態は、これに関連して限定はされない。
【０１１０】
[00120]上で説明された実施形態の動作はさらに、１つまたは複数の論理フローを参照して説明され得る。それぞれの論理フローは、別段示されない限り、必ずしも提示された順序または任意の特定の順序で実行される必要はないことが理解され得る。その上、論理フローに関して説明された様々な動作は、順番にまたは並行に実行され得る。論理フローは、設計および性能の制約の所与のセットに必要に応じて、説明される実施形態または代替的な実施形態の１つまたは複数のハードウェア要素および／またはソフトウェア要素を使用して実装され得る。たとえば、論理フローは、論理デバイス（たとえば、汎用または専用コンピューター）による実行のための論理（たとえば、コンピュータープログラム命令）として実装され得る。
【０１１１】
[00121]図８Ａは、論理フロー８００の一実施形態を示す。論理フロー８００は、モンタージュ１２０を生成するためのモンタージュアプリケーション１４０の作成コンポーネント１１０など、本明細書で説明される１つまたは複数の実施形態によって実行される動作の一部またはすべてを表すものであってもよい。
【０１１２】
[00122]図８Ａに示される図解された実施形態では、論理フロー８００は、ブロック８０２において、複数の表示タイルを有する表示面を提供することができる。たとえば、作成コンポーネント１１０は、ユーザーインターフェース５３８を介して、複数の表示タイル１２４−ａを有する表示面１２２を提供することができる。表示面１２２は、多数のモンタージュテンプレートの中から選択されてもよく、またはコンテンツ作成者によってカスタム設計されてもよい。
【０１１３】
[00123]論理フロー８００は、ブロック８０４において、コンテンツファイルを表示タイルと関連付けるための制御指示を受け取ることができる。たとえば、作成コンポーネント１１０は、コンテンツファイル１０４−ｃを表示タイル１２４−ａと関連付けるための制御指示１０２−ｂを受け取ることができる。制御指示１０２−ｂは、コンテンツ作成者によるコマンドを示す、入力デバイスからのものであり得る。
【０１１４】
[00124]論理フロー８００は、ブロック８０６において、コンテンツファイルのコンテンツファイルタイプを特定することができる。たとえば、作成コンポーネント１１０は、コンテンツファイル１０４−ｃのコンテンツファイルタイプを特定することができる。特定は、コンテンツファイル１０４−ｃのファイル拡張子、コンテンツファイル１０４−ｃのメタデータ、コンテンツファイル１０４−ｃ内の情報の分析、コンテンツファイル１０４−ｃを作成するために使用されるアプリケーションプログラム向けの情報などを、調査することによって実行され得る。
【０１１５】
[00125]論理フロー８００は、ブロック８０８において、コンテンツファイルタイプに基づいて、コンテンツファイルからコンテンツのある部分を取り込むことができる。たとえば、作成コンポーネント１１０は、コンテンツファイルタイプに基づいてタイプモジュール２０２−ｇを選択し、選択されたタイプモジュール２０２−ｇを使用して、コンテンツファイル１０４−ｃについて見出されたコンテンツファイルタイプと関連付けられるタイプ定義２０４−ｈに従って、コンテンツファイル１０４−ｃから適切なコンテンツ部分１０６−ｄを取り込むことができる。一実施形態では、コンテンツファイル１０４−ｃは、ローカルのデータストア２１０に記憶されてもよく、コンテンツ部分１０６−ｄがファイルナビゲーションツール３０４を使用してデータバスを通じて取り込まれる。一実施形態では、コンテンツファイル１０４−ｃは、遠隔のデータストア２１２に記憶されてもよく、コンテンツ部分１０６−ｄがファイルナビゲーションツール３０４を使用してネットワークを通じて取り込まれる。
【０１１６】
[00126]論理フロー８００は、ブロック８１０において、コンテンツ部分に基づいてタイルオブジェクトを生成することができる。たとえば、作成コンポーネント１１０は、選択されたタイプモジュール２０２−ｇを使用して、関連するタイプ定義２０４−ｈに従って、取り込まれたコンテンツ部分１０６−ｄからタイルオブジェクト１２６−ｅを生成することができる。タイルオブジェクト１２６−ｅは、表示タイル１２４−ａ内に表示され得る。タイルオブジェクト１２６−ｅは、コンテンツ利用者が、コンテンツファイル１０４−ｃの完全な忠実度のビューを見ることを望むかどうかを判定することを可能にするように、基礎となるコンテンツファイル１０４−ｃについての十分な情報を表示するように設計されている。
【０１１７】
[00127]論理フロー８００は、ブロック８１２において、表示面とタイルオブジェクトとをモンタージュとして記憶することができる。たとえば、作成コンポーネント１１０は、表示面１２２と任意のタイルオブジェクト１２６−ｅとをモンタージュ１２０として記憶することができる。モンタージュ１２０は次いで、たとえばメッセージングシステム５００を使用して、様々なコンテンツ利用者によって配信され、公開され、利用され得る。
【０１１８】
[00128]図８Ｂは、論理フロー８２０の一実施形態を示す。論理フロー８２０は、モンタージュ１２０のタイルオブジェクト１２６−ｅを生成するためのモンタージュアプリケーション１４０の作成コンポーネント１１０など、本明細書で説明される１つまたは複数の実施形態によって実行される動作の一部またはすべてを表すものであり得る。
【０１１９】
[00129]図８Ｂに示される図解された実施形態では、論理フロー８２０は、ブロック８２２において、コンテンツファイルをデジタルモンタージュの表示面の表示タイルと関連付けるための制御指示を受け取ることができる。たとえば、作成コンポーネント１１０は、コンテンツファイル１０４−１を、モンタージュ１２０などのデジタルモンタージュの表示面１２２の表示タイル１２４−１と関連付けるための、制御指示１０２−ｂを受け取ることができる。
【０１２０】
[00130]論理フロー８２０は、ブロック８２４において、コンテンツファイルのコンテンツファイルタイプを特定することができる。たとえば、作成コンポーネント１１０は、コンテンツファイル１０４−１のコンテンツファイルタイプを特定することができる。作成コンポーネント１１０は、とりわけ、ワードプロセッシングファイル、スプレッドシートファイル、プレゼンテーションファイル、個人情報マネージャーファイル、データベースファイル、パブリッシャーファイル、ドローイングファイル、メモ帳ファイル、またはメッセージファイルのうちの１つとして、コンテンツファイル１０４−１のコンテンツファイルタイプを特定することができる。
【０１２１】
[00131]論理フロー８２０は、ブロック８２６において、コンテンツファイルタイプに基づいて、コンテンツファイルのコンテンツ部分を取り込むことができる。たとえば、作成コンポーネント１１０は、特定されたコンテンツファイルタイプに基づいて、コンテンツファイル１０４−１のコンテンツ部分１０６−１を取り込むことができる。
【０１２２】
[00132]論理フロー８２０は、ブロック８２８において、コンテンツ部分に基づいてタイルオブジェクトを生成することができる。たとえば、作成コンポーネント１１０は、コンテンツ部分１０６−１に基づいて、タイルオブジェクト１２６−１を自動的に生成することができる。より具体的には、作成コンポーネント１１０は、対応するタイルオブジェクトコンテナー３４２−ｕ内に格納される選択されたコンテンツ部分クリップ３４４−ｖを有するタイプオブジェクト画面３４６として、タイルオブジェクト１２６−１を生成することができる。
【０１２３】
[00133]作成コンポーネント１１０は、コンテンツファイルタイプに基づいて、コンテンツファイル１０４−１のコンテンツ部分１０６−１から、いくつかのコンテンツ部分クリップ３４４−ｖを自動的に選択することができる。より具体的には、作成コンポーネント１１０は、コンテンツファイルタイプと関連付けられるタイプ定義２０４−ｈに基づいて、コンテンツファイル１０４−１のコンテンツ部分１０６−１からコンテンツ部分クリップ３４４−ｖを選択することができ、タイプ定義は、コンテンツおよびプロパティクラス、コンテンツオブジェクトクラス、またはコンテンツページクラスの情報を含む。選択されると、作成コンポーネント１１０は、選択されたコンテンツ部分クリップを、タイルオブジェクト面３４６の対応するオブジェクトコンテナー３４２−ｕと関連付けることができる。
【０１２４】
[00134]加えて、または代替的に、作成コンポーネント１１０は、ユーザーの制御指示に応答して、コンテンツファイル１０４−１のコンテンツ部分１０６−１からいくつかのコンテンツ部分クリップ３４４−ｖを選択することができる。たとえば、作成コンポーネント１１０は、コンテンツファイル１０４−１のコンテンツ部分１０６−１からコンテンツ部分クリップ３４４−ｖを選択するための制御指示１０２−ｂを、入力デバイスから受け取ることができる。さらに、作成コンポーネント１１０はまた、コンテンツファイル１０４−１のコンテンツ部分１０６−１からの選択されたコンテンツ部分クリップ３４４−ｖを対応するタイルオブジェクトコンテナー３４２−ｕと関連付けるための制御指示１０２−ｂを、入力デバイスから受け取ることができる。
【０１２５】
[00135]コンテンツ部分クリップ３４４−ｖがタイルオブジェクトコンテナー３４２−ｕと関連付けられると、作成コンポーネント１１０は、コンテンツ部分クリップ３４４−ｖを対応するタイルオブジェクトコンテナー３４２−ｕ内に収めるためのフィッティングアルゴリズムを利用して、対応するタイルオブジェクトコンテナー３４２−ｕのコンテナー定義および／またはタイルオブジェクト面３４６のセットに従って、埋まったコンテナー３４８−ｗを形成することができる。
【０１２６】
[00136]埋まったコンテナー３４８−ｗのセットが生成されると、作成コンポーネント１１０は、同じまたは同様のフィッティングアルゴリズムを利用して、タイルオブジェクト面３４６および／または表示面１２２の画面定義のセットに従って、埋まったコンテナー３４８−ｗをタイルオブジェクト面３４６内に収めることができる。
【０１２７】
[00137]図９は、論理フロー９００の一実施形態を示す。論理フロー９００は、モンタージュアプリケーション１４０の表示コンポーネント１３０など、本明細書で説明された１つまたは複数の実施形態によって実行された動作の一部またはすべてを表すものであり得る。
【０１２８】
[00138]図９に示される図解された実施形態では、論理フロー９００は、ブロック９０２において、対応するコンテンツファイルのためのタイルオブジェクトを各々有する複数の表示タイルを伴う表示面を含む、モンタージュを生成することができる。たとえば、表示コンポーネント１３０は、対応するコンテンツファイル１０４−ｃのためのタイルオブジェクト１２６−ｅを各々有する複数の表示タイル１２４−ａを伴う表示面１２２を含む、モンタージュ１２０を生成することができる。
【０１２９】
[00139]論理フロー９００は、ブロック９０４において、モンタージュとコンテンツファイルとをネットワークサービスに送信することができる。たとえば、モンタージュアプリケーション１４０の公開コンポーネント５３２は、ネットワークサービス６５２を介してアクセス可能な遠隔のデータストア２１２による記憶のために、モンタージュ１２０および関連するコンテンツファイル１０４−ｃをネットワークストレージサーバー５５０に送信することができる。
【０１３０】
[00140]論理フロー９００は、ブロック９０６において、モンタージュおよび各コンテンツファイルへの参照を受け取ることができる。たとえば、公開コンポーネント５３２は、モンタージュ１２０および各コンテンツファイル１０４−ｃへのリンク５１８−ｎを受け取ることができる。リンク５１８−ｎは、遠隔のデータストア２１２に記憶されるような、モンタージュ１２０および各コンテンツファイル１０４−ｃのネットワークバージョンへの参照またはポインタを含み得る。
【０１３１】
[00141]論理フロー９００は、ブロック９０８において、コンテンツファイルへの参照を、対応するタイルオブジェクトと関連付けることができる。たとえば、公開コンポーネント５３２は、受け取られたリンク５１８−ｎを作成コンポーネント１１０に渡すことができる。作成コンポーネント１１０は、コンテンツファイル１０４−ｃへのリンク５１８−ｎを、対応するタイルオブジェクト１２６−ｅと関連付けることができる。コンテンツ利用者がタイルオブジェクト１２６−ｅを選択すると、表示コンポーネント１３０は、関連するリンク５１８−ｎを介して、タイルオブジェクト１２６−ｅと関連付けられるコンテンツファイル１０４−ｃを取り込むことができる。
【０１３２】
[00142]図１０は、前に説明されたような様々な実施形態を実装するのに適した、例示的なコンピューティングアーキテクチャ１０００のある実施形態を示す。コンピューティングアーキテクチャ１０００は、１つまたは複数のプロセッサ、コプロセッサ、メモリユニット、チップセット、コントローラー、周辺機器、インターフェース、発振器、タイミングデバイス、ビデオカード、オーディオカード、マルチメディア入力／出力（Ｉ／Ｏ）コンポーネントなどのような、様々な共通のコンピューティング要素を含む。しかしながら、実施形態は、コンピューティングアーキテクチャ１０００による実装形態に限定されない。
【０１３３】
[00143]図１０に示されるように、コンピューティングアーキテクチャ１０００は、処理ユニット１００４と、システムメモリ１００６とシステムバス１００８とを含む。処理ユニット１００４は、様々な市販のプロセッサのいずれであってもよい。デュアルマイクロプロセッサおよび他のマルチプロセッサアーキテクチャも、処理ユニット１００４として利用され得る。システムバス１００８は、限定はされないが、システムメモリ１００６を含むシステムコンポーネントのためのインターフェースを、処理ユニット１００４に提供する。システムバス１００８は、メモリバス（メモリコントローラーを伴う、または伴わない）、周辺バス、およびローカルバスに、種々の商用のバスアーキテクチャのいずれかを使用してさらに相互接続できる、いくつかのタイプのバスアーキテクチャのいずれであってもよい。
【０１３４】
[00144]システムメモリ１００６は、読み取り専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、ダブルデータレートＤＲＡＭ（ＤＤＲＡＭ）、同期型ＤＲＡＭ（ＳＤＲＡＭ）、スタティックＲＡＭ（ＳＲＡＭ）、プログラマブルＲＯＭ（ＰＲＯＭ）、消去可能プログラマブルＲＯＭ（ＥＰＲＯＭ）、電子的消去可能プログラマブルＲＯＭ（ＥＥＰＲＯＭ）、フラッシュメモリ、強誘電性ポリマーメモリなどのポリマーメモリ、オーボニックメモリ、相変化メモリもしくは強誘電性メモリ、シリコン−酸化物−窒化物−酸化物−シリコン（ＳＯＮＯＳ）メモリ、磁気カードもしくは光学カード、または情報を記憶するのに適した任意の他のタイプの媒体など、様々なタイプのメモリユニットを含み得る。図１０に示される図解された実施形態では、システムメモリ１００６は、非揮発性メモリ１０１０および／または揮発性メモリ１０１２を含み得る。基本入力／出力システム（ＢＩＯＳ）は、非揮発性メモリ１０１０に記憶され得る。
【０１３５】
[00145]コンピューター１００２は、内部のハードディスクドライブ（ＨＤＤ）１０１４、取り外し可能な磁気ディスク１０１８から読み取りそれに書き込むための磁気フロッピー（登録商標）ディスクドライブ（ＦＤＤ）１０１６、取り外し可能な光学ディスク１０２２（たとえば、ＣＤ−ＲＯＭまたはＤＶＤ）から読み取りそれに書き込むための光学ディスクドライブ１０２０を含む、様々なタイプのコンピューター可読記憶媒体を含み得る。ＨＤＤ１０１４、ＦＤＤ１０１６および光学ディスクドライブ１０２０は、それぞれ、ＨＤＤインターフェース１０２４、ＦＤＤインターフェース１０２６、および光学ドライブインターフェース１０２８によって、システムバス１００８に接続され得る。外部ドライブの実装形態のためのＨＤＤインターフェース１０２４は、Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ（ＵＳＢ）とＩＥＥＥ１３９４インターフェース技術のうちの少なくとも１つまたは両方を含み得る。
【０１３６】
[00146]ドライブおよび関連するコンピューター可読媒体は、データ、データ構造、コンピューター実行可能命令などの、揮発性記憶および／または非揮発性記憶を行う。たとえば、多数のプログラムモジュールが、オペレーティングシステム１０３０、１つまたは複数のアプリケーションプログラム１０３２、他のプログラムモジュール１０３４、およびプログラムデータ１０３６を含む、ドライブおよびメモリユニット１０１０、１０１２に記憶され得る。１つまたは複数のアプリケーションプログラム１０３２、他のプログラムモジュール１０３４、およびプログラムデータ１０３６は、たとえば、モンタージュアプリケーション１４０、作成コンポーネント１１０、表示コンポーネント１３０、セキュリティコンポーネント５３６、公開コンポーネント５３２、メッセージコンポーネント５３４、ユーザーインターフェース５３８、およびメッセージングアプリケーション５４２を含み得る。
【０１３７】
[00147]ユーザーは、１つまたは複数の有線／ワイヤレス入力デバイス、たとえばキーボード１０３８と、マウス１０４０などのポインティングデバイスとを通じて、コマンドまたは情報をコンピューター１００２に入力することができる。他の入力デバイスは、マイクロフォン、赤外線（ＩＲ）リモートコントロール、ジョイスティック、ゲームパッド、スタイラスペン、タッチスクリーンなどを含み得る。これらおよび他の入力デバイスは、システムバス１００８に結合された入力デバイスインターフェースを通じて処理ユニット１００４に接続されることが多いが、パラレルポート、ＩＥＥＥ１３９４シリアルポート、ゲームポート、ＵＳＢポート、ＩＲインターフェースなど、他のインターフェースによって接続されてもよい。
【０１３８】
[00148]モニター１０４４または他のタイプのディスプレイデバイスも、ビデオアダプター１０４６などのインターフェースを介して、システムバス１００８に接続される。モニター１０４４に加えて、コンピューターは典型的には、スピーカー、プリンターなど、他の周辺出力デバイスを含む。
【０１３９】
[00149]コンピューター１００２は、リモートコンピューター１０４８などの１つまたは複数のリモートコンピューターへの有線および／またはワイヤレス通信を介した論理接続を使用して、ネットワーク化された環境において動作することができる。リモートコンピューター１０４８は、ワークステーション、サーバーコンピューター、ルーター、パーソナルコンピューター、ポータブルコンピューター、マイクロプロセッサベースの娯楽機器、ピアデバイスまたは他の共通ネットワークノードであってもよく、典型的には、コンピューター１００２に関連して説明される要素の多くまたはすべてを含むが、簡潔にするために、メモリ／ストレージデバイス１０５０のみが示されている。図示される論理接続は、ローカルエリアネットワーク（ＬＡＮ）１０５２および／またはより大きなネットワーク、たとえばワイドエリアネットワーク（ＷＡＮ）１０５４への、有線／ワイヤレス接続を含む。そのようなＬＡＮおよびＷＡＮネットワーキング環境は、オフィスおよび会社では普通であり、そのすべてが世界的な通信ネットワーク、たとえばインターネットに接続できるイントラネットなどの企業規模のコンピューターネットワークを支援する。
【０１４０】
[00150]ＬＡＮネットワーキング環境で使用される場合、コンピューター１００２は、有線および／またはワイヤレス通信ネットワークインターフェースまたはアダプター１０５６を通じて、ＬＡＮ１０５２に接続される。アダプター１０５６は、ＬＡＮ１０５２への有線および／またはワイヤレス通信を支援することができ、ＬＡＮ１０５２は、アダプター１０５６のワイヤレス機能と通信するために配置されたワイヤレスアクセスポイントも含み得る。
【０１４１】
[00151]ＷＡＮネットワーキング環境で使用される場合、コンピューター１００２はモデム１０５８を含んでよく、またはＷＡＮ１０５４上の通信サーバーに接続され、またはたとえばインターネットによってＷＡＮ１０５４を通じて通信を確立するための他の手段を有する。内部にあっても外部にあってもよく有線デバイスおよび／またはワイヤレスデバイスであり得るモデム１０５８は、入力デバイスインターフェース１０４２を介してシステムバス１００８に接続する。ネットワーク化された環境では、コンピューター１００２に関連して図示されたプログラムモジュール、またはその一部は、遠隔のメモリ／ストレージデバイス１０５０に記憶され得る。示されたネットワーク接続は例示的であり、コンピューター間の通信リンクを確立する他の手段が使用され得ることが理解されるだろう。
【０１４２】
[00152]コンピューター１００２は、たとえば、プリンター、スキャナー、デスクトップおよび／またはポータブルコンピューター、携帯情報端末（ＰＤＡ）、通信衛星、ワイヤレスに検出可能なタグと関連付けられる任意の装置または位置（たとえば、売店、新聞売店、休憩室）、および電話とのワイヤレス通信（たとえば、ＩＥＥＥ８０２．１１無線変調技法）状態にある動作可能に配置されたワイヤレスデバイスなどの、ＩＥＥＥ８０２規格群を使用する有線およびワイヤレスのデバイスまたはエンティティと通信するように動作可能である。これは少なくとも、Ｗｉ−Ｆｉ（またはＷｉｒｅｌｅｓｓ  Ｆｉｄｅｌｉｔｙ）、ＷｉＭａｘ、およびＢｌｕｅｔｏｏｔｈ（登録商標）ワイヤレス技術を含む。したがって、通信は、従来のネットワークのように事前に定義された構造、または単に、少なくとも２つのデバイスの間のアドホック通信であってもよい。Ｗｉ−Ｆｉネットワークは、ＩＥＥＥ８０２．１１ｘ（ａ、ｂ、ｇなど）と呼ばれる無線技術を使用して、安全で、信頼性があり、高速なワイヤレス接続を提供する。Ｗｉ−Ｆｉネットワークは、互いに、インターネットへ、かつ有線ネットワーク（ＩＥＥＥ８０２．３関連の媒体および機能を使用する）へ、コンピューターを接続するために使用され得る。
【０１４３】
[00153]様々な実施形態は、ハードウェア要素、ソフトウェア要素、またはこれら両方の組合せを使用して実装され得る。ハードウェア要素の例は、デバイス、論理デバイス、コンポーネント、プロセッサ、マイクロプロセッサ、回路、回路素子（たとえば、トランジスタ、抵抗、コンデンサー、誘導子など）、集積回路、特定用途向け集積回路（ＡＳＩＣ）、プログラマブルロジックデバイス（ＰＬＤ）、デジタルシグナルプロセッサ（ＤＳＰ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、メモリユニット、論理ゲート、レジスタ、半導体デバイス、チップ、マイクロチップ、チップセットなどを含み得る。ソフトウェア要素の例は、ソフトウェアコンポーネント、プログラム、アプリケーション、コンピュータープログラム、アプリケーションプログラム、システムプログラム、マシンプログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、関数、方法、プロシージャ、ソフトウェアインターフェース、アプリケーションプログラムインターフェース（ＡＰＩ）、命令セット、コンピューティングコード、コンピューターコード、コードセグメント、コンピューターコードセグメント、ワード、値、シンボル、またはこれらの任意の組合せを含み得る。実施形態がハードウェア要素および／またはソフトウェア要素を使用して実装されるかどうかを決定することは、所与の実装形態における望みに応じて、所望の計算速度、電力レベル、熱耐性、処理サイクルの量、入力データ速度、出力データ速度、メモリリソース、データバス速度、および他の設計または性能の制約など、任意の数の要因に従って変化し得る。
【０１４４】
[00154]いくつかの実施形態は、製造物品を含み得る。製造物品は、論理を記憶するための記憶媒体を含み得る。記憶媒体の例は、揮発性メモリまたは非揮発性メモリ、取り外し可能または取り外し不能メモリ、消去可能または消去不能メモリ、書き込み可能または再書き込み可能メモリなどを含む、電子データを記憶することが可能な１つまたは複数のタイプのコンピューター可読記憶媒体を含み得る。論理の例は、ソフトウェアコンポーネント、プログラム、アプリケーション、コンピュータープログラム、アプリケーションプログラム、システムプログラム、マシンプログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、関数、方法、プロシージャ、ソフトウェアインターフェース、アプリケーションプログラムインターフェース（ＡＰＩ）、命令セット、コンピューティングコード、コンピューターコード、コードセグメント、コンピューターコードセグメント、ワード、値、シンボル、またはこれらの任意の組合せなど、様々なソフトウェア要素を含み得る。一実施形態では、たとえば、製造物品は、コンピューターによって実行されると、説明された実施形態に従った方法および／または動作をコンピューターに実行させる、実行可能なコンピュータープログラム命令を記憶することができる。実行可能なコンピュータープログラム命令は、ソースコード、コンパイルされたコード、解釈されたコード、実行可能なコード、スタティックコード、ダイナミックコードなど、任意の適切なタイプのコードを含み得る。実行可能なコンピュータープログラム命令は、ある機能を実行するようにコンピューターに命令するための、事前に定義されたコンピューター言語、方式または構文に従って実装され得る。命令は、任意の適切な高水準プログラミング言語、低水準プログラミング言語、オブジェクト指向プログラミング言語、ビジュアルプログラミング言語、コンパイラプログラミング言語、および／またはインタプリタプログラミング言語を使用して実装され得る。
【０１４５】
[00155]いくつかの実施形態は、「一実施形態」または「ある実施形態」という表現を、それらの派生形とともに使用して説明されることがある。これらの用語は、実施形態に関連して説明される特定の機能、構造、または特徴が、少なくとも１つの実施形態に含まれるということを意味する。本明細書の様々な場所における「一実施形態では」という語句の出現は、必ずしもすべてが同じ実施形態を指しているとは限らない。
【０１４６】
[00156]いくつかの実施形態は、「結合された」および「接続された」という表現を、それらの派生形とともに使用して説明されることがある。これらの用語は、必ずしも互いに同義であることは意図されない。たとえば、いくつかの実施形態は、２つ以上の要素が互いに直接物理的にまたは電気的に接触していることを示すために、「接続された」および／または「結合された」という用語を使用して説明されることがある。しかしながら、「結合された」という用語は、２つ以上の要素が互いに直接接触していないがそれでも互いに協働または対話していることも、意味し得る。
【０１４７】
[00157]本開示の要約は、読者が技術的な開示の本質を迅速に確認できるようにするために与えられたことを、強調する。要約は特許請求の範囲または意味を説明または制限するために使用されないという理解とともに、要約は提出される。加えて、前述の発明を実施するための形態では、様々な特徴が、本開示を簡潔にする目的で単一の実施形態に一緒にまとめられていることが理解され得る。本開示のこの方法は、特許請求される実施形態が各請求項において明示的に記載されているものよりも多くの特徴を必要とするという意図を反映するものと、解釈されるべきではない。むしろ、以下の特許請求の範囲が示すように、発明の主題は、単一の開示された実施形態のすべてではない特徴の中にある。したがって、以下の特許請求の範囲は、ここで発明を実施するための形態に組み込まれ、各々の請求項は、別個の実施形態として独立している。添付の特許請求の範囲では、「ｉｎｃｌｕｄｉｎｇ」および「ｉｎ  ｗｈｉｃｈ」という用語がそれぞれ、「ｃｏｍｐｒｉｓｉｎｇ」および「ｗｈｅｒｅｉｎ」というそれぞれの用語の平易な英語の同義語として使用される。その上、「第１の」、「第２の」、「第３の」などの用語は、単に標識として使用され、それらの対象に数値的な要件を課すことは意図されない。
【０１４８】
[00158]本主題は、構造的な特徴および／または方法の動作に特有の言葉で説明されてきたが、添付の特許請求の範囲で定義される主題は、上で説明された特定の特徴または動作には必ずしも限定されないことを理解されたい。むしろ、上で説明された特定の特徴および動作は、特許請求の範囲を実施する例示的な形式として開示される。
【図１】
2014519673.tif 000008
【図２】
2014519673.tif 000009
【図３Ａ】
2014519673.tif 000010
【図３Ｂ】
2014519673.tif 000011
【図３Ｃ】
2014519673.tif 000012
【図４】
2014519673.tif 000013
【図５】
2014519673.tif 000014
【図６】
2014519673.tif 000015
【図７ＡＢ】
2014519673.tif 000016
【図７ＣＤ】
2014519673.tif 000017
【図８Ａ】
2014519673.tif 000018
【図８Ｂ】
2014519673.tif 000019
【図９】
2014519673.tif 000020
【図１０】
2014519673.tif 000021
【国際調査報告】
2014519673.tif 000022
2014519673.tif 000023