W3C home > Mailing lists > Public > www-rdf-interest@w3.org > July 2006

Re: Multiple (conflicting) rdfs:range properties

From: Frank Manola <fmanola@acm.org>
Date: Thu, 20 Jul 2006 12:30:32 -0400
Message-ID: <44BFAFA8.4010905@acm.org>
To: Alexander Pohoyda <alexander.pohoyda@gmx.net>
CC: www-rdf-interest@w3.org


I'm not exactly sure what distinction you have in mind between "formal" 
and "logical" contradiction, but I don't think this example is a 
contradiction in either case.

For there to be a problem with a resource being both an instance of both 
the rdfs:Literal and my:Class1 classes, there would have to be an *RDFS* 
condition saying that rdfs:Literal was disjoint from other RDFS classes. 
  But there is no such condition in RDFS.

Note that a "logical" contradiction requires that there be conflicting 
statements *in the logic* (statements to which the logic applies).  What 
I think you have in mind is that this doesn't make sense in your 
intended interpretation (but RDFS doesn't provide a way to state all the 
constraints that apply to that interpretation).

You might want to have a look at Section 4.3 ("A Note on rdfs:Literal") 
of RDF Semantics <http://www.w3.org/TR/rdf-mt/#literalnote>.


PS:  It is very difficult to write contradictory statements in RDFS, due 
to its limited expressibility.  However, the end of Section 4.1 of RDF 
Semantics describes one case, involving XML literals, where it is 
possible.  Datatyped interpretations in general (see Section 5) 
introduce another area in which contradictions are possible, but this 
involves considering the extra semantic conditions introduced by the 

Alexander Pohoyda wrote:
> Hello,
> Definition from RDF Schema:
>     3.1 rdfs:range
>         P rdfs:range C
>     Where P has more than one rdfs:range property, then the resources
>     denoted by the objects of triples with predicate P are instances
>     of all the classes stated by the rdfs:range properties.
> Now, consider an example:
>     my:property1 rdfs:range rdfs:Literal, my:Class1.
> This effectively means that any object I use with this predicate is
> an instance of both rdfs:Literal and my:Class1 classes:
>     example:thing1 my:property1 example:thing2.
> Formally this is not a contradiction.  But isn't it a contradiction
> logically?
> I appreciate any answer.  Thank you!
Received on Thursday, 20 July 2006 16:23:53 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 22:44:58 UTC