Rendered from docs/obligations/0052-a-document-has-no-identifier-and-every-relation-target-must.md in the Headwater corpus. Every document on this half of the site is typed by the taxonomy the descriptor names: corpus.json.

A document has no identifier, and every relation target must be one

Context

Spec 3 reserves identifiers for decisions, requirements, acceptance criteria, controls and obligations. A document is none of those, so neither the base package nor the design-spec entry gives one to a document. Q4 rules that a relation target is an identifier and never a path.

Obligation

The typing pass minted four schemes in this repository's overlay before it could declare one edge, and every adopter meets that wall.

Discharge

Either a document carries an identifier by default, or a target may be a path and the corpus pays for a rename. Nothing in the engine can choose between the two.