MD

Placement

canonical/placement.md

Placement

Purpose

A Placement describes the position or arrangement of another structure.

Placements may be used to define available placement types or to describe a specific placement.

The Canonical Data Model defines the structure of a Placement. The recognized Placement types are fixed by layout.md (see below).

---

Structure

A Placement consists of:

The interpretation of content is determined by type.

---

Characteristics

---

Recognized types: carry and field

The recognized Placement types are carry and field. This is a closed set — Elonn has
exactly two layers, and no Placement type creates a third. See layout.md.

- carry — the Object is placed on Carry, the non-geographic layer. Objects opened from
Findings, Dashboards, and other interactions are placed on Carry unless they are explicitly
placed on Field.
- field — the Object is placed on Field, the geographically restrained layer. Its placement
is anchored to surrounding reality.

content carries:

The canonical model defines only the meaning of each type, not how a Runtime presents an Object
on that layer.

Content with no Placement

Content returned without a Placement is not on a layer. When World composes such content into
the Results pane it records it explicitly in the World Dataset's findings list (see
finding.md, layout.md) — the Results pane is an interface structure associated with Entry
and presented on Carry, not itself a layer. A Runtime reads the findings list; it does not
treat every unplaced entity as a Finding. Focusing a Finding places the Object it references
on Carry.

Canonical structures produced by interpreting a source format (see html.md) are returned
without a Placement. Interpretation never emits a Placement; document order and visual
arrangement in the source carry no placement meaning.

window and workspace are not Placement types

window and workspace are not Placement types and not layers. They are noncanonical
presentation terms. A Runtime may present an Object on Carry as a panel, card, or movable
window; that presentation choice is not a Placement. See layout.md and the glossary.

Example of an instance:

{
"id": "placement:social.conversation:42:carry",
"type": "carry",
"content": {
"object": "social.conversation:42"
}
}

Meaning:

The conversation Object is placed on Carry. A Runtime decides how it is presented — and
navigation within it, including its navigation history and back step, belongs to the Object
(see layout.md, Object navigation).