Provenance
Every value in a Dataset names its Source and three times, so a buyer reads where a value came from and when it was true, and cites it.
Provenance is where a value came from and when it was true. Every value in a Dataset carries both, so a buyer can check it, cite it and reproduce it.
Three times
Each record carries three times, because each answers a different question.
| Field | Answers |
|---|---|
observedAt | When the fact was true |
publishedAt | When the Source published it |
refreshedAt | When the Dataset last read that Source |
A rate read an hour ago from a bulletin published last month is a fresh read of an old fact. Buyers filter on the time that matters to them: a checkout on observedAt, an auditor on publishedAt.
The Source of every value
Every value names the Source it came from and, for a wrapped Source, the terms it was read under. A value two Sources disagreed on also keeps the losing observation, so the choice can be checked.
Reading the past
Nothing is overwritten. Every get takes at, a time or a Version name, and returns the record as it stood then. As-of reads covers reading a whole slice as it stood.
For agents
An agent that answers with a Dataset's value cites it: the value, its Source and its observedAt. The response carries all three, so the agent never has to guess where a number came from.