(57)【特許請求の範囲】
【請求項１】
アプリケーションを構成するために、コンピュータによって実行される方法であって、
アプリケーションの機能に影響を及ぼす１つ以上の設定を行うために、ユーザにユーザインターフェースを提供するステップを備え、前記ユーザインターフェースは、前記１つ以上の設定が前記ユーザによって操作されることを可能にし、前記１つ以上の設定が第三者エンティティからの設定データに基づいて行われることを可能にし、前記方法は、さらに、
前記エンティティからの前記設定データに基づいて前記１つ以上の設定の少なくとも一部を行うために、前記ユーザからの入力を受取るステップと、
前記エンティティからの前記設定データが前記１つ以上の設定の前記少なくとも一部を含むことを特定するステップと、
前記エンティティからの前記設定データに基づいて前記１つ以上の設定の前記少なくとも一部を行うステップと、
前記エンティティの前記設定データが変化したときに前記１つ以上の設定の前記少なくとも一部を自動的に更新するステップを備える、方法。
【請求項２】
前記１つ以上の設定の前記少なくとも一部は、１つ以上のプライバシ設定を備える、請求項１に記載の方法。
【請求項３】
前記エンティティからの前記設定データを用いて前記１つ以上の設定の前記少なくとも一部を行うステップは、前記設定データを前記１つ以上の設定の前記少なくとも一部にコピーするステップを備える、請求項１または２に記載の方法。
【請求項４】
前記１つ以上の設定の前記少なくとも一部を自動的に更新するステップは、前記更新に関連付けられる承認を前記ユーザから受取った後に実行される、請求項３に記載の方法。
【請求項５】
前記ユーザではない別のエンティティからの設定データを用いて前記１つ以上の設定の別の部分を行うことを示す別の入力を前記ユーザから受取るステップと、
前記別のエンティティからの前記設定データが前記１つ以上の設定の前記別の部分を含むことを特定するステップと、
前記別のエンティティからの前記設定データを用いて前記１つ以上の設定の前記別の部分を行うステップとをさらに備える、請求項１から４のいずれか１項に記載の方法。
【請求項６】
前記エンティティからの前記設定データは、オンラインマーケットプレイスから受取られ、前記オンラインマーケットプレイスから、前記エンティティ以外の他のエンティティからの設定データを受取ることができ、前記他のエンティティは、前記ユーザではない、請求項１から５のいずれか１項に記載の方法。
【請求項７】
前記エンティティからの前記設定データは、前記ユーザの信頼を得たエンティティによってデジタル署名される、請求項１から６のいずれか１項に記載の方法。
【請求項８】
コンピュータによって実行可能な命令を含むコンピュータ読取可能なプログラムであって、前記コンピュータによって実行可能な命令は、
アプリケーションの機能に影響を及ぼす１つ以上の設定を行うために、ユーザにユーザインターフェースを提供するための命令を含み、前記ユーザインターフェースは、前記１つ以上の設定が前記ユーザによって操作されることを可能にし、前記１つ以上の設定が第三者エンティティからの設定データに基づいて行われることを可能にし、前記コンピュータによって実行可能な命令は、さらに、
前記エンティティからの前記設定データに基づいて前記１つ以上の設定の少なくとも一部を行うために、前記ユーザからの入力を受取るための命令と、
前記エンティティからの前記設定データが前記１つ以上の設定の前記少なくとも一部を含むことを特定するための命令と、
前記エンティティからの前記設定データに基づいて前記１つ以上の設定の前記少なくとも一部を行うための命令と、
前記エンティティの前記設定データが変化したときに前記１つ以上の設定の前記少なくとも一部を自動的に更新するためのさらなるコンピュータによって実行可能な命令を備える、コンピュータ読取可能なプログラム。
【請求項９】
前記１つ以上の設定の前記少なくとも一部は、１つ以上のプライバシ設定を備える、請求項８に記載のコンピュータ読取可能なプログラム。
【請求項１０】
前記１つ以上の設定の前記少なくとも一部を自動的に更新するための命令は、前記更新に関連付けられる承認を前記ユーザから受取った後に実行される、請求項８または９に記載のコンピュータ読取可能なプログラム。
【請求項１１】
前記コンピュータによって実行可能な命令は、さらに、
前記ユーザではない別のエンティティからの設定データを用いて前記１つ以上の設定の別の部分を行うことを示す別の入力を前記ユーザから受取るための命令、
前記別のエンティティからの前記設定データが前記１つ以上の設定の前記別の部分を含むことを特定するための命令、および
前記別のエンティティからの前記設定データを用いて前記１つ以上の設定の前記別の部分を行うための命令を備える、請求項８から１０のいずれか１項に記載のコンピュータ読取可能なプログラム。
【請求項１２】
記憶装置とプロセッサとを備える少なくとも１つのコンピュータ装置であって、前記プロセッサは、
アプリケーションの機能に影響を及ぼす１つ以上の設定を行うために、ユーザにユーザインターフェースを提供することを実行する手段を備え、前記ユーザインターフェースは、前記１つ以上の設定が前記ユーザによって操作されることを可能にし、前記１つ以上の設定が第三者エンティティからの設定データに基づいて行われることを可能にし、前記プロセッサは、さらに、
前記エンティティからの前記設定データに基づいて前記１つ以上の設定の少なくとも一部を行うために、前記ユーザからの入力を受取る手段と、
前記エンティティからの前記設定データが前記１つ以上の設定の前記少なくとも一部を含むことを特定する手段と、
前記エンティティからの前記設定データに基づいて前記１つ以上の設定の前記少なくとも一部を行う手段と、
前記エンティティの前記設定データが変化したときに前記１つ以上の設定の前記少なくとも一部を自動的に更新する手段を備える、少なくとも１つのコンピュータ装置。
【請求項１３】
前記１つ以上の設定の前記少なくとも一部は、１つ以上のプライバシ設定を備える、請求項１２に記載の少なくとも１つのコンピュータ装置。
【請求項１４】
前記エンティティからの前記設定データを用いて前記１つ以上の設定の前記少なくとも一部を行う手段は、前記設定データを前記１つ以上の設定の前記少なくとも一部にコピーする手段を備える、請求項１２または１３に記載の少なくとも１つのコンピュータ装置。
【請求項１５】
前記１つ以上の設定の前記少なくとも一部を自動的に更新する手段は、前記更新に関連付けられる承認を前記ユーザから受取った後に当該更新を実行する、請求項１２から１４のいずれか１項に記載の少なくとも１つのコンピュータ装置。
【請求項１６】
前記プロセッサは、
前記ユーザではない別のエンティティからの設定データを用いて前記１つ以上の設定の別の部分を行うことを示す別の入力を前記ユーザから受取る手段と、
前記別のエンティティからの前記設定データが前記１つ以上の設定の前記別の部分を含むことを特定する手段と、
前記別のエンティティからの前記設定データを用いて前記１つ以上の設定の前記別の部分を行う手段と、をさらに備える、請求項１２から１５のいずれか１項に記載の少なくとも１つのコンピュータ装置。
【請求項１７】
前記エンティティからの前記設定データは、オンラインマーケットプレイスから受取られ、前記オンラインマーケットプレイスから、前記エンティティ以外の他のエンティティからの設定データを受取ることができ、前記他のエンティティは、前記ユーザではない、請求項１２から１６のいずれか１項に記載の少なくとも１つのコンピュータ装置。
【請求項１８】
アプリケーションを構成するために、コンピュータによって実行される方法であって、
アプリケーションの機能に影響を及ぼす１つ以上の設定を行うために、ユーザにユーザインターフェースを提供するステップを備え、前記ユーザインターフェースは、前記１つ以上の設定が前記ユーザによって操作されることを可能にし、前記１つ以上の設定が第三者エンティティからの設定データに基づいて行われることを可能にし、前記方法は、さらに、
前記エンティティからの前記設定データに基づいて前記１つ以上の設定の少なくとも一部を行うために、前記ユーザからの入力を受取るステップと、
前記エンティティからの前記設定データが前記１つ以上の設定の前記少なくとも一部を含むことを特定するステップと、
前記エンティティからの前記設定データに基づいて前記１つ以上の設定の前記少なくとも一部を行うステップと、
前記ユーザではない別のエンティティからの設定データを用いて前記１つ以上の設定の別の部分を行うことを示す別の入力を前記ユーザから受取るステップと、
前記別のエンティティからの前記設定データが前記１つ以上の設定の前記別の部分を含むことを特定するステップと、
前記別のエンティティからの前記設定データを用いて前記１つ以上の設定の前記別の部分を行うステップと、を備える、方法。
【請求項１９】
前記１つ以上の設定の前記少なくとも一部は、１つ以上のプライバシ設定を備える、請求項１８に記載の方法。
【請求項２０】
前記エンティティからの前記設定データを用いて前記１つ以上の設定の前記少なくとも一部を行うステップは、前記設定データを前記１つ以上の設定の前記少なくとも一部にコピーするステップを備える、請求項１８または１９に記載の方法。
【請求項２１】
前記エンティティの前記設定データが変化したときに前記１つ以上の設定の前記少なくとも一部を自動的に更新するステップをさらに備える、請求項１８から２０のいずれか１項に記載の方法。
【請求項２２】
前記１つ以上の設定の前記少なくとも一部を自動的に更新するステップは、前記更新に関連付けられる承認を前記ユーザから受取った後に実行される、請求項２１に記載の方法。
【請求項２３】
前記エンティティからの前記設定データは、オンラインマーケットプレイスから受取られ、前記オンラインマーケットプレイスから、前記エンティティ以外の他のエンティティからの設定データを受取ることができ、前記他のエンティティは、前記ユーザではない、請求項１８から２２のいずれか１項に記載の方法。
【請求項２４】
前記エンティティからの前記設定データは、前記ユーザの信頼を得たエンティティによってデジタル署名される、請求項１８から２３のいずれか１項に記載の方法。
【請求項２５】
コンピュータによって実行可能な命令を含むコンピュータ読取可能なプログラムであって、前記コンピュータによって実行可能な命令は、
アプリケーションの機能に影響を及ぼす１つ以上の設定を行うために、ユーザにユーザインターフェースを提供するための命令を含み、前記ユーザインターフェースは、前記１つ以上の設定が前記ユーザによって操作されることを可能にし、前記１つ以上の設定が第三者エンティティからの設定データに基づいて行われることを可能にし、前記コンピュータによって実行可能な命令は、さらに、
前記エンティティからの前記設定データに基づいて前記１つ以上の設定の少なくとも一部を行うために、前記ユーザからの入力を受取るための命令と、
前記エンティティからの前記設定データが前記１つ以上の設定の前記少なくとも一部を含むことを特定するための命令と、
前記エンティティからの前記設定データに基づいて前記１つ以上の設定の前記少なくとも一部を行うための命令と、
前記ユーザではない別のエンティティからの設定データを用いて前記１つ以上の設定の別の部分を行うことを示す別の入力を前記ユーザから受取るための命令と、
前記別のエンティティからの前記設定データが前記１つ以上の設定の前記別の部分を含むことを特定するための命令と、
前記別のエンティティからの前記設定データを用いて前記１つ以上の設定の前記別の部分を行うための命令と、を備える、コンピュータ読取可能なプログラム。
【請求項２６】
前記１つ以上の設定の前記少なくとも一部は、１つ以上のプライバシ設定を備える、請求項２５に記載のコンピュータ読取可能なプログラム。
【請求項２７】
前記エンティティの前記設定データが変化したときに前記１つ以上の設定の前記少なくとも一部を自動的に更新するためのさらなるコンピュータによって実行可能な命令を備える、請求項２５または２６に記載のコンピュータ読取可能なプログラム。
【請求項２８】
前記１つ以上の設定の前記少なくとも一部を自動的に更新するための命令は、前記更新に関連付けられる承認を前記ユーザから受取った後に実行される、請求項２７に記載のコンピュータ読取可能なプログラム。
【請求項２９】
記憶装置とプロセッサとを備える少なくとも１つのコンピュータ装置であって、前記プロセッサは、
アプリケーションの機能に影響を及ぼす１つ以上の設定を行うために、ユーザにユーザインターフェースを提供することを実行する手段を備え、前記ユーザインターフェースは、前記１つ以上の設定が前記ユーザによって操作されることを可能にし、前記１つ以上の設定が第三者エンティティからの設定データに基づいて行われることを可能にし、前記プロセッサは、さらに、
前記エンティティからの前記設定データに基づいて前記１つ以上の設定の少なくとも一部を行うために、前記ユーザからの入力を受取る手段と、
前記エンティティからの前記設定データが前記１つ以上の設定の前記少なくとも一部を含むことを特定する手段と、
前記エンティティからの前記設定データに基づいて前記１つ以上の設定の前記少なくとも一部を行う手段と、
前記ユーザではない別のエンティティからの設定データを用いて前記１つ以上の設定の別の部分を行うことを示す別の入力を前記ユーザから受取る手段と、
前記別のエンティティからの前記設定データが前記１つ以上の設定の前記別の部分を含むことを特定する手段と、
前記別のエンティティからの前記設定データを用いて前記１つ以上の設定の前記別の部分を行う手段と、を備える、少なくとも１つのコンピュータ装置。
【請求項３０】
前記１つ以上の設定の前記少なくとも一部は、１つ以上のプライバシ設定を備える、請求項２９に記載の少なくとも１つのコンピュータ装置。
【請求項３１】
前記エンティティからの前記設定データを用いて前記１つ以上の設定の前記少なくとも一部を行う手段は、前記設定データを前記１つ以上の設定の前記少なくとも一部にコピーする手段を備える、請求項２９または３０に記載の少なくとも１つのコンピュータ装置。
【請求項３２】
前記プロセッサは、
前記エンティティの前記設定データが変化したときに前記１つ以上の設定の前記少なくとも一部を自動的に更新する手段をさらに備える、請求項２９から３１のいずれか１項に記載の少なくとも１つのコンピュータ装置。
【請求項３３】
前記１つ以上の設定の前記少なくとも一部を自動的に更新する手段は、前記更新に関連付けられる承認を前記ユーザから受取った後に当該更新を実行する、請求項３２に記載の少なくとも１つのコンピュータ装置。
【請求項３４】
前記エンティティからの前記設定データは、オンラインマーケットプレイスから受取られ、前記オンラインマーケットプレイスから、前記エンティティ以外の他のエンティティからの設定データを受取ることができ、前記他のエンティティは、前記ユーザではない、請求項２９から３３のいずれか１項に記載の少なくとも１つのコンピュータ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
背景
分野
本明細書に記載されている主題は、一般にソフトウェアアプリケーションに関し、より特定的には外部ソースを用いたユーザ設定管理に関する。
【背景技術】
【０００２】
関連背景
全てではないが大部分のウェブベースのアプリケーションおよび装置ベースのアプリケーション（例えば、コンピュータ、マシンなどのモバイル機器および非モバイル機器で実行されるアプリケーション）は、ユーザがパラメータまたは設定を用いてアプリケーションを構成することができるように設計されている。例えば、アプリケーションは、（例えば、ボックスにチェックを入れることによって、または「イエス」を入力することによって）ワイファイネットワークが利用可能である場合にアプリケーションを自動的にワイファイネットワークに接続することをユーザであるアリスが好むか、（例えば、ボックスにチェックを入れないままにすることによって、または「ノー」を入力することによって）アリスに手動で接続を開始させるか、をアリスがアプリケーションにセットするすなわち「教える」ことができるようにするための設定（例えば、「ワイファイネットワークへの自動接続」）を使用することができる。アプリケーションまたは別のアプリケーションは、「アリス」としてオンラインプラットフォームにコメントを提供するか、「匿名」としてオンラインプラットフォームにコメントを提供するか、などのプライバシプリファレンスをアリスが示すことができるようにするための設定（例えば、「匿名のコメンタ」）を使用することができる。
【０００３】
一般に、ユーザは、２つ以上の装置で多くのアプリケーションまたは製品を使用し、アプリケーションの多くは、インターネットに接続される。多くのユーザは、アプリケーションの設定を有意義に行うことができるレベルでアプリケーションおよびその機能を認識することはないかもしれない。しかし、ユーザは、複数のドメインにまたがる多くのアプリケーションの設定を行うことを決断しなければならない。これらの決断は、短期的および長期的な影響を与える可能性がある。
【０００４】
多くの場合、アプリケーションまたは製品ではユーザ設定について多数の異なるオプションがある。これらの設定の各々は、製品の動作の仕方をユニークに変化させる。ユーザ、特にソフトウェアプログラミングの経験がないユーザの中には、１つ以上の所与の設定が所望の経験を有するようにするために当該設定についてどのオプションを選択すべきか分かるのに非常に苦労する者もいる。さらに、これらの設定オプションの多くは、場当たり的に（例えば、アプリケーションの更新によって）追加および除去される。その結果、ユーザは、所望の設定が有効なままであることを確実にするために設定を絶えず「監視」していなければならない。
【発明の概要】
【課題を解決するための手段】
【０００５】
概要
主題は、外部ソースを用いたユーザ設定管理のための方法を含み、当該方法は、アプリケーションの機能に影響を及ぼす１つ以上の設定を行うために、ユーザにユーザインターフェースを提供するステップを含み、ユーザインターフェースは、１つ以上の設定がユーザによって操作されることを可能にし、１つ以上の設定が第三者エンティティからの設定データに基づいて行われることを可能にし、当該方法はさらに、エンティティからの設定データに基づいて１つ以上の設定の少なくとも一部を行うようにするために、ユーザからの入力を受取るステップと、エンティティからの設定データが１つ以上の設定の少なくとも一部を含むことを特定するステップと、エンティティからの設定データに基づいて１つ以上の設定の少なくとも一部を行うステップとを含む。
【０００６】
当該方法は、１つ以上のコンピュータ装置および／またはシステムを用いて実現される。当該方法は、コンピュータ読取可能な媒体に格納されてもよい。
【図面の簡単な説明】
【０００７】
【図１】いくつかの例示的な実現例に係る例示的なアプリケーション環境を示す。
【図２Ａ】例示的な設定使用アプリケーション（setting using application：ＳＵＡ）を示す。
【図２Ｂ】例示的な設定プロバイダを示す。
【図３】いくつかの例示的な実現例に係る別の例示的なアプリケーション環境を示す。
【図４Ａ】別の例示的な設定使用アプリケーション（ＳＵＡ）を示す。
【図４Ｂ】図４ＡのＳＵＡの例示的な変形例を示す。
【図５Ａ】ソースへのアプリケーション設定の例示的なマッピングを示す。
【図５Ｂ】例示的な設定データを示す。
【図５Ｃ】別の例示的な設定データを示す。
【図６】プロセス実現例の一例を示す。
【図７】いくつかの実現例に適した例示的な環境を示す。
【図８】いくつかの実現例での使用に適した例示的なコンピュータ装置を有する例示的な計算環境を示す。
【発明を実施するための形態】
【０００８】
詳細な説明
本明細書に記載されている主題は、例示的な実現例によって教示される。明確にするため、および、主題を曖昧にすることを回避するために、さまざまな詳細は省略されている。以下に示される例は、外部ソースを用いたユーザ設定管理を実行するための構造および機能に向けられる。
【０００９】
図１は、いくつかの例示的な実現例に係る例示的なアプリケーション環境を示す。環境１００は、パラメータ、設定、スイッチまたは他のプリファレンスインジケータ（設定と総称される）を用いて構成可能またはカスタマイズ可能な多数のアプリケーションを含み得る。これらのアプリケーションは、設定使用アプリケーション１１０（または、ＳＵＡ１１０）と呼ぶことができる。
【００１０】
「アプリケーション」または「ａｐｐ」は、装置（装置ベースのアプリケーション）上でコンピュータ読取可能な命令を実行する任意のソフトウェアであってもよく、システムまたはサーバ（例えば、ａｐｐサーバまたはウェブサーバ）から提供されて装置を用いてアクセスされるオンライン製品またはサービスであってもよい。アプリケーションまたはａｐｐは、「製品」または「サービス」と呼ぶこともできる。アプリケーションに対する基本的なサポートは、ハードウェアであり、ハードウェアは、任意の種類の少なくとも１つのプロセッサ、メモリ、および／または記憶装置、例えば非一時的なコンピュータ読取可能な媒体を含む。
【００１１】
設定使用アプリケーション１１０は、ユーザによって手動で構成されてもよい。手動での構成に加えて、および／または、手動での構成の代わりに、ＳＵＡ１１０は、第三者サービスおよび／またはデータを用いて構成されてもよい。環境１００は、設定サービスおよび／またはデータを提供する多数の第三者エンティティ（例えば、設定プロバイダ１２０）を含み得る。
【００１２】
本明細書における「第三者」または「第三者エンティティ」は、ＳＵＡのユーザではなく、かつ、ＳＵＡのプロバイダではない人、組織、企業（エンティティと総称される）を指す。例えば、設定プロバイダＡ１２０がＳＵＡ  Ａ１１０も提供するが、ＳＵＡ  Ｂ１１０を提供しない場合、設定プロバイダＡ１２０は、ＳＵＡ  Ｂ１１０に対する第三者であると考えられる。設定プロバイダＡ１２０は、第二者であるがＳＵＡ  Ａ１１０に対する第三者ではないと考えられる。
【００１３】
環境１００において、ＳＵＡ  Ｂ１１０のユーザ（第一者）は、設定プロバイダ１２０（第三者または第三者エンティティ）によって提供されるサービスおよび／またはデータを用いて、ＳＵＡ  Ｂ１１０（ＳＵＡ  Ｂ１１０のプロバイダは、第二者である）のいくつかまたは全ての設定を行うことができる。
【００１４】
図２Ａは、例示的な設定使用アプリケーション（ＳＵＡ）を示す。例えば、ＳＵＡ２００は、ゴルフをすることに関連するアプリケーション（例えば、「Ｇｏｌｆ２Ｘ」）であってもよい。プロファイルおよびプライバシを管理するための例示的なユーザインターフェースを介して示されるＳＵＡ２００は、ウェブベースのアプリケーション（例えば、ウェブブラウザを用いてアクセスされる製品、サービスまたはアプリケーション）であってもよく、または装置ベースのアプリケーション（例えば、モバイル機器などのコンピュータ装置で実行されるアプリケーション）であってもよい。ＳＵＡ２００またはＧｏｌｆ２Ｘは、１人のユーザまたは２人以上のユーザを可能にするアプリケーションであってもよい。
【００１５】
各ユーザは、ユーザのためのアプリケーションを構成またはカスタマイズするために１つ以上の設定を使用することができる。例えば、ユーザであるアリスおよびボブは、同一の装置またはウェブサイト上のＳＵＡ２００のユーザであってもよい。ＳＵＡ２００の外観（例えば、アプリケーションの「スキン」）の構成、（例えば、音を鳴らすまたはメッセージをポップアップすることによって）ＳＵＡ２００がいかにイベントまたは状況の発生をアリスに通知するか、利用データおよび／または利用履歴をどれぐらいの期間保管するかなどの、ＳＵＡ２００の機能および／またはオペレーションを構成するために、アリスは設定を使用することができる。また、アリスは、プライバシプリファレンスのパラメータをセットするために設定を使用することができる。これらの設定は、プライバシ設定と呼ぶことができる。
【００１６】
プライバシ設定は、ユーザとしてのアリスに関連するまたは影響を及ぼす任意の設定である。プライバシ設定のいくつかの例としては、ユーザが自分自身を他のユーザから隔離することを可能にする設定、ユーザがオンラインコミュニティまたは環境への露出を制御することを可能にする設定、ユーザがユーザ自身についての情報を制御することを可能にする設定、ユーザがどのような情報を受取りたいかおよび／またはどのような情報を共有もしくは送信したいかを制御することを可能にする設定、誰がユーザと接触してユーザの存在を確かめるかをユーザが制御すること可能にする設定、ユーザが他のユーザに情報を送ることを可能にする設定、および／または、ユーザが他のユーザと情報を共有することを可能にする設定が挙げられるが、本明細書に記載されている例に限定されるものではない。
【００１７】
例示的な実現例によれば、ボブは、ボブのプリファレンスに従ってアプリケーションをカスタマイズするようにＳＵＡ２００を構成するために設定を使用することができる。ユーザ（例えば、アリスまたはボブ）は、ユーザを識別する「アカウント」を有し得る。どのユーザがアプリケーションを使用しているかをＳＵＡ２００が検出または特定すると、当該ユーザの設定を使用して、ユーザのプリファレンスに従ってアプリケーションが「カスタマイズ」される。
【００１８】
設定のうちのいくつかまたは全ては、第三者エンティティであり得る設定プロバイダなどの外部ソースを用いて構成され得る。例えば、図２Ａに示されるように、アリスは、外部ソースを特定して、外部ソースによって提供される設定をアップロードするための「アップロード設定」オプション２１０をユーザインターフェースに備えていてもよい。アップロード設定２１０は、外部ソースのリスト（図示せず）を提供してもよく、または、アリスが外部ソースを入力するための入力ボックス（例えば、外部ソースのユニバーサルリソースロケータ（Universal Resource Locator：ＵＲＬ））を提供してもよい。外部ソースは、ＳＵＡ２００によって使用される設定データまたは情報を提供して、当該設定データに基づいてその設定を自動的に行うことができる。例えば、（例えば、拡張マークアップ言語（Extensible Markup Language：ＸＭＬ）の形態の）外部ソースからの設定データは、どの設定がどの値、パラメータまたはオプションにセットされるかを特定することができる。以下でより詳細に説明する図５Ｂおよび図５Ｃは、設定データの例を示している。
【００１９】
引き続き図２Ａを参照して、外部ソースを特定した後、または外部ソースから設定データをアップロードした後、外部ソース２２０および２２５などの外部ソースは、履歴としてまたは後で参照できるように保持され得る。いつ外部ソースが最後にアップロード、更新または使用されたかを示すために、日付のタイムスタンプが表示されてもよい。ＳＵＡ２００は、アリスがＳＵＡ２００のデフォルト設定を使用するためのオプション２３０を含み得る。アリスは、例えば外部ソース２２０によって提供される設定データ（例えば、設定プロバイダＥＦＧからのプライバシ設定データのバージョン２．０）を用いてプライバシ設定を行うことを選択することができる。アリスの選択は、例えば選択されたソースの近くにチェックマークを表示することによって示されてもよい。アリスのプライバシ設定は、例えばＳＵＡ２００が外部ソース２００からＳＵＡ２００のプライバシ設定に設定データをコピーすることによって行われてもよい。
【００２０】
図２Ｂは、例示的な設定プロバイダを示す。設定プロバイダ２５０は、プロバイダによって提供される設定をダウンロードするなど、当該設定にアクセスするために使用されるユーザインターフェースを介して表示される。設定プロバイダ２５０は、ＳＵＡ（例えば、ＳＵＡ２００）に対する外部ソースである。設定プロバイダ２５０は、ＳＵＡ２００に対する第三者エンティティであってもよい（すなわち、設定プロバイダ２５０を所有および／または制御するビジネスエンティティは、ＳＵＡ２００を提供しない）。図２Ａでは、設定データは、ＳＵＡ２００から直接抽出され得る。図２Ｂは、例えば設定データをアプリケーション（例えば、ＳＵＡ２００）にダウンロードするために外部ソースを訪問することによって外部ソースから設定データを抽出するための別の例示的な方法を示す。設定データは、任意の方法を用いて抽出され得る。別のこのような例示的な実現例が図３に示されており、以下でより詳細に説明する。
【００２１】
図３は、いくつかの例示的な実現例に係る別の例示的なアプリケーション環境を示す。環境３００において、ＳＵＡ１１０は、１つ以上のマーケットプレイス３３０などの１つ以上の仲介役を介して１つ以上の設定プロバイダ１２０によって提供される設定データを用いて構成され得る。
【００２２】
マーケットプレイス３３０は、ユーザおよび組織がそれらの設定を（例えば、設定データとして）インポートおよびエクスポートすることを可能にする。例えば、マーケットプレイス３３０は、さまざまな個人の集団の信頼を得た組織またはユーザが、提案された設定データを（例えば、設定ファイルまたは構成ファイルとして）アップロードすることを可能にする。これらの信頼を得た組織またはユーザは、設定プロバイダ１２０として、設定データを１つ以上のマーケットプレイス３３０に提供またはアップロードすることができる。マーケットプレイスは、プライバシ設定などのアプリケーション設定をすることについて、ユーザが信頼している組織および／またはユーザの専門知識を頼りにすることを手助けする。
【００２３】
いくつかの例示的な実現例では、マーケットプレイスは、ユーザが、設定コメンテータ３４０として、マーケットプレイスにおける設定または構成をレビューして、それらの設定または構成に対してコメントおよび／または評点を提供することを可能にする。設定コメンテータ３４０は、マーケットプレイスを介して提供される設定構成またはデータに対してコメントおよび／または任意のフィードバックを提供することができる。いくつかの実現例では、コメンテータ３４０は、設定データを評価または採点することができる。コメンテータ３４０は、任意のユーザまたは組織であってもよい。
【００２４】
いくつかの例示的な実現例では、コメンテータは、自分のアイデンティティを隠すことを選択してもよい。他の実現例では、コメンテータは、コメント、フィードバック、評価などがトランスペアレントであることを確実にするために自分のアイデンティティを隠さなくてもよい。
【００２５】
ＳＵＡ１１０のユーザは、１つ以上のマーケットプレイス３３０に接続して、コメンテータ３４０によって提供されるコメントおよび評価を考慮に入れて１つ以上の設定プロバイダ１２０から設定データを選択することができる。例えば、アリスは、ユーザプライバシを保護することで知られている組織によって提供されるプライバシ設定データ、および／または、コメンテータ３４０から優れた評価およびコメントを受けたプライバシ設定データを選択することができる。設定データは、ＳＵＡ１１０にダウンロードされてもよく、または以下で説明するように、ＳＵＡ１１０が設定データを契約してもよい。
【００２６】
図４Ａは、別の例示的な設定使用アプリケーション（ＳＵＡ）を示す。ＳＵＡ４００は、ＳＵＡ２００（図２）と同一であってもよく、または異なるＳＵＡであってもよい。ＳＵＡ４００は、ユーザが２つ以上の方法で設定を管理することを可能にする例示的な実現例を示す。例えば、「設定管理」４２０の下では、ユーザには、「自分自身で設定を管理」４２２および「設定を契約」４２４の選択肢が与えられる。ユーザが「自分自身で設定を管理」４２２オプションを選択すると、ユーザは、ＳＵＡ４００のいかなる設定も手動で構成もしくはセットすることができ、または設定を手付かずにしておく（例えば、アプリケーションのデフォルトオプションに設定する、もしくは事前にユーザによって設定される）ことができる。
【００２７】
ユーザが「設定を契約」４２４オプションを選択すると、ユーザは、ＳＵＡ４００の設定のうちのいくつかまたは全てを構成するのに使用されるように、ＳＵＡ４００において利用可能な外部ソース２５０および４１０〜４１８のうちの１つを選択することができる。外部ソース２５０および４１０〜４１８は、ＳＵＡ４００のユーザ（例えば、アリス）または別のユーザ（例えば、ボブ）によって事前に特定されていてもよく、選択されていてもよく、契約されていてもよく、またはダウンロードされていてもよい。
【００２８】
ユーザが設定プロバイダと契約すると、ユーザは、設定プロバイダによって提供される全ての設定データまたは設定プロバイダによって提供される設定データのうちの１つ以上の部分と契約することができる。設定プロバイダは、「セーフブラウジング」バージョン、「高性能」バージョン、「高プライバシ保護」バージョン、「パブリックライブラリ」バージョンなどのさまざまなバージョンまたは「フレーバ（flavors）」の設定データを提供することができる。バージョンまたはフレーバは、数字（例えば、ｖ１．２、ｖ２．０、ｖ５．５、３００など）を使用するなどの任意の態様で示されることができる。ユーザは、１つ以上のバージョン（例えば、さまざまなセクションまたはアプリケーション設定の群のためのさまざまなバージョン）と契約してもよい。
【００２９】
ユーザが設定プロバイダと契約すると、ユーザは、アプリケーションのいくつかまたは全ての設定のための設定データまたは設定データの１つ以上のバージョンと契約する。実際には、ユーザは、契約された設定データを使用して関連する設定を行うように、アプリケーションに知らせている、またはアプリケーションを構成している。例えば、アリスは、アプリケーション４００のプライバシ設定を行うために設定プロバイダ２５０の設定データと契約する。契約後、アプリケーション４００は、プライバシ設定のためのものである設定プロバイダ２５０の設定データの一部（例えば、当該部分は、設定識別子を使用するなどの何らかの方法で特定可能である）を自動的に使用して、アプリケーション４００のプライバシ設定を行うように構成される（例えば、設定データの一部の設定オプションをアプリケーション４００のプライバシ設定にコピーする）であろう。
【００３０】
いくつかの例示的な実現例では、アプリケーション４００は、契約された設定データが変更または更新されたか否かを判断するために、定期的にまたは（例えば、ユーザによって引き起こされる）要求に応じて、設定プロバイダを確認することができる。契約された設定データが変更または更新されていれば、アプリケーション４００は、上記のように、ユーザによって選択された環境設定に基づいて、その関連する設定をそれに応じて自動的に更新することができる。設定プロバイダまたはマーケットプレイスも、更新された設定データがいつ利用可能であるかをその設定データの契約者に通知するように実現されてもよい（例えば、プロバイダまたはマーケットプレイスは、契約者の記録をつけることができる）。
【００３１】
ユーザは、ＳＵＡ４００において利用可能な外部ソース２５０および４１０〜４１８を使用することに限定されるものではない。例えば、ユーザは、その設定データをダウンロードするために別の設定プロバイダを訪問してもよく、または、その最新のもしくは更新された設定データをダウンロードするために、利用可能な設定プロバイダのうちの１つ（例えば、設定プロバイダ２５０）を訪問してもよい。ユーザは、別の設定プロバイダを特定してもよく、および／または、その設定データをマーケットプレイス（例えば、図３のマーケットプレイス３３０）から抽出してもよい。
【００３２】
図４Ｂは、図４ＡのＳＵＡの例示的な変形例を示す。ここに示されている例示的な実現例では、ＳＵＡ４００は、「ラリーが更新したときに設定を自動的に更新」４２６を含む。オプション４２６における「ラリー」は、現在選択されている外部ソース４１０を指し、黒色の枠で示されている。
【００３３】
図示および記載されているように、多くの実現例が可能である。例示的な実現例は、以下の通りである：
（１）ユーザが、アプリケーションのいくつかまたは全ての設定（設定の任意の部分）を手動で設定または更新することを可能にするというもの、
（２）ユーザが、１つ以上の設定プロバイダからの設定データを用いてアプリケーションの設定の任意の部分を一旦構成することを可能にし、ユーザは、あらゆる設定プロバイダで何度もこのプロセスを繰返すことができるというもの、
（３）ユーザが、１つ以上の設定プロバイダの設定データと契約することによってアプリケーションの設定の任意の部分を構成することを可能にし、ユーザは、更新された設定データが利用可能であるときに通知してほしいことを示すための（例えば、ユーザインターフェースウィジェットの形態の）オプション、および／または、ユーザが更新を承認または同意し、その後、アプリケーション４００が更新された設定データを用いて関連の設定を更新することを示すための（例えば、ユーザインターフェースウィジェットの形態の）オプションを与えられることができるというもの、
（４）例（３）と同一であり、ユーザが、１つ以上の設定プロバイダの設定データと契約することによってアプリケーションの設定の任意の部分を構成することを可能にするが、（例えば、ユーザインターフェースウィジェットの形態の）オプションにより、更新された設定データが利用可能であり検出されるたびに、ユーザに通知することなく、かつ、ユーザからの承認または同意を促すことなく、アプリケーション４００において関連の設定を自動的に更新することをユーザは示すことができるというもの。
【００３４】
例（４）の別の変形例は、ユーザからの承認または同意を促すことなくユーザに通知するだけというものである。実現例は、図示および記載されている例に限定されるものではなく、当業者は、他の可能な実現例を理解するであろう。例示的な実現例は、設定（例えば、アプリケーション４００のユーザまたは管理者によって手動でのみ設定可能な設定）を用いて構成可能または選択可能でさえあってもよい。
【００３５】
図５Ａは、設定ソースへのアプリケーション設定の例示的なマッピングを示す。ユーザインターフェース（ＵＩ）５００は、アプリケーション（例えば、図４Ａまたは図４ＢのＳＵＡ４００）の設定をソースにマッピングするための例示的なＵＩである。例えば、アリスは、アプリケーションの設定がいかに行われるか（例えば、アリスによって、および／または、１つ以上の設定プロバイダソースによって提供される設定データを用いて、設定されるか）を示すためにアプリケーションのＵＩ５００を使用することができる。アプリケーション（例えば、ＳＵＡ４００）の設定は、示されているように、セクション５１０，５２０，５３０および５４０などのセクションに概念上分類またはグループ分けされ得る。アプリケーションは、異なる設定を有していてもよく、より少ない数の設定を有していてもよく、またはより多い数の設定を有していてもよく、当該設定は、異なるセクションで表示されてもよく、より多い数のセクションで表示されてもよく、より少ない数のセクションで表示されてもよく、またはセクションなしで表示されてもよい。
【００３６】
アプリケーションの設定は、０個、１個、またはそれ以上のソースにマッピングされることができる。設定の異なるセクションまたはセクション内の異なる設定は、異なるソースにマッピングされることができる。１つ以上の設定（マッピングされた設定）をソース（マッピングされたソース）にマッピングすることは、マッピングされたソースを使用して、マッピングされた設定を行うことを意味する。ＵＩ５００の例では、設定の各セクションは、ソースにマッピングされ得る。例えば、セクション５１０は、ユーザによって選択可能なソース５１５にマッピングされ得る。セクション５２０，５３０および５４０における設定は、各々がユーザによって選択可能なソース５２５，５３５および５４５にそれぞれマッピングされ得る。
【００３７】
ユーザがソース５１５などについて「自分自身で管理」オプションを選択すると、ユーザがソースである（すなわち、ユーザは、この場合、選択された設定についてのチェックボックスを設置することによってセクション５１０における設定を手動で設定する）。セクション５２０における設定について、ユーザは、「からコピー」オプションを選択して、設定プロバイダ「５．ＡＢＣ」をソースとして特定することができ、そこから当該セクションにおける設定に設定データがコピーされる。設定データの一例は、図５Ｂに示されている。説明のために、セクション５３０および５４０は、ユーザが（例えば、上記の２つの契約モデルを用いて）契約によってこれらのセクションにおける設定を行うことを選択できることを示している。ユーザは、同一の設定プロバイダと契約することを選択してもよく、または異なる設定プロバイダと契約することを選択してもよい（例えば、それぞれセクション５３０および５４０についての「ラリー」および「ＥＦＧ」）。設定プロバイダ「ラリー」からの設定データの一例は、図５Ｃに示されている。
【００３８】
図５Ｂは、例示的な設定データを示す。設定データ５５０は、例えばセクション５２０（図５Ａ）における設定を行うために使用される。例えば、セクション５２０における設定５２１〜５２３は、それぞれ固有の識別子「ｘｙｚ３４５６９０」、「ｘｙｚ３４５６９５」、「ｘｙｚ３４５７００」によって特定されることができる。アプリケーション４００が設定５２１〜５２３を行う際、アプリケーション４００は、設定５２１〜５２３を行うために設定データ５５０における設定定義５５２，５５４または５５６を特定および使用することができる。設定定義は、設定の固有の識別子に基づいて特定され、または設定と一致させられる。例えば、この例における設定定義は、一対の「<setting>」および「</setting>」タグの間のデータである。設定定義５５２は、設定５２１と同一の固有の識別子「ｘｙｚ３４５６９０」を有するラジオボタンタイプの設定を定義する。設定定義５５２は、この設定が「オン」にセットされることを示す。マッチング識別子「ｘｙｚ３４５６９０」に基づいて、アプリケーション４００は、設定定義５５２に定義されているように設定５２１を「オン」にセットする（すなわち、設定５２１のラジオボタンに印を付ける）。同様に、アプリケーション４００は、設定５２２および５２３の識別子に一致する識別子を有する設定定義５５４および５５６を特定して、設定定義５５４および５５６に従って設定５２２および５２３をセットまたは構成する。
【００３９】
図５Ｃは、別の例示的な設定データを示す。設定データは、任意のフォーマット（例えば、テキストフォーマット、バイナリフォーマット、人間が読み取ることができるフォーマット、人間が読み取ることができないフォーマットなど）で符号化され得る。フォーマットは、設定データ５５０（図５Ｂ）および設定データ５６０（図５Ｃ）の例に限定されるものではない。セクション５３０における設定５３１〜５３３は、名前、ラベル、数字、記号またはこれらの任意の組み合わせなどの任意のタイプの識別子を用いて特定され得る。説明のために、設定５３１〜５３３の固有の識別子は、それぞれ「２１２５５５０３」、「２１２５５５０５」および「２１２５５５０８」である。これらの識別子は、設定データ５６０の設定定義５６２〜５６６のものと一致する。設定データ５６０に示されているように、設定定義は、設定データファイル内のどこでも見つけることができる。識別子に基づいて、設定定義５６２〜５６６は、上記のように、設定５３１〜５３３を行うために使用される。例えば、設定５３２のチェックボックスは、「偽」の値を有するマッチング設定定義５６４に基づいてチェックされない。設定５３３のチェックボックスは、「真」の値を有するマッチング設定定義５６６に基づいてチェックされる。
【００４０】
図６は、プロセス実現例の一例を示す。プロセス６００は、ブロック６０５において、アプリケーションの機能に影響を及ぼす１つ以上の設定を構成またはセットするためにユーザにユーザインターフェースを提供するなどのオペレーションを含み得る。ユーザインターフェースは、設定がユーザによって操作されることを可能にし、および／または、設定が１つ以上の第三者エンティティ（例えば、外部ソース）からの設定データに基づいて行われることを可能にする。ブロック６１０において、少なくとも１つの第三者エンティティからの設定データに基づいて１つ以上の設定を行うために、ユーザインターフェースを介してユーザからの入力を受取る。ブロック６１５において、アプリケーションは、エンティティからの設定データが例えば設定のうちの少なくともいくつかのための設定定義を含むことを特定する。例えば、上記のように、設定定義は、固有の識別子に基づいて特定されてもよい。ブロック６２０において、アプリケーションは、エンティティからの設定データに基づいて（例えば、特定された設定定義に基づいて）設定のうちの少なくともいくつかを行う。
【００４１】
いくつかの実現例では、プロセス６００は、異なるブロックにより実現されてもよく、より少ない数のブロックにより実現されてもよく、またはより多い数のブロックにより実現されてもよい。プロセス６００は、コンピュータによって実行可能な命令として実現されてもよく、当該命令は、媒体に格納され、１つ以上のコンピュータ装置の１つ以上のプロセッサにロードされ、コンピュータによって実行される方法として実行されてもよい。
【００４２】
図７は、いくつかの実現例に適した例示的な環境を示す。環境７００は、装置７０５〜７４５を含み、各々は、例えばネットワーク７６０を介して（例えば、有線および／または無線接続によって）少なくとも１つの他の装置に通信可能に接続されている。いくつかの装置は、１つ以上の記憶装置７３０および７４５に通信可能に接続されてもよい。
【００４３】
１つ以上の装置７０５〜７４５の一例は、図８における後述のコンピュータ装置８０５であってもよい。装置７０５〜７４５は、コンピュータ７０５（例えば、ラップトップコンピュータ装置）、モバイル機器７１０（例えば、スマートフォンまたはタブレット）、テレビ７１５、車両７２０に関連付けられる装置、サーバコンピュータ７２５、コンピュータ装置７３５〜７４０、記憶装置７３０および７４５を含み得るが、これらに限定されるものではない。
【００４４】
いくつかの実現例では、装置７０５〜７２０は、ユーザ装置（例えば、アプリケーションまたはＳＵＡを実行するためにユーザによって使用される装置）であると考えられてもよい。装置７２５〜７４５は、（例えば、設定データなどのサービスおよび／またはデータを提供するためにサービスプロバイダによって使用される）サービスプロバイダに関連付けられる装置であってもよい。
【００４５】
例えば、ユーザ（例えば、アリス）は、ユーザ装置７０５または７１０を用いてコンテンツまたはウェブページにアクセス、閲覧および／または共有するためにＳＵＡを使用することができる。アリスは、装置７２５〜７４５によってサポートされる設定プロバイダおよび／またはマーケットプレイスプロバイダによって提供される設定データを用いてＳＵＡの設定を行うことができる。
【００４６】
図８は、いくつかの実現例での使用に適した例示的なコンピュータ装置を有する例示的な計算環境を示す。計算環境８００におけるコンピュータ装置８０５は、１つ以上の処理ユニット、コアもしくはプロセッサ８１０、メモリ８１５（例えば、ＲＡＭ、ＲＯＭなど）、内部ストレージ８２０（例えば、磁気ストレージ、光学式ストレージ、ソリッドステートストレージおよび／もしくはオーガニックストレージ）、ならびに／または、Ｉ／Ｏインターフェース８２５を含み得て、それらはいずれも、情報を通信するための通信機構またはバス８３０上で結合されてもよく、またはコンピュータ装置８０５に組み込まれてもよい。
【００４７】
コンピュータ装置８０５は、入力／ユーザインターフェース８３５および出力装置／インターフェース８４０に通信可能に結合されることができる。入力／ユーザインターフェース８３５および出力装置／インターフェース８４０のどちらか一方または両方は、有線または無線インターフェースであってもよく、着脱可能であってもよい。入力／ユーザインターフェース８３５は、入力を提供するために使用可能な、物理的なまたはバーチャルな任意の装置、構成要素、センサまたはインターフェース（例えば、ボタン、タッチスクリーンインターフェース、キーボード、ポインティング／カーソル制御装置、マイクロホン、カメラ、点字、モーションセンサ、光学式読取装置など）を含み得る。出力装置／インターフェース８４０は、ディスプレイ、テレビ、モニタ、プリンタ、スピーカ、点字などを含み得る。いくつかの実現例では、入力／ユーザインターフェース８３５および出力装置／インターフェース８４０は、コンピュータ装置８０５に組み込まれてもよく、またはコンピュータ装置８０５に物理的に結合されてもよい。他の例示的な実現例では、他のコンピュータ装置が、入力／ユーザインターフェース８３５および出力装置／インターフェース８４０として機能してもよく、または、入力／ユーザインターフェース８３５および出力装置／インターフェース８４０の機能をコンピュータ装置８０５に提供してもよい。
【００４８】
コンピュータ装置８０５の例としては、高モバイル機器（例えば、スマートフォン、車両および他のマシン内の装置、人間および動物によって携帯される装置など）、モバイル機器（例えば、タブレット、ノート型パソコン、ラップトップ、パーソナルコンピュータ、携帯型テレビ、ラジオなど）、および、移動させることを考えて設計されていない装置（例えば、デスクトップコンピュータ、他のコンピュータ、情報キオスク、１つ以上のプロセッサを組み込んだおよび／または結合させたテレビ、ラジオなど）を挙げることができるが、これらに限定されるものではない。
【００４９】
コンピュータ装置８０５は、外部ストレージ８４５と、同一または異なる構成の１つ以上のコンピュータ装置を含むさまざまなネットワーク化された構成要素、装置およびシステムと通信するためのネットワーク８５０とに（例えば、Ｉ／Ｏインターフェース８２５を介して）通信可能に結合されることができる。コンピュータ装置８０５または任意の接続されたコンピュータ装置は、サーバ、クライアント、シンサーバ、汎用マシン、特殊用途マシン、もしくは別のラベルとして機能するものであってもよく、サーバ、クライアント、シンサーバ、汎用マシン、特殊用途マシン、もしくは別のラベルのサービスを提供するものであってもよく、または、サーバ、クライアント、シンサーバ、汎用マシン、特殊用途マシン、もしくは別のラベルと呼ばれてもよい。
【００５０】
Ｉ／Ｏインターフェース８２５は、計算環境８００における少なくとも全ての接続された構成要素、装置およびネットワークに、および／または、計算環境８００における少なくとも全ての接続された構成要素、装置およびネットワークから情報を通信するための任意の通信またはＩ／Ｏプロトコルまたは規格（例えば、イーサネット（登録商標）、８０２．１１ｘ、ユニバーサルシステムバス、ワイマックス、モデム、セルラーネットワークプロトコルなど）を使用する有線および／または無線インターフェースを含み得るが、これらに限定されるものではない。ネットワーク８５０は、任意のネットワークまたはネットワークの組み合わせ（例えば、インターネット、ローカルエリアネットワーク、広域ネットワーク、電話ネットワーク、セルラーネットワーク、衛星ネットワークなど）であってもよい。
【００５１】
コンピュータ装置８０５は、一時的な媒体および非一時的な媒体を含むコンピュータによって使用可能なまたはコンピュータ読取可能な媒体を使用することができ、および／または、コンピュータによって使用可能なまたはコンピュータ読取可能な媒体を使用して通信することができる。一時的な媒体は、伝送媒体（例えば、金属ケーブル、光ファイバ）、信号、搬送波などを含む。非一時的な媒体は、磁気媒体（例えば、ディスクおよびテープ）、光媒体（例えば、ＣＤ  ＲＯＭ、デジタルビデオディスク、ブルーレイ（登録商標）ディスク）、ソリッドステート媒体（例えば、ＲＡＭ、ＲＯＭ、フラッシュメモリ、ソリッドステートストレージ）、および他の不揮発性記憶装置またはメモリを含む。
【００５２】
コンピュータ装置８０５は、いくつかの計算環境において技術、方法、アプリケーション、プロセス、またはコンピュータによって実行可能な命令を実行するために使用されることができる。コンピュータによって実行可能な命令は、一時的な媒体から抽出されてもよく、非一時的な媒体に格納されて非一時的な媒体から抽出されてもよい。実行可能な命令は、任意のプログラミング言語、スクリプト言語およびマシン言語（例えば、Ｃ、Ｃ＋＋、Ｃ♯、Ｊａｖａ（登録商標）、ビジュアルベーシック、パイソン、パール、ＪａｖａＳｃｒｉｐｔ（登録商標）など）のうちの１つ以上から生成されてもよい。
【００５３】
プロセッサ８１０は、ネイティブなまたはバーチャルな環境ではいかなるオペレーティングシステム（operating system：ＯＳ）（図示せず）下でも動作することができる。１つ以上のアプリケーションを配備することができ、当該１つ以上のアプリケーションは、論理ユニット８６０と、アプリケーションプログラミングインターフェース（application programming interface：ＡＰＩ）ユニット８６５と、入力ユニット８７０と、出力ユニット８７５と、設定マネージャ８８０と、ソースマネージャ８８５と、設定ＵＩ８９０と、さまざまなユニットが互いに、ＯＳと、および他のアプリケーション（図示せず）と通信するようにするためのユニット間通信機構８９５とを含む。例えば、設定マネージャ８８０、ソースマネージャ８８５および設定ＵＩ８９０は、他のユニット８６０〜８７５とともに、図１〜図７に示されている１つ以上のプロセスおよび／または特徴を実現することができる。記載されているユニットおよび要素は、設計、機能、構成またはインプリメンテーションの点で変更可能であり、記載されている説明に限定されるものではない。
【００５４】
いくつかの実現例では、情報または実行命令は、ＡＰＩユニット８６５によって受取られると、１つ以上の他のユニット（例えば、論理ユニット８６０、入力ユニット８７０、出力ユニット８７５、設定マネージャ８８０、ソースマネージャ８８５および設定ＵＩ８９０）とやりとりされ得る。例えば、アプリケーションのユーザ（例えば、アリス）がアプリケーションのいくつかの設定（例えば、プライバシ設定）を行いたい場合、設定ＵＩ８９０は、ユーザを支援するようにＵＩ（例えば、図２、図４Ａ、図４Ｂ、図５Ａに示されるＵＩまたは異なるＵＩ）を表示することができる。入力ユニット８７０がアリスの入力を検出した後、入力ユニット８７０は、ユーザ入力を設定マネージャ８８０に通信するためにＡＰＩユニット８６５を使用することができる。設定マネージャ８８０は、ＡＰＩユニット８６５を介して、ソースマネージャ８８５と対話し、設定プロバイダを特定し、および／または、アリスの入力に基づいて設定データを設定プロバイダから抽出することができる。次いで、１つ以上のソースからの設定データに基づいて設定を行うために、設定マネージャ８８０が呼出され得る。この設定は、設定ＵＩ８９０によって反映されるか、または設定ＵＩ８９０によってアリスに提示される。
【００５５】
いくつかの例では、論理ユニット８６０は、上記のいくつかの実現例において、ユニット間の情報フローを制御し、ＡＰＩユニット８６５、入力ユニット８７０、出力ユニット８７５、設定マネージャ８８０、ソースマネージャ８８５および設定ＵＩ８９０によって提供されるサービスを仕向けるように構成されてもよい。例えば、１つ以上のプロセスまたは実現例のフローは、論理ユニット８６０単独で、またはＡＰＩユニット８６５とともに制御されてもよい。
【００５６】
本明細書に記載されているシステムがユーザについての個人情報を収集する状況、または、本明細書に記載されているシステムが個人情報を利用できる状況では、ユーザは、プログラムまたは特徴がユーザ情報（例えば、ユーザのソーシャルネットワーク、社会的行為もしくは活動、職業、ユーザの好み、またはユーザの現在位置）を収集するか否かを制御する機会、または、ユーザとの関連性がより強いであろうコンテンツをコンテンツサーバから受取るか否かおよび／もしくはいかに受取るかを制御する機会を与えられることができる。また、特定のデータは、格納または使用される前に１つ以上の方法で処理されることができ、その結果、個人を特定できる情報は除去される。例えば、ユーザのアイデンティティは、当該ユーザを突き止めることができる個人を特定できる情報がないように処理されてもよく、または、ユーザの地理的な位置は、（都市レベル、郵便番号レベルまたは国レベルなどで）位置情報が得られる場合には、ユーザの特定の位置を突き止めることができないように一般化されてもよい。したがって、ユーザは、ユーザについての情報がいかに収集されてコンテンツサーバによって使用されるかということを制御することができる。
【００５７】
いくつかの例示的な実現例を図示および説明してきたが、これらの例示的な実現例は、本明細書に記載されている主題をこの分野の当業者に伝えるために提供されている。本明細書に記載されている主題は、記載されている例示的な実現例に限定されることなく、さまざまな形態で実現されてもよいということが理解されるべきである。本明細書に記載されている主題は、それらの具体的に規定もしくは記載されている事項がなくても実施可能であり、または、記載されていない他のもしくは異なる要素もしくは事項とともに実施されてもよい。添付の特許請求の範囲およびそれらの等価物に規定されている本明細書に記載の主題から逸脱することなく、これらの例示的な実現例において変更を加え得ることは、この分野の当業者によって理解されるであろう。
【図１】
0006368378.tif 000002
【図２Ａ】
0006368378.tif 000003
【図２Ｂ】
0006368378.tif 000004
【図３】
0006368378.tif 000005
【図４Ａ】
0006368378.tif 000006
【図４Ｂ】
0006368378.tif 000007
【図５Ａ】
0006368378.tif 000008
【図５Ｂ】
0006368378.tif 000009
【図５Ｃ】
0006368378.tif 000010
【図６】
0006368378.tif 000011
【図７】
0006368378.tif 000012
【図８】
0006368378.tif 000013