Every private-public key pair has a Site in the Hypermedia Data Model. The site is identified by its public key, and as a URL it looks like this:
hm://z6MkqcG5f6xTfivFPxkiwqoddJwGAuBw9qUpz7cuy55An7i6
A Site is a hierarchal collection of Documents, where each Doc is represented by a unique path name.
By default, a Site can only be edited by creating Immutable Signed Data signed with the corresponding private key, but that can be expanded by granting Capabilities.
Site Organization
Each Document in the site has a Path, which is used to describe a hierarchy of pages. For example:
Path "" - The Home Document
Path /protocol - A page that will appear at https://hyper.media/protocol
Path /protocol/data-model - A child of the /protocol Document, which will appear at https://hyper.media/protocol/data-model
Home Documents
There is a special Document for each site with an empty path (""). This is used as the "profile" or "home page" for that Site.
The metadata on the Home Document is used to describe the site. The Site's name and icon is defined as the name and icon of the home document.
Site URL
The Home Document has a special metadata field called siteURL which specifies what HTTPS URL you may use to load the site on the web. This metadata is relevant because the data for the site may have loaded over the Peer-to-Peer network.
For example, the Home Document of this Site has the metadata siteURL = https://hyper.media