Accounts, Sites, Spaces, Profiles, Contacts, oh my!

    We have a variety of overlapping and confusing concepts. Here I'll briefly attempt an explanation of the current state of things. We can then discuss and iterate

    Account

      The most commonly-used term. An account always has a key, which is used to derive the account ID (public key).

      An account is sometimes a person, company, or device

    Site

      Generally used to refer to the Account + the documents that the account owns. It is logically equivalent to the "website", which represents the authority as well as the content on a particular domain.

    Space

      Usually means the same as Site but it is not formally defined.

    Profile

      The public information about an account that has been published. You can publish a Profile with a name, icon, and other metadata.

      Redirect Profile

        In the case of a device account, the profile is a redirect to the main account which is used to identify this person/company.

        Basically a redirect profile is used to say "this account is really this other account"

        Note: a redirect document may also be published, but this is a distinct concept from Redirect Profiles.

    Contact

      A contact is a relationship between two accounts. It is a publishable resource with an ID. It stores the "edge name" of the person.

      So, Alice may publish a Profile with the name "Alice A." and Bob might publish a Contact with the name "Good Alice", to differentiate with other Alices.