Globodex Specification

Event Data
Standard

A shared language for describing what happens in the world: where, when, and why it matters. EDS gives AI agents and media systems a common way to discover, verify, and reason about real-world events.

Version
V 0.1
Scope
Events · Entities · Media · Trust
Published by
Channel 1
Learn more

EDS is a specification that describes events — things that happen at a specific time and place — and links them to verifiable media assets like video, audio, images, and text.

How it works

One schema for everything that happens.

At its core EDS defines a single portable object — the event — capturing what happened, where, when, and what evidence exists for it.

1

What happened, bounded.

Every event carries temporal bounds with their uncertainty, a spatial footprint rather than a pin, and a classification saying what type of thing it was.

2

Assets that can be checked.

Video, photos, audio and text dispatches attach to the event, each with its own provenance chain and a cryptographic hash for tamper detection.

clip_0412.mp4sha256:9f2a…c41e ✓
still_88a.jpgsha256:4b71…08da ✓
amb_07.wavsha256:c0e5…71bf ✓
dispatch.txtsha256:1d83…9a02 ✓

3

Events connect to each other.

Every link between two events carries a type, a direction and a weight. Sequences can be replayed, causal claims traced, and a contradiction kept rather than quietly resolved.

The result is a structured, queryable, verifiable record of what is happening in the world — readable by a newsroom, an analyst, and an autonomous agent without translation between them.

Why it exists

Event data is fragmented, unverifiable, and siloed.

Every newsroom, sensor network, and AI agent describes the world differently. EDS is the description they can share, with the evidence and rights still attached.

What a machine needs
Today
With EDS
One shape across sourcesThe same event arrives in as many shapes as it has sources, and reconciling them is hand-work.
✕
✓
Time and place it can trustTimestamps without bounds; locations without geometry or uncertainty.
✕
✓
Provenance that survives the copyMedia arrives detached from where it came from and who may use it.
✕
✓
Relations it can traverseDuplicates, contradictions and causal claims are lost in prose.
✕
✓

Every producer already describes events. EDS is the part they can agree on.

One object → four layers → a graph

Architecture

Four storage layers. One progressive record.

Raw media enters at the bottom and is progressively enriched: extracted into metadata, embedded into vectors for semantic search, and finally linked into a knowledge graph. Nothing is discarded on the way up. Queries enter at the top and read down.

Graph databaseentities · events · relationsVector storageembeddings · similarityMetadata storagetime · place · classificationL0L1L2L3Object storagevideo · audio · images · textanalyzeembedextractingest layer
Ingest

Nothing moves after it lands.

Nothing is interpreted yet. Files are written once and hashed, never rewritten, so every claim made higher up traces back to bytes that have not changed.

Interpretation comes later, so it can be redone without disturbing the evidence.

object storage
Extract  ↑

An asset becomes joinable.

Time resolves to a bounded interval, location to a geometry, subject matter to a classification against a published taxonomy. Provenance and rights are recorded as fields, not notes.

Fields can be matched across sources. Notes cannot.

object → metadata
Embed  ↑

Metadata becomes searchable by meaning.

Structured fields and the assets themselves are embedded as vectors, so retrieval works on similarity. Two records describing the same kind of thing in different words sit near each other.

You find the record you meant, not the one that matched your words.

metadata + objects → vectors
Analyze  ↑

The record becomes a graph.

Candidate relationships are proposed, weighted and sourced, then written as typed edges: sequence, cause, identity, contradiction.

Every edge keeps its confidence and its author, so the graph can be audited, never merely trusted.

vectors → knowledge graph

Event model

Anatomy of an event.

This is the field reference: what each part is called and what goes in it. Which fields a record must carry depends on the conformance level it claims, set out in the table below.

01 · Identity

Which rules apply, and what to call this.

schema pins the version to validate against; id is a ULID, so chronological order survives a plain text sort. status declares the kind of claim — observed, reported, scheduled, disputed.

Reported and observed are not the same epistemic act. Absent status defaults to the weaker one.

identityeds-0.1
"schema": "eds-0.1",
"id": "evt_01HZYR4E…",
"status": "observed"
02 · Time

