- From: Peter F. Patel-Schneider <pfpschneider@gmail.com>
- Date: Wed, 8 Jan 2025 10:33:21 -0500
- To: public-rdf-star-wg@w3.org
I'm going to try to pull out what I think is the crux of the matter in the discussion. The issue in question is, I think, whether :a rdf:reifies :b . is like (actually even stronger than) :john :name "John" . where "John" is a string, no matter whether the triple is asserted or not, or like :name rdfs:range xsd:string . :john :name :b . where :b is only a string if both triples are asserted. That is, does an rdf:reifies triple entail that its object is a proposition in every graph that contains the triple as a triple term. You can put these more directly into RDF 1.2 as three graphs :alex :believes << :a rdf:reifies :b >> and :alex :believes << :john :name "John" >> . and :name rdfs:range xsd:string . :alex :believes << :john :name :b >> . So, using extended RDF 1.2, does the first graph RDF1.2-entail :b rdf:type rdf:Proposition . like the second RDF1.2-entails "John" rdf:type xsd:string . or is this *not* the case like the third does *not* RDF1.2-entail :b rdf:type xsd:string . Note that I am assuming that this last entailment is not going to be part of RDF 1.2. Otherwise my analogy breaks down. peter On 1/8/25 8:11 AM, Pierre-Antoine Champin wrote: > > On 08/01/2025 14:04, Doerthe Arndt wrote: >> Dear Pierre-Antoine, >> >> Just a short answer for the first because I think my point did not get through: >> >>> Am 08.01.2025 um 11:42 schrieb Pierre-Antoine Champin <pierre-antoine@w3.org>: >>> >>> Dear Dörthe, Enrico, >>> >>> On 07/01/2025 18:10, Doerthe Arndt wrote: >>>> Dear Pierre-Antoine, >>>> >>>>> Am 07.01.2025 um 17:01 schrieb Pierre-Antoine Champin <pierre- antoine@w3.org>: >>>>> >>>>> My 2 ¢ about https://github.com/w3c/rdf-star-wg/wiki/RDF-star-%22liberal- baseline%22#rdf-semantics >>>>> >>>>> - for the sake of homogeneity, I would keep only reif1 and reif2 in RDF Semantics, >>>>> and push reif3 in RDFS Sedmantics (which would simply mean to add the axiomatic triple rdf:reifies rdfs:range rdf:Proposition . This is for the sake of regularity. I don't think that RDF semantics has any "range-like" entailment for the moment. >>>> >>>> I personally agree with you, but where to put that rule als depends on what we want in general. There is the possibility to make rdf:reifies some kind of „special“ predicate for which we derive that the subject is always a rdf:Proposition even when occurring nested. I really do not want to have something like that for all domain declarations. So, if we want to make that the subject of rdf:reifies is always a rdf:Proposition regardless of it occurring nested or not, then it should be done like that. Whether we want that is of course a different question. >>> >>> Agreed. I should have been clearer: in my opinion, the condition on RDF- interpretation should rather be >>> >>> ⏩ |<x, [I+A](rdf:Proposition)> ∈ IEXT([I+A](rdf:type))| >>> if |x ∈ dom(RE)| ⏪️ >>> >>> without the additonal "or if |∃ y . <y,x> ∈ IEXT([I+A](rdf:reifies))|", and therefore reif3 would be moot. >>> Instead, I would add the latter condition in RDFS as the axiomatic triple 'rdf:reifies rdfs:range rdf:Proposition', which would have the same consequence (in RDFS). >>> >>> But I will not die on that hill... >>> >> >> I understood, but my point was that >> >> rdf:reifies rdfs:range rdf:Proposition >> >> would not do the same because we would NOT get from >> >> rdf:reifies rdfs:range rdf:Proposition >> :a :b <<( _:r rdf:reifies _:p )>>. >> >> that >> >> _:p a rdf:Proposition. > I missed that part indeed, sorry. >> >> and the purpose of the rule as it is is to make this derivation happen while not supporting that for example >> >> :know rdfs:range :Person. >> :a :b <<( :bob :knows :pasta )>>. >> >> yields >> >> :pasta a :Person. >> >> This would make rdf:reifies a special predicate with some kind of „super range“ which even works on nested triples. I am really opposed to making all ranges „super ranges“ by default. I am also not convinced we need it in this case, but maybe we do? > I certainly don't! 🙂 and I don't think I want it for rdf:reifies either. > > As a matter of fact, while the reif3 entailment pattern does provide this special case for rdf:refies, I don't think that the semantic condition on RDF interpretation does!... It says > > |<x, [I+A](rdf:Proposition)> ∈ IEXT([I+A](rdf:type))| > if |∃ y . <y,x> ∈ IEXT([I+A](rdf:reifies))| > > and IEXT([I+A](rdf:reifies)) only covers /asserted/ triples with the rdf:reifies predicate. > >> >> Kind regards, >> Dörthe
Received on Wednesday, 8 January 2025 15:33:26 UTC