AXIOM|
LayerOverwatchLocusCodex
Ontology crosswalk

Axiom Events Timeline — Ontology Crosswalk

Schema: schemas/events-timeline/v1.0.md Target standards: W3C PROV-DM (primary), schema.org/Event (secondary), DCAT-US v3.0 (dataset-level) Authority: W3C (PROV-DM, schema.org), U.S. Dept. of Commerce (DCAT-US) Status: FAIR-aligned, Level 3 DCAT-US conformance Dataset SPDX license: CC-BY-4.0 (research) · proprietary commercial license for paid tiers


1. Why this pairing

The Events Timeline is a provenance-heavy dataset — every row represents a real-world activity with a cause-effect chain via metadata.related_event_ids (schema §8). W3C PROV-DM is the canonical vocabulary for activity graphs, making it the natural primary target. schema.org/Event is the consumer-facing complement that gets JSON-LD-shaped records into Google / Bing / enterprise semantic indexes.


2. Dataset-level (DCAT-US v3.0)

DCAT-US field Value
dct:identifier urn:axiom:codex:dataset:events-timeline:v1.0.0
dct:title "Axiom Events Timeline Dataset"
dct:description "Unified, normalized event stream spanning maritime, civic, regulatory, environmental, economic, and risk signals with cascading cause-effect linkage."
dcat:keyword ["events", "timeline", "provenance", "cascade", "maritime", "civic", "regulatory"]
dcat:theme ["http://publications.europa.eu/resource/authority/data-theme/ECON", "...GOVE", "...ENVI"] (multi-theme)
dct:temporal derived from MIN(started_at) / MAX(started_at)
dct:accessRights tiered: PUBLIC (research) / RESTRICTED (commercial+)
dct:license https://creativecommons.org/licenses/by/4.0/ (research)

3. Record-level crosswalk — PROV-DM (primary)

Each Events Timeline row IS a prov:Activity. Cascade chains via metadata.related_event_ids translate naturally into prov:wasInformedBy edges.

Codex field PROV-DM term Notes
id prov:Activity IRI Serialized as urn:axiom:event:{uuid}
event_type prov:type Dotted namespace → preserved as string
event_category prov:category (extension) maritime, civic, etc.
started_at prov:startedAtTime Required for every activity
resolved_at prov:endedAtTime Null = still in progress
entity_id prov:used or prov:generated An Entity IRI referenced by this Activity
entity_type target of prov:wasAssociatedWith Vessel / parcel / permit / etc. maps to prov:Entity class
source prov:wasAssociatedWith Points to the prov:Agent = ingest pipeline
source_ref prov:hadPrimarySource Source-native reference
metadata.related_event_ids[] prov:wasInformedBy Core cascade linkage
downstream_outcome prov:wasInfluencedBy (reverse) Forward pointer to effect events
confidence Codex extension (axiom:confidence) No PROV-DM slot
magnitude Codex extension (axiom:magnitude) Polymorphic unit

3.1 Example PROV-DM JSON-LD for a dark event

{
  "@context": [
    "https://www.w3.org/ns/prov.jsonld",
    {"axiom": "https://axiomcodex.io/ns/v1/"}
  ],
  "@id": "urn:axiom:event:c5a8e4f2-9b7d-4c1e-b3a5-1f2d8c0e7a93",
  "@type": "prov:Activity",
  "prov:type": "dark_event",
  "axiom:eventCategory": "maritime",
  "prov:startedAtTime": "2026-03-14T18:02:00Z",
  "prov:endedAtTime": "2026-03-17T06:11:00Z",
  "prov:used": {
    "@id": "urn:aprs:record:maritime:vessel:9432871",
    "@type": "prov:Entity",
    "prov:type": "vessel"
  },
  "prov:wasAssociatedWith": {
    "@id": "urn:axiom:agent:kinematic-fingerprints/1.2.1",
    "@type": "prov:Agent"
  },
  "prov:wasInformedBy": {
    "@id": "urn:axiom:event:c09a3d41-22ff-4aef-bc8c-d61e1a9f2e5d"
  },
  "axiom:confidence": 0.94,
  "axiom:magnitude": 60.15,
  "axiom:magnitudeUnit": "hours"
}

