Skip to content

Data Model

Oleksandr Nikitin edited this page Oct 3, 2016 · 8 revisions

Data Model

Hypergraph of linked facts with data and metadata

User

  • tenant owning things that are happening, resource root, logical context owner

TX time

  • logical time, causal, relative to other TX times, usually serialized at physical_viewpoints useful

Space/Universe/Provider

  • managed or unmanaged object provider/locator/sync channel

Physical Viewpoint

  • representation/reflection of an inference agent/system performing the derivations, required to reason about performance and resources

Logical Context

  • user-chosen subset/viewpoint of the universe containing inference traits/flavors
  • inference rules, coercion/canonicalization rules (always logical, don't belong to universe apart from physical_viewpoint)
  • acquisition keys like precision or source trust
  • target context eg criteria of what data we choose to use/disclose, permissions belong here
  • logical_viewpoint eg the task that we're currently solving, or just session.

Event Locator

  • physical time, relative to universe, stuff like GPS coordinates also belongs here; not strictly mandatory but really

Domain Data

  • may overlap with Event Locator, all other data.

Sync Model

We totally need to support both state-based and event-based sync, even given the complications that necessarily arise. State-based sync happens ONLY between managed + unmanaged objects, syncing unmanaged + unmanaged is undecidable.

Clone this wiki locally