W3C home > Mailing lists > Public > semantic-web@w3.org > March 2018

Re: rdfs:subClassOf and XSD derivation by restriction

From: Richard Smith <richard@ex-parrot.com>
Date: Tue, 6 Mar 2018 19:40:09 +0000 (GMT)
To: Pat Hayes <phayes@ihmc.us>
cc: Andreas Harth <andreas@harth.org>, semantic-web@w3.org
Message-ID: <alpine.LRH.2.02.1803061823140.9860@sphinx.mythic-beasts.com>
Pat Hayes wrote:

>> I'm sure it's intended that the lexical space, value 
>> space and lexical-to-value mapping of these types for the 
>> purpose of RDF is the same as their lexical space, value 
>> space and lexical mapping as defined in XSD.
> Yes. The RDF 1.1 semantics is explicit about this. If you recognize these 
> datatypes, they must be used in exact conformity with the XSD specs.

My point was perhaps a rather pedantic one: nothing says the 
what RDF calls a lexical-to-value mapping is that same thing 
that XSD calls a lexical mapping.

>> Given the triple
>>    ex:a ex:p "sss"^^xsd:integer .
>> [...]
>> Therefore that triple entails the following triple:
>>    ex:a ex:p "sss"^^xsd:decimal .
> However, it still does not follow that one datatype is an RDFS subclass of 
> the other, since RDFS classes are not required to be extensionally defined 
> (ie not all subsets need be subclasses).

Agreed.  Perhaps more surprisingly, at least to me, if there 
were a subclass relationship, that wouldn't entail the 
statements above.  I think I now understand why.  RDFS 
requires only that the value spaces of datatypes related by 
rdfs:subClassOf is a subset.  It doesn't say the same about 
the lexical space and therefore the lexical-to-value 

So given

   ex:a ex:p "sss"^^ex:sub .
   ex:sub rdfs:subClassOf ex:super .
   ex:super a rdfs:Datatype .

we know this implies some statement of the form

   ex:a ex:p "ttt"^^ex:super .

but unless we understand the two types (i.e. unless D 
includes ex:sub and ex:super) we cannot say what ttt is. 
Quite possibly ttt=sss, but not necessarily.

The best we can say is that these three statements RDFS 

   ex:a ex:p [ a ex:super ] .

>> This is a pertinent comment, as it seems to me that D entailment
>> is the least well understood entailment regime. It's easy enough
>> in the simple case where the only recognised datatypes are
>> xsd:string and rdfs:langString which are the only two required
>> ones, but as soon as other types come in, it gets hairy rapidly.
> Indeed. This is why OWL-DL keeps all literal/datatype issues in a separate 
> box with very strict rules on how it can interact with general class 
> reasoning.

I'm struggling to work out whether OWL2 allows this to be 
expressed.  It almost seems that

   ex:a ex:p "sss"^^ex:sub .
   ex:sub owl:equivalentClass [
     owl:onDatatype ex:super ;
     owl:withRestrictions [] ] .
   ex:super a rdfs:Datatype .

might OWL entail (for an appropriate type of OWL 

   ex:a ex:p "sss"^^ex:super .

But I'm not sure as I've never properly got to grips with 
OWL datatypes.

Received on Tuesday, 6 March 2018 19:43:06 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 March 2018 19:43:15 UTC