4. Record-level crosswalk — schema.org/Event (secondary)

For consumer-facing / SEO-facing distributions, Codex emits a parallel schema.org/Event view.

Codex field schema.org
id Event.identifier
event_type Event.additionalType
event_category Event.eventAttendanceMode (repurposed) or custom Event.categorization
entity_name Event.about.name
location Event.location.Place.geo.GeoCoordinates
location_name Event.location.Place.name
started_at Event.startDate
resolved_at Event.endDate
source_uri Event.url
source_system Event.recordedIn.Dataset.name
product Event.isPartOf.Product.name
metadata.related_event_ids[] Event.superEvent / Event.subEvent (directionally assigned)

schema.org does not have semantic slots for confidence, magnitude, downstream_outcome, or outcome_lag_days. These are published under the axiom: namespace alongside the schema.org view.


5. Cascade graph as PROV-DM

The metadata.related_event_ids array is the single most important semantic feature of this dataset. PROV-DM models it natively:

  • A cascades to B → in PROV-DM, B prov:wasInformedBy A
  • A generates entity E, B uses EA prov:generated E + B prov:used E

Both patterns are emitted in the JSON-LD distribution. Consumers running a SPARQL endpoint over the JSON-LD can traverse cascades with:

PREFIX prov: <http://www.w3.org/ns/prov#>
PREFIX axiom: <https://axiomcodex.io/ns/v1/>

SELECT ?downstream ?lag
WHERE {
  ?rezoning a prov:Activity ;
    prov:type "council.approved" ;
    prov:startedAtTime ?t0 .
  ?downstream prov:wasInformedBy ?rezoning ;
    prov:type ?type ;
    prov:startedAtTime ?t1 .
  BIND((?t1 - ?t0) AS ?lag)
  FILTER(STRSTARTS(?type, "permit."))
}
ORDER BY ?lag

Equivalent to the SQL example in v1.0.md §9.1, but over the JSON-LD surface.


6. FAIR compliance

Principle Status Evidence
Findable Every event gets urn:axiom:event:{uuid} + DCAT-US catalog entry
Accessible Parquet + JSON-LD over HTTPS; MCP server surface
Interoperable PROV-DM + schema.org + DCAT-US all emitted side-by-side
Reusable SPDX license, versioned schema, documented deprecation policy

DCAT-US v3.0 conformance level: 3

PROV-DM conformance: Core classes (Activity, Entity, Agent) + core relations (used, generated, wasInformedBy, wasAssociatedWith, hadPrimarySource, startedAtTime, endedAtTime). PROV-O (OWL layer) is compatible but Codex does not publish OWL axioms — the data is meant for traversal, not reasoning.


7. Deviations

  • entity_id is polymorphic across entity_type (see schema §4). In PROV-DM we always wrap in a prov:Entity IRI; the prov:type on that entity disambiguates.
  • magnitude has polymorphic units (schema §5). We publish axiom:magnitude as a raw float and axiom:magnitudeUnit as a unit string derived from event_type. Consumers should not compare magnitudes across types without consulting the unit field.
  • PROV-DM has no "confidence" slot. confidence is a Codex extension, not a PROV-DM term. This is consistent with how DCAT / PROV traditionally handle quality metrics (they're out of scope).
  • downstream_outcome is a denormalization of what PROV-DM would express as a reverse wasInformedBy. Retained for query ergonomics — the full graph is available via the cascade chain.

8. Changelog

  • v1.0 (2026-04-16) — Initial crosswalk. PROV-DM primary, schema.org/Event secondary, DCAT-US at dataset level.