JP2010527478A - ライブ・コンパニオン・ウィンドウ - Google Patents

ライブ・コンパニオン・ウィンドウ Download PDF

Info

Publication number
JP2010527478A
JP2010527478A JP2010507538A JP2010507538A JP2010527478A JP 2010527478 A JP2010527478 A JP 2010527478A JP 2010507538 A JP2010507538 A JP 2010507538A JP 2010507538 A JP2010507538 A JP 2010507538A JP 2010527478 A JP2010527478 A JP 2010527478A
Authority
JP
Japan
Prior art keywords
application
user interface
companion
window
host
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2010507538A
Other languages
English (en)
Other versions
JP2010527478A5 (ja
Inventor
モロミサト,ジョージ・ピー
エーデルスタイン,ノア・ビー
ブハンダルカル,アディトヤ・ジー
オッズィー,レイモンド・イー
パラスニス,アブヘイ・ヴイ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2010527478A publication Critical patent/JP2010527478A/ja
Publication of JP2010527478A5 publication Critical patent/JP2010527478A5/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/164File meta data generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/168Details of user interfaces specifically adapted to file systems, e.g. browsing and visualisation, 2d or 3d GUIs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)
  • Digital Computer Display Output (AREA)

Abstract

ホスト・アプリケーションが設けるホスト・ウィンドウに対応するコンパニオン・アプリケーションを通じてコンパニオン・アプリケーションを提供する装置および方法。コンパニオン・ウィンドウは、ホスト・ウィンドウにおけるデーターを記述する情報またはメタデーターを提示する。ホスト・アプリケーションがコンパニオン・アプリケーションを認識しないように、ホスト・アプリケーションおよびコンパニオン・アプリケーションが分離したアプリケーションであってもよい。コンパニオン・アプリケーションはホスト・アプリケーションに(例えば、アプリケーション・プログラミング・インターフェースを通じて)入り込むことができ、ホスト・アプリケーションの活動および/またはデーターを監視することができる。ホスト・アプリケーションにおけるデーターまたはイベントの識別に基づいて、コンパニオン・アプリケーションは、ホスト・アプリケーションが提供するデーターを特徴付ける情報またはそれについてのコンテキストを規定する情報を入手することができる。ホスト・ウィンドウおよびコンパニオン・ウィンドウを互いに合体することもでき、ホスト・ウィンドウはホスト・アプリケーション・データーを提供し、コンパニオン・ウィンドウはホスト・アプリケーション・データーを記述するデーターを提供する。
【選択図】 図2

Description

