本開示は、複数のコンテンツアイテムを効率的かつ直感的に編成するコレクションコンテンツアイテムを生成、修正、維持及び提供するコンテンツ管理システムの1以上の実施形態を説明する。例えば、コンテンツ管理システムは、コンテンツアイテムの記憶位置へのリファレンスを特に含むコレクションコンテンツアイテムを生成することができる。参照されるコンテンツアイテムはコンテンツ管理システムの内外のいずれかのデジタル記憶位置に置くことができ、任意のタイプのデジタルコンテンツ(例えば、PDF、画像ファイル、ビデオファイル、オーディオファイル、ワープロ文書、メディアプレゼンテーション、又はウェブページ)を含むことができる。このように、コンテンツ管理システムはユーザに、記憶位置、ファイルタイプ、バージョン、又はパーミッションの問題によって制限されない共有可能なコンテンツアイテムのコレクションを作成するための、効率的で柔軟かつ容易な方法を提供するために、コレクションコンテンツアイテムを生成、修正、及び維持することができる。
さらに説明するために、1以上の実施形態では、コンテンツ管理システムがクライアントコンピューティングデバイスから、コレクションコンテンツアイテム(例えば、以下でさらに説明するように、1以上のコンテンツアイテムを参照及び編成するデータファイル)に追加する1以上のコンテンツアイテムの指示を受信することができる。当該指示を受信することに応じて、コンテンツ管理システムは、クライアントコンピューティングデバイスによって指示された1以上のコンテンツアイテムへの参照を含むコレクションコンテンツアイテムを生成することができる。例えば、コンテンツ管理システムは、1以上のコンテンツアイテムのデジタル記憶位置へのリファレンスをコレクションコンテンツアイテムに追加することができる。
さらに、コンテンツ管理システムは、生成されたコレクションコンテンツアイテムを、表示のためにクライアントコンピューティングデバイスに提供することができる。コンテンツ管理システムのアプリケーション(例えば、ウェブブラウザ又はネイティブアプリケーション)を介してクライアントコンピューティングデバイスによって表示される場合、コレクションコンテンツアイテムは、1以上のコンテンツアイテムに対する選択可能なリファレンスを含むことができる。例えば、コレクションコンテンツアイテムの中の選択可能なリファレンスの一つの検出された選択に応答して、コンテンツ管理システムは、選択されたリファレンスに関連するコンテンツアイテムのレンダリング又はコンテンツアイテムを提供することができる。
1以上の実施形態では、コンテンツ管理システムがコレクションコンテンツアイテムの編集モードと表示モードの両方を提供することができる。例えば、コレクションコンテンツアイテムが編集モードにある間、コンテンツ管理システムは、ユーザがテキスト、フォーマット、コンテンツアイテムのリファレンスなどを追加することができるコレクションコンテンツアイテムの編集可能なビューを提供することができる。さらに、コレクションコンテンツアイテムが編集モードである間、コンテンツ管理システムは、コンテンツアイテムの編集、コンテンツアイテムの編成の修正、及び以下でさらに詳細に説明するその他の機能のための追加ツールを提供することができる。
また、コンテンツ管理システムは、コレクションコンテンツアイテムを表示モードにおいて提供することができる。コンテンツ管理システムは、表示モードの間、コレクションコンテンツアイテムに事前に追加されたコンテンツアイテムへの選択可能なリファレンスを含むコンテンツのテーブルで、コレクションコンテンツアイテムをレンダリングすることができる。コンテンツ管理システムは、表示されたコンテンツのテーブル内のリファレンスの検出された選択に応答して、参照されるコンテンツアイテムを表示のために提供することができる。また、コンテンツ管理システムは以下に詳細を説明するように、コンテンツアイテムの指定された順序、フォーマット、バージョンでコンテンツアイテムを表示することができる。
1以上の実施形態では、コンテンツ管理システムがコレクションコンテンツアイテムに関連付けられる高レベルのパーミッション制御の粒度を提供することができる。例えば、コンテンツ管理システムは、コレクションコンテンツアイテムによって参照される各コンテンツアイテムに関連するパーミッション設定をユーザが指定できるようにすることができる。したがって、コレクションコンテンツアイテムが後に1人以上の追加ユーザと共有される場合、コンテンツ管理システムは、参照されるコンテンツアイテムごとに同じパーミッション設定を維持することができる。このように、追加のユーザが公開されたコレクションコンテンツアイテムと対話する場合、コンテンツ管理システムは、追加のユーザのパーミッションレベルに応じて、参照されるコンテンツアイテムの一部(全てではない)へのアクセスを提供してもよい。
1以上の実施形態では、コンテンツ管理システムは、コンテンツアイテムがコンテンツ管理システム内に格納されるフォルダパーミッションに基づいて、コレクションコンテンツアイテムが参照するコンテンツアイテムのパーミッションレベルを決定することができる。したがって、ユーザは複数の異なるフォルダに格納されている複数のコンテンツアイテムを組み合わせることができ、複数の異なるフォルダのそれぞれからのパーミッションは、コレクションコンテンツアイテムで参照されるコンテンツアイテムの組み合わせに関係なく、それぞれのコンテンツアイテムに対して維持される。さらに、1以上の実施形態では、コンテンツ管理システムがコレクションコンテンツアイテムで参照されるコンテンツアイテムのパーミッションを編集するオプションを提供することができる。したがって、コンテンツ管理システムは、ユーザがコレクションコンテンツアイテム内のコンテンツアイテムのコレクションを編成し、その後、コレクションコンテンツアイテムにアクセスするユーザが参照されるコンテンツアイテムのそれぞれにアクセスできるように、参照されるコンテンツアイテムのそれぞれに関連付けられたパーミッションを容易に編集することができる。
パーミッション制御に加えて、1以上の実施形態では、コンテンツ管理システムがコレクションコンテンツアイテムによって参照される全てのコンテンツアイテムのバージョン制御を提供することができる。例えば、コレクションコンテンツアイテムはベースコンテンツアイテム(例えば、「ライブ(live)」コンテンツアイテム)のデジタル位置へのリファレンスを含むため、コンテンツ管理システムは、そのコンテンツアイテムの最新たなバージョンを表示するために提供することができる。言い換えると、コレクションコンテンツアイテムはライブコンテンツアイテムの記憶位置へのリファレンスを含むため、ユーザがコレクションコンテンツアイテムにアクセスすると、コンテンツ管理システムはコンテンツアイテムの最新たなバージョンを提供することができる。これは、コレクションコンテンツアイテムが共有され、再共有され、コピーされ、移動されるときでさえ真のままである。
或いは、コンテンツ管理システムがコレクションコンテンツアイテム内のコンテンツアイテムの特定又は固定バージョン(例えば、「公開されたバージョン」)をユーザに提供できるバージョンロック機能を提供することができる。例えば、コンテンツ管理システムはコンテンツアイテムの種々のバージョンを記憶することができ、各バージョンは、コンテンツ管理システム内の特定のデジタル記憶位置の情報を有する。バージョンロック機能を使用すると、コンテンツ管理システムは、コンテンツアイテムの固定バージョンに関連付けられたデジタル記憶位置へのリファレンスを追加することができる。したがって、コンテンツアイテムのライブバージョンは受信した編集に基づいて引き続き更新されるが、コレクションコンテンツアイテムはドキュメントの特定のバージョンを提供することができる。したがって、コンテンツ管理システムはドキュメントの特定のバージョン(例えば、承認されたバージョン)をグループの人々に公開する直感的かつ効率的な方法を提供することができ、一方で、コンテンツを担当するユーザは、次のバージョンが公開の準備が整うまで、ドキュメントのライブバージョン上で作業を続けることができる。
コンテンツ管理システムは、既存のシステム及び方法に対して多くの利点及び利点を提供する。例えば、粒度の細かいパーミッション設定及び共有設定を可能にすることによって、コンテンツ管理システムは、既存のシステムに比べてはるかに柔軟性がある。具体的には、コンテンツ管理システムがファイルレベル(例えば、コンテンツアイテムレベル)とコレクションコンテンツアイテムレベルとの両方で、パーミッション設定と共有設定を設定可能にすることができる。これにより、コレクションコンテンツアイテムの作成者はコレクションコンテンツアイテムをユーザのグループと共有できるが、当該グループ内の特定のユーザがコレクションコンテンツアイテム内の所定のコンテンツアイテムにアクセスすることを選択的に無効にすることができる。したがって、コンテンツ管理システムはコレクションコンテンツアイテムの作成者に、コレクションコンテンツアイテムが他のユーザとどのように共有されるかについての多大な柔軟性及び制御を与えることができる。
さらに、コレクションコンテンツアイテムに対してこのようなきめ細かい制御を提供することによって、コンテンツ管理システムは、既存のシステムに共通する他の落とし穴を回避する。具体的には、コンテンツ管理システムのきめ細かいパーミッション設定や共有設定を利用することによって、既存システムと同様に、特定のユーザやユーザグループと共有するために、ユーザが特定のフォルダにファイルのコピーを作成する必要がなくなる。代わりに、コンテンツ管理システムはユーザが種々のフォルダや場所に格納されているいくつかのコンテンツアイテムのストレージリファレンスをコレクションコンテンツアイテムに追加することを許容し、その後、種々のフォルダのそれぞれにパーミッションレベルを手動で設定したり、ファイルやフォルダの複製コピーを作成したりすることなく、コレクションコンテンツアイテムについてのパーミッションレベルを設定することができる。そのため、コンテンツ管理システムは共有ユーザがコレクションコンテンツアイテム内のファイルの正しいバージョンを常に閲覧できることを保証しつつ、システムストレージを効率的に利用する。
さらに、コンテンツ管理システムは、コレクションコンテンツアイテムに関連して効率的かつ合理化されたグラフィカルユーザインタフェースを提供することによって、既存のシステムの他の技術的な落とし穴を回避する。例えば、コンテンツ管理システムは、既存のシステムでファイルを開いた結果として生じる、開かれたウィンドウのハザード表示ではなく、ディスプレイの1つの部分におけるコレクションコンテンツアイテムに関連付けられたコンテンツアイテムについてのコンテンツのテーブルを含む単一のグラフィカルユーザインタフェースを、ディスプレイの第2の部分における選択されたコンテンツアイテムのレンダリングと共に提供することができる。したがって、ユーザは提供されたコンテンツのテーブル内で選択を行うことができ、それらのコンテンツアイテムのレンダリングを、すべて同じグラフィカルユーザインタフェース内で素早く閲覧することができる。さらに、閲覧ユーザは種々のフォルダをナビゲートし、種々の個々のファイル選択を行う必要がある場合と比較して、より少ないステップ、選択、及び対話でコレクションコンテンツアイテムを介して提供されるコンテンツアイテムに、より効率的かつ迅速にアクセスすることができる。さらに、コンテンツ管理システムは全ての異なる種類のコンテンツアイテムのレンダリングを提供できるため、ユーザはコンテンツアイテムを閲覧する目的で、特定のアプリケーション及び/又はソフトウェアをインストールする必要がない。さらなる利点は、以下の説明に基づいて明らかになるであろう。
前述の説明によって示されるように、本開示はコンテンツ管理システムの特徴及び利点を説明するために、種々の用語を利用する。ここで、そのような用語の意味に関して、さらなる詳細を提供する。例えば、本明細書で使用されるように、用語「コンテンツアイテム」は、ファイルとして利用可能な任意のタイプのデジタルコンテンツを指す。特に、コンテンツアイテムはオンラインクラウドストレージ文書(例えば、コンテンツ管理システムを介して利用可能)、携帯型文書フォーマット(例えば、「PDF」)文書、Microsoft(登録商標) Office(登録商標)文書、ウェブページ文書(例えば、html文書)、ユニフォームリソースロケータ(例えば、「URL」)、又はデジタルメディアファイル(例えば、デジタルビデオファイル、デジタル画像ファイル、デジタルオーディオファイル)、又は任意の他のタイプのデジタルコンテンツを含むことができる。
1以上の実施形態では、コンテンツアイテムが共同コンテンツアイテムを含むことができる。本明細書で使用されるように、用語「共同コンテンツアイテム」は、共同情報を含むか、又は共同情報に関連付けられるコンテンツアイテムを指す。例えば、共同コンテンツアイテムは複数のユーザが集合的に共同作業した(例えば、種々の部分を追加した、種々の部分を削除した、種々の部分についてコメントした)テキストドキュメントであってもよい。1以上の実施形態において、ユーザがウェブブラウザを介してアクセスされるネットワークアプリケーションインタフェースを介して、共同コンテンツアイテム上で共同作業することができる。共同コンテンツアイテムは共同作業者に関連付けられたユーザ情報、文書編集に関連付けられたタイムスタンプデータ、及び種々の共同作業者からのコメントデータを含む追加のメタデータと共に、テキスト文書データを含むことができる。
コンテンツアイテムはまた、コレクションコンテンツアイテムを含むことができる。本明細書で使用されるように、用語「コレクションコンテンツアイテム」は、他のコンテンツアイテムを参照するコンテンツアイテムを指す。たとえば、コレクションコンテンツアイテムには、データ構造や、他のコンテンツアイテムへのリファレンスを含むデータファイルを含めることができる。本明細書で使用されるように、「リファレンス」又は「コンテンツアイテムリファレンス」はコンテンツアイテムの識別子を指し、識別子は例えば、コンテンツアイテムのデジタル記憶位置又はコンテンツアイテムに関連付けられた固有のIDを識別することができる。例えば、コンテンツアイテムへのリファレンスには、コンテンツアイテムの記憶位置を示すポインタやリソースロケータを含めることができる。例えば、リファレンスは、コンテンツアイテムのオンラインクラウドの記憶位置、コンテンツアイテムのウェブサーバの場所、又はコンテンツアイテムのハードドライブの場所へのポインタであってもよい。
1以上の実施形態では、コンテンツ管理システムが他のタイプのコンテンツアイテムと同じ方法でコレクションコンテンツアイテムを格納する。例えば、コンテンツ管理システムは、コレクションコンテンツアイテムの名称及び/又はコレクションコンテンツアイテムの作成者に基づいて、コレクションコンテンツアイテムをファイル構造に格納することができる。コンテンツ管理システムは、サーバレベル又はクライアントコンピューティングデバイスでコレクションコンテンツアイテムを格納することができる。クライアントコンピューティングデバイスに格納されている場合、コンテンツ管理システムは他のタイプのコンテンツアイテムと同様に、閲覧/アクセス可能なファイルシステム内にコレクションコンテンツアイテムを格納することができる。少なくとも一実施形態では、コレクションコンテンツアイテムが1以上の追加のコレクションコンテンツアイテムを参照することができる。このようなコレクションコンテンツアイテムは、コレクションコンテンツアイテムのネストされたツリーを作成しうる。
1以上の実施形態では、コレクションコンテンツアイテムがハイパーテキストマークアップ言語(HTML)、カスケーディングスタイルシート(CSS)、又はコレクションコンテンツアイテムがどのように表示されるべきかをウェブブラウザ又は別のタイプのアプリケーション(例えば、モバイルアプリ)に指示する他のタイプの命令を含むことができる表示命令を含むこともできる。少なくとも1つの実施形態において、コレクションコンテンツアイテムがコンテンツ管理システムのアプリケーションを介してアクセスされる場合には、編集モード及び表示モードを有する。上述したように、コンテンツ管理システムは、コンテンツ管理システムのアプリケーション及び/又はウェブブラウザを介して、1人以上の追加ユーザにコレクションコンテンツアイテムを提供又は「公開」することができる。
本明細書で使用されるように、「パーミッション」は、コンテンツアイテムに関連付けられた特定のレベルのアクセスを指す。たとえば、コンテンツアイテムのパーミッション設定では、コンテンツアイテムを閲覧、編集、コピー、共有、及び/又はダウンロードできる特定のユーザ又はユーザレベルを指定できる。さらに、本明細書で使用されるように、コンテンツアイテムの「バージョン」は、特定の開発段階におけるコンテンツアイテムのコピーを指す。たとえば、種々の理由により、コンテンツアイテムが時間とともに変更、更新、又はその他の方法で編集される場合がある。少なくとも1つの実施形態では、コンテンツアイテムのバージョンは変更の各段階でのコンテンツアイテムを含むことができる。説明のために、コンテンツ管理システムは特定の時刻にコンテンツアイテムのスナップショットを生成し、そのスナップショットへのロックされたポインタを作成することによって、コンテンツアイテムの固定バージョンを作成することができる。コンテンツ管理システムは、コンテンツアイテムの作成者のための「ライブ」又は編集可能なコンテンツアイテムを維持しつつ、コンテンツアイテムの特定のバージョンを他の共有ユーザが利用できるようにすることができる。
図1は、コンテンツ管理システム104が動作する例示的なシステム100を示す概要図である。図1に示すように、システム100は、コンテンツ管理システム104を含み、かつコンテンツ管理システムデータリポジトリ105に関連付けられたサーバ102を含む。さらに、例示のシステム100には、コンテンツ管理システムのアプリケーション108a、108a、108c、108dがそれぞれインストールされているクライアントコンピューティングデバイス106a、106b、106c、106dも含まれる。図1に示すように、システム100は、サードパーティサーバ112も含むことができる。
少なくとも1つの実施形態において、クライアントコンピューティングデバイス106a-106d及びサーバ102は、ネットワーク110を介して通信可能に連結される。図1はクライアントコンピューティングデバイス106a-106d、サーバ102、及びネットワーク110の特定の構成例を図示しているが、他の種々の構成が可能である。例えば、クライアントコンピューティングデバイス106a-106dは、ネットワーク110を介さずに、サーバ102と直接通信するようにしてもよい。さらに、1以上の実施形態ではクライアントコンピューティングデバイス106a-106dのいずれかが、コンテンツ管理システムのアプリケーション108a-108dをそれぞれ含まず、むしろネイティブアプリケーション又はウェブアプリケーションを介してコンテンツ管理システム104の機能を利用するようにしてもよい。
本明細書ではクライアントコンピューティングデバイス106a~106d(例えば、スマートフォン)を含むものとして1以上の実施形態を説明するが、追加の実施形態ではコンテンツ管理システム104が任意の種類のクライアントコンピューティングデバイスと組み合わせて動作することができる。例えば、追加の実施形態ではスマートフォンを含むのではなく、システム100はラップトップ、デスクトップ、タブレット、ウェアラブルなどのクライアントコンピューティングデバイスを含むことができる。クライアントコンピューティングデバイスの追加の例示及び特徴は、図7及び図8を参照して以下に記載される。
クライアントコンピューティングデバイス106a~106d及びサーバ102は、データ及び/又は通信信号を伝送するのに適した任意の通信プラットフォーム又は技術を使用して通信することができる。例えば、クライアントコンピューティングデバイス106a-106d及びサーバ102は遠隔データ通信をサポートする任意の既知の通信技術、装置、媒体及びプロトコルを介して通信することができ、これらの例については図7及び図8を用いて後述する。さらに、所定の実施形態では、クライアントコンピューティングデバイス106a-106dがネットワーク110を介してサーバ102と通信することができる。ネットワーク110は、クライアントコンピューティングデバイス106a-106dがサーバー102にアクセスすることができる任意の適切なネットワークであり、逆の場合もありうる。ネットワーク110については、図8を参照して以下でより詳細に説明する。
図1に示すように、サーバ102はコンテンツ管理システム104を含む。1以上の実施形態では、コンテンツ管理システム104がユーザにリモートコンテンツストレージ(例えば、クラウドストレージ)を提供する。例えば、コンテンツ管理システム104に関連付けられたアカウントを有するユーザは種々のタイプのデジタルコンテンツアイテム(例えば、デジタル写真、デジタルビデオ、PDFファイル、ワープロファイル等)をコンテンツ管理システム104にアップロードすることができる。少なくとも1つの実施形態では、コンテンツ管理システム104がアップロードされたデジタルコンテンツアイテムを、ユーザの後の閲覧及びダウンロード可能なために、コンテンツ管理システムのデータリポジトリ105内に編成し、格納する。コンテンツ管理システム104に関するさらなる詳細は、図8を参照して以下で提供する。
また、図1にさらに示して上述したように、クライアントコンピューティングデバイス106a~106dは、それぞれコンテンツ管理システムのアプリケーション108a~108dを含む。説明の目的上、ここで、クライアントコンピューティングデバイス106aはコレクションコンテンツアイテムの作成者に関連付けられ、一方で、クライアントコンピューティングデバイス106b、106c、106dは、コンテンツ管理システム104がコレクションコンテンツアイテムを共有したコンテンツ管理システムの他のユーザに関連付けられることが理解されるであろう。1以上の実施形態において、クライアントコンピューティングデバイス106a-106dのそれぞれは以下に詳しく説明するように、コレクションコンテンツアイテムに関する異なったパーミッション設定及びバージョンのアクセス制御に関連付けられる。
1以上の実施形態において、コンテンツ管理システムのアプリケーション108は、クライアントコンピューティングデバイス106上のネイティブアプリケーション又はネットワークアプリケーションとすることができる。1以上の実施形態において、コンテンツ管理システムのアプリケーション108は、コンテンツ管理システム104にアクセスするインターネットブラウザである。コンテンツ管理システムのアプリケーション108は、ユーザがコンテンツ管理システム104を使用及び/又はアクセスすることを可能にする1以上のグラフィカルユーザインタフェースを提供することができる。例えば、コンテンツ管理システムのアプリケーション108はユーザがコンテンツ管理システム104にコレクションコンテンツアイテムを生成させて提供することを許容する、クライアントコンピューティングデバイス106のディスプレイ上に、1以上の対話型グラフィカルユーザインタフェースを提供することができる。さらに、コンテンツ管理システムのアプリケーション108は、コンテンツ管理システム104と通信させて、デジタルコンテンツアイテムのアップロード、デジタルコンテンツアイテムの閲覧、デジタルコンテンツアイテムの共有、デジタルコンテンツアイテムのダウンロードなどを、ユーザがクライアントコンピューティングデバイス106にさせことを可能にする1以上の対話型グラフィカルユーザインタフェースをクライアントコンピューティングデバイス106のディスプレイ上に提供することができる。少なくとも1つの実施形態では、コンテンツ管理システムのアプリケーション108はまた、デジタル画像(例えば、デジタル写真)をキャプチャするために、クライアントコンピューティングデバイス106に関連付けられたカメラとインタフェースする。
図1にさらに示すように、システム100は、サードパーティサーバ112を含む。上述したように、コンテンツ管理システム104は、コンテンツ管理システム104内に配置されておらず、むしろサードパーティサーバ112上に配置されているコンテンツアイテムの包含を可能にする。1以上の実施形態において、サードパーティサーバ112は、ウェブサーバ、ファイルサーバ、又は遠隔にアクセス可能な任意の他のタイプのコンピューティングデバイスとすることができる。したがって、コンテンツ管理システム104は、ネットワーク110を介してサードパーティサーバ112と通信することができる。
本明細書の開示に基づいて理解されるように、コンテンツ管理システム104の種々の機能及びプロセスは、サーバ102、クライアントコンピューティングデバイス106、又は、サーバ102及びクライアントコンピューティングデバイス106の両方に配置することができる。ある実施形態では、サーバ102上のコンテンツ管理システム104がクライアントコンピューティングデバイス106上のコンテンツ管理システムのアプリケーション108と協働して、本明細書で説明する機能及び特徴を提供する。代替的に、機能及び特徴はコンテンツ管理システム104の特定のアプリケーションが必要とするように、クライアントデバイス106上でのみ、又はサーバ102上でのみ実行されてもよい。
図2は、本明細書で説明するコンテンツ管理システム104の特徴及び機能の概略を示す。例えば、図2に示すように、コンテンツ管理システム104は、コンテンツアイテムの選択を受信することができる(202)。1以上の実施形態において、コンテンツ管理システム104はインストールされたコンテンツ管理システムのアプリケーション(例えば、クライアントコンピューティングデバイス106a及びコンテンツ管理システムのアプリケーション108aと同様に)を介して、クライアントコンピューティングデバイス上に提供されるグラフィカルユーザインタフェースを介して、1以上のコンテンツアイテムの選択を受信する。コンテンツ管理システム104はコンテンツアイテムの名称、コンテンツアイテムの記憶位置(例えば、メモリポインタ、URL)、固有ID、及び各コンテンツアイテムに関連付けられた他のメタデータのリストとして、コンテンツアイテムの選択を受信することができる。
コンテンツアイテムの選択を受信した後、コンテンツ管理システム104は、選択されたコンテンツアイテム(204)ごとにデジタル位置を判定することができる。1以上の実施形態では以下でより詳細に説明するように、コンテンツ管理システム104は選択可能なコンテンツアイテムのリファレンスのリストを含むコレクションコンテンツアイテムを生成する。コレクションコンテンツアイテム内のリファレンスの検出された選択に応答して、コンテンツ管理システム104は、参照されるコンテンツアイテムを、それが格納されているデジタル位置から探し、表示用にコンテンツアイテムのレンダリングを生成する。このように、コンテンツ管理システム104は、各コンテンツアイテムに関連付けられたメタデータに基づいて、各コンテンツアイテムのデジタル位置を判定することができる。
コンテンツ管理システム104は、各コンテンツアイテムの位置に関連付けられた選択可能なリファレンスをコレクションコンテンツアイテム(206)に組み込むことによって、コレクションコンテンツアイテムにコンテンツアイテムを追加することができる。例えば、以下でより詳細に説明されるように、コンテンツ管理システム104はコンテンツアイテムごとに、そのコンテンツアイテムのためのデジタル記憶位置へのポインタを含む選択可能なコンテンツアイテムのリファレンスを生成することができる。1以上の実施形態では、コレクションコンテンツアイテムの選択可能なコンテンツアイテムの検出された選択に応答して、コンテンツ管理システム104は示されたデジタル位置で関連付けられたコンテンツアイテムを抽出し、コンテンツアイテムの表示をレンダリングすることができる。
コンテンツ管理システム104は、示されたコンテンツアイテムごとに選択可能なリファレンスをコレクションコンテンツアイテムに組み込んだ後、コレクションコンテンツアイテムをクライアントコンピューティングデバイス(208)に提供することができる。例えば、コンテンツ管理システム104はコンテンツアイテムの選択が受信されたクライアントコンピューティングデバイス(例えば、コレクションコンテンツアイテムの作成者)に、コレクションコンテンツアイテムを提供することができる。さらに、コンテンツ管理システム104はコレクションコンテンツアイテムを追加のクライアントコンピューティングデバイス(例えば、コレクションコンテンツアイテムの作成者が共有しているユーザに関連するクライアントコンピューティングデバイス)に提供することができる。なお、コレクションコンテンツアイテムが共有されているユーザは必ずしもコンテンツ管理システムとのアカウントを持っている必要はなく、単にコレクションコンテンツアイテムの作成者がコレクションコンテンツアイテムの位置へのリンクを共有することにより、コレクションコンテンツアイテムへのアクセスを得ることができる。
図3A乃至図3Cは、コレクションコンテンツアイテムに関連して動作を実行するコンテンツ管理システム104のシーケンス図を示す。例えば、図3Aはコレクションコンテンツアイテムを生成し、コレクションコンテンツアイテムを1以上のクライアントコンピューティングデバイスに提供するコンテンツ管理システム104のシーケンス図を示す。
1以上の実施形態では図3Aに示すように、クライアントコンピューティングデバイス106aは新たなコレクションコンテンツアイテムの選択を検出することができる(302)。例えば、上述のように、クライアントコンピューティングデバイス106aにインストールされたコンテンツ管理システムのアプリケーション108aは、新たなコレクションコンテンツアイテムを作成するための選択可能なオプションを提供することができる。新たなコレクションコンテンツアイテムを作成するオプションの選択を検出することに応答して、コンテンツ管理システムのアプリケーション108aは、選択可能なツール及び選択可能なオプションを含む1以上のグラフィカルユーザインタフェースを提供して、クライアントコンピューティングデバイス106aのユーザがコレクションコンテンツアイテムを構成し編集できるようにすることができる。
少なくとも1つの実施形態では、クライアントコンピューティングデバイス106aが1以上のコンテンツアイテムの選択を検出することができる(304)。例えば、上述のように、コンテンツ管理システムのアプリケーション108aは、1以上のグラフィカルユーザインタフェースを介して提示される1以上のツール又は選択可能なオプションを介して、1以上のコンテンツアイテムの選択を検出することができる。1以上の実施形態において、コンテンツ管理システムのアプリケーション108aは、コンテンツ管理システム104においてローカルな(例えば、コンテンツ管理システムのデータリポジトリ105に記憶される)、又はサードパーティサーバ112に記憶される(例えば、ウェブページ、PDFなど)コンテンツアイテムの選択を検出することができる。クライアントコンピューティングデバイス106aはその後、1以上のコンテンツアイテムの選択(306)をコンテンツ管理システム104に通知することができる。
クライアントコンピューティングデバイス106aから1以上のコンテンツアイテムの選択を受信することに応答して、コンテンツ管理システム104は、1以上のコンテンツアイテムの各々に関連付けられたデジタル位置を判定することができる(308)。例えば、少なくとも1つの実施形態では、コンテンツ管理システム104は、コンテンツアイテムのタイトル、コンテンツアイテムのファイルタイプ、及びコンテンツアイテムのデジタル記憶位置を含むメタデータとして、コンテンツアイテムの選択を受信する。1以上の実施形態では、コンテンツアイテムのデジタル記憶位置がファイルポインタ、URL、IPアドレス、又は任意の他のタイプのデジタル記憶位置とすることができる。したがって、コンテンツ管理システム104は、コンテンツアイテムに関連付けられたメタデータ内で当該情報を識別することによって、コンテンツアイテムのデジタル位置を判定することができる。
1以上の実施形態では、コンテンツ管理システム104は、示された1以上のコンテンツアイテムに関連してコレクションコンテンツアイテム(310)を生成することができる。例えば、少なくとも1つの実施形態では、コンテンツ管理システム104は、1以上の示されたコンテンツアイテムの各々について選択可能なコンテンツアイテムのリファレンスを生成し、次いで、生成された選択可能なコンテンツアイテムのリファレンスをコレクションコンテンツアイテムに組み込むことによって、コレクションコンテンツアイテムを生成する。コンテンツ管理システム104はコレクションコンテンツアイテム(例えば、HTML、CSSなど)が表示モードで提示される場合に所定の方法で表されるようにする、コレクションコンテンツアイテムに追加の表示命令を追加することもできる。その後、コンテンツ管理システム104は、コレクションコンテンツアイテム(312)をクライアントコンピューティングデバイス106aに提供することができる。また、コンテンツ管理システム104は、クライアントコンピューティングデバイス106aに対応するユーザアカウントに基づいて生成されたコレクションコンテンツアイテムを記憶することができる。
生成されたコレクションコンテンツアイテムを受信することに応答して、クライアントコンピューティングデバイス106aは、コレクションコンテンツアイテムを編集モード(314)で表示することができる。1以上の実施形態では、コレクションコンテンツアイテムにおけるコンテンツアイテムの選択が行われたクライアントコンピューティングデバイスに(例えば、「作成者」のクライアントコンピューティングデバイス)コレクションコンテンツアイテムを提供する場合、コンテンツ管理システム104は生成されたコレクションコンテンツアイテムを編集モードで提供することができる。編集モードにある間、コンテンツ管理システムのアプリケーション108aは、他のコンテンツアイテムの追加に伴って、又はコレクションコンテンツアイテムに関連付けられた表示指示の変更に伴って、コレクションコンテンツアイテムを更に編集することを可能にすることができる。言い換えれば、編集モードにあるときに、コンテンツ管理システム104は、表示されたコレクションコンテンツアイテム内から直接的にユーザがコンテンツアイテムを編集することを可能にする。
さらに、コンテンツ管理システム104はクライアントコンピューティングデバイスから、コレクションコンテンツアイテムとは別個のコンテンツアイテムに直接アクセスする要求を受信することができる。例えば、コンテンツ管理システム104は、コンテンツアイテムに直接アクセスする要求に基づいて、コンテンツコレクションアイテムを提供することなく、コンテンツアイテムをクライアントコンピューティングデバイスに提供することができる。これにより、ユーザは任意のコレクションとは別のコンテンツアイテムに編集するためにアクセスしたり、さもなければコンテンツアイテムを編集したりすることができる。コンテンツアイテムへの直接のアクセスに基づいてコンテンツアイテムに対して何らかの編集が実行されると、コンテンツ管理システム104がコンテンツアイテムを参照するコレクションコンテンツアイテムを提供する場合、コレクションコンテンツアイテムがコンテンツアイテムの記憶位置を参照するため、コンテンツアイテムはそれらの編集を示すことになる。
コレクションコンテンツアイテムが生成された後の任意の時点において、クライアントコンピューティングデバイス106bは、コレクションコンテンツアイテム(316)の選択を検出することができる。例えば、コレクションコンテンツアイテムの作成者は、コンテンツ管理システム104を介して、クライアントコンピューティングデバイス106bとコレクションコンテンツアイテムを共有していてもよい。追加的に又は代替的に、コレクションコンテンツアイテムの作成者は、クライアントコンピューティングデバイス106bがアクセスできるリポジトリにコレクションコンテンツアイテムを追加していてもよい。1以上の実施形態において、コンテンツ管理システムのアプリケーション108bは、クライアントコンピューティングデバイス106b上で提供されるグラフィカルユーザインタフェースを介して、コレクションコンテンツアイテムの選択を検出することができる。その後、コンテンツ管理システムのアプリケーション108bは、コレクションコンテンツアイテムの選択(318)をコンテンツ管理システム104に伝えることができる。コンテンツ管理システム104は、コンテンツ管理システムのアプリケーション108bを介して、コレクションコンテンツアイテム320をクライアントコンピューティングデバイス106bに提供することができる(320)。
1以上の実施形態では、コンテンツ管理システムのアプリケーション108bがクライアントコンピューティングデバイス106b上のコレクションコンテンツアイテム(322)を表示モードで表示する。たとえば、前述したように、生成されたコレクションコンテンツアイテムには、編集モードと表示モードの2つのモードを有することができる。コンテンツ管理システムのアプリケーション108は、クライアントコンピューティングデバイスが作成者のクライアントコンピューティングデバイスであるか、コレクションコンテンツアイテムを編集することを許可されたクライアントコンピューティングデバイスであるか、又はコレクションコンテンツアイテムを表示することを許可されたクライアントコンピューティングデバイスであるかに応じて、これら2つのモードの1つで、クライアントコンピューティングデバイスにコレクションコンテンツアイテムを提供することができる。要求元のクライアントコンピューティングデバイスが作成者デバイス又はコレクションコンテンツアイテムの編集を許可されたデバイスである場合、そこにインストールされたコンテンツ管理システムのアプリケーションは、コレクションコンテンツアイテムを編集モードで表示することができる。要求元のクライアントコンピューティングデバイスがコレクションコンテンツアイテムの表示のみを許可されている場合(例えば、クライアントコンピューティングデバイス106bと同様)、そこにインストールされているコンテンツ管理システムのアプリケーションは、コレクションコンテンツアイテムを表示モードで表示することができる。コンテンツ管理システム104は、コレクションコンテンツアイテムに関連付けられたメタデータの一部として、コレクションコンテンツアイテムに関連付けられたパーミッション情報を提供することができる。
クライアントコンピューティングデバイス106bは、コレクションコンテンツアイテム(324)の一部として表示されるコンテンツアイテムリファレンスの選択を検出することができる。例えば、コンテンツ管理システムのアプリケーション108bは、コレクションコンテンツアイテムを含むグラフィカルユーザインタフェース内に表示されるコンテンツアイテムリファレンスの選択を検出することができる。クライアントコンピューティングデバイス106bは、検出されたコンテンツアイテムリファレンス選択(326)をコンテンツ管理システム104に伝えることができる。
1以上の実施形態では、コンテンツ管理システム104は、コンテンツコレクションアイテムがコンテンツ管理システム104に対してローカルであるファイル(例えば、コンテンツ管理システムデータリポジトリ105に配置される)、及び/又は、コンテンツ管理システム104の外部にあるファイル(例えば、サードパーティサーバ112などのクライアントコンピューティングデバイスのハードドライブ又はウェブサーバに格納される)へのリファレンスを含むことを可能にする。少なくとも1つの実施形態では、コンテンツ管理システム104は、コンテンツアイテムに関連付けられた選択可能なコンテンツアイテムリファレンスに基づいて、要求されたコンテンツアイテムがサードパーティサーバ112上に配置されていることを決定することができる。例えば、選択可能なコンテンツアイテムリファレンスは、ユニフォームリソースロケータ(URL)又は他のタイプのファイルポインタを含み得る。
要求されたコンテンツアイテムがサードパーティサーバ112上に配置されていると判断することに応答して、コンテンツ管理システム104は、コンテンツアイテム(328)に対する要求を生成し、サードパーティサーバ112に送信することができる。サードパーティサーバ112は次に、要求されたコンテンツアイテム(330)を識別し、コンテンツアイテム(332)をコンテンツ管理システム104に返信することができる。
1以上の実施形態では、コンテンツ管理システム104は、サードパーティサーバ112から受信したコンテンツアイテム(334)の表示をレンダリングする。例えば、コンテンツ管理システム104は、コンテンツアイテムに関連付けられたファイルタイプを判定し、ファイルタイプに基づいてコンテンツアイテムから任意のテキスト又は他の媒体を抽出し、抽出されたテキスト又は他の媒体を事前フォーマットされたディスプレイに追加することによって、コンテンツアイテムのレンダリングを生成することができる。次に、コンテンツ管理システム104は、生成されたレンダリング(336)をクライアントコンピューティングデバイス106bに提供することができ、そこでコンテンツ管理システムのアプリケーション108bは、グラフィカルユーザインタフェースの一部としてレンダリング(338)を表示することができる。
図3Bは、1以上のクライアントコンピューティングデバイスからの要求に基づいて、コレクションコンテンツアイテムにパーミッション設定を適用するコンテンツ管理システム104のシーケンス図を示す。1以上の実施形態において、図3Bに示すように、クライアントコンピューティングデバイス106aは既存のコレクションコンテンツアイテムの選択を検出することができる(340)。例えば、上述のように、クライアントコンピューティングデバイス106aにインストールされたコンテンツ管理システムのアプリケーション108aは、クライアントコンピューティングデバイス106aのディスプレイ内に既存のコレクションコンテンツアイテムの一覧を提供することができる。既存のコレクションコンテンツアイテムの選択を検出することに応答して、コンテンツ管理システムのアプリケーション108aは、選択(342)をコンテンツ管理システム104へ伝えることができる。
コンテンツ管理システム104は選択されたコレクションコンテンツアイテム(344)を識別し、コレクションコンテンツアイテム(346)をクライアントコンピューティングデバイス106aに提供することができる。上述のように、クライアントコンピューティングデバイス106aにインストールされたコンテンツ管理システムのアプリケーション108aは、コレクションコンテンツアイテムに関連付けられた原作者及び承認に応じて、編集モード又は表示モードのいずれかでコレクションコンテンツアイテム(348)を表示することができる。その後、コンテンツ管理システムのアプリケーション108aはコレクションコンテンツアイテムに関連付けられたコンテンツアイテムリファレンス(350)の選択を検出し、当該選択(352)をコンテンツ管理システム104に伝えることができる。
1以上の実施形態では、コンテンツ管理システム104は選択されたコンテンツアイテムリファレンスに関連付けられたコンテンツアイテムを提供するかどうかを決定することができる(354)。例えば、コンテンツ管理システム104によって管理及び提供されるすべてのコンテンツアイテムは、種々のパーミッション設定に関連付けられてもよい。少なくとも1つの実施形態では、これらのパーミッション設定は、異なる方法でコンテンツアイテムと対話することができるユーザを指示する。説明のため、特定のコンテンツアイテムに関連付けられたパーミッション設定は、認証されたユーザに、コンテンツアイテムを閲覧、コンテンツアイテムを編集、コンテンツアイテムを共有、又はコンテンツアイテムをコピーすることを指示する。パーミッション設定は種々の権限に関連付けられた特定のユーザ(ユーザ名やアカウント識別子など)をリストしたり、種々の権限に関連付けられたユーザのレベルをリストしたりすることができる。
1以上の実施形態では、コレクションコンテンツアイテムにおいて参照されるコンテンツアイテムは、コンテンツ管理システム104において事前に安定化されたパーミッション設定に従ったパーミッション設定を有する。具体的にはコレクションコンテンツアイテムがコンテンツ管理システム104内でコンテンツアイテムの記憶位置へのリファレンスを記憶してもよいので、その記憶位置はコンテンツアイテムが記憶されているフォルダに基づいて、既にパーミッション設定に関連付けられていてもよい。たとえば、コンテンツアイテムは、個々の権限に関連付けられたユーザの既存のリストを有するフォルダに保存されてもよい。したがって、コンテンツアイテムへのリファレンスがコレクションコンテンツアイテム内に組み込まれると、ユーザのリスト及び関連付けられた権限は、コレクションコンテンツアイテムの作成者が追加のファイルパーミッション設定の工程を実行しなくとも、コレクションコンテンツアイテムから有効なままとなる。これにより、コレクションコンテンツアイテムの作成者はユーザのグループとコレクションコンテンツアイテムを介してコンテンツアイテムのセットを容易に共有すると同時に、それぞれのユーザのそれぞれのコンテンツについて、所望かつ以前に定義されたパーミッション及びアクセスレベルを維持することができる。
例えば、ユーザはコンテンツ管理システム104に、第1のフォルダから第1のコンテンツアイテムを、第2のフォルダから第2のコンテンツアイテムを、コレクションコンテンツアイテムに追加させることができる。さらに、本例では、第1のフォルダはユーザAと共有されユーザBとは共有されず、第2のフォルダはユーザBと共有され、ユーザAと共有されない。この状況で、コンテンツ管理システム104は、ユーザAとユーザBとの両方とコレクションコンテンツアイテムを共有することができる。ユーザAがコレクションコンテンツアイテムにアクセスする場合、コンテンツ管理システム104は既にユーザAと共有されている第1のフォルダに基づいて、第1のコンテンツアイテムのみへのアクセスをユーザAに提供する。コンテンツ管理システム104はユーザAと共有されていない第2のフォルダに基づいて、第2のコンテンツアイテムへのアクセスをユーザAに提供しない。同様に、ユーザBがコレクションコンテンツアイテムにアクセスすると、コンテンツ管理システム104はユーザBと共有されている第2のフォルダに基づいて、第2のコンテンツアイテムのみへのアクセスをユーザBに提供するが、コンテンツ管理システムはユーザBと共有されていない第1のフォルダに基づいて、ユーザBが第1のコンテンツアイテムにアクセスすることを防止する。
コンテンツ管理システム104内に記憶されたコンテンツアイテムに関連付けられた、以前に定義されたパーミッション構造を使用することによって、コンテンツ管理システム104は、コレクションコンテンツアイテムを介して共有されるコンテンツアイテムへのパーミッションを制御する直感的かつ効率的な方法を提供する。特に、コンテンツ管理システム104はファイルパーミッション設定を維持することにより、ユーザがユーザのグループと自由にコンテンツアイテムを共有できるようにする一方で、事前定義されたパーミッション構造を維持し、これにより、複数のユーザと共有される複数の共有コンテンツアイテムに対するアクセス権の効率的かつ正確な適用を保証することができる。
1以上の実施形態において、コンテンツ管理システムはコレクションコンテンツアイテムで参照されるコンテンツアイテムのそれぞれに対して、容易にパーミッションを設定する効率的なパーミッション設定機能を提供する。例えば、ユーザは、ユーザのグループ内の各ユーザに関して種々の異なるパーミッションを有する種々のフォルダからのいくつかのコンテンツアイテムを組み合わせることを望むことができる。ただし、ユーザはユーザのグループ内のそれぞれのユーザに、コレクションコンテンツアイテム内の参照されるすべてのコンテンツアイテムへアクセスできるように望む場合がある。既存のシステムでは、ユーザがコンテンツアイテムのコピーを作成し、すべての新しいコピーを単一のフォルダに保存する必要があるか(それによって、コンテンツ管理システム内のより多くの記憶スペースを消費する)、又は、ユーザが種々のフォルダのすべてのパーミッションを手動で変更するために、多数のナビゲーションステップを実行しなければならない(これはグループ内のユーザがそれぞれのフォルダ内のすべてのコンテンツアイテムにアクセスすることを望むものではないため、多くの場合望ましくない)。これらの欠点を克服するために、コンテンツ管理システム104は、コレクションコンテンツアイテム内で参照されるすべてのコンテンツアイテム(又はコンテンツアイテムの選択サブセット)へのアクセスを提供するパーミッション設定機能を提供することができる。
例えば、コンテンツ管理システム104は、ユーザがコレクションコンテンツアイテム内で参照されるコンテンツアイテムの全部又は一部を選択できるようにするパーミッション設定メニューを提供することができる。さらに、コンテンツ管理システム104はコレクションコンテンツアイテムにアクセスするユーザのために、選択されたコンテンツアイテムに対するアクセスレベル(閲覧、編集、共有など)を提供するオプションを提供することができる。したがって、単一のボタンとのやり取りで、コンテンツ管理システムは選択されたコンテンツアイテムへのアクセスを、コレクションコンテンツアイテムへのアクセス権を有するそれらのユーザに提供するために、カスタムパーミッション設定を提供することができる。さらに、コンテンツ管理システム104は、コレクションコンテンツアイテムへのアクセス権を有する特定のユーザを定義する。
1以上の実施形態では、コレクションコンテンツアイテムで参照されるコンテンツアイテムへのアクセスを提供するために、パーミッション設定メニューを介してユーザ入力を受信すると、コンテンツ管理システム104は、メタデータを、コレクションコンテンツアイテムと、コレクションコンテンツアイテムからアクセスされた際に特定のコンテンツアイテムへのアクセスを提供するようにコンテンツ管理システムに指示するコレクションコンテンツアイテムで参照されるコンテンツアイテムとを関連付けることができる。言い換えると、コレクションコンテンツアイテム内に含まれるメタデータは、特定のフォルダに対して定義されたパーミッションレベルに優先するアクセス命令を含むことができる。このように、コンテンツ管理システムはコンテンツアイテムが格納されている各フォルダのパーミッションレベルを変更したり、コンテンツアイテムの追加コピーを作成したりすることなく、複数のフォルダ内の特定のファイルへのアクセスをユーザのグループに容易に提供することができる。
図3Bに続いて、上記の原理に基づき、コンテンツ管理システム104はクライアントコンピューティングデバイス106aに関連付けられたユーザ名、アカウント識別子、又は権限レベルを識別し、ユーザ名、アカウント識別子、又は権限レベルをコンテンツアイテムに関連付けられたパーミッション設定と比較することにより、クライアントコンピューティングデバイス106aにコンテンツアイテムを提供するかどうかを決定できる。1以上の実施形態では、ユーザ名、アカウント識別子又は権限レベルがコンテンツアイテムへのアクセスを可能にするパーミッション設定に対応する場合(例えば、閲覧用に)、コンテンツ管理システム104は上述のようにコンテンツアイテムの表示をレンダリングし(356)、そのレンダリングをクライアントコンピューティングデバイス106aに提供することができる(358)。その後、コンテンツ管理システムのアプリケーション108aは、クライアントコンピューティングデバイス106a上にレンダリングを表示することができる(360)。
さらに、図3Bに示すように、クライアントコンピューティングデバイス106bは、クライアントコンピューティングデバイス106aによって事前に要求されたのと同じコレクションコンテンツアイテムの選択を検出することができる(362)。コンテンツ管理システムのアプリケーション108bは選択(364)をコンテンツ管理システム104に通信することができ、コンテンツ管理システムは、コレクションコンテンツアイテム(366)をクライアントコンピューティングデバイス106bに戻すことができる。コンテンツ管理システムのアプリケーション108bはコレクションコンテンツアイテムを表示し(368)、クライアントコンピューティングデバイス106aが選択した同一コンテンツアイテムリファレンスの選択を検出することができる(370)。
検出された選択(372)をクライアントコンピューティングデバイス106bから受信することに応答して、コンテンツ管理システム104は、要求されたコンテンツアイテム(374)をクライアントコンピューティングデバイス106bに提供するかどうかを判定することができる。上述したように、コンテンツ管理システム104は、クライアントコンピューティングデバイス106bに関連付けられる情報と、要求されたコンテンツアイテムに関連付けられるパーミッション設定との比較に基づいて、当該判定を行うことができる。少なくとも1つの実施形態では、クライアントコンピューティングデバイス106bは、要求されたユーザ名、アカウント識別子、又は要求されたコンテンツアイテムへのアクセスを可能にするアクセスレベルを有していない。この判定を行うことに応答して、コンテンツ管理システム104は、クライアントコンピューティングデバイス106bに関連付けられた拒否(376)を生成することができる。
例えば、コンテンツ管理システム104はクライアントコンピューティングデバイス106bが要求されたコンテンツアイテムにアクセスできない理由(例えば、「申し訳ございません。このコンテンツアイテムを閲覧するパーミッションがありません。」)を詳細に示す情報を含むポップアップウィンドウ又は他のタイプの通知として拒否を生成することができる。追加的に又は代替的に、コンテンツ管理システム104は、クライアントコンピューティングデバイス106b上に表示されるコレクションコンテンツアイテム内のコンテンツアイテムリファレンスを非活性化することによって、拒否を生成することができる。このように、コンテンツ管理システム104は、コンテンツ管理システムのアプリケーション108bが拒否を表示する(380)クライアントコンピューティングデバイス106bに拒否を提供することができる(378)。
図3Cは、コレクションコンテンツアイテム内で参照されるコンテンツアイテムのバージョンを1以上のクライアントコンピューティングデバイスに提供する、コンテンツ管理システム104のシーケンス図を示す。1以上の実施形態では図3Cに示すように、クライアントコンピューティングデバイス106aはコレクションコンテンツアイテム内のコンテンツアイテムに関連するバージョンアクションを検出する(382)。例えば、上述したように、コンテンツ管理システム104は、コレクションコンテンツアイテム内で参照されるコンテンツアイテムに関連付けられたバージョン管理オプションを有効にすることができる。
説明のため、コンテンツ管理システム104は、コンテンツアイテムの作成者がコレクションコンテンツアイテム内のコンテンツアイテムの特定のバージョンを「ピン留め(pin)」したり、他の方法で定義したりすることを可能にすることができる。言い換えれば、コンテンツ管理システム104はコンテンツ管理システム104内の異なる記憶位置を有するコンテンツアイテムの各バージョンと共に、コンテンツアイテムの種々のバージョンを記憶することができる。コンテンツ管理システムは、文書のライブバージョン又は文書の特定のバージョンを参照するためにユーザが選択するオプションを提供することができる。したがって、コレクションコンテンツアイテムはコンテンツ管理システムに、コレクションコンテンツアイテムを介してコンテンツアイテムの特定バージョンへのアクセスを提供させるリファレンスを含むことができ、一方で同時にコンテンツアイテムの作成者は、コレクションコンテンツアイテム内のバージョンに影響を与えることなく、ライブコンテンツアイテムを継続して編集することができる。
したがって、いくつかの実施形態では、コレクションコンテンツアイテムがライブコンテンツアイテム(例えば、変更がなされると自動的に更新されるコンテンツアイテム)及び/又はコンテンツアイテムの特定バージョン(例えば、ライブコンテンツアイテムに変更がなされると更新されないコンテンツアイテムの固定されたバージョン)へのリファレンスを含むことができる。追加的に又は代替的に、クライアントコンピューティングデバイス106aはコレクションコンテンツアイテム全体と比較したバージョンアクションを検出することができる(例えば、コレクションコンテンツアイテムのすべての参照コンテンツアイテムと比較して)。そのようなケースにおいて、コンテンツ管理システム104は、コレクションコンテンツアイテムにおいて参照される各コンテンツアイテムの現在のバージョンを自動的に「ピン留め」するか、さもなければ固定することができる。例えば、バージョンアクションに基づいて、コンテンツ管理システム104はユーザが変更した状態でライブ文書が更新されても、コレクションコンテンツアイテムが対応する特定バージョンへのアクセスを引き続き提供するように、コレクションコンテンツアイテム内で参照される各コンテンツアイテムの現在の特定バージョンのリファレンスを決定することができる。
したがって、図3Cに示されるように、検出されたバージョンアクションの指示を受信することに応答して(382)、コンテンツ管理システム104は、コンテンツアイテムの特定のバージョンへの参照位置を判定することができる(383)。例えば、コンテンツ管理システム104は、コレクションコンテンツ内で参照されるコンテンツアイテムの特定バージョンの記憶位置を判定することができる。いくつかの実施形態では、コンテンツ管理システム104は、コレクションコンテンツアイテム内のコンテンツアイテムのリファレンスを更新して、ライブコンテンツアイテムを指すのではなく、コンテンツ管理システム104内に記憶されたコンテンツアイテムの特定のバージョンを指すようにすることができる。1以上の実施形態において、特定バージョンの記憶位置リファレンスはバージョン情報(例えば、作成タイムスタンプ、バージョン番号)を含む。
コレクションコンテンツアイテムがコンテンツアイテムの特定バージョンを参照している間に、コンテンツ管理システム104はコンテンツ作成者から受信した編集等に基づいて、コンテンツアイテムのライブバージョンを更新し続けることができる。例えば、図3Cに図示されるように、クライアントコンピューティングデバイス106aはライブコンテンツアイテムコレクションコンテンツアイテム(384)を検出し、編集を提供することができる。例えば、前述したように、コンテンツ管理システム104がコレクションコンテンツアイテム内のコンテンツアイテムの特定のバージョンを参照する場合、コンテンツアイテムの作成者はコレクションコンテンツアイテムを介してアクセスされたときに、コンテンツアイテムの特定のバージョンが変更されないままである間、ライブコンテンツアイテムを編集し続けることができる。したがって、編集を受信すると、コンテンツ管理システム104は、コレクションコンテンツアイテムで参照されているバージョンに影響を与えることなく、受信した編集をライブコンテンツアイテム(385)に適用することができる。
さらに説明すると、クライアントコンピューティングデバイス106bはコレクションコンテンツアイテム(386)を介してコンテンツアイテムに対する要求を検出し、その要求(387)をコンテンツ管理システム104に伝えることができる。要求を受信することに応答して、コンテンツ管理システム104は、クライアントコンピューティングデバイス106bにライブコンテンツアイテム(385)を提供するために、コンテンツアイテムの特定のバージョンを決定することができる。例えば、コンテンツ管理システム104は、コレクションコンテンツアイテム内のリファレンスに関連付けられたメタデータに基づいて、コンテンツアイテムの特定バージョンを提供することを決定することができる。したがって、コンテンツ管理システム104はコンテンツアイテムの特定バージョンをクライアントコンピューティングデバイス106bに提供することができ(389)、ここで、コンテンツ管理システムのアプリケーション108bは、コンテンツアイテムの特定バージョンを表示する(390)。
1以上の実施形態では、コンテンツ管理システム104は、コンテンツアイテムの特定バージョンを提供しているにもかかわらず、クライアントコンピューティングデバイス106aは図3Cに示されるように、コンテンツアイテムのライブバージョンに対する追加の編集を検出し続けることができる(391)。さらに、追加の編集を受信したことに応答して、コンテンツ管理システム104は、追加の編集をコンテンツアイテムのライブバージョンに適用することができる(392)。ある時点で、コンテンツアイテムのライブバージョンを編集する作成者は、コレクションコンテンツアイテムを介してコンテンツアイテムの新たなバージョンを公開することを望む場合がある。この時点で、クライアントコンピューティングデバイス106aは、コレクションコンテンツアイテム内のコンテンツアイテムの新たなバージョンを参照するバージョンアクションを検出することができる(393)。例えば、コンテンツ管理システム104は、コンテンツアイテムの新たなバージョンを自動的に参照するためにユーザが選択できる、参照されたコンテンツアイテムに関連付けられた更新オプションを提供することができる。
コンテンツアイテムの新たなバージョンを参照するためのバージョンアクションの指示を受信すると、コンテンツ管理システム104は、図3Cに示すように、コンテンツアイテムの新たなバージョンへの参照位置を判定することができる(394)。例えば、コンテンツ管理システム104はコレクションコンテンツアイテム内で、コンテンツアイテムの特定バージョンへのリファレンスを、コンテンツアイテムの新たなバージョンへのリファレンスに置き換えることができる。特定のリファレンスと同様に、新たなバージョンへのリファレンスは単に新たなバージョンを参照し、ライブドキュメントは参照しなくともよい。代替の実施形態では、コンテンツ管理システムは、コンテンツ管理システムにコンテンツアイテムのライブバージョンへのリファレンスを更新させる入力を受信することができる。
さらに、コンテンツアイテムの新たなバージョンの参照位置をコレクションコンテンツアイテムに追加した後、クライアントコンピューティングデバイス106bは、コレクションコンテンツアイテムを介してコンテンツアイテムの要求を検出して送信することができる(395)。コンテンツ管理システム104は現在、コンテンツアイテムの新たなバージョンを参照しているコレクションコンテンツアイテム内のリファレンスに基づいて、図3Cに示すように、コンテンツアイテムの新たなバージョンを提供する(397)。したがって、本明細書に記載するコンテンツ管理システム104は編集及び更新のためのライブドキュメントも維持する一方で、特定のドキュメントバージョンの公開を効率的に可能にする柔軟なバージョン管理プロセスを提供する。通常、ライブドキュメントバージョンの共有のみに制限される既存のシステムとは異なり、本明細書に記載するコンテンツ管理システムは、特定バージョンのドキュメント、ライブバージョンのドキュメントを生成及び共有し、ユーザ設定に基づいてライブバージョンと静的特定バージョンの両方を更新するための柔軟で効率的な方法を提供する。
以下でより詳細に説明するように、コンテンツ管理システム104は、1以上のグラフィカルユーザインタフェースを生成、変更、及び提供することができる。例えば、コンテンツ管理システム104は、上述したように、コレクションコンテンツアイテムに関連して、種々の目的のために、ユーザが表示要素のコレクションと対話することを可能にすることができる。特に、図4A乃至図4N及び以下の説明は、上述の特徴及び機能に従ったグラフィカルユーザインタフェース及び特徴の種々の例示的な実施形態を示す。
1以上の実施形態では、コンテンツ管理システム104は、その上にインストールされたコンテンツ管理システムのアプリケーション108aを介して、クライアントコンピューティングデバイス106aにグラフィカルユーザインタフェースを提供することができる。例えば、図4Aは、コンテンツアイテム編成GUI404aをディスプレイ402上に表示するクライアントコンピューティングデバイス106aを説明する。1以上の実施形態では、クライアントコンピューティングデバイス106aはスマートフォンなどのハンドヘルドデバイスである。本明細書で使用されるように、用語「ハンドヘルドデバイス」は、ユーザの片手で保持/操作されるようにサイズ設定及び構成されたデバイスを指す。追加の又は代替の例示では、クライアントコンピューティングデバイス106aは、タブレットデバイス、ラップトップ、スマートウェアラブルデバイス、及び/又は任意の他の適切なコンピューティングデバイスなどであるがこれらに限定されない、任意の他の適切なクライアントコンピューティングデバイスであってもよい。これらのコンピューティングデバイスのいずれも、本明細書で説明するプロセス及び/又は動作のうちの1以上を実行することができる。
このように、コンテンツ管理システム104は、コンテンツアイテム編成GUI404aの一部として、種々の表示領域と表示要素を提供する。1以上の実施形態において、コンテンツアイテム編成GUI404aは、新たなコンテンツアイテムリスト406及び既存のコンテンツアイテムコントロール408を含む。例えば、新たなコンテンツアイテムリスト406は、新たなコンテンツアイテムボタン410a、410b、410c、410d、及び410eを含む。さらに、既存のコンテンツアイテム制御408は、コンテンツアイテムタイプボタン412a、412b、412c、412d、及び412eを含む。
1以上の実施形態では、コンテンツ管理システム104は、コンテンツアイテムタイプボタン412a~412eの検出された選択に応答して、タイプごとに既存のコンテンツアイテムの表示を提供することができる。例えば、コンテンツアイテムタイプボタン412aの検出された選択に応答して、コンテンツ管理システム104は、クライアントコンピューティングデバイス106aに対応するユーザアカウントに関連付けられた全ての既存のコンテンツアイテムの表示を提供することができる。同様に、コンテンツアイテムタイプボタン412bの検出された選択に応答して、コンテンツ管理システム104は、クライアントコンピューティングデバイス106aに対応するユーザアカウントに関連付けられた全ての既存の「スター付き」又はお気に入りのコンテンツアイテムの表示を提供することができる。
さらに、コンテンツアイテムタイプボタン412c~412eの検出された選択に応答して、コンテンツ管理システム104は、ドキュメントコンテンツアイテム、コンテンツアイテムのフォルダ、及び「バインダ」又はコレクションコンテンツアイテムのそれぞれの表示を提供することができる。例えば、図4Aに示されるように、コンテンツアイテムタイプボタン412eの検出された選択に応答して、コンテンツ管理システム104は、コンテンツアイテムタイプボタン412eを太字にすることができ、既存のコンテンツアイテム制御408内の選択可能なコレクションコンテンツアイテムボタン414a、414b、及び414cのリストを提供することができる。選択可能なコレクションコンテンツアイテムボタン414a~414cの1つの検出された選択に応答して、コンテンツ管理システム104は、関連するコレクションコンテンツアイテムの表示を提供することができる。
図4Aにさらに示されるように、コンテンツ管理システム104は、ユーザが新たなコンテンツアイテムリスト406を介して新たなコンテンツアイテムを構成することを可能にする。例えば、新たなコンテンツアイテムボタン410aの検出された選択に応答して、コンテンツ管理システム104は、ユーザが新たなクラウドストレージドキュメントを構成することを可能にする1以上の制御を提供することができる。さらに、新たなコンテンツアイテムボタン410b、410c、又は410dの検出された選択に応答して、コンテンツ管理システム104は、ユーザがそれぞれ新たなフォルダ、新たなテンプレートベースのコンテンツアイテム、又は新たなノートを構成することを可能にする1以上の制御を提供することができる。
新たなコンテンツアイテムボタン410eの検出された選択に応答して、コンテンツ管理システム104はユーザが新たなコレクションコンテンツアイテム(例えば、新たな「バインダ」)を構成することを可能にする1以上の制御を提供することができる。例えば、図4Bに示すように、新たなコンテンツアイテムボタン410eの検出された選択に応答して、コンテンツ管理システム104は、コレクションコンテンツアイテム構成GUI404bを提供することができる。1以上の実施形態では、コレクションコンテンツアイテム構成GUI404bはツールボックス416を含むことができる。少なくとも1つの実施形態では、ツールボックス416はフォントサイズ及び色を設定するため、ハイパーリンクの挿入などの選択可能なオプションを含むことができる。
図4Bにさらに示すように、コレクションコンテンツアイテム構成GUI404bは、プロンプト418a、418bも含むことができる。1以上の実施形態において、プロンプト418a、418bは、ユーザがコレクションコンテンツアイテム構成GUI404bを介して構成されるコレクションコンテンツアイテムに種々の種類のコンテンツを追加することを可能にする。例えば、プロンプト418a、418bのいずれかの検出された選択に応答して、コンテンツ管理システム104は、クライアントコンピューティングデバイス106aのユーザがテキスト及び/又はコンテンツアイテムリファレンスを追加することを可能にすることができる。例えば、図4Cに示すように、プロンプト418aの検出された選択に応答して、コンテンツ管理システム104は、ユーザがコレクションコンテンツアイテム(例えば、「ギリシャ旅行」)に関連付けられたタイトル420を入力することを可能にすることができる。
さらに、上述したように、コンテンツ管理システム104は、ユーザがコレクションコンテンツアイテム構成GUI404bを介してコレクションコンテンツアイテムにコンテンツアイテムを追加することを可能にすることができる。例えば、図4Dに示すように、プロンプト418bの検出された選択に応答して、コンテンツ管理システム104は任意の以前の命令テキストを削除し、コンテンツアイテム名を入力することによって、及び/又はコンテンツアイテムに関連付けられたハイパーリンクを貼り付けることによって、ユーザがコンテンツアイテムを追加できるようにすることができる。
図4Dにさらに示されるように、ユーザがコレクションコンテンツアイテム構成GUI404bを介してコレクションコンテンツアイテムにコンテンツアイテムを追加すると、コンテンツ管理システム104は、ユーザの名前を指定するユーザインジケータ422を提供することができる。1以上の実施形態では、コンテンツ管理システム104がどのユーザがコンテンツアイテムをコレクションコンテンツアイテムに追加したか、そしていつコンテンツアイテムが追加されたかを追跡するように、コレクションコンテンツアイテムに関連付けられたメタデータにユーザの名前を追加する。このようにして、コンテンツ管理システム104は、コレクションコンテンツアイテムがどのように構成されたかの完全な記録を提供することができる。
プロンプト418bを介した継続的な入力に応答して、コンテンツ管理システム104は、追加の選択可能なオプションを提供することができる。例えば、図4Eに示すように、プロンプト418bを介した継続的な検出されたユーザ入力に応答して、コンテンツ管理システム104は、予測テキスト機能を利用して、選択可能なオプション426a、426b、及び426cを含むオプションリスト424を提供することができる。1以上の実施形態において、コンテンツ管理システム104は、プロンプト418bへのテキスト入力に対応するタイトルを有するコンテンツ管理システム104内に記憶される1以上のコンテンツアイテムを識別することに応答して、選択可能なオプション426a~426cを提供する。説明のために、ユーザがプロンプト418bに「ギリシャ」を入力することに応答して、コンテンツ管理システム104は、タイトル「ギリシャ旅程」及び「ギリシャ旅行」を有するコンテンツアイテムを識別することができる。
選択可能なオプション426a~426cのうちの1つに関連付けられた検出された対話(例えば、ホバーオーバ)に応答して、コンテンツ管理システム104は、プレビューウィンドウ428を提供することができる。1以上の実施形態では、コンテンツ管理システム104は選択可能なオプションに関連付けられたコンテンツアイテム(例えば選択可能なオプション426a)を識別し、そのコンテンツアイテムの一部の表示をレンダリングすることによって、プレビューウィンドウ428を提供する。例えば、コンテンツ管理システム104は、プレビューウィンドウ428内の部分表示をレンダリングして、関連するコンテンツアイテムからのテキストの最初のn行を含むか、コンテンツアイテムに関連付けられた1以上のデジタルメディアアイテムを含むか、又は関連するコンテンツアイテムの部分と最も相互作用する部分を含むことができる。
少なくとも1つの実施形態では、コンテンツ管理システム104は、ユーザがコレクションコンテンツアイテム構成GUI404bを介して新たなコンテンツアイテムを生成することを可能にすることができる。例えば、図4Eに示されるように、選択可能なオプション426cの検出された選択に応答して、コンテンツ管理システム104は、プロンプト418bを介してユーザ入力に一致するタイトルを有する新たなコンテンツアイテムを生成することができる。1以上の実施形態では選択可能なオプション426cの検出された選択に応答して、新たなコンテンツアイテムを生成した後、コンテンツ管理システム104では以下に詳しく説明するように、コレクションコンテンツアイテム構成GUI404bを介して新たなコンテンツアイテムに関連付けられた選択可能なリファレンスを選択することにより、ユーザが新たなコンテンツアイテムをさらに編集することを可能にする。
コレクションコンテンツアイテムにコンテンツアイテムを追加することに応答して、コンテンツ管理システム104はユーザが追加のコンテンツアイテムを示すことができるように、コレクションコンテンツアイテム構成GUI404b内に追加のプロンプトを追加し続けることができる。このようにして、コンテンツ管理システム104は、コレクションコンテンツアイテム構成GUI404b内に表されるコレクションコンテンツアイテムに関連するコンテンツアイテムのリストをコンパイルすることができる。例えば、図4Fに示すように、コンテンツ管理システム104は、タイトル420、サブヘッダ430a、430b、及びコンテンツアイテムリファレンス432a、432b、432c、432d、432e、及び432fを含むコンテンツ338をコンパイルすることができる。
1以上の実施形態において、コンテンツ管理システム104は、上述のように、プロンプトを介した検出されたユーザ入力に応答して、コンテンツアイテムリファレンス432a~432fのそれぞれを生成する。少なくとも1つの実施形態では、コンテンツ管理システム104は、指示されたコンテンツアイテムに関連付けられたデジタル位置を識別することによって、コンテンツアイテムリファレンスを生成する。例えば、ユーザがプロンプトを介してコンテンツアイテムのタイトルを入力することに応答して、上述したように、コンテンツ管理システム104はそのコンテンツアイテムに関連付けられたデジタル位置(例えば、記憶位置)を識別することができる。続いて、コンテンツ管理システム104は、識別されたデジタル位置に向けられた選択可能なポインタを生成することによって、そのコンテンツアイテムのコンテンツアイテムリファレンスを生成することができる。したがって、少なくとも1つの実施形態では、コンテンツ管理システム104は、任意のタイトル、見出し、及びサブヘッダに加えて、位置ポインタのリストとしてコンテンツのテーブル338を生成する。
上述したように、コンテンツ管理システム104は、編集モード又は表示モードでコレクションコンテンツアイテムを提供することができる。コレクションコンテンツアイテムが編集モードにある間、図4A乃至図4Fを参照して説明するように、コンテンツ管理システム104は編集ツールを提供することができ、ユーザがコレクションコンテンツアイテムにコンテンツ及びコンテンツアイテムを追加することを可能にすることができる。ここで説明するように、コンテンツ管理システム104は、検出されたユーザ選択の異なるタイプに応じて、表示モードでコレクションコンテンツアイテムを提供することができる。
例えば、図4Fに示すように、コレクションコンテンツアイテム構成GUI404bは、共有ボタン434を含むことができる。共有ボタン434の検出された選択に応答して、コンテンツ管理システム104は、コレクションコンテンツアイテム構成GUI404bを介して表示モードで追加選択された1人以上のユーザに表示されるコレクションコンテンツアイテムを提供することができる。例えば、共有ボタン434の検出された選択に応じてコレクションコンテンツアイテムが共有される場合、コンテンツ管理システム104は編集モードでのコレクションコンテンツアイテムへのアクセスを可能にしない場合がある(例えば、図4A~図4Fに示すように)。代わりに、コンテンツ管理システム104は、編集モードにおけるコレクションコンテンツアイテムへのアクセスのみを可能にしてもよい。
コレクションコンテンツアイテムの構成中は定期的に、ユーザは編集モードと表示モードを切り替えることを望む場合がある。例えば、図4Fに示すように、コレクションコンテンツアイテム構成GUI404bは、閲覧バインダボタン436も含む。1以上の実施形態では、コンテンツ管理システム104は、閲覧バインダボタン436の検出された選択に応答して、表示モードでコレクションコンテンツアイテム構成GUI404b内のコレクションコンテンツアイテムを提供することができる。
図4Gは、表示モードにおけるコレクションコンテンツアイテムを示す。例えば、表示モードでは、コンテンツ管理システム104は、コレクションコンテンツアイテムに関連付けられたコレクションコンテンツアイテム表示GUI404cを表示する。図4Gに示すように、コレクションコンテンツアイテム表示GUI404cは(例えば、コンテンツのテーブル338を含む)コンテンツ表示領域439と、(例えば、以下でさらに説明するように、選択されたコンテンツアイテムのレンダリングを含む)コンテンツアイテム表示領域438とを含む。
表示モードにある間、コンテンツ管理システム104は、コンテンツ表示領域439のテーブルにおいて選択可能であるが非編集の表示要素を有するコレクションコンテンツアイテムのコンテンツのテーブル338を提供することができる。例えば、図4Gに示すように、コンテンツ管理システム104は、タイトル420、サブヘッダ430a、430b、及びコンテンツアイテムリファレンス432a、432b、432c、432d、432e、432fを含むコンテンツ表示領域439のテーブルにコンテンツのテーブル338を提供する。タイトル420、サブヘッダ430a、430b、及びコンテンツアイテムリファレンス432a、432b、432c、432d、432e、432fはコレクションコンテンツアイテムが編集モードであった間(例えば、図4Fのように)は編集可能であったが、コンテンツ管理システム104は図4Gに示すように、コレクションコンテンツアイテムが表示モードである間、編集のためにタイトル420、サブヘッダ430a、430b、及びコンテンツアイテムリファレンス432a、432b、432c、432d、432e、432fを提供しない。
コンテンツアイテムリファレンス432a~432fの1つの検出された選択に応答して、コンテンツ管理システム104は、選択されたコンテンツアイテムリファレンスに関連付けられたコンテンツアイテムの表示を含むようにコンテンツアイテム表示エリア438を更新することができる。例えば、図4Gに示すように、コンテンツアイテムリファレンス432aの検出された選択に応答して、コンテンツ管理システム104はコンテンツアイテムリファレンス432aによって参照されるデジタル位置を判定し、そのデジタル位置におけるコンテンツアイテムを識別する。1以上の実施形態では、コンテンツ管理システム104は、識別されたコンテンツアイテムの440aのレンダリングを生成し、コンテンツアイテム表示領域438内にレンダリング440bを表示する。
図4Hに示すように、コンテンツ管理システム104は、別のコンテンツアイテムリファレンスの検出された選択に応答して、コンテンツアイテム表示領域438を迅速に更新することができる。例えば、コンテンツ338内のコンテンツアイテムリファレンス432bの検出された選択に応答して、コンテンツ管理システム104はコンテンツアイテムリファレンス432bによって参照されるデジタル位置を判定し、そのデジタル位置にあるコンテンツアイテムを識別し、識別されたコンテンツアイテムのレンダリング440bを生成することができる。
1以上の実施形態では、コンテンツ管理システム104はコレクションコンテンツアイテムを構成するための追加のツールを提供する。例えば、図4Iに示すように、モアボタン(more button)442の検出された選択に応答して、コンテンツ管理システム104は、追加のオプション444を提供することができる。1以上の実施形態において、コンテンツ管理システム104は表示テーマオプション、共有オプション、パーミッションオプション、及び追加の編集オプション(例えば、HTML編集オプション、CSS編集オプション)などの、これらに限定はしないコレクションコンテンツアイテムに関連した追加のオプションを可能にすることができる。
さらに説明すると、テーマ設定オプション446の検出された選択に応答して、コンテンツ管理システム104は、追加のテーマ設定を提供することができる。例えば、図4Jに示すように、コンテンツ管理システム104は、選択可能なテーマ設定リスト448を提供することができる。テーマ設定リスト448内の表示されたテーマの1つの検出された選択に応答して、コンテンツ管理システム104は、事前にフォーマットされた表示設定をコレクションコンテンツアイテムに適用することができる。説明のために、図4Kに示すように、コンテンツ管理システム104は表示モード中に、コレクションコンテンツアイテムの表示色、フォントサイズ、フォントタイプ、フォーマット、及びその他の表示機能を変更することができる。しかしながら、コンテンツ管理システム104はコレクションコンテンツアイテムに関連付けられた表示設定を変更する一方で、コンテンツ管理システム104はコンテンツアイテムリファレンスのいずれの機能も変更しないことに留意されたい。
1以上の実施形態において、コンテンツ管理システム104は、ユーザがサードパーティのコンテンツアイテムをコレクションコンテンツアイテムに迅速に追加することを可能にする。例えば、図4Lに示すように、ツールボックス416内のハイパーリンクボタン450の検出された選択に応答して、コンテンツ管理システム104は、ハイパーリンク設定ボックス452を提供することができる。図示するように、ハイパーリンク設定ボックス452は、リンクテキスト入力454及びリンクURL入力456を含むことができる。少なくとも1つの実施形態では、図4Mに示すように、コンテンツ管理システム104はハイパーリンク(例えば、ユーザに表示されるハイパーリンクされたテキスト)に関連付けられたテキストをリンクテキスト入力454に入力するユーザを検出することができる。同様に、図4Mに示すように、コンテンツ管理システム104はリンクURL入力456にURLに関連付けられた、ユーザ入力するテキスト(例えば、統一リソースロケータ)を検出することができる。
リンクテキスト入力454及びリンクURL入力456を介して入力を受信することに応答して、コンテンツ管理システム104は、コレクションコンテンツアイテムにハイパーリンクされたコンテンツアイテムを追加することができる。例えば、図4Nに示すように、コンテンツ管理システム104は、コンテンツアイテムリファレンス432gをコンテンツのテーブル338に追加することができる。コレクションコンテンツアイテムが表示モードに入った後にコンテンツアイテムリファレンス432gの検出された選択に応答して、コンテンツ管理システム104は、コンテンツアイテムリファレンス432gの一部として入力されたURLに関連付けられたウェブページのレンダリングを生成して提供することができる。
図5は、サーバ102によってホストされるコンテンツ管理システム104の概略図を示す。図示するように、コンテンツ管理システム104は、通信マネージャ502、コレクションマネージャ504、パーミッションマネージャ506、及びバージョンマネージャ508を含むことができる。1以上の実施形態において、コンテンツ管理システム104は、デジタルコンテンツアイテムデータ510及びコレクションデータ512を含むコンテンツ管理システムデータリポジトリ105にアクセスすることができる。
コンテンツ管理システム104の構成要素502~508は、ソフトウェア、ハードウェア、又はその両方を含むことができる。例えば、構成要素502~508は、コンピュータ可読記憶媒体上に記憶され、かつ1以上のコンピューティングデバイスの1以上のプロセッサによって実行可能な1以上のコンピュータ実行可能命令を含むことができる。1以上のプロセッサによって実行されると、コンテンツ管理システム104の1以上のコンピュータ実行可能命令は、コンピューティングデバイスに本明細書に記載する機能及び方法を実行させることができる。或いは、構成要素502~508が特定の機能又は機能のグループを実行するための特定用途の処理デバイスを備えることができる。追加的に又は代替的に、構成要素502~508は、コンピュータ実行可能命令及びハードウェアの組合せを備えることができる。コンテンツ管理システム104の特徴及び機能はサーバ102に関連して説明されるが、コンテンツ管理システム104の特徴及び機能の一部又は全てはクライアントコンピューティングデバイス上に存在し、クライアントコンピューティングデバイスによって実行され得る。
上述したように、コンテンツ管理システム104は、図5に示すように通信マネージャ502を含む。1以上の実施形態では、通信マネージャ502はコンテンツ管理システム104と1以上のクライアントコンピューティングデバイスとの間の通信を処理する。例えば、通信マネージャ502は、コレクションコンテンツアイテム要求及び選択されたコンテンツアイテムリファレンスの指示をクライアントコンピューティングデバイスから受信することができる。さらに、通信マネージャ502は、生成されたコレクションコンテンツアイテム及びコンテンツアイテムレンダリングを、コンテンツ管理システム104から1以上のクライアントコンピューティングデバイスに提供することができる。
上述したように、コンテンツ管理システム104は、図5に示すようにコレクションマネージャ504を含む。1以上の実施形態では、コレクションマネージャ504は新たなコレクションコンテンツアイテムを生成する。例えば、上述したように、コレクションマネージャ504は少なくとも1つの指示されたコンテンツアイテムに関連付けられたデジタル位置を識別し、そのデジタル位置を指す選択可能なコンテンツアイテムリファレンスを生成することによって、コレクションコンテンツアイテムを生成する。コレクションマネージャ504は、選択可能なコンテンツアイテムリファレンスをコレクションコンテンツアイテムに組み込むことができる。
コレクションマネージャ504はさらに、さらに、タイトル、サブヘッダ、及び他の埋め込みコンテンツを含むようにコレクションコンテンツアイテムを生成することができる。例えば、コレクションマネージャ504はフォーマットされたテキスト及び選択可能なコンテンツアイテムリファレンスを含むコンテンツのテーブルを含むように、コレクションコンテンツアイテムを生成することができる。さらに、コレクションマネージャ504は、コレクションコンテンツアイテムに関連付けられた構成された表示メタデータに基づいて、コレクションコンテンツアイテムを生成することができる。例えば、構成された表示メタデータは、一旦生成されると、コレクションコンテンツアイテムの外観を指定するコレクションコンテンツアイテムに関連付けられたHTML及び/又はCSSを含むことができる。したがって、コレクションマネージャ504は、コレクションコンテンツアイテムを生成するために、この追加の表示メタデータを処理することができる。
1以上の実施形態では、コレクションマネージャ504はまた、要求されたコレクションコンテンツアイテムを識別する。例えば、既存のコレクションコンテンツアイテムに対する要求を受信することに応答して、コレクションマネージャ504は、コンテンツ管理システムデータリポジトリ105から要求されたコレクションコンテンツアイテムを識別することができる。コレクションマネージャ504はさらに、通信マネージャ504を介して要求されたコレクションコンテンツアイテムを提供することができる。
さらに、コレクションマネージャ504は、要求されたコンテンツアイテムのレンダリングを生成することができる。例えば、表示されたコレクションコンテンツアイテム内のコンテンツアイテムリファレンスの検出された選択に応答して、コレクションマネージャ504は、コンテンツアイテムリファレンスによって示されたデジタル位置にあるコンテンツアイテムを識別することができる。コレクションマネージャ504はさらに、要求側クライアントコンピューティングデバイスにインストールされたコンテンツ管理システムのアプリケーションによって読み取り可能なフォーマットにコンテンツアイテムをレンダリングすることができる。その後コレクションマネージャ504は、通信マネージャ504を介して、要求側クライアントコンピューティングデバイスにコンテンツアイテムのレンダリングを提供することができる。
上述したように、コンテンツ管理システム104は、図5に示すように、パーミッションマネージャ506を含む。1以上の実施形態では、パーミッションマネージャ506は、コレクションコンテンツアイテム及びその中で参照されるコンテンツアイテムに関連付けられたすべてのパーミッション関連タスクを扱う。例えば、コレクションコンテンツアイテム及び/又はコレクションコンテンツアイテム内のコンテンツアイテムに対する受信された要求に応答して、パーミッションマネージャ506は、コレクションコンテンツアイテム及び/又はコンテンツアイテムに関連付けられたメタデータを分析して、要求者がコレクションコンテンツアイテム及び/又はコンテンツアイテムにアクセスするための適切なパーミッションを有しているかどうかを判断することができる。少なくとも1つの実施形態では、パ^ミッションマネージャ506は、要求者のユーザ名、アカウント識別子、アクセスレベルなどを要求されたアイテムに関連付けられたメタデータと比較することによって、要求者が十分なパーミッションを有するかどうかを判定する。
さらに、パーミッションマネージャ506は、パーミッションに関連付けられた通知を生成することができる。例えば、要求者がコンテンツアイテムにアクセスするための十分なパーミッションを有していないと判定したことに応答して、パーミッションマネージャ506は、パーミッションが否定されたことを示すポップアップ通知を生成することができる。追加的に又は代替的に、パーミッションマネージャ506は、要求者がそれらのコンテンツアイテムに関連付けられた適切なパーミッションを有するかどうかに基づいて、コレクションコンテンツアイテム内の1以上のコンテンツアイテムリファレンスを無効にすることができる。
上述したように、コンテンツ管理システム104は、図5に示すようにバージョンマネージャ508を含む。1以上の実施形態では、バージョンマネージャ508はコレクションコンテンツアイテム内のコンテンツアイテムの1以上のバージョンに関連するタスクを扱う。例えば、コレクションコンテンツアイテムの作成者又はコンテンツアイテムの作成者からバージョンアクションの指示を受信することに応答して、バージョンマネージャ508は、コレクションコンテンツアイテム内のすべてのコンテンツアイテム又は単一コンテンツアイテムの特定のバージョンを参照することができる。1以上の実施形態では、バージョンマネージャ508は、バージョンアクションが受信された時点のコンテンツアイテムの状態を含むコンテンツアイテムの特定のバージョンを参照する。バージョンマネージャ508はその時点からコンテンツアイテムのライブバージョンを同時に維持することができ、コンテンツアイテムの作成者がコレクションコンテンツアイテムを介して特定のバージョンを公開しながら、ライブコンテンツアイテムの編集を継続することを可能にする。
さらに、バージョンマネージャ508は、受信したバージョンアクションに基づいて、コレクションコンテンツアイテム内のコンテンツアイテムリファレンスを更新する。例えば、コレクションコンテンツアイテム内の特定のコンテンツアイテムに対するバージョンアクションを受信したことに応答して、バージョンマネージャ508は、特定のバージョンのデジタル記憶位置を指し示すように、コレクションコンテンツアイテム内の対応するコンテンツアイテムリファレンスを更新する。したがって、バージョンマネージャ508はコンテンツアイテムの特定のバージョンに対して、コレクションコンテンツアイテムで参照されているコンテンツアイテムを効果的に固定し、一方で、コンテンツアイテムの作成者は、ライブコンテンツアイテムを引き続き編集することができる。
バージョンマネージャ508はまた、コンテンツアイテムの複数のバージョンを編成し、格納する。例えば、コンテンツアイテムの作成者はライブコンテンツアイテムの編集を継続しながら、特定のユーザがコンテンツアイテムの複数のバージョンを使用できるように要求することがある。したがって、バージョンマネージャ508はコンテンツアイテムのライブバージョンを維持しながら、各バージョンを記憶し、特定のユーザに提供することができる。
上述したように、コンテンツ管理システム104は、コンテンツ管理システムデータリポジトリ105と対話する。図5に示すように、コンテンツ管理システムデータリポジトリ105は、デジタルコンテンツアイテムデータ510及びコレクションデータ512を含む。1以上の実施形態では、デジタルコンテンツアイテムデータ510は上述したようなデジタルコンテンツ及びデジタルコンテンツ情報を含む。同様に、1以上の実施形態では、コレクションデータ512は上述のようなコレクションコンテンツアイテム及びコレクションコンテンツアイテム情報を含む。
図1乃至図5、対応する記載、及び実施例は、コレクションコンテンツアイテムを生成し、利用するためのいくつかの異なるシステム及びデバイスを提供する。前述に加えて、本開示の実施形態はまた、動作や特定の結果を達成するための方法におけるステップを含むフローチャートに関して説明することができる。例えば、図6は、本開示の1以上の実施形態による例示的な方法のフローチャートを示す。図6に関連して説明された方法は、より少ない又はより多い動作/ステップで実行されてもよく、又は、これらの動作/ステップは異なる順序で実行されてもよい。さらに、本明細書で説明される動作/ステップは互いに並列に、又は同じもしくは類似の動作/ステップの異なるインスタンスと並列に、繰り返され得るか又は実行され得る。
図6は、コレクションコンテンツアイテムを生成する1つの例示的な方法600のフローチャートを示す。方法600は、コンテンツアイテムの指示を受信する動作610を含む。特に、動作610はクライアントコンピューティングデバイスから、コンテンツアイテムコレクションに含めるための第1のコンテンツアイテムの指示を受信することを含むことができる。例えば、コレクションコンテンツアイテムに含めるための第1のコンテンツアイテムの指示を受信することは、クラウドストレージ文書、PDF文書、MS Office文書、ウェブページ、又はデジタルメディアファイルのうちの1つの選択を受信することを含むことができる。さらに、少なくとも1つの実施形態では、第1のコンテンツアイテムの指示を受信することは第1のコンテンツアイテムのディスプレイ内から、第1のコンテンツアイテムを含む新たなコンテンツアイテムコレクションが生成されるべきであるという指示を受信することを含むことができる。
さらに、方法600は、コンテンツアイテムに関連付けられたコレクションコンテンツアイテムを生成する動作620を含む。特に、動作620は、クライアントコンピューティングデバイスに対応するユーザアカウントに関連して、第1のコンテンツアイテムに関連付けられたコレクションコンテンツアイテムを生成することを含むことができる。例えば、方法600は、第1のコンテンツアイテムに関連付けられたデジタル位置を判定することを含むことができる。1以上の実施形態では、第1のコンテンツアイテムに関連付けられたコレクションコンテンツアイテムを生成することは、コレクションコンテンツアイテムに、第1のコンテンツアイテムに関連付けられたデジタル位置への選択可能なリファレンスを追加することを含むことができる。例えば、第1のコンテンツアイテムに関連するデジタル位置を判定することは、オンラインクラウドストレージシステム内の第1のコンテンツアイテムのデジタル位置、サードパーティのストレージシステム内の第1のコンテンツアイテムのデジタル位置、クライアントコンピューティングデバイス上のファイルシステム内の第1のコンテンツアイテムのデジタル位置、又はインターネットウェブサーバ内の第1のコンテンツアイテムのデジタル位置の1以上を判定することを含む。
1以上の実施形態では、方法600は、クライアントコンピューティングデバイスから、コンテンツアイテムコレクションに含めるための第2のコンテンツアイテムの指示を受信することを含む。方法600は第2のコンテンツアイテムに関連するデジタル位置を判定し、第2のコンテンツアイテムに関連付けられたデジタル位置への選択可能なリファレンスをコレクションコンテンツアイテムに追加することによって、第2のコンテンツアイテムの指示に基づいてコレクションコンテンツアイテムをさらに修正することができる。
さらに、方法600は、コレクションコンテンツアイテムを提供する動作630を含む。特に、動作630はクライアントコンピューティングデバイス上に表示するためにコレクションコンテンツアイテムを提供することを含むことができ、クライアントコンピューティングデバイス上に表示されると、コレクションコンテンツアイテムは、第1のコンテンツアイテムに対応する選択可能なリファレンスを含む。
さらに、方法600は、コレクションコンテンツアイテム内のコンテンツアイテムの選択を受信する動作640を含む。特に、動作640はクライアントコンピューティングデバイスから、第1のコンテンツアイテムに対応する選択可能なリファレンスの選択の指示を受信することを含むことができる。例えば、選択の指示を受信することは、タッチジェスチャ又はマウスクリックの指示を受信することを含むことができる。
方法600はまた、コンテンツアイテムに関連付けられたデジタル位置を識別する動作650を含む。特に、動作650は第1のコンテンツアイテムに関連付けられたデジタル位置を識別することを含むことができる。例えば、第1のコンテンツアイテムに関連付けられたデジタル位置を識別することは、遠隔サーバー又はローカルハードドライブ上のデジタル記憶位置を識別することを含むことができる。
方法600は、デジタル位置からコンテンツアイテムを受信する動作660をさらに含む。特に、動作660は第1のコンテンツアイテムに関連付けられたデジタル位置から第1のコンテンツアイテムを受信することを含むことができる。例えば、デジタル位置から第1のコンテンツアイテムを受信することは、ファイル要求に応答するものであってもよい。
さらに、方法600は、コンテンツアイテムのレンダリングを提供する動作670を含む。特に、動作670は、第1のコンテンツアイテムのレンダリングをクライアントコンピューティングデバイスに提供することを含むことができる。例えば、第1のコンテンツアイテムのレンダリングを提供することは、第1のコンテンツアイテムに関連付けられたファイルタイプを決定することと、ファイルタイプに基づいて、第1のコンテンツアイテムのレンダリングを生成することとを含むことができる。さらに、少なくとも1つの実施形態では、第1のコンテンツアイテムのレンダリングを提供することは、グラフィカルユーザインタフェースの第1の表示領域内で第1のコンテンツアイテムのレンダリングを提供することと、グラフィカルユーザインタフェースの第2の表示領域内で第1のコンテンツアイテムに対応する選択可能なリファレンスを提供することとを含むことができる。
1以上の実施形態では、方法600はクライアントコンピューティングデバイスから、第1のコンテンツアイテムに対応する選択可能なリファレンスの選択の指示を受信することを含む。また、方法600はクライアントコンピューティングデバイスに、第1のコンテンツアイテムのレンダリングを提供することと、クライアントコンピューティングデバイスから、第1のコンテンツアイテムのレンダリングに関連付けられた1以上の編集を受信することと1以上の編集に基づいて第1のコンテンツアイテムを更新することとを含むことができる。
さらに、少なくとも1つの実施形態では、方法600はクライアントコンピューティングデバイスから、コレクションコンテンツアイテムとは関係のない第1のコンテンツアイテムに関連付けられた1以上の編集を受信することを含む。方法600はさらに、第1のコンテンツアイテムに関連付けられたデジタル位置にある1以上の編集に基づいて、第1のコンテンツアイテムを更新することを含むことができる。
1以上の実施形態において、方法600はまた、第2のクライアントコンピューティングデバイスから、コレクションコンテンツアイテムに対する要求を受信することと、第1のコンテンツアイテムに対するパーミッション設定及び第2のコンテンツアイテムに対するパーミッション設定を判定することと、第2のクライアントコンピューティングデバイスに関連付けられたパーミッション設定を判定することと、コレクションコンテンツアイテム内で、第1のコンテンツアイテムに関連付けられたパーミッション設定及び第2のクライアントコンピューティングデバイスに関連付けられたパーミッション設定に基づいて、第1のコンテンツアイテムに関連付けられたデジタル位置への選択可能なリファレンスを提供することと、コレクションコンテンツアイテム内で、第2のコンテンツアイテムに関連付けられたパーミッション設定及び第2のクライアントコンピューティングデバイスに関連付けられたパーミッション設定に基づいて、第2のコンテンツアイテムに関連付けられたデジタル位置への選択可能なリファレンスを保留することとを含む。
さらに、1以上の実施形態では、方法600は、クライアントコンピューティングデバイスから、コレクションコンテンツアイテム内の第1のコンテンツアイテムに関連するバージョンアクションを受信することと、バージョンアクションを受信したことに応答して、第1のコンテンツアイテムの第1のバージョンを生成することと、第1のコンテンツアイテムの固定バージョンに関連付けられたデジタル位置に関連付けられるコレクションコンテンツアイテム内の第1のコンテンツアイテムに関連付けられた選択可能なリファレンスを更新することと、第1のコンテンツアイテムのライブバージョンをさらに編集可能にすることを含む。少なくとも1つの実施形態では、方法600は、第2のクライアントコンピューティングデバイスから、コレクションコンテンツアイテム内の第1のコンテンツアイテムに対する要求を受信することと、第1のコンテンツアイテムの固定バージョンのデジタル位置に関連付けられている選択可能なリファレンスに基づいて、第1のコンテンツアイテムの固定バージョンを第2のクライアントコンピューティングデバイスに提供することも含む。
本開示の実施形態は以下でより詳細に説明するように、例えば1以上のプロセッサ及びシステムメモリなどのコンピュータハードウェアを含む、特定用途又は汎用コンピュータを備えるか、又は利用することができる。本開示の範囲内の実施形態はまた、コンピュータ実行可能命令及び/又はデータ構造を搬送又は記憶するための物理的及び他のコンピュータ可読媒体を含む。特に、本明細書で説明されるプロセスの1以上は、非一時的コンピュータ可読媒体で具体化され、1以上のコンピューティングデバイス(例えば、本明細書で説明されるメディアコンテンツアクセスデバイスのいずれか)によって実行可能な命令として少なくとも部分的に実装され得る。一般に、プロセッサ(たとえば、マイクロプロセッサ)は非一時的コンピュータ可読媒体(たとえば、メモリなど)から命令を受信し、それらの命令を実行し、それによって、本明細書で説明される1以上のプロセスを含む1以上のプロセスを実行する。
プロセッサは、コンピューティングシステム内の命令を処理する任意の処理ユニット又はデバイスを含むことができる。例えば、プロセッサは中央処理ユニット、グラフィックス処理ユニット、フィールドプログラマブルゲートアレイ、加速処理ユニット、デジタル信号プロセッサ、又は統合プロセッサのうちの1以上を含むことができるが、これらに限定するものではない。コンピューティングシステムはまた、個別に(例えば、単一のプロセッサによって)又は一緒に(例えば、複数の異なるプロセッサ又はプロセッサコアによって)処理するための任意の数のプロセッサを含むことができる。
コンピュータ可読媒体は、汎用又は特定用途のコンピュータシステムによってアクセス可能な任意の利用可能な媒体とすることができる。コンピュータ実行可能命令を格納するコンピュータ可読媒体は、非一時的なコンピュータ可読記憶媒体である。コンピュータ実行可能命令を運ぶコンピュータ可読媒体は伝送媒体である。したがって、限定ではなく例示として、本開示の実施形態は、少なくとも2つの明確に異なる種類のコンピュータ可読媒体、非一時的なコンピュータ可読記憶媒体(デバイス)及び伝送媒体を備えることができる。
非一時的なコンピュータ可読記憶媒体は、RAM、ROM、EEPROM、CD-ROM、ソリッドステートドライブ(SSD)(例えば、RAMに基づく)、フラッシュメモリ、相変化メモリ(PCM)、他のタイプのメモリ、他の光ディスクストレージ、磁気ディスクストレージ又は他の磁気ストレージデバイス、又は、コンピュータ実行可能命令又はデータ構造の形式で所望のプログラムコード手段を記憶するために使用することができ、汎用又は特定用途のコンピュータによってアクセスすることができる他の任意の媒体を含む。
「ネットワーク」は、コンピュータシステム及び/又はモジュール及び/又は他の電子デバイス間の電子データのトランスポートを可能にする1つ以上のデータリンクとして定義される。情報がネットワーク又は別の通信接続(有線、無線、又は有線と無線との組合せ)を介してコンピュータに転送又は提供されると、コンピュータはその接続を伝送媒体として適切に認識する。伝送媒体は、コンピュータ実行可能命令又はデータ構造の形態で所望のプログラムコード手段を伝送するために使用することができ、汎用又は特定用途のコンピュータによってアクセスすることができるネットワーク及び/又はデータリンクを含むことができる。上記の組合せは、コンピュータ可読媒体の範囲内にも含まれるべきである。
さらに、種々のコンピュータシステム構成要素に到達すると、コンピュータ実行可能命令又はデータ構造の形態でのプログラムコード手段は、伝送媒体から非一時的なコンピュータ可読記憶媒体(デバイス)(又はその逆)に自動的に転送され得る。例えば、ネットワーク又はデータリンクを介して受信されたコンピュータ実行可能命令又はデータ構造はネットワークインタフェースモジュール(例えば、「ネットワークインタフェースカード」)内のRAMにバッファすることができ、その後、最終的にコンピュータシステムのRAM及び/又はコンピュータシステムの揮発性の低いコンピュータ記憶媒体(デバイス)に転送することができる。したがって、非一時的なコンピュータ可読記憶媒体(デバイス)は、伝送媒体も(又は主に)利用するコンピュータシステム構成要素に含めることができることを理解されるべきである。
コンピュータ実行可能命令は例えば、プロセッサで実行されると、汎用コンピュータ、特定用途コンピュータ、又は特定用途処理デバイスに特定の機能又は機能のグループを実行させる命令及びデータを含む。いくつかの実施形態では、汎用コンピュータを、本開示の要素を実装する特定用途コンピュータに変えるために、コンピュータ実行可能命令が汎用コンピュータ上で実行される。コンピュータ実行可能命令は例えば、バイナリ、アセンブリ言語のような中間フォーマット命令、又はソースコードであってもよい。本願発明について構造的特徴及び/又は方法論的動作に特有の言語で説明してきたが、添付の特許請求の範囲で定義される発明は必ずしも上述の特徴又は動作に限定されないことを理解されたい。むしろ、記載された特徴及び動作は、特許請求の範囲を実施する例示的な形態として開示される。
当業者は、本開示がパーソナルコンピュータ、デスクトップコンピュータ、ラップトップコンピュータ、メッセージプロセッサ、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベース又はプログラム可能な家電機器、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、モバイル電話、PDA、タブレット、ページャ、ルータ、スイッチ等を含む、多くのタイプのコンピュータシステム構成を有するネットワークコンピューティング環境において実施されてもよいことを理解するであろう。本開示はまた、ネットワークを介して(有線データリンク、無線データリンク、又は有線データリンクと無線データリンクの組合せによって)リンクされているローカルコンピュータシステムとリモートコンピュータシステムの両方がタスクを実行する分散システム環境においても実施可能である。分散システム環境では、プログラムモジュールはローカル及びリモートメモリストレージデバイスの両方に配置されうる。
本開示の実施形態は、クラウドコンピューティング環境でも実施することができる。本説明では、「クラウドコンピューティング」が構成可能なコンピューティングリソースの共有されるプールへのオンデマンドネットワークアクセスを可能にするためのモデルとして定義される。例えば、クラウドコンピューティングを市場で採用して、構成可能なコンピューティングリソースの共有プールへのユビキタスで便利なオンデマンドアクセスを提供することができる。構成可能なコンピューティングリソースの共有プールは、仮想化を介して迅速にプロビジョニングし、管理の労力やサービスプロバイダとのやり取りを少なくして解法し、それに応じて拡張されうる。
クラウドコンピューティングモデルは例えば、オンデマンドセルフサービス、広域ネットワークアクセス、リソースプーリング、迅速な弾性、計算されたサービス等のような種々の特性から構成され得る。クラウドコンピューティングモデルでは、Software as a Service("SaaS")、Platform as a Service("PaaS")、Infrastructure as a Service("IaaS")など、様々なサービスモデルを公開することもできる。クラウドコンピューティングモデルは、プライベートクラウド、コミュニティクラウド、パブリッククラウド、ハイブリッドクラウドなどの種々の展開モデルを使用して展開することもできる。本明細書及び特許請求の範囲において、「クラウドコンピューティング環境」は、クラウドコンピューティングが採用される環境である。
図7は、上述のプロセスのうちの1以上を実行するように構成されうる例示的なコンピューティングデバイス700のブロック図を示す。本明細書で説明するクライアントデバイス及び/又はコンテンツ管理システム104は、コンピューティングデバイス700などの1以上のコンピューティングデバイスを備えてもよいことを理解されたい。図7に示すように、コンピューティングデバイス700はプロセッサ702、メモリ704、ストレージデバイス706、I/Oインタフェース708、及び通信インタフェース710を備えることができ、これらは、通信インフラストラクチャ712を介して通信可能に結合されうる。例示的なコンピューティングデバイス700が図7に示されているが、図7に示されている構成要素は限定することを意図するものではない。他の実施形態においては、追加の又は代替の構成要素を使用することができる。さらに、いくつかの実施形態では、コンピューティングデバイス700が図7に示すものよりも少ない構成要素を含むことができる。続いて、図7に示すコンピューティングデバイス700の構成要素について、さらに詳細に説明する。
特定の実施形態では、プロセッサ702はコンピュータプログラムを構成するような命令を実行するためのハードウェアを含む。一例として、限定はしないが、命令を実行するために、プロセッサ702は内部レジスタ、内部キャッシュ、メモリ704、又はストレージデバイス706から命令を取り出し(又はフェッチ)、それらをデコードして実行することができる。特定の実施形態では、プロセッサ702は、データ、命令、又はアドレスのための1以上の内部キャッシュを含むことができる。一例として、限定はしないが、プロセッサ702は、1以上の命令キャッシュ、1以上のデータキャッシュ、及び1以上のトランスレーションルックアサイドバッファ(TLB)を含み得る。命令キャッシュ内の命令は、メモリ704又はストレージ706内の命令のコピーであってもよい。さらに、プロセッサ702は、1以上のプロセッサ又はプロセッサコアを含むか又はそのようなものとして表すことができる。
メモリ704は、プロセッサによる実行のためのデータ、メタデータ、及びプログラムを記憶するために使用されてもよい。メモリ704は、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、ソリッドステートディスク(SSD)、フラッシュ、相変化メモリ(PCM)、その他のタイプのデータストレージなどの、揮発性及び不揮発性メモリのうちの1以上を含み得る。メモリ704は、内部メモリ又は分散メモリであってもよい。
ストレージデバイス706は、データ又は命令を記憶するためのストレージデバイスを含む。一例として、限定はしないが、ストレージデバイス706は上述した非一時的な記憶媒体を含むことができる。ストレージデバイス706は、ハードディスクドライブ(HDD)、フロッピーディスク(登録商標)ディスクドライブ、フラッシュメモリ、光ディスク、光磁気ディスク、磁気テープ、若しくはユニバーサルシリアルバス(USB)ドライブ、又はこれらの2つ以上の組合せを含むことができる。ストレージデバイス706は、必要に応じて、取り外し可能又は取り外し不能(又は固定)媒体を含むことができる。ストレージデバイス706は、コンピューティングデバイス700の内部にあっても外部にあってもよい。特定の実施の形態では、ストレージデバイス706は不揮発性のソリッドステートメモリである。他の実施形態では、ストレージデバイス706は読み出し専用メモリ(ROM)を含む。必要に応じて、このROMは、マスクプログラムROM、プログラマブルROM(PROM)、消去可能PROM(EPROM)、電気的消去可能PROM(EEPROM)、電気的可変ROM(EAROM)、又はフラッシュメモリ、又はこれらの2つ以上の組合せであってもよい。
I/Oインタフェース708は、ユーザがコンピューティングデバイス700へ入力を与え、そこから出力を受け取り、さもなければ転送し、そこからデータを受信することができるようにする。I/Oインタフェース708は、マウス、キーパッド又はキーボード、タッチスクリーン、カメラ、光学スキャナ、ネットワークインタフェース、モデム、他の既知のI/Oデバイス、又はそのようなI/Oインタフェースの組合せを含むことができる。I/Oインタフェース708はグラフィックスエンジン、ディスプレイ(例えば、ディスプレイスクリーン)、1以上の出力ドライバ(例えば、ディスプレイドライバ)、1以上のオーディオスピーカ、及び1以上のオーディオドライバを含むが、これらに限定するのではなく、出力をユーザに提示するための1以上のデバイスを含むことができる。特定の実施形態では、I/Oインタフェース708はユーザに提示するためのグラフィックデータをディスプレイに提供するように構成される。グラフィカルデータは、1以上のグラフィカルユーザインタフェース及び/又は特定の実装に役立つような他の任意のグラフィカルコンテンツとして表すことができる。
通信インタフェース710は、ハードウェア、ソフトウェア、又はその両方を含むことができる。いずれにせよ、通信インタフェース710はコンピューティングデバイス700と1以上の他のコンピューティングデバイス又はネットワークとの間の通信(例えば、パケットベース通信など)のための1以上のインタフェースを提供することができる。一例として、限定はしないが、通信インタフェース710は、イーサネット又は他の有線ネットワークと通信するためのネットワークインタフェースコントローラ(NIC)又はネットワークアダプタ、又はWI-FIなどの無線ネットワークと通信するための無線NIC(WNIC)又は無線アダプタを含んでもよい。
追加的に又は代替的に、通信インタフェース710は、アドホックネットワーク、パーソナルエリアネットワーク(PAN)、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、メトロポリタンエリアネットワーク、又はインターネットの1以上の部分、あるいはこれらの2つ以上の組合せとの通信を容易にすることができる。これらのネットワークの1以上の部分は、有線又は無線であってもよい。一例として、通信インタフェース710は無線PAN(WPAN)(例えば、BLUETOOTH(登録商標) WPANなど)、WI-FIネットワーク、WI-MAXネットワーク、セルラ電話ネットワーク(例えば、グローバルシステムフォーモバイルコミュニケーション(GSM)ネットワーク等)、又は他の適切な無線ネットワーク又はそれらの組合せとの通信を容易にすることができる。
さらに、通信インタフェース710は、種々の通信プロトコルを容易にすることができる。使用されうる通信プロトコルの例としては、データ伝送媒体、通信デバイス、伝送制御プロトコル(TCP)、インターネットプロトコル(IP)、ファイル転送プロトコル(FTP)、Telnet、ハイパーテキスト転送プロトコル(HTTP)、ハイパーテキスト転送プロトコルセキュア(HTTPS)、セッション開始プロトコル(SIP)、シンプルオブジェクトアクセスプロトコル(SOAP)、拡張可能マークアップ言語(XML)、そのバリエーション、シンプルメール転送プロトコル(SMTP)、リアルタイム転送プロトコル(RTP)、ユーザデータグラムプロトコル(UDP)、グローバルシステムフォーモバイルコミュニケーション(GSM)技術、符号分割多元接続(CDMA)技術、時分割多元接続(TDMA)技術、ショートメッセージサービス(SMS)、マルチメディアメッセージサービス(MMS)、無線周波数(RF)シグナリングテクノロジー、ロングタームエボリューション(LTE)技術、無線通信技術、帯域内及び帯域外シグナリング技術、及び、その他の適切な通信ネットワーク及び技術を含むが、限定はしない。
通信インフラストラクチャ712は、コンピューティングデバイス700の構成要素を互いに結合するハードウェア、ソフトウェア、又はその両方を含み得る。一例として、限定はしないが、通信インフラストラクチャ712は、高速グラフィックスポート(AGP)又は他のグラフィックスバス、拡張業界標準アーキテクチャ(EISA)バス、フロントサイドバス(FSB)、ハイパートランスポート(HT)相互接続、業界標準アーキテクチャ(ISA)バス、INFINIBAND相互接続、ローピンカウント(LPC)バス、メモリバス、マイクロチャネルアーキテクチャ(MCA)バス、周辺コンポーネント相互接続(PCI)バス、PCI-Express(PCIe)バス、シリアルアドバンストテクノロジアタッチメント(SATA)バス、ビデオエレクトロニクス標準アソシエーションローカル(VLB)バス、又は他の適切なバスもしくはそれらの組合せを含むことができる。
図8は、コンテンツ管理システム104の1以上の実施形態を実施することができる環境を示す概略図である。例えば、図8に示すように、コンテンツ管理システム802(例えば、コンテンツ管理システム104)はデジタルコンテンツ(例えば、デジタルビデオ)を生成し、格納し、管理し、受信し、送信することができる。例えば、コンテンツ管理システム802は、ネットワーク804を介してクライアントデバイス806との間でデジタルコンテンツを送受信することができる。特に、コンテンツ管理システム802はデジタルコンテンツのコレクションを記憶し、管理することができる。コンテンツ管理システム802は、複数のユーザに関連付けられたコンピューティングデバイス間でのデジタルコンテンツの共有を管理することができる。例えば、コンテンツ管理システム802は、ユーザがコンテンツ管理システム802の別のユーザとデジタルコンテンツを共有することを容易にすることができる。
特に、コンテンツ管理システム802は、1人以上のユーザに関連付けられた複数のクライアントデバイス806にわたってデジタルコンテンツの同期を管理することができる。例えば、ユーザは、クライアントデバイス806を使用してデジタルコンテンツを編集することができる。コンテンツ管理システム802は、クライアントデバイス806に、編集されたデジタルコンテンツをコンテンツ管理システム802に送信させることができる。その後、コンテンツ管理システム802は、編集されたデジタルコンテンツを1以上の追加のコンピューティングデバイス上で同期させる。
複数のデバイスにわたってデジタルコンテンツを同期化することに加えて、コンテンツ管理システム802の1以上の実施形態は、デジタルコンテンツの大規模なコレクションを有するユーザに対して効率的な記憶オプションを提供することができる。例えば、コンテンツ管理システム802はコンテンツ管理システム802上にデジタルコンテンツのコレクションを格納することができ、一方で、クライアントデバイス806は、デジタルコンテンツの縮小サイズバージョンのみを格納する。ユーザはクライアントデバイス806上のデジタルコンテンツの縮小サイズバージョン(例えば、デジタル画像のサムネイル)をナビゲートし、閲覧することができる。特に、ユーザがデジタルコンテンツを体験できる1つの方法は、クライアントデバイス806上のデジタルコンテンツの縮小サイズバージョンを閲覧することである。
ユーザがデジタルコンテンツを体験できる別の方法は、デジタルコンテンツの縮小サイズバージョンを選択して、コンテンツ管理システム802からデジタルコンテンツのフル解像度又は高解像度バージョンを要求することである。特に、ユーザがデジタルコンテンツの縮小サイズバージョンを選択すると、クライアントデバイス806は、デジタルコンテンツの縮小サイズバージョンに関連付けられたデジタルコンテンツを要求する要求をコンテンツ管理システム802に送信する。コンテンツ管理システム802は、デジタルコンテンツをクライアントデバイス806に送信することによって、要求に応答することができる。クライアントデバイス806は、デジタルコンテンツを受信すると、その後デジタルコンテンツをユーザに提示することができる。このようにして、ユーザはクライアントデバイス806上で使用されるリソースの量を最小限に抑えながら、大量のデジタルコンテンツのコレクションにアクセスすることができる。
クライアントデバイス806は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、パーソナルデジタルアシスタント(PDA)、車内又は車外ナビゲーションシステム、スマートTV、バーチャルリアリティ(VR)又は拡張現実(AR)デバイス、ハンドヘルドデバイス、ウェアラブルデバイス、スマートフォン又は他のセルラー又はモバイル電話、或いはモバイルゲームデバイス、他のモバイル端末、又は他の適切なコンピューティングデバイスであってもよい。クライアントデバイス806はウェブブラウザ(例えば、Microsoft Windows Internet Explorer、Mozilla Firefox、Apple Safari、Google Chrome、Operaなど)又はネイティブ又は特定用途のクライアントアプリケーション(例えば、iPhone(登録商標)又はiPad(登録商標)用のFacebook、Android用のFacebookなど)などの1以上のクライアントアプリケーションを実行して、ネットワーク804を介してコンテンツにアクセスし、閲覧することができる。
ネットワーク804は、クライアントデバイス806がコンテンツ管理システム802にアクセスすることができるネットワーク又はネットワークの集合(インターネット、企業イントラネット、仮想プライベートネットワーク(VPN)、ローカルエリアネットワーク(LAN)、無線ローカルエリアネットワーク(WLAN)、セルラーネットワーク、ワイドエリアネットワーク(WAN)、メトロポリタンエリアネットワーク(MAN)、又はそのような2つ以上の組み合わせなど)として表すことができる。
前述の明細書において、本開示は、その特定の例示的な実施形態を参照して説明されてきた。本開示の種々の実施形態及び態様は本明細書で議論される詳細を参照して説明され、添付の図面は種々の実施形態を図示する。上記の説明及び図面は本開示を例示するものであり、本開示を限定するものとして解釈されるべきではない。本開示の種々の実施形態の完全な理解を提供するために、多数の特定の詳細が説明されている。
本開示は、その精神又は本質的な特徴から逸脱することなく、他の特定の形態で具現化されてもよい。説明した実施形態は、あらゆる点で例示的なものにすぎず、限定的なものではないとみなすべきである。例えば、本明細書で説明される方法はより少ない又はより多いステップ/動作で実行されてもよく、又はステップ/動作は異なる順序で実行されてもよい。さらに、本明細書で説明されるステップ/動作は互いに並列に、又は同じ又は類似のステップ/動作の異なるインスタンスと並列に繰り返され、又は実行され得る。したがって、本出願の範囲は、前述の説明ではなく、添付の特許請求の範囲によって示される。特許請求の範囲の同等性の意味及び範囲内に入るすべての変更は、それらの範囲内に包含されるべきである。