RE: DAML+OIL: Questions & Improvements.

Hello Ian,

Thanks for your comments...  I agree that RDF is a meta-language; however
it's purpose is to describe resources on the web.  DAML+OIL, on the other
hand, is meta-language for defining ontologies.  DAML+OIL could be
implemented in a number of ways.  At the moment, the DAML+OIL is being
implemented with RDF.  It is my understanding that the use of RDF is for
syntax only, because the semantics of DAML+OIL differs greatly from mere
resource description.  Thus, the root DAML+OIL ontology should contain the
primitives of the meta-language used to define it (rdfs:Class, rdf:Property,
rdf:ID, etc.).  However, instances of DAML+OIL (ontologies built using the
DAML+OIL meta-language and their resulting instances) should only contain
DAML+OIL primitives (see question @@ in original email). Although there is a
1 to 1 mapping on many  of the DAML+OIL primitives to the RDF primitives
(this is true only because RDF syntax is being used), there is at least one
case which has no mapping: the concept of a class.

An RDF class is both structurally and semantically different from a DAML+OIL
class.   The base class in RDF is a "rdfs:Resource" which is of "rdf:type",
"rdfs:Class".  In RDF there is no concept of a "NoResource", the complement
of the base class.  Semantically speaking, in DAML+OIL the base class is
"Thing" which is defined as being the union of "Nothing" and the complement
of "Nothing".  Syntactically speaking, "Thing", "Nothing", and the
complement of "Nothing" are built from "rdfs:Class".   Thus, using
"rdfs:Class" to instantiate a DAML+OIL class doesn't make sense.
Conceptually I agree that every modeled concept in DAML+OIL is a "Thing",
however this must be explicitly defined in the syntax.  Otherwise, there
would be no need to define a DAML+OIL "Thing" in the first place.    

Also, I agree that every modeled concept in DAML+OIL should be a subclass of
the base class, "Thing".  However, this should be an inherited property of
every modeled concept. In other words, there should be no need to explicitly
define a subClassOf relation to a "Thing".  In Solution B, I described a
means of instantiating DAML+OIL concepts by using "Thing".  Per RDF syntax,
concepts modeled in this way would be of "rdf:type", "Thing".  Though it is
not a subClassOf relation, it may be as close as the RDF syntax will allow
us to get.  One way to implement it may be to add a subClassOf relation of
"Thing" to "Thing".  That is, make "Thing" a subclass of "Thing".  Hence
everything of "rdf:type", "Thing" would be a subclass of "Thing".  (see
attachment: Thing2.ppt, Solution B prime, figure 4)

Thanks,
Dan

> -----Original Message-----
> From: Dickinson, Ian J [mailto:Ian_J_Dickinson@hplb.hpl.hp.com]
> Sent: Friday, January 26, 2001 5:18 AM
> To: King . Dany; 'www-rdf-logic@w3.org'
> Subject: RE: DAML+OIL: Questions & Improvements.
> 
> 
> Hi Dany,
> Regarding your question 5, it seems to me that you're 
> confusing two things
> (given my limited and still evolving understanding of ontologies and
> DAML+OIL).  Class, property and instance are the modelling primitives
> provided by RDF.  They provide a meta-language for defining 
> an ontology,
> part of which is a hierarchy of concepts.  The most general 
> concept is (in
> DAML+OIL) "Thing".  Every modelled concept is a Thing. The 
> least general
> concept is "Nothing". No modelled concept is a Nothing.  Concepts are
> related by a number of different relations, one of which is 
> sub-class.  If A
> is a sub-class of B, every B is an A, but not vice-versa.  So 
> the bug in the
> example, imho, is that Animal should be a sub-class of Thing.
> 
> Relations like subClassOf, complementOf, etc, are intended to describe
> relationships among concepts.  Given the modelling 
> meta-language, concepts
> are modelled as RDF classes.  Therefore the rdf:type relation 
> is being used
> to denote precisely that: every concept (Thing, Animal, etc) 
> is modelled as
> rdfs:Class.  But because it's part of the metalanguage, 
> rdfs:Class does not,
> in fact, appear in the concept hierarchy.
> 
> As far as I can tell from the various versions, at one time 
> DAML relations
> like type were considered distinct from RDFS and RDF 
> relations. Then in the
> 2000/12 version, where there were overlaps in terminology, 
> the RDF or RDFS
> relations were used in preference. It seems to me that you're 
> pointing out a
> potential problem with this, which is:
>    Thing rdf:type rdfs:Class
> means "concept Thing is modelled as an RDFS Class", whereas
>    adam rdf:type Person
> means "instance adam belongs to the concept Person".
> 
> Perhaps the "logical elders" (:-) on this list would like to comment?
> 
> By the way, I like your proposal on the version info element.
> 
> Cheers,
> Ian
> 
> 
> > -----Original Message-----
> > From: King . Dany [mailto:DKing@drc.com]
> > Sent: 25 January 2001 20:37
> > To: 'www-rdf-logic@w3.org'
> > Cc: TeamXML; Randolph . Wayne
> > Subject: DAML+OIL: Questions & Improvements.
> > 
> > 
> > The following questions/comments are about the DAML+OIL 
> > ontology version 1.6
> > 2001/01/11.
> > [... elided for brevity ...]
> 
> > 5) The "Thing" class is not implemented properly.   The 
> > "Thing" class is
> > supposed to be the base class in DAML+OIL, however, it is 
> > currently just
> > another class which has no direct connection to any other 
> > class.  Per the
> > current DAML+OIL specification, the "rdf:Class" is the base class in
> > DAML+OIL.  Please review the attached PowerPoint presentation 
> > regarding the
> > problem (each slide has important notes).  Also, there are 
> > two solutions
> > described therein.  The Alternative Solution B is the most 
> > concise and is
> > preferred.
> > 
> >  <<Thing.ppt>> 
> 
> > ...
> 
> 
> ____________________________________________________________________
> Ian Dickinson    HP Labs, Bristol, UK    mailto:Ian_Dickinson@hp.com
> 

Received on Friday, 26 January 2001 13:36:08 UTC