コンピューター・ユーザーは、彼らのコンピューター上において大量のデーターにアクセスすることができる。例えば、ユーザーがコンピューター上に格納されているデーター・ファイルを入手するまたはデーター・ファイルにアクセスしたい場合がある。この場合、ユーザーは一連のビューにわたってナビゲートして、所望のデーター・ファイルのフォルダーを入手することができる。ユーザーはデーター・ファイルの所望のフォルダーを選択することができるが、データー・ファイルの選択は、単にユーザーにファイル自体を提供するだけに過ぎない。同様に、ユーザーは、ウェブ・ブラウザによって、関心のある特定のウェブ・ページにナビゲートすることができる。ハイパーリンク、アプリケーション等のような、ウェブ・ページの中にあるエレメントを選択すると、通例では、別のサイトに移るか、または選択したアプリケーションが起動されることになる。
しかしながら、ユーザーは、あるアプリケーションにおいて選択したエレメントに関する追加のコンテキスト情報のような、追加情報を望むことが多い。多くの場合、選択したエレメントと関連のあるこのような追加情報は、そのエレメントの選択によってユーザーに入手できるようになっていない。このため、選択されたデーターまたはアプリケーション・エレメントについての追加情報を、都合良くしかも効率的に提供することが求められている。
以下に、基本的な理解を読者に提供するために、本開示を簡略化した摘要を紹介する。この摘要は、本開示の広範な全体像ではなく、本発明の主要な/肝要な要素を特定するのでなければ、本発明の範囲を正確に叙述するのでもない。その唯一の目的は、本明細書において開示する一部の概念を、簡略化した形態で、後に提示する更に詳細な説明の前置きとして紹介することである。
一例において、ホスト・アプリケーションは、当該ホスト・アプリケーションが発生するデーターを収容するホスト・ウィンドウを発生する。コンパニオン・アプリケーションは、ホスト・アプリケーションとは分離していてもよく、ホスト・アプリケーションにおけるデーターまたはイベントを記述するまたはそれについてのコンテキストを規定することができる追加情報(例えば、メタデーター)を発生する。一例では、コンパニオン・アプリケーションは、追加情報を作成するのではなく、離れた位置から追加情報を入手する。更に、コンパニオン・アプリケーションはコンパニオン・ウィンドウを発生することができ、これをホスト・ウィンドウに付属させることができる。コンパニオン・ウィンドウは前述の追加情報を収容することができる。
別の例では、ホスト・アプリケーションは、コンパニオン・アプリケーションにおいて実行される行為またはイベントがホスト・アプリケーションに実質的に影響を及ぼさないように、コンパニオン・アプリケーションには関与しない(oblivious)かまたは実質的に関与しない。この例では、コンパニオン・アプリケーションは、ホスト・アプリケーションに入り込み、ホスト・アプリケーション内にあるデーターを監視することができるが、一方ホスト・アプリケーションはコンパニオン・アプリケーションを監視しない。ホスト・アプリケーションおよびコンパニオン・アプリケーションの各々は、それぞれの情報を収容するウィンドウのようなユーザー・インターフェースを発生し表示することができる。これらのウィンドウを互いに合体させることができる。
付帯する特徴の多くは、添付図面と関連付けて以下の詳細な説明を参照し検討することによって深く理解できるようになるに連れて、容易に認められるようになるであろう。
本記載は、添付図面と照らし合わせて以下の詳細な説明を読むことにより、一層深く理解されよう。
図1は、データーまたはその他の関連情報を提供することができる、適したコンピューティングシステム環境の一例を示す。 図2は、関心のあるデーターに関する情報またはメタデーターを発生するシステムの一例を示す。 図3は、メタデーターを特定および/または入手する一例を示すフローチャートである。 図4は、データー・コンテンツを発生し、このデーターを記述する即ち特徴付ける追加情報を提供する一例を示すフローチャートである。 図5は、データー提供方法の別の例を示すフローチャートである。 図6は、ホスト・アプリケーションおよびコンパニオン・アプリケーションを接続してデーターを提供する例を示すフローチャートである。 図7は、異なるアプリケーションと関連があるウィンドウを合体および/または修正する例を示すフローチャートである。 図8は、ホスト・アプリケーションのユーザー・インターフェースとしてのウィンドウの例を示す。 図9は、コンパニオン・ウィンドウを付属させたホスト・ウィンドウの例を示す。 図10は、メタデーターを有するコンパニオン・ウィンドウの例を示す。 図11は、コンパニオン・ウィンドウの別の例を示す。 図12は、コンパニオン・ウィンドウをフォーマットし直したホスト・ウィンドウの例を示す。 図13は、コンパニオン・ウィンドウを畳んだホスト・ウィンドウの別の例を示す。
同様の参照番号は、添付図面における同様の部分を示すために用いることとする。
添付図面と合わせて以下に提示する詳細な説明は、本例の説明として意図するのであり、本例を構築または利用できる唯一の形態を表すことを意図するのではない。この説明は、本例の機能、および本例を構築し動作させるための一連のステップを明記する。しかしながら、異なる例によって、同一または同等の機能およびシーケンスを遂行することもできる。本明細書に記載するシステムは、限定ではなく例として提示する。当業者には認められようが、本例は、種々の異なる種類のコンピューティングシステムにおける応用に適している。
図1は、コンピューティングサブシステムが処理機能性を設けることができる、適したコンピューティングシステム環境即ちアーキテクチャの一例を示す。このコンピューティングシステム環境は、適したコンピューティング環境の一例に過ぎず、本発明の使用や機能性の範囲に関して何の限定も示唆する意図はない。また、このコンピューティング環境は、動作環境例に示すコンポーネントの任意の1つまたは組み合わせに関しても、何らかの従属性や要件を有するように解釈してはならない。
本明細書において開示する方法またはシステムは、多数の別の汎用または特殊目的コンピューティングシステム環境または構成を用いても動作する。本発明と共に用いるのに適していると考えら得る周知のコンピューター・システム、環境、および/または構成の例には、パーソナル・コンピューター、サーバ・コンピューター、ハンド・ヘルドまたはラップトップ・デバイス、マルチプロセッサー・システム、マイクロプロセッサーに基づくシステム、セット・トップ・ボックス、プログラマブル消費者用電子機器、ネットワークPC、ミニコンピューター、メインフレーム・コンピューター、前述のシステムまたはデバイスのいずれをも含む分散型コンピューティング環境等が含まれるが、これらに限定されるのではない。
本方法またはシステムは、コンピューターによって実行する、プログラム・モジュールのような、コンピューター実行可能命令という一般的な文脈において説明することができる。一般に、プログラム・モジュールは、ルーチン、プログラム、オブジェクト、コンポーネント、データー構造等を含み、特定のタスクを実行するか、および/または特定の抽象的データー形式を実現する。また、本方法またはシステムは、通信ネットワークを通じてリンクされているリモート処理デバイスがタスクを実行する分散型コンピューティング環境においても実用可能である。分散型コンピューティング環境では、プログラム・モジュールは、メモリー記憶デバイスを含む、ローカルおよびリモート・コンピューター記憶媒体双方に配することができる。
図1を参照すると、本方法またはシステムを実現するシステム例は、コンピューター102の形態をなす汎用コンピューティングデバイスを含む。コンピューター102のコンポーネントは、限定ではなく、演算装置104、システム・メモリー106、およびシステム・メモリーを含む種々のシステム・コンポーネントを演算装置104に結合するシステム・バス108を含むことができる。システム・バス108は、数種類のバス構造のいずれでもよく、メモリー・バスまたはメモリー・コントローラ、周辺バス、および種々のバス構造のいずれかを用いるローカル・バスを含む。限定ではなく一例として、このようなアーキテクチャには、業界標準アーキテクチャ(ISA)バス、マイクロ・チャネル・アーキテクチャ(MCA)バス、改良ISA(EISA)バス、ビデオ電子規格連合(VESA)ローカル・バス、およびMezzanine バスとしても知られている周辺素子相互接続(PCI)バスが含まれる。
コンピューター102は、通例、種々のコンピューター読み取り可能媒体を含む。コンピューター読み取り可能媒体は、コンピューター110がアクセス可能な入手可能な媒体であればいずれでも可能であり、揮発性および不揮発性の双方、リムーバブル、ならびに非リムーバブル媒体を含む。限定ではない一例をあげると、コンピューター読み取り可能媒体は、コンピューター記憶媒体を含むことができる。コンピューター記憶媒体は、コンピューター読み取り可能命令、データー構造、プログラム・モジュール、またはその他のデーターというような情報の格納のために、あらゆる方法または技術で実施される、揮発性および不揮発性の双方、リムーバブル、および非リムーバブル媒体を含む。コンピューター記憶媒体は、RAM、ROM、EEPROM、フラッシュ・メモリーまたはその他のメモリー技術、CDの他の光ディスク・ストレージ、磁気カセット、磁気テープ、磁気ディスク・ストレージまたはその他の磁気記憶デバイス、あるいは所望の情報を格納するために用いることができしかもコンピューター102がアクセス可能なその他のいずれの媒体も含むが、これらに限定されるのではない。以上の内の任意のものの組み合わせも、コンピューター読み取り可能記憶媒体の範囲に含まれてしかるべきである。
システム・メモリー106は、リード・オンリ・メモリー(ROM)110およびランダム・アクセス・メモリー(RAM)112のような、揮発性メモリーおよび/または不揮発性メモリーの形態をなすコンピューター記憶媒体を含む。基本入/出力システム114(BIOS)は、起動中のように、コンピューター102内のエレメント間におけるデーター転送を補助する基本的なルーティンを含み、通例ROM110内に格納されている。RAM112は、通例、演算装置104が直ちにアクセス可能であるデーターおよび/またはプログラム・モジュール、あるいは現在これによって処理されているデーターおよび/またはプログラム・モジュールを収容する。一例として、そして限定ではなく、図1は、オペレーティング・システム132、アプリケーション・プログラム134、その他のプログラム・モジュール136、およびプログラム・データー138を示す。
また、コンピューター102は、その他のリムーバブル/非リムーバブル揮発性/不揮発性コンピューター記憶媒体も含むことができる。一例としてのみ、図1は、非リムーバブル不揮発性磁気媒体からの読み取りおよびこれへの書き込みを行なうハード・ディスク・ドライブ116、リムーバブル不揮発性磁気ディスク120からの読み取りおよびこれへの書き込みを行なう磁気ディスク・ドライブ118、ならびにCD−ROMまたはその他の光媒体のようなリムーバブル不揮発性光ディスク124からの読み取りおよびこれへの書き込みを行なう光ディスク・ドライブ122を示す。前述の動作環境の一例において使用可能なその他のリムーバブル/非リムーバブル、揮発性/不揮発性コンピューター記憶媒体には、限定する訳ではないが、磁気テープ・カセット、フラッシュ・メモリー・カード、ディジタル・バーサタイル・ディスク、ディジタル・ビデオ・テープ、ソリッド・ステートRAM、ソリッド・ステートROM等が含まれる。ハード・ディスク・ドライブ116は、通例、インターフェース126のような非リムーバブル・メモリー・インターフェースを介してシステム・バス108に接続され、磁気ディスク・ドライバ118および光ディスク・ドライブ122は、通例、インターフェース128または130のようなリムーバブル・メモリー・インターフェースによって、システム・バス108に接続されている。
先に論じ図1に示すドライブおよびそれらと連動するコンピューター記憶媒体は、コンピューター読み取り可能命令、データー構造、プログラム・モジュール、およびコンピューター102のその他のデーターを格納する。図1では、例えば、ハード・ディスク・ドライブ116は、オペレーティング・システム132、アプリケーション・プログラム134、その他のプログラム・モジュール136、およびプログラム・データー138を格納するように示されている。尚、これらの構成要素は、追加のオペレーティング・システム、アプリケーション・プログラム、その他のプログラム・モジュール、およびプログラム・データー、例えば、エレメントの内任意のものの異なるコピーと同じでも異なっていても可能であることを注記しておく。ユーザーは、キーボード140、および一般にマウス、トラックボールまたはタッチ・パッドと呼ばれているポインティング・デバイス142によって、コマンドおよび情報をコンピューター110に入力することができる。他の入力デバイス(図示せず)には、マイクロフォン、ジョイスティック、ゲーム・パッド、ペン、スキャナ等を含むことができる。これらおよびその他の入力デバイスは、多くの場合、ユーザー入力インターフェース144を介して、演算装置104に接続されている。ユーザー入力インターフェース144は、システム・バスに結合されているが、パラレル・ポート、ゲーム・ポート、またはユニバーサル・シリアル・バス(USB)のようなその他のインターフェースおよびバス構造によって接続することも可能である。モニター158またはその他の形式のディスプレイも、ビデオ・インターフェースまたはグラフィクス・ディスプレイ・インターフェース156のようなインターフェースを介して、システム・バス108に接続されている。モニター158に加えて、コンピューターは、スピーカ(図示せず)およびプリンタ(図示せず)のような、その他の周辺出力装置も含むことができ、これらは出力周辺インターフェース(図示せず)を通じて接続することができる。
コンピューター102は、リモート・コンピューターのような、1つ又は複数のリモート・コンピューターへの論理接続を用いて、ネットワーク環境において動作することも可能である。リモート・コンピューターは、パーソナル・コンピューター、サーバ、ルータ、ネットワークPC、ピア・デバイス、またはその他の共通ネットワーク・ノードとすることができ、通例、コンピューター102に関して先に説明したエレメントの多くまたは全てを含む。図1に示す論理接続は、ローカル・エリア・ネットワーク(LAN)148およびワイド・エリア・ネットワーク(WAN)150を含むが、他のネットワークも含むことができる。このようなネットワーク環境は、事務所、企業規模のコンピューター・ネットワーク、イントラネットおよびインターネットにおいては、一般的である。
LANネットワーク環境で用いる場合、コンピューター102は、ネットワーク・インターフェースまたはアダプタ152を介してLAN148に接続する。WANネットワーキング環境で用いる場合、コンピューター102は、通例、モデム154、またはインターネットのようなWAN150を通じて通信を確立するその他の手段を含む。モデム154は、内蔵でも外付けでもよく、ユーザー入力インターフェース144またはその他のしかるべき機構を介してシステム・バス108に接続することができる。ネットワーク環境では、コンピューター102に関して図示したプログラム・モジュール、またはその一部は、リモート・メモリー記憶装置に格納することもできる。一例として、そして限定ではなく、リモート・アプリケーション・プログラムは、メモリー・デバイス上に常駐してもよい。尚、図示のネットワーク接続は一例であり、コンピューター間で通信リンクを確立する手段であれば他のいずれでも使用可能であることは認められよう。
ユーザーにデーターをウィンドウのような第1ユーザー・インターフェースにおいて提供し、更にこのデーターに対応する追加情報を第2ユーザー・インターフェースにおいて提供する方法およびシステムについて記載する。第1ユーザー・インターフェースおよびその中に収容されるデーターは、第1アプリケーションによって発生することができ、第2ユーザー・インターフェースの中にある追加情報は、第2アプリケーションによって発生することができる。第1アプリケーションおよび第2アプリケーションは、異なるアプリケーションであってもよい。例えば、第2アプリケーションは、第1アプリケーションとは分離した別個のアプリケーションであってもよく、更に、実行可能コードを収容しており、それを実行すると第2アプリケーションを第1アプリケーションに入り込ませる(hook into)のであってもよい。この例では、第2アプリケーションは、第1アプリケーション、および第1アプリケーションが提供するデーターを監視することができる。第2アプリケーションによる第1アプリケーションの監視は、種々の方法で遂行することができる。例えば、監視は、第1アプリケーションにおいてなされた行為または実行されたイベントを観察および/または追跡することを含むことができる。第1アプリケーションにおいて生じた1つ又は複数の行為またはイベントの結果第1アプリケーションが発生したデーターを、更に、第2アプリケーションによって観察または追跡することもできる。第2アプリケーションによるイベント、行為、または第1アプリケーションにおいて発生したデーターの観察に基づいて、第2アプリケーションは、追加データーを発生、入手、特定、または検索することができる。追加データーは、第1アプリケーションにおいて発生するデーターとは別個であることまたは異なることもでき、更にイベント、行為、または第1アプリケーションにおいて発生したデーターを記述または特徴付けることもできる。別の例では、第2アプリケーションは、第3アプリケーションを通じて、イベント、行為、または第1アプリケーションにおいて発生するデーターを観察することもできる。例えば、第2アプリケーションは、監視アプリケーション(例えば、システム・ファイル・ウオッチャー)を監視することができ、監視アプリケーションは、イベント、行為、または第1アプリケーションにおいて発生するデーターを観察することができる。第2アプリケーションは、監視アプリケーションから更新またはイベント情報を受信することができる。この例では、第2アプリケーションは第1アプリケーションを直接監視も観察もしない。代わりに、監視アプリケーションが第1アプリケーションにおいてイベントを観察し、イベントに関連する情報を発生することができる。この情報は、第2アプリケーションに入手可能にすることもできる。
このように、第1アプリケーションまたは第1アプリケーションが提供するデーターに基づいて、第2アプリケーションは追加データーまたは情報を入手することができ、更にこの追加データーまたは情報を第2ユーザー・インターフェースにおいて提供することができる。一例では、第2アプリケーションは、第1および/または第2アプリケーションが走っている動作環境から前述の情報を入手することができる。動作環境から入手した情報は、更に、第1アプリケーションからのいずれかの行為またはイベントに基づいて選択することもできる。別の例では、動作環境から第2アプリケーションが入手したデーターは、第1アプリケーションが提供するデーターを記述するまたは特徴付けるが、第1アプリケーションが提供するデーターとは異なる。つまり、この例では、第1アプリケーションが提供するデーターは、第2アプリケーションが提供する情報を収容しておらず、第2アプリケーションが提供する情報は、第1アプリケーションが提供するデーターを含んでいない。
別の例では、第2アプリケーションは第1アプリケーションに入り込み、第2アプリケーションを監視することができる。しかしながら、第1アプリケーションは第2アプリケーションとは独立して機能する。第1アプリケーションが第2アプリケーションとは独立して機能する場合、第2アプリケーションが実行する行為またはイベントは、第1アプリケーションにおいて行われる行為やイベントに重要な影響を及ぼさない。つまり、例えば、あるコマンドが第2アプリケーションによって実行され、第1アプリケーションが第2アプリケーションとは独立して機能または動作する場合、第1アプリケーションは、第2アプリケーションにおいてそのコマンドがあたかも実行されなかったかのように、行為およびその他の機能を実質的に同様に実行する。言い換えると、第2アプリケーションから独立して機能する第1アプリケーションとは、第1アプリケーションの活動(activity)が、第2アプリケーションにおいて行われる活動によって実質的に影響を受けないことを意味する。また、第1アプリケーションが第2アプリケーションとは独立して動作する場合、第2アプリケーションを除去しても、第1アプリケーションには実質的な影響はない。
あるいはまたは加えて、第2アプリケーションが第1アプリケーションを監視する間、第1アプリケーションは第2アプリケーションに関与しないまたは実質的に関与しなくてもよい。一例では、第1アプリケーションは第2アプリケーションに関与しないかまたは実質的に関与せず、これは第1アプリケーションが第2アプリケーションを認識しないまたは実質的に認識しない状態を意味する。第2アプリケーションを認識しないことにより、第1アプリケーションは、あたかも第2アプリケーションがない、および/または実行も動作もしていないかのように、あらゆる機能を実行する。第1アプリケーションが第2アプリケーションに関与しないまたは実質的に関与しない場合、第2アプリケーションを全体的に除去することができ、しかも第2アプリケーション除去の影響は、第1アプリケーションのいずれの面においても、最小限であるかまたは全くない。別の例では、第1アプリケーションは第2アプリケーションに関与しないが、第2アプリケーションから受信した命令を収容する。
また、この例では、第2アプリケーションが第1アプリケーションを監視して、第2アプリケーションが第1アプリケーションによって実行される活動および/またはイベントを認識し、更に第1アプリケーションによって発生および/または出力または表示されるデーターを認識できる状態を設けることができる。同時に、第1アプリケーションは、第2アプリケーションが提供するいずれの情報も、または第2アプリケーションにおいて実行される行為/イベントも実質的に認識しなくてもよいように、第1アプリケーションは第2アプリケーションには実質的に関与しない。
あるいはまたは加えて、第2アプリケーションは第1アプリケーションを観察または監視することはできるが、第1アプリケーションを制御あるいは修正しないようにしてもよい。この例では、第2アプリケーションは、第1アプリケーションが発生する情報を監視するが、発生した情報を変更しない。第2アプリケーションは、第1アプリケーションから発生した情報を観察し、それに基づいて追加情報を発生し、発生した追加情報をユーザーに提供することができる。しかしながら、この例では、第2アプリケーションは、第1アプリケーションが発生する情報を制御したり、修正したり、あるいはその他の作用を及ぼすことはない。また、第1アプリケーションは、第2アプリケーションが発生する追加情報を制御しなくてもよい。加えて、第1アプリケーションは、第2アプリケーションに実質的に関与せず、第1アプリケーションが、第2アプリケーションによって発生する追加情報を実質的に認識しないようにしてもよい。この例では、第1アプリケーションが実行する活動および機能は、第2アプリケーションの存在、不在、または動作のいずれによる影響も受けない。
別の例では、第2アプリケーションは、アプリケーション・プログラミング・インターフェースを通じて、第1アプリケーションに入り込む。第1アプリケーションは、アプリケーション・プログラミング・インターフェース(API)のようなインターフェースを内蔵することができ、これを通じて第2アプリケーションが第1アプリケーションにアクセスすることができる。例えば、第2アプリケーションは、API(またはその他の何らかの手段)を通じて第1アプリケーションにアクセスして、限定ではないが、第1アプリケーションが発生または出力するデーター、第1アプリケーションの状態、または第1アプリケーションのコンテキストのような、第1アプリケーションのある面の特性についての情報を入手することができる。
図2は、対象のデーターに関する情報またはメタデーターを発生するシステムの一例を示す。本システムは、ユーザー入力のような、あらゆる種類の入力を受けることができる入力205を含むことができる。例えば、ユーザーは、行為またはイベントを実行するためあるいは情報を選択するために、コマンドをシステム入力205を通じて入力することができる。一例では、ディスプレイ・デバイス上に選択肢のリストを表示するとよく、ユーザーは表示から1つの項目即ち選択肢を選択することができる。
プロセッサー204は、入力205を通じて入力コマンドを受けることができ、それに応じてデーターを処理することができる。一例では、本システムは、ホスト・アプリケーションを実行するホスト・アプリケーション・モジュール202を含む。ホスト・アプリケーション・モジュールは、データーまたは情報を提供する形式のアプリケーションであれば、いずれの数でもよい。例えば、ホスト・アプリケーションは、フォルダー、行為項目、カレンダー情報、電子メール情報等の表示を行うアプリケーションを含むことができる。いずれの関連情報も、ホスト・コンピューターによって提供することができる。ホスト・アプリケーション・モジュール202は、関連情報を発生するように実行することができ、更に関連情報を提供するためのユーザー・インターフェースを提供することもできる。プロセッサー204は、ホスト・アプリケーション・モジュール202に、関連情報およびユーザー・インターフェースを提供するように命令することができる。加えて、ホスト・アプリケーション・モジュール202からの情報を更にプロセッサー204からデーター・モジュール206に転送して、フォーマット決定、調整等を行い、更に出力207を通じて出力することもできる。
更に、本システムは、追加情報を入手し提供するために、コンパニオン・アプリケーション・モジュール203も含むことができる。コンパニオン・アプリケーション・モジュール203が提供する追加情報は、ホスト・アプリケーション・モジュール202が発生する情報に基づいて選択することができる。加えて、この追加情報は、あらゆる数のデーター源において突き止め、そこから入手することもできる。例えば、コンパニオン・アプリケーション・モジュール203は、動作環境201からの情報を突き止めて入手することができる。
コンパニオン・アプリケーション・モジュール203は、更に、データー・モジュール206および出力207を通じて、前述の追加情報をデーター出力に含めることができる。追加情報は、ホスト・アプリケーション・モジュール202が発生する情報に対する関連性の情報であれば、いずれの種類でも収容することができる。例えば、ホスト・アプリケーション・モジュール202は、コンピューティングデバイス上に格納されているフォルダーまたはファイルのリストを含むデーターを発生することができる。ユーザーは、所望のフォルダーまたはファイルの選択を入力205を通じて入力することができ、入力205は更にプロセッサー204によって処理することができる。この選択入力に基づいて、プロセッサー204はホスト・アプリケーション・モジュール202を制御して、所望の選択肢を選択することができる。例えば、ホスト・アプリケーション・モジュール202は、ユーザーが選択した所望のフォルダーまたはファイルを選択する。
コンパニオン・アプリケーション・モジュール203は、ホスト・アプリケーション・モジュール202を監視するために実行することができる。この例では、コンパニオン・アプリケーション・モジュール203がアプリケーションに入り込み、コンパニオン・アプリケーションが、ホスト・アプリケーション・モジュール202において実行される活動および/またはイベントを監視するようにしている。コンパニオン・アプリケーションは、ホスト・アプリケーションにおける対象のエレメントまたはコンポーネントであればいずれでも監視することができる。例えば、コンパニオン・アプリケーションは、アプリケーション・プロセスによって発生したファイルを監視することができ、あるいはアプリケーション・プロセス自体とは別個のコンポーネントまたはイベントを監視することもできる。加えて、コンパニオン・アプリケーション・モジュール203は、更に、ホスト・アプリケーション・モジュール202によって発生するデーターも監視することができる。この場合、ホスト・アプリケーション・モジュール202は所望のフォルダーを選択する。コンパニオン・アプリケーション・モジュール203は、ホスト・アプリケーション・モジュール202による選択を検出することができ、更に、所望のフォルダーに関するメタデーターのような、追加情報を入手することもできる。コンパニオン・アプリケーション・モジュール203は、あらゆる数の方法でも、追加情報またはメタデーターを入手することができる。例えば、コンパニオン・アプリケーション・モジュール203は所望の情報を動作環境201から入手することができ、入手した所望の情報をプロセッサー204および/またはデーター・モジュール206に提供することができる。所望の情報は、出力207を通じて出力することができる。
あるいはまたは加えて、ホスト・アプリケーション・モジュール202は、コンパニオン・アプリケーション・モジュール202には関与せず、ホスト・アプリケーション・モジュール202において実行する行為または発生するデーターが、コンパニオン・アプリケーション・モジュール203において実行する活動または行為による影響を受けないようにすることもできる。逆に、コンパニオン・アプリケーション・モジュール203は、ホスト・アプリケーション・モジュール202において発生する活動および/またはデーターを監視する。したがって、この例では、コンパニオン・アプリケーション・モジュール203は、ホスト・アプリケーション・モジュール202を認識している(またはそれに関与する)。
図3は、メタデーターを特定および/または入手する一例を示すフローチャートである。あらゆる対象の関連情報を含むデーターを、ディスプレイ上に表示することができる。更に、データーをユーザー・インターフェースの内部に表示することもできる。例えば、1つのアプリケーションに対応するウィンドウを、1つのディスプレイ・デバイス上に表示することもできる。このウィンドウは、コンピューティングシステム上に収容されているフォルダー、あらゆる形式のエレメント(例えば、ハイパーリンク、別のアプリケーション、グラフィック画像等)を収容するウェブ・ページ、連絡先のリスト、カレンダー情報、約束、画像、ファイルのリスト等のような情報を収容することができる。
デバイス上に表示したデーターからの表示されたコンポーネントの選択というような選択を受けることができる(ステップ301)。この選択は、表示されているフォルダー、ハイパーリンク、連絡先、またはあらゆる種類の関連情報の選択に対応することができ、第1ウィンドウにおけるあらゆる行為を含むことができる。例えば、この行為は、実際の選択やマウスの活性化は行わずに、カーソルまたはマウスを第1アプリケーション・ウィンドウの特定部分への移動することを含むことができる。
表示されているデーターに対応するメタデーターの存在または入手可能性を判断することができる(ステップ302)。入手可能なメタデーターがない場合(ステップ302の「No」分岐)、プロセスは終了し(ステップ305)、そうでない場合、関連するメタデーターを受け取り(ステップ303)、表示する(ステップ304)。この例では、メタデーターは、他のデーターを記述する、特徴付ける、またはそれについてのコンテキストを規定するあらゆるデーターを含む。つまり、メタデーターが含む情報は、第1アプリケーションが発生または提供するデーターのいずれをも含み、あるいは第1アプリケーションにおいてなされるまたは実行されるいずれの行為も含む。
例えば、第1アプリケーションは、選択するエレメントの選択肢リストを提示するために実行することができる。エレメントのリストからの選択肢の1つの選択を受ける(ステップ301)。メタデーター(即ち、他のデーターの態様を記述する情報)を、第2アプリケーションによって特定することができる。第2アプリケーションは、第1アプリケーションとは異なること、分離していること、および/または別個であることができ、第1アプリケーション、および/または第1アプリケーションによって発生または提供するデーターを監視、観察、または追跡するために実行することができる。第2アプリケーションは、第1アプリケーションから、エレメント・リストから選択したエレメントに対応するメタデーターが入手可能か否か判断することができる。一例では、第1アプリケーションおよび/または第2アプリケーションが実行している動作環境において、メタデーターを特定し場所を突き止める。動作環境は、あらゆるコンピューティングデバイス、オペレーティング・システム、周辺デバイス、リモート・デバイス等を含むことができる。第2アプリケーションは、メタデーターを入手することができ(ステップ303)、更にメタデーターを表示することができる(ステップ304)。
更に、第2アプリケーションは、別個のユーザー・インターフェースにおいて、第1アプリケーションが発生および表示したデーターを記述し、特徴付け、またはそれについてのコンテキストを規定するために、メタデーターを表示することができる。例えば、第2アプリケーションは、第1アプリケーションとは異なること、分離していること、および/または別個であることができ、第1アプリケーションおよび第2アプリケーションの各々がユーザー・インターフェースを発生する。第2アプリケーションは、実行可能コードを収容することができ、その実行によって、第2アプリケーションを第1アプリケーションに入り込ませる。第2アプリケーションが第1アプリケーションに入り込んだ後、第2アプリケーションは、第1アプリケーションと協同してユーザー・インターフェースを提供することができる。この例では、第2アプリケーションは第1アプリケーションの行為を監視するが、第1アプリケーションは第2アプリケーションの行為を監視しない。例えば、第1アプリケーションは第2アプリケーションには関与せず、第1アプリケーションは、第2アプリケーションが実行する行為および/またはイベントを認識しないようにすることもできる。
このように、本例では、第1アプリケーションはデーターを発生し、発生したデーターを提供するためにユーザー・インターフェースを発生する。第2アプリケーションは、第1アプリケーションとは異なること、分離していること、および/または別個であることができ、第1アプリケーションに入り込むことができ、第1アプリケーションの中で実行される行為またはイベントを監視することができる。また、第2アプリケーションは、第1アプリケーションが発生するデーターを観察または追跡することができる。第1アプリケーションが発生し第2アプリケーションが観察/追跡したデーターに基づいて、第2アプリケーションは、第1アプリケーションが発生したデーターと関連のあるメタデーターを突き止めること、および/または入手することができる。メタデーターは、第1アプリケーションが発生したデーターを記述する、特徴付ける、またはそれについてのコンテキストを規定するあらゆる情報を含むことができる。
加えて、第2アプリケーションは、第1アプリケーションが発生するユーザー・インターフェースとは分離した別個のユーザー・インターフェースを発生することができる。また、第2アプリケーションは、メタデーターを提供することもできる(即ち、第1アプリケーションが発生した、および/または第1アプリケーションが第1アプリケーションのユーザー・インターフェースの中で提供したデーター)。第2アプリケーションは、当該第2アプリケーションが発生したユーザー・インターフェースにおいて、メタデーターを提供することができる。
また、第1アプリケーションが発生したユーザー・インターフェースを、第2アプリケーションが発生したユーザー・インターフェースに接続するまたは付属させる(attach)こともできる。以下で更に詳しく説明するが、第1アプリケーションが発生したユーザー・インターフェース、および第2アプリケーションが発生したユーザー・インターフェースは、互いに隣接していても、互いに合体してもよい。また、これらのユーザー・インターフェースの一方の一部が他方のユーザー・インターフェースのいずれの部分も遮らないように、これらのユーザー・インターフェースが重なり合わないようにするとよい。このようなユーザー・インターフェースは、互いに隣接し、互いに接続または付属し合ってもよい。加えて、これらのユーザー・インターフェースのいずれか一方に対する修正は、ユーザー・インターフェースの双方において1つの単位として実行することもできる。これについては、以下で更に詳しく説明する。
図4は、データー・コンテンツを発生し、このデーターを記述するまたは特徴付ける追加情報を提供する一例を示すフローチャートである。この例では、ホスト・アプリケーションおよびコンパニオン・アプリケーションがデーター・コンテンツを発生または入手する。ステップ401において、コンパニオン・アプリケーションが実行する。コンパニオン・アプリケーションの実行は、例えば、ホスト・アプリケーションにおいて行われる行為またはイベントを検出するというように、ホスト・アプリケーションを監視すること(ステップ402)を含むことができる。また、コンパニオン・アプリケーションの実行は、当該コンパニオン・アプリケーションが、ホスト・コンピューターによって発生または提供されたデーターを検出することを含むこともできる(ステップ403)。
別の例では、コンパニオン・アプリケーションは、ホスト・アプリケーションを監視するが、その他のホスト・アプリケーションを変更したり、修正することはない。例えば、ホスト・アプリケーションに付随する実行可能コードは、コンパニオン・アプリケーションの存在または活動に関しては、不変のままである。更に別の例では、ホスト・アプリケーションはコンパニオン・アプリケーションに関与しない。例えば、ホスト・アプリケーションは、コンパニオン・アプリケーションが不在またはインアクティブである場合所定の様式で機能することができ、コンパニオン・アプリケーションが存在するまたはアクティブである場合も、同じ所定の様式で機能することができる。
コンパニオン・アプリケーションがホスト・アプリケーションにおいてデーターを検出した場合(ステップ403の「Yes」分岐)、コンパニオン・アプリケーションは、ホスト・アプリケーションにおいて検出したデーターに対応するメタデーターを入手することができる。コンパニオン・アプリケーションは、あらゆる数のデーター源からでも、メタデーターを入手することができる。例えば、コンパニオン・アプリケーションは、ホスト・アプリケーションおよび/またはコンパニオン・アプリケーションが走っている動作環境から、メタデーターを突き止めることおよび/または入手することができる。
コンパニオン・アプリケーションは、更に、ホスト・アプリケーションからの検出データーの検出に基づいて、データー・コンテンツを発生することもできる(ステップ405)。コンパニオン・アプリケーションからのデーター・コンテンツは、更に、ユーザーに出力することができ、あるいは、望ましければ格納することもできる。コンパニオン・アプリケーションが発生したデーター・コンテンツは、動作環境から入手したメタデーターに基づく情報を含むことができる。例えば、データー・コンテンツは、ホスト・アプリケーションから検出したデーターの少なくとも一部と関係付けられている話題、人、物体、実体等のリストを含むことができる。
図5は、データー提供方法の別の例を示すフローチャートである。この例では、ホスト・アプリケーションは対象のデーターを発生するために実行する(ステップ501)。ホスト・アプリケーションの発生からの対象のデーターとは、例えば、格納されているフォルダー、連絡先情報、カレンダーまたは電子メール情報、ハイパーリンクのようなウェブ関係情報等のような、あらゆるデーターを含むことができる。また、ホスト・アプリケーションとは、分離した別個のコンパニオン・アプリケーションも、追加データーを発生するために実行することができる(ステップ502)。追加情報は、例えば、ホスト・アプリケーションが発生したデーターの状態、内容、または選択を記述する、特徴付ける、あるいはそれについてのコンテキストを規定するメタデーターを含むことができる。
ホスト・アプリケーションおよびコンパニオン・アプリケーションは、各々、ウィンドウのようなユーザー・インターフェースを発生することができる(ステップ503)。この例では、ホスト・アプリケーションおよびコンパニオン・アプリケーションは、各々、分離した別個のウィンドウを発生し、そのウィンドウの中で、コンパニオン・アプリケーション・ウィンドウ(「コンパニオン・ウィンドウ」)をホスト・アプリケーション・ウィンドウ(「ホスト・ウィンドウ」)に付属させる(ステップ504)。コンパニオン・ウィンドウまたはホスト・ウィンドウのいずれか一方に行為または修正を加えることによって、これらのウィンドウの双方に、その行為または修正が加わる結果となるように、コンパニオン・ウィンドウをホスト・ウィンドウに付属させることができる。例えば、ホスト・ウィンドウのサイズをディスプレイ上で最大にすると、ホスト・ウィンドウおよびコンパニオン・ウィンドウの組み合わせが、ホスト・ウィンドウおよびコンパニオン・ウィンドウ(または2つのウィンドウの組み合わせ)を表示する表示領域のサイズまで最大化されるものの、ホスト・ウィンドウおよびコンパニオン・ウィンドウの寸法の割合は実質的に同じままであるように、ホスト・ウィンドウおよびコンパニオン・ウィンドウは各々比例して修正される。
加えて、ホスト・アプリケーションが発生したデーターは、ホスト・ウィンドウにおいて表示または出力することができ、コンパニオン・アプリケーションによって入手または発生したデーターまたはメタデーターは、コンパニオン・ウィンドウにおいて表示または出力することができる(ステップ505)。ホスト・アプリケーションが発生したデーターは、コンパニオン・アプリケーションが入手または発生したメタデーターとは実質的に異なると考えられる。つまり、この例では、ホスト・アプリケーションが発生したデーターは、コンパニオン・アプリケーションが入手または発生したメタデーターを全く収容していない場合もあり、コンパニオン・アプリケーションが入手または発生したメタデーターは、ホスト・アプリケーションが発生したデーターを全く収容していない場合もある。
図6は、ホスト・アプリケーションおよびコンパニオン・アプリケーションを接続してデーターを提供する例を示すフローチャートである。この例では、ホスト・アプリケーションがウィンドウのようなユーザー・インターフェースを発生するために実行する(ステップ601)。このユーザー・インターフェースは、ディスプレイ・デバイス上に表示することができる。また、コンパニオン・アプリケーションも、対応するコンパニオン・ユーザー・インターフェースを発生するために実行することができる(ステップ602)。コンパニオン・アプリケーションは、更に、ホスト・アプリケーションに入り込むことができる(ステップ603)。例えば、ホスト・アプリケーションは、アプリケーション・プログラミング・インターフェース(API)を内蔵することができ、コンパニオン・アプリケーションは、ホスト・アプリケーションのAPIにアクセスして、ホスト・アプリケーションに入り込むことができる。更に、コンパニオン・アプリケーションはホスト・アプリケーションを監視することができるが、ホスト・アプリケーションはコンパニオン・アプリケーションに関与しないでいてもよい。加えてまたは代わりに、ホスト・アプリケーションは、ホスト・アプリケーションの機能がコンパニオン・アプリケーションの機能による影響を受けないように、コンパニオン・アプリケーションとは独立して機能することもできる。
更に、コンパニオン・アプリケーションは、ホスト・アプリケーションが発生したデーターに関する追加情報を発生することができる。例えば、コンパニオン・アプリケーションは、ホスト・アプリケーションが発生および/または提供したデーターを検出することができ、検出したデーターに基づいて、コンパニオン・アプリケーションは追加情報を(例えば、動作環境から)突き止めることおよび/または入手することができる。追加情報は、ホスト・アプリケーションからの検出データーを記述する、またはそれについてのコンテキストを規定するメタデーターを含むことができる。追加情報(例えば、メタデーター)は、ユーザーに出力することができる。例えば、追加情報を表示することもできる(ステップ605)。
図7は、異なるアプリケーションと関連のあるウィンドウを付属させるおよび/または修正する例を示すフローチャートである。ステップ701において、ホスト・アプリケーション・ウィンドウをコンパニオン・アプリケーション・ウィンドウに付属させる。この例では、コンパニオン・ウィンドウをホスト・ウィンドウに付属させて、コンパニオン・ウィンドウおよびホスト・ウィンドウ双方を含む、組み合わせウィンドウを形成する。コンパニオン・ウィンドウはホスト・ウィンドウに隣接していてもよく、ホスト・ウィンドウに付属させてもよく、更に1つの側(aspect)をホスト・ウィンドウと共有していてもよい。例えば、ホスト・ウィンドウは、左辺、右辺、上辺、および底辺を有することができる。コンパニオン・ウィンドウも、左辺、右辺、上辺、および底辺を有することができる。コンパニオン・ウィンドウの左辺がホスト・ウィンドウの右辺と接触するように、コンパニオン・ウィンドウがホスト・ウィンドウに隣接し、これに接続することができる。また、この例では、ホスト・ウィンドウおよびコンパニオン・ウィンドウは接触しているが、重なり合っていない。ホスト・ウィンドウおよびコンパニオン・ウィンドウが重なり合っていなければ、ホスト・ウィンドウがコンパニオン・ウィンドウによって遮られることはない。同様に、コンパニオン・ウィンドウもホスト・ウィンドウによって遮られることはない。尚、以上の説明は単なる一例に過ぎず、コンパニオン・ウィンドウのいずれの辺をホスト・ウィンドウのいずれの辺に接続して、組み合わせウィンドウにおいて付属させてもよいことを注記しておく。
ステップ702において、組み合わせウィンドウを表示する。また、組み合わせウィンドウのコンポーネントの1つに対する修正を組み合わせウィンドウの別のコンポーネントに適用できるように、組み合わせウィンドウを1つの単位として変更または修正することもできる。例えば、組み合わせウィンドウは、コンパニオン・ウィンドウに付属させたホスト・ウィンドウを含むことができる。ユーザーは、ディスプレイ上の第1位置からディスプレイ上の第2位置にホスト・ウィンドウを移動させることができる。この例では、組み合わせウィンドウのホスト・ウィンドウの移動の結果、コンパニオン・ウィンドウも連動して移動することになる。ホスト・ウィンドウおよびコンパニオン・ウィンドウを移動させると、あるいはそうでなければ、連動して変更または修正すると、ホスト・ウィンドウおよびコンパニオン・ウィンドウは、実質的に同様に移動、変更、または修正されることになる。したがって、ホスト・ウィンドウおよびコンパニオン・ウィンドウが連動して修正される組み合わせウィンドウでは、ホスト・ウィンドウおよびコンパニオン・ウィンドウを1つの単位として作用させるまたは修正することになり、この場合、変化はホスト・ウィンドウおよびコンパニオン・ウィンドウ双方に比例的に適用される。
ステップ703において、ホスト・アプリケーション・ウィンドウにおいて入力を受け取る。例えば、ユーザーは、ホスト・アプリケーション・ウィンドウ上に提示される選択肢のメニューから選択することができる。この選択は、あらゆる数または種類のエレメントでも含むことができる。例えば、選択は、コンピューティングシステム上に格納されているデーター・ファイルを収容することができるフォルダーの選択であってもよい。また、選択は、ウェブサイト上の選択肢、連絡先リスト上の連絡先、「行動予定」(to-do)リスト上の項目、カレンダー上の約束等であってもよい。いずれの選択肢でもホスト・アプリケーション・ウィンドウの中に提示することができ、選択することができる。
ステップ704において、コンパニオン・アプリケーションは、ホスト・アプリケーションにおいて入力または選択を検出することができる。例えば、ユーザーは、ホスト・アプリケーションが発生または入手したエレメントのリストから1つのエレメントを選択することができる。コンパニオン・アプリケーションは、ユーザーの選択を検出することができ、この選択に基づいて、コンパニオン・アプリケーションは、ホスト・アプリケーションにおける選択項目と関連のある、メタデーターのような、追加情報を突き止めることおよび/または特定することができる。例えば、この選択は、データー・ファイルのフォルダーを含むことができる。コンパニオン・アプリケーションは、この選択をデーター・ファイルのフォルダーとして特定することができ、更にこのフォルダーと関連のある情報を突き止めることができる。一例では、コンパニオン・アプリケーションは、動作環境におけるフォルダーに関する追加情報を突き止める。特定した、即ち、突き止めた追加情報は、ホスト・アプリケーションによってアクセスしたり提供しなくてもよい。また、ホスト・アプリケーションは、コンパニオン・アプリケーションにおいて実行される行為やイベント(例えば、追加情報を突き止めること)についても認識を有さなくてもよい。したがって、ホスト・アプリケーションはコンパニオン・アプリケーションには関与しないでいてもよい。この例では、コンパニオン・アプリケーションが入手したデーター・コンテンツまたは突き止めたデーター・コンテンツは、選択されたフォルダーと関連のある追加情報を含むことができる。例えば、このフォルダーに対してアクセス権を有するユーザーの個人情報をコンパニオン・アプリケーションによって入手することができ、更に、コンパニオン・アプリケーションに対応するユーザー・インターフェース(例えば、コンパニオン・ウィンドウ)において提供または出力することができる。ホスト・アプリケーションからのデーター(例えば、フォルダー)を記述する、またはそれについてのコンテキストを規定するいずれの追加情報も、同様にコンパニオン・アプリケーションによって入手および提供することができる。
別の例では、コンパニオン・アプリケーションによってコンパニオン・ウィンドウに提供される追加情報を修正することもできる。例えば、ホスト・アプリケーションにおいて選択されたデーターに関する条件が変化するに連れて、前述の情報をリアル・タイムで更新することができる。また、ホスト・アプリケーションは、コンパニオン・ウィンドウによって提供される追加データーのコンテキストにおいて選択されたデーターに対する変化には関与しない、または認識しないのでもよい。この例では、コンパニオン・アプリケーションはAPIを通じてホスト・アプリケーションに入り込み、ホスト・アプリケーション・ウィンドウにおいて選択されたデーターを記述する追加情報、あるいはそれについてのコンテキストを規定する追加情報を収容するコンパニオン・ウィンドウを提供する。また、コンパニオン・ウィンドウにおいて提供される追加データーは、ホスト・アプリケーションにおけるデーターに対する変化に基づいて更新することができるが、ホスト・アプリケーションは、コンパニオン・アプリケーションの存在や活動には関与しない、または認識しなくてもよい。更に別の例では、ホスト・アプリケーションは、ホスト・アプリケーションにおけるデーターに対する変化にも関与しない、または認識しなくてもよい。
図8は、ホスト・アプリケーションのユーザー・インターフェースとしてのウィンドウの例を示す。この例では、ホスト・アプリケーションは、Explorer(エクスプローラー)を含むことができるが、ユーザー・インターフェースを提供することができるホスト・アプリケーションであればいずれでも用いることができる。例えば、ホスト・アプリケーションは、ブラウザ、ワード・プロセッシング文書、表計算文書等であってもよい。図8に示す例では、ウィンドウ801は、コンピューティングシステム上に格納されているデーターのファイル・フォルダーに対応するアイコンを収容している。例えば、ホスト・アプリケーションのウィンドウ801の中に提供されている1つのデーター・フォルダーは、「写真」802を収容するフォルダーである。
図9は、コンパニオン・ウィンドウ902を付属させた、図8のホスト・ウィンドウ801の例を示す。この例では、ホスト・アプリケーションがデーターおよびホスト・ウィンドウ801を発生する。ホスト・ウィンドウは、発生したデーターをホスト・ウィンドウ801において出力または表示する。図9に示すように、ホスト・アプリケーションが発生したデーターは、「写真」と題したファイル・フォルダー901を含む。フォルダー901は、ホスト・ウィンドウ801の中で表示されている。
また、コンパニオン・アプリケーションによってコンパニオン・ウィンドウ902を発生することができる。ホスト・アプリケーションは、コンパニオン・アプリケーションとは分離して別個であってもよく、コンパニオン・アプリケーションまたはコンパニオン・ウィンドウ902とは独立して、ホスト・ウィンドウ801、およびホスト・ウィンドウ801の中に提供するデーターを発生することができる。例えば、コンパニオン・アプリケーションの状態やコンパニオン・ウィンドウ802には関係なく、ホスト・アプリケーションにおいて実行される行為またはイベントの状態、あるいはホスト・ウィンドウ801において提供または表示されるデーターが同じ状態または実質的に同じ状態で維持されるように、ホスト・アプリケーションは、コンパニオン・アプリケーションには関与しないまたは実質的に関与しないのであってもよい。
図9に示す例では、コンパニオン・アプリケーションはコンパニオン・ウィンドウ902を発生する。また、コンパニオン・ウィンドウ902はホスト・ウィンドウ801に付属または接続されて、ホスト・アプリケーションが発生しホスト・ウィンドウ801に提供されているデーターの少なくとも一部と関連のある情報を提供する。この例では、ホスト・ウィンドウ801の中にある「写真」フォルダー901が選択されている。コンパニオン・アプリケーションは、ホスト・アプリケーションに入り込み、ホスト・アプリケーションを監視し、ファイル・フォルダー910の選択を検出することができる。写真フォルダー901の選択に基づいて、コンパニオン・アプリケーションは、選択されたファイル・フォルダー901を記述する追加データーを入手する。例えば、コンパニオン・アプリケーションは、この追加データーを動作環境から突き止めるまたは受信することができる。
また、図9に示すように、前述の追加データーは、ホスト・ウィンドウ801において選択されたデーター(例えば、「写真」フォルダー901)を記述するメタデーターを含むことができ、コンパニオン・アプリケーションによってコンパニオン・ウィンドウ902の中に表示することができる。先に示したように、ホスト・ウィンドウ901に対する操作または修正をコンパニオン・ウィンドウ902に比例的に適用することができるように、コンパニオン・ウィンドウ802をホスト・ウィンドウ801に付属させるまたは接続することができる。例えば、ホスト・ウィンドウ801のサイズ変更、最小化、または最大化によって、コンパニオン・ウィンドウ902においても同等の修正または比例した修正を行うことができる。したがって、この例では、ホスト・ウィンドウ801およびコンパニオン・ウィンドウ902の修正、移動等を連動して行うことができる。
コンパニオン・ウィンドウ902は、ホスト・ウィンドウ801の中に提供されるデーターの状態、選択、または内容を記述する、特徴付ける、またはそれについてのコンテキストを規定する、メタデーターのような、あらゆる関連情報を収容することができる。図10は、コンパニオン・ウィンドウおよびその中に収容されているメタデーターの例を示す。この例では、コンパニオン・ウィンドウ1001は、ホスト・ウィンドウにおいて選択されたデーターの名称またはその他の識別子を収容する。この場合、選択されたデーターは、図9のホスト・ウィンドウ801に表示されている「写真」フォルダー901である。コンパニオン・ウィンドウ1001をホスト・ウィンドウ801に付属させてまたは接続して、コンパニオン・ウィンドウ1001の一側面がホスト・ウィンドウの一側面と接するようにすることができる。この例では、コンパニオン・ウィンドウおよびホスト・ウィンドウは合体しているが、重なり合ってはいない。
図10に示すコンパニオン・ウィンドウの例では、コンパニオン・ウィンドウ1001は更にメンバーの名前または識別子も含むことができる。この例では、特定されたメンバーの名前は、特定のファイルを共有するするためにアクセスすることができる個人に対応することができる。この例では、「写真」フォルダー901へのアクセスを共有するメンバーを、コンパニオン・ウィンドウにおいてリストにして表示することができる。
加えてまたは代わりに、コンパニオン・ウィンドウは、特定のデーターにアクセスすることができるまたはアクセスすることを許可されているデバイスのリストを含むこともできる。例えば、一人のユーザーが多数のデバイス(例えば、自宅用コンピューターおよび業務用コンピューター)を有する場合がある。指定データーにアクセスすることができる多数のデバイスは、そのいずれもコンパニオン・ウィンドウにおいてリストにして表示することができる。ホスト・ウィンドウにおいて選択されたデーターに関するあらゆる追加情報を、コンパニオン・ウィンドウに含ませることもできる。
図11は、コンパニオン・ウィンドウの別の例を示す。この例では、コンパニオン・ウィンドウ1101は、選択されたデーターへのアクセスを共有するメンバーのリストを収容する。選択されたデーターは、ホスト・アプリケーションからのものである。更に、コンパニオン・アプリケーションが何をするか、またはコンパニオン・アプリケーションが存在するのか、アクティブであるのか、または動作状態にあるのか否かにも関係なく、ホスト・アプリケーションが実質的に同様に機能するように、ホスト・アプリケーションはコンパニオン・アプリケーションを認識しなくてもよい。
加えて、コンパニオン・ウィンドウは種々の形態で設けることができる。例えば、ディスプレイ上に別のコンポーネント(ホスト・ウィンドウのようなコンポーネント)を表示するための追加空間を設けるために、コンパニオン・ウィンドウを異なるサイズに変更することができる。図12は、コンパニオン・ウィンドウ1201のサイズを縮小し、縮小したコンパニオン・ウィンドウの中にあるエレメントをアイコンで表示した、図9の例を示す。図13は、コンパニオン・ウィンドウ1301を畳むように、コンパニオン・ウィンドウのサイズを更に縮小した、図9の例を示す。それでも、畳まれたコンパニオン・ウィンドウ1301は、例えば、畳まれたコンパニオン・ウィンドウ1301の色、パターン、陰影、色調等を変更することにより、コンパニオン・ウィンドウ1301のステータスの指示を与えることもできる。図12または図13の変化させたコンパニオン・ウィンドウ(1201、1301)は、更に、標準サイズに戻して表示することもできる。例えば、図12のコンパニオン・ウィンドウ1201におけるアイコンを選択することにより、コンパニオン・ウィンドウおよびホスト・ウィンドウを元の割合に戻すことができる。
尚、本説明の態様は多くの形態および実施形態をなすことができることは言うまでもない。本明細書において示した実施形態は、説明を限定するのではなく、例示することを意図しており、本発明の範囲の主旨から逸脱することなく、変形を行うことが可能であることは認められよう。例示用の実施形態について示し説明したが、広範囲の修正、変更、および交換が前述の開示において意図されており、場合によっては、他の特徴の対応する使用がなくても、一部の特徴を採用することができる。したがって、添付する特許請求の範囲は、広義に、そして本発明の範囲と矛盾しないように解釈すべきことは認められよう。

