You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This work was already started in #97 but in keeping with our new process of opening issues first to nail down the design, I'd like to move discussion here for the moment.
Scope should include:
All foreign keys are preceded by the documents they reference. That means:
RunStart before the EventDescriptors that reference them
EventDescriptors for the Events that reference them
Datum before the Events hat reference them
Resources before the Datum that reference them
Note that this does not mean that a RunStart must be first. For example, Resource is allowed to precede a RunStart.
If a RunStop doc is present, it is the last doc. This is important because we sometimes use it as a signal to clean up resources (like Serializer.close()).
Event[Page]s within each stream are in time order.
Event[Page]s across streams are in time order up to the time resolution of a Page. That is, if we denote event_page['time'][0] as a_i ("a initial") and event_page['time'][-1] as a_f ("a final") for a given EventPage a, if b follows a and then b_f >= a_i. In English, each EventPage's highest time must be greater than or equal to the preceding EventPages' lowest times.
In terms of implementation, it would be good to avoid caching the entire run. It is possible to enforce these constraints without retaining every document in memory at once.
The text was updated successfully, but these errors were encountered:
This work was already started in #97 but in keeping with our new process of opening issues first to nail down the design, I'd like to move discussion here for the moment.
Scope should include:
All foreign keys are preceded by the documents they reference. That means:
Note that this does not mean that a RunStart must be first. For example, Resource is allowed to precede a RunStart.
If a RunStop doc is present, it is the last doc. This is important because we sometimes use it as a signal to clean up resources (like
Serializer.close()
).Event[Page]s within each stream are in time order.
Event[Page]s across streams are in time order up to the time resolution of a Page. That is, if we denote
event_page['time'][0]
asa_i
("a initial") andevent_page['time'][-1]
asa_f
("a final") for a given EventPagea
, ifb
followsa
and thenb_f >= a_i
. In English, each EventPage's highest time must be greater than or equal to the preceding EventPages' lowest times.In terms of implementation, it would be good to avoid caching the entire run. It is possible to enforce these constraints without retaining every document in memory at once.
The text was updated successfully, but these errors were encountered: