property domains

7 messages Options
Embed this post
Permalink
Graham Matthews

property domains

Reply Threaded More More options
Print post
Permalink
Some javascript/style in this post has been disabled (why?)
This is really an OWL question, rather than a Protege OWL question, but ...

I have one ontology O1 with a declaration that property P has domain A union B. 

I have another ontology O2 with a declaration that property P has domain C.

I import O2 into O1. What happens to the domain of P?

I ask this because I want to end up with the domain of P being A union B union C. But I don't think is what happens. 

The genesis for this is that I am trying to figure out from an ontology which classes intersect the domain of a property. If I have domain declarations this can be done. Without such declarations I keep running into the problem that for an class, C, "C intersect (domain of P)" non empty will almost certainly be unprovable (i.e. not follow from the axioms of the ontology), and hence the open world assumption implies that the reasoner should assume it is non empty.

thanks
graham



_______________________________________________
protege-owl mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03
Thomas Schneider-5

Re: property domains

Reply Threaded More More options
Print post
Permalink
Hi Graham,

On 12 Nov 2009, at 00:53, Graham Matthews wrote:

> This is really an OWL question, rather than a Protege OWL question,  
> but ...
>
> I have one ontology O1 with a declaration that property P has domain  
> A union B.
>
> I have another ontology O2 with a declaration that property P has  
> domain C.
>
> I import O2 into O1. What happens to the domain of P?
Well, the resulting ontology will have both domain axioms. These say:

* Every individual that has some P-value is of type "A union B".
* Every individual that has some P-value is of type C.

Together, these two statements imply that every individual that has  
some P-value is of type "(A union B)" and of type C. They therefore  
imply that P has domain "(A union B) intersection C".

> I ask this because I want to end up with the domain of P being A  
> union B union C. But I don't think is what happens.

Then you will have to state this explicitly.

Cheers

Thomas

> The genesis for this is that I am trying to figure out from an  
> ontology which classes intersect the domain of a property. If I have  
> domain declarations this can be done. Without such declarations I  
> keep running into the problem that for an class, C, "C intersect  
> (domain of P)" non empty will almost certainly be unprovable (i.e.  
> not follow from the axioms of the ontology), and hence the open  
> world assumption implies that the reasoner should assume it is non  
> empty.
>
> thanks
> graham
>
>
> _______________________________________________
> protege-owl mailing list
> [hidden email]
> https://mailman.stanford.edu/mailman/listinfo/protege-owl
>
> Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03
+----------------------------------------------------------------------+
|  Dr Thomas Schneider                    schneider (at) cs.man.ac.uk  |
|  School of Computer Science       http://www.cs.man.ac.uk/~schneidt  |
|  Kilburn Building, Room 2.114                 phone +44 161 2756136  |
|  University of Manchester                                            |
|  Oxford Road                                             _///_       |
|  Manchester M13 9PL                                      (o~o)       |
+-----------------------------------------------------oOOO--(_)--OOOo--+

Nantwich (n.)
   A late-night snack, invented by the Earl of Nantwich, which consists
   of the dampest thing in the fridge. The Earl, who lived in a flat in
   Clapham, invented the nantwich to avoid having to go shopping.

                   Douglas Adams, John Lloyd: The Deeper Meaning of Liff





_______________________________________________
protege-owl mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03

PGP.sig (210 bytes) Download Attachment
Pitonyak, Andrew D

Re: property domains

Reply Threaded More More options
Print post
Permalink
In reply to this post by Graham Matthews
Some javascript/style in this post has been disabled (why?)

Given the open world assumptions, the primary purposes for specifying a domain are:

 

(1)    Allow a reasoned to figure out a type. For example, if I use an object in the domain, then the reasoned can say “hey, that is either an A, or a B”.

(2)    For use by your own software that uses the Ontology definition to make decisions.

 

 

Considering the first point above, you have two statements. The first is that the domain is A Union B, which means that an object used in the domain is of type A or of type B. Your second statement states specifically that the object is of type C.

 

As Thomas points out in his reply to you, this means that it is in ((A Union B) Intersect C).

 

