RE: All humans love (all) cats

Alright Jie, so let me see if I understand this properly--see below my
comments. (As I am a little uncomfortable with the usual DL lingo, I'll  use
the standard set-theoretic jargon, though I hope this will not prevent you
from following my musings. (You may, alternatively, want to construe my
comments as addressing the semantic level.))

> EquivalentClasses( Human ObjectHasSelf( ex:pHuman ) )
> EquivalentClasses( Cat ObjectHasSelf( ex:pCat ) )

What you do, hence, is turn classes into relations: define two relations
ex:pHuman and ex:pCat as diagonals of HumanxHuman, resp. CatxCat. Did I get
it right?

> SubObjectPropertyOf( ObjectPropertyChain( ex:pHuman owl:topObjectProperty
> ex:pCat ) ex:love)

"Loves" would now be a sub-relation of the composite "pHuman o ThingxThing o
pCat," is that so?

It certainly makes sense, though I feel rather miffed by the fact that such
a simple and mundane-looking FOL statement requires such an excruciatingly
complicated workaround in order to be represented in OWL2. Would I not run
into problems with a reasoner such as Pellet, now that I've resorted to this
type of rendering?

Many thanks,

C

Received on Saturday, 2 October 2010 14:30:15 UTC