Hosted onhyper.mediavia theHypermedia Protocol

Normalized Data Shape

    On the frontend team we are designing the new normalized data structure, which is how the client will organize all data that is received from the API

      Account

        [Account_ID]

          Paths

            [Path] - empty string for home docs, /[TSID] for CCC, and /human/readable for children docs

              when type: Document

                latestVersion: [cid1.cid2]

                mentions array:

                  resource: [AccountID+Path]

                  mention metadata?

                comments array:

                  [Resource: AccountID+Path]

                activity: TBD - cache the activity events about this specific resource

                search: TBD - cache search results when your search is narrowed to this resource

              when type: Comment

                latestVersion: [cid]

                mentions array:

                  resource: [AccountID+Path]

          Profile

            latestCid: [cid]

      search - used to cache search results when searching the whole node

      activity - cache the node's global activity events

        will reference the Path Resources: [AccountID+Path] or the Profile: [AccountID]

      Immutable

        [CID]

          when a document change:

            State - the current state

              Metadata

              Content

            Blob Data (as it saved in IPFS)

          when a comment, cap, contact, profile:

            Blob Data (as it is saved in IPFS)

            Metadata? If only used if the full blob data is not loaded

        [CID1.CID2]

          for document versions only

          State - if this is a document version

            Metadata

            Content