(57)【要約】【課題】ファイルのクロスアプリケーションコラボレーションおよびクロスバージョンコラボレーションをよりよく容易にする。【解決手段】コンピューティングシステムの要素が使用される際に、クロスアプリケーションコラボレーション問題またはクロスバージョンコラボレーション問題を引き起こす可能性がある、その要素から使用可能な機能性を、コンピューティングシステム要素の異なるタイプまたは異なるバージョン用のファイルの作成または編集に使用するのに使用不能とするように制約する。【選択図】図４
2006178953.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータによって実行された時に、他のソフトウェアアプリケーションまたは他のソフトウェアアプリケーションバージョンとの改善された文書互換性を容易にするためにソフトウェアアプリケーションの特徴または機能性を変更する方法であって、
第２ソフトウェアアプリケーションによる使用のために文書を準備するために第１ソフトウェアアプリケーションを起動することと、
前記文書に適用できる前記第１アプリケーションの特徴または機能性のいずれかは前記第２ソフトウェアアプリケーションから使用可能な特徴または機能性と互換でないかどうかを判定することと、
前記第２アプリケーションから使用可能な特徴または機能性と互換でない、前記文書に適用できる前記第１アプリケーションのすべての特徴または機能性は、前記文書に適用できなくなるように、前記第１アプリケーションを構成することと
を含む方法を実行するコンピュータ可読命令がその上にストアされていることを特徴とするコンピュータ可読媒体。
【請求項２】
第２ソフトウェアアプリケーションによる使用のために文書を準備するために前記第１ソフトウェアアプリケーションを起動することは、前記第１アプリケーションの第２バージョンによる使用のために文書を準備するために前記第１ソフトウェアアプリケーションの第１バージョンを起動することを含むことを特徴とする請求項１に記載のコンピュータ可読媒体。
【請求項３】
前記文書に適用できる前記第１アプリケーションの特徴または機能性のいずれかは前記第２アプリケーションから使用可能な特徴または機能性と互換でないかどうかを判定することは、前記第２アプリケーションを識別することと、前記第２アプリケーションから使用可能な特徴または機能性と互換でない、前記文書に適用できる前記第１アプリケーションのすべての特徴または機能性を識別することとを含むことを特徴とする請求項１に記載のコンピュータ可読媒体。
【請求項４】
前記第２アプリケーションから使用可能な特徴または機能性と互換でない、前記文書に適用できる前記第１アプリケーションのすべての特徴または機能性は、前記文書に適用できなくなるように、前記第１アプリケーションを構成する前に、前記第１アプリケーションを構成するための１つまたは複数の互換性コンフィギュレーションからの互換性コンフィギュレーションの選択を受け取ることをさらに含むことを特徴とする請求項１に記載のコンピュータ可読媒体。
【請求項５】
前記第１アプリケーションを構成するための１つまたは複数の互換性コンフィギュレーションからの互換性コンフィギュレーションの選択を受け取る前に、それから特定の互換性コンフィギュレーションを前記第１アプリケーションを構成するために選択できる１つまたは複数の互換性コンフィギュレーションのリスティングをユーザインターフェース内で提供することを特徴とする請求項４に記載のコンピュータ可読媒体。
【請求項６】
前記第１アプリケーションを構成するための１つまたは複数の互換性コンフィギュレーションからの互換性コンフィギュレーションの選択を受け取ることは、前記第１アプリケーションを構成するためのカスタマイズされた互換性コンフィギュレーションの選択を受け取ることを含み、これによって、前記第１アプリケーションの選択された特徴または機能性だけが、適用されるカスタマイズされた互換性コンフィギュレーションによって制約されることを特徴とする請求項４に記載のコンピュータ可読媒体。
【請求項７】
前記第１アプリケーションを構成するためのカスタマイズされた互換性コンフィギュレーションの選択を受け取る前に、前記カスタマイズされた互換性コンフィギュレーションを生成するために、前記第１アプリケーションによる使用から制約される１つまたは複数の特徴または機能性の選択を受け取ることを特徴とする請求項６に記載のコンピュータ可読媒体。
【請求項８】
前記カスタマイズされた互換性コンフィギュレーションを生成するために、前記第１アプリケーションによる使用から制約される１つまたは複数の特徴または機能性の選択を受け取る前に、前記カスタマイズされた互換性コンフィギュレーションを生成するために、前記第１アプリケーションによる使用から制約することができる前記第１アプリケーションの１つまたは複数の特徴または機能性のリスティングをユーザインターフェース内で提供することを特徴とする請求項７に記載のコンピュータ可読媒体。
【請求項９】
前記第１アプリケーションを構成することは、前記第２アプリケーションから使用可能な特徴または機能と互換でない、前記文書に適用できる前記第１アプリケーションのすべての特徴または機能性を制約することを含むことを特徴とする請求項４に記載のコンピュータ可読媒体。
【請求項１０】
前記第１アプリケーションのすべての特徴または機能性を制約することは、前記第１アプリケーションによる使用から制約される特徴および機能性をディスエーブルすることを含むことを特徴とする請求項９に記載のコンピュータ可読媒体。
【請求項１１】
前記第１アプリケーションのすべての特徴または機能性を制約することは、変更された特徴または機能性は前記第２アプリケーションから使用可能な特徴または機能性と互換になるように、制約された特徴または機能性の動作を変更することを含むことを特徴とする請求項９に記載のコンピュータ可読媒体。
【請求項１２】
前記第２アプリケーションから使用可能な特徴または機能性と互換でない、前記文書に適用できる前記第１アプリケーションのすべての特徴または機能性は、前記文書に適用できなくなるように、前記第１アプリケーションを構成した後に、前記第１アプリケーションを構成することに応答して、前記文書に適用できない前記第１アプリケーションの特徴または機能性の選択を受け取ることと、
前記文書への前記選択された特徴または機能性の適用を可能にするために、前記第１アプリケーションに適用される互換性コンフィギュレーションをアップグレードできることのプロンプトを提供することと、
前記文書への前記選択された特徴または機能性の適用を可能にするために、前記第１アプリケーションに適用される前記互換性コンフィギュレーションをアップグレードすることと
をさらに含むことを特徴とする請求項１に記載のコンピュータ可読媒体。
【請求項１３】
他のソフトウェアアプリケーションとの改善された文書互換性を容易にするためにソフトウェアアプリケーションの特徴および機能性を変更する方法であって、
コンピュータ生成された文書を生成するために第１ソフトウェアアプリケーションを起動することと、
前記第１ソフトウェアアプリケーションを用いて前記コンピュータ生成された文書を開くことと、
前記文書は前記文書に適用できる第２ソフトウェアアプリケーションから使用可能な特徴または機能性を定義するための互換性コンフィギュレーションを有する前記第２ソフトウェアアプリケーションによって生成されたかどうかを判定することと、
前記文書は前記文書に適用できる第２ソフトウェアアプリケーションから使用可能な特徴または機能性を定義するための互換性コンフィギュレーションを有する前記第２ソフトウェアアプリケーションによって生成された場合に、前記第２ソフトウェアアプリケーションに適用される前記互換性コンフィギュレーションを前記第１ソフトウェアアプリケーションに適用することと
を含むことを特徴とする方法。
【請求項１４】
前記第２ソフトウェアアプリケーションに適用される前記互換性コンフィギュレーションを前記第１ソフトウェアアプリケーションに適用する前に、前記第２ソフトウェアアプリケーションに適用される前記互換性コンフィギュレーションを前記第１ソフトウェアアプリケーションに適用するための選択を受け取ることを特徴とする請求項１３に記載の方法。
【請求項１５】
前記第２ソフトウェアアプリケーションに適用される前記互換性コンフィギュレーションを前記第１ソフトウェアアプリケーションに適用するための選択を受け取る前に、前記第２ソフトウェアアプリケーションに適用される前記互換性コンフィギュレーションの前記第１ソフトウェアアプリケーションへの適用に関するプロンプトを提供することを特徴とする請求項１４に記載の方法。
【請求項１６】
前記文書は前記文書に適用できる第２ソフトウェアアプリケーションから使用可能な特徴または機能性を定義するための互換性コンフィギュレーションを有する前記第２ソフトウェアアプリケーションによって生成されなかった場合に、前記文書は第２ソフトウェアアプリケーションによって生成されたかどうかを判定することと、
前記文書は第２ソフトウェアアプリケーションによって生成された場合に、前記文書に適用できる前記第１ソフトウェアアプリケーションから使用可能な特徴または機能性のいずれかは前記第２ソフトウェアアプリケーションから使用可能な特徴または機能性と互換でないかどうかを判定することと、
前記第２アプリケーションから使用可能な特徴または機能性と互換でない前記第１ソフトウェアのすべての特徴または機能性は前記文書に適用されなくなるように前記第１ソフトウェアアプリケーションを構成することと
を特徴とする請求項１３に記載の方法。
【請求項１７】
前記文書は前記文書に適用できる第２ソフトウェアアプリケーションから使用可能な特徴または機能性を定義するための互換性コンフィギュレーションを有する前記第２ソフトウェアアプリケーションによって生成されたかどうかの判定は、前記文書への適用に関する前記第１ソフトウェアアプリケーションの特徴または機能性の選択を受け取ることと、前記選択された特徴または機能性の使用は前記第２ソフトウェアアプリケーションによって前記文書に適用される互換性コンフィギュレーションに従って制約されるかどうかを判定することとを含むことを特徴とする請求項１３に記載の方法。
【請求項１８】
前記第２ソフトウェアアプリケーションに適用される前記互換性コンフィギュレーションを前記第１ソフトウェアアプリケーションに適用した後に、前記第１ソフトウェアアプリケーションに前記互換性コンフィギュレーションを適用した後に前記文書に適用できない前記第１アプリケーションの特徴または機能性の選択を受け取ることと、
前記第１アプリケーションに適用された前記互換性コンフィギュレーションは前記文書への前記選択された特徴または機能性の適用を可能にするためにアップグレードすることができることのプロンプトを提供することと、
前記文書への前記選択された特徴または機能性の適用を可能にするために、前記第１アプリケーションに適用される前記互換性コンフィギュレーションをアップグレードすることと
をさらに含むことを特徴とする請求項１３に記載の方法。
【請求項１９】
コンピュータによって実行された時に、他のソフトウェアアプリケーションとの改善された文書互換性を容易にするためにソフトウェアアプリケーションの特徴および機能性を変更する方法であって、
コンピュータ生成された文書を準備するために第１ソフトウェアアプリケーションを起動することと、
前記第１ソフトウェアアプリケーションを用いて前記コンピュータ生成された文書を開くことと、
前記文書は前記文書に適用できる第２ソフトウェアアプリケーションから使用可能な特徴または機能性を定義するための互換性コンフィギュレーションを有する前記第２ソフトウェアアプリケーションによって生成されたかどうかを判定することと、
前記文書は前記文書に適用できる第２ソフトウェアアプリケーションから使用可能な特徴または機能性を定義するための互換性コンフィギュレーションを有する前記第２ソフトウェアアプリケーションによって生成された場合に、前記第２ソフトウェアアプリケーションに適用される前記互換性コンフィギュレーションを前記第１ソフトウェアアプリケーションに適用することと
を含む方法を実行するコンピュータ可読命令がその上にストアされていることを特徴とするコンピュータ可読媒体。
【請求項２０】
前記文書は前記文書に適用できる第２ソフトウェアアプリケーションから使用可能な特徴または機能性を定義するための互換性コンフィギュレーションを有する前記第２ソフトウェアアプリケーションによって生成されなかった場合に、前記文書は第２ソフトウェアアプリケーションによって生成されたかどうかを判定することと、
前記文書は第２ソフトウェアアプリケーションによって生成された場合に、前記文書に適用できる前記第１ソフトウェアアプリケーションから使用可能な特徴または機能性のいずれかは前記第２ソフトウェアアプリケーションから使用可能な特徴または機能性と互換でないかどうかを判定することと、
前記第２アプリケーションから使用可能な特徴または機能性と互換でない前記第１ソフトウェアアプリケーションのすべての特徴または機能性は前記文書に適用されなくなるように前記第１ソフトウェアアプリケーションを構成することと
を特徴とする請求項１９に記載のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、全般的には、異なるコンピューティングシステムおよびソフトウェアシステムの共同使用に関する。具体的には、本発明は、ファイルのクロスアプリケーションコラボレーションおよびクロスバージョンコラボレーションを容易にするためにソフトウェアを制御する方法およびシステムに関する。
【背景技術】
【０００２】
コンピュータ時代の出現に伴って、コンピュータおよびソフトウェアのユーザは、記述、計算、編成、プレゼンテーションの準備、電子メールの送受信、音楽作成、および類似物を助けるユーザフレンドリなソフトウェアアプリケーションに慣れてきた。たとえば、現代の電子ワードプロセッシングアプリケーションは、ユーザがさまざまな有用な文書を準備することを可能にする。現代のスプレッドシートアプリケーションは、ユーザがデータを入力し、操作し、編成することを可能にする。現代の電子スライドプレゼンテーションアプリケーションは、ユーザが、テキスト、ピクチャ、データ、および他の有用なオブジェクトを含むさまざまなスライドプレゼンテーションを作成することを可能にする。
【０００３】
社会が、ますます増加する割合でコンピュータおよびコンピュータソフトウェアを採用するにつれて、コンピューティングの世界は、多数の異なるオペレーティングシステム、アプリケーション、およびアプリケーションのバージョンを実行するコンピュータからなる断片化された異種システムになってきた。単一のコンピューティングシステム内の各要素（たとえば、オペレーティングシステム、アプリケーション、およびアプリケーションの異なるバージョン）が、ユーザインターフェース、特徴／機能性、アプリケーションプログラミングインターフェース、およびファイルフォーマットに相違を有する。これらの要素の間の相違は、異なるコンピューティングシステムの複数のユーザがコラボレーションを試みる場合に問題を引き起こす。たとえば、所与のソフトウェアアプリケーションの第２世代または第２バージョンを使用する、あるコンピューティングシステムのユーザが、同一のソフトウェアアプリケーションの第１のまたは以前のバージョン用の文書を作成しまたは編集する場合に、そのソフトウェアアプリケーションの後のバージョンで使用可能であった特徴または機能性が、そのソフトウェアアプリケーションの以前のバージョンで使用可能な機能性または使用可能な特徴と互換でない可能性があるプロパティを文書に適用する可能性がある。
【０００４】
平均的なユーザが出会う通常の問題に、異なるコンピューティングシステムから受け取ったファイルを開けないこと、ファイル劣化なしで異なるコンピューティングシステムで使用されることを意図されたファイルを保存できないこと、ファイルが作成または編集されたコンピューティングシステムと異なるコンピューティングシステムでファイルを消費する場合の視覚的なおよび内容の変化または消失、ならびにファイルが作成または編集されたコンピューティングシステムと異なるコンピューティングシステムでファイルの消費を試みる場合のプログラム的エラーが含まれる。これらの問題に対する以前の解決策は、ユーザが期待できる潜在的な問題のほとんどを軽減することができない。さらに、以前の解決策は、しばしば、ユーザがファイルの困ったコンポーネントを簡単に識別または修正できる位置にいない場合に展開される。そのような解決策の例に、互換性チェッカ、トランスレータ、およびコンバータが含まれる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
したがって、ファイルのよりよいクロスアプリケーションコラボレーションおよびクロスバージョンコラボレーションを容易にするために、コンピューティングシステムのソフトウェアアプリケーションおよびコンポーネントの制御を改善する方法およびシステムの必要がある。
【課題を解決するための手段】
【０００６】
本発明が作られたのは、これらおよび他の考慮事項に関する。
【０００７】
本発明の実施形態は、ファイルのクロスアプリケーションコラボレーションおよびクロスバージョンコラボレーションをよりよく容易にするために、オペレーティングシステム、ソフトウェアアプリケーション、およびソフトウェアアプリケーションの異なるバージョンを含むコンピューティングシステムの要素を制御する方法およびシステムを提供することによって、上記および他の問題を解決する。一般的にいえば、本発明の実施形態に従って、コンピューティングシステム内の要素、たとえば、オペレーティングシステム、アプリケーション、またはアプリケーションの特定のバージョンが再構成され、その結果、個々の要素が、それ以外は異なるコンピューティングシステムの既存ファイルと相互作用できるようになるか、あるいは、個々の要素が、それ以外は異なるコンピューティングシステムをターゲットとするファイルを生成できるようになる。
【０００８】
本発明の一実施形態によれば、コンピューティングシステムの所与の要素は、その要素が使用される際に、クロスアプリケーションコラボレーション問題またはクロスバージョンコラボレーション問題を引き起こす可能性がある、その要素から使用可能な機能性が、コンピューティングシステム要素の異なるタイプまたは異なるバージョン用のファイルの作成または編集に使用するのに使用不能にされるように制約される。この実施形態によれば、コンピューティングシステムの要素を、制約のスペクトルに従って制約することができ、ここで、スペクトルの一端で、アプリケーションまたは要素が、所与のファイルに対して編集機能を実行することを完全に禁止される。このスペクトルの他端で、アプリケーションまたは要素を構成または制約し、その結果、アプリケーションの特徴または機能性の特定のセットが、そのアプリケーションまたは要素のある特徴または機能性をイネーブルまたはディスエーブルするためにそのアプリケーションまたは要素に適用されるプロファイルに従ってディスエーブルされて、そのアプリケーションまたは要素と同一タイプの異なるアプリケーションまたは要素との間あるいは同一のアプリケーションまたは要素の異なるバージョンからのクロスアプリケーション問題またはクロスバージョン問題が防止されるようになる。
【０００９】
もう１つの実施形態によれば、コンピューティングシステムまたはコンピューティングシステムの要素を、所与のユーザまたはユーザのグループの一般的な必要に合わせて最適化された特定の形で構成することができるが、ファイルが、異なるコンピューティングシステムからのコンピューティングシステムに出会う場合に、第１コンピューティングシステムが、クロスアプリケーションコラボレーション問題またはクロスバージョンコラボレーション問題を避けるために、ファイルを消費するためにそれ自体の再構成を自動的に提供することができる。この実施形態によれば、１つまたは複数の互換性コンフィギュレーションを、ファイルの作成または編集に使用されるアプリケーションまたは要素によって、そのアプリケーションまたは要素を構成するためにロードして、クロスアプリケーション問題またはクロスバージョン問題を避けることができる。
【００１０】
もう１つの実施形態によれば、コンピューティングシステム要素が、クロスアプリケーション問題またはクロスバージョン問題を避けるために特徴および／または機能性制限のセットを用いて構成されたならば、コンピューティングシステム要素を、それでも、そのコンピューティングシステム要素に適用されたクロスアプリケーションコンフィギュレーションまたはクロスバージョンコンフィギュレーションを除去することによって、フルユーティリティに戻すことができる。
【００１１】
本発明の特性を表す上記および他の特徴および長所は、次の詳細な説明を読み、関連図面を再検討することから明白になる。前述の全般的な説明と次の詳細な説明の両方が、例示であり説明的であるのみであって、請求される発明の制限でないことを理解されたい。
【発明を実施するための最良の形態】
【００１２】
上で短く説明したように、本発明の実施形態は、コンピューティングシステムの要素、たとえば、オペレーティングシステム、ソフトウェアアプリケーション、またはソフトウェアアプリケーションの異なるバージョンを制御して、ファイルの改善されたクロスアプリケーションコラボレーションおよびクロスバージョンコラボレーションを容易にする方法およびシステムを対象とする。本発明の実施形態によれば、コンピューティングシステムの要素の特徴および／または機能性あるいは他のコンフィギュレーションを変更して、上の背景のセクションで示したように、通常は非互換のコンピューティングシステムまたは非互換のコンピュータシステム要素に関連するか同一のソフトウェアアプリケーションの異なるバージョンに関連する問題なしに、異なるコンピューティングシステム要素、異なるソフトウェアアプリケーション、または同一のソフトウェアアプリケーションの異なるバージョンがファイルまたは文書を受け取り、使用することを可能にする形で、コンピューティングシステムの所与の要素がファイルまたは文書を作成し、編集し、他の形で操作することを可能にすることができる。本発明の趣旨または範囲から逸脱せずに、これらの実施形態を組み合わせることができ、他の実施形態を利用することができ、構造的変更を行うことができる。したがって、次の詳細な説明は、制限的な意味で解釈されてはならず、本発明の範囲は、添付請求項およびその同等物によって定義される。
【００１３】
図面では、同一の符号が、複数の図面を通じて同一の要素を指すが、図面を参照して、本発明の諸態様および例示的オペレーティング環境を説明する。図１および次の議論は、本発明を実装できる適切なコンピューティング環境の短い全般的な説明を提供することを意図された図および議論である。本発明を、パーソナルコンピュータのオペレーティングシステムで動作するアプリケーションプログラムに関連して実行されるプログラムモジュールの全般的な文脈で説明するが、当業者は、本発明を他のプログラムモジュールと組み合わせて実装することもできることを諒解するであろう。
【００１４】
一般に、プログラムモジュールに、特定のタスクを実行するか特定の抽象データ型を実装する、ルーチン、プログラム、コンポーネント、データ構造、および他のタイプの構造が含まれる。さらに、当業者は、本発明を、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースのまたはプログラマブルなコンシューマエレクトロニクス、ミニコンピュータ、メインフレームコンピュータ、および類似物を含む他のコンピュータシステムコンフィギュレーションと共に実践できることを諒解するであろう。本発明は、通信ネットワークを介してリンクされたリモート処理デバイスによってタスクが実行される分散コンピューティング環境でも実践することができる。分散コンピューティング環境では、プログラムモジュールを、ローカルとリモートの両方のメモリストレージデバイスに置くことができる。
【００１５】
図１に移って、本発明のさまざまな実施形態を実践するパーソナルコンピュータ２の例示的なコンピュータアーキテクチャを説明する。図１に示されたコンピュータアーキテクチャに、中央処理ユニット４（「ＣＰＵ」）と、ランダムアクセスメモリ８（「ＲＡＭ」）および読取専用メモリ（「ＲＯＭ」）１０を含むシステムメモリ６と、メモリをＣＰＵ  ４に結合するシステムバス１２とを含む普通のパーソナルコンピュータが示されている。スタートアップ中などにコンピュータ内の要素の間で情報を転送するのを助ける基本ルーチンを含む基本入出力システムが、ＲＯＭ  １０に保管されている。パーソナルコンピュータ２に、さらに、オペレーティングシステム１６、アプリケーションプログラム１０５などのアプリケーションプログラム、およびデータを保管するためのマスストレージデバイス１４が含まれる。
【００１６】
マスストレージデバイス１４は、バス１２に接続されたマスストレージコントローラ（図示せず）を介してＣＰＵ  ４に接続される。マスストレージデバイス１４およびそれに関連するコンピュータ可読媒体は、パーソナルコンピュータ２に不揮発性ストレージを提供する。本明細書に含まれるコンピュータ可読媒体の説明で、ハードディスクまたはＣＤ−ＲＯＭドライブなどのマスストレージデバイスに言及するが、当業者は、コンピュータ可読媒体を、パーソナルコンピュータ２によってアクセスできるすべての使用可能な媒体とすることができることを諒解するであろう。
【００１７】
制限ではなく例として、コンピュータ可読媒体に、コンピュータ記憶媒体および通信媒体を含めることができる。コンピュータ記憶媒体に、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報を保管する任意の方法またはテクノロジで実施された、揮発性および不揮発性、リムーバブルおよびノンリムーバブルの媒体が含まれる。コンピュータ記憶媒体に、ＲＡＭ、ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ、および他のソリッドステートメモリテクノロジ、ＣＤ−ＲＯＭ、ＤＶＤ、または他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ、または他の磁気ストレージデバイス、あるいは所望の情報の保管に使用でき、コンピュータによってアクセスできる他のすべての媒体が含まれるが、これに制限はされない。
【００１８】
本発明のさまざまな実施形態によれば、パーソナルコンピュータ２は、インターネットなどのＴＣＰ／ＩＰネットワーク１８を介するリモートコンピュータへの論理接続を使用してネットワーク化された環境で動作することができる。パーソナルコンピュータ２は、バス１２に接続されたネットワークインターフェースユニット２０を介してＴＣＰ／ＩＰネットワーク１８に接続することができる。ネットワークインターフェースユニット２０を、他のタイプのネットワークおよびリモートコンピュータシステムへの接続に利用することもできることを諒解されたい。パーソナルコンピュータ２に、キーボードおよびマウス（図示せず）を含む複数のデバイスから入力を受け取り、処理するための入出力コントローラ２２も含めることができる。同様に、入出力コントローラ２２は、ディスプレイスクリーン、プリンタ、または他のタイプの出力デバイスに出力を供給することができる。
【００１９】
上で短く述べたように、米国ワシントン州レッドモンドのＭｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎ社のＷＩＮＤＯＷＳ（登録商標）オペレーティングシステムなど、ネットワーク化されたパーソナルコンピュータの動作を制御するのに適するオペレーティングシステム１６を含む複数のプログラムモジュールおよびデータファイルを、パーソナルコンピュータ２のマスストレージデバイス１４およびＲＡＭ  ８に保管することができる。マスストレージデバイス１４およびＲＡＭ  ８に、１つまたは複数のアプリケーションプログラムも保管することができる。具体的に言うと、マスストレージデバイス１４およびＲＡＭ  ８に、さまざまな機能性をユーザに与えるアプリケーションプログラム１０５を保管することができる。たとえば、アプリケーションプログラム１０５に、ワードプロセッシングアプリケーション、スプレッドシートアプリケーション、デスクトップパブリッシングアプリケーション、および類似物などの多数のタイプのプログラムを含めることができる。本発明の実施形態によれば、アプリケーションプログラム１０５に、複数の異なるソフトウェアアプリケーションからの機能性を与える複数機能性ソフトウェアアプリケーションスイートが含まれる。複数機能性アプリケーションスイート１０５を構成することができる個々のプログラムモジュールの一部に、ワードプロセッシングアプリケーション１２５、スライドプレゼンテーションアプリケーション１３５、スプレッドシートアプリケーション１４０、およびデータベースアプリケーション１４５が含まれる。そのような複数機能性アプリケーションスイート１０５の例が、Ｍｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎ社が製造するＯＦＦＩＣＥである。図１に示された他のソフトウェアアプリケーションに、電子メールアプリケーション１３０が含まれる。
【００２０】
本発明の実施形態によれば、所与のコンピューティングシステムの要素、たとえば、オペレーティングシステム、所与のソフトウェアアプリケーション、または所与のソフトウェアアプリケーションの特定のバージョンが、それ自体を構成し、その結果、これらが、それ以外では異なるシステムの既存ファイルと総合作用できるか、それ以外では異なるコンピューティングシステムをターゲットとするファイルを生成できるようになる。本発明の実施形態によるコンピューティングシステムの要素によって利用されるコンフィギュレーション変更に、ユーザインターフェース、特徴／機能性、アプリケーションプログラミングインターフェース（ＡＰＩ）セット、およびファイルフォーマットサポートを含むさまざまなレベルのコンフィギュレーション変更が含まれる。
【００２１】
本発明の一実施形態によれば、改善されたクロスアプリケーションコラボレーションまたはクロスバージョンコラボレーションに関するアプリケーションのコンフィギュレーションは、アプリケーションロード時に実行することができる。理解されるように、クロスアプリケーションコラボレーションに、同一タイプの２つの異なるアプリケーション、たとえば異なる会社によって製造された２つのワードプロセッシングアプリケーションの文書またはファイルに対するコラボレーションを含めることができる。クロスバージョンコラボレーションに、同一のソフトウェアアプリケーションの２つのバージョン（たとえば、２００３バージョン対２００４バージョン）の文書またはファイルに対するコラボレーションを含めることができる。
【００２２】
所与のアプリケーションがロードされる場合に、そのアプリケーションは、適当なコンフィギュレーションを選択し、第１のアプリケーションによって作成または編集される文書またはファイルが意図された異なるアプリケーションまたは同一のアプリケーションの異なるバージョンに関してこれらのコンフィギュレーションを適用することができる。たとえば、第１のアプリケーションに、第２のソフトウェア会社によって供給された第２ワードプロセッシングアプリケーションを操作する組織を対象とする文書の生成に使用される、第１のソフトウェア会社によって供給されたワードプロセッシングアプリケーションが含まれる場合に、この２つのソフトウェアアプリケーションの間の非互換性問題に関連するファイルまたは文書の劣化なしで第２ソフトウェアアプリケーションを操作する組織によって使用できる文書またはファイルを生成するために、第１ソフトウェアアプリケーションに関して互換性コンフィギュレーションが必要になる場合がある。たとえば、第１ソフトウェアアプリケーションが、第２ソフトウェアアプリケーションによって許容されないか使用可能でないフォーマッティング機能性を許容する場合がある。したがって、第１アプリケーションが第２ソフトウェアで使用されることを意図されたファイルの生成または編集に使用されている間に第１ソフトウェアアプリケーションによって供給される機能性をディスエーブルする互換性コンフィギュレーションのセットを構成し、第１アプリケーションに適用することができる。効果的に、所与の互換性コンフィギュレーションセッティングは、作成アプリケーションまたは編集アプリケーションがそれ以外は異なるか非互換のコンピューティングシステムまたはコンピューティングシステム要素での使用のための文書を作成するか編集することを可能にするために、文書またはファイルが意図されたコンピューティングシステム要素のプロファイルとして働く。
【００２３】
図２は、クロスアプリケーションコラボレーション問題またはクロスバージョンコラボレーション問題を防ぐためにアプリケーションロード時にコンピューティングシステム要素に互換性コンフィギュレーションをロードする本発明の方法およびシステムによって実行される例示的なステップを示す流れ図である。ブロック２１０で、第１アプリケーションを開始する。ブロック２１５で、第２アプリケーション用に意図された文書またはファイルを作成または編集するための第１アプリケーションの再構成のための互換性コンフィギュレーションを、第１アプリケーションにロードする。たとえば、第１アプリケーションが開始される場合に、機能性ボタンまたは機能性コントロールを、第１アプリケーションに関連するユーザインターフェース内に設けて、ユーザが、上で説明した例の第２ソフトウェアアプリケーションを含むさまざまな異なるアプリケーションに関連する使用のために第１アプリケーションを構成するための互換性コンフィギュレーションを選択することを可能にすることができる。本発明の一実施形態によれば、互換性コンフィギュレーションのリストを、アプリケーションロード時にユーザに供給することができ、プロンプトを供給して、ユーザに、使用可能な互換性コンフィギュレーションについて警告することができる。第１アプリケーションがそれのために構成される所望のアプリケーションの選択時に、その第２アプリケーションに関連する互換性コンフィギュレーションが、第１アプリケーションにロードされる。
【００２４】
アプリケーションがロードされ、特定の互換性コンフィギュレーションが選択された場合に、そのコンフィギュレーションを、さまざまなソースからとることができる。ブロック２２０に示されているように、互換性コンフィギュレーションの標準セットを第１アプリケーションに適用するために、グローバル互換性コンフィギュレーションを第１アプリケーションにセットすることができる。たとえば、グローバル互換性コンフィギュレーションを、組織内のすべてのコンピューティングシステムによって作成された文書またはファイルが、互換性コンフィギュレーションが必要な異なるコンピューティングシステムまたはコンピューティングシステム要素を操作する人または組織を対象とする場合に、セット互換性コンフィギュレーションに従って文書またはファイルを生成または編集するためにすべてのコンピューティングシステムを構成するために組織のコンピューティングシステム管理者によって決定されたコンフィギュレーションとすることができる。
【００２５】
その代わりに、ブロック２２５に示されているように、ローカル互換性コンフィギュレーションを第１アプリケーションに適用することができ、これによって、互換性コンフィギュレーションを、第１アプリケーションのエンドユーザによってカスタマイズ可能にすることができる。たとえば、ある組織の特定のユーザが、その人のローカルコンピューティングシステムで作成または編集される文書が、第１ソフトウェアアプリケーションと同一のタイプ（たとえば、ワードプロセッシングアプリケーション）の異なるソフトウェアアプリケーションを有するか同一ソフトウェアアプリケーションの異なるバージョンを操作する別のユーザによって利用されることを知っている場合に、ローカル互換性コンフィギュレーションを第１アプリケーションに適用することができ、これによって、第１アプリケーションのエンドユーザが、カスタマイズされた互換性コンフィギュレーションを第１アプリケーションにセットする。エンドユーザがセットできる互換性コンフィギュレーションのメニューを表示するためのユーザインターフェースボタンを設けることができる。たとえば、エンドユーザが、フォーマッティングオプションおよび類似物などの特定の機能性または特徴をディスエーブルすることを許可することができる。グローバル互換性コンフィギュレーションまたはローカル互換性コンフィギュレーションが、ブロック２１５でロードされたならば、ブロック２３０で、そのコンフィギュレーションをアプリケーションに適用し、このルーチンは、ブロック２３５で終了する。
【００２６】
図３を参照すると、コンピューティングシステム要素に適用される互換性コンフィギュレーションまたは互換性プロファイルは、コンピューティングシステム要素の特徴／機能性に対する単純な変更から非常に複雑なコンフィギュレーション変更の範囲にわたることができる。図３に示されているように、コンフィギュレーションスペクトルの単純な端３００では、たとえば所与のコンピューティングシステム要素によるすべての編集を許可しないなど、単純なコンフィギュレーションセッティングを適用することができる。このスペクトルの位置３１０では、非テキスト編集だけを許可しないという例のコンフィギュレーションが示されている。このスペクトルの位置３３０では、特徴ＡのユーザインターフェースコントロールＡ、Ｂ、およびＦをディスエーブルするが、特徴Ａオブジェクトモデルをイネーブルするコンフィギュレーションが示されている。このスペクトルの位置３３５では、特徴ＡのユーザインターフェースコントロールＡ、Ｂ、およびＦをディスエーブルするが、特徴Ａオブジェクトモデルをイネーブルし、特定のオンライン位置にあるコントロールＧプラグインを入手するコンフィギュレーションが示されている。理解されるように、図３に示されたコンフィギュレーションセッティングは、例示のみのためのコンフィギュレーションセッティングであり、コンピューティングシステム要素に適用できるさまざまな異なるコンフィギュレーションセッティングの制限ではない。
【００２７】
本発明のもう１つの実施形態によれば、編集または他の処理のための特定のファイルまたは文書のロードの際に、互換性コンフィギュレーションを、コンピューティングシステム要素、たとえば、ソフトウェアアプリケーション、ソフトウェアアプリケーションの特定のバージョン、オペレーティングシステム、および類似物に適用することができる。この実施形態によれば、特定の文書またはファイルが、所与のアプリケーションを使用して起動される場合に、互換性コンフィギュレーションをアプリケーションに適用し、その結果、その文書またはファイルに対して実行される編集または他の処理が、その文書またはファイルが意図された他のアプリケーションまたは同一のアプリケーションの他のバージョンと互換になるようにしなければならないことの判定を行うことができる。たとえば、ユーザが、あるソフトウェアアプリケーションの古いバージョンで生成されたファイルを、同一のソフトウェアアプリケーションの後のバージョンを使用して開くことを試みる場合に、そのユーザは、その文書またはファイルに対して行われる編集が、その文書またはファイルがそのソフトウェアアプリケーションの古いバージョンを使用して後に開かれる場合に互換性問題を起こさないようにするために、そのソフトウェアアプリケーションの後のバージョンに互換性コンフィギュレーションを適用することを望む可能性がある。
【００２８】
図４を参照すると、ブロック４０５で、使用中のアプリケーション（たとえば、後のバージョン）をロードする。ブロック４１０で、ユーザが、既存のファイルまたは文書を開く、あるいは新規のファイルまたは文書を開くなど、あるアクションを実行する。ユーザが、新規のファイルまたは文書を開く場合に、このルーチンは、ブロック４４５に進み、互換性コンフィギュレーションは、使用中のソフトウェアアプリケーションに適用されない。というのは、異なるソフトウェアアプリケーションによってまたは同一のソフトウェアアプリケーションの異なるバージョンによって生成されたか以前に編集された可能性がある既存の文書またはファイルが編集されていないからである。理解されるように、ユーザが、新規ファイルまたは新規文書が異なるアプリケーションまたは異なるアプリケーションバージョンによる使用のために生成されることを知っている場合に、そのユーザは、上で図２および３に関して説明したように、アプリケーションロード時にアプリケーションに互換性コンフィギュレーションを適用することができる。
【００２９】
さらに図４を参照すると、既存のファイルまたは文書が開かれてようとしている場合に、このルーチンは、ブロック４１５に進み、そのファイルまたは文書が関連する互換性コンフィギュレーションを有するかどうかに関する判定を行う。たとえば、その文書またはファイルが、上で図２および３に関して説明したように、その文書またはファイルが生成された時に互換性コンフィギュレーションが適用された別のアプリケーションによって生成されたかどうかに関する判定を行う。理解されるように、文書またはファイルの生成または編集に使用されたアプリケーションの属性（たとえば、アプリケーションタイプ、アプリケーション名、バージョン、互換性コンフィギュレーションなど）を識別するプロパティを、文書またはファイルに関連付けることができる。
【００３０】
文書が、特定の互換性コンフィギュレーションに関連付けられている場合には、このルーチンは、ブロック４２０に進み、ユーザに、現在使用されているコンピューティングシステム要素またはアプリケーションに同一の互換性コンフィギュレーションを使用するように促す。ユーザが、促された互換性コンフィギュレーションを利用することを望まない場合には、このルーチンは、ブロック４４５に進み、ユーザは、使用中のアプリケーションに関連する機能性／特徴コンフィギュレーションに従って文書またはファイルを編集することができる。ユーザが、提案された互換性コンフィギュレーションを適用することを望む場合には、このルーチンは、ブロック４２５に進み、提案された互換性コンフィギュレーションを、コンピューティングシステム要素またはアプリケーションに適用する。理解されるように、提案された互換性コンフィギュレーションは、ポップアップダイアログ、ドロップダウンメニュー、および類似物などのユーザインターフェース要素でユーザに与えることができる。その代わりに、特定の文書またはファイルが所与のアプリケーションで起動された場合に、その文書またはファイルの生成または編集に使用された以前のまたは他のアプリケーションに適用されたコンフィギュレーションに関してアプリケーションを構成するために、互換性コンフィギュレーションのリストを供給することができる。
【００３１】
ブロック４１５に戻って、文書またはファイルが、所与の互換性コンフィギュレーションを関連付けられていない場合に、このルーチンは、ブロック４３０に進み、その文書またはファイルが、使用中の同一のアプリケーションの異なるバージョンによって生成されたかどうかに関する判定を行う。そうでない場合には、このルーチンはブロック４４５に進み、ソフトウェアアプリケーションまたは他のコンピューティングシステム要素を、所与のまたはカスタマイズされた互換性コンフィギュレーションの適用なしで利用することができる。その文書またはファイルが、異なるバージョンのソフトウェアアプリケーションを使用して生成または編集されたと判定される場合には、このルーチンは、ブロック４３５に進み、ソフトウェアアプリケーションの異なるバージョンによる使用のために文書またはファイルを生成または編集するために使用中のソフトウェアアプリケーションを構成するのに使用可能な互換性コンフィギュレーションがあるかどうかに関する判定を行う。
【００３２】
互換性コンフィギュレーションが使用可能でない場合には、このルーチンは、ブロック４４５に進み、ユーザは、使用中のアプリケーションバージョンを用いる文書の生成または編集によって引き起こされる可能性がある潜在的な互換性問題にかまわずにその文書またはファイルに対する編集を継続することを決定することができる。コンフィギュレーションが使用可能である場合に、このルーチンは、ブロック４４０に進み、ユーザに、使用可能な互換性コンフィギュレーションをロードするように促すことができる。ユーザが、提案された互換性コンフィギュレーションを受け入れた場合に、このルーチンは、ブロック４２５に進み、提案された互換性コンフィギュレーションを使用中のアプリケーションに適用する。このルーチンは、その後、ブロック４４５に進み、再構成されたアプリケーションを、その文書またはファイルの編集に利用することができる。
【００３３】
いくつかの場合に、ユーザが、所与のコンピューティングシステム要素のコンフィギュレーションをアップグレートして、所与の要素の特徴または機能性に課せられた制約を除去し、または変更することを望む場合がある。あるいは、ユーザが、アプリケーションロード時にアプリケーションに適用されるコンフィギュレーションまたはロードされたファイルもしくは文書に関連するコンフィギュレーションを完全に除去することを望む場合がある。図５は、コンピューティングシステムの要素に適用されたクロスアプリケーションコンフィギュレーションまたはクロスバージョンコンフィギュレーションをアップグレードするために本発明の方法およびシステムによって実行されるステップを示す流れ図である。図５を参照すると、ユーザは、文書開始時またはアプリケーションロード時のコンフィギュレーションをアップグレードまたは除去することができる。
【００３４】
ブロック５０５で、特定の文書またはファイルがロードされる場合、またはアプリケーションがロードまたは起動される場合に、このルーチンは、ブロック５１０に進む。ブロック５１０で、たとえば文書またはファイルへの適用のための特徴または機能性の選択など、ユーザ入力を受け取る。ユーザによって選択された特徴または機能性が、適用された互換性コンフィギュレーションによって制約されていない場合に、このルーチンは、ブロック５１０にループバックし、後続のユーザ入力を受け取る。ユーザによって選択された特徴が、適用された互換性コンフィギュレーションによって制約されている場合に、このルーチンは、ブロック５１５に進み、アプリケーションに適用された互換性コンフィギュレーションをユーザがアップグレードできるようにし、その結果、ユーザが所望の特徴または機能性を実際に使用できるようにするために、プロンプトをユーザに与えることができる。すなわち、選択された特徴または機能性の使用を許可しない、以前に適用された互換性コンフィギュレーションを変更でき、その結果、互換性コンフィギュレーションをアップグレードして、そうでなければ制約された特徴の選択および使用を可能にすることができる。
【００３５】
ユーザが、選択された特徴または機能性の使用を可能にするために互換性コンフィギュレーションのアップグレードを行わないと決定した場合に、このルーチンは、次のユーザ入力のためにブロック５１０に戻る。その一方で、ユーザが、選択された特徴または機能性の使用を可能にするために互換性コンフィギュレーションをアップグレードすると決定した場合に、このルーチンは、ブロック５２０に進み、新しい互換性コンフィギュレーションを使用中のソフトウェアアプリケーションに適用して、所望の特徴または機能性の選択および使用を可能にする。このルーチンは、ブロック５３０で終了する。
【００３６】
本明細書で説明したように、ファイルおよび文書の改善されたクロスアプリケーションコラボレーションまたはクロスバージョンコラボレーションを容易にするためにコンピューティングシステム要素を制御する方法およびシステムが提供される。本発明の範囲および趣旨から逸脱せずに、本発明においてさまざまな修正形態および変形形態を作ることができることは、当業者に明白である。本発明の他の実施形態は、本明細書に開示された本発明の仕様の考慮および実践から、当業者に明白になる。
【図面の簡単な説明】
【００３７】
【図１】本発明の実施形態の例示的なオペレーティング環境を提供するパーソナルコンピュータのアーキテクチャを示すブロック図である。
【図２】本発明の実施形態による、クロスアプリケーション問題またはクロスバージョン問題を防ぐためにコンピューティングシステム要素に互換性コンフィギュレーションをロードする本発明の方法およびシステムによって実行される例示的なステップを示す流れ図である。
【図３】本発明の実施形態による、クロスアプリケーション問題またはクロスバージョン問題を防ぐためにコンピューティングシステム要素に適用可能なコンフィギュレーション変更のスペクトルを示す図である。
【図４】本発明の実施形態による、ファイルが作成または編集のためにコンピューティングシステム要素によってロードされる場合にコンピューティングシステム要素にクロスアプリケーションコンフィギュレーションまたはクロスバージョンコンフィギュレーションを適用するために本発明の方法およびシステムによって実行されるステップを示す流れ図である。
【図５】本発明の実施形態による、コンピューティングシステムの要素に適用されたクロスアプリケーションコンフィギュレーションまたはクロスバージョンコンフィギュレーションをアップグレードするために本発明の方法およびシステムによって実行されるステップを示す流れ図である。
【符号の説明】
【００３８】
４  中央処理ユニット
１８  ＴＣＰ／ＩＰネットワーク
２０  ネットワークインターフェースユニット
２２  入出力コントローラ
６  システムメモリ
８  ランダムアクセスメモリ
１０  読取専用メモリ
１６  オペレーティングシステム
１０５  アプリケーションプログラム
１２５  ワードプロセッシングアプリケーション
１３０  電子メールアプリケーション
１４  マスストレージデバイス
１３５  スライドプレゼンテーションアプリケーション
１４０  スプレッドシートアプリケーション
１４５  データベースアプリケーション
【図１】
2006178953.tif 000003
【図２】
2006178953.tif 000004
【図３】
2006178953.tif 000005
【図４】
2006178953.tif 000006
【図５】
2006178953.tif 000007