-
Notifications
You must be signed in to change notification settings - Fork 8
RDF star and LPGs
We assume the baseline semantics for rdf:reifies
.
The following labelled property graph:
CREATE (a1:Account:FinancialOperation {accountNumber: 1})
CREATE (a2:Account:FinancialOperation {accountNumber: 2})
CREATE (a3:Account:FinancialOperation {accountNumber: 3})
CREATE (a1)-[:TRANSACTION {amount: 1000, currency: "gbp", date: "2002-09-24Z"}]->(a2)
CREATE (a1)-[:TRANSACTION {amount: 500, currency: "eur", date: "2003-10-24Z"}]->(a2)
CREATE (a2)-[:TRANSACTION {amount: 900, currency: "gbp", date: "2002-10-03Z"}]->(a3)
is equivalent to the following RDF graph:
:a1 a :Account ,
FinancialOperation ;
:accountNumber 1 .
:a2 a :Account ,
FinancialOperation ;
:accountNumber 2 .
:a3 a :Account ,
FinancialOperation ;
:accountNumber 3 .
<< :e1 | :a1 :TRANSACTION :a2 >>
:amount 1000 ;
:currency "gbp" ;
:date "2002-09-24Z"^^xsd:date .
<< :e2 | :a1 :TRANSACTION :a2 >>
:amount 500 ;
:currency "eur" ;
:date "2003-10-24Z"^^xsd:date .
<< :e3 | :a2 :TRANSACTION :a3 >>
:amount 900 ;
:currency "gbp" ;
:date "2002-10-03Z"^^xsd:date .
-
Node identifiers, node labels, edge identifiers, and edge labels are denoted by IRIs.
-
Keys are denoted by IRIs, and values are denoted by literals.
-
Triple terms have semantics from the baseline.
-
Triple terms involve node identifiers as subject and object and an edge label as property.
-
Reifiers denote edge identifiers.
IN THIS SCENARIO, the ONLY simple entailments involving triple terms are due to the bnode abstraction rule of simple entailment.
In one case, the following is entailed:
:e1 rdf:reifies <<( _:n1 :TRANSACTION _:n2 )>> .
:e1 :amount _:v1 .
These entailments can be considered as harmless in this scenario, e.g., by discarding any triple with a triple term involving bnodes.
In the other case, the following is entailed:
_:g1 rdf:reifies <<( :a1 :TRANSACTION :a2 )>> .
_:g1 :amount 1000 .
_:g2 rdf:reifies <<( :a1 :TRANSACTION :a2 )>> .
_:g2 :amount 500 .
which introduces new edge identifiers _:g1
and :g2
for the existing edges originally identified by :e1
and :e2
. Note that all the entailments in which the new edge identifiers _:g1
and :g2
are involved are exactly the same as the ones in which the original edge identifiers :e1
and :e2
are respectively involved. These entailments can be considered as harmless in this scenario, e.g., by discarding any triple with bnodes.
Note that the above entailments are the only ones involving bnodes as edge identifiers, so that a bnode denoting an edge identifier will never be associated to any other edge. Therefore, "functionality" of rdf:reifies
is always implicitly satisfied in this scenario.
Finally, the LPG data encoded in RDF as above can be extended, without changing the base encoding, by adding more RDF, RDFS, SHACL, OWL schema information. For example we can add any or all of the following:
:e1 a :transaction .
:e2 a :transaction .
:e3 a :transaction .
:e1 :sourceOfTransaction :a1 .
:e1 :targetOfTransaction :a2 .
:e2 :sourceOfTransaction :a1 .
:e2 :targetOfTransaction :a2 .
:e3 :sourceOfTransaction :a2 .
:e3 :targetOfTransaction :a3 .
:a1 :TRANSACTION :a2 .
:a2 :TRANSACTION :a3 .
:a1 :hasTransactionOn "2002-09-24Z"^^xsd:date .
:a1 :hasTransactionOn "2003-10-24Z"^^xsd:date .
:a2 :hasTransactionOn "2002-10-03Z"^^xsd:date .
etc.
In a profile enforcing functionality of rdf:reifies-fun
in the semantics, by accepting
:e rdf:reifies-fun <<( :s1 :p1 :o1 )>> .
:e rdf:reifies-fun <<( :s2 :p2 :o2 )>> .
then the following entailment holds
:s1 owl:sameAs :s2 .
:p1 owl:sameAs :p2 .
:o1 owl:sameAs :o2 .
On the other hand, by rejecting
:e rdf:reifies-fun <<( :s1 :p1 :o1 )>> .
:e rdf:reifies-fun <<( :s2 :p2 :o2 )>> .
then at least one of the following entailment holds
:s1 owl:differentFrom :s2 .
OR
:p1 owl:differentFrom :p2 .
OR
:o1 owl:differentFrom :o2 .
Summary of the RDF-star WG wiki.
- Editor's guide
- Meeting minutes
- RDF terminology
- Scribes
- Use Cases collection
- RDF-star syntax and semantics:
- RDF-star "alternative baseline" (VOTED 2024.11.14 - frozen)
- RDF-star "liberal baseline" (current working version)
- RDF-star "minimal baseline" (VOTED 2024.07.18 - frozen - superseded by vote 2024.11.14 - deprecated)
- RDF-star "working baseline" (working version - deprecated)
- RDF‐star baseline examples
- RDF-star and LPGs
- Extending the baseline with "asserted" stuff
- systems and acronyms
- Task forces
- Text Direction considerations
- Text Direction Proposal
- Triple‐Edge-subgroup-proposals