In general, this is not a problem unless you have a reasoner or interpret, or interpret your results based on the Ontology and its meaning.

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Graham Matthews
Sent: Wednesday, November 11, 2009 7:54 PM
To: [hidden email]
Subject: [protege-owl] property domains

 

This is really an OWL question, rather than a Protege OWL question, but ...

 

I have one ontology O1 with a declaration that property P has domain A union B. 

 

I have another ontology O2 with a declaration that property P has domain C.

 

I import O2 into O1. What happens to the domain of P?

 

I ask this because I want to end up with the domain of P being A union B union C. But I don't think is what happens. 

 

The genesis for this is that I am trying to figure out from an ontology which classes intersect the domain of a property. If I have domain declarations this can be done. Without such declarations I keep running into the problem that for an class, C, "C intersect (domain of P)" non empty will almost certainly be unprovable (i.e. not follow from the axioms of the ontology), and hence the open world assumption implies that the reasoner should assume it is non empty.

 

thanks

graham

 

 


_______________________________________________
protege-owl mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03
Graham Matthews

Re: property domains

Reply Threaded More More options
Print post
Permalink
In reply to this post by Thomas Schneider-5
Some javascript/style in this post has been disabled (why?)
Thanks for the reply Thomas, and also Andrew in another mail.

The only way I can think of to get the domain to be the union (other than declaring it explicitly which I would like to avoid if possible) is to use restrictions. So rather than declare the domain of P to be A union B, declare A to be a subclass of "P some A", and likewise for B and C.

This has the advantage that when I import ontology O2 I get a domain at least as large as A union B union C. The disadvantage of course is that to make it exactly A union B union C I need to declare that "P some D" is empty for all D that P is not defined on.

Or am I missing something obvious here?

graham


On Nov 12, 2009, at 12:52 AM, Thomas Schneider wrote:

Hi Graham,

On 12 Nov 2009, at 00:53, Graham Matthews wrote:

This is really an OWL question, rather than a Protege OWL question, but ...

I have one ontology O1 with a declaration that property P has domain A union B.

I have another ontology O2 with a declaration that property P has domain C.

I import O2 into O1. What happens to the domain of P?

Well, the resulting ontology will have both domain axioms. These say:

* Every individual that has some P-value is of type "A union B".
* Every individual that has some P-value is of type C.

Together, these two statements imply that every individual that has some P-value is of type "(A union B)" and of type C. They therefore imply that P has domain "(A union B) intersection C".

I ask this because I want to end up with the domain of P being A union B union C. But I don't think is what happens.

Then you will have to state this explicitly.

Cheers

Thomas

The genesis for this is that I am trying to figure out from an ontology which classes intersect the domain of a property. If I have domain declarations this can be done. Without such declarations I keep running into the problem that for an class, C, "C intersect (domain of P)" non empty will almost certainly be unprovable (i.e. not follow from the axioms of the ontology), and hence the open world assumption implies that the reasoner should assume it is non empty.

thanks
graham


_______________________________________________
protege-owl mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03

+----------------------------------------------------------------------+
|  Dr Thomas Schneider                    schneider (at) cs.man.ac.uk  |
|  School of Computer Science       http://www.cs.man.ac.uk/~schneidt  |
|  Kilburn Building, Room 2.114                 phone +44 161 2756136  |
|  University of Manchester                                            |
|  Oxford Road                                             _///_       |
|  Manchester M13 9PL                                      (o~o)       |
+-----------------------------------------------------oOOO--(_)--OOOo--+

Nantwich (n.)
 A late-night snack, invented by the Earl of Nantwich, which consists
 of the dampest thing in the fridge. The Earl, who lived in a flat in
 Clapham, invented the nantwich to avoid having to go shopping.

                 Douglas Adams, John Lloyd: The Deeper Meaning of Liff



_______________________________________________
protege-owl mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03


_______________________________________________
protege-owl mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03
Thomas Russ

Re: property domains

Reply Threaded More More options
Print post
Permalink
You seem to have a good grasp of the consequences of this.


On Nov 12, 2009, at 8:10 AM, Graham Matthews wrote:

