Re: class-specific inverse

Hi,

On 1 jun 2009, at 16:44, Lee Feigenbaum wrote:
>> But, if you have
>> Springer publishes  YourBook and YourBook is an instance of Book,  
>> then this does *not* entail  Springer publishesBook  YourBook
>
> ...But this is the part I'm asking how to do :-)

You can do this using complex role inclusion axioms (role chains) and  
marker properties [1]:

- add an object property 'isBook'
- put a self restriction on isBook on Book: Book subClassOf isBook  
some self
- add a role chain definition to publishesBook: publishes o isBook ->  
publishesBook
- (publishesBook does not have to be a subproperty of publishes)

What happens is that any individual of type Book (e.g. YourBook) will  
'get' an isBook relation with itself. Given a publisher individual  
(Springer) that has a publishes relation with YourBook, these  
properties will form a chain publishes, isBook... which is a sub  
property of publishesBook, and therefore the relation publishesBook  
will relate Springer to YourBook.

Obviously you can easily do the same for publishesNewspaper &c.

Alternatively, you can do the same for just the inverse (without a  
'publishes' property): isBook o publishedBy -> bookPublishedBy
Add publishesBook as inverse of bookPublishedBy to get the relation  
you wanted.

Oh, and [2]

-Rinke

[1] shameless self-advertisement: http://www.amazon.com/Ontology-Representation-Intelligence-Applications-Dissertations/dp/1607500132/ref=sr_1_1?ie=UTF8&s=books&qid=1243929407&sr=8-1

[2] http://www.webont.org/owled/2009/

>
>
> Alan gave me a pointer that I'll dig through a bit later.
>
> Lee
>
>> (the "range" only works in one direction, i.e., if  Springer  
>> publishesBook  YourBook and the range of publishesBook is Book,  
>> *then* YourBook is an instance of Book --- but not the other way  
>> round)
>> Did this answer your question? Cheers, Uli
>>> thanks,
>>> Lee
>>>



---
Drs Rinke Hoekstra

Leibniz Center for Law      |  AI Department
Faculty of Law              |  Faculty of Sciences
Universiteit van Amsterdam  |  Vrije Universiteit
Kloveniersburgwal 48        |  De Boelelaan 1081a
1012 CX  Amsterdam          |  1081 HV Amsterdam
+31-(0)20-5253499           |  +31-(0)20-5987752
hoekstra@uva.nl             |  hoekstra@few.vu.nl

Homepage: http://www.leibnizcenter.org/users/rinke

Received on Tuesday, 2 June 2009 08:02:58 UTC