Object

An Object is anything with identity that the force needs to track in the battlespace. Examples include platforms, units, facilities, equipment, personnel, events, control measures, signals, and other operationally relevant things.

The Object schema is intentionally flexible. Producers populate the fields they know and omit fields that are unknown or irrelevant for that object. Different object types naturally use different subsets: a vessel may include maritime identity, position, motion, dimensions, and assessment, while a facility may include location, dimensions, and assessment without motion.

Core Shape

Area Purpose

Identity

id, name, identities, and external_refs tie the Object to source systems and other tactical formats.

Position and movement

location, motion, shape, orbital state, and track metadata describe where the Object is and how it is moving.

Tactical context

assessment, status, symbology, targeting data, and warfighting functions describe operational meaning.

Domain-specific data

type_info holds maritime, aviation, ground, orbital, signal, CBRN, weather, and EW-specific fields.

Trust and handling

security, provenance, and replication metadata preserve classification, source attribution, and mesh state.

Required Discipline

Every publish should include provenance.updated_at. An Object may include an id; if it does not, the service can generate one.

Populate strongly typed fields before using details. Avoid default or placeholder values for data you do not actually have, because downstream consumers may treat those values as confirmed facts.

Lifecycle

Object lifecycle is carried by ObjectStatus.

Status Meaning

OBJECT_STATUS_ACTIVE

The Object is part of the active operational picture.

OBJECT_STATUS_INACTIVE

The Object is retained for historical or reference use but is not actively tracked.

OBJECT_STATUS_DELETED

The Object has been removed from the active picture.

Service Surface

Use Publish to create, update, or delete Objects. Use Search for paginated snapshot queries and Get to retrieve a single Object by ID. Use Stream when consumers need initial state plus live changes.