Specification
OES is a versioned JSON document, validated with JSON Schema, with optional attached CSV / Parquet / HTML / PNG artifacts. JSON Schema is a good fit because it already defines Core and Validation specs for describing and validating JSON documents.
The key design principle: separate what was planned, what happened, how it was analyzed, what was concluded, and what should be shown to humans.
Top-level structure
{
"schemaVersion": "0.1.0",
"objectType": "experiment",
"experiment": {},
"design": {},
"variants": [],
"metrics": [],
"analysis": {},
"results": {},
"scorecard": {},
"decision": {},
"qualityChecks": [],
"artifacts": [],
"provenance": {},
"extensions": {}
}Sections
- /spec/envelopeSection 1Envelope and standard metadata
Portability and version safety for the document itself.
- /spec/identitySection 2Experiment identity and documentation
The human-facing context that makes a result meaningful later.
- /spec/designSection 3Design and protocol
The intended experimental design — not just what happened to be measured.
- /spec/variantsSection 4Variants
Each variant — independently identifiable, documentable, and presentable.
- /spec/metricsSection 5Metric definitions
Snapshot metric identity AND calculation — definitions change.
- /spec/analysisSection 6Analysis configuration
How the scorecard was computed — reproducibility starts here.
- /spec/resultsSection 7Results
Machine-readable, granular, and per-metric — not just an overall summary.
- /spec/scorecardSection 8Scorecard
A curated, presentation-ready view — not a dump of every metric.
- /spec/decisionSection 9Decision record
Experiments fail as institutional memory when the result exists but the decision does not.
- /spec/qualitySection 10Quality checks
Trust checks as a first-class part of the standard.
- /spec/provenanceSection 11Data lineage and provenance
What allows another system to trust — or reproduce — the result.
- /spec/artifactsSection 12Artifacts and package format
Charts, CSVs, SQL, notebooks — bundled or linked.
Conformance summary
- Conforming documents MUST set
schemaVersionandobjectTypeand SHOULD validate against the published JSON Schema for that version. - Importers MUST safely ignore unknown fields and unknown
extensions.*namespaces. - Producers SHOULD snapshot metric definitions and code versions into the document — references alone are not sufficient because those references change over time.
- Quality checks SHOULD be included whenever the producing system knows their result; absence of a check is not the same as a passing check.