- From: Matthieu Bosquet <matthieu@cognithive.com>
- Date: Fri, 17 Dec 2021 13:02:17 +0000
- To: Pierre-Antoine Champin <pierre-antoine@w3.org>
- Cc: public-rdf-comments@w3.org
- Message-ID: <CAHxabGGEkPgkRTB0-UtY_aUN-Rsx6z9BMoVUT1it=dTRqoYkYQ@mail.gmail.com>
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.
---
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).
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.
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 14:31:44 UTC