(57)【要約】  本開示は、ユーザに関連付けられたデジタルコンテンツのセキュアなストレージ環境を提供するための、データ管理プラットフォーム（「プラットフォーム」）に関する。該プラットフォームは、ユーザデバイス上にインストールされたアプリを介してアクセス可能であってもよく、それによって、ユーザはデジタルコンテンツをアップロード、修正及び閲覧することが可能になる。デジタルコンテンツは構造化フォーマットにおいてユニバーサルスキャフォールドにマッピングされるため、該プラットフォームはデジタルコンテンツを有意な方法で体系づけること及び表示することができる。デジタルコンテンツは、リモートサーバで上ホストされ得る。該プラットフォームはゼロ知識暗号化を提供することから、サーバにて格納されている暗号化された情報のコンテンツを知ることができないため、サーバにて格納されているデジタルコンテンツはセキュアである。該プラットフォームはまた、オファーが複数のユーザへと送信されるゼロ知識オファーをも促進するが、サーバは、オファーがどのユーザに表示されたかについて、オファーをユーザが受諾するまで知ることがない。【選択図】図１
2020529689.tif 000002
【特許請求の範囲】
【請求項１】
データ管理プラットフォームにて、第１のユーザから第１のデジタルコンテンツを受信するステップと、
前記データ管理プラットフォームにて、前記第１のデジタルコンテンツを前記データ管理プラットフォームにおいて定義された複数のコンテンツ型における第１のコンテンツ型にマッピングするステップであって、前記複数のコンテンツ型におけるコンテンツ型のそれぞれは、対応する前記コンテンツ型に関連付けられた複数の属性及び規則を定義するユニバーサルデータスキャフォールドに関連付けられ、対応する前記コンテンツ型に係る前記ユニバーサルデータスキャフォールドは、対応する前記コンテンツ型の任意のデジタルコンテンツを格納するための前記データ管理プラットフォームの複数のユーザ間にわたって同じである、ステップと、
前記データ管理プラットフォームにて、前記第１のコンテンツ型に関連付けられた第１のユニバーサルデータスキャフォールドを引出すステップであって、前記第１のユニバーサルデータスキャフォールドは、前記第１のコンテンツ型に関連付けられた第１の属性のセット及び第１の規則のセットを定義する、ステップと、
前記データ管理プラットフォームにて、前記第１のデジタルコンテンツを分析するステップであって、それによって第１の属性のセットの属性値を決定する、ステップと、
前記データ管理プラットフォームにて、前記第１のデジタルコンテンツを前記第１のユニバーサルデータスキャフォールドに関連付けて格納するステップと
を含む、コンピュータに実装される方法。
【請求項２】
前記第１のデジタルコンテンツを前記第１のコンテンツ型にマッピングするステップは、
前記第１のコンテンツ型を、前記第１のユーザによって前記第１のデジタルコンテンツを入力するために使用されるグラフィカルユーザインターフェース（ＧＵＩ）の入力フィールドに基づいて識別するステップであって、前記ＧＵＩの１つ以上の入力フィールドは、コンテンツ型に関連付けられた、ステップ
を含む、請求項１に記載のコンピュータに実装される方法。
【請求項３】
前記第１のデジタルコンテンツを前記第１のコンテンツ型にマッピングするステップは、
前記第１のデジタルコンテンツの初期型を、前記第１のユーザから受信するステップと、
前記第１のコンテンツ型を、前記初期型に基づいて決定するステップと
を含む、請求項１に記載のコンピュータに実装される方法。
【請求項４】
前記第１のコンテンツ型を決定するステップは、
複数のコンテンツ型のオプションを、前記初期型に基づいて生成するステップと、
前記第１のユーザに対して、前記コンテンツ型のオプションのうち１つを前記第１のコンテンツ型として選択するように促すステップと
を含む、請求項３に記載のコンピュータに実装される方法。
【請求項５】
前記第１のデジタルコンテンツを前記第１のコンテンツ型にマッピングするステップは、
前記第１のデジタルコンテンツに関連付けられた１つ以上の前記属性を分析するステップであって、それによって前記第１のデジタルコンテンツが前記第１のコンテンツ型のものであることを決定する、ステップ
を含む、請求項１に記載のコンピュータに実装される方法。
【請求項６】
前記１つ以上の前記属性を分析するステップは、
前記１つ以上の前記属性が１つ以上の前記第１のユニバーサルデータスキャフォールドの属性と一致していることを決定するステップ
を含む、請求項５に記載のコンピュータに実装される方法。
【請求項７】
前記第１のデジタルコンテンツを分析するステップは、
前記第１のデジタルコンテンツから１つ以上の前記属性値を抽出するステップ
を含む、請求項１に記載のコンピュータに実装される方法。
【請求項８】
前記１つ以上の前記属性値に基づいて、前記第１のデジタルコンテンツが前記データ管理プラットフォームに格納された第２のデジタルコンテンツに関係していることを決定するステップと、
前記第１のデジタルコンテンツが前記第２のデジタルコンテンツに関係しているかどうかの確認を前記第１のユーザにリクエストするプロンプトを生成するステップと
をさらに含む、請求項７に記載のコンピュータに実装される方法。
【請求項９】
前記決定するステップは、前記データ管理プラットフォームによって定義される前記第１のコンテンツ型と前記第２のコンテンツにおける第２のコンテンツ型との間の関係に基づいて実行される、請求項８に記載のコンピュータに実装される方法。
【請求項１０】
前記第１のデジタルコンテンツを分析するステップは、
前記第１のユニバーサルデータスキャフォールドに基づいて、前記第１のデジタルコンテンツに対するリクエストセットを生成するステップであって、各リクエストは、第１のユーザに対して、前記第１の属性のセットにおける対応する前記属性の属性値を入力するように促す、ステップと、
前記第１のデジタルコンテンツの第１の属性値のセットを前記第１のユーザから受信するステップと
を含む、請求項１に記載のコンピュータに実装される方法。
【請求項１１】
前記第１の属性のセットは、コンテンツ型属性、フィールド属性、フィールドデータ型属性、フォーマッタ属性、翻訳属性又は関係属性のいずれかを含む、請求項１に記載のコンピュータに実装される方法。
【請求項１２】
前記関係属性は、前記第１のデジタルコンテンツが関係している１つ以上のデジタルコンテンツを示す、請求項１１に記載のコンピュータに実装される方法。
【請求項１３】
前記１つ以上のデジタルコンテンツは、前記第１のコンテンツ型のものである、請求項１２に記載のコンピュータに実装される方法。
【請求項１４】
前記１つ以上のデジタルコンテンツは、前記第１のコンテンツ型とは異なる第２のコンテンツ型のものである、請求項１２に記載のコンピュータに実装される方法。
【請求項１５】
前記第１の規則のセットは、共有規則、セキュリティ規則、通知規則、位置ベースの規則、デバイス固有の規則又は関係固有の規則のいずれかを含む、請求項１に記載のコンピュータに実装される方法。
【請求項１６】
前記共有規則は、前記データ管理プラットフォームの１人以上のユーザと前記第１のデジタルコンテンツを共有するための規則を示す、請求項１５に記載のコンピュータに実装される方法。
【請求項１７】
前記通知規則は、前記第１のデジタルコンテンツに係る通知を生成するための規則を示す、請求項１５に記載のコンピュータに実装される方法。
【請求項１８】
前記位置ベースの規則は、前記第１のデジタルコンテンツに関連付けられた１つ以上の操作を、前記第１のユーザに関連付けられたコンピューティングデバイスの位置に基づいて実行するための規則を示す、請求項１５に記載のコンピュータに実装される方法。
【請求項１９】
前記デバイス固有の規則は、前記第１のユーザに関連付けられた指定のコンピューティングデバイスのための、前記第１のデジタルコンテンツに関連付けられた１つ以上の動作を実行するための規則を示す、請求項１５に記載のコンピュータに実装される方法。
【請求項２０】
前記関係固有の規則は、前記第１のデジタルコンテンツに関連付けられた１つ以上の動作を、前記第１のデジタルコンテンツと指定のデジタルコンテンツとの指定の関係、又は、前記第１のユーザと別のユーザとの指定の関係に基づいて実行するための規則を示す、請求項１５に記載のコンピュータに実装される方法。
【請求項２１】
前記第１のデジタルコンテンツを前記第１のユニバーサルデータスキャフォールドに関連付けて格納するステップは、
前記第１のユーザが前記第１の規則のセットのいずれかに係る値を入力したかどうかを決定するステップと、
前記第１のユーザが前記第１の規則のセットのいずれかに係る値を入力していないという決定に応答して、前記第１のデジタルコンテンツを、前記データ管理プラットフォームによって決定された、前記第１のコンテンツ型に係るデフォルトの値のセットと共に格納するステップと
を含む、請求項１に記載のコンピュータに実装される方法。
【請求項２２】
前記第１のデジタルコンテンツを前記第１のユニバーサルデータスキャフォールドに関連付けて格納するステップは、
複数のデジタルコンテンツをデータストレージシステム内にグラフとして格納するステップであって、前記第１のデジタルコンテンツは、前記グラフの第１のノードとして表され、前記デジタルコンテンツにおける第２のデジタルコンテンツは、第２のノードとして表され、前記第１のデジタルコンテンツと前記第２のデジタルコンテンツとの関係は、前記第１のノードと前記第のノードとの間のエッジとして表される、ステップ
を含む、請求項１に記載のコンピュータに実装される方法。
【請求項２３】
前記第１のデジタルコンテンツを格納するステップは、
複数のデジタルコンテンツを前記データ管理プラットフォームにグラフとして格納するステップであって、前記データ管理プラットフォームの第１の部分は、前記第１のユーザに関連付けられたコンピューティングデバイス上で実行される、ステップ
を含む、請求項１に記載のコンピュータに実装される方法。
【請求項２４】
前記グラフを、前記データ管理プラットフォームの第２の部分を実行するサーバに関連付けられたデータストレージシステムと同期するステップであって、それによって前記複数のデジタルコンテンツを前記データストレージシステムにバックアップする、ステップ
をさらに含む、請求項２３に記載のコンピュータに実装される方法。
【請求項２５】
コンピュータ可読命令を格納しているコンピュータ可読記憶媒体であって、該コンピュータ可読命令が、
サーバにて、複数のデジタルコンテンツを第１のユーザに関連付けられたコンピューティングデバイスにダウンロードすることに係る、前記第１のユーザからのリクエストを受信するための命令と、
前記複数のデジタルコンテンツの少なくともいくつかを前記コンピューティングデバイスにダウンロードするための命令であって、前記ダウンロードすることは、前記複数のデジタルコンテンツにおける複数のユニバーサルデータスキャフォールドをダウンロードすることを含み、前記複数のデジタルコンテンツは、複数のコンテンツ型のものであり、前記複数のコンテンツ型における各コンテンツ型は、対応する前記コンテンツ型に関連付けられた複数の属性及び規則を定義するユニバーサルデータスキャフォールドに関連付けられている、命令と、
前記コンピューティングデバイスにて、前記複数のコンテンツにおける第１のデジタルコンテンツを引出すための命令であって、前記第１のデジタルコンテンツは、第１のコンテンツ型のものであり、前記第１のコンテンツ型は、第１のコンテンツ型に関連付けられた第１の属性のセット及び第１の規則のセットを定義する第１ユニバーサルデータスキャフォールドに関連付けられている、命令と、
前記第１のデジタルコンテンツに関係する前記デジタルコンテンツのセットを、前記第１の属性のセットにおける関係属性に基づいて引出すための命令と、
前記コンピューティングデバイスにて、前記第１のデジタルコンテンツ及び前記デジタルコンテンツのセットのグラフィカル表現を生成するための命令であって、前記第１のデジタルコンテンツは、グラフの第１のノードとして表され、前記デジタルコンテンツのセットは、複数のエッジを介して前記第１のノードに接続されているノードのセットとして表され、前記複数のエッジは、前記第１のノードと、前記関係属性に基づいて決定される前記ノードのセットとの関係を表す、命令と
を含む、コンピュータ可読記憶媒体。
【請求項２６】
前記複数のデジタルコンテンツの前記少なくともいくつかをダウンロードするための命令は、
前記複数のデジタルコンテンツの前記少なくともいくつかを、前記第１のユーザに関連付けられたコンテキストに基づいて選択するための命令であって、前記コンテキストは、前記第１のユーザに関連付けられたリアルタイム特性を含む、命令
を含む、請求項２５に記載のコンピュータ可読記憶媒体。
【請求項２７】
前記複数のデジタルコンテンツの前記少なくともいくつかをダウンロードするための命令は、
前記複数のデジタルコンテンツの前記少なくともいくつかを、前記コンピューティングデバイスの位置に基づいて選択するための命令
を含む、請求項２５に記載のコンピュータ可読記憶媒体。
【請求項２８】
１つ以上のコンテンツ型のデジタルコンテンツのグループを、第２のユーザと共有するためのリクエストを受信するための命令と、
前記１つ以上のコンテンツ型に関連付けられたユニバーサルデータスキャフォールド及び前記デジタルコンテンツのグループに関連付けられたユーザ定義の共有規則に基づいて、前記第２のユーザと共有されるデジタルコンテンツのサブグループを決定するための命令と、
前記サーバに対して、前記第２のユーザに関連付けられた指定のコンピューティングデバイスに転送されるための前記デジタルコンテンツのサブグループを有するメッセージを送信するための命令と
をさらに含む、請求項２５に記載のコンピュータ可読記憶媒体。
【請求項２９】
前記コンピューティングデバイスにて、前記サーバから、指定のエンティティから共有される１つ以上のコンテンツ型のデジタルコンテンツのグループを有するメッセージを、前記コンピューティングデバイスにて受信するための命令と、
前記コンピューティングデバイスにて、前記１つ以上のコンテンツ型に関連付けられたユニバーサルデータスキャフォールドに基づいて、前記デジタルコンテンツのグループを前記第１のユーザに関連付けられた前記デジタルコンテンツにマージするための命令と
をさらに含む、請求項２５に記載のコンピュータ可読記憶媒体。
【請求項３０】
前記指定のエンティティは、別のユーザを、又は、前記第１のユーザの別のコンピューティングデバイスを含む、請求項２９に記載のコンピュータ可読記憶媒体。
【請求項３１】
前記グラフィカル表現内における指定のデジタルコンテンツのユーザ選択を受信するための命令と、
前記指定のデジタルコンテンツの関係属性に基づいて、前記指定のデジタルコンテンツに関係する指定のデジタルコンテンツのグループを決定するための命令と、
前記指定のデジタルコンテンツと、前記指定のデジタルコンテンツのグループの少なくともいくつかを有する修正されたグラフィカル表現を生成するための命令であって、前記指定のデジタルコンテンツのグループの前記少なくともいくつかは、前記指定のデジタルコンテンツに対応する指定のノードに、前記指定のノードと前記グラフ内の前記ノードのセットとの間の関係を表すエッジのセットを介して接続された指定のノードのセットとして表される、命令と
をさらに含む、請求項２５に記載のコンピュータ可読記憶媒体。
【請求項３２】
前記指定のデジタルコンテンツのグループを決定するための前記命令は、
前記指定のデジタルコンテンツのグループを前記第１のユーザに関連付けられたコンテキストに基づいて決定するための命令であって、前記コンテキストは、前記第１のユーザに関連付けられた少なくとも１つのリアルタイム特性を含む、命令
をさらに含む、請求項３１に記載のコンピュータ可読記憶媒体。
【請求項３３】
プロセッサと、
データ管理プラットフォームにて、第１のデジタルコンテンツを第１のユーザから受信するように構成された第１のコンポーネントと、
前記データ管理プラットフォームにて、前記第１のデジタルコンテンツを、複数のユニバーサルデータスキャフォールドを使用して前記データ管理プラットフォームによって定義された構造化データフォーマットに変換するように構成された第２のコンポーネントであって、各ユニバーサルデータスキャフォールドは、コンテンツ型に係る複数の属性及び規則を定義し、前記第２のコンポーネントは、前記第１のデジタルコンテンツが対応している、前記複数のユニバーサルデータスキャフォールドにおける第１のユニバーサルデータスキャフォールドを識別するように構成されている、第２のコンポーネントと、
前記第１のユニバーサルデータスキャフォールドに関連付けられた第１の属性のセットに係る属性値を決定するように構成された第３のコンポーネントと、
前記データ管理プラットフォームにて、前記第１のデジタルコンテンツを前記第１のユニバーサルデータスキャフォールドに関連付けて格納するように構成された第４のコンポーネントと
を含む、システム。
【請求項３４】
前記第２のコンポーネントは、前記第１のデジタルコンテンツに関連付けられたデータを、前記第１のデジタルコンテンツを前記データ管理プラットフォームにおいて定義された複数のコンテンツ型の第１のコンテンツ型にマッピングすることによって前記構造化データフォーマットに変換するように構成されており、前記複数のコンテンツ型における各コンテンツ型は、前記ユニバーサルデータスキャフォールドの１つに関連付けられている、請求項３３に記載のシステム。
【請求項３５】
前記第２のコンポーネントは、前記第１のコンテンツ型に関連付けられた前記ユニバーサルデータスキャフォールドの１つを前記第１のユニバーサルデータスキャフォールドとして引出すことによって、前記第１のユニバーサルデータスキャフォールドを識別するように構成される、請求項３４に記載のシステム。
【請求項３６】
前記第２のコンポーネントは、前記第１のデジタルコンテンツを、ユーザ入力、機械学習技法又は演繹的推論規則のうち少なくとも１つに基づいて前記第１のコンテンツ型にマッピングするように構成される、請求項３４に記載のシステム。
【請求項３７】
第５のコンポーネントであって、
前記第１のデジタルコンテンツに関係するデジタルコンテンツのセットを引出すことであって、前記デジタルコンテンツのセットは、前記第１のユニバーサルデータスキャフォールドにおいて定義された関係属性に基づいて決定される、ことと、
前記第１のデジタルコンテンツ及び前記デジタルコンテンツのセットを有するグラフィカル表現を生成することであって、前記第１のデジタルコンテンツは、グラフにおける第１のノードとして表され、前記デジタルコンテンツのセットは、複数のエッジを介して前記第１のノードに接続されているノードのセットとして表され、前記複数のエッジは、前記第１のノードと、前記関係属性に基づいて決定される前記ノードのセットとの関係を表す、ことと
を行うように構成された第５のコンポーネントをさらに含む、請求項３３に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
関係出願の相互参照
本出願は、２０１７年６月２日に出願された米国仮特許出願第６２／５１４，６４６号の利益を主張し、その全体が参照により本明細書に組み込まれる。
【背景技術】
【０００２】
ファイルホスティングサービス（例えば、Dropbox（登録商標）、Google Drive（登録商標）又はMicrosoft OneDrive（登録商標））は、ユーザファイルをホストするように特別に設計されたインターネットホスト型サービスである。例えば、ファイルホスティングサービスは、後に別のコンピュータ、タブレット、携帯電話又は他のネットワーク接続デバイスを使用してアクセスすることが可能になるファイルを、ユーザがアップロードすることを可能にし得る。ユーザは多くの場合、ファイルを公開状態で共有するか、（例えば、アクセスを許可する前に認証を要求することによって）ファイルを保護された状態に保つかについてのオプションを有する。
【０００３】
いくつかのファイルホスティングサービスはまた、ワードプロセッサドキュメント、スプレッドシート及びPortable Document Format（ＰＤＦ）ドキュメント等のデジタルファイル上で、ユーザが共同作業することを可能にする。もっとも、ファイルホスティングサービスは、非構造化データを有するデジタルファイルを格納するため、いくつかの制約を受ける。例えば、ファイルホスティングサービスは、それらのファイル型に対応するビューアを有するデジタルファイルを閲覧することのみをユーザに許可することになる（例えば、ＰＤＦドキュメントにはAdobe Reader（登録商標）などのビューアが必要である）。しかしながら、多くの標準に準拠したフォーマットは、ビューアによって視覚的表現として提示されるため、ファイルホスティングサービスは通常、基礎となるデータが実際に意味するものを認識しない。
【発明の概要】
【０００４】
開示の実施形態は、デジタルファイル等のデジタルコンテンツ用のセキュアなストレージ環境を提供するデータ管理プラットフォームに係るものである。該データ管理プラットフォームは、格納されているデジタルコンテンツを、セマンティックグラフとして表すことができる。該セマンティックグラフでは、ノードはデジタルコンテンツを表し、２つのノード間のエッジは対応する２つのデジタルコンテンツ間の関係を表す。該セマンティックグラフは、デジタルコンテンツに関連付けられた構造化データを使用して構築される。該構造化データによって、データ管理プラットフォームは、グラフィカルユーザインタフェースにおいて、デジタルコンテンツをより有意な方法で収集、処理及び提示することが可能になる。該データ管理プラットフォームはまた、データ管理プラットフォームのユーザ間でのデジタルコンテンツの共有、デジタルコンテンツの１つ以上の様相に関する通知の提示、関係するデジタルコンテンツのインテリジェント／コンテキストベースによる取得又は引出し、デジタルコンテンツのゼロ知識暗号化、及び、ゼロ知識オファーの生成など、様々な他の機能をも提供する。
【図面の簡単な説明】
【０００５】
【図１】図１は、開示の実施形態が実装され得る環境を示すブロック図である。
【図２】図２は、様々な実施形態に一貫する、図１のデータ管理プラットフォームによって実装されるユニバーサルデータスキャフォールドテンプレートのブロック図である。
【図３】図３は、様々な実施形態に一貫する、複数のコンテンツ型に係るユニバーサルデータスキャフォールドの例を示すブロック図である。
【図４】図４は、様々な実施形態に一貫する、データ管理プラットフォームによってサポートされる様々なコンテンツ型の例を示すブロック図である。
【図５】図５は、様々な実施形態に一貫する、データ管理プラットフォームにアップロードされたデジタルコンテンツをユニバーサルデータスキャフォールドに基づいて構造化する例のブロック図である。
【図６】図６は、様々な実施形態に一貫する、デジタルコンテンツに関係する非構造化データを分析し、それによって該非構造化データを指定のコンテンツ型の構造化データへと変換する例のブロック図である。
【図７Ａ】図７Ａは、様々な実施形態に一貫する、ユーザに関連付けられたデジタルコンテンツのグラフの例である。
【図７Ｂ】図７Ｂは、様々な実施形態に一貫する、グラフィカルユーザインタフェースにおけるデジタルコンテンツのグラフィカル表現の例である。
【図７Ｃ】図７Ｃは、様々な実施形態に一貫する、ＧＵＩ内のデジタルコンテンツのグラフィカル表現の別の例である。
【図７Ｄ】図７Ｄは、様々な実施形態に一貫する、ＧＵＩ内のデジタルコンテンツのグラフィカル表現の別の例である。
【図７Ｅ】図７Ｅは、様々な実施形態に一貫する、ＧＵＩ内のデジタルコンテンツのグラフィカル表現の別の例である。
【図８】図８は、様々な実施形態に一貫する、デジタルコンテンツのグラフから導出されたインテリジェンスに基づいてレコメンデーションを生成するための例のブロック図である。
【図９】図９は、様々な実施形態に一貫する、デジタルコンテンツのゼロ知識暗号化のブロック図である。
【図１０】図１０は、様々な実施形態に一貫する、暗号化されたバンドルをデータ管理プラットフォーム及びサーバ内に格納する例のブロック図である。
【図１１】図１１は、様々な実施形態に一貫する、サーバからのゼロ知識データ引出しを示す例である。
【図１２】図１２は、様々な実施形態に一貫する、データ管理プラットフォームのユーザに対してオファーを提示するための例のブロック図である。
【図１３】図１３は、様々な実施形態に一貫する、図１のデータ管理プラットフォームのブロック図である。
【図１４】図１４は、様々な実施形態に一貫する、図１のサーバのブロック図である。
【図１５】図１５は、様々な実施形態に一貫する、ユーザに関連付けられたデジタルコンテンツに対してデータ管理操作を実行するためのプロセスのフロー図である。
【図１６】図１６は、様々な実施形態に一貫する、ユーザデバイス上にデジタルコンテンツを表示するためのプロセスのフロー図である。
【図１７】図１７は、様々な実施形態に一貫する、データ管理プラットフォームにおいてデジタルコンテンツのゼロ知識暗号化を実行するためのプロセスのフロー図である。
【図１８】図１８は、様々な実施形態に一貫する、データ管理プラットフォームにおいてデジタルコンテンツを復号するプロセスのフロー図である。
【図１９】図１９は、様々な実施形態に一貫する、データ管理プラットフォームのユーザへとゼロ知識オファーを送信するためのプロセスのフロー図である。
【図２０】図２０は、様々な実施形態に一貫する、データ管理プラットフォームのユーザに対してゼロ知識オファーを表示するプロセスのフロー図である。
【図２１】図２１は、開示の技術のいくつかの実施形態の特徴を実装するために使用され得るようなコンピュータシステムのブロック図である。
【発明を実施するための形態】
【０００６】
データ管理プラットフォームは、デジタルコンテンツを構造化データとして格納することを促進する。この構造化データは、データ管理プラットフォームのユニバーサルデータスキャフォールドを使用して定義される。デジタルコンテンツは、複数のコンテンツ型の１つとしてデータ管理プラットフォーム内に格納され、各コンテンツ型は、ユニバーサルデータスキャフォールドを使用して定義される。いくつかの実施形態では、ユニバーサルデータスキャフォールドは、コンテンツ型を定義する属性のセットを含む。例えば、車のようなコンテンツ型では、ユニバーサルデータスキャフォールドは、車のメーカー、モデル、年、車両識別番号（「ＶＩＮ」）等の属性のセットを含み得る。ユーザが車の写真又は車の販売請求書等の第１のデジタルコンテンツをアップロードするか、車のデータ記録を作成すると、データ管理プラットフォームは、該デジタルコンテンツのコンテンツ型を“car（車）”として決定して、“car”のユニバーサルデータスキャフォールドを取得し、該デジタルコンテンツから“car”ユニバーサルデータスキャフォールド内に定義された属性のセットに係る“Ford”、“Fusion”及び“2014”等の属性値を取得する。
【０００７】
データ管理プラットフォームは、複数のコンテンツ型のためのそのような様々なユニバーサルデータスキャフォールドを有し得る。また、ユニバーサルデータスキャフォールドの属性の１つは、第１のデジタルコンテンツに関係する（同一のコンテンツ型又は別のコンテンツ型の）第２のデジタルコンテンツを識別する関係属性をも含み得る。例えば、“car”ユニバーサルデータスキャフォールド内における属性の１つは、車のデジタルコンテンツを“person（人）”コンテンツ型のデジタルコンテンツに関係付ける“owner（所有者）”又は“owned by（所有する）”等の関係属性であり得る。構造化データによって、様々なデジタルコンテンツ間において関係を容易に確立できるようになる。ユニバーサルデータスキャフォールドは、データ管理プラットフォームが、共通のテーマを有する様々な型のデジタルコンテンツをインテリジェントに繋げることを可能にする。例えば、車両に関係する文書（例えば、メンテナンス記録、運転免許証、保険証書）のようなデジタルコンテンツは、互いに及び／又は車両を所有する個人に関連付けられてもよい。異なる構造化データ間に形成される繋がりは、構造化データにその意味を与えるものである。
【０００８】
ユニバーサルデータスキャフォールドは、規則のような他のメタデータにも関連付けられ得る。ユーザは、デジタルコンテンツの他のユーザとの共有を定義する共有規則など、デジタルコンテンツのための様々な規則を設定できる。例えば、“child（子供）”コンテンツ型に係るユニバーサルデータスキャフォールドでは、親ユーザは、乳母ユーザに対して該子供に関係するデジタルコンテンツの一部のみ（例えば、該子供に関連付けられた予防接種記録など）を共有するように、共有規則を設定することができる。
【０００９】
データ管理プラットフォームは、様々な構成において実装され得る。例えば、第１の構成では、データ管理プラットフォームはサーバコンピューティングデバイス（「サーバ」）に実装されることができ、該サーバには、ユーザがユーザデバイスからアプリケーション（例えば、ユーザデバイス上のウェブブラウザ等）を使用してアクセスできる。また、第２の構成では、データ管理プラットフォームの一部が、例えばユーザデバイスにダウンロードして該ユーザデバイスで実行可能な「アプリ」として、ユーザデバイスに実装されることもできる。ユーザは、ユーザデバイス上のアプリにアクセスし、それによってサーバにデジタルコンテンツをアップロードすること、及び／又は、該サーバからデジタルコンテンツを取得することができる。どの構成においてデータ管理プラットフォームが実装されているかに関わらず、サーバは全てのユニバーサルデータスキャフォールドのコピーを格納する。ユーザがアプリをダウンロードしてインストールする際には、サーバにて利用可能な全てのユニバーサルデータスキャフォールドのコピーもまた、ユーザデバイスにインストールされる。ユニバーサルデータスキャフォールドがサーバにて更新される（例えば、属性が追加、削除、及び／又は変更される）際には、更新されたユニバーサルデータスキャフォールドは、（例えば、アプリ更新の一部として）ユーザデバイス上のデータ管理プラットフォームへと送信される。
【００１０】
データ管理プラットフォームは、デジタルコンテンツを、該デジタルコンテンツがグラフのノードとして表されるグラフデータベースとして格納し得る。２つのデジタルコンテンツ間の関係は、これら２つのデジタルコンテンツに対応するノードを接続するエッジによって表される。ノードは、デジタルコンテンツと、デジタルコンテンツの属性値と、該ノードを別のノードに接続するエッジとを含むデータ構造であり得る。これらのデジタルコンテンツは、グラフデータベース以外の形式において格納され得ることに留意されたい。例えば、これらのデジタルコンテンツは、関係データベース内に格納できる。これらは、デジタルコンテンツに関連付けられた構造化データ及び該デジタルコンテンツ間の関係を、ユニバーサルデータスキャフォールドに基づいて、データ管理プラットフォームに取得、導出、決定又は解釈させることを可能にする任意の形式で格納され得る。データ管理プラットフォームは、ユーザがデジタルコンテンツを閲覧、修正及び／又は作成可能なグラフィカルユーザインタフェース（ＧＵＩ）内にデジタルコンテンツを提示し得る。ＧＵＩは、デジタルコンテンツに関連付けられたユニバーサルデータスキャフォールドを使用して、デジタルコンテンツ及び／又は関係するデジタルコンテンツに関連付けられた様々な属性を表示する。例えば、ＧＵＩは車の写真、及び、車のMake（メーカー）、Model（モデル）及びYear（年式）等の属性を表示することができ、これらは、車のユニバーサルデータスキャフォールドから導出される。ＧＵＩはまた、車のナンバープレート等の関係するデジタルコンテンツをも表示することができ、そのようなデジタルコンテンツは、車のユニバーサルデータスキャフォールドから（例えば、車のユニバーサルデータスキャフォールド内におけるナンバープレート属性から）導出される。
【００１１】
データ管理プラットフォームは、デジタルコンテンツのゼロ知識暗号化をもサポートする。ゼロ知識暗号化では、データ管理プラットフォームがデジタルコンテンツをデータストレージシステムに格納する前に該デジタルコンテンツを暗号化して、該デジタルコンテンツのセキュリティ及びプライバシーを確保する。例えば、アプリはデジタルコンテンツに対応するノードを暗号化した後、暗号化されたノードをサーバへと送信し、それによってデジタルコンテンツをデータストレージシステムにてバックアップすることができる。ノードが暗号化される際に、データ管理プラットフォームは暗号化されたバンドルを生成し、このバンドルは、典型的には、デジタルコンテンツの属性値を含むデジタルコンテンツの暗号化された形態と、該デジタルコンテンツのユニバーサルデータスキャフォールドとを有するブロブである。暗号化されたバンドルは、データストレージシステムに格納するためにサーバへと送信される。暗号化は、例えばユーザデバイスのみがアクセス可能な暗号化キーを使用して、典型的にはユーザデバイスにて実行される。サーバは、デジタルコンテンツの暗号化においてユーザデバイスに使用される暗号化鍵にアクセスできないため、暗号化されたバンドルは、該サーバにて復号され得ない。そのため、デジタルコンテンツがサーバにてセキュアとなる。いくつかの実施形態では、データ管理プラットフォームはデジタルコンテンツを暗号化しない。その場合には、デジタルコンテンツは暗号化されずにサーバに送信され、該サーバに格納される。いくつかの実施形態では、データ管理プラットフォームは、暗号化を無効にするオプションをユーザに提供し得る。その場合には、デジタルコンテンツは暗号化されずにサーバに送信され、該サーバに格納される。しかしながら、このような状況では、サーバに格納されているデジタルコンテンツは、暗号化されたデータとして格納されている状況と比較して安全性が低いことがある。
【００１２】
データ管理プラットフォームはまた、ゼロ知識オファーを促進する。このゼロ知識オファーでは、商品及び／又はサービスのオファーが（例えば、ユニバーサルデータスキャフォールドの一部として）ユーザデバイスに格納されるが、指定の基準を満たすユーザに対して表示され、この適格のユーザは、関心があればオファーを受諾してもよく、拒否してもよく、無視してもよい。データ管理プラットフォームもオファーを提供したベンダーも、この指定のオファーがどのユーザに表示されたかについて、該指定のオファーをユーザが受諾するまで知ることができない。いくつかの実施形態では、ユーザが指定のオファーを受諾した後でも、データ管理プラットフォームは、例えば、該受諾をベンダーへと転送する前にユーザ識別情報の一部又は全部を削除することによって、この受諾を匿名化してもよい。いくつかの実施形態では、ゼロ知識オファーは、受諾されるまではオファーが表示されたユーザにのみ知られ得るオファーである。実際、オファーは、そのオファーが提示されるデジタルコンテンツの基礎となるユニバーサルデータスキャフォールディングと共に、単に格納されるだけもよい。例えば、乳母（又は他の従業員）に関する情報を有するデジタルコンテンツは、給与支払サービスに係るオファー、身辺調査に係るオファーなどが含まれる場合がある。いくつかの実施形態では、ゼロ知識オファーは、ユニバーサルデータスキャフォールドの一部として含まれ、ユーザがデータ管理プラットフォームをユーザデバイス上にインストールする際に、ユーザデータデバイス上に格納されることになる。これらのオファーは開発中にデータ管理プラットフォーム内にプログラムされ得るため、ベンダーなどの商品／サービスの提供を引き受けるエンティティ、又は、データ管理プラットフォームは、ユーザにオファーが行われたことについて、受諾の通知を該ユーザから受信するまで気付かない場合がある。
【００１３】
ユニバーサルデータスキャフォールディングによって、全てのユーザが同じストレージアーキテクチャ及び規則を使用し、それによって様々なコンテンツ型を作成できるようになる。その結果、様々なコンテンツ型のストレージのサポートを引き受けるエンティティは、ユーザが互いに互換性のない複数の異なるコンテンツ型のデジタルコンテンツを生成することについて気に掛ける必要がなくなる。代わりに、ユニバーサルデータスキャフォールドは、情報がどのようにマッピングされたかについての共通性をデータ管理プラットフォームのユーザ間で共有する、共有された共通コンテンツ型を表し得る。したがって、各ユーザは、ユニバーサルデータスキャフォールディングを使用して、全ユーザに類似していると思われるデジタルコンテンツのパーソナライズされたデータベースを事前設定し得る。この一貫性により、コンテンツ型を普遍的に共有させることができるだけでなく、分析／インテリジェンスのプライベート配送もサポートできる。
【００１４】
図１は、開示の実施形態が実装され得る環境を示すブロック図である。環境１００は、サーバ１２０にてデジタルファイルなどのデジタルコンテンツを格納することを促進するデータ管理プラットフォーム１１０を含む。上述のように、データ管理プラットフォーム１１０は、複数の構成において実装することができ、環境１００は、データ管理プラットフォーム１１０がユーザデバイス１０５に実装される構成を示している。データ管理プラットフォーム１１０は、ユーザ１３５が、デジタルコンテンツのアップロード、ダウンロード、生成、修正及び／又は閲覧等のデータ管理操作を実行できるようにする。いくつかの実施形態では、データ管理プラットフォーム１１０は、アプリストア（app store）からユーザデバイス１０５にダウンロード可能なアプリであって、サードパーティエンティティ１４５のサーバにてホストされ、ユーザデバイス１０５にて実行されてサーバ１２０へのアクセスを提供することができるアプリであり得る。サーバ１２０は、インターネット、ローカルエリアネットワーク（ＬＡＮ）又はワイドエリアネットワーク（ＷＡＮ）等のネットワーク１３０を介してアクセス可能であり得る。データ管理プラットフォーム１１０は、ユーザ１３５がデータ管理操作を実行するためのグラフィカルユーザインタフェース（ＧＵＩ）１１５を提供する。いくつかの実施形態では、データ管理プラットフォーム１１０は、ユーザデバイス１０５上のウェブブラウザアプリケーションであり得る。データ管理プラットフォーム１１０は、デジタルコンテンツをユーザデバイス１０５にて、例えばデバイスストレージコンポーネント上に格納することができる。データ管理プラットフォーム１１０は、サーバ１２０と同期して、アップロードされた新規のデジタルコンテンツ又はユーザ１３５によって修正された既存のデジタルコンテンツを、データストレージシステム１２５にて格納するためにサーバ１２０にバックアップする。
【００１５】
デジタルコンテンツは、画像ファイル（例えば、Joint Photographic Experts Group（ＪＰＥＧ）ファイル、Tagged Image File Format（ＴＩＦＦ）ファイル及びPortable Document Format（ＰＤＦ）ファイル）、オーディオファイル（例えば、Waveform Audio（ＷＡＶ）ファイル及びＭＰ３ファイル）、ビデオファイル（例、QuickTime File Format（ＱＴＦＦ）ファイル、Audio Video Interleaved（ＡＶＩ）ファイル、ＭＰ４ファイル）、ドキュメント、サーバ１２０内に作成されたデータ記録等の任意のマルチメディアコンテンツを含み得る。ユーザデバイス１０５は、携帯電話、タブレットコンピュータ、デスクトップコンピュータ、ラップトップコンピュータ、ウェアラブル電子デバイス（例えば、時計又はフィットネスバンド）、仮想/拡張現実デバイス、スマートテレビ又は他のモノのインターネット（ＩｏＴ）デバイス等、ユーザ１３５に関連付けられたネットワークアクセス可能なコンピューティングデバイスであり得る。
【００１６】
ユーザ１３５は、ＧＵＩ１１５を使用して、第１のデジタルコンテンツ（例えば、車の画像）をデータ管理プラットフォーム１１０にアップロードすることができる。データ管理プラットフォーム１１０は、アップロードされたデジタルコンテンツが、サーバ１２０の複数のユニバーサルデータスキャフォールド１５５のうちの少なくとも１つ、例えば、第１のユニバーサルデータスキャフォールドによって定義される構造化データフォーマット内にあるかどうかを決定する。いくつかの実施形態では、データ管理プラットフォーム１１０は、全てのユニバーサルデータスキャフォールド１５５のコピーを有しており、該コピーは、例えば、ユーザデバイス１０５にダウンロードされ、ユーザデバイス１０５にてインストールされるアプリ内にバンドルされる。しかしながら、１つ以上のユニバーサルデータスキャフォールド１５５又は他のアドホックデータスキャフォールドが、サーバ１２０にはあるがユーザデバイス１０５では利用できない場合には、データ管理プラットフォーム１１０は、それらをサーバ１２０から引出すことができる。第１のデジタルコンテンツが第１のユニバーサルデータスキャフォールドによって定義された構造化データフォーマット内にない場合には、データ管理プラットフォーム１１０は、（例えば、少なくとも図５に関連して以下に説明するように）第１のデジタルコンテンツを第１のユニバーサルデータスキャフォールドに基づいて構造化データフォーマットへと変換して、第１のデジタルコンテンツをユーザデバイス１０５内に格納する。ユーザ１３５は、ユーザデバイス１０５から、及び／又は、１つ以上のデジタルコンテンツソース１４０（例えば、ユーザデバイス１０５に接続された外部ストレージデバイス又はオンラインデータストレージサービス）から、デジタルコンテンツをデータ管理プラットフォーム１１０にアップロードすることができる。データ管理プラットフォーム１１０は、ユーザ１３５がＧＵＩ１１５内のデジタルコンテンツを閲覧することができるようにし、そのような例は、少なくとも図７Ｂを参照して以下に説明される。ユーザ１３５は、ＧＵＩ１１５を通して、デジタルコンテンツを閲覧、編集及び／又は作成するようにナビゲートする。
【００１７】
データ管理プラットフォーム１１０は、例えばトリガ条件に基づいて、ユーザデバイス１０５をサーバ１２０と同期させ、それによってユーザデバイス１０５に格納されたデジタルコンテンツをサーバ１２０へとバックアップする。デジタルコンテンツのサーバ１２０へのバックアップを開始するトリガ条件は、スケジュールされた時間間隔、ユーザ１３５からコマンドを受信する、ユーザデバイス１０５上のデータ管理プラットフォーム１１０を開く、ユーザデバイス１０５上のデータ管理プラットフォーム１１０を閉じる、バックアップされていないデジタルコンテンツの数が指定の閾値を超える、データ管理プラットフォーム１１０によって消費されるユーザデバイス１０５のメモリが指定の閾値を超える等のうち１つ以上を含み得る。サーバ１２０は、バックアップされたデジタルコンテンツをデータストレージシステム１２５にて格納し得る。
【００１８】
データ管理プラットフォーム１１０は、デジタルコンテンツをサーバ１２０にバックアップする前に該デジタルコンテンツを暗号化し得る。例えば、データ管理プラットフォーム１１０は、第１のデジタルコンテンツに対応するノードを暗号化した後、暗号化されたノードをサーバ１２０へと送信し、それによって第１のデジタルコンテンツをデータストレージシステム１２５にてバックアップすることができる。ノードが暗号化される際に、データ管理プラットフォーム１１０は暗号化されたバンドルを生成し、このバンドルは、（ａ）第１デジタルコンテンツの属性値を含む第１のデジタルコンテンツの暗号化されたバージョンと、（ｂ）第１のデジタルコンテンツの第１のユニバーサルデータスキャフォールドとを有する。しかしながら、いくつかの実施形態では、暗号化されたバンドル内におけるユニバーサルデータスキャフォールドは、指定のユーザにとってプライベートではなく、データ管理プラットフォーム１１０のユーザ間にわたって共通ではないため、暗号化されなくてもよい。暗号化されたバンドルは、データストレージシステム１２５にて格納するために、サーバ１２０へと送信される。
【００１９】
サーバ１２０は、ユーザ１３５によって実行される様々なデータ管理動作を調整又は促進する。例えば、サーバ１２０は、ユーザデバイス１０５から受信された暗号化されたデジタルコンテンツをデータストレージシステム１２５にて格納することによって、ユーザ１３５からの格納リクエストに応答する。サーバ１２０はまた、データストレージシステム１２５からデジタルコンテンツを引出し、それらをユーザデバイス１０５へと転送することによって、ユーザ１３５からのデータアクセスリクエストに応答することもできる。サーバ１２０は、各ユーザがサーバ１２０にて別個のユーザアカウント又はユーザプロファイルを有する複数のユーザのデジタルコンテンツを管理する。サーバ１２０は、複数のユーザのデジタルコンテンツをデータストレージシステム１２５内に格納してもよい。
【００２０】
サーバ１２０はまた、ゼロ知識オファーを促進する。このゼロ知識オファーでは、商品及び／又はサービスのオファーがユーザデバイスに格納されるが、指定の基準を満たすユーザに対して表示され、この適格のユーザは、関心があればオファーを受諾してもよく、拒否してもよく、無視してもよい。サーバ１２０も、ユーザに配信されるオファーをサーバ１２０に提供したベンダー（例えば、サードパーティエンティティ１４５）も、この指定のオファーがどのユーザに表示されたかについて、該指定のオファーをユーザが受諾するまで知ることができない。
【００２１】
データ管理プラットフォーム１１０はまた、カスタマイズされたデータスキャフォールドに基づいて設計されたデータストレージアーカイブと互換性がある。カスタマイズされたデータスキャフォールドアーカイブ１５０は、カスタマイズされたデータスキャフォールド、すなわち、データ管理プラットフォーム１１０において定義されたユニバーサルデータスキャフォールドとは異なるデータスキャフォールドに基づいて構成されたデジタルコンテンツを管理する。例えば、車のディーラーは、データ管理プラットフォームによって車用に定義されたユニバーサルデータスキャフォールドとは異なる別の車用のデータスキャフォールドを持ちたいことがある。すなわち、カスタマイズされたデータスキャフォールドは、車を定義する第１の属性のセットを有し得る一方で、ユニバーサルデータスキャフォールドは、第２の属性のセットを有していてもよい。データ管理プラットフォーム１１０は、デジタルコンテンツに関連付けられた構造化データを維持しつつ該デジタルコンテンツをカスタマイズされたデータスキャフォールドアーカイブ１５０から／へとインポート及び／又はエクスポート可能な、アプリケーションプログラミングインターフェース（ＡＰＩ）を含む。該ＡＰＩは、２つのデータスキャフォールド（例えば、車用のユニバーサルデータスキャフォールド、及び、車用のカスタマイズされたデータスキャフォールド）の差異を決定し、値を有する必要があるものの有していない任意の属性に係る属性値を取得して、それに応じてデジタルコンテンツを対応する構造化データと共に格納する。いくつかの実施形態では、カスタマイズされたデータスキャフォールドアーカイブ１５０は、データ管理プラットフォーム１１０と同じエンティティによって作成された後、販売のために別のエンティティ（例えば、組織等のバイヤー）へと提供され得る。
【００２２】
図２は、様々な実施形態に一貫する、図１のデータ管理プラットフォームによって実施されるユニバーサルデータスキャフォールドテンプレート２００のブロック図である。構造化データによって、データ管理プラットフォーム１１０は、情報をより有意な方法で収集、処理及び提示することが可能になる。例えば、ユーザ１３５が車両を所有していることを示すデジタルコンテンツをアップロードする場合には、データ管理プラットフォーム１１０は他のデジタルコンテンツの分析を開始し、それによって該車両に関係する主要な運転者の運転免許証、ナンバープレート、保険書類等を識別してもよい。データ管理プラットフォーム１１０のそのような分析及び／又はインテリジェンスは、ユニバーサルデータスキャフォールドを使用して可能になり、そのようなユニバーサルデータスキャフォールドは、データ管理プラットフォームによって格納されるデジタル所属物の構造化データフォーマットを定義する。
【００２３】
ユニバーサルデータスキャフォールドは、ユニバーサルデータスキャフォールドテンプレート２００に基づいて定義され、ユニバーサルデータスキャフォールドテンプレート２００は、ユニバーサル定義２０５及びメタデータ２５０を含む。ユニバーサル定義２０５は、コンテンツ型の属性のセットを定義するための変数のテンプレートを提供する。例えば、ユニバーサル定義２０５は、コンテンツ型を定義するために使用される型変数２１０、コンテンツ型の１つ以上の属性を定義するためのフィールド変数２１５、属性のデータ型を定義するためのフィールドデータ型変数２２０、コンテンツ型が表示されるフォーマットを定義するためのフォーマッタ変数２２５、１つ以上の属性の翻訳を定義するための翻訳変数２３０、及び、他のデジタルコンテンツとの関係を定義する関係変数２３５を含む。
【００２４】
メタデータ２５０は、ユーザが使用してデータ管理プラットフォーム１１０内のデジタルコンテンツの挙動をカスタマイズできる様々な設定及び／又は規則を提供する。共有規則２５１は、ユーザによって、デジタルコンテンツを他のエンティティ（例えば、別のユーザ、又は、同じユーザの別のユーザデバイス）と共有するための規則を設定するために使用され得る。例えば、子供の親のような第１のユーザは、該子供と関連付けられたデジタルコンテンツのサブセット（例えば、予防接種記録）を、乳母のような別のユーザと共有するための共有規則２５１を定義し得る。
【００２５】
セキュリティ規則２５２は、様々なエンティティに係るデジタルコンテンツのアクセス許可に関する規則を設定するために使用され得る。例えば、親は、セキュリティ規則２５２を、乳母の予防接種記録への読み取り専用アクセスを提供するように定義することができる。
【００２６】
通知規則２５３は、通知の生成に関する規則を設定するために使用され得る。例えば、親は、通知規則２５３を、子供が指定の予防接種を受けるべき時に通知を親に関連付けられたユーザデバイス上で生成するように定義することができる。この指定の予防接種を受ける時は、サーバ１２０に格納された予防接種記録に基づいて決定され得る。通知規則２５３はまた、通知の頻度、イベントが発生する前にイベントを通知するタイミング等を、ユーザに設定できるようにもする。
【００２７】
位置ベースの規則２５４は、ユーザが位置固有の規則を定義できるようにするために使用され得る。例えば、親は、位置ベースの指定の規則２５４を、親が小児科医の診療所又はその近くにいる時に指定のデジタルコンテンツ（例えば、予防接種記録、又は、前回の診察からの医師のメモ）を表示するように定義することができる。この小児科医院又はその近くにいる時は、親が携帯するユーザデバイスの位置ベースのサービスに基づいて決定され得る。
【００２８】
デバイス固有の規則２５５は、特定のユーザデバイスにとって固有の規則を設定するために使用され得る。例えば、親ユーザは、デバイス固有の規則２５５について、データ管理プラットフォーム１１０がユーザデバイスで開かれた時にデフォルトで指定のデジタルコンテンツを表示するための規則を設定することができる。そのような規則としては、例えば、第１のデジタルコンテンツを第１のユーザデバイスに表示し、第２のデジタルコンテンツを第２のユーザデバイスに表示する規則が挙げられる。
【００２９】
関係固有の規則２５６は、ユーザによって、デジタルコンテンツ間又はデータ管理プラットフォーム１１０のユーザ間における指定の関係に基づいて規則を設定するために使用され得る。例えば、第１のユーザ（例えば、子供の父親）は、関係固有の規則２５６を、第１のユーザの子供に関連付けられた全てのデジタルコンテンツを第２のユーザ（例えば、子供の母親）と共有するように設定することができる。
【００３０】
なお、ユニバーサルデータスキャフォールドテンプレート２００は、上記のユニバーサル定義２０５及びメタデータ２５０に限定されないことに留意されたい。ユニバーサル定義２０５は、より多い又はより少ない定義を有し得ると共に、メタデータは、より多い又はより少ない規則、及び、デジタルコンテンツに関連付けられた他の設定を有し得る。
【００３１】
図３は、様々な実施形態に一貫する、複数のコンテンツ型に係るユニバーサルデータスキャフォールドの例を示すブロック図である。データ管理プラットフォーム１１０は、様々なコンテンツ型のデジタルコンテンツを格納することをサポートし、各コンテンツ型は、ユニバーサルデータスキャフォールドを使用して定義される。車のユニバーサルデータスキャフォールド３０５は、ユニバーサルデータスキャフォールドテンプレート２００を使用して定義されており、型“car”のデジタルコンテンツを定義するセット属性を含む。例えば、コンテンツ型“car”を定義する属性のセットは、文字列データ型の“make（メーカー）”、文字列データ型の“model（モデル）”、日付データ型の“year（年式）”、文字列データ型の“VIN”を含む。ユーザが“car”コンテンツ型のデジタルコンテンツをデータ管理プラットフォーム１１０内に格納する際に、データ管理プラットフォーム１１０は、車のユニバーサルデータスキャフォールド３０５において定義された上記の属性の属性値を、例えば、ユーザに対して上記の属性値を手動で提供することを促すか、該デジタルコンテンツを自動的に分析することによって取得する。デジタルコンテンツの自動的分析は、少なくとも図５を参照して説明される。例えば、ユーザ１３５が車の写真又は車の販売請求書等の第１のデジタルコンテンツをアップロードすると、データ管理プラットフォーム１１０は該デジタルコンテンツを分析し、それによってコンテンツ型を「車」として識別すると共に、第１のデジタルコンテンツから属性make、model及びyearに係る属性値を、それぞれ“Ford”、“Fusion”及び“2014”として取得し得る。
【００３２】
車のユニバーサルデータスキャフォールド３０５は、車を運転する人、車を所有する人及び車の写真等の他のデジタルコンテンツとの関係をそれぞれ定義する、“driven_by（運転する）”、“owner（所有者）”及び“photo（写真）”等の関係属性をさらに含む。すなわち、該関係属性は、第１のデジタルコンテンツに関係するデジタルコンテンツを識別することができる。さらに、関係する該デジタルコンテンツは、第１のデジタルコンテンツと同じコンテンツ型のものでも、異なるコンテンツ型のものでもあり得る。例えば、上記の例のFord Fusion車のような第１のデジタルコンテンツは、型“person（人）”（これは、ユーザ“John”のデータレコードであり得る）の第２のデジタルコンテンツを、関係属性“driven_by”及び“owner”の属性値として有することができ、型“photo”の第３のデジタルコンテンツは、属性“photo”の属性値であり得る。いくつかの実施形態では、異なるデジタルコンテンツ又はコンテンツ型の間におけるこのような関係に起因して、データ管理プラットフォーム１１０は、関係するデジタルコンテンツを決定して関係するデジタルコンテンツをリンク／接続するために、データストレージシステム１２５をマイニングすることができる。いくつかの実施形態では、データ管理プラットフォーム１１０はまた、ユーザ１３５が第１のコンテンツ型のデジタルコンテンツを、関連付けられたデジタルコンテンツを識別するためにアップロードする際に、ユーザ１３５に指示を促す。この関連付けられたデジタルコンテンツは、同じ又は異なるコンテンツ型であり得るものであり、識別において、そのような決定は、第１のコンテンツ型に係るユニバーサルデータスキャフォールドにおいて定義された関係属性に基づいて行われる。
【００３３】
なお、make、model、year及びVINのような車のユニバーサルデータスキャフォールド３０５のいくつかの属性は、ユニバーサルデータスキャフォールドが対応するコンテンツ型に対してネイティブであり、例えば、デジタルコンテンツの直値であり、一方で、“driven_by”、“owner”及び“photo”のような他の属性は派生型であり、例えば、他のコンテンツ型から値が派生することに留意されたい。さらに、ユニバーサルデータスキャフォールドの全ての属性が属性値を有しなくてもよいことに留意されたい。例えば、ユーザ１３５は、車のユニバーサルデータスキャフォールド３０５における指定の属性（例えば、ＶＩＮ）の値を入力しなくてもよく、データ管理プラットフォーム１１０は、それらを決定しなくてもよい。いくつかの実施形態では、ユニバーサルデータスキャフォールドは、少なくともいくつかの属性を必須として定義してもよく、データ管理プラットフォーム１１０が値を決定できない場合、ユーザは値を入力する必要がある。
【００３４】
車のユニバーサルデータスキャフォールド３０５は、ユニバーサルデータスキャフォールドテンプレート２００に基づいて定義される。例えば、型“car”は、型変数２１０に対応し、属性make、model、year及びVINは、フィールド２１５変数に対応し、属性のデータ型はフィールドデータ型変数２２０に対応し、関係属性“driven_by”、“owner”及び“photo”は、関係変数２３５に対応している。ユニバーサルデータスキャフォールドテンプレート２００はまた、ユーザ１３５にデジタルコンテンツ間のアドホックな関係を定義させることもできる。なお、ユニバーサルデータスキャフォールドは、ユニバーサルデータスキャフォールドテンプレート２００の全ての変数を定義するとは限らないことに留意されたい。車のユニバーサルデータスキャフォールド３０５はまた、メタデータ２５０等のメタデータ（図示しない）をも含み得る。該メタデータは、ユーザが設定又はカスタマイズ可能な様々な設定及び／又は規則を含む。いくつかの実施形態では、メタデータ内の規則はデフォルト値を有することができ、ユーザ１３５は、該デフォルト値をカスタマイズすることを選択し得る。
【００３５】
図３はまた、コンテンツ型“person”を定義するために使用される人のユニバーサルデータスキャフォールド３１０をも示している。すなわち、人のユニバーサルデータスキャフォールド３１０は、人に関連付けられた構造化データを定義し、first name（名）、middle name（ミドルネーム）、last name（姓）、date of birth（生年月日）、address（住所）、email（ｅメール）及びphone（電話番号）等の属性を含み得る。ユーザ１３５は、人に関連付けられた情報を格納するために、人用のユニバーサルデータスキャフォールド３１０を使用し得る。型“person”のデジタルコンテンツは、様々な方法で作成することができ、例えば、人の写真若しくは人の識別文書をアップロードする、又は、単にＧＵＩ１１５において該人のデータレコードを作成することによって作成され得る。例えば、ユーザ“John”の型“person”のデジタルコンテンツは、人のユニバーサルデータスキャフォールド３１０において定義されたそれぞれの属性first name、middle name、last name及びdate of birthに係る“John”、“M.”、“Grisham”及び“Dec 31, 1899”等の属性値を有し得る。車のユニバーサルデータスキャフォールド３０５の例では、JohnはFord Fusion車を表す第１のデジタルコンテンツを、関係属性“driven_by”及び“owner”の属性値を“person.p1”として入力することによってJohnのデータレコード等の第２のデジタルコンテンツとリンクすることにより、フォードフュージョン車の運転者及び所有者として表され得る。ここで、“person”は第２のデジタルコンテンツのコンテンツ型で、“p1”は第２のデジタルコンテンツのオブジェクト識別子である。なお、上記の構文は単なる例示であって、様々な他の表現形式がデジタルコンテンツを属性値として指定するために使用され得ることに留意されたい。
【００３６】
ユニバーサルデータスキャフォールディングは、データ管理プラットフォーム１１０におけるユーザ間にわたって共通であるため、データ管理プラットフォーム１１０がインテリジェントな決定を行うことを可能にする。例えば、データ管理プラットフォーム１１０は、運転免許証、ナンバープレート、リース期間又は保険の有効期限がいつ切れるかについて決定した後、ユーザデバイス１０５にてユーザ１３５に運転免許証の更新をリマインドする通知を生成する等、適切なアクションを講じることが可能であってもよい。
【００３７】
データ管理プラットフォーム１１０は、そのような様々なユニバーサルデータスキャフォールドを、種々異なるコンテンツ型に対して定義する。図４は、様々な実施形態に一貫する、データ管理プラットフォーム１１０によってサポートされる様々なコンテンツ型の例４００を示すブロック図である。ユーザ１３５は、多くのコンテンツ型（例えば、コンテンツ型４１０）のデジタルコンテンツを、データ管理プラットフォーム１１０へとアップロードし得る。例４００では、データ管理プラットフォーム１１０によってサポートされるコンテンツ型４１０は、car（車）、dog（犬）、recipe（レシピ）、house（家）、receipt（領収書）及びphoto（写真）を含む。各コンテンツ型４１０は、別々のユニバーサルデータスキャフォールドを使用して定義される。例えば、コンテンツ型“car”は、図３の車のユニバーサルデータスキャフォールド３０５を使用して定義される。同様に、コンテンツ型“dog”は、犬のユニバーサルスキャフォールドを使用して定義することができ、breed（犬種）、name（名前）、date of birth（出生年月日）、photo（写真）、medicine（薬）、tag（タグ）、Vet（獣医）、walker（散歩者）及びgenetic test（遺伝子検査）等の属性を含み得る。様々なコンテンツ型のデジタルコンテンツのストレージアーカイブ４１０を構築し、ユニバーサルデータスキャフォールドを使用してデジタルコンテンツを構築することにより、データ管理プラットフォーム１１０は、様々な日付を追跡し続けて通知リマインダを生成する、及び／又は、ユーザ１３５にレコメンデーションを作成する等、デジタルコンテンツの様々な様相についてインテリジェントな決定を行うことができる。例えば、ユーザ１３５が型“dog”のデジタルコンテンツ（例えば、ユーザ１３５の犬に関する写真及び／又は情報）を格納している場合には、データ管理プラットフォーム１１０は、犬のユニバーサルデータスキャフォールドの属性“genetic test”に関連付けられた属性値がないとデータ管理プラットフォーム１１０が決定した場合に、犬に対して行われる遺伝子検査を受けるようユーザ１３５にレコメンデーションを行うことができる。
【００３８】
図５は、様々な実施形態に一貫する、データ管理プラットフォーム１１０にアップロードされたデジタルコンテンツをユニバーサルデータスキャフォールドに基づいて構造化する例のブロック図である。例５１０〜５２０では、データ管理プラットフォーム１１０は、デジタルコンテンツを受信し、該デジタルコンテンツを分析して構造化データへの変換が必要かどうかを決定し、必要であれば該デジタルコンテンツのコンテンツ型に関連付けられたユニバーサルデータスキャフォールドに基づいて非構造化データを構造化データへと変換し、その後に該デジタルコンテンツをユニバーサルコンテンツのスキャフォールドに関連付けて格納する。
【００３９】
第１の例５１０では、データ管理プラットフォーム１１０は、デジタルコンテンツのコンテンツ型を、ユーザ１３５が使用してデジタルコンテンツに関連付けられたデータを入力する１つ以上の入力フィールドに基づいて識別した後、識別されたコンテンツ型のユニバーサルデータスキャフォールドに関連付けて該デジタルコンテンツを格納する。ＧＵＩ１１５は、種々異なるコンテンツ型のデータを受信するための種々異なる入力フィールドのセットを提供し得る。すなわち、所定の入力フィールドは、所定のユニバーサルデータスキャフォールドに直接関連付けられてもよい。したがって、ユーザ１３５がこれらのフィールド内に情報を入力することによって、データ管理プラットフォーム１１０は、入力されているデータのコンテンツ型及び構造を本質的に理解してもよい。例えば、ＧＵＩ１１５は、コンテンツ型“car”のデータを受信するように構成された第１の入力フィールドのセットを含み得る。データ管理プラットフォーム１１０は、第１の入力フィールドのセットを使用して入力される任意のデータがコンテンツ型“car”に関連付けられた構造化データであると決定し、したがって、その構造データを車のユニバーサルデータスキャフォールドに関連付けて格納する。
【００４０】
第２の例５１５では、データ管理プラットフォーム１１０は、アップロードされたデジタルコンテンツのコンテンツ型を自動的に決定し、ユーザ１３５に対してコンテンツ型又は組み合わせを識別することを促す。図６は、様々な実施形態に一貫する、デジタルコンテンツに関係する非構造化データを分析し、それによって該非構造化データを指定のコンテンツ型“receipt”の構造化データへと変換する例のブロック図である。ユーザ１３５は、レストランの請求書のスキャンである画像ファイル６０５をアップロードし得る。データ管理プラットフォーム１１０は、様々な技術（例えば、光学文字認識（ＯＣＲ））を使用して画像ファイル６０５を分析し、画像ファイル６０５内の単語「領収書」、「請求書」又はそれに類するものを識別して、画像ファイル６０５がコンテンツ型“receipt”のものであることを決定することができる。データ管理プラットフォーム１１０はまた、ユーザ入力、機械学習技法又は演繹的推論規則のうち少なくとも１つに基づいて、コンテンツ型を決定することもできる。コンテンツ型を決定した後、データ管理プラットフォーム１１０は、コンテンツ型“receipt”に対して定義されたユニバーサルデータスキャフォールドである領収書のユニバーサルデータスキャフォールドを引出し、領収書のユニバーサルデータスキャフォールドから、restaurant name（レストラン名）、date（日付）、price（価格）及びexpense type（支出タイプ）等の領収書の属性のセット６１０を決定し得る。データ管理プラットフォーム１１０は、画像ファイル６０５の分析を続けて、それによって属性のセット６１０に係る属性値を取得又は抽出し得る。例えば、データ管理プラットフォーム１１０は、属性restaurant name、date及びpriceに係る値を、それぞれ“Murphy's Deli,”、“June 2, 2017”及び“$1264”として取得することができる。しかしながら、データ管理プラットフォーム１１０は、属性expense typeの値を取得しなくてもよい。データ管理プラットフォーム１１０は、ユーザ１３５に対して、expense typeを識別してユーザ１３５から値を受け取るよう促してもよい。このようにして、データ管理プラットフォーム１１０は、画像ファイル６０５に関連付けられた非構造化データを、領収書ユニバーサルデータスキャフォールドに基づいてコンテンツ型“receipt”の構造化データへと変換している。
【００４１】
例６００では、データ管理プラットフォーム１１０は、いくつかの属性値を自動的に決定し、いくつかの属性値をユーザ１３５からの入力を求めることによって決定した。いくつかの実施形態では、データ管理プラットフォーム１１０は、構造化データを決定するにあたって必要な情報を自動的に決定し、ユーザ１３５からの入力を求めなくてもよい。例えば、expense typeが必須フィールドではない場合には、データ管理プラットフォーム１１０は、他の属性（例えば、restaurant name、date及びprice）の属性値を決定した後に分析プロセスを終了して、構造化データを格納し得る。いくつかの実施形態では、データ管理プラットフォーム１１０は、構造化データを生成するために必要な情報を決定するにあたって、ユーザ１３５とさらに対話し得る。例えば、データ管理プラットフォーム１１０がコンテンツ型を自動的に決定することができない場合には、データ管理プラットフォーム１１０は、「このコンテンツは何ですか？コンテンツ型を選択して下さい」のような質問を提示して、ユーザ１３５に選択されるコンテンツ型のリストを提示してもよい。いくつかの実施形態では、データ管理プラットフォーム１１０は、コンテンツ型を“receipt”として自動的に決定している可能性があるが、その決定の精度は、既定の値を下回る可能性があるため、データ管理プラットフォーム１１０は、「これは領収書ですか？確認するか、別のコンテンツ型を選択してください」のような質問を提示し得る。データ管理プラットフォーム１１０は、各属性値が決定された後、又は、全て一度に確認するように、ユーザ１３５に尋ね続けることができる。
【００４２】
図６について続けて言及すると、さらに別の例では、データ管理プラットフォーム１１０は、例えば領収書のユニバーサルデータスキャフォールドに関連付けられたメタデータ内の１つの規則を使用して、レストランの請求書の支払タイプが「業務」である場合に、ユーザ１３５がマイレージの領収書を追加することを望む場合にリクエストするように構成され得る。非構造化データを構造化データに変換するにあたっての自動化の程度、換言すると、ユーザ１３５とデータ管理プラットフォーム１１０の対話の程度は、例えば、データ管理プラットフォーム１１０によって提供される設定オプションの１つの中で、ユーザ１３５によって構成され得る。例えば、自動化の程度は、「低」、「中」及び「高」としての３つの異なるレベルで構成できる。ここで、「低」は自動化の３つのレベルのうち最も低いものを示し、ユーザに提示される質問の数は、第１の閾値を上回り得る。「高」は自動化の最も高いレベルを示し、ユーザ１３５に提示される質問の数は、第２の閾値（第２の閾値は、第１の閾値よりも低い）を下回り得る。「中」は「低」と「高」との間の自動化のレベルを示し、ユーザ１３５に提示される質問の数は、第１閾値と第２閾値との間にあり得る。
【００４３】
図５に戻って参照すると、第３の例５２０では、ユーザ１３５は、構造化フォーマット内における指定のコンテンツ型のデジタルコンテンツを入力し、データ管理プラットフォーム１１０は、該コンテンツ型をインテリジェントに識別し、該デジタルコンテンツを、対応するコンテンツ型のために定義されたユニバーサルデータスキャフォールドに関連付けて格納する。例えば、ユーザ１３５は、ユーザがW2文書の画像ファイルをアップロードしていること、又は、データ管理プラットフォーム１１０が（例えば、ＯＣＲを使用して）W2文書を分析することによって画像ファイルが型“W2”のものであると決定することを指定することができ、データ管理は、該画像ファイルをW2のユニバーサルデータスキャフォールドにマッピングする。データ管理プラットフォーム１１０は、（例えば、ＯＣＲを使用して）W2文書を分析し続け、それによってW2のユニバーサルデータスキャフォールドにおいて定義された属性の属性値を取得し、構造化データ（例えば、画像ファイル及び属性値）をW2のユニバーサルデータスキャフォールドに関連付けて格納する。いくつかの実施形態では、ユーザ１３５は、データ管理プラットフォーム１１０の別のユーザから構造化データフォーマットのデジタルコンテンツを受信して、受信したデジタルコンテンツをデータ管理プラットフォーム１１０へとアップロードすることができる。そのような実施形態では、データ管理プラットフォーム１１０は、受信したデジタルコンテンツに関連付けられたユニバーサルデータスキャフォールドに基づいて構造化データを容易に識別し、それに応じて格納することができる。
【００４４】
構造化データは、データ管理プラットフォーム１１０が、情報をより有意な方法で収集、処理及び提示することを可能にする。例えば、ユーザ１３５が、車の画像又は車のデータ記録のようなデジタルコンテンツをアップロードして、彼らが車両を所有していることを示す場合、データ管理プラットフォーム１１０は、車両に関係する主要な運転者の運転免許証、ナンバープレート、保険証書等を識別するために、他のデジタルコンテンツの分析を開始してもよい。データ管理プラットフォームは、これらのデジタルコンテンツをその車に関係するものとして自動的にリンクしてもよく、ユーザ１３５に対してそれらの文書が実際に関係するものであることを確認するように促してもよく、ユーザ１３５に対してそれらの関係する文書を識別するように促してもよい。そのようなデータ管理プラットフォーム１１０の分析及び／又はインテリジェンスは、ユニバーサルデータスキャフォールドの使用によって可能になる。
【００４５】
図７Ａは、様々な実施形態に一貫する、ユーザに関連付けられたデジタルコンテンツのグラフ７００の例である。上述のように、デジタルコンテンツは、データストレージシステム１２５内にグラフデータベースとして、例えば、グラフ７００として格納される。グラフ７００は、デジタルコンテンツをノードとして表し、デジタルコンテンツ間の関係をノードを接続するエッジとして表す。例えば、グラフ７００は、人のデータ記録又は写真のような第１のデジタルコンテンツを、第１のノード７０５として表し、車のデータ記録又は写真のような第２のデジタルコンテンツを、第２のノード７１０として表し、オイル交換領収書のような第３のデジタルコンテンツを、第３のノード７２５として表す。さらに、第１のノード７０５と第２のノード７１０とを接続するエッジ７２０は、それらのノードに対応するデジタルコンテンツ間の「主要な運転者」の関係７１５を示し、この関係７１５では、第１のノード７０５に対応する人は、第２のノード７１０に対応する車の主要な運転者である。
【００４６】
図７Ｂは、様々な実施形態に一貫する、ＧＵＩ内のデジタルコンテンツのグラフィカル表現７５０の例である。いくつかの実施形態では、グラフィカル表現７５０は、ＧＵＩ１１５において生成され得る。グラフィカル表現７５０は、車の写真７５５等のデジタルコンテンツと、車の走行距離、購入日、ＶＩＮ等の複数の車の属性７６０とを含む。写真７５５、属性７６０及びそれらの値は、グラフ７００、例えば、第２のノード７１０から取得され得る。グラフィカル表現７５０はまた、ナンバープレートが車の属性として定義されている場合には第２のノード７１０から、又は、ナンバープレートが関係するデジタルコンテンツとして定義されている場合にはグラフ７００の別のノード（図示しない）から取得され得る、該車のナンバープレート写真７６５を表示する。
【００４７】
グラフィカル表現７５０はまた、ユーザ１３５が使用していくつかのデータ管理操作をすることが可能な、複数のＧＵＩ要素を提供するツールバー７７０をも含む。そのようなデータ管理操作としては、例えば、写真の追加又は削除、グラフィカル表現７５０に表示されるデジタルコンテンツに関連付けられた属性値の変更、又は、関連付けられたデジタルコンテンツの識別等が挙げられる。いくつかの実施形態では、ツールバー７７０によって可能となる操作の少なくともいくつかは、グラフィカル表現７５０内に表示されるデジタルコンテンツの型にコンテキスト依存であり、デジタルコンテンツが関連付けられるユニバーサルデータスキャフォールドに基づいて決定される。例えば、コンテンツ型がグラフィカル表現７５０の車７５５などの車である場合には、車のユニバーサルデータスキャフォールド３０５に基づいて、ツールバー７７０は、ユーザ１３５がコンテンツ型“car”に関連する操作を実行できるようにすることができる。そのような操作としては、例えば、車７５５の追加の写真の閲覧、車７５５に関連付けられた主要な運転者又は所有者の閲覧／編集、車７５５に関連付けられた属性値の閲覧／編集、車７５５に関連付けられた保守記録の閲覧／編集、車７５５に関連付けられた重要な日付（例えば、車の登録の有効期限）の閲覧／編集等が挙げられる。別の例では、グラフィカル表現７５０内に表示されるデジタルコンテンツのコンテンツ型が“person”である場合には、人のユニバーサルデータスキャフォールド３１０に基づいて、ツールバー７７０は、ユーザ１３５がその人の追加の写真を閲覧することを含む操作を実行できるようにすることができる。そのような操作としては、例えば、その人に関連付けられた属性（例えば、その人の名、ミドルネーム、姓、写真）の閲覧／編集、詳細連絡先の閲覧／編集、その人に関連付けられた家族又は友人の情報の閲覧／編集、その人に関連付けられた重要な日付（例えば、誕生日、結婚記念日）の閲覧／編集等が挙げられる。なお、グラフィカル表現７５０は、ツールバー７７０以外のＧＵＩ要素を含むことができ、そのようなＧＵＩ要素によってツールバー７７０と同じ操作又は異なる操作を提供できることに留意されたい。
【００４８】
図７Ｃは、様々な実施形態に一貫する、ＧＵＩ内のデジタルコンテンツのグラフィカル表現７７５の別の例である。グラフィカル表現７７５は、車の写真７７６のようなデジタルコンテンツと、該車の複数の属性７７７を含み、それらは全て、グラフ７００の第２のノード７１０のようなデジタルコンテンツのグラフから取得され得る。グラフィカル表現７７５はまた、車のナンバープレート写真７７９をも表示し、これは第２のノード７１０から取得され得る。グラフィカル表現７７５はまた、車７７６の主要な運転者に関する情報をも表示し、これは第１のノード７０５から関係７１５に基づいて取得され得る。グラフィカル表現７７５はまた、第１のノード７０５から関係７１５に基づいて取得され得る、車７７６の主要な運転者７７８に関する情報と、情報と、第３のノード７２６から関係７２７に基づいて取得され得る、主要な運転者７７８の運転免許証の写真とをも表示する。
【００４９】
図７Ｄは、様々な実施形態に一貫する、ＧＵＩ内のデジタルコンテンツのグラフィカル表現７８０の別の例である。グラフィカル表現７８０は、車の写真７７６と、車のナンバープレート写真７７９と、車７７６の保険証券に関する情報を表示する第１の区域７８１とを含み、これは第２のノード７１０に関係する特定のノード（図示した）から、“insurance policy（保険証券）”等の関係に基づいて取得され得る。グラフィカル表現７８０はまた、保険証券文書７８２をも表示し、これは、指定のノードから取得され得る。いくつかの実施形態では、ユーザ１３５は、グラフィカル表現７７５をスクロールすることによって、グラフィカル表現７８０にナビゲートしてもよい。
【００５０】
図７Ｅは、様々な実施形態に一貫する、ＧＵＩ内のデジタルコンテンツのグラフィカル表現７８５の別の例である。グラフィカル表現７８５は、車の写真７７６と、保険代理店及び保険業者等の車７７６の保険証券に関する情報を表示する第２の区域７８６とを含み、これは車に関係する特定のノード（図示せず）から、“insurer（保険者）”等の関係に基づいて取得され得る。いくつかの実施形態では、ユーザ１３５は、グラフィカル表現７８０内のＧＵＩ要素の１つを選択することによって、グラフィカル表現７８５にナビゲートしてもよい。
【００５１】
いくつかの実施形態では、データ管理プラットフォーム１１０は、ユーザ１３５に関連付けられたデジタルコンテンツのサブセットをユーザデバイス１０５にてダウンロード又はキャッシュする。ユーザ１３５は、グラフィカル表現７５０を通じて、種々異なるデジタルコンテンツを閲覧するようにナビゲートしてもよく、デジタルコンテンツがユーザデバイス１０５に格納されていない場合には、データ管理プラットフォーム１１０は、デジタルコンテンツをサーバ１２０から取得する。例えば、グラフィカル表現７５０では、ユーザ１３５が、車の所有者又は主運転者に関する情報を閲覧するためにツールバー７７０からオプションを選択する場合であって、対応するデータ、例えば第１ノード７０５がユーザデバイス１０５に格納されていない場合には、データ管理プラットフォーム１１０は、第１のノード７０５をサーバ１２０からフェッチした後、第１のノード７０５から所有者の写真及び名前等の所有者の詳細を取得して、該所有者の詳細をグラフィカル表現７５０内に表示することができる。
【００５２】
いくつかの実施形態では、データ管理プラットフォーム１１０は、例えばデータ管理プラットフォーム１１０がユーザ１３５によって開かれた際に、デジタルコンテンツの一部をグラフィカル表現７５０内にデフォルトで表示し得る。データ管理プラットフォーム１１０は、ユーザ１３５が要求したかどうかに関わらず、デフォルトで表示されるデジタルコンテンツを選択することができる。選択されたデジタルコンテンツは、サーバ１２０からフェッチされて、ユーザデバイス１０５にてキャッシュされる。この選択は、ユーザ１３５がいる地理的位置、年／月／週の日付／日／時間、ユーザ１３５と共にいる別のユーザ、最も頻繁に閲覧されたデジタルコンテンツ、直前に閲覧されたデジタルコンテンツ、お気に入りとして示されたデジタルコンテンツ等のユーザ１３５に関連付けられたコンテキストに基づいて、追加されたデジタルコンテンツの時系列に基づいて、ユーザ１３５が特定のデジタルコンテンツにアクセスする可能性があるという予測（ユーザ１３５のデータアクセスパターンに基づいて決定され得る）に基づいて、現在の出来事、日付、時刻、日、年、地理的位置等の関連性のような、ユーザ１３５に関連付けられたその他のリアルタイム特性に基づいて行われ得る。例えば、ユーザ１３５が、米国カリフォルニア州サンフランシスコの「ゴールデンゲート」ブリッジのような特定の場所にいる場合には、グラフィカル表現７５０は、ゴールデンゲートブリッジ又はその近くで撮影された写真を表示してもよい。別の例では、ユーザ１３５が小児科医院におり、ユーザ１３５が子供の予防接種記録、臨床検査の結果、医療等、子供に関連付けられたデジタルコンテンツを格納しているとデータ管理プラットフォーム１１０が決定した場合には、実験室テスト又は診断報告書の結果、グラフィカル表現７５０は対応するデジタルコンテンツを表示してもよい。さらに別の例では、データ管理プラットフォーム１１０は、同じ日付の１年前の指定の日に、ユーザ１３５がハワイにて休暇を取っていたと決定してもよく、グラフィカル表現７５０は、ハワイでの休暇に関連付けられた写真を表示してもよい。さらに別の例では、データ管理プラットフォーム１１０は、指定の日がユーザ１３５の誕生日であると決定してもよく、グラフィカル表現７５０は、ユーザ１３５の誕生日に、ユーザ１３５の以前の誕生日祝いに関連付けられた写真を表示してもよい。さらに別の例では、ユーザ１３５がデータ管理プラットフォーム１１０の別のユーザである第２のユーザと共にいるとデータ管理プラットフォーム１１０が決定した場合、グラフィカル表現７５０は、両方のユーザに関連付けられたデジタルコンテンツ（例えば、両方のユーザの集まりのような両方のユーザに関連付けられている出来事の写真）を表示してもよい。いくつかの実施形態では、ユーザ１３５はまた、グラフィカル表現７５０内にデフォルトで表示されるデジタルコンテンツを選択するためのユーザ定義基準を示す、データ管理プラットフォーム１１０内の表示設定をカスタマイズしてもよい。
【００５３】
デジタルコンテンツに関連付けられた構造化データは、対応するコンテンツ型のユニバーサルデータスキャフォールドに基づいて生成され、データ管理プラットフォーム１１０が関係するデジタルコンテンツ、及び、デジタルコンテンツ間の関係を識別して、グラフィカル表現７５０を生成することができるようにする。デジタルコンテンツをグラフ７００のようなセマンティックグラフとして表すことによって、データ管理プラットフォーム１１０は、データ管理プラットフォーム１１０によってホストされるデジタルコンテンツにより多くの意味及び／又はコンテキストを与える。ユーザ１３５は、デジタルコンテンツをより有意に使用することができる。例えば、車に対応する第２のノード７１０は、その人の名、ミドルネーム、姓、写真等の構造化された情報を有しており、第２のノード７１０と他のノードとの関係は、構造化データにコンテキスト又は意味を与えるものであり、そのようなコンテキスト又は意味としては、例えば、（ａ）車が第１のノード７０５に対応する人によって運転されること、及び、（ｂ）車のオイル交換が第３のノード７２５によって示されるように行われたこと等が挙げられる。別の例では、ユーザ１３５は、運転免許証に対応するノードにすばやく簡単にナビゲートして、運転免許証を開いて再確認する（例えば、運転免許証の有効期限をチェックする）ことができる。
【００５４】
いくつかの実施形態では、ユーザ１３５は、デジタルコンテンツをデータ管理プラットフォーム１１０の別のユーザと共有し得る。例えば、指定のユーザは、指定のユーザのユーザデバイスにあるデータ管理プラットフォーム１１０に、ユーザ１３５に関連付けられたデジタルコンテンツのグループを取得するようにリクエストすることができる。ユーザデバイス１０５上のデータ管理プラットフォーム１１０がリクエストを受信する際に、ユーザデバイス１０５におけるデータ管理プラットフォーム１１０は、デジタルコンテンツのグループのユニバーサルデータスキャフォールドに関連付けられたメタデータ（例えば、共有規則）に基づいて、デジタルコンテンツのグループが指定のユーザと共有可能かどうかを決定する。ユーザデバイス１０５におけるデータ管理プラットフォーム１１０が、デジタルコンテンツのグループが指定のユーザと共有できると決定した場合には、データ管理プラットフォーム１１０は、デジタルコンテンツのグループを有するメッセージを、指定のユーザのユーザデバイスへと送信する。いくつかの実施形態では、メッセージは、指定のユーザのユーザデバイスへとサーバ１２０を介して送信され得る。指定のユーザのユーザデバイスにおけるデータ管理プラットフォーム１１０は、メッセージを受信して、受信したデジタルコンテンツのグループを、例えばマージされるデジタルコンテンツに関連付けられたユニバーサルデータスキャフォールドに基づいて、指定のユーザに関連付けられたデジタルコンテンツにマージするために必要な操作を実行し、このデジタルコンテンツのグループを、指定のユーザへと、例えばグラフィカル表現７５０内に表示する。
【００５５】
図８は、様々な実施形態に一貫する、デジタルコンテンツのグラフ８００から導出されたインテリジェンスに基づいてレコメンデーションを生成するための例のブロック図である。いくつかの実施形態では、グラフ８００は、図７Ａのグラフ７００に類似しており、グラフ８００は、ユーザ１３５に関連付けられたデジタルコンテンツ全体のサブセットを包含していてもよい。データ管理プラットフォーム１１０は、デジタルコンテンツに関連付けられた構造化データ及びグラフ８００内のノード間の関係を使用して、様々な型のインテリジェンスを導出し、導出されたインテリジェンスに基づいて、レコメンデーション、オファー及び／又は通知を生成し得る。例えば、データ管理プラットフォーム１１０は、グラフ８００を分析して、「３か月間メンテナンスされていない車はありますか？」等の状況に係るレコメンデーションを行い、そうであれば、ユーザ１３５に車のメンテナンス作業を完了するように推奨するレコメンデーションを生成し得る。データ管理プラットフォーム１１０はまた、メンテナンスの期限が近づいていること又は過ぎていることをユーザ１３５にリマインド又は警告する通知を生成し得る。さらに、データ管理プラットフォーム１１０はまた、特定のベンダー（例えば、サードパーティエンティティ１４５の１つ）からのメンテナンス作業に係るオファーを、ユーザ１３５へと提示し得る。
【００５６】
いくつかの実施形態では、そのような状況に係るインテリジェンスを導出するために、データ管理プラットフォーム１１０は、グラフ８００を様々なパス（例えば、一連のエッジ）でナビゲートしてノードの有無をテストして、ノード及びエッジの属性をフィルタリングすることができる。例えば、上記の状況に係るインテリジェンスを導出するために、データ管理プラットフォーム１１０は、第１のパス８１０を第１のノード７０５から第３のノード７２５までナビゲートし、それによって人が車に関連付けられているかどうかを決定し、また、第２のノード７１０によって示されるように、人が車に関連付けられているため、データ管理プラットフォーム１１０は、車がメンテナンス記録に関連付けられているかどうかを決定し、また、第３のノード７２５によって示されるように、車がメンテナンス記録に関連付けられているため、データ管理プラットフォーム１１０は、第３のノード７２５の属性から直前のメンテナンスの日付を決定する。メンテナンスの日付が３か月を越えて前の場合、データ管理プラットフォーム１１０は、ユーザ１３５に係るレコメンデーションの生成に進むことができ、このレコメンデーションは、ユーザ１３５に対してＧＵＩ１１５内に表示され得る。
【００５７】
別の例では、データ管理プラットフォーム１１０は、同様に、第２のパス８０５を第１のノード７０５から第４のノード８１５へとナビゲートし、それによって人の運転免許証が指定の期間（例えば、３月）内に失効するかどうかを決定することができ、そうである場合、適切なレコメンデーションを生成することができる。
【００５８】
いくつかの実施形態では、そのような状況のそれぞれをクエリとして表現することができ、このクエリの結果は、データ管理プラットフォーム１１０がレコメンデーションを行ったりオファーを延長したりすることをトリガするものである。
【００５９】
図９は、様々な実施形態に一貫する、デジタルコンテンツのゼロ知識暗号化９００のブロック図である。いくつかの実施形態では、ゼロ知識暗号化９００は、図１の環境１００に実装され得る。データ管理プラットフォーム１１０は、サーバ１２０にて格納されたデジタルコンテンツがセキュアであるように、ユーザ１３５に関連付けられたデジタルコンテンツを、サーバ１２０にバックアップする前に暗号化する。いくつかの実施形態では、データ管理プラットフォーム１１０は、ゼロ知識暗号化９００を使用して暗号化を実行する。このゼロ知識暗号化９００は、サーバ１２０にてデジタルコンテンツが暗号化されたバンドル内に格納され、サーバ１２０は、暗号化されたバンドルにおける暗号化されたコンテンツの知識を有さないことを意味する。これは、デジタルコンテンツをユーザデバイス１０５にて暗号化するために使用される暗号化キーにサーバ１２０がアクセスできないためである。
【００６０】
図９のゼロ知識暗号化９００では、図９に示すように、ユーザＡ９０５及びユーザＢ９１０のような、２人のユーザのデジタルコンテンツが暗号化される。ユーザＡ９０５は、第１のデジタルコンテンツ９２５をユーザデバイス９１４からアップロードし、ユーザＢ９１０は、第２のデジタルコンテンツ９２０をユーザデバイス９１５からアップロードする。いくつかの実施形態では、ユーザ９０５及び９１０は、図１のユーザ１３５と類似しており、図１のユーザデバイス９１４及び９１５は、図１のユーザデバイス１０５と類似している。さらに、ユーザデバイス９１４及び９１５のそれぞれは、対応するユーザデバイスにてインストール及び実行されるデータ管理プラットフォーム１１０のコピーを有し得る。第１のデジタルコンテンツ９２５及び第２のデジタルコンテンツ９２０は、いずれもコンテンツ型“car”であり、したがって、図３の車のユニバーサルデータスキャフォールド３０５のような車のユニバーサルデータスキャフォールドに関連付けられる。
【００６１】
データ管理プラットフォーム１１０は、デジタルコンテンツがグラフのノードとして表されるグラフデータベースとして、該デジタルコンテンツを格納する。ノードは、デジタルコンテンツと、デジタルコンテンツの属性値と、ノードを別のノードに接続するエッジとを含むデータ構造として実装され得る。エッジは、エッジが接続する２つのノードをエッジデータ構造の属性として含むデータ構造として実装され得る。
【００６２】
第１のデジタルコンテンツ９２５をサーバ１２０にバックアップするにあたり、ユーザデバイス９１４におけるデータ管理プラットフォーム１１０は、第１のデジタルコンテンツ９２５に対応する第１のノードを、例えば暗号化キーを使用して暗号化し、それによって第１の暗号化されたバンドル９３０を生成する。第１の暗号化されたバンドル９３０は、典型的には、第１のデジタルコンテンツ９２５に関連付けられた車のユニバーサルデータスキャフォールド３０５と、第１のデジタルコンテンツ９２５に関連付けられたユーザデータ９４０とを含むブロブである。ユーザデータ９４０は第１のデジタルコンテンツ９２５の暗号化されたバージョン（例えば、第１のデジタルコンテンツ９２５が車の写真を有する画像ファイルである場合には、画像ファイルの暗号化されたバージョン）を含み、これは、第１のデジタルコンテンツ９２５（例えば、“Acura”、“MDX”、“2017”及び“2342342”）の属性値の暗号化されたバージョンを含む。第１の暗号化されたバンドル９３０は、その後、データストレージシステム１２５内、例えば、ユーザＡ９０５に割り当てられたストレージブロック９５０内に格納するために、サーバ１２０へと送信される。暗号化は、例えば、ユーザデバイス９１４にて、ユーザデバイス９１４のみがアクセス可能な暗号化キーを使用して行われる。サーバ１２０は、第１のデジタルコンテンツ９２５を暗号化するにあたってユーザデバイス９１４により使用される暗号化キーにアクセスできないため、第１の暗号化されたバンドル９３０はサーバ１２０にて復号できず、したがって、デジタルコンテンツがサーバ１２０にてセキュアになる。
【００６３】
同様に、ユーザデバイス９１５におけるデータ管理プラットフォーム１１０は、第２のデジタルコンテンツ９２０に対応する第２のノードを、ユーザデバイス９１５にはアクセスが制限されている暗号化キーを使用して暗号化し、それによって第２の暗号化されたバンドル９３５を生成する。第２の暗号化されたバンドル９３５は、第２のデジタルコンテンツ９２０に関連付けられた車のユニバーサルデータスキャフォールド３０５と、第２のデジタルコンテンツ９２０に関連付けられたユーザデータ９４５（例えば、第２のデジタルコンテンツ９２０の暗号化されたバージョン）と、第２のデジタルコンテンツ９２０の属性値（例えば、“Jeep”、“Cherokee”、“2016”及び“3H3FJS”）を含む。第２の暗号化されたバンドル９３５は、データストレージシステム１２５、例えばユーザＢ９１０に割り当てられたストレージブロック９５５内に格納するために、サーバ１２０へと送信される。
【００６４】
なお、ユーザデータは、同じ型のデジタルコンテンツに係る異なるユーザに対して異なっている可能性がある一方、車ユニバーサルデータスキャフォールドはデータ管理プラットフォーム１１０の全てのユーザ間にわたって共通しているため、２つの暗号化されたバンドルに含まれる車のユニバーサルデータスキャフォールドは同一である。
【００６５】
図１０は、様々な実施形態に一貫する、暗号化されたバンドルをデータ管理プラットフォーム１１０及びサーバ１２０内に格納する例１０００のブロック図である。いくつかの実施形態では、例１０００は、図１の環境１００に実装することができ、図９のゼロ知識暗号化９００を使用する。上述のように、データ管理プラットフォーム１１０は、デジタルコンテンツをグラフデータベース内にノード及びエッジとして格納し得る。例えば、復号された表現１０１０内に示される５つのデジタルコンテンツは、図７Ａのグラフ７００に類似し得るものであり、ノード識別子ｎ１〜ｎ５を備えた５つのノードとして格納され、ノード間の４つの関係は、エッジ識別子ｅ１〜ｅ４を備えた４つのエッジとして、ユーザデバイス１０５のキャッシュメモリ内に格納される。
【００６６】
ユーザデバイス１０５がサーバ１２０と同期される際に、ノード及びエッジは暗号化され、それによって暗号化されたバンドルが生成され、その後、暗号化されたバンドルとして格納するためにサーバ１２０へと送信される。例１０００では、サーバ１２０におけるストレージブロック９５０、例えば、より具体的にはサーバ１２０に関連付けられたデータストレージシステム１２５におけるストレージブロック９５０は、ユーザ１３５に関連付けられた全てのデジタルコンテンツの暗号化されたバンドルを格納する。
【００６７】
データ管理プラットフォーム１１０は、暗号化されたバンドルをユーザデバイス１０５からサーバ１２０にバックアップするが、データ管理プラットフォーム１１０は、ユーザ１３５のデジタルコンテンツのサブセットの暗号化されたバンドルをユーザデバイス１０５上に格納し得る。例１０００は、ユーザデバイス１０５上のノードストア１００５を示し、ノードストア１００５は、ノードｎ１〜ｎ５にそれぞれ対応する識別子ｅｎ１〜ｅｎ５を有する暗号化されたバンドルと、それぞれエッジｅ１〜ｅ４に対応する識別子ｅｅ１〜ｅｅ５を有する暗号化されたバンドルとを格納する（ノードｎ１〜ｎ５及びエッジｅ１〜ｅ４の暗号化されたバンドルの全てが図中に示されているわけではない）。ユーザデバイス１０５はまた、キーストア１０１５をも有することができ、キーストア１０１５は、ノード識別子の暗号化されたバンドル識別子へのマッピングと、エッジ識別子の暗号化されたバンドル識別子へのマッピングとを格納する。
【００６８】
いくつかの実施形態では、データ管理プラットフォーム１１０は、ユーザデバイス１０５に格納されるデジタルコンテンツのサブセットを、例えば、少なくとも図７を参照して説明したようにユーザ１３５に関連付けられたコンテキストに基づいて決定して、選択されたサブセットの暗号化されたバンドルを格納する。
【００６９】
いくつかの実施形態では、データ管理プラットフォーム１１０は、各ノード及びエッジに対して別個の暗号化されたバンドルを生成する。別々の暗号化されたバンドルを各ノード及びエッジについて生成することにより、データ管理プラットフォーム１１０は、サーバ１２０からのデジタルコンテンツの効率的な引出しを促進する。このような効率的な引出しの促進は、例えば、グループ内の全てのデジタルコンテンツがリクエストされているかどうかに関わらずデジタルコンテンツをグループとして引出すということに制限されずに、リクエストされた１つ以上のデジタルコンテンツを引出すことによって行われる。このような効率的な引出しにより、（ａ）ユーザデバイス１０５にて消費されるストレージスペース、（ｂ）引出し中に消費されるネットワーク帯域幅、及び（ｃ）要求されるデジタルコンテンツの引出しにおいて消費される時間が最小化される。
【００７０】
図１１は、様々な実施形態に一貫する、サーバ１２０からのゼロ知識データ引出しを示す例１１００である。いくつかの実施形態では、例１１００は、図１の環境１００内に実装されてもよい。サーバ１２０は、グラフ表現１１０５に対応するデジタルコンテンツの暗号化されたバンドルを格納することを考慮されたい。すなわち、サーバ１２０は、ノードｎ１〜ｎ５によってそれぞれ表されるデジタルコンテンツの暗号化されたバンドルｅｎ１〜ｅｎ５と、エッジｅ１〜ｅ４によってそれぞれ表される関係の暗号化されたバンドルｅ１〜ｅ４を格納する。
【００７１】
第１の段階１１１０では、データ管理プラットフォーム１１０は、デジタルコンテンツのサブセットをシード記録としてフェッチする。このシード記録は、デフォルトでＧＵＩ１１５内に表示されるデジタルコンテンツ、又は、ユーザがすぐにアクセスするようリクエストし得るデジタルコンテンツである。いくつかの実施形態では、シード記録は、例えば少なくとも上記の図７を参照して説明したように、ユーザ１３５に関連付けられたコンテキストに基づいて決定することができる。いくつかの実施形態では、シード記録の暗号化されたバンドルは、ユーザ１３５がそれらのシード記録を要求するかどうかに関わらず、サーバ１２０から引出され、ユーザデバイス１０５に格納される。例１１００では、データ管理プラットフォーム１１０は、ノードｎ１及びｎ３によって表されるデジタルコンテンツをシード記録として決定し、したがって、ノードｎ１及びｎ３の暗号化されたバンドルｅｎ１及びｅｎ３と、エッジｅ２の暗号化されたバンドルｅｅ２とを含む、暗号化されたデータ１１２０を引出すことを考慮されたい。データ管理プラットフォーム１１０は、暗号化されたデータ１１２０を復号１１２５し、それによってノードｎ１，ｎ３及びエッジｅ２を生成する。ユーザ１３５がデジタルコンテンツを閲覧するためにＧＵＩ１１５にアクセスする際に、データ管理プラットフォーム１１０は、ノードｎ１，ｎ３、及び、ノードｎ１とｎ２とを接続するエッジｅ２を、ＧＵＩ１１５内に表示する。第１の段階１１１０は、例えば、ユーザ１３５に関連付けられたコンテキストが変化した時など、様々なインスタンスにてトリガされ得る。
【００７２】
第２の段階１１１５は、ユーザ１３５が１つ以上のデジタルコンテンツへのアクセスを要求するときにトリガされ得るものであり、この段階では、ユーザ１３５は、ノードｎ２に対応するデジタルコンテンツをリクエストする。データ管理プラットフォーム１１０は、ノードｎ２が、例えばキャッシュメモリ又はオンデバイスストレージなどのユーザデバイス１０５で利用可能かどうかを判定する。ノードｎ２がユーザデバイス１０５にて利用可能である場合には、データ管理プラットフォーム１１０は、ノード１１５に対応するデジタルコンテンツをＧＵＩ１１５内に提示する。一方で、ノードｎ２が利用可能でない場合には、データ管理プラットフォーム１１０は、例えば図１０の鍵ストア１０１５内に格納されたマッピングを使用して、ノードｎ２の暗号化されたバンドル識別子を決定して、サーバ１２０に対して暗号化されたバンドルｅｎ２を引出すよう要求する。暗号化されたバンドルｅｎ２を含む第２の暗号化データ１１３０を受信した後、データ管理プラットフォーム１１０は、第２の暗号化データ１１３０を復号１１３５し、それによってノードｎ２を生成する。ノードｎ２を復号した後、データ管理プラットフォーム１１０はまた、ノードｎ２に関連付けられたエッジ、例えば、エッジｅ１のエッジＩＤをも引出して、それらのエッジがユーザデバイス１０５で利用可能（例えば、シード記録の一部としてダウンロードされた）かどうかを決定し、それらが利用可能でない場合には、サーバ１２０に対してそれらのエッジも同様に引出すよう要求する。それらのエッジの暗号化されたバンドルが受信された後、データ管理プラットフォーム１１０は、エッジの暗号化されたバンドルを復号してエッジ、例えば、エッジｅ１を生成した後、エッジｅ１の情報に基づいて、データ管理プラットフォーム１１０は、ノードｎ１及びｎ２をＧＵＩ１１５内のエッジｅ１に接続する。
【００７３】
図１２は、様々な実施形態に一貫する、データ管理プラットフォームのユーザに対してオファーを提示するための例１２００のブロック図である。いくつかの実施形態では、例１２００は、図１の環境１００内に実装されてもよい。データ管理プラットフォーム１１０はまた、ゼロ知識オファーを促進する。このゼロ知識オファーでは、商品及び／又はサービスのオファーがユーザデバイスに（例えば、ユニバーサルデータスキャフォールド１５５の一部として）格納されるが、指定の基準を満たすユーザに対して表示され、この適格のユーザは、関心があればオファーを受諾してもよく、拒否してもよく、無視してもよい。サーバ１２０もオファーを提供したベンダー（例えば、サードパーティエンティティ１４５）も、この指定のオファーがどのユーザに表示されたかについて、該指定のオファーをユーザが受諾するまで知ることができない場合がある。いくつかの実施形態では、ゼロ知識オファーは、受諾されるまではオファーが表示されたユーザにのみ知られ得るオファーである。オファーは、該オファーを表示する基準が満たされるまで、すなわちオファーがユーザに対して提示される時まで、ユーザのデバイス上に単に常駐する。ユーザのプライバシーやセキュリティは、ゼロ知識オファーによって損なわれることはない。サーバ１２０は、ユーザのデータを暗号化されたバンドル１２１５として格納する。暗号化されたバンドル１２１５は、暗号化されたバンドル９３０及び９３５に類似し得るものであり、そのコンテンツはサーバ１２０やベンダーのいずれにも読み取ることはできない。
【００７４】
サーバ１２０は、ベンダー（例えば、サードパーティエンティティ１４５）から、データ管理プラットフォーム１１０の複数のユーザに提示されるオファーを受信する。該オファーとしては、例えば、車の延長保証に係るオファー１２０５が挙げられる。オファー１２０５はまた、ベンダー定義基準１２１０をも含むことができ、このベンダー定義基準１２１０は、オファー１２０５をユーザに対して表示するための基準を定義する。例えば、ベンダー定義基準１２１０は、オファー１２０５を、指定の年（例えば、２０１８年）よりも古い車を持つユーザに対して提示することを示し得る。いくつかの実施形態では、サーバ１２０は、ベンダー定義基準１２１０を、ユニバーサルデータスキャフォールド１５５の定義に準拠するように再定義又は再構築する。例えば、サーバ１２０は、車のユニバーサルデータスキャフォールド３０５の適切な属性、例えば、“carUDS.YEAR<2017”の適切な属性を基準１２１０内に組み込み、それによってサーバ定義基準１２２０を生成することができる。ここで、“carUDS”は、車のユニバーサルデータスキャフォールドの識別子であり、“YEAR”は、車のユニバーサルデータスキャフォールド３０５の属性である。なお、上記の構文は単に説明のためのものであり、サーバ定義基準１２２０を生成するために他の様々な形式の表現が使用されてもよいことに留意されたい。さらに、オファーを表示するための基準は、複数のデジタルコンテンツの属性に基づくことができ、１つのデジタルコンテンツの属性に限定されないことに留意されたい。サーバ１２０は続いて、オファー１２０５及びサーバ定義基準１２２０を有するプログラムコード１２３５を生成し、プログラムコード１２３５を車のユニバーサルデータスキャフォールド３０５の一部として含める。
【００７５】
例えば、ユーザがデータ管理プラットフォーム１１０をユーザデバイス上に、データ管理プラットフォームアプリをユーザデバイスにダウンロードすることによってインストールする際には、ユニバーサルデータスキャフォールド１５５がユーザデバイスにてダウンロードされて格納される。それによって、オファーを有するプログラムコードはまた、ユーザデバイス上にもユニバーサルデータスキャフォールド１５５の一部として格納される。例えば、オファー１２０５を有するプログラムコード１２３５は、車のユニバーサルデータスキャフォールド３０５の一部としてユーザデバイスにて格納されることになる。プログラムコード１２３５は、対応するユーザデバイスにおけるデータ管理プラットフォーム１１０内にて実行される。例えば、ユーザデバイス１０５は、プログラムコード１２３５をデータ管理プラットフォーム１１０内にて実行する。実行時において、プログラムコード１２３５は、第１のデジタルコンテンツ９２５の属性値を監視し、それによって第１のデジタルコンテンツ９２５がサーバ定義基準１２２０を満たすかどうかを決定し、該属性値がサーバ定義基準１２２０を満たす場合には、プログラムはコード１２３５は、オファー１２０５をユーザ１３５に対してＧＵＩ１１５内に提示する。例えば、プログラムコード１２３５は、第１のデジタルコンテンツ９２５の属性YEARの属性値が“2017”であって“2018”未満であるため、サーバ定義の基準１２２０を満たしていると決定する。
【００７６】
ユーザ１３５は、オファー１２０５を受諾するか、拒否するか、無視するかを選択し得る。ユーザ１３５がオファー１２０５を受諾することを選択した場合、受諾を示す応答１２２５がユーザデバイス１０５からサーバ１２０へと送信される。サーバ１２０は、応答１２２５を、オファー１２０５の受諾１２３０として、オファー１２０５のベンダーへと転送し得る。サーバ１２０又はベンダーは、オファー１２０５がユーザ１２０に対して表示されたかどうか、又は、ユーザ１２０にオファー１２０５が表示されたかどうかについて、ユーザ１３５がオファーを受諾するまで知ることができない場合がある。いくつかの実施形態では、ユーザ１３５がオファー１２０５を受諾した後でも、データ管理プラットフォーム１１０は、例えば、応答１２２５をサーバ１２０に送信する前に、ユーザ識別情報の一部又は全部を削除することによって、応答１２２５を匿名化してもよく、これは、受諾１２３０としてベンダーへと転送されてもよい。いくつかの実施形態では、ユーザが指定のオファーを受諾した後でも、データ管理プラットフォームは、例えば、該受諾をベンダーへと転送する前にユーザ識別情報の一部又は全部を削除することによって、この受諾を匿名化してもよい。しかしながら、いくつかの実施形態では、オファー１２０５がベンダーによってサービスされるために、何らかのユーザ識別がサーバ１２０によって必要とされてもよい。そのような場合には、応答１２２５は匿名化されなくてもよいが、ベンダーに転送される受諾１２３０は匿名化されてもよい。いくつかの実施形態では、オファー１２０５を受け取るために、何らかのユーザ識別がサーバ１２０又はベンダーによって必要とされてもよく、そのような場合には、ユーザ識別情報は、受諾１２３０と共にベンダーに送信されるが、ユーザ識別情報をベンダーと共有するのは、ユーザ１３５から許可を得た後である。
【００７７】
いくつかの実施形態では、データ管理プラットフォーム１１０又はサーバ１２０は、例えば、オファー１２０５をユーザに対して提示する前にベンダーの識別情報を削除することによって、オファー１２０５を匿名化してもよい。
【００７８】
いくつかの実施形態では、サーバ１２０は、同じサービス又は製品の複数に係るオファーを複数のベンダーから受信し得る。サーバ１２０は、オファーを複数の競合するオファーから選択するためのオファー選択基準を定義し、オファー選択基準を満たすオファーを決定し、選択されたオファーを（例えば、プログラムコードとして）対応するユニバーサルデータスキャフォールド内に含め得る。いくつかの実施形態では、サーバ１２０は、ユニバーサルデータスキャフォールド内に含まれるオファー以上のものを選択することができる。例えば、サーバ１２０は、第１の競合オファー及び第２の競合オファーを含むことができ、第１の基準が満たされた場合に第１の競合オファーが提示され、第２の基準が満たされた場合に第２の競合オファーが提示される。
【００７９】
該オファーはユニバーサルデータスキャフォールド１５５の一部であり、典型的には、ユーザがデータ管理プラットフォーム１１０を対応するユーザデバイス上にインストールする際に、ユーザデバイスにて格納される。しかしながら、いくつかの実施形態では、該オファーは、別の時点でユーザへと送信することもできる。例えば、該オファーが更新される際、例えば、新たなオファーがサーバ１２０によって受信される、既存のオファーの基準が変更される、又は、いくつかの既存のオファーがもはや有効ではない際には、サーバ１２０は、その一部が更新されたオファーであるユニバーサルデータスキャフォールドを更新して、ユニバーサルデータスキャフォールドへの更新を、例えばアプリ更新の一部として、ユーザへと送信する。アプリ更新のユーザデバイスへの送信は、１つ以上の条件に基づいて、例えば、毎日又は毎週等の指定の時間間隔に基づいてトリガされるか、ユーザ１３５がデータ管理プラットフォーム１１０アプリをユーザデバイス１０５上で開いた際にトリガされる。
【００８０】
少なくとも図８を参照して説明したように、デジタルコンテンツは、ユニバーサルデータスキャフォールドを使用して構造化データとして格納されるため、様々な型のインテリジェンスが、デジタルコンテンツの様々な分析を実行することによって導出され得ると共に、そのようなインテリジェンスは、ユーザに対して関連するオファーを行うために使用され得る。例えば、サーバ１２０が、特定のユーザ、例えば、親が子供に関連付けられたデジタルコンテンツ及び乳母の様々なプロファイルを格納すると決定した場合には、サーバ１２０は、身辺調査サービスに係るオファーを親へと送信してもよい。親が子供の乳母に関連付けられたプロファイルを開く際に、データ管理プラットフォーム１１０は、乳母に対してまだ身辺調査が行われていない場合には、身辺調査を指示するオファーを提示してもよい。
【００８１】
図１３は、様々な実施形態に一貫する、図１のデータ管理プラットフォーム１１０のブロック図である。データ管理プラットフォーム１１０は、データ送受信コンポーネント１３０５、データスキャフォールドコンポーネント１３１０、属性値決定コンポーネント１３１５、データストレージコンポーネント１３２０、ＧＵＩコンポーネント１３２５、暗号化コンポーネント１３３０、及び、オファー管理コンポーネント１３３５等のコンポーネントを含む。上記のコンポーネントの機能は、少なくとも図１５〜１９を参照して説明される。
【００８２】
なお、データ管理プラットフォーム１１０は、これらのコンポーネントの一部又は全部だけでなく、図１３内に示されていない他のコンポーネントを含んでいてもよいことに留意されたい。例えば、データ管理プラットフォーム１１０は、より少ない数のコンポーネントを含むことができ（例えば、２つのコンポーネントの機能を組み合わせて１つのコンポーネントにし得る）、又は、より多くのコンポーネント（例えば、他の機能を実行するコンポーネント）を含むことができる。いくつかの実施形態では、１つ以上の上記コンポーネントの機能は、２つ以上のコンポーネントに分割され得る。いくつかの実施形態では、データ管理プラットフォーム１１０は、ユーザデバイス１０５上に存在する。いくつかの実施形態では、データ管理プラットフォーム１１０は、サーバ１２０上に存在する。いくつかの実施形態では、データ管理プラットフォーム１１０は、サーバ１２０及びユーザデバイス１０５にわたって分散され得る。当業者は、データ管理プラットフォーム１１０のコンポーネントが、様々な方法でサーバ１２０とユーザデバイス１０５との間で分散され得ることを認識するであろう。
【００８３】
図１４は、様々な実施形態に一貫する、図１のサーバ１２０のブロック図である。サーバ１２０は、データ送受信コンポーネント１４０５、オファー管理コンポーネント１４１０、及び、データストレージコンポーネント１４１５等のコンポーネントを含む。上記のコンポーネントの機能は、少なくとも図１５〜１９を参照して説明される。
【００８４】
なお、サーバ１２０は、これらのコンポーネントの一部又は全部だけでなく、図１４内に示されていない他のコンポーネントを含んでいてもよいことに留意されたい。例えば、サーバ１２０は、より少ない数のコンポーネントを含むことができ（例えば、２つのコンポーネントの機能を組み合わせて１つのコンポーネントにし得る）、又は、より多くのコンポーネント（例えば、他の機能を実行するコンポーネント）を含むことができる。いくつかの実施形態では、１つ以上の上記コンポーネントの機能は、２つ以上のコンポーネントに分割され得る。さらに、コンポーネントは単一のサーバデバイスにて実装されることも、複数のサーバデバイスにわたって分散されることもできる。
【００８５】
図１５は、様々な実施形態に一貫する、ユーザに関連付けられたデジタルコンテンツに対してデータ管理操作を実行するためのプロセス１５００のフロー図である。いくつかの実施形態では、プロセス１５００は、図１の環境１００内に実装され得る。ブロック１５０１では、データ管理プラットフォーム１１０がユーザデバイス１０５上で起動される。例えば、データ管理プラットフォーム１１０は、ユーザデバイス１０５上で実行されるアプリである。データ管理プラットフォーム１１０は、サーバ１２０との通信リンクをネットワーク１３０を介して確立し得る。
【００８６】
ブロック１５０２では、データ送受信コンポーネント１３０５は、ＧＵＩ１１５を使用してユーザ１３５によってアップロードされた、車の写真又は車の販売請求書等のデジタルコンテンツを受信する。例えば、ユーザ１３５は、ユーザデバイス１０５上のローカルストレージから、又は、データ管理プラットフォーム１１０と（例えば、ＡＰＩを介して）インタフェースするファイルホスティングサービス（例えば、Dropbox（登録商標）、Google Drive（登録商標）又はMicrosoft OneDrive（登録商標））等の、別のデジタルコンテンツソース１４０から、デジタルコンテンツを選択してもよい。
【００８７】
ブロック１５０３では、データスキャフォールドコンポーネント１３１０は、デジタルコンテンツを、データ管理プラットフォーム１１０において定義されたコンテンツ型の１つにマッピングする。データスキャフォールドコンポーネントは、少なくとも上記の図５を参照して説明した複数の方法のいずれかを使用して、コンテンツ型を決定することができる。例えば、データスキャフォールドコンポーネント１３１０は、ＧＵＩ１１５内にてデジタルコンテンツを入力するために使用される入力フィールドに基づいて、コンテンツ型を識別することができる。別の例では、データスキャフォールドコンポーネント１３１０は、デジタルコンテンツを（例えば、ＯＣＲを使用して）自動的に分析して、コンテンツ型を機械学習技法及び／又は演繹的推論規則に基づいて決定することができる。さらに別の例では、データスキャフォールドコンポーネント１３１０は、ユーザ１３５に対して、コンテンツ型のリストからコンテンツ型を識別するように促すことができる。
【００８８】
ブロック１５０４では、コンテンツ型を決定した後に、データスキャフォールドコンポーネント１３１０は、識別されたコンテンツ型に対応するユニバーサルデータスキャフォールドを引出す。このユニバーサルデータスキャフォールドは、コンテンツ型を属性及びメタデータ（例えば、規則）のセットを使用して定義する。例えば、コンテンツ型が“car”として識別される場合には、データスキャフォールドコンポーネント１３１０は、データ管理プラットフォーム１１０から車のユニバーサルデータスキャフォールド３０５を引出す。
【００８９】
ブロック１５０５では、属性値決定コンポーネント１３１５は、該ユニバーサルデータスキャフォールド内に定義された属性のセットを識別して、属性のセットの値を取得し、それによってデジタルコンテンツを分析する。例えば、属性値決定コンポーネント１３１５は、車のユニバーサルデータスキャフォールド内に定義された属性のセットを、make、model、year及びVINとして識別することができる。属性値決定コンポーネント１３１５は、デジタルコンテンツを（例えば、ＯＣＲを使用して）分析し、それによって上記の属性に係る属性値を取得する、及び／又は、ユーザ１３５に対して属性値の全部又は一部を入力するよう促すことができる。
【００９０】
ブロック１５０６では、データストレージコンポーネント１３２０は、構造化フォーマットにおけるデジタルコンテンツを、例えば、デジタルコンテンツの属性値及びユニバーサルデータスキャフォールドと共に、ユーザデバイス１０５内に格納する。いくつかの実施形態では、データ記憶コンポーネント１３２０は、デジタルコンテンツをグラフデータベースとして格納し、該グラフデータベースでは、該デジタルコンテンツがグラフのノードとして表され、デジタルコンテンツ間の関係が、対応するノード間のエッジとして表される。
【００９１】
ブロック１５０７では、ＧＵＩコンポーネント１３２５は、デジタルコンテンツをユーザデバイス１０５上のユーザ１３５に提示するためのＧＵＩを生成する。例えば、ＧＵＩコンポーネント１３２５は、デジタルコンテンツを表示するグラフィカル表現７５０を生成する。いくつかの実施形態では、グラフ表現７５０内に提示されるデジタルコンテンツに関する情報は、グラフ７００から取得されてもよい。ＧＵＩコンポーネント１３２５は、グラフィカル表現７５０に表示されるデジタルコンテンツを、ユーザデバイス１０５のノードストア１００５から引出し、又は、ノードストア１００５で利用できない場合には、サーバ１２０から引出す。
【００９２】
ユーザデバイス１０５にて格納されたデジタルコンテンツは、典型的には、アーカイブするためにサーバ１２０にバックアップされる。ブロック１５０８では、データストレージコンポーネント１３２０は、ユーザデバイス１０５をサーバ１２０と同期させ、それによってデジタルコンテンツをユーザデバイス１０５からサーバ１２０にバックアップし得る。サーバ１２０のデータストレージコンポーネント１４１５は、バックアップされたデジタルコンテンツを、データストレージシステム１２５にて格納し得る。いくつかの実施形態では、同期プロセスにおいて、データ送受信コンポーネント１３０５は、サーバにまだバックアップされていないデジタルコンテンツ、及び／又は、ユーザデバイス１０５にて修正されたデジタルコンテンツのみを送信する。
【００９３】
図１６は、様々な実施形態に一貫する、ユーザデバイス上にデジタルコンテンツを表示するためのプロセス１６００のフロー図である。いくつかの実施形態では、プロセス１６００は、図１の環境１００内に実装されてもよい。ブロック１６０５では、データ送受信コンポーネント１３０５は、ユーザ１３５から、ユーザ１３５に関連付けられたデジタルコンテンツをサーバ１２０からダウンロードするためのリクエストを受信する。ユーザ１３５は、そのようなリクエストを、ＧＵＩ１１５を使用して発行し得る。
【００９４】
ブロック１６１０では、データ送受信コンポーネント１３０５は、デジタルコンテンツの少なくともいくつかをサーバ１２０からユーザデバイス１０５にダウンロードする。いくつかの実施形態では、ダウンロードされるデジタルコンテンツの数は、ユーザ１３５に関連付けられたサーバ１２０にて格納されたデジタルコンテンツの総数と、デジタルコンテンツをユーザデバイス１０５にて格納するために利用可能なメモリスペースに基づいて決定できる。いくつかの実施形態では、ダウンロードされるデジタルコンテンツは、データ送受信コンポーネント１３０５によって、ユーザ１３５に関連付けられたコンテキストに基づいて選択することができる。ダウンロードされたデジタルコンテンツは、ノードストア１００５内に格納され得る。ダウンロードされたコンテンツがノードストア１００５に格納される際に、ノードストア１００５内に既に格納されているデジタルコンテンツのいくつかは、ダウンロードされたデジタルコンテンツを収容するためにノードストア１００５から削除されてもよい。
【００９５】
ブロック１６１５では、データストレージコンポーネント１３２０は、例えばユーザ１３５に関連付けられたコンテキストに基づいて、第１のデジタルコンテンツをダウンロードされたデジタルコンテンツから引出す。
【００９６】
ブロック１６２０では、データストレージコンポーネント１３２０は、第１のデジタルコンテンツに関係するデジタルコンテンツのセットを引出す。例えば、データストレージコンポーネント１３２０は、第１のデジタルコンテンツに対応するノードを検査することによって該ノードのエッジを取得し、続いて、該エッジのそれぞれを検査することによって該ノードが接続されている他のノードを決定し、それによって、第１のデジタルコンテンツに関係するデジタルコンテンツのセットを決定することができる。
【００９７】
ブロック１６２５では、ＧＵＩコンポーネント１３２５は、第１のデジタルコンテンツ及びデジタルコンテンツのセットのグラフィカル表現を、ブロック１６２０で決定されたノード及びエッジに基づいて生成する。例えば、グラフィカル表現は、図７Ｂのグラフィカル表現７５０に類似し得る。
【００９８】
図１７は、様々な実施形態に一貫する、データ管理プラットフォームにおいてデジタルコンテンツのゼロ知識暗号化を実行するためのプロセス１７００のフロー図である。いくつかの実施形態では、プロセス１７００は、図１の環境１００内に実装されてもよい。ブロック１７０５では、データ送受信コンポーネント１３０５は、ユーザ１３５から複数のデジタルコンテンツを受信する。例えば、ユーザ１３５は、デジタルコンテンツを、ＧＵＩ１１５を使用してアップロードしてもよい。
【００９９】
ブロック１７１０では、データストレージコンポーネント１３２０は、デジタルコンポーネントをユーザデバイス１０５にて（例えば、ノードストア内に）グラフデータベースとして格納し、このグラフデータベースでは、デジタルコンテンツがグラフのノードとして表され、デジタルコンテンツ間の関係が対応するノード間のエッジとして表される。
【０１００】
ブロック１７１５では、暗号化コンポーネント１３３０は、第１のデジタルコンテンツに対応する第１のノードを暗号化し、それによって第１のノードの第１の暗号化されたバンドルを生成する。暗号化コンポーネント１３３０はまた、第１のデジタルコンテンツが第１の暗号化されたバンドル内において関連付けられる第１のユニバーサルデータスキャフォールドをもパッケージ化する。すなわち、第１の暗号化されたバンドルは、第１のユニバーサルデータスキャフォールドと、第１のデジタルコンテンツの暗号化されたバージョンとを含むことができ、これには、第１のデジタルコンテンツの属性の属性値が含まれる。属性は、第１のユニバーサルデータスキャフォールドによって定義される。データストレージコンポーネント１３２０は、第１の暗号化されたバンドルを、ノードストア１００５内に格納し得る。暗号化コンポーネント１３３０は、暗号化キーを使用して第１のノードを暗号化し、この暗号化キーは、典型的には、ユーザデバイス１０５にてのみアクセス可能又は利用可能である。暗号化キーはまた、第１の暗号化されたバンドルを復号するためにも使用され、それによって第１のデジタルコンテンツを抽出する。暗号化コンポーネント１３３０は、暗号化を実行するために、複数の暗号化技術のうち任意のものを使用し得る。
【０１０１】
ブロック１７２０では、データトランシーバーコンポーネント１３０５は、第１の暗号化されたバンドルを、データストレージシステム１２５にて格納するためにサーバ１２０へと送信する。サーバ１２０のデータストレージコンポーネント１４１５は、第１の暗号化されたバンドルを受信して、該バンドルをデータストレージシステム１２５にて格納する。いくつかの実施形態では、データ送受信コンポーネント１３０５は、ユーザデバイスがサーバ１２０と同期される際に、第１の暗号化されたバンドルをサーバ１２０へと送信する。
【０１０２】
図１８は、様々な実施形態に一貫する、データ管理プラットフォームにおいてデジタルコンテンツを復号するプロセス１８００のフロー図である。いくつかの実施形態では、プロセス１８００は、図１の環境１００内に実装され得る。ブロック１８０５では、データ送受信機コンポーネント１３０５は、指定のデジタルコンテンツに係るリクエストをユーザ１３５から受信する。
【０１０３】
判定ブロック１８１０で、データストレージコンポーネント１３２０は、指定のデジタルコンテンツがユーザデバイス１０５にて利用可能かどうかを決定する。例えば、データストレージコンポーネント１３２０は、指定のデジタルコンテンツに対応する指定のノード、又は、指定のノードに対応する指定の暗号化されたバンドルが、ノードストア１００５で利用可能かどうかを決定することができる。
【０１０４】
指定のノード又は指定の暗号化されたバンドルのいずれかがユーザデバイス１０５にて利用可能である場合には、該プロセスはブロック１８２０へと進む。一方で、ブロック１８１５では、指定のノード及び暗号化されたバンドルのいずれもユーザデバイス１０５にて利用可能でないとデータストレージコンポーネントが決定した場合、データトランシーバーコンポーネント１３０５は、指定の暗号化されたバンドルをサーバ１２０から引出す。例えば、サーバ１２０のデータストレージコンポーネント１４１５は、データストレージシステム１２５から指定の暗号化されたバンドルを引出すことができ、サーバ１２０におけるデータ送受信コンポーネント１４０５は、該バンドルをデータ送受信コンポーネント１３０５へと送信することができる。
【０１０５】
ブロック１８２０では、暗号化コンポーネント１３３０は、指定の暗号化されたバンドルを復号し、それによって指定のノードを抽出する。この指定のノードは、指定のデジタルコンテンツ及びその属性値、並びに、指定のデジタルコンテンツに対応する指定のユニバーサルデータスキャフォールドを含む。
【０１０６】
ブロック１８２５では、ＧＵＩコンポーネント１３２５は、指定のノードのグラフィカル表現をＧＵＩ１１５内に生成し、該グラフィカル表現は、指定のデジタルコンテンツに対応する。グラフィカル表現は、図７Ｂのグラフィカル表現７５０に類似し得る。グラフィカル表現７５０は、指定のデジタルコンテンツに関連付けられた属性及び属性値を表示し得る。指定のノードの属性は、指定のデジタルコンテンツに関連付けられた指定のユニバーサルデータスキャフォールドに基づいて決定される。
【０１０７】
図１９は、様々な実施形態と一致する、様々な実施形態に一貫する、データ管理プラットフォームのユーザへとゼロ知識オファーを送信するためのプロセスの１９００のフロー図である。いくつかの実施形態では、プロセス１９００は、図１の環境１００内に実装され得る。ブロック１９０５では、サーバ１２０におけるデータ送受信コンポーネント１４０５は、データ管理プラットフォーム１１０のユーザに対して提示される指定のオファーをベンダーから受信する。指定のオファーは、該指定のオファーをユーザに対して提示するための基準等の情報を含み得る。典型的には、オファーは、指定のコンテンツ型に関連付けられている、又は、関係している。例えば、車に係る延長保証のオファーは、コンテンツ型“car”に関連付けられている。
【０１０８】
ブロック１９１０では、オファー管理コンポーネント１４１０は、指定のオファーが提示されることになるユニバーサルスキャフォールド、すなわち、コンテンツ型を決定する。いくつかの実施形態では、オファー管理コンポーネント１４１０は、指定のオファーに関連付けられたデータを分析し、それによってオファーが関係するコンテンツ型を決定し得る。オファー管理コンポーネント１４１０は、指定のオファーを（例えば、ＯＣＲを使用して）自動的に分析してコンテンツ型を機械学習技法及び／又は演繹的推論規則に基づいて決定するか、コンテンツ型をベンダーから取得することができる。
【０１０９】
ブロック１９１５では、オファー管理コンポーネント１４１０は、指定のオファーをユーザに対して提示するためのプログラムコードを生成する。プログラムコードは、指定のオファーと、該指定のオファーをユーザに提示するためのサーバ定義基準が含まれている。サーバ定義基準は、指定のオファーのベンダー提供基準を、ユニバーサルデータスキャフォールドの属性を使用して再定義又は再構築することにより生成される。例えば、オファー管理コンポーネント１４１０は、車のユニバーサルデータスキャフォールドの適切な属性、例えば、“carUDS.YEAR<2017”の適切な属性を組み込むことにより、指定のオファーが、“2017”又はより古い車を持っているユーザに提示されることを記述するベンダー定義基準を構築し、それによってサーバ定義基準を生成することができる。ここで、“carUDS”は、車のユニバーサルデータスキャフォールドの識別子であり、“YEAR”は、車のユニバーサルデータスキャフォールドの属性である。
【０１１０】
プログラムコードは、ユーザデバイスにて実行され得る実行可能なコードであり得る。プログラムコードはまた、指定のオファーが提示されることになるデジタルコンテンツの属性値を監視するようにも構成される。
【０１１１】
ブロック１９２０では、オファー管理コンポーネント１４１０は、プログラムコードをユニバーサルデータスキャフォールドの一部として格納する。ユーザがデータ管理プラットフォーム１１０を対応するユーザデバイスにてインストールする際に、ユニバーサルデータスキャフォールドは、ユーザデバイスにて格納される。該ユニバーサルデータスキャフォールドはデータ管理プラットフォーム１１０の全てのユーザにとって同じであるため、それら全てのユーザは、同じ指定のオファーが対応するユーザデバイス内に格納されることになる。
【０１１２】
図２０は、様々な実施形態に一貫する、データ管理プラットフォーム１１０のユーザに対してゼロ知識オファーを表示するプロセス２０００のフロー図である。いくつかの実施形態では、プロセス２０００は、図１の環境１００内に実装され得る。ブロック２００５では、オファー管理コンポーネント１３３５は、格納されたプログラムコードを、ユーザデバイス１０５におけるユニバーサルデータスキャフォールドの一部として実行する。プログラムコードは、ユーザ１３５に提示される特定のオファーを、ユーザデバイス１０５におけるデジタルコンテンツに関連付けて含む。
【０１１３】
ブロック２０１０では、オファー管理コンポーネント１３３５はプログラムコードを実行し、それによって指定のオファーが提示されるデジタルコンテンツに係る属性値を監視する。
【０１１４】
決定ブロック２０１５では、オファー管理コンポーネント１３３５は、属性値がプログラムコード内のサーバ定義基準を満たすかどうかを決定する。
【０１１５】
属性値がサーバ定義基準を満たしていない場合には、該プロセスは、属性値を監視し続ける（ブロック２０１０）。属性値がサーバ定義基準を満たしている場合には、ブロック２０２０にて、オファー管理コンポーネント１３３５は、指定のオファーをユーザ１３５に対して提示又は表示する。
【０１１６】
決定ブロック２０２５では、オファー管理コンポーネント１３３５は、ユーザ１３５が指定のオファーを受諾したかどうかを決定する。ユーザが指定のオファーを受諾した場合には、ブロック２０３０にて、データ送受信コンポーネント１３０５は、指定のオファーの受諾を示す応答をサーバ１２０へと送信する。いくつかの実施形態では、この応答は、ユーザ１３５のプライバシーを保護するため、サーバ１２０に応答を送信する前に、例えばユーザ識別情報の一部又は全部を削除することによって、匿名化されてもよい。
【０１１７】
ユーザ１３５が指定のオファーを受け入れなかった場合、例えば、拒否又は無視された場合には、プロセス２０００が戻る。
【０１１８】
図２１は、開示の技術のいくつかの実施形態の特徴を実装するために使用され得るようなコンピュータシステムのブロック図である。コンピューティングシステム２１００は、前述の図に示されているエンティティ、コンポーネント又はサービスのうち任意のもの（及び、本明細書中に説明される任意の他のコンポーネント）を実装するために使用されてもよい。コンピューティングシステム２１００は、１つ以上の中央処理装置（「プロセッサ」）２１０５と、メモリ２１１０と、入力／出力デバイス２１２５（例えば、キーボード及びポインティングデバイス、ディスプレイデバイス）と、ストレージデバイス２１２０（例えば、ディスクドライブ）と、相互接続２１１５に接続されているネットワークアダプタ２１３０（例えば、ネットワークインタフェース）とを含んでいてもよい。相互接続２１１５は、適切なブリッジ、アダプタ又はコントローラによって接続された１つ以上の個別の物理バス、ポイントツーポイント接続又はその両方を表す抽象物として示されている。したがって、相互接続２１１５は、例えば、システムバス、周辺機器相互接続（ＰＣＩ）バス又はPCI-Expressバス、HyperTransport又は業界標準アーキテクチャ（ＩＳＡ）バス、小型コンピュータシステムインタフェース（ＳＣＳＩ）バス、ユニバーサルシリアルバス（ＵＳＢ）、ＩＩＣ（Ｉ２Ｃ）バス、又は、米国電気電子学会（ＩＥＥＥ）標準１３９４バス（“Firewire”とも称される）を含んでいてもよい。
【０１１９】
メモリ２１１０及びストレージデバイス２１２０は、コンピュータ可読記憶媒体であり、説明された技術の少なくとも一部を実装する命令を格納し得る。加えて、データ構造及びメッセージ構造は、データ伝送媒体、例えば、通信リンク上の信号等を介して、格納又は送信されてもよい。様々な通信リンクが使用されてもよく、そのような通信リンクとしては、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク又はポイントツーポイントダイヤルアップ接続が挙げられる。したがって、コンピュータ可読媒体は、コンピュータ可読記憶媒体（例えば、「一時的ではない」媒体）及びコンピュータ可読伝送媒体を含み得る。
【０１２０】
メモリ２１１０内に格納された命令は、上述のアクションを実行するようにプロセッサ２１０５をプログラムするソフトウェア及び／又はファームウェアとして実装され得る。いくつかの実施形態では、そのようなソフトウェア又はファームウェアは、コンピューティングシステム２１００を通して（例えば、ネットワークアダプタ２１３０を介して）該ソフトウェア又はファームウェアをリモートシステムからダウンロードすることによって、最初に処理システム２１００に提供されてもよい。
【０１２１】
本明細書において提示される技術は、例えば、ソフトウェア及び／又はファームウェアでプログラムされたプログラマブル回路（例えば、１つ以上のマイクロプロセッサ）によって、又は、完全に専用のハードワイヤード（非プログラマブル）回路内に、又は、そのような形式の組み合わせにおいて、実装され得る。専用のハードワイヤード回路は、例えば、１つ以上のＡＳＩＣ、ＰＬＤ、ＦＰＧＡ等の形態であってもよい。
【０１２２】
本発明は、本明細書では好ましい実施形態を参照して説明されているが、当業者であれば、本発明の趣旨及び範囲から逸脱することなく、本明細書に記載の用途を他の用途に置換し得ることを容易に理解するであろう。したがって、本発明は、以下に含まれる請求項によってのみ制限されるべきである。
【０１２３】
備考
上記の説明及び図面は例示であって、限定するものとして解釈されるべきではない。数多くの特定の詳細は、本開示の完全な理解を提供するために説明されている。しかしながら、いくつかの例では、説明が不明瞭になることを避けるために、周知の詳細については説明しない。さらに、様々な修正が、実施形態の範囲から逸脱することなく行われてもよい。したがって、それらの実施形態は、添付の特許請求の範囲による限定を除き、限定されるものではない。
【０１２４】
本明細書における「一実施形態（one embodiment）」又は「ある実施形態（an embodiment）」についての言及は、実施形態に関連して説明される特定の特徴、構造又は特性が、本開示の少なくとも１つの実施形態内に含まれることを意味する。本明細書の様々な位置に現れる語句「一実施形態では（in one embodiment）」は、必ずしも全てが同じ実施形態について言及しているわけではなく、他の実施形態と相互に排他的な別個の又は代替となる実施形態でもない。さらに、いくつかの実施形態によって示されるが、他の実施形態によっては示されないことのある様々な特徴が説明される。同様に、いくつかの実施形態に係る要件であるが、他の実施形態に係る要件ではない、様々な要件が説明されている。
【０１２５】
本明細書において使用される用語は、概して、本開示の文脈の範囲内で、及び、各用語が使用される特定の文脈において、当技術分野における通常の意味を有する。本開示を説明するために使用される用語は、以下において説明されるか、本開示の説明に関して実施者に追加の指針を提供するために、本明細書の他の場所で説明されている。便宜上、いくつかの用語は、例えば、斜体や引用符などを使用して強調される場合がある。強調が使用されていても、用語の範囲及び意味に影響することはなく、用語の範囲及び意味は、強調表示されているかどうかにかかわらず、同じ文脈においては同じである。同様のことが、複数の方法で言えることは理解されよう。「メモリ」は「ストレージ」の一形態であり、これらの用語は、時には交換可能に使用される場合があることが認識されよう。
【０１２６】
したがって、本明細書において説明される任意の１つ以上の用語に対して代替語及び同義語が使用されてもよく、本明細書において用語が詳述又は説明されるか否かに特別な意義があるわけではない。いくつかの用語には、同義語が提供される。１つ以上の同義語が列挙されていても、他の同義語の使用が除外されるわけではない。本明細書の任意の箇所に示される、本明細書において説明される用語の例を含む例の使用は、単なる例示であって、本開示の範囲及び意味又は任意の例示される用語の範囲及び意味をさらに限定することを意図しない。同様に、本開示は、本明細書でおいて提示される様々な実施形態に限定されない。
【０１２７】
当業者は、上述のフロー図のそれぞれにおいて図示されたロジックが、様々な方法にて変更され得ることを理解されよう。例えば、ロジックの順序が並べ替えられてもよく、サブステップが並列に実行されてもよく、図示のロジックが省略されてもよく、他のロジックなどが含まれてもよい。
【０１２８】
本開示の範囲のさらなる限定を意図することなく、本開示の実施形態に係る機器、装置、方法及びそれらに関係する結果の例を、以下に示す。なお、それらの例の中で読者の便宜のため、タイトル又はサブタイトルが使用される場合があるが、これによって決して開示の範囲が限定されるべきではないことに留意されたい。他に定義されない限り、本明細書において使用される全ての技術用語及び科学用語は、本開示に関係する当業者によって一般に理解されるものと同じ意味を有する。それらが衝突する場合には、定義を含んでいる本文書によって支配される。
【図１】
2020529689.tif 000003
【図２】
2020529689.tif 000004
【図３】
2020529689.tif 000005
【図４】
2020529689.tif 000006
【図５】
2020529689.tif 000007
【図６】
2020529689.tif 000008
【図７Ａ】
2020529689.tif 000009
【図７Ｂ】
2020529689.tif 000010
【図７Ｃ】
2020529689.tif 000011
【図７Ｄ】
2020529689.tif 000012
【図７Ｅ】
2020529689.tif 000013
【図８】
2020529689.tif 000014
【図９】
2020529689.tif 000015
【図１０】
2020529689.tif 000016
【図１１】
2020529689.tif 000017
【図１２】
2020529689.tif 000018
【図１３】
2020529689.tif 000019
【図１４】
2020529689.tif 000020
【図１５】
2020529689.tif 000021
【図１６】
2020529689.tif 000022
【図１７】
2020529689.tif 000023
【図１８】
2020529689.tif 000024
【図１９】
2020529689.tif 000025
【図２０】
2020529689.tif 000026
【図２１】
2020529689.tif 000027
【手続補正書】
【提出日】令和2年8月11日(2020.8.11)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
データ管理プラットフォームにて、第１のユーザから、第１のデジタルコンテンツを前記データ管理プラットフォームに格納するために受信するステップと、
前記データ管理プラットフォームにて、前記第１のデジタルコンテンツを前記データ管理プラットフォームにおいて定義された複数のコンテンツ型における第１のコンテンツ型にマッピングするステップであって、前記複数のコンテンツ型におけるコンテンツ型のそれぞれは、対応する前記コンテンツ型に関連付けられた複数の属性及び規則を定義するユニバーサルデータスキャフォールドに関連付けられ、対応する前記コンテンツ型に係る前記ユニバーサルデータスキャフォールドは、対応する前記コンテンツ型の任意のデジタルコンテンツを格納するための前記データ管理プラットフォームの複数のユーザ間にわたって同じである、ステップと、
前記データ管理プラットフォームにて、前記第１のコンテンツ型に関連付けられた第１のユニバーサルデータスキャフォールドを引出すステップであって、前記第１のユニバーサルデータスキャフォールドは、前記第１のコンテンツ型に関連付けられた第１の属性のセット及び第１の規則のセットを定義する、ステップと、
前記データ管理プラットフォームにて、前記第１のデジタルコンテンツを分析するステップであって、それによって、前記第１のデジタルコンテンツから、第１の属性のセットの属性値を決定する、ステップと、
前記データ管理プラットフォームにて、前記第１のデジタルコンテンツを前記第１のユニバーサルデータスキャフォールドに関連付けて格納するステップと
を含む、コンピュータに実装される方法。
【請求項２】
前記第１のデジタルコンテンツを前記第１のコンテンツ型にマッピングするステップは、
前記第１のコンテンツ型を、前記第１のユーザによって前記第１のデジタルコンテンツを入力するために使用されるグラフィカルユーザインターフェース（ＧＵＩ）の入力フィールドに基づいて識別するステップであって、前記ＧＵＩの１つ以上の入力フィールドは、コンテンツ型に関連付けられた、ステップ
を含む、請求項１に記載のコンピュータに実装される方法。
【請求項３】
前記第１のデジタルコンテンツを前記第１のコンテンツ型にマッピングするステップは、
前記第１のデジタルコンテンツの初期型を、前記第１のユーザから受信するステップと、
前記第１のコンテンツ型を、前記初期型に基づいて決定するステップと
を含む、請求項１に記載のコンピュータに実装される方法。
【請求項４】
前記第１のコンテンツ型を決定するステップは、
複数のコンテンツ型のオプションを、前記初期型に基づいて生成するステップと、
前記第１のユーザに対して、前記コンテンツ型のオプションのうち１つを前記第１のコンテンツ型として選択するように促すステップと
を含む、請求項３に記載のコンピュータに実装される方法。
【請求項５】
前記第１のデジタルコンテンツを前記第１のコンテンツ型にマッピングするステップは、
前記第１のデジタルコンテンツに関連付けられた１つ以上の前記属性を分析するステップであって、それによって前記第１のデジタルコンテンツが前記第１のコンテンツ型のものであることを決定する、ステップ
を含む、請求項１に記載のコンピュータに実装される方法。
【請求項６】
前記１つ以上の前記属性を分析するステップは、
前記１つ以上の前記属性が１つ以上の前記第１のユニバーサルデータスキャフォールドの属性と一致していることを決定するステップ
を含む、請求項５に記載のコンピュータに実装される方法。
【請求項７】
前記第１のデジタルコンテンツを分析するステップは、
前記第１のデジタルコンテンツから１つ以上の前記属性値を抽出するステップ
を含む、請求項１に記載のコンピュータに実装される方法。
【請求項８】
前記１つ以上の前記属性値に基づいて、前記第１のデジタルコンテンツが前記データ管理プラットフォームに格納された第２のデジタルコンテンツに関係していることを決定するステップと、
前記第１のデジタルコンテンツが前記第２のデジタルコンテンツに関係しているかどうかの確認を前記第１のユーザにリクエストするプロンプトを生成するステップと
をさらに含む、請求項７に記載のコンピュータに実装される方法。
【請求項９】
前記決定するステップは、前記データ管理プラットフォームによって定義される前記第１のコンテンツ型と前記第２のコンテンツにおける第２のコンテンツ型との間の関係に基づいて実行される、請求項８に記載のコンピュータに実装される方法。
【請求項１０】
前記第１のデジタルコンテンツを分析するステップは、
前記第１のユニバーサルデータスキャフォールドに基づいて、前記第１のデジタルコンテンツに対するリクエストセットを生成するステップであって、各リクエストは、第１のユーザに対して、前記第１の属性のセットにおける対応する前記属性の属性値を入力するように促す、ステップと、
前記第１のデジタルコンテンツの第１の属性値のセットを前記第１のユーザから受信するステップと
を含む、請求項１に記載のコンピュータに実装される方法。
【請求項１１】
前記第１の属性のセットは、コンテンツ型属性、フィールド属性、フィールドデータ型属性、フォーマッタ属性、翻訳属性又は関係属性のいずれかを含む、請求項１に記載のコンピュータに実装される方法。
【請求項１２】
前記関係属性は、前記第１のデジタルコンテンツが関係している１つ以上のデジタルコンテンツを示す、請求項１１に記載のコンピュータに実装される方法。
【請求項１３】
前記１つ以上のデジタルコンテンツは、前記第１のコンテンツ型のものである、請求項１２に記載のコンピュータに実装される方法。
【請求項１４】
前記１つ以上のデジタルコンテンツは、前記第１のコンテンツ型とは異なる第２のコンテンツ型のものである、請求項１２に記載のコンピュータに実装される方法。
【請求項１５】
前記第１の規則のセットは、共有規則、セキュリティ規則、通知規則、位置ベースの規則、デバイス固有の規則又は関係固有の規則のいずれかを含む、請求項１に記載のコンピュータに実装される方法。
【請求項１６】
前記共有規則は、前記データ管理プラットフォームの１人以上のユーザと前記第１のデジタルコンテンツを共有するための規則を示す、請求項１５に記載のコンピュータに実装される方法。
【請求項１７】
前記通知規則は、前記第１のデジタルコンテンツに係る通知を生成するための規則を示す、請求項１５に記載のコンピュータに実装される方法。
【請求項１８】
前記位置ベースの規則は、前記第１のデジタルコンテンツに関連付けられた１つ以上の操作を、前記第１のユーザに関連付けられたコンピューティングデバイスの位置に基づいて実行するための規則を示す、請求項１５に記載のコンピュータに実装される方法。
【請求項１９】
前記デバイス固有の規則は、前記第１のユーザに関連付けられた指定のコンピューティングデバイスのための、前記第１のデジタルコンテンツに関連付けられた１つ以上の動作を実行するための規則を示す、請求項１５に記載のコンピュータに実装される方法。
【請求項２０】
前記関係固有の規則は、前記第１のデジタルコンテンツに関連付けられた１つ以上の動作を、前記第１のデジタルコンテンツと指定のデジタルコンテンツとの指定の関係、又は、前記第１のユーザと別のユーザとの指定の関係に基づいて実行するための規則を示す、請求項１５に記載のコンピュータに実装される方法。
【請求項２１】
前記第１のデジタルコンテンツを前記第１のユニバーサルデータスキャフォールドに関連付けて格納するステップは、
前記第１のユーザが前記第１の規則のセットのいずれかに係る値を入力したかどうかを決定するステップと、
前記第１のユーザが前記第１の規則のセットのいずれかに係る値を入力していないという決定に応答して、前記第１のデジタルコンテンツを、前記データ管理プラットフォームによって決定された、前記第１のコンテンツ型に係るデフォルトの値のセットと共に格納するステップと
を含む、請求項１に記載のコンピュータに実装される方法。
【請求項２２】
前記第１のデジタルコンテンツを前記第１のユニバーサルデータスキャフォールドに関連付けて格納するステップは、
複数のデジタルコンテンツをデータストレージシステム内にグラフとして格納するステップであって、前記第１のデジタルコンテンツは、前記グラフの第１のノードとして表され、前記デジタルコンテンツにおける第２のデジタルコンテンツは、第２のノードとして表され、前記第１のデジタルコンテンツと前記第２のデジタルコンテンツとの関係は、前記第１のノードと前記第のノードとの間のエッジとして表される、ステップ
を含む、請求項１に記載のコンピュータに実装される方法。
【請求項２３】
前記第１のデジタルコンテンツを格納するステップは、
複数のデジタルコンテンツを前記データ管理プラットフォームにグラフとして格納するステップであって、前記データ管理プラットフォームの第１の部分は、前記第１のユーザに関連付けられたコンピューティングデバイス上で実行される、ステップ
を含む、請求項１に記載のコンピュータに実装される方法。
【請求項２４】
前記グラフを、前記データ管理プラットフォームの第２の部分を実行するサーバに関連付けられたデータストレージシステムと同期するステップであって、それによって前記複数のデジタルコンテンツを前記データストレージシステムにバックアップする、ステップ
をさらに含む、請求項２３に記載のコンピュータに実装される方法。
【請求項２５】
コンピュータ可読命令を格納しているコンピュータ可読記憶媒体であって、該コンピュータ可読命令が、
サーバにて、複数のデジタルコンテンツを第１のユーザに関連付けられたコンピューティングデバイスにダウンロードすることに係る、前記第１のユーザからのリクエストを受信するための命令と、
前記複数のデジタルコンテンツの少なくともいくつかを前記コンピューティングデバイスにダウンロードするための命令であって、前記ダウンロードすることは、前記複数のデジタルコンテンツにおける複数のユニバーサルデータスキャフォールドをダウンロードすることを含み、前記複数のデジタルコンテンツは、複数のコンテンツ型のものであり、前記複数のコンテンツ型における各コンテンツ型は、対応する前記コンテンツ型に関連付けられた複数の属性及び規則を定義するユニバーサルデータスキャフォールドに関連付けられている、命令と、
前記コンピューティングデバイスにて、前記複数のコンテンツにおける第１のデジタルコンテンツを引出すための命令であって、前記第１のデジタルコンテンツは、第１のコンテンツ型のものであり、前記第１のコンテンツ型は、第１のコンテンツ型に関連付けられた第１の属性のセット及び第１の規則のセットを定義する第１ユニバーサルデータスキャフォールドに関連付けられている、命令と、
前記第１のデジタルコンテンツに関係する前記デジタルコンテンツのセットを、前記第１の属性のセットにおける関係属性に基づいて引出すための命令と、
前記コンピューティングデバイスにて、前記第１のデジタルコンテンツ及び前記デジタルコンテンツのセットのグラフィカル表現を生成するための命令であって、前記第１のデジタルコンテンツは、グラフの第１のノードとして表され、前記デジタルコンテンツのセットは、複数のエッジを介して前記第１のノードに接続されているノードのセットとして表され、前記複数のエッジは、前記第１のノードと、前記関係属性に基づいて決定される前記ノードのセットとの関係を表す、命令と
を含む、コンピュータ可読記憶媒体。
【請求項２６】
前記複数のデジタルコンテンツの前記少なくともいくつかをダウンロードするための命令は、
前記複数のデジタルコンテンツの前記少なくともいくつかを、前記第１のユーザに関連付けられたコンテキストに基づいて選択するための命令であって、前記コンテキストは、前記第１のユーザに関連付けられたリアルタイム特性を含む、命令
を含む、請求項２５に記載のコンピュータ可読記憶媒体。
【請求項２７】
前記複数のデジタルコンテンツの前記少なくともいくつかをダウンロードするための命令は、
前記複数のデジタルコンテンツの前記少なくともいくつかを、前記コンピューティングデバイスの位置に基づいて選択するための命令
を含む、請求項２５に記載のコンピュータ可読記憶媒体。
【請求項２８】
１つ以上のコンテンツ型のデジタルコンテンツのグループを、第２のユーザと共有するためのリクエストを受信するための命令と、
前記１つ以上のコンテンツ型に関連付けられたユニバーサルデータスキャフォールド及び前記デジタルコンテンツのグループに関連付けられたユーザ定義の共有規則に基づいて、前記第２のユーザと共有されるデジタルコンテンツのサブグループを決定するための命令と、
前記サーバに対して、前記第２のユーザに関連付けられた指定のコンピューティングデバイスに転送されるための前記デジタルコンテンツのサブグループを有するメッセージを送信するための命令と
をさらに含む、請求項２５に記載のコンピュータ可読記憶媒体。
【請求項２９】
前記コンピューティングデバイスにて、前記サーバから、指定のエンティティから共有される１つ以上のコンテンツ型のデジタルコンテンツのグループを有するメッセージを、前記コンピューティングデバイスにて受信するための命令と、
前記コンピューティングデバイスにて、前記１つ以上のコンテンツ型に関連付けられたユニバーサルデータスキャフォールドに基づいて、前記デジタルコンテンツのグループを前記第１のユーザに関連付けられた前記デジタルコンテンツにマージするための命令と
をさらに含む、請求項２５に記載のコンピュータ可読記憶媒体。
【請求項３０】
前記指定のエンティティは、別のユーザを、又は、前記第１のユーザの別のコンピューティングデバイスを含む、請求項２９に記載のコンピュータ可読記憶媒体。
【請求項３１】
前記グラフィカル表現内における指定のデジタルコンテンツのユーザ選択を受信するための命令と、
前記指定のデジタルコンテンツの関係属性に基づいて、前記指定のデジタルコンテンツに関係する指定のデジタルコンテンツのグループを決定するための命令と、
前記指定のデジタルコンテンツと、前記指定のデジタルコンテンツのグループの少なくともいくつかを有する修正されたグラフィカル表現を生成するための命令であって、前記指定のデジタルコンテンツのグループの前記少なくともいくつかは、前記指定のデジタルコンテンツに対応する指定のノードに、前記指定のノードと前記グラフ内の前記ノードのセットとの間の関係を表すエッジのセットを介して接続された指定のノードのセットとして表される、命令と
をさらに含む、請求項２５に記載のコンピュータ可読記憶媒体。
【請求項３２】
前記指定のデジタルコンテンツのグループを決定するための前記命令は、
前記指定のデジタルコンテンツのグループを前記第１のユーザに関連付けられたコンテキストに基づいて決定するための命令であって、前記コンテキストは、前記第１のユーザに関連付けられた少なくとも１つのリアルタイム特性を含む、命令
をさらに含む、請求項３１に記載のコンピュータ可読記憶媒体。
【請求項３３】
プロセッサと、
データ管理プラットフォームにて、第１のデジタルコンテンツを第１のユーザから前記データ管理プラットフォームに格納するために受信するように構成された第１のコンポーネントと、
前記データ管理プラットフォームにて、前記第１のデジタルコンテンツを、複数のユニバーサルデータスキャフォールドを使用して前記データ管理プラットフォームによって定義された構造化データフォーマットに変換するように構成された第２のコンポーネントであって、各ユニバーサルデータスキャフォールドは、コンテンツ型に係る複数の属性及び規則を定義し、前記第２のコンポーネントは、前記第１のデジタルコンテンツが対応している、前記複数のユニバーサルデータスキャフォールドにおける第１のユニバーサルデータスキャフォールドを識別するように構成されている、第２のコンポーネントと、
前記第１のデジタルコンテンツから、前記第１のユニバーサルデータスキャフォールドに関連付けられた第１の属性のセットに係る属性値を決定するように構成された第３のコンポーネントと、
前記データ管理プラットフォームにて、前記第１のデジタルコンテンツを前記第１のユニバーサルデータスキャフォールドに関連付けて格納するように構成された第４のコンポーネントと
を含む、システム。
【請求項３４】
前記第２のコンポーネントは、前記第１のデジタルコンテンツに関連付けられたデータを、前記第１のデジタルコンテンツを前記データ管理プラットフォームにおいて定義された複数のコンテンツ型の第１のコンテンツ型にマッピングすることによって前記構造化データフォーマットに変換するように構成されており、前記複数のコンテンツ型における各コンテンツ型は、前記ユニバーサルデータスキャフォールドの１つに関連付けられている、請求項３３に記載のシステム。
【請求項３５】
前記第２のコンポーネントは、前記第１のコンテンツ型に関連付けられた前記ユニバーサルデータスキャフォールドの１つを前記第１のユニバーサルデータスキャフォールドとして引出すことによって、前記第１のユニバーサルデータスキャフォールドを識別するように構成される、請求項３４に記載のシステム。
【請求項３６】
前記第２のコンポーネントは、前記第１のデジタルコンテンツを、ユーザ入力、機械学習技法又は演繹的推論規則のうち少なくとも１つに基づいて前記第１のコンテンツ型にマッピングするように構成される、請求項３４に記載のシステム。
【請求項３７】
第５のコンポーネントであって、
前記第１のデジタルコンテンツに関係するデジタルコンテンツのセットを引出すことであって、前記デジタルコンテンツのセットは、前記第１のユニバーサルデータスキャフォールドにおいて定義された関係属性に基づいて決定される、ことと、
前記第１のデジタルコンテンツ及び前記デジタルコンテンツのセットを有するグラフィカル表現を生成することであって、前記第１のデジタルコンテンツは、グラフにおける第１のノードとして表され、前記デジタルコンテンツのセットは、複数のエッジを介して前記第１のノードに接続されているノードのセットとして表され、前記複数のエッジは、前記第１のノードと、前記関係属性に基づいて決定される前記ノードのセットとの関係を表す、ことと
を行うように構成された第５のコンポーネントをさらに含む、請求項３３に記載のシステム。
【国際調査報告】
2020529689.tif 000028