Re: Mistake in the default serialisation of the RDF ontology

Richard, apologies for missing your message; it didn't make it to my inbox
for some reason.

Just to clarify, if I understand correctly:
  - this "RDF 1.1 Semantics - 8.1 RDF Entailment
<https://www.w3.org/TR/rdf11-mt/#rdf-entailment>" quote:
     "*if S contains:* xxx aaa yyy . *then S RDF entails, recognizing D: *aaa
rdf:type rdf:Property .";
  - your statement:
    "...a graph containing only a reified version of a statement should not
imply anything that can be inferred from the asserted version of the
statement.";
  - and this "RDF 1.1 Semantics - D.1 Reification
<https://www.w3.org/TR/rdf11-mt/#reification>" quote:
    "A reification of a triple does not entail the triple, and is not
entailed by it.";

together mean that the only statement that the reification: "ex:r
rdf:subject ex:s; rdf:predicate ex:p ; rdf:object ex:o .";
does not entail the statement "ex:s ex:p ex:o .";
but the statement "ex:s ex:p ex:o ." does indeed itself entail "ex:p a
rdf:Property .".

Hence, "RDF Schema 1.1 - 5.3.3 rdf:predicate
<https://www.w3.org/TR/rdf-schema/#ch_predicate>" shall be ammended from:
---
A triple of the form:
    S rdf:predicate P
states that S is an instance of rdf:Statement
<https://www.w3.org/TR/rdf-schema/#ch_statement>, that P is an instance of
rdf:Property <https://www.w3.org/TR/rdf-schema/#ch_property> and that the
predicate of S is P.
---
to:
---
A triple of the form:
    S rdf:predicate P
states that S is an instance of rdf:Statement
<https://www.w3.org/TR/rdf-schema/#ch_statement> and that the predicate of
S is P.
---

PA, adding this to the RDF's errata crediting me sounds great, thank you!

And thank you both for helping me clarify my understanding!

Cheers,
Matthieu


On Fri, 17 Dec 2021 at 15:38, Pierre-Antoine Champin <pierre-antoine@w3.org>
wrote:

>
> On 17/12/2021 14:02, Matthieu Bosquet wrote:
>
> The specific quote from "RDF Schema 1.1 - 5.3.3 rdf:predicate
> <https://www.w3.org/TR/rdf-schema/#ch_predicate>" I am referring to
> states the following:
> ---
> A triple of the form:
>
> S rdf:predicate P
>
> states that S is an instance of rdf:Statement
> <https://www.w3.org/TR/rdf-schema/#ch_statement>, that P is an instance
> of rdf:Property <https://www.w3.org/TR/rdf-schema/#ch_property> and that
> the predicate of S is P.
> ---
>
> My bad, I missed that part.
>
> More specifically: "...P is an instance of rdf:Property
> <https://www.w3.org/TR/rdf-schema/#ch_property>".
> My understanding is that this section describes which statements can be
> inferred from one asserted statement of the form "S rdf:predicate P"; one
> of which would be "P a rdf:Property"; which I believe means that the range
> of rdf:predicate should be rdf:Property (which is not only contrary to the default
> serialisation of the RDF ontology
> <http://w3.org/1999/02/22-rdf-syntax-ns#>, but also to the following
> sentence that you quoted).
>
> Yes. As Richard also pointed out, the contradiction is in the RDFS
> Recommendation itself...
>
> I'll add this in RDF's https://www.w3.org/2001/sw/wiki/RDF1.1_Errata, and
> credit you with it, if you don't mind.
>
>
> I also think that many foolish things can be said and it's a good thing
> that, if anything, entailment helps realising how foolish the things said
> are.
>
> Agreed, but entailment should not "shoot the messenger", and treat as
> foolish any graph merely quoting a foolish statement.
>
> Imagine I say "Alice believes that the earth is flat". You should not call
> me a flat earther for reporting this!
>
>   pa
>
> On 17 Dec 2021, at 10:29, Pierre-Antoine Champin <pierre-antoine@w3.org>
> wrote:
>
> 
>
>
> On 17/12/2021 00:04, Matthieu Bosquet wrote:
>
> I'm reaching out because I think you might be able to help or point me in
> the right direction to fix what I think is a mistake in the default
> serialisation of the RDF ontology dereferenceable at http://
> w3.org/1999/02/22-rdf-syntax-ns# <https://t.co/2fWsLy0dpC>.
>
> According to RDF Schema 1.1, I think the rdfs:range of rdf:predicate
> should be rdf:Property as per https://w3.org/TR/rdf-schema/#ch_predicate
> <https://t.co/hN2YnAwnhv>.
>
> The section you are pointing to states
>
> "rdf:predicate is an instance of rdf:Property
> <https://www.w3.org/TR/rdf-schema/#ch_property>"
>
> meaning rdf:predicate is *itself* an instance of rdf:Property.
> This sentence is not about the values of rdf:predicate...
>
> The same section states, a little below:
>
> "The rdfs:domain <https://www.w3.org/TR/rdf-schema/#ch_domain> of
> rdf:predicate is rdf:Statement
> <https://www.w3.org/TR/rdf-schema/#ch_statement> and the rdfs:range
> <https://www.w3.org/TR/rdf-schema/#ch_range> is rdfs:Resource
> <https://www.w3.org/TR/rdf-schema/#ch_resource>."
>
> which is consistent with the RDF description of the RDF vocabulary.
>
> Now, of course, I understand why one would expect the range of
> rdf:predicate to be rdf:Property. But I am not sure this would be a good
> idea. It would, for example, mean that
>
> :someFool :said [
>     a rdf:Statement ;
>     rdf:subject rdfs:Class ;
>     rdf:predicate rdfs:Class ;
>     rdf:object rdfs:Class ;
> ].
>
> would RDFS-entail
>
> rdfs:Class a rdf:Property.
>
> which does not seem desirable.
>
>   best
>
>
> The current range is rdfs:Resource in the default serialization at http://
> w3.org/1999/02/22-rdf-syntax-ns# <https://t.co/2fWsLy0dpC>.
>
> I know it's non-normative, but it seems like something that could be nice
> to fix.
>
> Kind regards,
> Matthieu
>
>

Received on Friday, 17 December 2021 19:20:51 UTC