RE: stating that something doesn't exist

> -----Original Message-----
> From: Bijan Parsia [mailto:bparsia@cs.man.ac.uk]
> Sent: Thursday, May 22, 2008 2:52 AM
> To: Johnson, Matthew C. (LNG-HBE)
> Cc: semantic-web@w3.org
> Subject: Re: stating that something doesn't exist
> 
> On May 21, 2008, at 10:10 PM, Johnson, Matthew C. (LNG-HBE) wrote:
> 
> > Hi,
> >
> > I'm slowing soaking in what OWL can and cannot do and after reading
> > the "Lessons For Ontology Writers" post [1] by Ian Davis, I thought
> > I'd go ahead and ask this capabilities question here.
> >
> > In OWL, can you directly define a property that says that something
> > does not occur.  My current use-case is in determining hyper-
> > linking relationships between various publications.  The following:
> [snip]
> > Lets me say that pub 1 links to pub 2 and that pub 3 links to pub
> > 2.  However, if I understand the open-world assumption, I cannot
> > assume that pub 2 does not link to pub 3.  I would need to define
> > something like:
> >
> > mysch:notLinksTo a rdf:Property .
> >
> > to explicitly state this fact that pub 2 does not link to pub 3.
> >
> > My question is whether it is possible in OWL to define a property
> > whose range of acceptable instances is the list of instances that
> > do not exist as an object in a mysch:linksTo statement (for a given
> > publication)?
> 
> Do you really mean *for a given* publication, or *for any*
> publication? The latter is easy, define the range of your property to
> be those individuals that complementOf(someValuesFrom(inverseOf
> (linksTo), owl:Thing)).

[[MCJ]] Hmm.  When I wrote the question, I was thinking about the
specific usage/query of these statements which basically is "does pub X
link to pub Y?"...that is why I wrote "for a given publication".
However, I think the answer may be *for any publication*.  For X, I'd
like the range of the notLinksTo property to [automatically] include the
list of publications for which publication X does not have a linksTo
property.  It is also safe to say that if a publication links to itself
that

mypubs:X mysch:linksTo mypubs:X

would be stated so there is not need to exclude oneself from the range
of values allowed in notLinksTo.

In your definition above, do you mean "inverseOf" to essentially be "not
(linksTo)"?  I'm a little confused about what the inverse would be
(especially if an inverse property has not been created yet).

> If you need it for a specific individual replace the someValuesFrom
> with a hasValue and the owl:Thing with that individual. If you want
> it to be a class of pubs, replace owl:Thing with that class.
> 
> Cheers,
> Bijan.

 [[MCJ]] 
Thanks!  Matt

Received on Thursday, 22 May 2008 12:53:27 UTC