Claims (20)

  1. 以下のステップを実行するための実行可能コードを収容する1つ又は複数のコンピューター読み取り可能媒体であって、該ステップは、
    動作環境における第1アプリケーションに対応する第1データー・コンテンツを収容する第1ユーザー・インターフェースを表示するステップであって、前記第1アプリケーションが前記第1データー・コンテンツを制御する、ステップと、
    第2アプリケーションに対応する第2データー・コンテンツを収容する第2ユーザー・インターフェースを表示するステップであって、前記第2アプリケーションが前記第2データー・コンテンツを発生するために前記動作環境にアクセスし、前記第2データー・コンテンツが前記第1データー・コンテンツを記述する、ステップと、
    からなる、1つ又は複数のコンピューター読み取り可能媒体。
  2. 請求項1記載のコンピューター読み取り可能媒体において、前記第2ユーザー・インターフェースを前記第1ユーザー・インターフェースに付属させる、コンピューター読み取り可能媒体。
  3. 請求項1記載のコンピューター読み取り可能媒体において、前記第2アプリケーションが前記第1アプリケーションを監視する、コンピューター読み取り可能媒体。
  4. 請求項3記載のコンピューター読み取り可能媒体において、前記第1データー・コンテンツおよび前記第2データー・コンテンツが異なる、コンピューター読み取り可能媒体。
  5. 請求項3記載のコンピューター読み取り可能媒体において、前記第1アプリケーションが前記第2アプリケーションとは独立して動作する、コンピューター読み取り可能媒体。
  6. 請求項3記載のコンピューター読み取り可能媒体において、前記ユーザー・インターフェースはウィンドウである、コンピューター読み取り可能媒体。
  7. 請求項3記載のコンピューター読み取り可能媒体において、前記第2アプリケーションは前記第1アプリケーションを修正しない、コンピューター読み取り可能媒体。
  8. 請求項7記載のコンピューター読み取り可能媒体において、前記第2アプリケーションが第1実行可能コードを収容し、前記第2アプリケーションは前記第1実行可能コードを通じて前記第1アプリケーションに入り込む、コンピューター読み取り可能媒体。
  9. 請求項1記載のコンピューター読み取り可能媒体であって、更に、以下のステップを実行する実行可能コードを収容し、該ステップは、
    前記第1アプリケーションにおいて入力イベントを受信するステップと、
    前記第2アプリケーションを通じて前記入力イベントを検出するステップと、
    前記第1アプリケーションにおける前記入力イベントに基づいて、前記第2アプリケーションによって前記第2ユーザー・インターフェースの中に前記第2データー・コンテンツを発生するステップと、
    からなる、コンピューター読み取り可能媒体。
  10. 請求項1記載のコンピューター読み取り可能媒体において、前記第1アプリケーションがアプリケーション・プログラム・インターフェースを備えており、前記第2アプリケーションは前記アプリケーション・プログラム・インターフェースを通じて前記第1アプリケーションにアクセスする、コンピューター読み取り可能媒体。
  11. 請求項10記載のコンピューター読み取り可能媒体であって、前記第1アプリケーションのアプリケーション・プログラム・インターフェースを通じて、前記第2アプリケーションによって前記第1データー・コンテンツの付随特性を判定するステップを実行する実行可能コードを収容する、コンピューター読み取り可能媒体。
  12. 請求項11記載のコンピューター読み取り可能媒体において、前記第2アプリケーションは、前記第1データー・コンテンツの付随特性に基づいて、前記第2データー・コンテンツを発生する、コンピューター読み取り可能媒体。
  13. 請求項12記載のコンピューター読み取り可能媒体において、前記付随特性は、前記第1データー・コンテンツの少なくとも一部の状態、コンテキスト、または選択の内少なくとも1つを含む、コンピューター読み取り可能媒体。
  14. ユーザー・インターフェースを設ける方法であって、
    第1アプリケーションによって第1ユーザー・インターフェースを表示するステップと、
    第2アプリケーションによって第2ユーザー・インターフェースを発生するステップと、
    前記第1インターフェースに付属する前記第2ユーザー・インターフェースを備えている組み合わせユーザー・インターフェースを発生するステップと、
    前記組み合わせユーザー・インターフェースを表示するステップと、
    を備えている、方法。
  15. 請求項14記載の方法において、前記組み合わせユーザー・インターフェースは、前記第2ユーザー・インターフェースに隣接する前記第1ユーザー・インターフェースを備えている、方法。
  16. 請求項15記載の方法において、前記組み合わせユーザー・インターフェースにおける前記第1ユーザー・インターフェースおよび前記第2インターフェースが重なり合っていない、方法。
  17. 請求項14記載の方法であって、更に、
    前記第1アプリケーションにおいて入力コマンドを受け取るステップと、
    前記入力コマンドに応答して、前記組み合わせユーザー・インターフェースを修正するステップと、
    を備えている、方法。
  18. 請求項17記載の方法において、修正するステップは、前記第1ユーザー・インターフェースおよび前記第2ユーザー・インターフェースを連動して修正することを含む、方法。
  19. コンテキスト・データーを提供する方法であって、
    動作環境において第1アプリケーションを実行するステップと、
    前記第1アプリケーションの実行に応答して、第1ユーザー・インターフェースを発生するステップであって、前記第1ユーザー・インターフェースが前記第1アプリケーションと関連のある第1データー・コンテンツを収容する、ステップと、
    第2ユーザー・インターフェースを発生するために第2アプリケーションを実行するステップであって、前記第2アプリケーションが、前記動作環境から、前記第1データー・コンテンツと関連のあるデーターを入手し、前記動作環境から入手したデーターに基づいて第2データー・コンテンツを発生し、前記第2データー・コンテンツが前記第1データー・コンテンツとは異なる、ステップと、
    前記第2ユーザー・インターフェースに隣接しこれに付属する前記第1ユーザー・インターフェースを収容する組み合わせユーザー・インターフェースを表示するステップと、
    を備えている、方法。
  20. 請求項19記載の方法において、前記第2アプリケーションが前記第1アプリケーションに入り込み、前記第1アプリケーションは前記第2アプリケーションによって実質的に修正されない、方法。