> Thanks for the reply Thomas, and also Andrew in another mail.
>
> The only way I can think of to get the domain to be the union (other  
> than declaring it explicitly which I would like to avoid if  
> possible) is to use restrictions. So rather than declare the domain  
> of P to be A union B, declare A to be a subclass of "P some A", and  
> likewise for B and C.

Well, this doesn't really say anything about the domain of the  
property, except in a very tenuous way by declaring that items of the  
given type (say P) are in the domain.

Mostly it helps you determine where the property is required to exist.

Particularly because of open world, this doesn't give you much  
leverage in figuring out where is does apply.

> This has the advantage that when I import ontology O2 I get a domain  
> at least as large as A union B union C. The disadvantage of course  
> is that to make it exactly A union B union C I need to declare that  
> "P some D" is empty for all D that P is not defined on.

Well, yes.

Although the last item not something that a reasoner can really work  
with.  That is because there isn't any way to express the notion "P is  
not defined on" in the OWL language.  That is essentially a closed  
world axiom that can't be said in that form.

The best you could say would be something like
     ( P maxCardinality 0  )  <==>  (complement (union A B C))

But that is pretty much the same type of thing as just saying the  
domain ins that union explicitly.

Open world will require you to explicitly state where P doesn't apply,  
since there could always be additional (P some C) restrictions that  
apply to other classes, but that just weren't stated.


> Or am I missing something obvious here?
>
> graham
>
>
> On Nov 12, 2009, at 12:52 AM, Thomas Schneider wrote:
>
>> Hi Graham,
>>
>> On 12 Nov 2009, at 00:53, Graham Matthews wrote:
>>
>>> This is really an OWL question, rather than a Protege OWL  
>>> question, but ...
>>>
>>> I have one ontology O1 with a declaration that property P has  
>>> domain A union B.
>>>
>>> I have another ontology O2 with a declaration that property P has  
>>> domain C.
>>>
>>> I import O2 into O1. What happens to the domain of P?
>>
>> Well, the resulting ontology will have both domain axioms. These say:
>>
>> * Every individual that has some P-value is of type "A union B".
>> * Every individual that has some P-value is of type C.
>>
>> Together, these two statements imply that every individual that has  
>> some P-value is of type "(A union B)" and of type C. They therefore  
>> imply that P has domain "(A union B) intersection C".
>>
>>> I ask this because I want to end up with the domain of P being A  
>>> union B union C. But I don't think is what happens.
>>
>> Then you will have to state this explicitly.
>>
>> Cheers
>>
>> Thomas
>>
>>> The genesis for this is that I am trying to figure out from an  
>>> ontology which classes intersect the domain of a property. If I  
>>> have domain declarations this can be done. Without such  
>>> declarations I keep running into the problem that for an class, C,  
>>> "C intersect (domain of P)" non empty will almost certainly be  
>>> unprovable (i.e. not follow from the axioms of the ontology), and  
>>> hence the open world assumption implies that the reasoner should  
>>> assume it is non empty.
>>>
>>> thanks
>>> graham
>>>
>>>
>>> _______________________________________________
>>> protege-owl mailing list
>>> [hidden email]
>>> https://mailman.stanford.edu/mailman/listinfo/protege-owl
>>>
>>> Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03
>>
>> +
>> ----------------------------------------------------------------------+
>> |  Dr Thomas Schneider                    schneider (at)  
>> cs.man.ac.uk  |
>> |  School of Computer Science       http://www.cs.man.ac.uk/ 
>> ~schneidt  |
>> |  Kilburn Building, Room 2.114                 phone +44 161  
>> 2756136  |
>> |  University of  
>> Manchester                                            |
>> |  Oxford Road                                             _///
>> _       |
>> |  Manchester M13 9PL                                      
>> (o~o)       |
>> +-----------------------------------------------------oOOO--(_)--
>> OOOo--+
>>
>> Nantwich (n.)
>>  A late-night snack, invented by the Earl of Nantwich, which consists
>>  of the dampest thing in the fridge. The Earl, who lived in a flat in
>>  Clapham, invented the nantwich to avoid having to go shopping.
>>
>>                  Douglas Adams, John Lloyd: The Deeper Meaning of  
>> Liff
>>
>>
>>
>> _______________________________________________
>> protege-owl mailing list
>> [hidden email]
>> https://mailman.stanford.edu/mailman/listinfo/protege-owl
>>
>> Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03
>
> _______________________________________________
> protege-owl mailing list
> [hidden email]
> https://mailman.stanford.edu/mailman/listinfo/protege-owl
>
> Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03

