Definitions
Every term the Stem specification uses, with a one-line meaning and a link to the page that defines it, whether that page is a Stem definition, a Stem schema, or an unchanged concept page on the official documentation site.

Part of Stem. Every word the specification relies on is defined exactly once. Terms Stem introduces have their own definition page or schema page here; terms Stem leaves unchanged link to the official documentation.

Identity and data

Term

Meaning

Defined at

blob

A signed DAG-CBOR value named by its CID. Unchanged.

Signed blobs

principal

A public key in its byte form; an account or device identity. Unchanged.

Principal

CID, timestamp, signature

The content identifier, the millisecond timestamp and the signature of a blob. Unchanged.

CID, Timestamp, Signature

resource

A mutable thing with a stable identity, rebuilt from blobs.

Resource

node

The identity and placement record of a resource; the same thing as the resource seen from the blob side.

Node

node id

The stable id of a node: the CID of the Node blob that created it (bafyrei…), carried by every later Node blob for the node and used in the mutable URL hm://<owner>/<nodeId>.

Node id

space

An account's namespace: the node tree under its space root.

Space

space root

The one node of a space whose creating Node blob is deterministic from the owner's key; owner-only; carries the profile attributes and the home document; hm://<owner> is its alias.

Space kind

kind

The definition of a resource type: state representation, schema, naming, access mode, retention, links.

Kind

state

The current value of a resource, computed from the targets of its Node blobs.

State

version

An immutable reference to one state: the sorted head CIDs or the Snapshot CID.

Version

Node blob

The signed blob that declares a resource's identity, kind, placement, state target, causal position and access mode.

Node

target

The state declaration inside a Node blob: heads, snapshot, tombstone or redirect.

Node target

Change

A signed delta in a document's CRDT graph. Layout unchanged.

Change, library Change

Snapshot

A signed blob holding the complete state of a resource.

Snapshot

block, file

The content tree inside a document, and UnixFS data. Unchanged.

Blocks, Files

schema

A Hypermedia Schema value; the meta-schema describes itself. Unchanged.

Schema

Placement and addressing

Term

Meaning

Defined at

placement

A node's parent and name; the placement tree is for naming and addressing only.

Placement

name

A node's relative name inside its parent: one path segment.

Name

path, pretty path

A slash-joined chain of names from the root; derived, never identity.

Path

node reference

A space, a node id and an optional version, naming a resource wherever a link, redirect or policy needs one.

Node reference

hm:// URL

The address grammar. Unchanged except that a first segment holding a node id (bafyrei…) addresses that node, and the n parameter carries the node id beside a pretty path.

URLs, Path

redirect

A Node target that sends readers to another node.

Redirect target

tombstone

A Node target that deletes the resource while keeping its id taken.

Tombstone target

Authority and audience

Term

Meaning

Defined at

grant

A signed statement that an audience holds an access level over a subject.

Grant

access level

One of sync, read, write, admin, in that order.

Access level

subject

What a grant covers: a node with or without its subtree, or a group.

Subject

audience

The set of principals a grant speaks about: everyone, a key, a group, a bearer secret, or the readers of a node.

Audience

readers

The computed set of principals that may read a node.

Readers

access mode

How a node derives its readers: inherit, own or target.

Node access

group

A permanode whose members are the holders of live grants on it.

Group

revocation

A signed statement that cuts a grant.

Revocation

authority graph

The grants and revocations of a space, evaluated in two passes.

Authority graph

proof

The grant a blob relies on for its authority; a hint for fetching, not an input to evaluation.

Proof

owner

The account whose key is the space; a permanent admin of the space root and so of every node under it.

Space

Sync and bookkeeping

Term

Meaning

Defined at

scope

What a sync conversation is about: a space, a node, a depth and a set of facets.

Scope

scope set

The blobs a peer holds for a scope that the requesting peer may read.

Scope set

policy

An account's sync rules, a Snapshot resource shared among its devices.

Policy kind, Policy rule

peer, peer id

A device connection on the network, identified by a libp2p key that never signs content.

Peer id, Network

authority peer

A peer that holds write, admin or sync on a space, or is its declared site.

Authority peer

trusted peer

A peer of an account the local account has joined, or that holds a grant from it.

Trusted peer

site

A peer that publishes a space on the web under a relationship signed by both sides.

Site

transfer

One batch of blobs received from a peer under a claimed scope, with per-blob verdicts.

Transfer

disclosure

One blob served to a peer, with the basis that allowed it.

Disclosure

basis

Why a serve was allowed: public, a grant, a bearer secret, a site relationship, or an offer in progress.

Basis

range-based set reconciliation

The fingerprint-and-split comparison of two sorted sets. Unchanged.

Network, Range

Indexing

Term

Meaning

Defined at

handler

The one indexing routine every blob passes through, driven by kind descriptors.

Handler

link

A derived, typed edge from a blob to a blob or a resource.

Link, Link kind

fact

An indexed statement about a resource, marked signed or derived.

Fact

stash

A stored blob not yet applied because a dependency or a grant is missing. Unchanged.

Glossary

HM24

The protocol that ships today, with path-keyed Refs and Capabilities.

The Hypermedia Protocol

Words Stem does not use

Stem pages do not say Ref, capability, visibility, generation, named root, inode, permission, subscription, discovery or Bitswap except when describing HM24. The replacements are Node, grant, audience and readers, prev, resource, node id, access level, policy rule, Sync and Fetch.

Do you like what you are reading? Subscribe to receive updates.

Unsubscribe anytime