My Entity Instances have properties that are valid for a specific period of time.
In a relational database these would be a timestamp column for a row
How do I represent the values of these properties in RDF?
- instance has many hidden nodes that contains the property values and each associated with a timestamp
- each relationship is associated with a time stamp? (Is this an Edge Property?)
- A grouping of whole graph that basically has all the entities and properties for a time stamp? (Is this a named graph?)
I would like to infer an Instances property values based on a hierarchy of commitment times, such as:
I don't fully understand the diagram and what you're after, but I can start by saying that it sounds reasonable to use edge properties for the time-bounded edges. Essentially, you can have some triple of age
:John :age 1 which will inevitably change over time. With edge properties, you can associate a time range (eg
end timestamps) with the triple without any roundabout modeling. This would allow you to insert another triple, eg
:John :age 2 which presumably has a non-overlapping timestamp with the "age 1" triple as these are mutually exclusive states. At query time you would need to filter the triples (with properties) valid at the timestamp of interest. With regard to reasoning, you will currently not be able to employ edge properties as we're working on defining how they interact with the standing reasoning semantics.
@johnz writes about the “effectivity” of the instances. When, in time, does the claim hold.
Temporal qualifications are like other qualifiers such as provenance (who asserted the claim, why was the claim asserted, where does the claim hold) and uncertainty (how assured is the claim).
Consider looking at RDF*. See 2019 RDF Star position paper
That position paper will at least introduce you to the way to think about and speak about the topic in the jargon of RDF outside of the jargon of RDBMS data cubes (which is the similar concept).
This W3C paper, from 2009, is relevant, too.
I believe Stardog is supporting RDF* and SPARQL* — as well as Ontotext and others.
This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.