RE: DAML+OIL: Questions & Improvements.

On January 27, King . Dany writes:
> Ian,
> 
> > -----Original Message-----
> > From: Ian Horrocks [mailto:horrocks@cs.man.ac.uk]
> > Sent: Saturday, January 27, 2001 11:22 AM
> > To: King . Dany
> > Cc: 'Dickinson, Ian J'; 'www-rdf-logic@w3.org'; TeamXML
> > Subject: RE: DAML+OIL: Questions & Improvements.
> > 
> > 
> > Hi Dany,
> > 
> > On January 26, King . Dany writes:
> > > 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.
> > 
> > The thinking behind the use of RDFS is that it already has the basic
> > elements of an ontology language - classes, properties, constraints,
> > and subclass and subproperty relations - and that DAML+OIL should
> > clarify (semantically) and extend (in some respects) what is there
> > already. DAML+OIL tries to maximise backwards compatibility by using
> > as much of RDFS as possible and only extending it where necessary. For
> > example, DAML+OIL uses the RDFS subClassOf relationship to (partially)
> > order the classes in an ontology. The advantage with this is that a
> > DAML+OIL ontology is partly accessible to any agent that understands RDFS.

I have attempted some answers/clarifications, but I'm not sure I
understand the direction of your argument.

> Backward compatibility is good.  The general concept makes sense.  However,
> there are currently only 13 DAML+OIL class/property equivalences to
> RDF/RDFS.  Is it not from these 13 classes/properties that the DAML+OIL
> primitives were defined?

No - barring typos such as the ones you pointed out, and which have
now been corrected, daml+oil uses RDF/RDFS "primitives" directly.

>  So, currently existing RDF tools will be able to
> process and interpret the use of those 13 RDF/RDFS primitives.  But, there
> are 34 DAML+OIL primitives: "equivalentTo", "sameClassAs", "samePropertyAs",
> "disjointWith", etc. (Note: the DAML+OIL primitives were defined in name
> only.  Specifications were provided for their functionality but for nearly
> all, definitions were not. From which I infer, that RDF is incapable of
> defining such specifications, and/or that the burden of interpretation of
> the DAML+OIL primitives will be picked up by DAML+OIL
> tools/compilers/processors.) 

The semantics is externally defined - this is no different (except in
the degree of formality of the definition) to RDFS, where the
semantics of subClassOf, subPropertyOf etc. are externally defined.

> Can currently existing RDF tools process and
> interpret these DAML+OIL primitives? Syntactically, because DAML+OIL is
> implemented with RDF, the answer is yes.  But semantically, because of the
> undefined functionality the answer is no.  Even after DAML+OIL (and +
> whatever else) has solidified and DAML+OIL tools are available, should RDF
> tools be modified to interpret DAML+OIL?

If you did that, you would have a DAML+OIL tool.

>  Since DAML+OIL is but one use of
> RDF, I don't think so. It appears to me that the vast majority of the
> semantics of DAML+OIL is not supported by RDF or its tools.  Hence,
> semantically speaking, DAML+OIL is not backward compatible with RDF.

I didn't say it is backwards compatible, I said it aims to maximise
backwards compatibility - an RDFS agent can, for example, understand
the primitive subClassOf relations in a DAML+OIL ontology.

> Syntactically however, it is... mostly (discrepancies: 1. RDF is requires
> acyclic subclass relations, DAML+OIL allows cyclic subclass relations; 2.
> DAML+OIL requires one syntax for cardinality to avoid exposed content, thus
> other equivalent and legal RDF syntaxes are illegal for DAML+OIL
> cardinality; 3. RDF allows only one range restriction per property, DAML+OIL
> allows multiple; 4. the "daml:collection" doesn't exist in RDF).

1 and 3 are likely to change in RDFS. 2 is not correct - the syntax
you mention is only a recommendation. The subject of collections is a
bit more contentious, but daml:collection can be seen as just a
shorthand for the rdf list structures defined in daml+oil.daml.

>  Therefore,
> with such vast differences in semantics and a ever growing syntactic
> divergence, how can backward compatibility be an issue?
> 
> > The reason for defining the daml equivalent classes and
> > properties was simply to save users from having to use namespace
> > prefixes (in which they fail anyway, unless the ontology is defined in
> > the same namespace as the daml+oil language definition).
> 
> There is still at least one benefit to having the equivalencies... There
> would only be one namespace prefix for DAML+OIL instead of three.  Why
> should the user have to be concerned with knowing when to use "rdf", "rdfs",
> or "daml" as a prefix?  For the sake of the tool builders, it is
> understandable that the use of RDF/RDFS prefixes is helpful.  But after the
> DAML+OIL tools are operational, shouldn't the use of the RDF/RDFS prefixes
> be depreciated?

I would say the opposite. When we have tools (and by the way, we
already have ontology editors for oil/daml+oil - check out OilEd at
http://img.cs.man.ac.uk/oil/), why should we bother with these local
equivalents that are only there to make life easier for humans - OilEd
seems to have no difficulty in remembering when to use rdf, rdfs or
daml.

> By the way, equivalences were not defined for "rdf:ID", "rdf:about", and
> "rdf:resource".

They weren't there in the original daml language specification, and as
the equivalents were only retained in order to maintain backwards
compatibility with daml, there was no reason to add them.

Regards, Ian

> Dan
> 

Received on Monday, 29 January 2001 18:11:42 UTC