JP2010507538A 2007-05-04 2008-05-01 ライブ・コンパニオン・ウィンドウ Withdrawn JP2010527478A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/744,782 US8677270B2 (en) 2007-05-04 2007-05-04 Live companion user interface
PCT/US2008/062240 WO2008137559A1 (en) 2007-05-04 2008-05-01 Live companion window

Publications (2)

Publication Number Publication Date
JP2010527478A true JP2010527478A (ja) 2010-08-12
JP2010527478A5 JP2010527478A5 (ja) 2011-06-02

Family

ID=39940474

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010507538A Withdrawn JP2010527478A (ja) 2007-05-04 2008-05-01 ライブ・コンパニオン・ウィンドウ

Country Status (5)

Country Link
US (2) US8677270B2 (ja)
EP (1) EP2143017A4 (ja)
JP (1) JP2010527478A (ja)
CN (1) CN101675425B (ja)
WO (1) WO2008137559A1 (ja)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677270B2 (en) 2007-05-04 2014-03-18 Microsoft Corporation Live companion user interface
US8954507B2 (en) * 2007-06-22 2015-02-10 Microsoft Corporation Gathering and using awareness information
US20090112870A1 (en) * 2007-10-31 2009-04-30 Microsoft Corporation Management of distributed storage
US8286199B1 (en) * 2008-08-22 2012-10-09 SmartVault Corporation Automated method for creating a graphical user interface for a document management system that is visually integrated with an application having limited native GUI-integration capabilities
US9367331B2 (en) 2009-07-20 2016-06-14 Google Technology Holdings LLC Multi-environment operating system
US9389877B2 (en) 2009-07-20 2016-07-12 Google Technology Holdings LLC Multi-environment operating system
US9348633B2 (en) 2009-07-20 2016-05-24 Google Technology Holdings LLC Multi-environment operating system
US9372711B2 (en) 2009-07-20 2016-06-21 Google Technology Holdings LLC System and method for initiating a multi-environment operating system
WO2011073973A1 (en) * 2009-12-14 2011-06-23 Tako Technology Ltd. A computerized tool, system and method for remote access to a computer program
CN101883184B (zh) * 2010-06-23 2014-12-17 中兴通讯股份有限公司 在移动终端上控制应用程序显示的方法和移动终端
US20120030627A1 (en) * 2010-07-30 2012-02-02 Nokia Corporation Execution and display of applications
US9811528B2 (en) 2010-12-09 2017-11-07 Yosef Benraz Systems and methods for providing continuing access to a remote computer program
US10606564B2 (en) * 2010-12-27 2020-03-31 Microsoft Technology Licensing, Llc Companion window experience
US9424052B2 (en) 2011-03-21 2016-08-23 Amazon Technologies, Inc. Remotely emulating computing devices
US9354900B2 (en) 2011-04-28 2016-05-31 Google Technology Holdings LLC Method and apparatus for presenting a window in a system having two operating system environments
US20120278747A1 (en) * 2011-04-28 2012-11-01 Motorola Mobility, Inc. Method and apparatus for user interface in a system having two operating system environments
US9345061B1 (en) 2011-06-29 2016-05-17 Amazon Technologies, Inc. Remote access to mobile communication devices
US20130293573A1 (en) 2012-05-02 2013-11-07 Motorola Mobility, Inc. Method and Apparatus for Displaying Active Operating System Environment Data with a Plurality of Concurrent Operating System Environments
US9342325B2 (en) 2012-05-17 2016-05-17 Google Technology Holdings LLC Synchronizing launch-configuration information between first and second application environments that are operable on a multi-modal device
KR20150081073A (ko) * 2014-01-03 2015-07-13 삼성전자주식회사 글랜스 정보를 제공하는 방법, 저장 매체 및 전자 장치
USD774546S1 (en) * 2014-12-30 2016-12-20 Microsoft Corporation Display screen with icon
US20160344677A1 (en) 2015-05-22 2016-11-24 Microsoft Technology Licensing, Llc Unified messaging platform for providing interactive semantic objects
US10360287B2 (en) 2015-05-22 2019-07-23 Microsoft Technology Licensing, Llc Unified messaging platform and interface for providing user callouts
US11212326B2 (en) 2016-10-31 2021-12-28 Microsoft Technology Licensing, Llc Enhanced techniques for joining communication sessions
AU2017383528C1 (en) 2016-12-21 2023-04-27 Wix.Com Ltd. Actionable widget cards
US11256392B2 (en) 2019-11-01 2022-02-22 Microsoft Technology Licensing, Llc Unified interfaces for paired user computing devices
US11304246B2 (en) 2019-11-01 2022-04-12 Microsoft Technology Licensing, Llc Proximity-based pairing and operation of user-specific companion devices
US11546391B2 (en) 2019-11-01 2023-01-03 Microsoft Technology Licensing, Llc Teleconferencing interfaces and controls for paired user computing devices
US11599364B2 (en) 2021-02-23 2023-03-07 Dell Products L.P. System and method for provide persistent companion software in an information handling system
US20220398056A1 (en) * 2021-06-14 2022-12-15 Microsoft Technology Licensing, Llc Companion devices as productivity tools