_______________________________________________
protege-owl mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03
Thomas Russ

Re: property domains

Reply Threaded More More options
Print post
Permalink
In reply to this post by Graham Matthews

On Nov 11, 2009, at 4:53 PM, Graham Matthews wrote:

> The genesis for this is that I am trying to figure out from an  
> ontology which classes intersect the domain of a property. If I have  
> domain declarations this can be done. Without such declarations I  
> keep running into the problem that for an class, C, "C intersect  
> (domain of P)" non empty will almost certainly be unprovable (i.e.  
> not follow from the axioms of the ontology), and hence the open  
> world assumption implies that the reasoner should assume it is non  
> empty.

Ah, looking back I see your motivation.

You will probably need to write your own inference procedure that  
figures this out.  That will give you complete control over what you  
compute.

Or you can create your own AnnotationProperty to use for this  
purpose.  In that case, you could (with a little extra work), use it  
to specify exactly what you wish.

AnnotationProperty appliesToClass

   P appliesToClass A
   P appliesToClass B
   P appliesToClass C

Then, at any time, the known fillers of this annotation property gives  
you the set of classes to which this particular property "applies".




_______________________________________________
protege-owl mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03
Timothy Redmond

Re: property domains

Reply Threaded More More options
Print post
Permalink
In reply to this post by Graham Matthews


> >
> > I ask this because I want to end up with the domain of P being A
> > union B union C. But I don't think is what happens.

You are right - this is not what happens.

>
> > I have one ontology O1 with a declaration that property P has domain
> > A union B.
> >
> >
> > I have another ontology O2 with a declaration that property P has
> > domain C.
> >
> >
> > I import O2 into O1. What happens to the domain of P?

What happens is that both assertions about the domain of P are true.  To
understand what this means we have to dig a bit into what these domain
assertions mean.  The statement that P has domain A union B means that
for any individuals x and y such that

   x P y

we have x is a member of A union B.  The statement that P has domain C
means that for any individuals x and y such that

   x P y

we have x is a member of C.  Thus, for example, we could conclude that P
has domain

    (A union B) intersection C

which is the sharpest domain statement that we can prove with this data.


> The genesis for this is that I am trying to figure out from an
> ontology which classes intersect the domain of a property.

This might not be the right way to ask the question.  Note that
owl:Thing is a domain for any property (vacuous).  But perhaps what you
are really asking, for some class X, is whether the expression

     X intersection (P some Thing)

is satisfiable.  A reasoner will answer this question relatively easily.

-Timothy


On Wed, 2009-11-11 at 16:53 -0800, Graham Matthews wrote:

> This is really an OWL question, rather than a Protege OWL question,
> but ...
>
>
> I have one ontology O1 with a declaration that property P has domain A
> union B.
>
>
> I have another ontology O2 with a declaration that property P has
> domain C.
>
>
> I import O2 into O1. What happens to the domain of P?
>
>
> I ask this because I want to end up with the domain of P being A union
> B union C. But I don't think is what happens.
>
>
> The genesis for this is that I am trying to figure out from an
> ontology which classes intersect the domain of a property. If I have
> domain declarations this can be done. Without such declarations I keep
> running into the problem that for an class, C, "C intersect (domain of
> P)" non empty will almost certainly be unprovable (i.e. not follow
> from the axioms of the ontology), and hence the open world assumption
> implies that the reasoner should assume it is non empty.
>
>
> thanks
> graham
>
>
>
>
> _______________________________________________
> protege-owl mailing list
> [hidden email]
> https://mailman.stanford.edu/mailman/listinfo/protege-owl
>
> Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03

_______________________________________________
protege-owl mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03