6.4.2.16 FeedCoverage
6.4.2.16.1 Purpose¶
Says which period of a feed's data is present, complete and final, for each kind of data. Without it, a missing record cannot be told apart from data that has not arrived yet.
6.4.2.16.2 Questions it answers¶
- Up to which date is a feed's data complete?
- From which date does the source stop changing its records?
- Is an absence a real absence, or data not received yet?
6.4.2.16.3 Fields¶
| Field | Type | Cardinality | Description |
|---|---|---|---|
id |
string (uuid) |
1..1 |
Key. |
source_feed |
SourceFeed | 1..1 |
|
data_kind |
CodedValue | 1..1 |
An observation type family, an event type, sessions or registry data, as declared by the adapter. |
data_from |
EventTime | 1..1 |
|
complete_until |
EventTime | 0..1 |
Every record of this kind up to here has been received. After it, absence means "not known yet". |
settled_until |
EventTime | 0..1 |
The source no longer changes records up to here, by the adapter's rule (e.g. Lely feeding: complete_until minus 4 days).Later corrections are still possible and arrive as revisions; labels for models should stay before this date. |
rule |
CodedValue | 1..1 |
Versioned adapter rule that computes the two dates. |
computed_in |
SyncRun | 1..1 |
|
revision |
RecordRevision | 1..1 |
|
created_at |
datetime |
1..1 |
6.4.2.16.4 Relationships¶
References
FeedCoverage.source_feed→ SourceFeed (1..1)FeedCoverage.computed_in→ SyncRun (1..1)
Uses types
CodedValue, EventTime, RecordRevision
6.4.2.16.5 Rules & constraints¶
- Which period of a feed's data is present, complete and final, per kind of data. Recomputed after each SyncRun.
- Without it, a missing record cannot be told apart from data not received yet.
- e.g. Lely rewrites records after their day: feeding up to 4 days later, collar and daily milk 2-3 days, calvings even months later; the last extracted day holds less than an hour of data.
- (
source_feed,data_kind): one current revision. Inside [data_from,complete_until) no record means none at the source.