(57)【要約】ユーザソフトウエアアプリケーション（１２５ａ）の能力を制御する技術を実現し且つ使用するコンピュータプログラムプロダクトを包含する方法及び装置。ユーザアプリケーションが供給され（１００）、該ユーザソフトウエアアプリケーション（１２５）は１組のディスエーブルされている動作を包含している。該１組のディスエーブルされている動作におけるディスエーブルされている動作のうちの１つ又はそれ以上により動作させることが可能なコンテントが受取られる。アプリケーション権限情報において特定されているコンテキスト内においてコンテントに関し動作するために該１組のディスエーブルされている動作における１つの動作（１３０ａ）をイネーブルさせるべく動作可能なアプリケーション権限情報が受取られ、且つ該１組のディスエーブルされている動作における該動作がイネーブルされて該受取られたコンテントに関して動作を行う。ユーザソフトウエアアプリケーション（１２５ａ）により動作されるべきコンテント（１３５）を供給するための方法及び装置及び形態特定可能なコンテキスト依存性ユーザソフトウエアアプリケーションを提供するための方法及び装置も記載されている。
2005518602.tif 000002
【特許請求の範囲】
【請求項１】
ユーザソフトウエアアプリケーションの能力を制御する方法において、
１組のディスエーブルされた動作を包含するユーザソフトウエアアプリケーションを用意し、
前記１組のディスエーブルされた動作におけるディスエーブルされた動作のうちの１つ又はそれ以上により動作させることが可能なコンテントを受取り、
アプリケーション権限情報において特定されたコンテキスト内におけるコンテントに関して動作するために前記１組のディスエーブルされた動作における１つの動作をイネーブルさせるべく動作可能なアプリケーション権限情報を受取り、
前記受取ったコンテントに関して動作するために前記１組のディスエーブルされた動作における前記動作をイネーブルさせる、
ことを包含している方法。
【請求項２】
請求項１において、前記アプリケーション権限情報がそれに関して前記動作が実施されるべきコンテントと共に受取られる方法。
【請求項３】
請求項２において、前記コンテントが電子文書のコンテントであり且つ前記アプリケーション権限情報が前記文書内に埋め込まれている方法。
【請求項４】
請求項１において、前記アプリケーション権限情報及びそれに関して前記動作が実施されるべきコンテントが別々に受取られる方法。
【請求項５】
請求項１において、前記コンテントが電子文書のコンテントであり且つ前記１組のディスエーブルされた動作における前記動作が、
前記文書へコンテントを付加すること、前記文書へコメントを付加すること、前記文書に対してデジタル署名を適用すること、前記文書を保存すること、前記文書のスペルチェックを実施すること、フォームデータをインポートすること、フォームデータをエクスポートすること、ブラウザー環境外においてドキュメントデータをインターネットへ提出すること、及びテンプレートから新たな頁を挿入すること、
のうちの１つ又はそれ以上を包含している方法。
【請求項６】
請求項５において、前記文書がＰＤＦ文書である方法。
【請求項７】
請求項１において、前記コンテントが電子文書のコンテントであり且つ前記アプリケーション権限情報が前記文書内に埋め込まれている方法。
【請求項８】
請求項７において、更に、前記文書から前記アプリケーション権限情報をアンパックすることを包含している方法。
【請求項９】
請求項１において、前記アプリケーション権限情報内に特定されているコンテキストが、
特定の文書、特定のタイプの文書、特定のデータセット、特定のタイプのデータセット、特定のコンピュータ、特定の組のコンピュータ、特定のユーザ、特定の組のユーザ、特定のセッション、特定の数のセッション、特定の時間期間、特定のコンテントプロバイダー、及び特定の状態における特定の文書、
のうちの１つ又はそれ以上を包含している方法。
【請求項１０】
請求項９において、前記特定の状態における特定の文書の特定の状態がユーザにより定義されている方法。
【請求項１１】
請求項１において、前記受取ったコンテントと関連する前記アプリケーション権限情報が異なるコンテキストに対して異なっている方法。
【請求項１２】
請求項１において、更に、前記コンピュータソフトウエアアプリケーションをホストしているコンピュータ上に前記アプリケーション権限情報を保存することを包含している方法。
【請求項１３】
請求項１において、アプリケーション権限情報を受取る場合に、
アプリケーション権限情報に対してデータベースに照会を行い、
前記照会に応答して前記データベースからアプリケーション権限情報を受取る、
ことを包含している方法。
【請求項１４】
請求項１において、前記コンテントが前記コンテントに関してどのような動作を実施することが可能であるかを制限する１つ又はそれ以上の関連する許可を有している方法。
【請求項１５】
ユーザソフトウエアアプリケーションにより動作されるべきコンテントを供給する方法において、
１組のディスエーブルされた動作を包含しているユーザソフトウエアアプリケーションと適合性を有するフォーマットにおいてコンテントを発生し、
アプリケーション権限情報において特定されたコンテキスト内において前記コンテントに関して動作するために前記１組のディスエーブルされた動作における動作をイネーブルさせるために動作可能なアプリケーション権限情報を前記コンテントに対して発生し、
前記コンテント及び前記アプリケーション権限情報を一人又はそれ以上のユーザに対して配布する、
ことを包含している方法。
【請求項１６】
請求項１５において、更に、発生された前記アプリケーション権限情報を発生された前記コンテントと関連付けさせることを包含している方法。
【請求項１７】
請求項１６において、更に、
前記アプリケーション権限情報を何人のユーザへ配布したか、各ユーザに対してイネーブルされた動作、各ユーザに対して動作がイネーブルされているコンテキスト、及び前記コンテント及びアプリケーション権限が配布されたユーザにより実施されるイネーブルされた動作の数、
のうちの１つ又はそれ以上をモニタすることを包含している方法。
【請求項１８】
請求項１６において、更に、
前記アプリケーション権限情報が配布されたユーザの数、各ユーザに対してイネーブルされた動作、各ユーザに対して前記動作がイネーブルされるコンテキスト、及び前記コンテント及びアプリケーション権限が配布されたユーザにより実施されるイネーブルされた動作の数、
のうちの１つ又はそれ以上に基づいてユーザソフトウエアアプリケーションプロバイダーに対してアカウントを供給することを包含している方法。
【請求項１９】
請求項１５において、更に、ユーザに対して配布されたアプリケーション権限情報において特定されたコンテキストに基づいてユーザソフトウエアアプリケーションプロバイダーに対してアカントを供給することを包含している方法。
【請求項２０】
請求項１５において、前記コンテントが電子文書のコンテントであり且つ前記関連付けを行うステップが前記アプリケーション権限情報を前記文書内に埋め込むことを包含している方法。
【請求項２１】
形態特定可能でコンテキストに依存するユーザソフトウエアアプリケーションを供給する方法において、
（ａ）１組のディスエーブルされた動作を包含しておりアプリケーション権限情報に基づいて受取ったコンテントに関して動作するために前記１組のディスエーブルされた動作のうちの動作をイネーブルさせるべく動作可能なユーザソフトウエアアプリケーションを供給し、
（ｂ）前記ユーザソフトウエアアプリケーションと適合性があるフォーマットでコンテントを発生するため、及び前記１組のディスエーブルされた動作における１つ又はそれ以上の動作を識別し且つ前記ユーザソフトウエアアプリケーションをして前記識別した動作をイネーブルさせるべく動作可能であるアプリケーション権限情報を前記コンテントに対して発生するため、に動作可能なコンテント発生ツールを供給し、
（ｃ）前記ユーザソフトウエアアプリケーションを一人又はそれ以上のユーザに対して配布し、
（ｄ）前記ユーザのうちの一人又はそれ以上に対して配布すべきアプリケーション権限情報及びコンテントを発生する場合に使用するために前記コンテント発生ツールを１又はそれ以上のコンテントプロバイダーへ配布する、
ことを包含している方法。
【請求項２２】
請求項２１において、前記コンテント発生ツールが、更に、前記アプリケーション権限情報を前記コンテントと関連付けさせるべく動作可能である方法。
【請求項２３】
請求項２１において、前記アプリケーション権限情報が、前記ユーザソフトウエアアプリケーションをして前記アプリケーション権限情報において特定されているコンテキスト内において前記識別された動作をイネーブルさせるべく動作可能である方法。
【請求項２４】
請求項２１において、更に、
前記アプリケーション権限情報が配布されたユーザの数、各ユーザに対してイネーブルされた動作、前記動作が各ユーザに対してイネーブルされるコンテキスト、及び前記コンテント及びアプリケーション権限が配布されたユーザにより実施されるイネーブルされた動作の数、
のうちの１つ又はそれ以上についてコンテントプロバイダーから情報を受取ることを包含している方法。
【請求項２５】
請求項２１において、更に、
前記アプリケーション権限情報が配布されたユーザの数、各ユーザに対してイネーブルされた動作、前記動作が各ユーザに対してイネーブルされるコンテキスト、及び前記コンテント及びアプリケーション権限が配布されたユーザにより実施されるイネーブルされた動作の数、
のうちの１つ又はそれ以上に基づいてコンテントプロバイダーからアカウントを受取ることを包含している方法。
【請求項２６】
請求項２１において、ユーザソフトウエアアプリケーションを供給する場合に、更に、
前記ユーザソフトウエアアプリケーションにおけるアプリケーション権限管理モジュールを供給することを包含しており、前記アプリケーション権限管理モジュールが、
１つ又はそれ以上のディスエーブルされた動作が使用可能とされたコンテキストが存在しているか否かを検知し、
前記コンテキスト内の動作をイネーブルさせるべく前記ユーザソフトウエアアプリケーションに命令する、
べく動作可能であり、且つ前記ユーザソフトウエアアプリケーションを配布する場合に、更に、
前記アプリケーション権限管理モジュールを前記ユーザのうちの一人又はそれ以上へ配布する、
ことを包含している方法。
【請求項２７】
コンピュータによって読取可能な媒体上にタンジブルに格納されているユーザソフトウエアアプリケーションにおいて、前記ユーザソフトウエアアプリケーションは１組のディスエーブルされた動作を包含しており且つプログラム可能なプロセッサをして、
前記１組のディスエーブルされた動作におけるディスエーブルされた動作のうちの１つ又はそれ以上により動作させることが可能なコンテントを受取らせ、
アプリケーション権限情報内に特定されているコンテキスト内のコンテントに関して動作するために前記１組のディスエーブルされた動作における１つの動作をイネーブルさせるべく動作可能なアプリケーション権限情報を受取らせ、
前記受取ったコンテントに関して動作するために前記１組のディスエーブルされた動作における前記動作をイネーブルさせる、
べく動作可能な命令を包含しているユーザソフトウエアアプリケーション。
【請求項２８】
請求項２７において、前記アプリケーション権限情報がそれに関して前記動作が実施されるコンテントと共に受取られるユーザソフトウエアアプリケーション。
【請求項２９】
請求項２８において、前記コンテントが電子文書のコンテントであり且つ前記アプリケーション権限情報が前記文書内に埋め込まれているユーザソフトウエアアプリケーション。
【請求項３０】
請求項２９において、更に、前記文書から前記アプリケーション権限情報をアンパックするための命令を包含しているユーザソフトウエアアプリケーション。
【請求項３１】
請求項２７において、前記アプリケーション権限情報及びそれについて前記動作が実施されるべきコンテントが別々に受取られるユーザソフトウエアアプリケーション。
【請求項３２】
請求項２７において、前記コンテントが電子文書のコンテントであり且つ前記１組のディスエーブルされた動作における前記動作が、
前記文書へコンテントを付加すること、前記文書へコメントを付加すること、前記文書へデジタル署名を適用すること、前記文書を保存すること、前記文書のスペルチェックを実施すること、フォームデータをインポートすること、フォームデータをエクスポートすること、ブラウザー環境外でインターネットへ文書データを提出すること、及びテンプレートから新たな頁を挿入すること、
のうちの１つ又はそれ以上を包含しているユーザソフトウエアアプリケーション。
【請求項３３】
請求項３２において、前記文書がＰＤＦ文書であるユーザソフトウエアアプリケーション。
【請求項３４】
請求項２７において、前記アプリケーション権限情報において特定されているコンテキストが、
特定の文書、特定のタイプの文書、特定のデータセット、特定のタイプのデータセット、特定のコンピュータ、特定の組のコンピュータ、特定のユーザ、特定の組のユーザ、特定のセッション、特定の数のセッション、特定の時間期間、特定のコンテントプロバイダー、特定の状態における特定の文書、
のうちの１つ又はそれ以上を包含しているユーザソフトウエアアプリケーション。
【請求項３５】
請求項３４において、特定の状態にある前記特定の文書の特定の状態がユーザによって定義される方法。
【請求項３６】
請求項２７において、前記受取ったコンテントと関連するアプリケーション権限情報が異なるコンテキストに対して異なるものであるユーザソフトウエアアプリケーション。
【請求項３７】
請求項２７において、更に、前記ユーザタソフトウエアアプリケーションをホストしているコンピュータ上に前記アプリケーション権限情報を保存するための命令を有しているユーザソフトウエアアプリケーション。
【請求項３８】
請求項２７において、前記アプリケーション権限情報を受取るための命令が、
アプリケーション権限情報に対してデータベースを照会し、
前記照会に応答して前記データベースからアプリケーション権限情報を受取る、
ための命令を有しているユーザソフトウエアアプリケーション。
【請求項３９】
請求項２７において、前記コンテントが、前記コンテントに関してどの動作を実施することが可能であるかを制限する１つ又はそれ以上の関連する許可を有しているユーザソフトウエアアプリケーション。
【請求項４０】
コンピュータによって読取可能な媒体上にタンジブルに格納されているコンテントプロバイダーソフトウエアアプリケーションにおいて、１組のディスエーブルさせた動作を包含しており且つプログラム可能なプロセッサをして、
１組のディスエーブルさせた動作を包含するユーザソフトウエアアプリケーションと適合性のあるフォーマットでコンテントを発生させ、
アプリケーション権限情報において特定されるコンテキスト内において前記コンテントに関し動作するために前記１組のディスエーブルさせた動作における動作をイネーブルさせるべく動作可能なアプリケーション権限情報を前記コンテントに対して発生させる、
ために動作可能な命令を有しているコンテントプロバイダーソフトウエアアプリケーション。
【請求項４１】
請求項４０において、更に、前記発生されたアプリケーション権限情報を前記発生されたコンテントと関連づけるべく動作可能な命令を有しているコンテントプロバイダーソフトウエアアプリケーション。
【請求項４２】
請求項４０において、更に、
前記アプリケーション権限情報が配布されるユーザの数、各ユーザに対してイネーブルされる動作、各ユーザに対して動作がイネーブルされるコンテキスト、前記コンテント及びアプリケーション権限が配布されたユーザにより実施されるイネーブルされた動作の数、
のうちの１つ又はそれ以上をモニタすべく動作可能な命令を有しているコンテントプロバイダーソフトウエアアプリケーション。
【請求項４３】
請求項４０において、更に、
アプリケーション権限情報が配布されたユーザの数、各ユーザに対してイネーブルされる動作、前記動作が各ユーザに対してイネーブルされるコンテキスト、
のうちの１つ又はそれ以上に基づいてユーザソフトウエアアプリケーションプロバイダーに対してアカウントを提供すべく動作可能な命令を有しているコンテントプロバイダーソフトウエアアプリケーション。
【請求項４４】
請求項４０において、更に、ユーザに配布されたアプリケーション権限情報において特定されたコンテキストに基づいてユーザソフトウエアアプリケーションプロバイダーへアカウントを供給すべく動作可能な命令を有しているコンテントプロバイダーソフトウエアアプリケーション。
【請求項４５】
請求項４０において、前記コンテントが電子文書のコンテントであり、且つ前記関連付けさせる命令が前記アプリケーション権限情報を前記文書内に埋め込むための命令を有しているコンテントプロバイダーソフトウエアアプリケーション。
【請求項４６】
形態特定可能なコンテキスト依存性のユーザソフトウエアアプリケーションを提供するシステムにおいて、
（ａ）１組のディスエーブルさせた動作を包含しており、アプリケーション権限情報に基づいて受取ったコンテントに関して動作するために前記１組のディスエーブルさせた動作における１つの動作をイネーブルさせるべく動作可能なユーザソフトウエアアプリケーションを提供する手段、
（ｂ）前記ユーザソフトウエアアプリケーションと適合性があるフォーマットでコンテントを発生し、且つ前記１組のディスエーブルさせた動作における１つ又はそれ以上の動作を識別し且つ前記ユーザソフトウエアアプリケーションをして前記識別した動作をイネーブルさせるべく動作可能であるアプリケーション権限情報を前記コンテントに対して発生させるべく動作可能なコンテント発生ツールを供給する手段、
（ｃ）前記ユーザソフトウエアアプリケーションを一人又はそれ以上のユーザへ配布する手段、
（ｄ）前記ユーザの一人又はそれ以上へ配布すべきコンテント及びアプリケーション権限情報を発生する場合に使用するために１又はそれ以上のコンテントプロバイダーへ前記コンテント発生ツールを配布する手段、
を有しているシステム。
【請求項４７】
請求項４６において、前記コンテント発生ツールが、更に、前記アプリケーション権限情報を前記コンテントと関連付けすべく動作可能であるシステム。
【請求項４８】
請求項４６において、前記アプリケーション権限情報が前記ユーザソフトウエアアプリケーションをして前記アプリケーション権限情報において特定されているコンテキスト内において前記識別された動作をイネーブルさせるシステム。
【請求項４９】
請求項４６において、更に、
前記アプリケーション権限情報が配布されたユーザの数、各ユーザに対してイネーブルされる動作、各ユーザに対して前記動作がイネーブルされるコンテキスト、前記コンテント及びアプリケーション権限が配布されたユーザにより実施されるイネーブルされた動作の数、
のうちの１つ又はそれ以上についてコンテントプロバイダーから情報を受取る手段を有しているシステム。
【請求項５０】
請求項４６において、更に、
前記アプリケーション権限情報が配布されたユーザの数、各ユーザに対してイネーブルされる動作、各ユーザに対してイネーブルされる動作におけるコンテキスト、前記コンテント及びアプリケーション権限が配布されたユーザにより実施されるイネーブルされた動作の数、
のうちの１つ又はそれ以上に基づいてコンテントプロバイダーからアカウントを受取る手段を有しているシステム。
【請求項５１】
請求項４６において、前記ユーザソフトウエアアプリケーションを供給する手段が、更に、
前記ユーザソフトウエアアプリケーションにおいてアプリケーション権限管理モジュールを供給する手段、
を有しており、前記アプリケーション権限管理モジュールが、
１つ又はそれ以上のディスエーブルされた動作が使用可能とされたコンテキストが存在するか否かを検知し、且つ
前記コンテキスト内において前記ユーザソフトウエアアプリケーションに対して前記動作をイネーブルさせるべく命令する、
べく動作可能であり、且つ前記ユーザソフトウエアアプリケーションを配布する手段が、更に、
前記アプリケーション権限管理モジュールを前記ユーザの一人又はそれ以上へ配布する手段、
を有しているシステム。
【請求項５２】
形態特定可能なコンテキスト依存性ユーザソフトウエアアプリケーションを供給し且つ使用する方法において、
（ａ）１組のディスエーブルさせた動作を包含するユーザソフトウエアアプリケーションを供給し、
（ｂ）前記ユーザソフトウエアアプリケーションと適合性のあるフォーマットでコンテント及び前記コンテントに対するアプリケーション権限情報を発生すべく動作可能なコンテント発生ツールを供給し、
（ｃ）前記ユーザソフトウエアアプリケーションを一人又はそれ以上のユーザへ配布し、
（ｄ）前記コンテント発生ツールを１又はそれ以上のコンテントプロバイダーへ配布し、
（ｅ）ユーザソフトウエアアプリケーションと適合性があるフォーマットで且つ前記１組のディスエーブルさせた動作における前記ディスエーブルさせた動作のうちの１つ又はそれ以上により動作させることが可能なコンテントを発生し、
（ｆ）前記アプリケーション権限情報において特定されているコンテキスト内においてコンテントに関し動作するために前記１組のディスエーブルさせた動作における１つの動作をイネーブルさせるべく動作可能なコンテントに対してアプリケーション権限情報を発生し、
（ｇ）前記コンテント及び前記アプリケーション権限情報を一人又はそれ以上のユーザへ配布し、
（ｈ）前記発生されたコンテントを受取り、
（ｉ）前記アプリケーション権限情報を受取り、
（ｊ）前記受取ったコンテントに関して動作するために前記１組のディスエーブルさせた動作における前記動作をイネーブルさせ、
（ｋ）前記ユーザソフトウエアアプリケーションを使用して前記受取ったコンテントに関して前記イネーブルされた動作を実施する、
ことを包含している方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はコンピュータソフトウエアアプリケーションと関連する利用権限に関するものである。
【背景技術】
【０００２】
コンピュータソフトウエアアプリケーションは、しばしば、異なる組の機能を実施することが可能な２つ又はそれ以上のバージョンで存在する。コンピュータソフトウエアアプリケーションのベンダー又は製造業者が、ユーザに対して、減少した組の機能を有するアプリケーションのバーション及び完全な組の機能を有するバージョンを提供することが一般的である。減少させた組の機能を有するコンピュータソフトウエアアプリケーションのバージョンは、典型的に、無料又は低コストでユーザに対して提供され、一方完全な機能の組を有するバージョンは、通常、より高価である。幾つかのバージョンで提供されるコンピュータソフトウエアアプリケーションの１例はＡｃｒｏｂａｔ（登録商標）アプリケーションであり、それはカリフォルニア州サンノゼのアドビシステムズインコーポレイテッドによって製造されている。Ａｃｒｏｂａｔ（登録商標）Ｒｅａｄｅｒ（登録商標）アプリケーションの１つのバージョンは減少させた組の機能を有しており、プラットフォーム独立性のＰＤＦ（ポータブルドキュメントフォーマット）でフォーマットされた文書を観察し且つ印刷することをユーザに対して許容する。該アプリケーションの別のバーションであるＡｃｒｏｂａｔ（登録商標）５．０は、完全な組の機能を有しており且つ付加的に種々の文書フォーマットをＰＤＦ文書へ変換させ、ブックマークを付加し、セキュリティオプションを設定し、小型のＰＤＦプレビューを発生させ、デジタル署名を使用してＰＤＦ文書にコメントし且つ承認し、ハイライトを付加し、ＰＤＦ文書に対して下線及び注釈を付与すること等をユーザに対して許容する。
【０００３】
コンピュータソフトウエアアプリケーションの１つを超えるバーションが存在することは、ユーザにとって有益的である。何故ならば、どのユーザも、彼又は彼女が完全な組の機能を有するコンピュータソフトウエアアプリケーションのバージョンに対して喜んで費用を支払うか、又は減少させた組の機能を有するバージョンが彼又は彼女の必要性にとって充分なものであるか否かを決定することが可能だからである。更に、例えばＡｃｒｏｂａｔ  Ｒｅａｄｅｒ（アクロバットリーダー）等のコンピュータソフトウエアアプリケーションの機能を減少させたバージョンを無料で又は非常に低コストで使用可能とさせることにより、そのアプリケーションによって使用されるコンテントフォーマット（この場合は、ＰＤＦ文書）を標準として普及させることが可能である。換言すると、多くのユーザは、ＰＤＦファイルを見ることが可能なユーザはＡｃｒｏｂａｔ（アクロバット）５．０を購入せねばならないとしたならば、ＰＤＦファイルを作成するために例えばＡｃｒｏｂａｔ５．０等のソフトウエアの完全な機能を有するバージョンを購入することを差し控えることとなる。無料で機能性が制限されたバージョンでもってＰＤＦ文書の使用はインターネットへ拡張されている。何故ならば、ＰＤＦ文書の著者は、インターネットへのアクセスを有するユーザによってＡｃｒｏｂａｔ  Ｒｅａｄｅｒを入手することが可能であるということに依存することが可能である。多くの同様の例が異なるタイプのコンピュータソフトウエアアプリケーション及びコンテントフォーマットに対して存在している。然しながら、このようなシステムに関連して多数の欠点及び不便性も存在している。
【０００４】
ユーザは、例えばコンパクトディスク又はディスケット等の何等かのタイプのタンジブルな媒体上で又は例えばインターネット等のネットワークを介してファイルをダウンロードすることによりコンテントプロバイダーから電子的データを包含するファイルを受取ることが可能である。ユーザが、彼又は彼女のコンピュータ上にインストールされている減少させた組の機能を具備するコンピュータソフトウエアアプリケーションのバーションをインストールしているに過ぎない場合には、ユーザは制限された組の動作を実施することが可能であるに過ぎない。然しながら、ユーザがそのファイルのコンテントに関して１つの動作を実施することを所望し且つその動作が減少させた組のイネーブルされた機能内にない場合には、ユーザは完全な組の機能性を有するアプリケーションのバージョンを購入するか又は何等かのその他の態様で入手せねばならない。ある場合には、コンテントプロバイダーは、ユーザがある動作を実施することを要求する場合がある。このような場合に、ユーザは、典型的に、そのアプリケーションのより高価なバージョンを入手することを嫌がり、特に、そのファイル又は動作が１回のみ又は非常に稀にしか使用されない場合にそうである。
【０００５】
コンテントプロバイダーは、アプリケーションの幾つかのバージョンが存在するために、異なる組の問題に遭遇する。コンテントプロバイダーは、全てのユーザが彼等のコンピュータ上に完全な組の機能を有するコンピュータソフトウエアアプリケーションをインストールするものと確信することは不可能である。従って、コンテントプロバイダーは、減少させた組の機能を有するコンピュータソフトウエアアプリケーションのバージョンにおいてのみ提供される機能のみを使用するコンテントの基本的なバージョンを使用可能なものとさせるか、又は完全な組の機能を有するコンピュータソフトウエアアプリケーションにおける全ての機能を使用することが可能なコンテントのアドバンストバージョンを使用可能とさせるかの間で選択を行わねばならない。第一の場合においては、コンテントプロバイダーは全てのユーザに到達することが可能であるが、減少させた組の機能における機能のみに依存するに過ぎない。二番目の場合においては、コンテントプロバイダーは更により制限された組のユーザに到達することが可能であるに過ぎないが、完全な組の機能における全ての機能に依存することが可能である。一方、コンテントプロバイダーはユーザに対して無料で完全な組の機能を有するコンピュータソフトウエアアプリケーションのバージョンを配布することが可能であるが、これは、典型的に、コンテントプロバイダーにとって非常に高価であり、従って、しばしば、コンテントプロバイダーの観点からは非常に魅力的なアプローチではない。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
更に、コンピュータソフトウエアアプリケーション製造業者等は、異なるタイプのユーザ及びプロダクトが使用される異なるワークフローのニーズを満足させる複数個のタイプのアプリケーションを開発せねばならない。同一のプロダクトの多数のバージョンを開発し且つ製造することはアプリケーションデベロッパー及び製造業者にとってコスト高となる。
【課題を解決するための手段】
【０００７】
一般的に、１つの側面においては、本発明はユーザソフトウエアアプリケーションの能力を制御する技術を実現し且つ使用するコンピュータプログラムプロダクトを包含する方法及び装置を提供する。ユーザソフトウエアアプリケーションが提供され、該ユーザソフトウエアアプリケーションは１組のディスエーブルされた動作を包含している。該１組のディスエーブルされた動作におけるディスエーブルされた動作のうちの１つ又はそれ以上により動作させることが可能なコンテントが受取られる。アプリケーション権限情報において特定されるコンテキスト内においてコンテントに関して動作するために該１組のディスエーブルされた動作における１つの動作をイネーブルさせるべく動作可能なアプリケーション権限情報が受取られ、且つ該１組のディスエーブルされた動作における該動作がイネーブルされて該受取られたコンテントに関して動作を行う。
【０００８】
有益的な実現例は以下の特徴のうちの１つ又はそれ以上を包含する場合がある。アプリケーション権限情報は、該動作を実施すべきコンテントと共に受取ることが可能である。該コンテントは電子文書のコンテントとすることが可能であり、且つ該アプリケーション権限情報は該文書内に埋込むことが可能である。該アプリケーション権限情報及び該動作を実施することが可能なコンテントは別々に受取ることが可能である。該コンテントは電子文書のコンテントとすることが可能であり且つ該１組のディスエーブルさせた動作における該動作は、該文書へコンテントを付加すること、該文書へコメントを付加すること、該文書へデジタル署名を適用すること、該文書を保存すること、該文書のスペルチェックを実施すること、フォームデータをインポートすること、フォームデータをエクスポートすること、ブラウザー環境外でインターネットへ文書データを提出すること、テンプレートから新たな頁を挿入することのうちの１つ又はそれ以上を包含することが可能である。該文書はＰＤＦ文書とすることが可能である。該コンテントは電子文書のコンテントとすることが可能であり、且つ該アプリケーション権限情報は該文書内に埋め込むことが可能である。該アプリケーション権限情報は該文書からアンパックさせることが可能である。
【０００９】
該アプリケーション権限情報において特定されるコンテキストは、特定の文書、特定のタイプの文書、特定のデータセット、特定のタイプのデータセット、特定のコンピュータ、特定の組のコンピュータ、特定のユーザ、特定の組のユーザ、特定のセッション、特定の数のセッション、特定の時間期間、特定のコンテントプロバイダー、特定の状態における特定の文書、のうちの１つ又はそれ以上を包含することが可能である。特定の状態における該特定の文書の特定の状態はユーザにより定義することが可能である。該受取ったコンテントと関連するアプリケーション権限情報は異なるコンテキストに対して異なるものとすることが可能である。該アプリケーション権限情報は、該コンピュータソフトウエアアプリケーションをホストするコンピュータ上に保存することが可能である。アプリケーション権限情報を受取ることは、アプリケーション権限情報に対してデータベースを照会すること及び該照会に応答して該データベースからアプリケーション権限情報を受取ることを包含することが可能である。該コンテントは該コンテントに対してどの動作を実施することが可能であるかを制限する１つ又はそれ以上の関連する許可を有することが可能である。
【００１０】
一般的に、別の側面においては、本発明は、ユーザソフトウエアアプリケーションにより動作されるべきコンテントを提供する技術を実現し且つ使用するコンピュータプログラムプロダクトを包含する方法及び装置を提供する。コンテントは１組のディスエーブルさせた動作を包含するユーザソフトウエアアプリケーションと適合性を有するフォーマットで発生される。アプリケーション権限情報が該コンテントに対して発生される。該アプリケーション権限情報は、該アプリケーション権限情報において特定されるコンテキスト内において該コンテントに関し動作するために該１組のディスエーブルされた動作における１つの動作をイネーブルさせるべく動作可能である。該コンテント及び該アプリケーション権限情報は一人又はそれ以上のユーザへ配布される。
【００１１】
有益的な実現例は以下の特徴のうちの１つ又はそれ以上を包含することが可能である。該発生されたアプリケーション権限情報は該発生されたコンテントと関連づけることが可能である。以下のこと、即ち該アプリケーション権限情報が配布されるユーザの数、各ユーザに対してイネーブルされる動作、該動作が各ユーザに対してイネーブルされるコンテキストのうちの１つ又はそれ以上をモニタすることが可能である。該アプリケーション権限情報が配布されたユーザの数、各ユーザに対してイネーブルされる動作、各ユーザに対して該動作がイネーブルされるコンテキスト、該コンテント及びアプリケーション権限が配布されたユーザにより実施されるイネーブルされた動作の数のうちの１つ又はそれ以上に基づいてユーザソフトウエアアプリケーションプロバイダーに対してアカウントを供給することが可能である。ユーザへ配布されたアプリケーション権限情報において特定されるコンテキストに基づいてユーザソフトウエアアプリケーションプロバイダーに対してアカウントを供給することが可能である。該コンテントは電子文書のコンテントとすることが可能であり、且つ関連付けは該アプリケーション権限情報を該文書内に埋め込むことを包含することが可能である。
【００１２】
一般的に、別の側面においては、本発明は、形態特定可能なコンテキスト依存性ユーザソフトウエアアプリケーションを提供する技術を実現し且つ使用するコンピュータプログラムプロダクトを包含する方法及び装置を提供する。１組のディスエーブルさせた動作を包含するユーザソフトウエアアプリケーションが提供される。該ユーザソフトウエアアプリケーションは、アプリケーション権限情報に基づいて受取ったコンテントに関して動作するために該１組のディスエーブルさせた動作における１つの動作をイネーブルさせることが可能である。コンテント発生ツールが提供される。該コンテント発生ツールはユーザソフトウエアアプリケーションと適合性を有するフォーマットでコンテントを発生し且つ該コンテントに対してアプリケーション権限情報を発生することが可能である。該アプリケーション権限情報は該１組のディスエーブルされた動作における１つ又はそれ以上の動作を識別し且つ該ユーザソフトウエアアプリケーションをして該識別された動作をイネーブルさせることが可能である。該ユーザソフトウエアアプリケーションは一人又はそれ以上のユーザへ配布され且つ該コンテント発生ツールは該ユーザのうちの一人又はそれ以上へ配布されるべきコンテント及びアプリケーション権限情報を発生する場合に使用するために該コンテント発生ツールは１又はそれ以上のコンテントプロバイダーへ配布される。
【００１３】
有益的な実現例は以下の特徴のうちの１つ又はそれ以上を包含することが可能である。ユーザソフトウエアアプリケーションを提供することは、該ユーザソフトウエアアプリケーションにおいてアプリケーション権限管理モジュールを提供することを包含することが可能である。該アプリケーション権限管理モジュールは、１つ又はそれ以上のディスエーブルされている動作が使用可能とされたコンテキストが存在するか否かを検知し且つ該ユーザソフトウエアアプリケーションに対して該コンテキスト内において該動作をイネーブルさせることを命令することが可能である。該ユーザソフトウエアアプリケーションを配布することは、該アプリケーション権限管理モジュールを該ユーザの一人又はそれ以上へ配布することを包含することが可能である。
【００１４】
一般的に、更に別の側面においては、本発明は、形態特定可能なコンテキスト依存性ユーザソフトウエアアプリケーションを提供し且つ使用する技術を実現し且つ使用するコンピュータプログラムプロダクトを包含する方法及び装置を提供する。１組のディスエーブルさせた動作を包含するユーザソフトウエアアプリケーションが提供される。コンテント発生ツールが提供される。該コンテント発生ツールは、コンテント及び該コンテンストに対するアプリケーション権限情報を該ユーザソフトウエアアプリケーションと適合性を有するフォーマットで発生することが可能である。該ユーザソフトウエアアプリケーションは一人又はそれ以上のユーザに対して配布される。該コンテント発生ツールは一人又はそれ以上のコンテントプロバイダーへ配布される。コンテントは、ユーザソフトウエアアプリケーションと適合性を有し且つ該１組のディスエーブルされた動作におけるディスエーブルされた動作のうちの１つ又はそれ以上により動作させることが可能なフォーマットで発生される。アプリケーション権限情報が該コンテントに対して発生される。該アプリケーション権限情報は、該アプリケーション権限情報において特定されたコンテキスト内においてコンテントに関して動作するために該１組のディスエーブルさせた動作における１つの動作をイネーブルさせることが可能である。該コンテント及び該アプリケーション権限情報は一人又はそれ以上のユーザへ配布される。該発生されたコンテントが受取られる。該アプリケーション権限情報が受取られる。該１組のディスエーブルさせた動作における該動作が該受取ったコンテントに関して動作すべくイネーブルされる。該イネーブルされた動作は該ユーザソフトウエアアプリケーションを使用して該受取ったコンテントに関して実施される。
【００１５】
本発明は以下の利点のうちの１つ又はそれ以上を実現するために実施することが可能である。イネーブラーをサポートし且つアプリケーションプロバイダーにより無償で入手可能であるか又は低コストで提供されるコンピュータソフトウエアアプリケーションプロダクトをインストールしたユーザは、コンテントプロバイダーにより要求される場合があるより多くのワークフローに参加することが可能である。コンテントプロバイダーは、機能性がデフォルトによりイネーブルされるか又はユーザがイネーブラーを受取った後に機能性をイネーブルさせることが可能であるかのいずれかの理由により全てのユーザのコンピュータソフトウエアアプリケーションが同一の組の動作を実施することが可能であることを確かなものとすることが可能である。従って、コンテントプロバイダーは、減少させた組の機能を有するコンピュータソフトウエアアプリケーションにおいて使用されることに制限される必要性がなく尚且つ同一の多数のユーザに到達することが可能な単一バージョンのコンテントを提供することが可能である。
【００１６】
アプリケーションプロバイダーは１つ又はそれ以上の標準の形態を有するコンピュータソフトウエアアプリケーションをユーザへ送ることが可能である。例えば、アプリケーションプロバイダーは、アプリケーションの「基本バージョン」を無償で入手可能とさせ、アプリケーションの「低機能性」バージョンを低コストで入手可能とさせ、且つアプリケーションの「高機能性」バージョンをより高いコストで入手可能なものとさせることが可能である。「基本バージョン」においては、ユーザは、例えば、制限なしでコンテントを見ることが可能であるが、コンテントに関して署名、保存又はコメントを行うためには１つ又はそれ以上のイネーブラーが必要である。「低機能性バージョン」においては、ユーザは制限なしでコンテントに関し観察、署名、保存及びコメント付与を行うことが可能であるが、該コンテントに関して更なる動作を実施するためには１つ又はそれ以上のイネーブラーが必要である。「高機能性バージョン」においては、ユーザはコンテントを観察すること、署名すること、保存すること及びコンテントに関しコメントすること、新たなコンテントを作成すること、及び制限なしで何等かのその他の可能な動作を包含する全ての動作を実施することが可能である。
【００１７】
コンテントプロバイダーは特定のコンテキストに対してコンピュータソフトウエアアプリケーションにおける異なる組の機能をイネーブルさせることが可能であり、即ち、ある機能を特定の文書、特定のセッション又は与えられた数のセッションに対してイネーブルさせることが可能であり、一方その他の機能は特定のユーザ及び／又はコンピュータに対して特定の時間期間中にイネーブルさせることが可能である等である。
【００１８】
本発明の１つ又はそれ以上の実現例の詳細は添付の図面及び以下の説明において記述する。本発明のその他の特徴、目的及び利点は該説明及び図面及び特許請求の範囲から明らかである。
【発明を実施するための最良の形態】
【００１９】
本発明は、３つの異なる側面、即ちアプリケーションプロバイダーの観点、コンテントプロバイダーの観点、及びユーザの観点、からの例によって説明することが可能である。アプリケーションプロバイダー（１０５）と、コンテントプロバイダー（１１０）と、ユーザ（１１５）との間の関係の概略（１００）を図１に模式的に示してある。アプリケーションプロバイダー（１０５）、コンテントプロバイダー（１１０）、ユーザ（１１５）は、典型的に、異なる地理的位置に位置しているが、代替的に同一の物理的位置に位置させることが可能である。
【００２０】
アプリケーションプロバイダー（１０５）は一人又はそれ以上のユーザへ配布されるべきユーザソフトウエアアプリケーションとも呼称されるコンピュータソフトウエアアプリケーション（１２５）及びコンテントプロバイダー（１１０）へ配布されるべきコンテント発生ツール（１２０）を供給する。コンピュータソフトウエアアプリケーション（１２５）は、典型的に、無償か又は低コストでユーザへ供給される導入レベルのコンピュータソフトウエアアプリケーションである。コンピュータソフトウエアアプリケーション（１２５）はユーザが任意のコンテキストにおいて使用することが可能な１組のイネーブルされたデフォルト機能と、デフォルトによってイネーブルされていない１組の付加的な機能とを有している。
【００２１】
コンテント発生ツール（１２０）は、ユーザのコンピュータソフトウエアアプリケーションにおいて特定のコンテキスト内において該１組の付加的な機能における１つ又はそれ以上の機能をコンテントプロバイダーがイネーブルさせることを可能とさせる。機能をイネーブルさせるための１つのメカニズムは、コンテント発生ツール（１２０）内においてイネーブラー（１３０）を発生させ且つこれらのイネーブラー（１３０）を一人又はそれ以上のユーザへ配布させることである。イネーブラーがユーザのコンピュータ上にインストールされると、該イネーブラーは、そのイネーブラー（１３０）において特定されているコンテキスト内においてユーザのコンピュータソフトウエアアプリケーション内に包含されている付加的な機能のうちの１つ又はそれ以上をイネーブル即ち動作可能とさせることが可能である。コンテント発生ツール（１２０）は、又、ユーザソフトウエアアプリケーションと適合性のあるフォーマットでコンテント（１３５）を発生するためにコンテントプロバイダー（１１０）により使用することが可能であり、且つコンテントプロバイダーがそうすることを所望する場合には、１つ又はそれ以上のイネーブラーを発生されたコンテントの特定の部分又はタイプと関連付けさせる。イネーブラー（１３０）及びコンテント（１３５）はタンジブルな媒体上で又は例えばインターネット等の通信ネットワークを介して別々に又は一緒に一人を超えるユーザ（１１５）によって要求され及び／又はそれへ配布させることが可能である。イネーブラー（１３０）及びコンテント（１３５）は以下に更に詳細に説明する。ユーザがコンピュータソフトウエアアプリケーション、イネーブラー、コンテントを獲得した後に、ユーザは、イネーブラー（１３０ａ）によりイネーブルされ且つコンテントプロバイダー（１１０）によりユーザ（１１５）へ供給された受信されたコンテント（１３５ａ）に関して動作を実施することが可能である。
【００２２】
次に、本発明を、アプリケーションプロバイダー（１０５）、コンテントプロバイダー（１１０）、ユーザ（１１５）の観点から実施例について更に詳細に説明する。本発明の技術的範囲内に属する多くの変形例が可能であることは明らかである。
【００２３】
アプリケーションプロバイダーの観点
図２はコンピュータソフトウエアアプリケーション及びコンテント発生ツールを夫々ユーザ及びコンテントプロバイダーへ供給し且つ配布するためのアプリケーションプロバイダーの観点からのプロセス（２００）を示している。アプリケーションプロバイダーはコンピュータソフトウエアアプリケーション（２０５）を供給する。コンピュータソフトウエアアプリケーションは、アプリケーションプロバイダーにより製造されたものか、又は何等かのその他のエンティティにより製造されたもののいずれかとすることが可能であり且つアプリケーションプロバイダーにより異なるユーザへ配布させることが可能である。コンピュータソフトウエアアプリケーションは単一のアプリケーションか又は１つのアプリケーションを形成するために一体的に作業を行うより小さな「サブアプリケーション」又はサービスの集まりとすることが可能である。上述したように、コンピュータソフトウエアアプリケーションはユーザに対して無償か又は低コストで入手可能なものとさせることが可能であり、且つユーザにより無制限の使用のために入手可能な１組のイネーブルされたデフォルト機能を包含している。該１組のイネーブルされたデフォルト機能に加えて、コンピュータソフトウエアアプリケーションは、又、デフォルトによってイネーブルされるものでないが更なる権限でもってイネーブルさせることが可能な１組の付加的な機能を包含している。該付加的な機能は、例えば所定時間期間の間、特定の文書に対し、特定のコンピュータに対し、特定のユーザに対し、等々の特定のコンテキスト即ち文脈内においてイネーブルさせることが可能である。本発明のコンテントプロバイダーの側面及びユーザの側面について説明する場合にどのようにして機能がイネーブルされるかについて以下に更に詳細に説明する。
【００２４】
アプリケーションプロバイダーは、又、コンテント発生ツール（２１０）を供給する。コンテント発生ツールは、ソフトウエア及び／又はファームウエアモジュールとして実現することが可能であり、且つコンピュータソフトウエアアプリケーション（１２５）における１つの特徴として供給するか又は別個のスタンドアローンプロダクトとして供給することが可能である。コンテント発生ツールはコンピュータソフトウエアアプリケーション（１２５）を使用するユーザにより動作させることが可能なコンテントを発生するためにコンテントプロバイダーにより使用することが可能である。コンテント発生ツールは、又、上述した如く、与えられたコンテキスト内においてユーザのコンピュータソフトウエアアプリケーション内における１つ又はそれ以上の付加的な機能をイネーブルさせることが可能なイネーブラーを発生させるために使用することが可能である。異なるコンテキストの例については、コンテントプロバイダーの役割について説明する場合に以下に更に詳細に説明する。
【００２５】
コンピュータソフトウエアアプリケーションのコピーを一人又はそれ以上のユーザ（２１５）へ配布し且つコンテント発生ツールのコピーを１つ又はそれ以上のコンテントプロバイダー（２２０）へ配布する。コンピュータソフトウエアアプリケーション及びコンテント発生ツールの配布は、例えば、インターネットを介して又は例えばディスケット又はＣＤ−ＲＯＭ等の何等かの形態のタンジブルな媒体上で行わせることが可能である。この配布は販売、販促品の提供として、又は何等かの従来のビジネス方法を介して行うことが可能である。この配布は必ずしもコンピュータソフトウエアアプリケーション全体をユーザのコンピュータへ送ることを必要とするものではない。例えば、幾つかの実現例においては、ユーザはそのアプリケーションをホストするサーバー又はコンピュータとネットワークを介して通信するのに必要なコンピュータソフトウエアアプリケーションのコンポーネントのみを受取ることが可能である。
【００２６】
アプリケーションプロバイダーがコンピュータソフトウエアアプリケーション及びコンテント発生ツールを配布した後に、アプリケーションプロバイダーはコンテントプロバイダー（２２５）から情報を受取る。この情報は、典型的に、そのコンテントが送給されたユーザの数、どの動作がイネーブルされたか、及びその動作がイネーブルされたコンテキストのうちの１つ又はそれ以上を包含している。この情報の１つ又はそれ以上の部分は、ユーザのコンピュータ上のコンピュータソフトウエアアプリケーションの機能をイネーブルさせるための補償として、コンテントプロバイダーからアプリケーションプロバイダーへのアカウントに対する基礎として作用する。最後に、供給された情報に基づいて、アプリケーションプロバイダーはコンテントプロバイダー（２３０）からアカウントを受取る。これらがどのようにして行われるかについては、コンテントプロバイダーの役割について説明する場合に以下に詳細に説明する。
【００２７】
本発明の異なる実現例において、ステップ２２５及び２３０はオプションであり且つコンテントプロバイダーがアプリケーションプロバイダーとどのようなタイプの契約を結んでいるかに依存する。例えば、あるコンテントプロバイダーはコンテント及びアプリケーション権限を発生し且つ配布するためにアプリケーションプロバイダーにより無制限のライセンスが与えられている場合があり、一方その他のコンテントプロバイダーの自由度はより制限されている場合があり且つ上述した如くアプリケーションプロバイダーに対して報告せねばならない場合がある。
【００２８】
コンテントプロバイダーの観点
図３は一人又はそれ以上のユーザに対してコンテント及びアプリケーション権限情報を発生するためのコンピュータプロバイダーの観点からのプロセス（３００）を示している。コンテントプロバイダーは、上述した如く、ユーザ（３０５）へ配布すべきコンテントを発生するためにアプリケーションプロバイダーから受取ったコンテント発生ツールを使用する。コンテントプロバイダーは、又、コンテント発生ツールを使用してアプリケーション権限情報（３０１）を発生する。アプリケーション権限は、ユーザアプリケーションにより実施することが可能なプロセス又は動作に関連する権限のことを意味している。アプリケーション権限は、特定のコンテントと関連していることは必要ではないが関連付けされている場合がある。アプリケーション権限に加えて、コンテントプロバイダー（即ち著者）は１つ又はそれ以上の許可をコンテントの特定の部分（例えば、文書又はその一部）と関連づける場合がある。許可はコンテントに特定的であり且つユーザアプリケーションによりどのような動作を実施することが可能であるかを制限する。例えば、コンテントプロバイダーは、ユーザが文書をコピーすることを許容するがその文書を印刷することを許容するものではない許可を設定する場合がある。許可はアプリケーション権限をオーバーライドすることが可能であり、従って特定の動作を実施するために特定のユーザのソフトウエアアプリケーションがイネーブルされる場合であっても、特定の文書又はコンテントの一部と関連する許可はユーザがその特定の文書に対して動作を実施することを阻止することが可能である。
【００２９】
１つの実現例においては、アプリケーション権限情報は権限言語で表現された１組の認証された認可として実現される。認可が認証されるということは、アプリケーション権限及び該アプリケーション権限が適用されるコンテキストが、このようなアプリケーション権限を作成し且つ修正するために、例えばアプリケーションプロバイダー等の別の異なるエンティティにより証明されている例えばコンテントプロバイダー等のエンティティにより署名されていることを意味する。
【００３０】
アプリケーション権限情報は、ある規則に従うことが要求される場合がある。規則は、例えば、ユーザがコンテントに対してある修正を行うことを認可することが可能であるが、例えば文書内の全頁を置換させる等の「不合理な修正」は認証されているコンテントプロバイダーによってのみ実施することが可能であるということを提供することが可能である。別の例は、認証されているコンテントプロバイダーのみが以下に更に詳細に説明する権限辞書を１つの文書から別の文書へコピーすることが可能であるというものである。更に別の例は、コンテントプロバイダーのみがあるコンテントに対して権限情報を既存の権限情報へ付加することが可能であるというものである。このことはユーザが認可なしで（例えば、コンテントプロバイダー又はユーザからアプリケーションプロバイダーに対してアカウントを提供することなしに）、ユーザがその権限を拡張させたり他のものへ権限を移したりすることを阻止する。この認可は、例えばパブリックキー及びプライベートキー等の標準の暗号技術を使用して実施することが可能である。
【００３１】
アプリケーション権限情報は、又、上述した如く、イネーブラーとして呼称される。アプリケーション権限情報、即ちイネーブラーは、多様な一般的なコンテントフォーマットで埋め込むことが可能であり、又は１つ又はそれ以上の別々のファイルとして与えることが可能である。イネーブラーはコンテントプロバイダー又は何等かのその他の認可された即ち権限が与えられたエンティティによりプライベートキーで署名されており、且つユーザがどのような権限を有するかの記述及びその権限が適用可能なコンテキストを包含している。イネーブラーのコンテキストは柔軟性があり、例えば、この文書に対してのみ適用、このセッション又は設定した数のセッションに対してのみ適用、与えられた数の使用に対して適用、特定の時間窓において適用、特定のコンピュータ又はユーザに対してのみ適用等を包含することが可能である。
【００３２】
コンテント及びアプリケーション権限情報が発生された後に、アプリケーション権限情報はコンテント（３１５）に取付けられる。アプリケーション権限情報は、例えばコンテントファイル内に埋め込むか、又はコンテントファイルへ取付けられた１つ又はそれ以上の別のファイル内に包含させる等の任意の従来の方法により取付けることが可能である。別の実現例においては、アプリケーション権限情報はコンテントファイルに取付けられるものでないが、コンテントファイルに加えて１つ又はそれ以上の別のファイルとして供給される。図６は埋め込まれたアプリケーション権限情報（６０５）、許可情報（６１０）、コンテント（６１５）を有するファイル（６００）の概略図を示している。１実現例においては、アプリケーション権限情報（６０５）は権限の列挙又は辞書（即ち、どの権限がどのコンテントに関連しているか）、ファイルのハッシュ、及びパブリック・プライベートキー対又はその他の同様の態様のユーザの検証等の権限辞書の署名を包含している。これはコンテントプロバイダーが異なるユーザに異なるアプリケーション権限を与えることを可能とさせる。ハッシュはファイルのコンテント即ち内容に基づいており且つ適宜の従来のハッシュアルゴリズムに従って作成される。文書又はコンテントの一部が変化される度に、新たなハッシュが作成され且つ前のものと比較される。その文書又はコンテントが著しく変化される場合には、新たなハッシュは前のものとは異なる。著しい変化とは、例えば、文書の全て又は殆ど全ての頁を異なるコンテントを具備する新たな頁と置換させる場合等である。ハッシュアルゴリズムは、例えば、ハッシュを作成する上で文書の最初及び最後の頁を使用することによりこのことを検知することが可能である。認証されたコンテントプロバイダーのみが著しい変化を行うことが許容され、そのことはユーザがコンテントプロバイダーとして作用することを阻止する。許可情報（６１０）は許可の列挙即ち一覧表及びオプションとして、コンテントがコンテントプロバイダーにより暗号化されている場合に、そのファイルのコンテント（６１５）をユーザが解読することが必要とされる場合のパスワードを包含している。
【００３３】
次に、図３から理解されるように、コンテントプロバイダーは、コンテント及びアプリケーション権限情報がどのように表現されているかに依存して、アプリケーション権限情報と別に又は一緒に一人又はそれ以上のユーザ（３２０）へコンテント及びアプリケーション権限情報を配布する。コンテントプロバイダーは、どのようなタイプの契約をコンテントプロバイダーがアプリケーションプロバイダーと有しているかに依存して、コンテント及びアプリケーション権限情報の幾つのコピーをユーザへ配布したか及びどの権限がイネーブルされたかのカウントを維持することが可能である。最後に、コンテントプロバイダーはユーザの数及びコンテントプロバイダーがユーザのコンピュータ（３３０）上のコンピュータソフトウエアアプリケーションにおけるディスエーブルされている機能をイネーブルさせたコンテキストに基づいてアプリケーションプロバイダーへアカウントを供給する。
【００３４】
アプリケーションプロバイダーへ情報及びアカウントを供給する上の例は、本発明の１つの実現例においてこのことがどのように行われるかの１つの例に過ぎない。異なる実現例においては、コンテントプロバイダーは、コンテントプロバイダーがコンテントファイルへアプリケーション権限情報を取付ける場合にアプリケーションプロバイダーへアカウントを供給する。更に別の実現例においては、コンテントプロバイダーは、ユーザから修正されたコンテントを受取る場合があり、且つコンテントのリターンされたコピーの数に基づいてアプリケーションプロバイダーへ情報とアカウントとを供給することが可能である。このような状態の１つの例は、コンテントプロバイダーがユーザにより書込まれ且つリターンされるべき空のアプリケーションフォームを送り出す場合である。
【００３５】
コンテントプロバイダーがイネーブラーに課す権限、及びイネーブラー及びコンテントの発生に関しての一般的なコンテントプロバイダーの権限は、更に、例えばパブリックキー暗号作成法に基づく認証プロセス等の標準の暗号技術によって強制される１組の規則又は断定により制御することが可能である。図２におけるように、本発明の異なる実現例においては、ステップ３２５及び３３０はオプションであり且つコンテントプロバイダーがアプリケーションプロバイダーとどのようなタイプの契約を有しているかに依存する。
【００３６】
ユーザの観点
図４はユーザのコンピュータ上のコンピュータソフトウエアアプリケーションを使用して受取ったコンテントに関して動作を実施するためのユーザの観点からのプロセス（４００）を示している。ユーザはアプリケーションプロバイダーから既にコンピュータソフトウエアアプリケーションを獲得し且つインストールしているものと仮定する。ユーザはコンテントプロバイダーからコンテント（４０５）を受取る。ユーザアプリケーションは内蔵ハッシュアルゴリズム及びパブリックキーを有している。受取ったコンテントは、アプリケーション権限辞書が不変のままであり（即ち、それが認可なしに修正されていない）及び適宜のプライベートキーにより署名されていることを確認することにより、コンテント及びアプリケーション権限を検証するためにチェックされる。内蔵ハッシュアルゴリズムは、又、受取ったコンテントに関して稼動され且つその結果が文書内に与えられているハッシュと比較されて、コンテントプロバイダーにより準備された後にその文書が著しく変化されたか否かを検知する。これら全てのテストが成功である場合には、ユーザソフトウエアアプリケーションは、そのコンテントが認証されたコンテントプロバイダーから発生したものであることを確信することが可能である。
【００３７】
ユーザは、又は、１つ又はそれ以上のイネーブラーの形態でアプリケーション権限情報（４１０）を受取る。１つ又はそれ以上のイネーブラーの受取りは、コンテントの受領の前、同時又は後に発生することが可能である。何故ならば、イネーブラーは、典型的に、ユーザのコンピュータ上の所定の位置、又はユーザのコンピュータ上のコンピュータソフトウエアアプリケーションがアクセス可能な遠隔位置に格納されており、且つ何時それらがそこに到着したかとは独立的にこの位置からアクセスされる。次いで、該プロセスはコンピュータソフトウエアアプリケーションが受取ったコンテント（４１５）に関して動作を実施することを要求する入力を受取る。該入力は、ユーザによって、又は受取ったコンテントそれ自身により発生させることが可能である。受取った文書が上述した如くＰＤＦ文書である場合には、該動作は、該文書を見ること、該文書を印刷すること、該文書へコメントを付加すること、該文書にデジタル的に署名すること等とすることが可能である。
【００３８】
次いで、該プロセスは、該動作がコンピュータソフトウエアアプリケーション（４２０）における１組のイネーブルされたデフォルト動作に属するか否かをチェックする。その動作が該１組のイネーブルされているデフォルト動作に属する場合には、該プロセスはコンテント（４２５）に関して該動作を実施する。該動作が該１組のイネーブルされているデフォルト動作に属するものではない場合には、該プロセスは所望の動作（４３０）に対してイネーブラーが存在するか否かをチェックし、即ち、コンテントプロバイダーが該コンテントに関してこの付加的な動作を実施するためにユーザに必要な権限を与えているか否かをチェックする。１つの実現例においては、該プロセスはコンピュータソフトウエアアプリケーションにおけるアプリケーション権限管理（ＡＲＭ）オーソリティモジュールを調べることによりこのチェックを実施する。ＡＲＭモジュールは、例えばコンテントファイル又は文書において又はユーザのコンピュータ又はその特定のユーザに対するアプリケーション権限情報が格納されている遠隔位置に存在する１つ又はそれ以上の別々のライセンスファイルにおいてイネーブラーが存在することを検知することにより、任意の時刻において、ユーザにより使用するためにどの特徴が入手可能であるかを決定することが可能である。イネーブラーが検知されない場合には、このプロセスは要求された動作（４３５）に対するユーザのアクセスを拒否する。要求された動作に対してイネーブラーが存在している場合には、該プロセスはアプリケーション権限情報（４４０）により特定されているコンテキスト内の付加的な動作をイネーブルさせる。最後に、そのイネーブルされた動作が該コンテント（４４５）に関して実施される。
【００３９】
図５はユーザのコンピュータ上のコンピュータソフトウエアアプリケーションを使用して受取ったコンテントに関して動作を実施するためのユーザの観点からの別のプロセス（５００）を示している。この場合にも、ユーザは既にアプリケーションプロバイダーからコンピュータソフトウエアアプリケーションを獲得し且つインストールしているものと仮定する。ユーザは、図４に関して説明したように、コンテントプロバイダーからコンテント（５０５）及び１つ又はそれ以上のイネーブラーの形態におけるアプリケーション権限情報（５１０）を受取る。次いで、現在のコンテキストにおける全てのイネーブルされた動作がユーザに対して消費される（５１５）。１つの実現例において、そのイネーブルされた動作は、現在のコンテキストに対するイネーブラーが存在する場合にユーザがクリックオンするために使用可能なメニュー項目、ツールバーボタン等を作成することによりユーザに対して表示される。次いで、該プロセスは、例えば、イネーブルされたメニュー項目又はツールバーボタンをマウスでユーザがクリックすることにより受取ったコンテント（５２０）に関してイネーブルされている動作を実施することをコンピュータソフトウエアアプリケーションに要求するユーザの選択を受取る。最後に、選択された動作がコンテントに関して実施される（５２５）。
【００４０】
本発明は、デジタル電子回路において、又はコンピュータハードウエア、ファームウエア、ソフトウエア、又はそれらの組合わせで実現することが可能である。本発明の装置は、プログラム可能なプロセッサにより実行するために機械読取可能な格納装置においてタンジブルに具体化されているコンピュータプログラムプロダクトとして実現することが可能であり、且つ本発明の方法ステップは、入力データに関して動作し且つ出力を発生することにより本発明の機能を実施するための命令からなるプログラムを実行するプログラム可能なプロセッサにより実施することが可能である。本発明は、データ格納システムへデータ及び命令を送信し且つそれからデータ及び命令を受取るべく結合されている少なくとも１個のプログラム可能なプロセッサを包含するプログラム可能なシステム上で実行可能な１つ又はそれ以上のコンピュータプログラムの形態で有益的に実現することが可能である。各コンピュータプログラムは、ハイレベル手順又はオブジェクト指向型プログラミング言語で実現することが可能であり、又は、所望によりアッセンブリ又はマシン言語で実現することが可能であり且ついずれの場合においても、該言語はコンパイル型又はインタプリタ型の言語とすることが可能である。適宜のプロセッサは、例示として、汎用及び特別目的の両方のマイクロプロセッサを包含している。通常、プロセッサはリードオンリメモリ及び／又はランダムアクセスメモリから命令とデータとを受取る。通常、コンピュータはデータファイルを格納するための１つ又はそれ以上の大量記憶装置を包含しており、このような装置は例えば内部ハードディスク及び着脱自在なディスク等の磁気ディスク、磁気・光学ディスク、及びオプティカルディスクを包含している。コンピュータプログラム命令及びデータをタンジブルに実現化するのに適した格納装置は、例として、例えばＥＰＲＯＭ、ＥＥＰＲＯＭ等の半導体メモリ装置、及びフラッシュメモリ装置を包含する全ての形態の非揮発性メモリ、例えば内部ハードディスク及び着脱自在なディスク等の磁気ディスク、ディスク・光学ディスク、及びＣＤ−ＲＯＭディスクを包含している。前述したもののいずれもＡＳＩＣ（応用特定集積回路）により補充するか又はその中に組込むことが可能である。
【００４１】
ユーザとのインタラクションを与えるために、本発明は、ユーザに対して情報を表示するためのモニタ又はＬＣＤスクリーン等の表示装置及びユーザがコンピュータシステムへ入力を供給することを可能とするマウス又はトラックボール等のポインティング装置及びキーボードを具備するコンピュータシステム上で実現することが可能である。コンピュータシステムは、それを介してコンピュータプログラムがユーザと相互作用を行うグラフィカルユーザインターフェースを提供すべくプログラムすることが可能である。
【００４２】
本発明の多数の実施例について説明した。然しながら、理解されるように、本発明の精神及び範囲を逸脱することなしに種々の修正を行うことが可能である。例えば、ユーザは任意の順番でコンテントとイネーブラーとを受取ることが可能である。複数のコンテントプロバイダーが存在する場合があり、そのうちの幾つかはイネーブラーを発生するのみであり且つ他のものはコンテントを発生するのみである。ユーザにより又はコンテントにより要求される動作は、すぐさま許可されるアクセス権限を有するものでない場合があり、且つその特定の動作に対して必要なアプリケーション権限を動的に獲得するためにユーザが遠隔サーバーへ接続することを要求する場合がある。アプリケーション権限を作成するためにコンテントプロバイダーを認証するエンティティは、アプリケーションプロバイダーであることは必要ではなく、異なるコンテントプロバイダーが実施することが許容されることを制御する異なるエンティティとすることが可能である。受取ったコンテントに関して実施すべき動作の選択はユーザにより直接的に行われることは必要ではない。その代わりに、動作の選択は、コンピュータソフトウエアアプリケーション又は実施することが必要な種々のステップを積極的にユーザを連れ回すユーザに対しての何等かの種類のヘルプ又は案内システムによって指示することが可能である。アプリケーション権限は、文書又は、例えば、頁又は頁上の個別的なオブジェクト等の文書の一部のレベルに関してのその他のタイプのコンテントへ付加することが可能である。付加的なパブリック及びプライベートキー対を、そのコンテントと関連するアプリケーション権限を調整するためにコンテントと共にユーザへ供給することが可能である。アプリケーション権限は、何等かのユーザの動作又は文書状態に応答して動的にユーザへ与えることが可能である。例えば、ユーザがフォームを受取る場合には、空白部分を埋めるためにユーザが元々権限を有している場合があり、且つ全ての必要とされる空白部分を完成した後に、そのフォームを署名し且つ提出する権限を受取る場合がある。従って、その他の実施例も特許請求の範囲内のものである。
【図面の簡単な説明】
【００４３】
【図１】本発明に基づいてアプリケーションプロバイダーと、コンテントプロバイダーと、ユーザとの間の関係を示した概略図。
【図２】本発明に基づいて夫々ユーザ及びコンテントプロバイダーに対してコンピュータソフトウエアアプリケーション及びコンテント発生ツールを供給し且つ配布するためのアプリケーションプロバイダーの観点からのプロセスを示したフローチャート。
【図３】本発明に基づいて一人又はそれ以上のユーザに対してコンテント及びアプリケーション権限情報を発生するためのコンテントプロバイダーの観点からのプロセスを示したフローチャート。
【図４】本発明に基づいてユーザのコンピュータ上のコンピュータソフトウエアアプリケーションを使用して受取ったコンテントに関して動作を実施するためのユーザの観点からのプロセスを示したフローチャート。
【図５】本発明に基づいてユーザのコンピュータ上のコンピュータソフトウエアアプリケーションを使用して受取ったコンテントに関して動作を実施するためのユーザの観点からの別のプロセスを示したフローチャート。
【図６】本発明に基づいてアプリケーション権限及び許可に関連するコンテントファイルを示した概略図。
【符号の説明】
【００４４】
１０５  アプリケーションプロバイダー
１１０  コンテントプロバイダー
１１５  ユーザ
１２０  コンテント発生ツール 
１２５  コンピュータソフトウエアアプリケーション
１３０  イネーブラー
１３５  コンテント
【図１】
2005518602.tif 000003
【図２】
2005518602.tif 000004
【図３】
2005518602.tif 000005
【図４】
2005518602.tif 000006
【図５】
2005518602.tif 000007
【図６】
2005518602.tif 000008
【国際調査報告】
2005518602.tif 000009