- From: Pierre-Antoine Champin <pierre-antoine.champin@ercim.eu>
- Date: Fri, 12 Mar 2021 10:31:08 +0100
- To: "public-rdf-star@w3.org" <public-rdf-star@w3.org>
- Message-ID: <3a191a52-1c32-2935-687c-1d3813e2a149@ercim.eu>
Dear all, the current semantics uses "hidden predicates" to describe embedded triples, so there is no standard way to convey embedded triples to legacy RDF systems. I know that this has been a concern for some people. One of the good properties (in my opinion) of the newly proposed semantics [1] is that its relies on the reification vocabulary (plus some new predicates), in a way that is not a hurdle to native RDF-star implementations, but can be useful to legacy RDF systems. Let me explain: The new proposal suggests that :bob :says << :alice a :Genius >>. can be loosely described as :bob :says [ rdf:subject :alice; rdf:predicate rdf:type; rdf:object :Genius; rdf:quotedSubject "<http://example.com/ns#alice>"; rdf:quotedPredicate "<http://www.w3.org/1999/02/22-rdf-syntax-ns#type>"; rdf:quotedObject "<htttp://example.com/ns#Genius>"; ]. "loosely", because there is no semantic relationship between the two graphs -- neither of them entails the other. However, this transformation is valuable, because /under certain conditions/ (detailed below), it preserves entailment. Meaning that a legacy RDF system can "encode" an RDF-star graph as above, then reason on it, and if the result can be "decoded" as RDF-star, then it is a valid result in RDF-star semantics as well. The technical details follow for those of you who are interested. But I would like to know if this evolution is deemed interesting by other members of the group. pa [1] https://pr-preview.s3.amazonaws.com/w3c/rdf-star/pull/127.html#rdf-star-semantics Under wich conditions does this work? ------------------------------------- It works for RDF-star graphs that do not contain any of the predicates used to otherwise describe embedded triples, namely: rdf:subject, rdf:predicate, rdf:object; rdf:quotedSubject, rdf:quotedPredicate, rdf:quotedObject. We call these graphs "reification-free". The corresponding RDF graphs therefore only contain the 6 predicates in a very controlled way. We call these graphs "reification-correct". Any reification-free RDF-star graph can be mapped to a reification-correct RDF graph, and conversely. If G and H are reification-free RDF-star graphs, and G' and H' are their corresponding reification-correct RDF-graphs, then G |= H iff G' |= H' IMPORTANT: the proposed semantics does *not* forbid the use of reification predicates in other, uncontrolled, ways. The semantics is defined for any RDF-star graph, and that definition also relies on standard RDF semantics. But in the general case, it is slightly more complex than above To sum it up: reasoning on unrestricted RDF-star graphs is always possible; reasoning on reification-free RDF-star graphs is simpler. Proof sketch ------------ The proposed semantics [1] defines a mapping unstar(G) = (G1, G2). In the following, we will append 1 and 2 to any graph name to denote the images of that graph through unnap(). In addition, we define G3 = G1 U G2, and G3' = G3 minus all the arcs involving the hidden IRI. It can be proven, using the interpolation lemma, that if G and H are reification free, then * G3 |= H3 → G1 |= H1 * and so G |= H iff G3 |= H3 * G3 |= H3 iff G3' |= H3' * and so G |= H iff G3' |= H3'
Attachments
- application/pgp-keys attachment: OpenPGP_0x9D1EDAEEEF98D438.asc
Received on Friday, 12 March 2021 09:31:13 UTC