When, and how sure.

An interval, never an instant. An ISO 8601 range, so the whole span is one value. uncertainty carries a separate duration for each bound: how far the start might be wrong, and how far the end might be.

Required from L1. A bare instant with no uncertainty is invalid, not approximate.

timeeds-0.1
"time": {
  "interval": "…T17:02Z/…T19:40Z",
  "uncertainty": { "lower": "PT5M", "upper": "PT2M" }
}
03 · Place

Where, as an area.

GeoJSON geometry: a Point only where a point is genuinely what happened, otherwise a line or polygon. spatial_index carries an H3 cell so proximity queries skip the geometry maths.

The index is derived. If it disagrees with the geometry, the geometry wins.

placeeds-0.1
"place": {
  "geometry": { "type": "Polygon", "coordinates": [] },
  "spatial_index": { "h3": { "res7": ["87283082affffff"] } }
}
04 · Classification

What kind of thing happened.

type comes from a closed core list so cross-producer counting is possible; subtype is open and extensible, which is where domain vocabulary belongs.

Closed at the core, so counts compare across producers. Open at the subtype, so no domain has to flatten itself to fit.

classificationeds-0.1
"classification": {
  "type": "public_protest",
  "subtype": "march"
}
05 · Provenance

Who says so, and how they know.

collection_method separates witnessed, sensor, derived and reported. source_confidence is the producer’s own estimate in this record.

Source confidence is a self-report. Its value is that it is attributable, not that it is objective.

provenanceeds-0.1
"provenance": {
  "created_by": "org:channel1",
  "collection_method": ["mobile_uploads", "wire_service"],
  "source_confidence": 0.86
}
06 · Trust & rights

Whether it holds, and whether you may use it.

verification_state records the outcome of checking and signals what was checked. rights is a sibling of trust, not a field inside it: licence, consent and restrictions travel on the record, because a permission held elsewhere has already failed the only test that matters.

unchecked is not failed. Absent and negative mean different things here.

trust rightseds-0.1
"trust": {
  "verification_state": "unchecked",
  "signals": []
},
"rights": {
  "license": "CC-BY-4.0",
  "restrictions": ["no_face_recognition"]
}

Conformance

Start with what you know. Make completeness explicit.

Not every source can provide every field on day one. Conformance levels let producers contribute useful event data immediately without overstating what is known. A record that claims a level and omits a field that level requires is not demoted to a lower one. It is invalid.

L0

Minimal

Schema version, event ID, status, and summary.

Something happened
L1

Localized

Adds temporal bounds and a spatial footprint.

Anchored in the world
L2

Complete

Classification, provenance, rights, trust, entities, and assets.

Production ready
L3

Verified

Cryptographic content-authenticity manifests attached.

End-to-end proof

Relations

Four families of relation. Every one directional and weighted.

EDS defines four categories of relation between events, and nothing outside them.

Temporalsequence and co-occurrence
precedesfollowscoincides_with
Causalcause, effect, and correlation
causescaused_bycorrelates_with
Structuralhierarchy and composition
withinpart_ofsuperset_of
Identitydeduplication and contradiction
same_assupersedescontradicts

Relations are directional, weighted, and sourced. They let systems reconstruct sequences, trace causal claims, distinguish duplicates, and preserve contradictions.

Principles

Small core. Verifiable by default.

01

Small core, rich extensions

Keep the portable event object readable. Put domain-specific complexity in governed extensions.

02

Standards-native interoperability

Use JSON, GeoJSON, ISO 8601, H3, JSON-LD hooks, and established content-authenticity systems.

03

Verifiability by default

Treat provenance, hashing, corroboration, and verification as part of the record — not optional decoration.

04

Safety and rights first

Keep licenses, consent, restrictions, and sensitivity machine-readable at every downstream use.

05

Predictable evolution

Version explicitly, publish migrations, and give integrations time to adapt to breaking changes.

The standard

One shape for what just happened.

EDS gives agents and media systems a common, verifiable way to describe real-world events, so intelligence moves between them without losing its sources. If your systems move event data, we want to hear from you.

Talk to us