- From: Pierre-Antoine Champin <pierre-antoine@w3.org>
- Date: Thu, 18 Apr 2024 01:18:27 +0200
- To: RDF-star WG <public-rdf-star-wg@w3.org>
- Message-ID: <adcc1b15-0492-4e36-9bfa-5eb2bfd5d8b8@w3.org>
Hi all, after writing my response to Phil [1], which is a refinement of the arguments I made last Friday [2], I'm more and more convinced that a reifier should not reify several things, because it would lead to wrong expectations ("this is similar to a named graph, right?") and counter-intuitive inferences (again, see my example in [1]). That being said, I would have this constraint /only/ expressed the "intended meaning" of the rdf:reifies predicate -- in a way very similar to rdf:subject, rdf:predicate and rdf:object. Reading the description of these predicate in [3] strongly hints at the fact that they are supposed to have only one value each ("[rdf:subject] is used to state *the* subject of a statement"), but * it is not enforced syntactically (the following is valid RDF: :t rdf:object :s1, :s2. ), * it is not enforced semantically (the example above does not entail :s1 owl:sameAs :s2 ). The arguments against such an enforcement (syntactic or semantic) have been largely discussed already, I won't repeat them here. Finally, I want to emphasize that, although I advocate that a reifier should reify only one thing, I would like to remain very vague on what kind of "thing" that is, and how many (syntactically) distinct triples would actually identity that thing. For example, from the following graph :r rdf:reifies <<( dbr:Linköping dbo:populationTotal 104232 )>>. it would seem appropriate to infer (under D-entailment where xsd:integer ∈ D) :r rdf:reifies <<( dbr:Linköping dbo:populationTotal 104232 )>>, <<( dbr:Linköping dbo:populationTotal 00104232 )>>. (I believe that it would be the case with the semantics currently proposed by Enrico). From the following graph :r rdf:reifies <<( :alice :knows :bob )>>. :knows a owl:SymetricProperty. MAYBE it would be appropriate to infer :r rdf:reifies <<( :alice :knows :bob )>>, <<( :bob :knows :alice )>>. From the following graph :r rdf:reifies <<( :alice :worksWith :bob )>>. :worksWith rdfs:subPropertyOf :knows. MAYBE it would be appropriate to infer :r rdf:reifies <<( :alice :worksWith :bob )>>, <<( :alice :knows :bob )>>. I don't have a definite answer for the two examples above, and I don't think that we need to answer them urgently. I'm just pointing out that we have some leeway even if we settle on "a reifier reifies only one thing". pa [1] https://www.w3.org/mid/d39fcb64-66d6-4cbe-9453-a52d1cbd5259@w3.org [2] https://www.w3.org/2024/04/12-rdf-star-minutes.html#x169 [3] https://www.w3.org/TR/rdf11-schema/#h3_ch_reificationvocab
Attachments
- application/pgp-keys attachment: OpenPGP public key
Received on Wednesday, 17 April 2024 23:18:30 UTC