Family Cites Families (76)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0678812A1 (en) 1994-04-20 1995-10-25 Microsoft Corporation Replication verification
US5978567A (en) 1994-07-27 1999-11-02 Instant Video Technologies Inc. System for distribution of interactive multimedia and linear programs by enabling program webs which include control scripts to define presentation by client transceiver
US5724556A (en) 1995-04-14 1998-03-03 Oracle Corporation Method and apparatus for defining and configuring modules of data objects and programs in a distributed computer system
JP3400193B2 (ja) 1995-07-31 2003-04-28 富士通株式会社 ウィンドウ関係の識別アイコン付木構造一覧表示方法及び装置
US5734380A (en) * 1996-09-27 1998-03-31 Adams; James S. Method for controlling the presentation of displays in a multi-window computer environment
US5987506A (en) 1996-11-22 1999-11-16 Mangosoft Corporation Remote access and geographically distributed computers in a globally addressable storage environment
US6029171A (en) 1997-02-10 2000-02-22 Actioneer, Inc. Method and apparatus for group action processing between users of a collaboration system
US6028602A (en) 1997-05-30 2000-02-22 Telefonaktiebolaget Lm Ericsson Method for managing contents of a hierarchical data model
US7260610B2 (en) 1998-02-10 2007-08-21 Gateway Inc. Convergence events notification system
US6446077B2 (en) 1998-09-21 2002-09-03 Microsoft Corporation Inherited information propagator for objects
WO2000020966A1 (fr) 1998-10-02 2000-04-13 Fujitsu Limited Dispositif de cooperation objets
US6728713B1 (en) 1999-03-30 2004-04-27 Tivo, Inc. Distributed database management system
US6401104B1 (en) 1999-07-03 2002-06-04 Starfish Software, Inc. System and methods for synchronizing datasets using cooperation among multiple synchronization engines
JP2001101190A (ja) 1999-07-29 2001-04-13 Jisedai Joho Hoso System Kenkyusho:Kk 受信装置および受信方法
US6694336B1 (en) 2000-01-25 2004-02-17 Fusionone, Inc. Data transfer and synchronization system
JP4491902B2 (ja) 2000-04-04 2010-06-30 ソニー株式会社 摺動型グラフックウィンドウを用いたメディアコンテンツとのインターラクティブシステム
US6760721B1 (en) 2000-04-14 2004-07-06 Realnetworks, Inc. System and method of managing metadata data
US6760828B1 (en) 2000-06-27 2004-07-06 Emc Corporation Method and apparatus for using logical volume identifiers for tracking or identifying logical volume stored in the storage system
US20020069192A1 (en) 2000-12-04 2002-06-06 Aegerter William Charles Modular distributed mobile data applications
US6954934B2 (en) 2001-03-15 2005-10-11 Intel Corporation Management of links to data embedded in blocks of data
US7472396B2 (en) 2001-05-18 2008-12-30 Qualcomm Incorporated Extensible event notification mechanism
US7409423B2 (en) 2001-06-28 2008-08-05 Horvitz Eric J Methods for and applications of learning and inferring the periods of time until people are available or unavailable for different forms of communication, collaboration, and information access
US7207008B1 (en) 2001-09-12 2007-04-17 Bellsouth Intellectual Property Corp. Method, system, apparatus, and computer-readable medium for interactive notification of events
US7117505B2 (en) 2001-11-29 2006-10-03 Veritas Operating Corporation Methods, systems, and apparatus to interface with storage objects
US20030225753A1 (en) 2001-12-18 2003-12-04 Becomm Corporation Method and system for attribute management in a namespace
US7146573B2 (en) * 2002-01-28 2006-12-05 International Business Machines Corporation Automatic window representation adjustment
US6922757B2 (en) 2002-02-15 2005-07-26 Exanet Inc. Flexible and adaptive read and write storage system architecture
US6954543B2 (en) 2002-02-28 2005-10-11 Ipac Acquisition Subsidiary I, Llc Automated discovery, assignment, and submission of image metadata to a network-based photosharing service
US20060136441A1 (en) 2002-04-02 2006-06-22 Tetsunosuke Fujisaki Method and apparatus for synchronous project collaboration
US7191217B2 (en) 2002-04-10 2007-03-13 Nippon Telegraph And Telephone Corporation Distributed server-based collaborative computing
US20030217098A1 (en) 2002-05-15 2003-11-20 Microsoft Corporation Method and system for supporting the communication of presence information regarding one or more telephony devices
US20030220966A1 (en) 2002-05-24 2003-11-27 International Business Machines Corporation System and method for dynamic content dependent conflict resolution
CA2515488C (en) 2003-02-10 2013-04-16 Raindance Communications, Inc. Methods and apparatus for providing egalitarian control in a multimedia collaboration session
US7743022B2 (en) 2003-02-28 2010-06-22 Microsoft Corporation Method and system for synchronizing data shared among peer computing devices
US7823077B2 (en) 2003-03-24 2010-10-26 Microsoft Corporation System and method for user modification of metadata in a shell browser
US7769794B2 (en) 2003-03-24 2010-08-03 Microsoft Corporation User interface for a file system shell
US7904323B2 (en) 2003-06-23 2011-03-08 Intel Corporation Multi-team immersive integrated collaboration workspace
US7111229B2 (en) * 2003-06-25 2006-09-19 Yahoo! Inc. System and method for providing a webpage
US7512884B2 (en) 2003-06-25 2009-03-31 Microsoft Corporation System and method for switching of media presentation
US20050039139A1 (en) * 2003-08-12 2005-02-17 Solance Technologies, Inc. Linked two-paned user interface for selecting and administering objects within a computer system
JP4504643B2 (ja) 2003-08-22 2010-07-14 日本放送協会 デジタル放送受信装置及びコンテンツ再生方法
US20050086384A1 (en) 2003-09-04 2005-04-21 Johannes Ernst System and method for replicating, integrating and synchronizing distributed information
US7734690B2 (en) 2003-09-05 2010-06-08 Microsoft Corporation Method and apparatus for providing attributes of a collaboration system in an operating system folder-based file system
US20050114790A1 (en) * 2003-11-24 2005-05-26 Christopher Dunbar User interface
US8250150B2 (en) 2004-01-26 2012-08-21 Forte Internet Software, Inc. Methods and apparatus for identifying and facilitating a social interaction structure over a data packet network
US20050203935A1 (en) 2004-03-11 2005-09-15 International Business Machines Corporation Clipboard content and document metadata collection
SE528570C2 (sv) * 2004-04-08 2006-12-19 Abb Research Ltd Metod, anordning och system för att upprätta en trådlös förbindelse mellan en bärbar datoranordning med en första applikation till andra anordningar med hjälp av en andra applikation
US7434173B2 (en) * 2004-08-30 2008-10-07 Microsoft Corporation Scrolling web pages using direct interaction
US7788144B2 (en) 2004-09-01 2010-08-31 Microsoft Corporation System and method for storing and presenting images and related items to a user
US7778984B2 (en) 2004-11-19 2010-08-17 Microsoft Corporation System and method for a distributed object store
US7953725B2 (en) 2004-11-19 2011-05-31 International Business Machines Corporation Method, system, and storage medium for providing web information processing services
US20060129917A1 (en) 2004-12-03 2006-06-15 Volk Andrew R Syndicating multiple media objects with RSS
US7660416B1 (en) 2005-01-11 2010-02-09 Sample Digital Holdings Llc System and method for media content collaboration throughout a media production process
US7593943B2 (en) 2005-01-14 2009-09-22 Microsoft Corporation Method and system for synchronizing multiple user revisions to a shared object
US20060218492A1 (en) 2005-03-22 2006-09-28 Andrade Jose O Copy and paste with citation attributes
US7620902B2 (en) 2005-04-20 2009-11-17 Microsoft Corporation Collaboration spaces
US20060247961A1 (en) 2005-04-28 2006-11-02 Klemow Jason L Method and system for providing aggregation and display of notifications
US7487191B2 (en) 2005-06-10 2009-02-03 International Business Machines Corporation Method and system for model-based replication of data
US8732220B2 (en) 2005-06-15 2014-05-20 International Business Machines Corporation Virtualized file system
US7693958B2 (en) 2005-06-20 2010-04-06 Microsoft Corporation Instant messaging with data sharing
US8171394B2 (en) 2005-06-24 2012-05-01 Microsoft Corporation Methods and systems for providing a customized user interface for viewing and editing meta-data
US9286388B2 (en) 2005-08-04 2016-03-15 Time Warner Cable Enterprises Llc Method and apparatus for context-specific content delivery
US7412534B2 (en) 2005-09-30 2008-08-12 Yahoo! Inc. Subscription control panel
US20070124458A1 (en) 2005-11-30 2007-05-31 Cisco Technology, Inc. Method and system for event notification on network nodes
US7440976B2 (en) 2006-03-22 2008-10-21 Intuit Inc. Method and apparatus for performing collaborative searches
US7870193B2 (en) 2006-08-28 2011-01-11 International Business Machines Corporation Collaborative, event driven system management
US9230068B2 (en) 2006-10-03 2016-01-05 Salesforce.Com, Inc. Method and system for managing license objects to applications in an application platform
US20080155112A1 (en) 2006-12-22 2008-06-26 Nokia Corporation System and method for updating information feeds
US20080201338A1 (en) 2007-02-16 2008-08-21 Microsoft Corporation Rest for entities
US8914434B2 (en) 2007-04-11 2014-12-16 International Business Machines Corporation Method and apparatus for syndicating interactions between a client and a web service
US8677270B2 (en) 2007-05-04 2014-03-18 Microsoft Corporation Live companion user interface
US8239479B2 (en) 2007-06-22 2012-08-07 Microsoft Corporation Server-assisted and peer-to-peer synchronization
US8954507B2 (en) 2007-06-22 2015-02-10 Microsoft Corporation Gathering and using awareness information
US9401957B2 (en) 2007-09-14 2016-07-26 International Business Machines Corporation System and method for synchronization between servers
US8145727B2 (en) 2007-10-10 2012-03-27 Yahoo! Inc. Network accessible media object index
US20090112870A1 (en) 2007-10-31 2009-04-30 Microsoft Corporation Management of distributed storage

