W3C home > Mailing lists > Public > www-rdf-interest@w3.org > December 1999

Re: Saying anything about anything: Comments on Harle & Fensel

From: Stefan Decker <stefan@DB.Stanford.EDU>
Date: Tue, 21 Dec 1999 23:50:41 -0800
Message-Id: <4.2.0.58.19991221225756.015c2dd0@db.stanford.edu>
To: "Tim Berners-Lee" <timbl@w3.org>, www-rdf-interest@w3.org
Cc: frankh@cs.vu.nl, dieter@cs.vu.nl
Hi,



>Yes, this is a fundamental difference between RDFS and many systems which
>are object-oriented in the sense that the set of properties is defined with
>respect to a class. Thus, when a car has a color, the concept of car and the
>concept of color are independent first class objects.  This is in fact a
>fundamental aspect of the semantic web. The rule is that (technically)
>"anyone can say anything about anything" means that properties (property
>names) must
>be first class objects. If the designed of the class "car"  didn't think of
>color as being an interesting property of cars, then it becomes more
>difficult for anyone to make statements about cars being red.

there isn't much of a difference, if i say:

1) instance o has an attribute a with value v  (o-o)
2) there is a statement consisting of a subject, a predicate and an object 
(RDF).

1) says exactly the same as 2) and there is no difference in the semantics.
One can "saying anything about anything" using 1) OR 2)

However, there is one problem with in RDFS with properties:
in RDFS a property belongs to exactly ONE class.
This limits the value of schemas (ontologies).
An example (i'am not using RDFS syntax here, i hope it is still 
understandable):

Classes:
--------
mammals
      dog
      human

('dog' and 'human' are subclasses of 'mammals')

property
--------
   isChildOf

I would like to say:
a)isChildOf : dog X dog
   isChildOf : human X human

(Explanation:
isChildOf is a relation between dogs  (dogs can only have dogs as childs)
and between humans (humans have only have human childs)).

I CAN'T express a) that in RDFS! Instead i have to say (in RDFS):

(b)  isChildOf : mammals X dog
                  mammals x human

(isChildOf has a domain "mammals" and range "dog" and "human")
Given the following instance definitions:

bobby : human
lassy : dog

(bobby is a instance of human and lassy is a instance of dog).

then

isChildOf(bobby,lassy)

is perfectly valid given the schema.
Errors like this can not be detected using the RDF schema!

Instead one has to ensure that a property is unique for each class
(e.g. by adding a class-prefix), which is redundant
(and this was the main point in the paper).
The problem is, that a property can only be used in one class, but is
globally visible for all classes!

There is also another disadvantage of this RDFS approach:
a schema can not only be used to check definitions for errors, but also
to derive new knowledge and to complete knowledge.
An example:
if the following instance data:

   stefan : human
    and
   isChildOf(jana,stefan)

is given, we can conclude that jana is also a human (because children of humans
are also humans) (given the ontology definition  (a) ).
This is also not possible with RDFS!

So RDFS is in a sense to much "class-attribute" based and limited.

Hope this clarified the situation a bit,


Stefan

((also in no official capacity))



>((There is a (2.1) a frightful suggestion to change the HTML META tag's
>meaning so that the CONTENT attribute becomes a (local) URI for the content
>rather than the content, in an attempt to address the "problem" of reuse of
>t
>same text in human and  machine-destined languages.  I currently think the
>way to do this is to make the human-readable page a  function - e.g. in
>XSLT-
>of the semantic data))

Another possibility is to clarify the meaning of link (see recent discussions
one the list).
BTW: I can't see why the suggestions is "frightful"....
Received on Wednesday, 22 December 1999 02:55:02 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:51:42 GMT