How can we split live data from planned/static data?
Proposal 1: simple import
This doesn’t require the client to understand it’s live data, it just always will need to follow the embed as there is no tree:path associated with it. TREE should elaborate to always take into account the last version of an entity it found.
<currentpage?departureTime=2020-04-09> a tree:Node ;
tree:import <live.ttl> ;
tree:importStream <ws://example.org/live/delays> .
Proposal 2: referring to a new entity with an update
E.g., by using the path to a dcterms:isReplacedBy entity, which repeats all triples that didn’t change as well.
Problem with this approach is that a client needs to look specifically also for entities that replace an entity of interest. The benefit is that a client can also specifically not download updates if it doesn’t want to.
Instead of using dcterms:isReplacedBy, we can also introduce a TREE specific term such as tree:hasUpdate, which is a new entity that can overwrite the existing entity in the same way as dcterms:isReplacedBy would do, without having to repeat all triples that didn’t change.
The only problem I can still think of then is the fact that rdf container additions and removals would have to remention the entire container. For deletions always using lazy deletions might be a solution (can be ontology specific).
How can we split live data from planned/static data?
Proposal 1: simple import
This doesn’t require the client to understand it’s live data, it just always will need to follow the embed as there is no tree:path associated with it. TREE should elaborate to always take into account the last version of an entity it found.
Proposal 2: referring to a new entity with an update
E.g., by using the path to a dcterms:isReplacedBy entity, which repeats all triples that didn’t change as well.
Problem with this approach is that a client needs to look specifically also for entities that replace an entity of interest. The benefit is that a client can also specifically not download updates if it doesn’t want to.
Instead of using dcterms:isReplacedBy, we can also introduce a TREE specific term such as
tree:hasUpdate
, which is a new entity that can overwrite the existing entity in the same way as dcterms:isReplacedBy would do, without having to repeat all triples that didn’t change.The only problem I can still think of then is the fact that rdf container additions and removals would have to remention the entire container. For deletions always using lazy deletions might be a solution (can be ontology specific).