Also Published As

Publication number Publication date
WO2008137559A1 (en) 2008-11-13
CN101675425A (zh) 2010-03-17
US8677270B2 (en) 2014-03-18
CN101675425B (zh) 2013-03-27
US9274674B2 (en) 2016-03-01
US20140157185A1 (en) 2014-06-05
EP2143017A4 (en) 2012-09-26
US20080276195A1 (en) 2008-11-06
EP2143017A1 (en) 2010-01-13

Similar Documents

Publication Publication Date Title
JP2010527478A (ja) ライブ・コンパニオン・ウィンドウ
KR100914121B1 (ko) 쉘 브라우저의 확장 가능형 오브젝트 프리뷰어
KR101556905B1 (ko) 구조화된 데이터를 이용하는 웹페이지 링크들의 관리
US6874125B1 (en) Method for providing feedback on windows, messages and dialog boxes
KR101145004B1 (ko) 백업 인터페이스를 위한 그래픽 사용자 인터페이스
CN1821943B (zh) 使用活动内容向导和帮助文件的任务的可发现性-“现在我能做什么? ”特征
JP4864443B2 (ja) ツリービューベースエディタでのインラインプロパティ編集のシステムおよび方法
EP2742422B1 (en) Content preview
EP2350817B1 (en) Automatic creation and server push of drafts
US7676785B2 (en) Hosted application as a designer in an integrated development environment
US8250518B2 (en) Per user file associations
EP2250622B1 (en) Service preview and access from an application page
KR20110090903A (ko) 윈도우 관련 컨트롤의 노출 및 관리
US20080154869A1 (en) System and method for constructing a search
EP1875379A2 (en) Providing travel log integration for objects hosted in a browser
US20100057770A1 (en) System and method of file management, and recording medium storing file management program
JP5167850B2 (ja) Guiシステム、gui生成方法、プログラムおよび記録媒体
TW200406692A (en) Semiconductor test data analysis system
JP2009237659A (ja) 操作ログ情報表示システム
JP5271920B2 (ja) オンライン検索のために構造化データを用いる方法
US7490133B1 (en) Context-sensitive content level semantic information propagation system and method
US20120124091A1 (en) Application file system access
EP3367243B1 (en) Information processing system, and information processing method
US8126864B2 (en) Method and apparatus for managing folder
CN117931353A (zh) 一种显示方法及装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110412

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110412

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20121114