4D-ID™ = Persistent spatial identity

One name for
everything real.

Maps, robots, XR systems, scans, and digital twins create different representations of the same world. Once an entity is grounded, 4D-ID gives it a persistent identity that survives different coordinate systems, representations, vendors, and time.

See the demos → See the live resolver reference resolver v2.3 · 15 schema-level checks passing · functional conformance continues
One persistent identity connects different views of the same thing.
Different systems. The same thing.

Shared identity, not another coordinate system

Grounding determines what thing an observation refers to. Localization determines where it is. 4D-ID preserves which thing it is across systems, representations, frames, and time. Different systems keep their own maps, coordinates, and internal IDs while resolving the same persistent entity.

Identity

One persistent referent

A grounded physical or virtual entity keeps one identity while pose, state, representations, and observations change.

Resolve & reconcile

Find the same thing again

Resolve aliases across systems; preserve relationships, representations, provenance, history, and authorized merge or split corrections.

Interoperate

Native systems stay native

ROS frames, Niantic anchors, OpenXR entities, scan segments, and BIM objects remain native and can attach to the same 4D-ID.

4D-ID does not replace perception or localization. It gives the entities those systems observe a shared identity they can resolve.

A UUID provides uniqueness. 4D-ID adds standardized aliases, resolution, hierarchy, representations, state and time, provenance, merge/split lifecycle, and historical continuity.

Ground first. Identify second.

4D-ID starts where perception and existing data systems leave off. An entity may be grounded from a BIM, GIS, CMMS, MLS, device ID, or asset database; from detection, segmentation, tracking, or re-identification; from human annotation; or from a grounding service such as SEGS.

01Observe

Scans, cameras, BIM, GIS, robots, registries, or people supply evidence.

02Ground

An upstream process determines the referent and supplies spatial context.

03Identify

Resolve an existing entity first; mint only when no acceptable match exists.

04Resolve

Look up the identity, aliases, state, relations, representations, and history.

05Interoperate

Robots, XR, AI, twins, and maps share the referent, not one coordinate frame.

Observation ≠ identity
Niantic anchor_923
ROS track_47
XGRIDS segment_108
BIM GUID_882
        ↓ grounding / reconciliation
4did:...DOOR17

Detections, tracks, anchors, and scan segments are evidence. They remain native to their systems and can become aliases or supporting observations for one grounded entity.

Adjacent service

Spatial Entity Grounding Service (SEGS)

SEGS turns observations into grounded entity hypotheses: detect or segment → classify → track or re-identify → localize in 3D → match known entities → mint or resolve a candidate 4D-ID.

SEGS is an implementation pattern adjacent to 4D-ID, not part of the core candidate standard.

4D-ID does: persistent identity, aliases, resolution, relationships, representations, state and time, provenance, merge/split lifecycle, history, and cross-system reconciliation.
4D-ID does not: object detection, segmentation, SLAM, VPS, localization, geometric registration, rendering, robot navigation, or grasp planning.

The live reference resolver

Behind this site runs a real 4D-ID resolver you can query right now. It is read-only: you can look identities up, but you cannot create them here, so the try-it demos above create identities in your own browser instead. Below are the calls the resolver answers.

The four-call quickstart

# liveness
curl -fsS $BASE/health
# resolve an external identifier to a 4D-ID (sample facility)
curl -fsS "$BASE/resolve?registry=asset.register&external_id=TB-WH-01"
# bounded, agent-ready context envelope
curl -fsS "$BASE/entity/<4did>/context"
# deterministic state snapshot
curl -fsS $BASE/snapshot

Note: resolve is a lookup, not a mint. It finds an identity already registered in that resolver. The sample facility registers asset.register / TB-WH-01; the globe demo creates separate browser-only sandbox records.

REST surface

OperationRouteNotes
resolveGET /resolveexternal id or 4D-ID to locator + snapshot
entityGET /entity/:ididentity card + relations
stateGET /entity/:id/statecurrent or ?at= record
relationsGET /entity/:id/relationstyped, confidence-filtered edges
representationsGET /entity/:id/representationsranked by ?purpose=
contextGET /entity/:id/contextbounded envelope for agents
query / listPOST /query · /listfilter by cells, layer, class
eventsPOST /eventsevent-class records
watchGET /watchchanges since a generation
snapshotGET /snapshotzone generations + reference time
GET read-onlyPOST /ingest blockedJSON Schema 2020-12OpenAPI 3.115 schema-level checks passing

Built on what already works

4D-ID is a candidate identity layer that composes with existing standards and native systems; it replaces none. Adapters translate native identifiers and grounded records into 4D-ID references only where implementation code exists.

OGC GeoPose & DGGS · ISO 8601 · ROS tf2 · VDA 5050 · ETSI Local Dynamic Map · OpenXR · glTF · MCP

Why a shared name is the missing layer →

An addressable world across connected spatial layers.

The ideas behind
the identity.

Eight essays on grounding, shared identity, resolution, AI, and practical adoption.

Explore the writing ↗