(57)【特許請求の範囲】
【請求項１】
クライアント装置をリモートデータレポジトリーに関連付ける方法において、
リモートデータストレージをなすリモートデータレポジトリーとの関連付けを求めるクライアント装置からのアクチベーション要求を受け取る段階と；
クライアント装置に記憶されたローカル装置データアイテムのセットのいずれかがリモートデータレポジトリーに既に存在するかどうか決定する段階であって、当該決定する段階は、
第１に、前記ローカル装置データアイテムのセットのローカルデータアイテムの識別子を、前記リモートデータレポジトリーに既に存在するリモートデータアイテムの識別子と一致させるように試みる段階と、
第２に、ローカルデータアイテムが識別子と一致しなかった場合には、前記ローカルデータアイテムのハッシュ値を前記リモートデータレポジトリーに既に存在するリモートデータアイテムのハッシュ値と一致させるように試みる段階と、
第３に、ローカルデータアイテムが識別子ともハッシュ値とも一致しなかった場合には、前記ローカルデータアイテムのデジタル指紋を前記リモートデータレポジトリーに既に存在するリモートデータアイテムのデジタル指紋と一致させるように試みる段階と、を含む決定する段階と；
リモートデータレポジトリーに既に存在すると決定されなかったクライアント装置のローカル装置データアイテムのセットのローカルデータアイテムのサブセットをアップロードすることを要求する段階と；
前記クライアント装置から前記ローカルデータアイテムのサブセットを受け取る段階と；
前記クライアント装置から受信したローカルデータアイテムのサブセットをリモートデータレポジトリーのリモートデータストレージに追加する段階と；
を含む方法。
【請求項２】
前記識別子は、アルファニューメリック値である、請求項１に記載の方法。
【請求項３】
前記識別子は、前記リモートデータレポジトリーを管理するリモートサーバーコンピュータにより指定される、請求項１に記載の方法。
【請求項４】
クライアント装置をリモートデータレポジトリーに関連付けるための少なくともコンピュータプログラムコードを記憶している非一時的コンピュータ読み取り可能な媒体において、
リモートデータストレージをなすリモートデータレポジトリーとの関連付けを求めるクライアント装置からのアクチベーション要求を受け取るためのコンピュータプログラムコードと；
クライアント装置に記憶されたローカル装置データアイテムのセットのいずれかがリモートデータレポジトリーに既に存在するかどうか決定するためのコンピュータプログラムコードであって、前記決定は、
第１に、前記ローカル装置データアイテムのセットのローカルデータアイテムの識別子を、前記リモートデータレポジトリーに既に存在するリモートデータアイテムの識別子と一致させるように試み、
第２に、前記ローカルデータアイテムが識別子と一致しなかった場合には、前記ローカルデータアイテムのハッシュ値を前記リモートデータレポジトリーに既に存在するリモートデータアイテムのハッシュ値と一致させるように試み、
第３に、前記ローカルデータアイテムが識別子ともハッシュ値とも一致しなかった場合には、前記ローカルデータアイテムのデジタル指紋を前記リモートデータレポジトリーに既に存在するリモートデータアイテムのデジタル指紋と一致させるように試みる、ことを含むコンピュータプログラムコードと；
リモートデータレポジトリーに既に存在すると決定されなかったクライアント装置のローカル装置データアイテムのセットのローカルデータアイテムのサブセットをアップロードすることを要求するためのコンピュータプログラムコードと；
前記クライアント装置から前記ローカルデータアイテムのサブセットを受け取るためのコンピュータプログラムコードと；
前記クライアント装置から受信したローカルデータアイテムのサブセットをリモートデータレポジトリーのリモートデータストレージに追加するためのコンピュータプログラムコードと；
を備えた非一時的コンピュータ読み取り可能な媒体。
【請求項５】
ネットワークを経てクライアント装置によりアクセス可能なネットワークベースのレポジトリーを与えるシステムにおいて、
複数のアカウントホルダのためのデジタルデータを記憶するように構成されたクラウドストレージであって、許可されたクライアント装置によりネットワークを経てアクセス可能なクラウドストレージと、
前記クラウドストレージに作動的に接続された少なくとも１つのクラウドサーバーと、を備え、前記少なくとも１つのクラウドサーバーは、
ネットワークベースのレポジトリーとの関連付けを求めるクライアント装置からアクチベーション要求を受け取り；
前記クライアント装置に記憶されたローカル装置データアイテムのセットのいずれかが前記ネットワークベースのレポジトリーのクラウドストレージに既に存在するかどうか決定し、当該決定することは、
第１に、前記ローカル装置データアイテムのセットのローカルデータアイテムの識別子を、前記ネットワークベースのレポジトリーに既に存在するリモートデータアイテムの識別子と一致させるように試み、
第２に、前記ローカルデータアイテムが識別子と一致しなかった場合には、前記ローカルデータアイテムのハッシュ値を前記ネットワークベースのレポジトリーに既に存在するリモートデータアイテムのハッシュ値と一致させるように試み、
第３に、前記ローカルデータアイテムが識別子ともハッシュ値とも一致しなかった場合には、前記ローカルデータアイテムのデジタル指紋を前記ネットワークベースのレポジトリーに既に存在するリモートデータアイテムのデジタル指紋と一致させるように試みることを含み；
前記ネットワークベースのレポジトリーのクラウドストレージに既に存在すると決定されなかったクライアント装置のローカル装置データアイテムのセットのローカルデータアイテムのサブセットをアップロードすることを要求し；
前記クライアント装置から前記ローカルデータアイテムのサブセットを受け取り；及び
前記クライアント装置から受信したローカルデータアイテムのサブセットを前記ネットワークベースのレポジトリーのクラウドストレージに追加する；
ように構成されている、システム。
【請求項６】
前記識別子は、アルファニューメリック値である、請求項５に記載のシステム。
【請求項７】
前記識別子は、前記少なくとも１つのクラウドサーバーにより指定される、請求項６に記載のシステム。
【請求項８】
デジタルデータアイテムがリモートデータレポジトリーに常駐する別のデジタルデータアイテムに一致するかどうか決定するための方法において、
第１に、ローカルデジタルデータアイテムの識別子を、リモートデータレポジトリーに既に記憶されているリモートデジタルデータアイテムの識別子と一致させるように試み；
ローカルデジタルデータアイテムの識別子が１つのリモートデジタルデータアイテムの識別子と一致するときにローカルデジタルデータアイテムをリモートデジタルデータアイテムと同じであると考え；
第２に、ローカルデジタルデータアイテムが、識別子で一致させる第１の試みによってまだ一致されていないとすれば、ローカルデジタルデータアイテムのハッシュ値を、リモートデータレポジトリーに既に記憶されているリモートデジタルデータアイテムのハッシュ値と一致させるように試み；
ローカルデジタルデータアイテムの識別子が１つのリモートデジタルデータアイテムのハッシュ値と一致するときにローカルデジタルデータアイテムをリモートデジタルデータアイテムと同じであると考え；
第３に、ローカルデータアイテムが、識別子で一致させる第１の試み又はハッシュ値で一致させる第２の試みによってまだ一致されていないとすれば、ローカルデジタルデータアイテムのデジタル指紋を、リモートデータレポジトリーに既に記憶されているリモートデジタルデータアイテムのデジタル指紋と一致させるように試み；及び
ローカルデジタルデータアイテムの識別子が１つのリモートデジタルデータアイテムのデジタル指紋と一致するときにローカルデジタルデータアイテムをリモートデジタルデータアイテムと同じであると考える；
ことを含む方法。
【請求項９】
クライアント装置をリモートデータレポジトリーに関連付ける方法において、
リモートデータストレージをなすリモートデータレポジトリーとの関連付けを求めるクライアント装置からのアクチベーション要求を受け取り；
クライアント装置におけるアートワークアイテムのハッシュ値を要求し；
その要求されたハッシュ値のいずれかが、リモートデータレポジトリーに既に維持されている既存のアートワークアイテムのハッシュ値に一致するかどうか決定し；
クライアント装置におけるアートワークアイテムのうち、リモートデータレポジトリーに既に維持されていると決定されたアートワークアイテムについてはアップロードを回避し；
前記クライアント装置に記憶された複数のコンテンツアイテムのいずれかが前記リモートデータレポジトリーに既に存在するかどうか決定し；
前記クライアント装置に記憶された複数のコンテンツアイテムのうち、前記リモートデータレポジトリーに既に存在すると決定されないコンテンツアイテムをアップロードすることを要求し；
前記クライアント装置に記憶されたコンテンツアイテムで、前記リモートデータレポジトリーに既に存在すると決定されないコンテンツアイテムに対応する、前記クライアント装置からアップロードされたデータを受け取り；及び
前記アップロードされたデータを前記リモートデータレポジトリーのリモートデータストレージに追加することを含み；
前記決定は、
第１に、コンテンツアイテムの識別子を前記リモートデータレポジトリーに既に存在するリモートコンテンツアイテムの識別子と一致させるように試み、
第２に、コンテンツアイテムが識別子と一致しなかった場合には、コンテンツアイテムのハッシュ値を前記リモートデータレポジトリーに既に存在するリモートコンテンツアイテムのハッシュ値と一致させるように試み、
第３に、コンテンツアイテムが識別子ともハッシュ値とも一致しなかった場合には、コンテンツアイテムのデジタル指紋を前記リモートデータレポジトリーに既に存在するリモートコンテンツアイテムのデジタル指紋と一致させるように試みることを含む方法。
【請求項１０】
前記クライアント装置は、ユーザアカウントに関連付けられ、前記方法は、前記クライアント装置のアートワークアイテムのうち、前記リモートデータレポジトリーに既に維持されていると決定されたアートワークアイテムをユーザアカウントに関連付けることを含む、請求項９に記載の方法。
【請求項１１】
前記方法は、前記クライアント装置のアートワークアイテムのうち、前記リモートデータレポジトリーに既に維持されていると決定されなかったアートワークアイテムを前記リモートデータレポジトリーへアップロードすることを含む、請求項１０に記載の方法。
【請求項１２】
前記方法は、前記アートワークアイテムのうち、前記リモートデータレポジトリーにアップロードされたアートワークアイテムをユーザアカウントに関連付けることを含む、請求項１１に記載の方法。
【請求項１３】
前記方法は、前記クライアント装置のアートワークアイテムのうち、前記リモートデータレポジトリーに既に維持されていると決定されなかったアートワークアイテムを前記リモートデータレポジトリーへアップロードすることを含む、請求項９に記載の方法。
【請求項１４】
前記クライアント装置は、ユーザアカウントに関連付けられ、前記方法は、前記アートワークアイテムのうち、前記リモートデータレポジトリーにアップロードされたアートワークアイテムをユーザアカウントに関連付けることを含む、請求項１３に記載の方法。
【請求項１５】
クライアント装置をリモートデータレポジトリーに関連付ける方法において、
複数のデジタルメディア資産のためのリモートデータストレージをなすリモートデータレポジトリーとの関連付けを求めるクライアント装置からアクチベーション要求を受け取り；
クライアント装置に記憶されたローカルデジタルメディア資産がリモートデータレポジトリーに既に存在するかどうか決定し、各ローカルデジタルメディア資産として記憶されるデータは、少なくとも、コンテンツアイテム及びアートワークアイテムを含み、そして前記決定は、各ローカルデジタルメディア資産のコンテンツアイテム及びアートワークアイテムがリモートデータレポジトリーに既に存在するかどうか別々に決定するものであり；及び
クライアント装置からのデータのアップロードを要求し、アップロードが要求されるデータは、（ｉ）リモートデータレポジトリーに既に存在すると決定されないクライアント装置上の１つ以上のコンテンツアイテム、及び（ii）リモートデータレポジトリーに既に存在すると決定されないクライアント装置上の１つ以上のアートワークアイテムを含むものである、方法であって、
前記決定は、
第１に、各ローカルデジタルメディア資産のコンテンツアイテムの識別子を前記リモートデータレポジトリーに既に存在するリモートコンテンツアイテムの識別子と一致させるように試み、
第２に、コンテンツアイテムが識別子と一致しなかった場合には、コンテンツアイテムのハッシュ値を前記リモートデータレポジトリーに既に存在するリモートコンテンツアイテムのハッシュ値と一致させるように試み、
第３に、コンテンツアイテムが識別子ともハッシュ値とも一致しなかった場合には、コンテンツアイテムのデジタル指紋を前記リモートデータレポジトリーに既に存在するリモートコンテンツアイテムのデジタル指紋と一致させるように試みることを含む、方法。
【請求項１６】
前記方法は、
前記クライアント装置のローカルデジタルメディア資産で、前記リモートデータレポジトリーに既に存在すると決定されないローカルデジタルメディア資産に対応する、前記クライアント装置からの要求されたデータのアップロードを受け取り、及び
前記アップロードされたデータを前記リモートデータレポジトリーのリモートデータストレージに追加する、
ことを含む、請求項１５に記載の方法。
【請求項１７】
前記決定は、
各ローカルデジタルメディア資産に対するクライアント装置のアートワークアイテムのハッシュ値を要求し、
前記要求されたハッシュ値のいずれかが前記リモートデータレポジトリーに既に維持されている既存のアートワークアイテムのハッシュ値に一致するかどうか決定し、及び
前記要求されたハッシュ値が、前記リモートデータレポジトリーに既に維持されている既存のアートワークアイテムの対応するハッシュ値に一致すると決定された場合には、各ローカルデジタルメディア資産に対するクライアント装置のアートワークアイテムのあるものが前記リモートデータレポジトリーに既に維持されていると結論する、
ことを含む、請求項１５に記載の方法。
【請求項１８】
各ローカルデジタルメディア資産として記憶されるデータは、更に、メタデータアイテムを更に含み、
前記決定は、各ローカルデジタルメディア資産に対するコンテンツアイテム、メタデータアイテム及びアートワークアイテムが前記リモートデータレポジトリーに既に存在するかどうか別々に決定し、そして
前記アップロードの要求は、前記リモートデータレポジトリー既に存在すると決定されない前記クライアント装置の１つ以上のメタデータアイテムのデータを前記クライアント装置からアップロードすることを要求する、請求項１５に記載の方法。
【請求項１９】
前記決定は、
各ローカルデジタルメディア資産に対するクライアント装置のアートワークアイテムのハッシュ値を要求し、
前記要求されたハッシュ値のいずれかが前記リモートデータレポジトリーに既に維持されている既存のアートワークアイテムのハッシュ値に一致するかどうか決定し、及び
前記要求されたハッシュ値が、前記リモートデータレポジトリーに既に維持されている既存のアートワークアイテムの対応するハッシュ値に一致すると決定された場合には、各ローカルデジタルメディア資産に対するクライアント装置のアートワークアイテムのあるものが前記リモートデータレポジトリーに既に維持されていると結論する、
ことを含む、請求項１８に記載の方法。
【請求項２０】
クライアント装置をリモートデータレポジトリーに関連付けるための少なくともコンピュータプログラムコードを記憶している非一時的コンピュータ読み取り可能な媒体において、
リモートデータストレージをなすリモートデータレポジトリーとの関連付けを求めるクライアント装置からのアクチベーション要求を受け取るためのコンピュータプログラムコードと；
クライアント装置におけるアートワークアイテムのハッシュ値を要求するためのコンピュータプログラムコードと；
要求されたハッシュ値のいずれかがリモートデータレポジトリーに既に維持されている既存のアートワークアイテムのハッシュ値に一致するかどうか決定するためのコンピュータプログラムコードと；
クライアント装置におけるアートワークアイテムのうち、リモートデータレポジトリーに既に維持されていると決定されたアートワークアイテムについてはアップロードを回避するためのコンピュータプログラムコードと；
クライアント装置に記憶された複数のコンテンツアイテムのいずれかがリモートデータレポジトリーに既に存在するかどうか決定するためのコンピュータプログラムコードであって、前記決定は、
第１に、コンテンツアイテムの識別子を、前記リモートデータレポジトリーに既に存在するリモートコンテンツアイテムの識別子と一致させるように試み、
第２に、コンテンツアイテムが識別子と一致しなかった場合には、コンテンツアイテムのハッシュ値を前記リモートデータレポジトリーに既に存在するリモートコンテンツアイテムのハッシュ値と一致させるように試み、
第３に、コンテンツアイテムが識別子ともハッシュ値とも一致しなかった場合には、コンテンツアイテムのデジタル指紋を前記リモートデータレポジトリーに既に存在するリモートコンテンツアイテムのデジタル指紋と一致させるように試みることを含む、コンピュータプログラムコードと；
リモートデータレポジトリーに既に存在すると決定されなかったクライアント装置に記憶されたコンテンツアイテムをアップロードすることを要求するためのコンピュータプログラムコードと；
前記クライアント装置からのコンテンツアイテムを受け取るためのコンピュータプログラムコードと；
前記クライアント装置から受信したコンテンツアイテムをリモートデータレポジトリーのリモートデータストレージに追加するためのコンピュータプログラムコードと；
を備えた非一時的コンピュータ読み取り可能な媒体。
【請求項２１】
クライアント装置をリモートデータレポジトリーに関連付けるための少なくともコンピュータプログラムコードを記憶している非一時的コンピュータ読み取り可能な媒体において、
複数のデジタルメディア資産のためのリモートデータストレージをなすリモートデータレポジトリーとの関連付けを求めるクライアント装置からのアクチベーション要求を受け取るためのコンピュータプログラムコードと、
クライアント装置に記憶されたローカルデジタルメディア資産がリモートデータレポジトリーに既に存在するかどうか決定するためのコンピュータプログラムコードと、
を備え、各ローカルデジタルメディア資産として記憶されるデータは、少なくとも、コンテンツアイテム及びアートワークアイテムを含み、そして前記決定のためのコンピュータプログラムコードは、各ローカルデジタルメディア資産のコンテンツアイテム及びアートワークアイテムがリモートデータレポジトリーに既に存在するかどうか別々に決定するものであり、そして
クライアント装置からデータのアップロードを要求するためのコンピュータプログラムコードを更に備え、そのアップロードが要求されるデータは、（ｉ）リモートデータレポジトリーに既に存在すると決定されないクライアント装置の１つ以上のコンテンツアイテム、及び（ii）リモートデータレポジトリーに既に存在すると決定されないクライアント装置の１つ以上のアートワークアイテムを含むものであり、
前記決定は、
第１に、各ローカルデジタルメディア資産のコンテンツアイテムの識別子を前記リモートデータレポジトリーに既に存在するリモートコンテンツアイテムの識別子と一致させるように試み、
第２に、コンテンツアイテムが識別子と一致しなかった場合には、コンテンツアイテムのハッシュ値を前記リモートデータレポジトリーに既に存在するリモートコンテンツアイテムのハッシュ値と一致させるように試み、
第３に、コンテンツアイテムが識別子ともハッシュ値とも一致しなかった場合には、コンテンツアイテムのデジタル指紋を前記リモートデータレポジトリーに既に存在するリモートコンテンツアイテムのデジタル指紋と一致させるように試みることを含む、
非一時的コンピュータ読み取り可能な媒体。
【請求項２２】
前記非一時的コンピュータ読み取り可能な媒体は、
前記クライアント装置のローカルデジタルメディア資産で、前記リモートデータレポジトリーに既に存在すると決定されないローカルデジタルメディア資産に対応する、前記クライアント装置からの要求されたデータのアップロードを受け取るためのコンピュータプログラムコードと、
前記アップロードされたデータを前記リモートデータレポジトリーのリモートデータストレージに追加するためのコンピュータプログラムコードと、
を含む、請求項２１に記載の非一時的コンピュータ読み取り可能な媒体。
【請求項２３】
前記決定は、
各ローカルデジタルメディア資産に対するクライアント装置のアートワークアイテムのハッシュ値を要求するためのコンピュータプログラムコードと、
前記要求されたハッシュ値のいずれかが前記リモートデータレポジトリーに既に維持されている既存のアートワークアイテムのハッシュ値に一致するかどうか決定するためのコンピュータプログラムコードと、
前記要求されたハッシュ値が、前記リモートデータレポジトリーに既に維持されている既存のアートワークアイテムの対応するハッシュ値に一致すると決定された場合には、各ローカルデジタルメディア資産に対するクライアント装置のアートワークアイテムのあるものが前記リモートデータレポジトリーに既に維持されていると結論するためのコンピュータプログラムコードと、
を含む、請求項２１に記載の非一時的コンピュータ読み取り可能な媒体。
【請求項２４】
各ローカルデジタルメディア資産として記憶されるデータは、更に、メタデータアイテムを更に含み、
前記決定するためのコンピュータプログラムコードは、各ローカルデジタルメディア資産に対するコンテンツアイテム、メタデータアイテム及びアートワークアイテムが前記リモートデータレポジトリーに既に存在するかどうか別々に決定し、そして
前記アップロードを要求するためのコンピュータプログラムコードは、前記リモートデータレポジトリー既に存在すると決定されない前記クライアント装置の１つ以上のメタデータアイテムのデータを前記クライアント装置からアップロードすることを要求するためのコンピュータプログラムコードを含む、請求項２１に記載の非一時的コンピュータ読み取り可能な媒体。
【請求項２５】
前記決定するためのコンピュータプログラムコードは、
各ローカルデジタルメディア資産に対するクライアント装置のアートワークアイテムのハッシュ値を要求するためのコンピュータプログラムコードと、
前記要求されたハッシュ値のいずれかが前記リモートデータレポジトリーに既に維持されている既存のアートワークアイテムのハッシュ値に一致するかどうか決定するためのコンピュータプログラムコードと、
前記要求されたハッシュ値が、前記リモートデータレポジトリーに既に維持されている既存のアートワークアイテムの対応するハッシュ値に一致すると決定された場合には、各ローカルデジタルメディア資産に対するクライアント装置のアートワークアイテムのあるものが前記リモートデータレポジトリーに既に維持されていると結論するためのコンピュータプログラムコードと、
を含む、請求項２４に記載の非一時的コンピュータ読み取り可能な媒体。
【請求項２６】
クライアント装置によりネットワークを経てアクセスできるネットワークベースのレポジトリーを与えるためのシステムにおいて、
複数のアカウントホルダのためのデジタルデータを記憶するように構成されて、許可されたクライアント装置によりネットワークを経てアクセスできるクラウドストレージと、
前記クラウドストレージに作動的に接続された少なくとも１つのクラウドサーバーと、を備え、前記少なくとも１つのクラウドサーバーは、
複数のデジタルメディア資産のためのリモートデータストレージをなすネットワークベースのレポジトリーとの関連付けを求めるクライアント装置からアクチベーション要求を受け取り、
クライアント装置に記憶されたローカルデジタルメディア資産がネットワークベースのデータレポジトリーに既に存在するかどうか決定し、各ローカルデジタルメディア資産として記憶されるデータは、少なくとも、コンテンツアイテム及びアートワークアイテムを含み、そして前記決定は、各ローカルデジタルメディア資産のコンテンツアイテム及びアートワークアイテムがネットワークベースのレポジトリーに既に存在するかどうか別々に決定するものであり、及び
クライアント装置からのデータのアップロードを要求し、アップロードが要求されるデータは、（ｉ）ネットワークベースのレポジトリーに既に存在すると決定されないクライアント装置上の１つ以上のコンテンツアイテム、及び（ii）ネットワークベースのレポジトリーに既に存在すると決定されないクライアント装置上の１つ以上のアートワークアイテムを含むものであり、
前記決定は、
第１に、各ローカルデジタルメディア資産のコンテンツアイテムの識別子を前記リモートデータレポジトリーに既に存在するリモートコンテンツアイテムの識別子と一致させるように試み、
第２に、コンテンツアイテムが識別子と一致しなかった場合には、コンテンツアイテムのハッシュ値を前記リモートデータレポジトリーに既に存在するリモートコンテンツアイテムのハッシュ値と一致させるように試み、
第３に、コンテンツアイテムが識別子ともハッシュ値とも一致しなかった場合には、コンテンツアイテムのデジタル指紋を前記リモートデータレポジトリーに既に存在するリモートコンテンツアイテムのデジタル指紋と一致させるように試みることを含むように構成された、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークベースのデジタルデータレポジトリーの管理に関する。
【背景技術】
【０００２】
近年、オンラインストア及びオンラインショッピングが益々普及してきている。オンラインストアから種々の商品やサービスを購入するためにデスクトップ及びラップトップコンピュータが使用されている。オンラインストアは、顧客が、インターネットへのネットワーク接続を経て、オンラインストアから種々の異なる品目をブラウズし、サーチし及び購入することができるようにする。購入した品目は、メールによって配布されるか、又は店舗や別の場所で入手することができる。
【０００３】
最近、デジタル資産（例えば、楽曲や、映画や、コンピュータアプリケーションプログラム）は、オンラインストアから購入できるようになった。更に、デジタル資産は、それを購入するのに使用した装置へ直接配布できるようになった。従って、今日、デジタル資産は、住居から電子装置（例えば、デスクトップコンピュータ）によりオンラインストアから購入し、そしてそのデジタル資産を取得するのに使用した電子装置へ直ちに配布することができる。換言すれば、電子装置によりデジタルストアからデジタル資産を購入した後に、そのデジタル資産を電子装置で「ダウンロード」し、その後にそこで使用することができる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、より最近になって、オンラインストアにアクセスできる電子装置の台数や種類が急激に増加した。今日、個人は、デスクトップコンピュータ、ラップトップコンピュータ、パッド又はタブレットコンピュータ（例えば、ｉＰａｄTM）、スマートホン、メディアプレーヤ、ゲーム機、テレビ、等を含めて、オンラインストアにアクセスできる多数の電子装置を所有し及び／又は動作することができる。それに加えて、メディア、書籍、アプリケーションプログラム、等を含めて、種々の電子装置のためにオンラインストアで入手できるデジタル資産の個数や形式も増加し続けている。その結果、電子装置へのデジタル資産の配布の管理は、ユーザ、特に多数の個別の電子装置に種々のデジタル資産の収集物を維持するユーザにとって、難題を課すものである。
【課題を解決するための手段】
【０００５】
デジタル資産を記憶し、配布し及び取得するための改善された技術及びシステムが開示される。この技術及びシステムは、オンラインストアから取得されたデジタル資産（例えば、メディア資産）を記憶し、配布し及びアクセスするのに適しており且つ有用である。又、この技術及びシステムは、オンラインストア以外から取得されたデジタル資産を記憶し、配布し及びアクセスするのにも適しており且つ有用である。それでも、デジタル資産は、ネットワークベースのデジタルデータレポジトリー（例えば、クラウドデータストレージ）から電子装置（例えば、ユーザ装置）を経てアクセスできるようになり、従って、電子装置により使用することができる。デジタル資産は、メディア資産及び／又は非メディア資産を含む。
【０００６】
本発明は、方法、システム、デバイス又は装置（コンピュータ読み取り可能な媒体を含む）多数の仕方で具現化することができる。本発明の多数の実施形態を以下に説明する。
【０００７】
クライアント装置をリモートデータレポジトリーに関連付ける方法として、１つの実施形態は、例えば、少なくとも：リモートデータストレージをなすリモートデータレポジトリーとの関連付けを求めるクライアント装置からアクチベーション要求を受け取り；クライアント装置に記憶されたローカル装置データのいずれかがリモートデータレポジトリーに既に存在するかどうか決定し；リモートデータレポジトリーに既に存在すると決定されなかったクライアント装置のローカル装置データのデータアイテムをアップロードすることを要求し；リモートデータレポジトリーに既に存在すると決定されなかったクライアント装置のローカル装置データのデータアイテムに対応するクライアント装置からのアップロードされたデータを受け取り；及びそのアップロードされたデータをリモートデータレポジトリーのリモートデータストレージに追加する；ことを含む。
【０００８】
クライアント装置をリモートデータレポジトリーに関連付けるためのコンピュータプログラムコードが少なくとも記憶された非一時的コンピュータ読み取り可能な媒体として、１つの実施形態は、例えば、少なくとも：リモートデータストレージをなすリモートデータレポジトリーとの関連付けを求めるクライアント装置からアクチベーション要求を受け取るためのコンピュータプログラムコードと；クライアント装置に記憶されたローカル装置データのいずれかがリモートデータレポジトリーに既に存在するかどうか決定するためのコンピュータプログラムコードと；リモートデータレポジトリーに既に存在すると決定されなかったクライアント装置のローカル装置データのデータアイテムをアップロードすることを要求するためのコンピュータプログラムコードと；リモートデータレポジトリーに既に存在すると決定されなかったクライアント装置のローカル装置データのデータアイテムに対応するクライアント装置からのアップロードされたデータを受け取るためのコンピュータプログラムコードと；そのアップロードされたデータをリモートデータレポジトリーのリモートデータストレージに追加するためのコンピュータプログラムコードと；を備えている。
【０００９】
ネットワークを経てクライアント装置によりアクセス可能なネットワークベースのレポジトリーを与えるシステムとして、１つの実施形態は、例えば、複数のアカウントホルダのためのデジタルデータを記憶するように構成された少なくともクラウドストレージであって、許可されたクライアント装置によりネットワークを経てアクセス可能なクラウドストレージと、そのクラウドストレージに作動的に接続された少なくとも１つのクラウドサーバーとを備えている。その少なくとも１つのクラウドサーバーは、ネットワークベースのレポジトリーとの関連付けを求めるクライアント装置からアクチベーション要求を受け取り；クライアント装置に記憶されたローカル装置データのいずれかがネットワークベースのレポジトリーのクラウドストレージに既に存在するかどうか決定し；ネットワークベースのレポジトリーのクラウドストレージに既に存在すると決定されなかったクライアント装置のローカル装置データのデータアイテムをアップロードすることを要求し；ネットワークベースのレポジトリーのクラウドストレージに既に存在すると決定されなかったクライアント装置のローカル装置データのデータアイテムに対応するクライアント装置からのアップロードされたデータを受け取り；及びそのアップロードされたデータをネットワークベースのレポジトリーのクラウドストレージに追加する；ように構成される。
【００１０】
デジタルデータアイテムがリモートデータレポジトリーに常駐する別のデジタルデータアイテムに一致するかどうか決定するための方法として、１つの実施形態は、例えば、少なくとも：第１に、ローカルデジタルデータアイテムの識別子を、リモートデータレポジトリーに既に記憶されているリモートデジタルデータアイテムの識別子と一致させるように試み；ローカルデジタルデータアイテムの識別子が１つのリモートデジタルデータアイテムの識別子と一致するときにローカルデジタルデータアイテムをリモートデジタルデータアイテムと同じであると考え；第２に、ローカルデジタルデータアイテムが、識別子で一致させる第１の試みによってまだ一致されていないとすれば、ローカルデジタルデータアイテムのハッシュ値を、リモートデータレポジトリーに既に記憶されているリモートデジタルデータアイテムのハッシュ値と一致させるように試み；ローカルデジタルデータアイテムの識別子が１つのリモートデジタルデータアイテムのハッシュ値と一致するときにローカルデジタルデータアイテムをリモートデジタルデータアイテムと同じであると考え；第３に、ローカルデータアイテムが、識別子で一致させる第１の試み又はハッシュ値で一致させる第２の試みによってまだ一致されていないとすれば、ローカルデジタルデータアイテムのデジタル指紋を、リモートデータレポジトリーに既に記憶されているリモートデジタルデータアイテムのデジタル指紋と一致させるように試み；及びローカルデジタルデータアイテムの識別子が１つのリモートデジタルデータアイテムのデジタル指紋と一致するときにローカルデジタルデータアイテムをリモートデジタルデータアイテムと同じであると考える；ことを含む。
【００１１】
デジタルデータアイテムがリモートデータレポジトリーに常駐する別のデジタルデータアイテムに一致するかどうか決定するための少なくともコンピュータプログラムコードが記憶された非一時的コンピュータ読み取り可能な媒体として、１つの実施形態は、例えば、少なくとも：第１に、ローカルデジタルデータアイテムの識別子を、リモートデータレポジトリーに既に記憶されているリモートデジタルデータアイテムの識別子と一致させるように試みるためのコンピュータプログラムコードと；ローカルデジタルデータアイテムの識別子が１つのリモートデジタルデータアイテムの識別子と一致するときにローカルデジタルデータアイテムをリモートデジタルデータアイテムと同じであると考えるためのコンピュータプログラムコードと；第２に、ローカルデジタルデータアイテムが、識別子で一致させる第１の試みによってまだ一致されていないとすれば、ローカルデジタルデータアイテムのハッシュ値を、リモートデータレポジトリーに既に記憶されているリモートデジタルデータアイテムのハッシュ値と一致させるように試みるためのコンピュータプログラムコードと；ローカルデジタルデータアイテムの識別子が１つのリモートデジタルデータアイテムのハッシュ値と一致するときにローカルデジタルデータアイテムをリモートデジタルデータアイテムと同じであると考えるためのコンピュータプログラムコードと；第３に、ローカルデータアイテムが、識別子で一致させる第１の試み又はハッシュ値で一致させる第２の試みによってまだ一致されていないとすれば、ローカルデジタルデータアイテムのデジタル指紋を、リモートデータレポジトリーに既に記憶されているリモートデジタルデータアイテムのデジタル指紋と一致させるように試みるためのコンピュータプログラムコードと；ローカルデジタルデータアイテムの識別子が１つのリモートデジタルデータアイテムのデジタル指紋と一致するときにローカルデジタルデータアイテムをリモートデジタルデータアイテムと同じであると考えるためのコンピュータプログラムコードと；を備えている。
【００１２】
クライアント装置をリモートデータレポジトリーに関連付ける方法として、１つの実施形態は、例えば、少なくとも：リモートデータストレージをなすリモートデータレポジトリーとの関連付けを求めるクライアント装置からアクチベーション要求を受け取り；クライアント装置におけるアートワークアイテムのハッシュ値を要求し；その要求されたハッシュ値のいずれかが、リモートデータレポジトリーに既に維持されている既存のアートワークアイテムのハッシュ値に一致するかどうか決定し；及びクライアント装置におけるアートワークアイテムのうち、リモートデータレポジトリーに既に維持されていると決定されたアートワークアイテムについてはアップロードを回避する；ことを含む。
【００１３】
クライアント装置をリモートデータレポジトリーに関連付ける方法として、別の実施形態は、例えば、少なくとも：リモートデータストレージをなすリモートデータレポジトリーとの関連付けを求めるクライアント装置からアクチベーション要求を受け取り；クライアント装置におけるアートワークアイテムのハッシュ値を要求し；その要求されたハッシュ値のいずれかが、リモートデータレポジトリーに既に維持されている既存のアートワークアイテムのハッシュ値に一致するかどうか決定し；及びクライアント装置におけるアートワークアイテムのうち、リモートデータレポジトリーに既に維持されていると決定されたアートワークアイテムについてはアップロードを回避する；ことを含む。
【００１４】
クライアント装置をリモートデータレポジトリーに関連付ける方法として、更に別の実施形態は、例えば、少なくとも：複数のデジタルメディア資産のためのリモートデータストレージをなすリモートデータレポジトリーとの関連付けを求めるクライアント装置からアクチベーション要求を受け取り；クライアント装置に記憶されたローカルデジタルメディア資産がリモートデータレポジトリーに既に存在するかどうか決定し、各ローカルデジタルメディア資産として記憶されるデータは、少なくとも、コンテンツアイテム及びアートワークアイテムを含み、そして前記決定は、各ローカルデジタルメディア資産のコンテンツアイテム及びアートワークアイテムがリモートデータレポジトリーに既に存在するかどうか別々に決定するものであり；及びクライアント装置からのデータのアップロードを要求し、アップロードが要求されるデータは、（ｉ）リモートデータレポジトリーに既に存在すると決定されないクライアント装置上の１つ以上のコンテンツアイテム、及び（ii）リモートデータレポジトリーに既に存在すると決定されないクライアント装置上の１つ以上のアートワークアイテムを含むものである。
【００１５】
クライアント装置をリモートデータレポジトリーに関連付けるためのコンピュータプログラムコードが少なくとも記憶された非一時的コンピュータ読み取り可能な媒体として、１つの実施形態は、例えば、少なくとも：リモートデータストレージをなすリモートデータレポジトリーとの関連付けを求めるクライアント装置からアクチベーション要求を受け取るためのコンピュータプログラムコードと；クライアント装置におけるアートワークアイテムのハッシュ値を要求するためのコンピュータプログラムコードと；要求されたハッシュ値のいずれかがリモートデータレポジトリーに既に維持されている既存のアートワークアイテムのハッシュ値に一致するかどうか決定するためのコンピュータプログラムコードと；クライアント装置におけるアートワークアイテムのうち、リモートデータレポジトリーに既に維持されていると決定されたアートワークアイテムについてはアップロードを回避するためのコンピュータプログラムコードと；を備えている。
【００１６】
クライアント装置をリモートデータレポジトリーに関連付けるためのコンピュータプログラムコードが少なくとも記憶された非一時的コンピュータ読み取り可能な媒体として、別の実施形態は、例えば、少なくとも：複数のデジタルメディア資産のためのリモートデータストレージをなすリモートデータレポジトリーとの関連付けを求めるクライアント装置からアクチベーション要求を受け取るためのコンピュータプログラムコードと、クライアント装置に記憶されたローカルデジタルメディア資産がリモートデータレポジトリーに既に存在するかどうか決定するためのコンピュータプログラムコードと、を備え、各ローカルデジタルメディア資産として記憶されるデータは、少なくとも、コンテンツアイテム及びアートワークアイテムを含み、そして前記決定のためのコンピュータプログラムコードは、各ローカルデジタルメディア資産のコンテンツアイテム及びアートワークアイテムがリモートデータレポジトリーに既に存在するかどうか別々に決定するものであり、そしてクライアント装置からデータのアップロードを要求するためのコンピュータプログラムコードを更に備え、そのアップロードが要求されるデータは、（ｉ）リモートデータレポジトリーに既に存在すると決定されないクライアント装置上の１つ以上のコンテンツアイテム、及び（ii）リモートデータレポジトリーに既に存在すると決定されないクライアント装置上の１つ以上のアートワークアイテムを含むものである。
【００１７】
クライアント装置によりネットワークを経てアクセスできるネットワークベースのレポジトリーを与えるためのシステムとして、１つの実施形態は、例えば、複数のアカウントホルダのためのデジタルデータを記憶するように構成された少なくともクラウドストレージ、及びそのクラウドストレージに作動的に接続された少なくとも１つのクラウドサーバーとを備えている。クラウドストレージは、許可されたクライアント装置によりネットワークを経てアクセスできる。その少なくとも１つのクラウドサーバーは、例えば、（ａ）複数のデジタルメディア資産のためのリモートデータストレージをなすネットワークベースのレポジトリーとの関連付けを求めるクライアント装置からアクチベーション要求を受け取り；（ｂ）クライアント装置に記憶されたローカルデジタルメディア資産がネットワークベースのデータレポジトリーに既に存在するかどうか決定し、各ローカルデジタルメディア資産として記憶されるデータは、少なくとも、コンテンツアイテム及びアートワークアイテムを含み、そして前記決定は、各ローカルデジタルメディア資産のコンテンツアイテム及びアートワークアイテムがネットワークベースのレポジトリーに既に存在するかどうか別々に決定するものであり；及び（ｃ）クライアント装置からのデータのアップロードを要求し、アップロードが要求されるデータは、（ｉ）ネットワークベースのレポジトリーに既に存在すると決定されないクライアント装置上の１つ以上のコンテンツアイテム、及び（ii）ネットワークベースのレポジトリーに既に存在すると決定されないクライアント装置上の１つ以上のアートワークアイテムを含むものである、ように構成される。
【００１８】
本発明の態様及び効果は、本発明の原理を一例として示す添付図面を参照した以下の詳細な説明から明らかとなろう。
【００１９】
本発明は、同じ構造要素を同じ参照番号で示した添付図面を参照した以下の詳細な説明から容易に理解されよう。
【図面の簡単な説明】
【００２０】
【図１】一実施形態によるネットワークベースのデータ管理システムのブロック図である。
【図２Ａ】一実施形態によるクラウドアクチベーションプロセスのフローチャートである。
【図２Ｂ】一実施形態によるクラウドアクチベーションプロセスのフローチャートである。
【図３】一実施形態によるデータ一致プロセスのフローチャートである。
【図４Ａ】一実施形態によるデータ一致プロセスのフローチャートである。
【図４Ｂ】一実施形態によるデータ一致プロセスのフローチャートである。
【図５】一実施形態によるアートワークアップロードプロセスのフローチャートである。
【図６Ａ】一実施形態による更新通知プロセスのフローチャートである。
【図６Ｂ】一実施形態による装置更新プロセスのフローチャートである。
【図７】一実施形態によるクラウドアクセス管理システムを示す。
【図８Ａ】一実施形態によるクラウドアクセスプロセスのフローチャートである。
【図８Ｂ】一実施形態によるクラウドアクセスプロセスのフローチャートである。
【発明を実施するための形態】
【００２１】
デジタル資産を記憶し、配布し及び取得するための改良された技術及びシステムが開示される。この技術及びシステムは、オンラインストアから取得されたデジタル資産（例えば、メディア資産）を記憶し、配布し及びアクセスするのに適しており且つ有用である。又、この技術及びシステムは、オンラインストア以外から取得されたデジタル資産を記憶し、配布し及びアクセスするのにも適しており且つ有用である。それでも、デジタル資産は、ネットワークベースのデジタルデータレポジトリー（例えば、クラウドデータストレージ）から電子装置（例えば、ユーザ装置）を経てアクセスできるようになり、従って、電子装置により使用することができる。デジタル資産は、メディア資産及び／又は非メディア資産を含む。
【００２２】
幾つかの実施形態の１つの態様は、クライアント装置を参加させるためのクラウドデータストレージを提供することに関する。クラウドデータストレージは、種々のユーザのためのデジタルデータを記憶することのできるネットワークベースのレポジトリーによって形成される。ここに使用するネットワークベースのレポジトリーとは、リモートデータレポジトリー又はクラウドデータレポジトリーとも称される。クラウドデータストレージに記憶されるデジタルデータは、インターネット（又はワールドワイドウェブ）のようなネットワークを経て各ユーザに利用できるようにされる。ユーザは、オンラインで購入したデジタル資産、他の非オンライン手段から取得したデジタル資産、及び／又はユーザの他のデジタルファイルを含む種々のデジタルデータをクラウドデータストレージに記憶することができる。クラウドデータストレージを経てデジタルデータにアクセスすることは、認証されたユーザに限定されると共に、ユーザ当たり制限された数の許可された装置（クライアント装置）に限定される。従って、所与のユーザが自分の許可されたクライアント装置からクラウドデータストレージにアクセスすることができる。
【００２３】
本発明の規範的な実施形態を、図１−８Ｂを参照して以下に説明する。しかしながら、当業者であれば、本発明は、これらの限定された実施形態を越えて拡張するので、図面を参照したここでの詳細な説明は、例示に過ぎないことが容易に明らかであろう。
【００２４】
図１は、一実施形態によるネットワークベースのデータ管理システム１００のブロック図である。ネットワークベースのデータ管理システム１００は、複数の異なるユーザに対するデータ管理を与える。種々のユーザは、ネットワークベースのデータ管理システム１００によりリモート記憶されたデータにアクセスするために１つ以上のクライアント装置を動作する。又、ネットワークベースのデータ管理システム１００は、特定ユーザに関連した複数のクライアント装置間のデータの同期も管理する。
【００２５】
ネットワークベースのデータ管理システム１００は、クラウドサーバー１０２を備えている。クラウドサーバー１０２は、クラウドストレージ１０４に結合される。クラウドストレージ１０４は、ネットワーク１０６に結合される大量のデジタルデータストレージをなす。クラウドストレージ１０４は、多数の異なるユーザに対するデジタルデータを記憶する。クラウドストレージ１０４は、多数の異なるユーザ間に共有されるが、所与のユーザに対して記憶されたデジタルデータは、その所与のユーザしかアクセスできない。クラウドサーバー１０２は、クラウドストレージ１０４によるデータストレージへの及びそこからのデータの記憶、アクセス及び配布を管理するように働く。又、クラウドストレージ１０４は、クラウドストレージ１０４を使用するユーザのためのデータの同期も容易にする。クラウドストレージ１０４は、ユーザに関連したクライアント装置により、クラウドサーバー１０２を経てアクセスすることができる。例えば、図１に示すように、クライアント装置１０８及びクライアント装置１１０は、ネットワーク１０６に結合され、クラウドストレージ１０４に記憶されたデータへのアクセスを得ることができる。クライアント装置１０８及び１１０は、コンピューティング装置のような電子装置を表わす。例えば、クライアント装置１０８は、コンピュータを表わし、一方、クライアント装置１１０は、移動電話を表わす。典型的に、クライアント装置１０８及び１１０は、ネットワーク１０６を経てクラウドサーバー１０２へのアクセスを容易にするアプリケーションプログラム（或いはユーティリティ又はオペレーティングシステムプログラム）を含む。ネットワーク１０６は、１つ以上のワイヤード又はワイヤレスネットワークより成る。クライアント装置１０８は、例えば、ワイヤード接続によりネットワーク１０６に接続され、そしてクライアント装置１１０は、例えば、ワイヤレス接続によりネットワーク１０６に接続される。
【００２６】
更に、クライアント装置１０８は、クライアント装置１０８にローカル記憶されるか又はクラウドストレージ１０４にリモート記憶されたデータのアクセス、プレゼンテーション及び利用を容易にするメディア管理アプリケーション１１２のようなアプリケーションプログラムを備えている。同様に、クライアント装置１１０も、クライアント装置１１０にローカル記憶されるか又はクラウドストレージ１０４にリモート記憶されたデータのアクセス、プレゼンテーション及び利用を容易にするメディア管理アプリケーション１１４のようなアプリケーションプログラムを備えている。
【００２７】
更に、ネットワークベースのデータ管理システム１００は、デジタルコンテンツストア１１６を備えている。デジタルコンテンツストア１１６は、デジタルコンテンツを購入し、レンタルし、さもなければ、取得するための電子商取引を容易にする。例えば、デジタルコンテンツストア１１６は、映画、曲、オーディオブック、アプリケーション、及び／又はゲームのようなデジタルコンテンツを購入、レンタル又は利用のためにオファーするデジタルメディアストアに関するものである。更に、クライアント装置１０８又は１１０のユーザがデジタルコンテンツストア１１６からデジタルメディアアイテムを購入する場合には、デジタルメディアアイテムをそれに対応するクライアント装置１０８又は１１０へダウンロードすると共に、クラウドストレージ１０４へもダウンロードすることができる。従って、クラウドストレージ１０４は、購入したデジタルメディアアイテム（又は少なくとも記憶されたコンテンツへのリンク）を記憶し、使用が許可されたユーザのクライアント装置が、ユーザに関連したクラウドストレージ１０４にアクセスして、購入したデジタルメディアアイテムへのアクセスを得ることができるようにする。このように、購入したデジタルメディアアイテムがクラウドストレージ１０４に直接追加され、従って、購入するクライアント装置からアップロードする必要はない。又、許可されたユーザの他のクライアント装置も、クラウドストレージ１０４から購入したデジタルメディアアイテムにアクセスすることができる（ダウンロードを含めて）。
【００２８】
図２Ａ−２Ｂは、一実施形態によるクラウドアクチベーションプロセス２００のフローチャートである。クラウドアクチベーションプロセス２００は、図１に示したクラウドサーバー１０２のようなコンピューティング装置によって遂行される。
【００２９】
クラウドアクチベーションプロセス２００は、クライアント装置からクラウドアクチベーション要求が受け取られたかどうか決定する判断２０２で開始される。クラウドアクチベーション要求がまだ受け取られていないことを判断２０２が決定すると、クラウドアクチベーションプロセス２００は、そのような要求を待機する。特定のクライアント装置からクラウドアクチベーション要求が受け取られたことを判断２０２が決定すると、特定のクライアント装置がアクチベーションに適格であるかどうか判断２０４で決定する。一実施形態において、クラウドアクチベーションは、所与のユーザに関連した限定された数のクライアント装置しか利用できない。一般的に、適格さは、アクチベーションの適格さについて数、形式及び／又はタイミングを支配する所定のルール又はポリシーによって確立される。
【００３０】
特定のクライアント装置がアクチベーションに適格でないことを判断２０４が決定すると、ユーザは、クラウドアクチベーションが特定のクライアント装置に利用できないことが通知される（２０６）。通知２０６に続いて、クラウドアクチベーションプロセス２００は、判断２０２及びその後のブロックを繰り返すように戻り、従って、必要に応じて、クラウドアクチベーションを監視し続けることができる。
【００３１】
他方、特定のクライアント装置がアクチベーションに適格であると判断２０４が決定すると、付加的なプロセスを遂行して、特定のクライアント装置から、クラウドデータレポジトリー（リモートデータレポジトリー）へのクラウドストレージ（例えば、クラウドストレージ１０４）へローカルデータをアップロードすることができる。しかしながら、ネットワーク帯域巾及びストレージを効率的に使用すると共に、エネルギー保存のために、クラウドストレージにおいて既に利用できないローカルデータの部分だけをアップロードするように処理が遂行される。特に、特定のクライアント装置がアクチベーションに適格であると判断２０４が決定すると、クラウドアクチベーションプロセス２００は、クラウドストレージにおいて既に利用できないローカル装置データを決定する（２０８）。
【００３２】
次いで、クラウドデータレポジトリーにおいて既に利用できないと決定されたローカル装置データのアップロードが要求される（２１０）。判断２１２は、要求されたローカル装置データが受け取られたかどうか決定する。ここで、クラウドアクチベーションプロセス２００は、特定のクライアント装置からアップロードすることが要求されたデータが受け取られたかどうか決定する。そのようなデータがまだ受け取られていないと判断２１２が決定すると、クラウドアクチベーションプロセス２００は、そのようなデータを待機する。アップロードすることが要求されたデータが受け取られたと判断２１２が決定すると、アップロードされたデータがクラウドデータレポジトリーに追加される（２１４）。アップロードされたデータがクラウドデータレポジトリーに追加された（２１４）後に、クラウドアクチベーションプロセス２００は、終了となる。クラウドアクチベーションプロセス２００の終了に続いて、特定のクライアント装置がクラウドストレージの使用のために実際にアクチベートされ、クライアント装置からのローカル装置データがクラウドデータレポジトリーから利用できるようにされ、従って、同じユーザの他のクライアント装置によりアクセスすることができる。
【００３３】
図３は、一実施形態によるデータ一致プロセス３００のフローチャートである。データ一致プロセス３００は、例えば、図２Ａに示したブロック２０８により遂行される処理を表わす。
【００３４】
データ一致プロセス３００は、アクチベートされている特定のクライアント装置に記憶されたローカル装置データからローカルデータアイテムを選択する（３０２）。判断３０４は、１つ以上の識別子の使用を通してその選択されたローカルデータアイテムに一致させることができるかどうか決定する。その選択されたローカルデータアイテムがどこから取得されたかに基づき、その選択されたローカルデータアイテムは、１つ以上の識別子を含む。それら１つ以上の識別子の使用を通して、クラウドサーバー１０２は、クラウドデータレポジトリー（例えば、クラウドストレージ１０４）が同じ厳密なデータアイテム（又はおそらく同じデータアイテムであるが、より質の高い）を既に記憶しているかどうか評価する。例えば、ローカルデータアイテムがオンラインストア（例えば、デジタルコンテンツストア１１６）から購入されそしてダウンロードされた場合に、そのローカルデータアイテムは、特に、クラウドサーバー１０２がオンラインストアと提携している場合、又はグローバルな識別子又は標準的な識別子が使用される場合に、クラウドサーバー１０２に知られている１つ以上の識別子を含むか又はそれに関連付けされる。識別子は、典型的に、クラウドサーバー１０２のようなコンピューティング装置により集中的に指定される数値又はアルファニューメリック値である。一実施形態では、識別子は、ユーザクラウドストレージスペースに関連付けされる。別の実施形態では、識別子は、複数の又は全てのユーザにわたってグローバルに指定される。
【００３５】
１つ以上の識別子によりその選択されたローカルデータアイテムに一致させることができなかった場合には、判断３０６は、ハッシュ値によりその選択されたローカルデータアイテムに一致させることができるかどうか決定する。ここで、その選択されたローカルデータアイテムは、クラウドデータレポジトリーに既に記憶されたデータアイテムのハッシュ値とクラウドサーバー１０２により比較できるハッシュ値として表わされる。
【００３６】
ハッシュ値によりその選択されたローカルデータアイテムに一致させることができなかった場合には、判断３０８は、指紋によりその選択されたローカルデータアイテムに一致させることができるかどうか決定する。指紋は、所定のアルゴリズムによって形成され、データアイテムの推定独特の電子指紋を表わす。このケースでは、選択されたローカルデータアイテムをクライアント装置で処理して指紋を形成することができる。次いで、指紋は、クラウドサーバー１０２へ送られ、クラウドサーバーは、クライアント装置で形成された指紋が、クラウドデータレポジトリーに既に記憶されているデータアイテムの指紋に一致するかどうか評価する。
【００３７】
１つ以上の識別子、ハッシュ値又は指紋のいずれかにより、その選択されたローカルデータアイテムに一致させることができる場合には、その選択されたローカルデータアイテムが、アップロードされたデータなしに（即ち、コンテンツのアップロードなしに）クラウドデータレポジトリーに追加される（３１０）。このケースでは、選択されたローカルデータアイテムは、クラウドデータレポジトリーに既に常駐する既存のデータアイテムとの一致が取られるので、ローカルデータアイテムを、クラウドデータレポジトリーに既に存在するデータアイテムに関連付けるときに、そのようなデータアイテムのアップロードが不要となる。その結果、データアイテムを送信し記憶するために消費されるネットワークリソース及びエネルギーを保存することができる。
【００３８】
指紋によりその選択されたローカルデータアイテムに一致させることができないと判断３０８で決定されたとき、及びブロック３１０に続いて、一致が取られるときには、処理されるべきローカルデータアイテムが更にあるかどうか判断３１２で決定される。処理されるべきローカルデータアイテムが更にあると判断３１２で決定されると、データ一致プロセス３００は、ブロック３０２を繰り返すために戻り、別のローカルデータアイテムが選択されて同様に処理される。処理されるべきローカルデータアイテムがそれ以上ないと判断３１２で決定されると、データ一致プロセス３００は、終了となる。
【００３９】
図４Ａ−４Ｂは、一実施形態によるデータ一致プロセス４００のフローチャートである。データ一致プロセス４００は、例えば、図３に示されたデータ一致プロセス３００より詳細なプロセスを表わす。
【００４０】
データ一致プロセス４００は、ローカル装置データの記述情報を受け取る（４０２）。この記述情報は、ローカル装置データの特性又は属性を記述するように働く。例えば、記述情報は、ローカル装置データ内の種々の装置データアイテムに対する１つ以上の識別子としてメタデータも含む。メタデータは、それに対応するデータアイテムを記述する。例えば、デジタルメディア資産として、メタデータは、タイトル、アーチスト、ジャンル、ユーザ格付け、等の属性を指定する。又、メタデータは、ビットレート、エンコーディング、期間、等の特性も指定する。所与のデジタルアイテムに対して独特なものとなるように１つ以上の識別子が典型的に指定される。例えば、オンラインストア（例えば、デジタルコンテンツストア１６）は、取得のためにユーザにオファーされるデジタルオンラインストアアイテムの各々に独特の識別子を指定する。
【００４１】
次いで、判断４０４は、ローカルデータアイテムのいずれかがオンラインストアアイテムに一致するかどうか決定する。ここで、記述情報に設けられた１つ以上の識別子を使用して、オンラインストアで入手できるオンラインストアアイテムに関連した識別子と比較を行う。一致があることを判断４０４が決定すると、その一致は、ローカルデータアイテムがオンラインストアから取得されたものであり、従って、一致識別子を有することを指示する。この場合には、１つ以上の一致したアイテムが、１つ以上の対応するオンラインストアアイテムへの関連性によりクラウドデータレポジトリーに追加される（４０６）。
【００４２】
或いは又、ローカルデータアイテムがいずれもオンラインストアアイテムに一致しないことが判断４０４で決定されると、又は１つ以上の一致がある場合にはブロック４０６に続いて、残りのローカルデータアイテムのハッシュ値が要求される（４０８）。ここで、データ一致プロセス４００を遂行するコンピューティング装置（例えば、クラウドサーバー１０２）は、アクチベートされている特定のクライアント装置からハッシュ値を要求する。次いで、判断４１０は、要求されたハッシュ値が受け取られたかどうか決定する。要求されたハッシュ値がまだ受け取られていないことが判断４１０で決定されると、データ一致プロセス４００は、要求されたハッシュ値を待機する。
【００４３】
要求されたハッシュ値が受け取られたことが判断４１０で決定されると、判断４１２は、いずれかのハッシュ値がリモートクラウドデータアイテムのハッシュ値に一致するかどうか決定する。ここで、ハッシュ値は、所与のローカルデータアイテムを含むか又はそれに関連した電子ファイルから計算されたデジタル識別子に関するものである。従って、ハッシュ値を使用して、同一の電子ファイルを識別することができる。例えば、使用するハッシュ値は、ＭＤ５ハッシュアルゴリズムを使用して得られる。ローカルデータアイテムの１つ以上のハッシュ値が、リモートクラウドデータアイテムの１つ以上のハッシュ値に一致することが判断４１２で決定されると、１つ以上の対応するローカルデータアイテムは、クラウドストレージに既に設けられたリモートクラウドデータアイテムに各々一致するものとして識別される。従って、この場合には、１つ以上の一致アイテムは、１つ以上の対応するリモートクラウドデータアイテムへの関連付けによりクラウドデータレポジトリーに追加される（４１４）。
【００４４】
更に、リモートクラウドデータアイテムのハッシュ値に一致するハッシュ値がないときには判断４１２に続いて、或いは一致するアイテムがあるときにはブロック４１４に続いて、データ一致プロセス４００は、残りのローカルデータアイテムのいずれかに対して指紋データを要求する。次いで、判断４１８は、要求された指紋データが受け取られたかどうか決定する。要求された指紋データが受け取られなかったことが判断４１８で決定されると、データ一致プロセス４００は、そのようなデータを待機する。
【００４５】
要求された指紋データが受け取られたことが判断４１８で決定されると、判断４２０は、残りのローカルデータアイテムの指紋データのいずれかが、クラウドデータレポジトリーに既に常駐するリモートクラウドデータアイテムの指紋データに一致するかどうか決定する。１つ以上の残りのローカルデータアイテムの指紋データが、１つ以上の対応するリモートクラウドデータアイテムの指紋データに一致することが判断４２０で決定されると、１つ以上の一致するアイテムがそれに対応するリモートクラウドデータアイテムへの関連付けによりクラウドデータレポジトリーに追加される（４４２）。指紋が一致しないときには判断４２０に続いて、又は指紋が一致するときにはブロック４４２に続いて、データ一致プロセス４００は、終了となる。
【００４６】
図４Ａ及び４Ｂに示したデータ一致プロセス４００の実施形態では、クラウドデータレポジトリーにおいて既に利用できるデータに対して一致をとるために３つの異なる方法がある。第１の一致テストは、識別子（例えば、指定の識別子）を使用し、第２の一致テストは、ハッシュ値を使用し、そして第３の一致テストは、指紋を使用する。これら一連の一致テストのいずれかを使用して一致が識別される場合には、ローカル装置データからの対応するデータアイテムをクラウドデータレポジトリーにコピーする必要はない。というのは、そのようなデータがクラウドデータレポジトリーに既に常駐するからである。いずれにせよローカル装置データ内のローカルデータアイテムの１つ以上に一致できない場合には、ローカルデータアイテムをクラウドデータレポジトリーにアップロードすることができる（例えば、図２Ｂ、ブロック２１４）。
【００４７】
又、データ一致プロセス４００は、３つの全ての一致段階が一般的に利用されると仮定していることに注意されたい。しかしながら、全てのローカルデータアイテムが既に一致された場合には、付加的な一致処理が必要とされないことが認識される。換言すれば、オンラインストアアイテム又はクラウドデータアイテムのハッシュ値との一致を使用することにより全てのローカルデータアイテムが一致された場合には、その一致を識別するために指紋データを要求しそして評価する必要がない。
【００４８】
図４Ａ及び４Ｂに示されたデータ一致プロセス４００は、例えば、メディアコンテンツのようなローカル装置データを一致させるのに良く適している。メディアコンテンツは、例えば、曲、ビデオ、オーディオブック、音楽ビデオ、ポッドキャストを含む。しかしながら、一実施形態では、メディアコンテンツが関連アートワークを含む場合に、アートワークのための一致及びアップロード処理を別々に行うことができる。メディアコンテンツ（例えば、曲）のユーザは、その関連アートワークをカスタマイズすることが許されるので、所与のメディアコンテンツのアートワークは、ユーザ独立となる。従って、メディアコンテンツのアートワークの個別の処理は、メディアコンテンツのアートワークのユーザカスタマイズをサポートする能力を維持することができる。
【００４９】
図５は、一実施形態によるアートワークアップロードプロセス５００のフローチャートである。アートワークアップロードプロセス５００は、アクチベートされている特定のクライアント装置に与えられたメディアコンテンツにより使用されるアートワークを別々にアップロードするように動作する。又、アートワークアップロードプロセス５００は、クラウドデータレポジトリーにアートワークが既に存在するかどうかを最初にチェックすることにより、クラウドデータレポジトリーにアップロードする必要のあるデータの量を減少することができる。
【００５０】
アートワークアップロードプロセス５００は、クライアント装置におけるアートワークアイテムのハッシュ値を要求する（５０２）。典型的に、クライアント装置には、複数のメディアコンテンツファイル及びそれらの関連アートワークアイテムが記憶されている。アートワークアイテムのハッシュ値は、クライアント装置において計算され、そしてクラウドサーバー１０２のようなリモートサーバーコンピュータへ送られ、これがアートワークアップロードプロセス５００を遂行する。ハッシュ値が要求された（５０２）後に、判断５０４は、要求されたハッシュ値が受け取られたかどうか決定する。ハッシュ値が受け取られていないことを判断５０４が決定すると、アートワークアップロードプロセス５００は、要求されたハッシュ値の受け取りを待機する。
【００５１】
アートワークアイテムのハッシュ値が受け取られたことが判断５０４で決定されると、判断５０６は、クライアント装置におけるアートワークアイテムのハッシュ値のいずれかが、クラウドデータレポジトリーに既に設けられた既存のアートワークのハッシュ値のいずれかに一致するかどうか決定する。１つ以上の一致するハッシュ値があることが判断５０６で決定されると、一致するアートワークアイテム（一致するハッシュ値に関連した）が、それに対応する既存のアートワークへの関連付けによりクラウドデータレポジトリーに追加される（５０８）。
【００５２】
他方、一致するハッシュ値がないことが判断５０６で決定されると、アートワークアイテムがクラウドデータレポジトリーへアップロードされる（５１０）。又、ブロック５０８に続いて、残りのアートワークアイテムがクラウドデータレポジトリーアップロードされる（５１０）。残りのアートワークアイテムとは、クラウドデータレポジトリーの既存のアートワークに一致することが見つからなかったクライアント装置上のアートワークアイテムである。クライアント装置上のアートワークアイテムの全てのハッシュ値がクラウドデータレポジトリーの既存のアートワークに一致するときは、クライアント装置からクラウドデータレポジトリーへアートワークアイテムをアップロードする（５１０）必要がない。クライアント装置からクラウドデータレポジトリーへアートワークアイテムが全部又は幾つかアップロードされるか或いは全くアップロードされないのに続いて、アップロード（５１０）されたアートワークアイテムは、クラウドデータレポジトリーの対応するコンテンツに関連付けされる（５１２）。アートワークアイテムがクラウドデータレポジトリーの対応するコンテンツに関連付け（５１２）された後に、アートワークアップロードプロセス５００は、終了となる。
【００５３】
幾つかの実施形態の別の観点は、ローカルデータアイテムをクラウドデータアイテムに一致させることで、ユーザデータをクオリティの高いデータアイテムへ容易にアップグレードもできることである。例えば、ローカルデータアイテムが既存のクラウドデータアイテムに一致すると決定された場合には、ローカルデータアイテム（又は少なくともそのコンテンツ）をクラウドデータレポジトリーへアップロードする必要はない。更に、あるケースでは、ローカルデータアイテムに一致すると思われる既存のクラウドデータアイテムが、より高いクオリティ（例えば、より高いエンコーディング、高い鮮明度、より高い解像度、等）を有する。そのようなケースでは、ユーザのクラウドデータレポジトリーのクラウドデータは、クオリティの高い既存のクラウドアイテムを参照し利用する。実際に、ユーザのデータは、クラウドストレージに参加するときに、より高いクオリティにアップグレードすることができる。
【００５４】
幾つかの実施形態の別の観点は、コンパクトディスク（ＣＤ）に常駐するデータアイテムで一致処理を直接遂行することである。ユーザは、曲に関するオーディオトラックのような１つ以上のデジタルメディア資産を含むＣＤを得ることができる。従来、ユーザは、メディア管理アプリケーションを実行するコンピュータにＣＤを挿入し、次いで、インポート動作を開始して、ＣＤから全てのオーディオトラックをクライアント装置（例えば、コンピュータ）の電子ストレージへインポートし、メディア管理アプリケーションで管理する。このインポート動作は、リッピングとしても知られているが、やや時間を食うものである。更に、ＣＤからクライアント装置のローカルデータアイテムにこれらのオーディオトラックを追加することで、依然、それらをクラウドデータレポジトリーに与えない。従って、クライアント装置がクラウドストレージに関与する場合には、クラウドストレージに既にある既存のリソースとの一致をとり又はクラウドストレージへアップロードするために、ローカルデータストレージ内のオーディオトラックを更に処理しなければならない。従って、メディア管理アプリケーションは、ＣＤをインポート又はリッピングして、ＣＤからオーディオトラックを取得する必要性を回避することができる。むしろ、クライアント装置（例えば、メディア管理アプリケーション）は、ＣＤから識別情報を取得し、次いで、その情報をクラウドサーバーへ送信することができる。次いで、クラウドサーバーは、一致プロセスを遂行して、クラウドストレージがＣＤからのオーディオトラックを既に有しているかどうか決定するように動作する。もしそうであれば、クラウドサーバーは、既存のオーディオトラックと単に関連付けるだけで、ユーザのクラウドストレージのオーディオトラック部分を形成することができる。好都合にも、そのような処理は、クライアント装置におけるインポート又はリッピングの必要性を回避する一方、ハッシュ及び／又は指紋動作等を遂行して他の形式の一致チェックを遂行する必要性も回避する。換言すれば、図３に示す判断３０４と同様に、ＣＤに対するデータ一致プロセスは、ＣＤに関連した識別子を使用する。その識別子は、ＣＤの独特の数値識別子であるか、又はＣＤ内のデータアイテムの特性を含むものである。クラウドサーバーがＣＤに一致すると、ＣＤのオーディオトラックは、ユーザのクラウドストレージに追加され（コンテンツデータをアップロードせずに）、その後、ユーザのクライアント装置のいずれかによってアクセスもされる。
【００５５】
幾つかの実施形態の別の観点は、複数のクライアント装置のユーザ間に同期を与えると共に、クラウドデータレポジトリーに常駐するユーザのコンテンツの同期を与えることである。この同期は、異なるクライアント装置とクラウドデータレポジトリーとの間のデータを同期させるように働く。一実施形態による具現化では、プッシュ通知又はプル通知のような通知を使用して、そのデータに関して生じた変化又は更新を他の装置に通知することができる。例えば、新たなデータがクライアント装置に追加された場合には、更新通知プロセスが、クライアント装置に生じた特定の更新を適当なクラウドサーバー（例えば、クラウドサーバー１０２）に通知するように働く。次いで、クラウドサーバーは、クラウドデータレポジトリーを同様に更新させる。又、クラウドサーバーは、同じ登録ユーザに関連した他のクライアント装置にも更新を通知するように働く。
【００５６】
図６Ａは、一実施形態による更新通知プロセス６００のフローチャートである。更新通知プロセス６００は、例えば、クラウドサーバー（例えば、クラウドサーバー１０２）のようなサーバーコンピュータにより遂行される処理である。
【００５７】
更新通知プロセス６００は、更新通知が受け取られたかどうか決定する判断６０２で始まる。ここで、更新通知は、クライアント装置により送信され、そしてクラウドサーバーにより受信される。更新通知が受け取られていないことが判断６０２で決定されると、更新通知プロセス６００は、そのような通知を待機する。更新通知が受け取られたことが判断６０２で決定されると、更新通知に示された更新を使用して、ユーザに関連したクラウドデータレポジトリーを更新する。特に、ユーザのクラウドデータが更新通知に基づいて更新される（６０４）。又、新たな改訂値が、更新されたユーザのクラウドデータに指定される（６０６）。例えば、ユーザのクラウドデータは、ライブラリと称され、ライブラリが更新されるたびに（例えば、通知、等により）、新たなバージョン値が指定される。
【００５８】
次いで、判断６０８は、他のユーザ装置に通知するかどうか決定する。ここで、クライアント装置（例えば、通知を開始したクライアント装置）のユーザが他のユーザ装置を有していると仮定すれば、判断６０８は、他のユーザ装置（例えば、クライアント装置）に更新を通知すべきかどうか決定する。１つ以上の他のユーザ装置に通知すべきであることが判断６０８で決定されると、他の１つ以上のユーザ装置の各々に更新通知が送信される（６１０）。或いは又、通知すべき他のユーザ装置がないことが判断６０８で決定されると、ブロック６１０がバイパスされる。ブロック６１０に続いて、又はそれをバイパスして、更新通知プロセス６００は、終了となる。
【００５９】
図６Ｂは、一実施形態による装置更新プロセス６２０のフローチャートである。装置更新プロセス６２０は、例えば、クライアント装置によって遂行される。
【００６０】
装置更新プロセス６２０は、更新をチェックすべきかどうか決定する判断６２２で始まる。例えば、装置更新プロセス６２０を遂行するクライアント装置は、周期的に、クラウドサーバーへのログイン時に、ユーザ開始要求時に、又は他の構成された理由で、更新をチェックする。更新をチェックする必要が現在ないと判断６２２で決定されると、判断６２２は、装置更新プロセス６２０が更新をチェックする必要を待機するようにさせる。他方、更新をチェックすべきであることが判断６２２で決定されると、更新要求がクラウドサーバーへ送られる（６２４）。次いで、判断６２６は、更新応答がクラウドサーバーから受け取られたかどうか決定する。ここで、更新要求は、ローカル装置データの現在状態が与えられると、クライアント装置の更新があるかどうかクラウドサーバーに尋ねる。例えば、更新要求は、クライアント装置に常駐するライブラリの特定バージョン（ローカル装置データ）をクラウドサーバーに与える。次いで、クラウドサーバーは、クライアント装置に常駐するライブラリの特定バージョンを、その最も現在の状態へ持って行くことが要求される特定の更新を識別する。従って、更新応答は、クライアント装置がそれ自身を最新状態へ持って行くのに必要な情報を含む。この点に関して、更新応答がまだ受け取られていないことが判断６２６で決定されると、装置更新プロセス６２０は、そのような応答を待機する。しかしながら、更新応答が受け取られたと判断６２６で決定されると、更新応答に与えられるか又はそこから導出された更新データが、クライアント装置において既存のローカルデータ（ローカル装置データ）と合流される（６２８）。更新データが既存のローカルデータと合流されて（６２８）、ローカルデータが更新された後に、装置更新プロセス６２０は、終了となる。
【００６１】
幾つかの実施形態の別の観点は、クライアント装置にグラフィックユーザインターフェイスを表示できることである。グラフィックユーザインターフェイスは、クライアント装置のユーザがクラウドサーバーを経てクラウドストレージ（例えば、クラウドデータレポジトリー又はリモートデータレポジトリー）と相互作用できるようにする。１つの実施形態において、グラフィックユーザインターフェイスは、ユーザのクラウドストレージ内のデジタル資産のビューを提示することができる。例えば、クライアント装置のディスプレイに提示されたときに、そのビューは、クライアント装置のローカルストレージにおいてローカルに利用できるデジタル資産が、ユーザのクラウドストレージから利用できる他のデジタル資産と視覚的に区別されるが、そのコンテンツはローカルに記憶されない一体型のビューである。更に、ユーザのクラウドストレージから利用できる他のデジタル資産に対して、グラフィックユーザインターフェイスは、ユーザのクラウドストレージからクライアント装置のローカルストレージへ１つ以上のデジタル資産をダウンロードするための要求を開始するユーザ選択可能なコントロールを与えることができる。又、グラフィックユーザインターフェイスは、クライアント装置にローカルに記憶されたデジタル資産をユーザが削除できるようにもする（ユーザのクラウドストレージから削除されたりされなかったりして）。
【００６２】
幾つかの実施形態の１つの態様は、クラウドデータストレージへのアクセスを管理することに関する。クラウドデータストレージは、種々のユーザのデジタルデータを記憶することのできるクラウドデータレポジトリーによって形成される。クラウドデータストレージに記憶されるデジタルデータは、インターネット（又はワールドワイドウェブ）のようなネットワークを経て各ユーザに利用できるようにされる。ユーザは、オンラインで購入したデジタル資産、他の非オンライン手段から取得したデジタル資産、又はユーザの他のデジタルファイルを記憶することができる。クラウドデータストレージを経てのデジタルデータへのアクセスは、認証されたユーザに限定されると共に、ユーザ当たり制限された数の許可された装置に限定される。
【００６３】
図７は、一実施形態によるクラウドアクセス管理システム７００を示す。クラウドアクセス管理システム７００は、特定のユーザが特定のクライアント装置の使用を通してクラウドデータレポジトリーにアクセスできるかどうか決定する。その際に、クラウドアクセス管理システム７００は、ユーザにクラウドデータレポジトリーへのアクセスが許されるかどうかの管理に種々の異なる状態を使用することができる。
【００６４】
クラウドアクセス管理システム７００は、最初、クラウドデータレポジトリーにアクセスするためのユーザによる要求を受け取る（７０２）。クラウドデータレポジトリーは、多数の異なるユーザのためのクラウドデータストレージをサポートするので、所与のユーザには、クラウドデータレポジトリーにおいてそれ自身のデータストレージが割り当てられる。又、クラウドデータレポジトリーにアクセスするための要求７０２は、ユーザにより特定のクライアント装置を経て開始される。クラウドデータレポジトリーへのアクセス及びそれとの相互作用を容易にするために、データ管理アプリケーションは、ユーザにより使用されている特定のクライアント装置において動作される。ユーザは、典型的に、データ管理アプリケーションに対する登録ユーザであり、従って、データ管理アプリケーションがユーザを認識するように「サインイン(sign in)」することができる。例えば、データ管理アプリケーションに「サインイン」するためにユーザによりユーザ名及びパスワードが与えられる。１つの実施形態において、データ管理アプリケーションは、メディア管理アプリケーションである。
【００６５】
状態７０４において、クラウドアクセス管理システム７００は、ユーザがデータ管理アプリケーションにサインインしたかどうか評価することができる。ユーザがサインインした場合には、クラウドアクセス管理システム７００は、状態７０６へ進み、そこで、ユーザにより使用されている特定のクライアント装置がユーザに指定されたかどうか決定される。この実施形態では、所与のユーザは、せいぜい所定の限定数のクライアント装置（例えば、電子装置）のみからクラウドデータレポジトリーを使用することが許される。従って、状態７０６では、ユーザにより使用されている特定のクライアント装置がクラウドアクセス管理システム７００によりユーザに指定されたかどうか決定される。
【００６６】
状態７０６において、特定の装置がユーザに指定されたと決定されると、クラウドアクセス管理システム７００は、状態７０８へ進み、その特定のクライアント装置の使用によりクラウドアクセスがユーザに利用できるようになる。他方、状態７０６において、ユーザにより使用されている特定のクライアント装置がユーザに指定されなかったと決定されると、クラウドアクセス管理システム７００は、状態７１０へ進み、そこで、ユーザは、おそらく、ユーザへの特定のクライアント装置の指定を確立することができる。
【００６７】
状態７１０において、ユーザが、このとき、特定のクライアント装置をユーザに指定することを望まない場合に、クラウドアクセス管理システム７００は、状態７１２へ進み、従って、特定のクライアント装置を経てのクラウドアクセスは、ユーザに対して利用不可との結論になる。換言すれば、ユーザは、特定のクライアント装置の使用によりクラウドデータレポジトリーにアクセスすることが許されない。更に、クラウドアクセス管理システム７００は、ユーザがデータ管理アプリケーションにサインインしていない場合には、状態７０４から状態７１２へ直接進行し、従って、この状態でもクラウドデータレポジトリーへのアクセスが拒絶される。
【００６８】
他方、状態７１０において、クラウドデータレポジトリーへのアクセスが特定のクライアント装置を経て許されるように、ユーザが特定の装置をユーザに指定することを希望する場合には、クラウドアクセス管理システム７００は、ステップ７１４へ進む。ステップ７１４において、特定のクライアント装置の指定が現在阻止されるかどうか決定される。ここで、１つの実施形態において、クライアント装置は、それが所定の期間内に既に指定されている場合には、指定が制限され又は阻止される。例えば、クライアント装置が９０日の期間内に一度しか指定できないように、全てのクライアント装置に対し９０日の阻止期間が確立される。いずれにせよ、特定のクライアント装置が阻止された場合には、クラウドアクセス管理システム７００は、状態７１２へ進み、特定の装置を経てのクラウドデータレポジトリーへのクラウドアクセスがユーザに対して利用不可とされる。
【００６９】
或いは又、ステップ７１４において、特定の装置が阻止されないと決定された場合には、クラウドアクセス管理システム７００は、状態７１６へ進み、ここで、特定のクライアント装置に対してスロットが利用可能であるかどうか決定される。ここで、所与のユーザは、クライアント装置に指定できる所定の限定された数の利用可能なスロットを有することを理解されたい。状態７１６において、ユーザにより現在使用されている特定のクライアント装置に指定できる利用可能なスロットがあるかどうか決定される。状態７１６において、利用可能なスロットがないと決定されると、クラウドアクセス管理システム７００は、状態７１２へ進み、クラウドデータレポジトリーへのクラウドアクセスが利用不能となる。他方、状態７１６において、利用可能なスロットがあると決定されると、クラウドアクセス管理システム７００は、状態７１８へ進み、そこで、特定のクライアント装置が利用可能なスロットに指定される。特定のクライアント装置が利用可能なスロットに指定された後に、クラウドアクセス管理システム７００は、状態７０８へ進み、ここで、特定のクライアント装置を使用するユーザによる、利用可能なクラウドデータレポジトリーへのクラウドアクセスが許される。
【００７０】
図８Ａ及び８Ｂは、一実施形態によるクラウドアクセスプロセス８００のフローチャートである。クラウドアクセスプロセス８００は、クラウドデータレポジトリーへのアクセス又はその使用を管理するサーバーコンピュータのようなクライアント装置によって遂行される。
【００７１】
クラウドアクセスプロセス８００は、特定のクライアント装置のユーザがクラウドデータレポジトリーマネージャーに「サインイン」したかどうか決定する判断８０２で始まる。「サインイン」とは、例えば、ユーザが以前に確立されたユーザアカウントにユーザ名及び／又はパスワードでログインすることである。ユーザがまだサインインしていないことが判断８０２で決定されると、ユーザは、クラウドデータレポジトリーへのアクセスを得ることができない。従って、ユーザのクラウドリソースは、利用不能とされる（８０４）。ブロック８０４に続いて、クラウドアクセスプロセス８００は、判断８０２及び後続ブロックを繰り返すために戻り、クラウドデータレポジトリーへのアクセスのためのユーザ状態及び装置状態の監視を続けることができる。
【００７２】
他方、ユーザが「サインイン」したことが判断８０２で決定されると、判断８０６は、特定のクライアント装置がユーザに指定されたかどうか決定する。特定のクライアント装置がユーザに既に指定されたことが判断８０６で決定されると、ユーザのクラウドリソースは、特定のクライアント装置を経てユーザに利用可能とされる（８０８）。ブロック８０８に続いて、クラウドアクセスプロセス８００は、判断８０２及び後続ブロックを繰り返すために戻り、クラウドデータレポジトリーへのアクセスのためのユーザ状態及び装置状態の監視を続けることができる。
【００７３】
或いは又、特定のクライアント装置がユーザに指定されていないことが判断８０６で決定されると、ユーザのクラウドリソースは、利用不能とされる（８１０）。しかしながら、ユーザがサインインしているので、クラウドアクセスプロセス８００は、ユーザが他の非クラウドサービスを利用するのを許す。例えば、図８Ａに示すように、再ダウンロードをユーザに（特定のクライアント装置にも）利用できるようにする（８１２）。ここで、ユーザは、クラウドデータレポジトリーにアクセスすることが許されるが、ユーザは、ユーザが以前に取得したデジタルデータの再ダウンロードを受け取る資格がある。再ダウンロードの利用は、オンラインデジタル資産ストア（例えば、クラウドデータレポジトリーと提携したオンラインデジタル資産ストア）から以前に購入したデジタル資産に限定される。
【００７４】
次いで、判断８１４は、特定のクライアント装置をユーザに指定すべきかどうか決定する。このときに特定のクライアント装置を指定しないことが判断８１４で決定されると、クラウドアクセスプロセス８００は、判断８０２を繰り返すために戻る。或いは又、このときに特定のクライアント装置を指定すべきであることが判断８１４で決定されると、このときに特定のクライアント装置をユーザに指定するのが適当であるかどうか決定するために付加的な処理が遂行される。
【００７５】
一実施形態による付加的な処理が図８Ｂに示されている。特に、判断８１６は、特定のクライアント装置が阻止されるかどうか決定する。特定のクライアント装置は、その特定のクライアント装置が最近別のユーザに指定された場合に、阻止される。例えば、クライアント装置は、所定期間中（例えば、９０日）、指定（即ち、再指定）から阻止される。特定のクライアント装置が指定から阻止されることが判断８１６で決定されると、クラウドアクセスプロセス８００は、特定のクライアント装置が指定から一時的に阻止されることをユーザに通知するよう動作する（８１８）。或いは又、特定のクライアント装置が指定から阻止されないことが判断８１６で決定されると、判断８２０は、指定に利用できるスロットがあるかどうか決定する。利用可能なスロットがないことが判断８２０で決定されると、ユーザは、利用可能なスロットがないことが通知され（８２２）、従って、このとき、特定のクライアント装置は、指定することができない。１つの具現化では、（現在指定されている）別の装置を指定解除してその特定のクライアント装置に利用できるスロットを解放する機会がユーザに与えられる。他方、利用可能なスロットがあることが判断８２０で決定されると、特定のクライアント装置は、利用できるスロットに指定される（８２４）。ブロック８１８、８２２及び８２４に続いて、クラウドアクセスプロセス８００は、判断８０２へ戻るように進み、クラウドアクセスプロセス８００は、特定のクライアント装置を経てクラウドデータレポジトリーへのユーザアクセスを許可すべきか拒絶すべきかを繰り返し且つ再評価することができる。
【００７６】
以上に鑑み、１つ以上の実施形態によって提供される電子装置は、例えば、コンピューティング装置（例えば、パーソナルコンピュータ）、移動電話（例えば、セルラー電話、スマートホン）、パーソナルデジタルアシスタント（ＰＤＡ）、メディアプレーヤ（例えば、音楽、ビデオ、ゲーム、画像）、メディア記憶装置、カメラ、等であることが容易に明らかである。又、電子装置は、これら装置機能の２つ以上を単一装置へ結合するマルチ機能装置でもよい。ポータブル電子装置は、種々の形式のネットワーク通信をサポートする。
【００７７】
ポータブル電子装置は、ハンドヘルド電子装置として提供される。ハンドヘルドという用語は、一般的に、片手で心地よく保持するに充分なほど小さいフォームファクタをもつ電子装置を指す。ハンドヘルド電子装置は、片手動作又は両手動作に向けられる。片手動作では、片手を使用して装置を保持すると共に、使用中にユーザインターフェイスで動作を行う。両手動作では、片手を使用して装置を保持しながら、他方の手は使用中にユーザインターフェイスで動作を遂行するか、或いは又両手で装置を支持し且つ使用中に動作を行う。あるケースでは、ハンドヘルド電子装置は、ユーザのポケットに入るサイズとされる。ポケットサイズにすることにより、ユーザは、装置を直接携帯する必要がなく、それ故、装置は、ユーザがほぼどこに旅行しても持ち歩くことができる（例えば、ユーザは、大きくてかさばり且つしばしば重たい装置を携帯することによる制限を受けない）。
【００７８】
デジタルメディア資産（例えば、デジタルメディアアイテム）は、例えば、ビデオアイテム（例えば、ビデオファイル又は映画）、オーディオアイテム（例えば、曲、音楽アルバム、ポッドキャスト又はオーディオブックのようなオーディオファイル又はオーディオトラック）、或いは画像アイテム（例えば、写真）に関するものである。又、デジタルメディア資産は、テキスト又はマルチメディアファイルも含み又はそれにより補足される。
【００７９】
デジタル資産配布に関する付加的な情報は、（ｉ）参考としてここに援用する２０１１年３月９日に出願された“INTELLIGENT DELIVERY AND ACQUISITION OF DIGITAL ASSETS”と題する米国プロビジョナル特許出願第６１／４５１，０５７号；及び（ii）参考としてここに援用する２００７年９月４日に出願された“Digital Asset Delivery to Different Devices”と題する米国特許出願第１１／８４９，７１１号に記載されており、それに対応する米国特許公告２００９／００６３３０１  Ａ１も参考としてここに援用される。
【００８０】
以上に述べた本発明の種々の態様、特徴、実施形態又は具現化は、単独で使用することもできるし、又は種々の組み合わせで使用することもできる。
【００８１】
本発明は、ソフトウェア、ハードウェア、或いはハードウェア及びソフトウェアの組み合わせにより実施されるのが好ましい。又、本発明は、コンピュータ読み取り可能な媒体におけるコンピュータ読み取り可能なコードとしても実施できる。コンピュータ読み取り可能な媒体は、コンピュータシステムによって後で読み取られるデータを記憶するデータ記憶装置である。コンピュータ読み取り可能な媒体の例は、一般的に、リードオンリメモリ及びランダムアクセスメモリを含む。コンピュータ読み取り可能な媒体のより特定の例は、有形の（及び非一時的な）ものであり、フラッシュメモリ、ＥＥＰＲＯＭメモリ、メモリカード、ＣＤ−ＲＯＭ、ＤＶＤ、ハードドライブ、磁気テープ、及び光学データ記憶装置を含む。又、コンピュータ読み取り可能な媒体は、ネットワーク結合されたコンピュータシステムにわたって分散されて、コンピュータ読み取り可能なコードが分散形態で記憶され実行されるようにする。
【００８２】
本発明の種々の実施形態の効果は多数ある。異なる態様、実施形態又は具現化は、必要ではないが、次の効果の１つ以上を生み出す。少なくとも幾つかの実施形態の１つの効果は、共通のデジタル資産が異なるユーザにわたって共有されて、同じデジタル資産の多数のアップロード及び記憶を回避できることである。少なくとも幾つかの実施形態の別の効果は、ユーザのクラウドリソースにアクセスできるユーザ装置の限界を、指定可能なスロットの使用を通して制限（又は調整）できることである。少なくとも幾つかの実施形態の別の効果は、ユーザの多数のクライアント装置の同期をクラウドストレージに関して同期させることができ、従って、ユーザの多数のクライアント装置にわたって同期をとれることである。
【００８３】
以上の説明から、本発明の多数の特徴及び効果が明らかとなろう。更に、当業者であれば、多数の変更や修正が明らかであろうから、本発明は、図示して説明した厳密な構造や動作に限定されない。そのような適当な変更や修正は、全て、特許請求の範囲内に包含されるものとする。
【符号の説明】
【００８４】
１００：ネットワークベースのデータ管理システム
１０２：クラウドサーバー
１０４：クラウドストレージ
１０６：ネットワーク
１０８、１１０：クライアント装置
１１２、１１４：メディア管理アプリケーション
【図１】
0005837186.tif 000002
【図２Ａ】
0005837186.tif 000003
【図２Ｂ】
0005837186.tif 000004
【図３】
0005837186.tif 000005
【図４Ａ】
0005837186.tif 000006
【図４Ｂ】
0005837186.tif 000007
【図５】
0005837186.tif 000008
【図６Ａ】
0005837186.tif 000009
【図６Ｂ】
0005837186.tif 000010
【図７】
0005837186.tif 000011
【図８Ａ】
0005837186.tif 000012
【図８Ｂ】
0005837186.tif 000013