Automatic inference of Domain and Range for inverse properties

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Automatic inference of Domain and Range for inverse properties

Michael Hillman

When following the OWL Pizza tutorial for Protégé 4 (although I am using Protégé 5.5.0, I believe the basic concepts and processes should be the same), exercise 14 states that if a property has a set Domain and Range, the Domain and Range for the inverse of that property should be inferred automatically. This however, does not seem to happen in my case.

I have ensured that a reasoner is set (and running) as well enabling all display inference options. Am I missing something or is this feature no longer enabled in 5.5.0?

 

Thanks,

Michael


Virus-free. www.avast.com

_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Automatic inference of Domain and Range for inverse properties

Michael DeBellis-2
Michael, it should definitely still be supported. You seem to have done the thing that I was sure was the problem: enabling the inferences from the Reasoner>Configure menu option. 

I actually had the same problem a while ago with Protege 5.5 and it turned out to be a conflict between the version of the JVM that I had downloaded for Eclipse and the one that Protege was using. My understanding is that they are supposed to be separate from each other (Protege comes bundled with a JVM that is supposed to be independent of others on the machine) but for some reason there was a conflict on my Windows desktop machine. Have you downloaded a JVM for Eclipse or some other tool? Can you attach the file so people can look at it and see if we can replicate the error?

Cheers,
Michael

On Fri, Mar 13, 2020 at 10:51 AM Michael Hillman <[hidden email]> wrote:

When following the OWL Pizza tutorial for Protégé 4 (although I am using Protégé 5.5.0, I believe the basic concepts and processes should be the same), exercise 14 states that if a property has a set Domain and Range, the Domain and Range for the inverse of that property should be inferred automatically. This however, does not seem to happen in my case.

I have ensured that a reasoner is set (and running) as well enabling all display inference options. Am I missing something or is this feature no longer enabled in 5.5.0?

 

Thanks,

Michael


Virus-free. www.avast.com
_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user

_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Automatic inference of Domain and Range for inverse properties

marksem
In reply to this post by Michael Hillman
What reasoner are you using?
What specifically are you seeing that indicates that inverse property domain/range is not working?

I did a little experiment with Protege 5.5.0 and HermiT 1.4.3.456, and inferring Domain from inverse property seems to work. See screenshots below.  (Experiment OWL file attached). 

  

 -Mark



From: protege-user <[hidden email]> on behalf of Michael Hillman <[hidden email]>
Sent: Friday, March 13, 2020 1:50 PM
To: [hidden email] <[hidden email]>
Subject: [protege-user] Automatic inference of Domain and Range for inverse properties
 

When following the OWL Pizza tutorial for Protégé 4 (although I am using Protégé 5.5.0, I believe the basic concepts and processes should be the same), exercise 14 states that if a property has a set Domain and Range, the Domain and Range for the inverse of that property should be inferred automatically. This however, does not seem to happen in my case.

I have ensured that a reasoner is set (and running) as well enabling all display inference options. Am I missing something or is this feature no longer enabled in 5.5.0?

 

Thanks,

Michael


Virus-free. www.avast.com

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

lovedThings.owl (2K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Automatic inference of Domain and Range for inverse properties

Michael Hillman

I’m using the HermiT 1.4.3.456 Reasoner (the only one I seem to have installed). Toggling the “Show Inferences” box doesn’t seem to resolve the issue either. I’ve also attached my OWL file.



Thanks,
Michael

 

From: Mark Wallace <[hidden email]>
Sent: 16 March 2020 14:46
To: [hidden email]; [hidden email]
Subject: Re: [protege-user] Automatic inference of Domain and Range for inverse properties

 

What reasoner are you using?

What specifically are you seeing that indicates that inverse property domain/range is not working?

 

I did a little experiment with Protege 5.5.0 and HermiT 1.4.3.456, and inferring Domain from inverse property seems to work. See screenshots below.  (Experiment OWL file attached). 

 

  

 

 -Mark

 

 


From: protege-user <[hidden email]> on behalf of Michael Hillman <[hidden email]>
Sent: Friday, March 13, 2020 1:50 PM
To: [hidden email] <[hidden email]>
Subject: [protege-user] Automatic inference of Domain and Range for inverse properties

 

When following the OWL Pizza tutorial for Protégé 4 (although I am using Protégé 5.5.0, I believe the basic concepts and processes should be the same), exercise 14 states that if a property has a set Domain and Range, the Domain and Range for the inverse of that property should be inferred automatically. This however, does not seem to happen in my case.

I have ensured that a reasoner is set (and running) as well enabling all display inference options. Am I missing something or is this feature no longer enabled in 5.5.0?

 

Thanks,

Michael

 

Virus-free. www.avast.com

 


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

pizza.owl (11K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Automatic inference of Domain and Range for inverse properties

Michael Hillman
In reply to this post by Michael DeBellis-2

I do indeed have other JVMs installed, quite a few actually. My PATH variable is currently set up so that running the “java” command uses 11.0.2 from Oracle.

However, looking at the Protégé log suggest it’s using a 1.8.0 JVM (I assume the one it is bundled with).

Thanks,

Michael

 

From: protege-user <[hidden email]> On Behalf Of Michael DeBellis
Sent: 13 March 2020 18:39
To: User support for WebProtege and Protege Desktop <[hidden email]>
Subject: Re: [protege-user] Automatic inference of Domain and Range for inverse properties

 

Michael, it should definitely still be supported. You seem to have done the thing that I was sure was the problem: enabling the inferences from the Reasoner>Configure menu option. 

 

I actually had the same problem a while ago with Protege 5.5 and it turned out to be a conflict between the version of the JVM that I had downloaded for Eclipse and the one that Protege was using. My understanding is that they are supposed to be separate from each other (Protege comes bundled with a JVM that is supposed to be independent of others on the machine) but for some reason there was a conflict on my Windows desktop machine. Have you downloaded a JVM for Eclipse or some other tool? Can you attach the file so people can look at it and see if we can replicate the error?

 

Cheers,

Michael

 

On Fri, Mar 13, 2020 at 10:51 AM Michael Hillman <[hidden email]> wrote:

When following the OWL Pizza tutorial for Protégé 4 (although I am using Protégé 5.5.0, I believe the basic concepts and processes should be the same), exercise 14 states that if a property has a set Domain and Range, the Domain and Range for the inverse of that property should be inferred automatically. This however, does not seem to happen in my case.

I have ensured that a reasoner is set (and running) as well enabling all display inference options. Am I missing something or is this feature no longer enabled in 5.5.0?

 

Thanks,

Michael

 

Virus-free. www.avast.com

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


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

protege.log (127K) Download Attachment
pizza.owl (11K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Automatic inference of Domain and Range for inverse properties

Michael DeBellis-2
Michael, I think the issue is you aren't specifying the domain and range as described in the Tutorial. The domain for hasTopiping should just be Pizza and the range should be PizzaTopping. You defined them both to be a IDL expressions that one would usually use as the definition of a class. You had the domain as "hasTopping some Pizza" and the range as "hasTopping some PizzaTopping". I'm not sure if that is supported or what it is supposed to do but it is an unusual way to define a domain and range. With that definition I saw the behavior you described: the domain and range were not propagated to the inverse but when I changed the domain and range to be Pizza and Topping respectively the inverses were inferred by the reasoner. Although I'm using Pellet, my guess is if you correct the definitions it should work for you as well. 

Michael

On Tue, Mar 17, 2020 at 2:48 AM Michael Hillman <[hidden email]> wrote:

I do indeed have other JVMs installed, quite a few actually. My PATH variable is currently set up so that running the “java” command uses 11.0.2 from Oracle.

However, looking at the Protégé log suggest it’s using a 1.8.0 JVM (I assume the one it is bundled with).

Thanks,

Michael

 

From: protege-user <[hidden email]> On Behalf Of Michael DeBellis
Sent: 13 March 2020 18:39
To: User support for WebProtege and Protege Desktop <[hidden email]>
Subject: Re: [protege-user] Automatic inference of Domain and Range for inverse properties

 

Michael, it should definitely still be supported. You seem to have done the thing that I was sure was the problem: enabling the inferences from the Reasoner>Configure menu option. 

 

I actually had the same problem a while ago with Protege 5.5 and it turned out to be a conflict between the version of the JVM that I had downloaded for Eclipse and the one that Protege was using. My understanding is that they are supposed to be separate from each other (Protege comes bundled with a JVM that is supposed to be independent of others on the machine) but for some reason there was a conflict on my Windows desktop machine. Have you downloaded a JVM for Eclipse or some other tool? Can you attach the file so people can look at it and see if we can replicate the error?

 

Cheers,

Michael

 

On Fri, Mar 13, 2020 at 10:51 AM Michael Hillman <[hidden email]> wrote:

When following the OWL Pizza tutorial for Protégé 4 (although I am using Protégé 5.5.0, I believe the basic concepts and processes should be the same), exercise 14 states that if a property has a set Domain and Range, the Domain and Range for the inverse of that property should be inferred automatically. This however, does not seem to happen in my case.

I have ensured that a reasoner is set (and running) as well enabling all display inference options. Am I missing something or is this feature no longer enabled in 5.5.0?

 

Thanks,

Michael

 

Virus-free. www.avast.com

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

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

_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Automatic inference of Domain and Range for inverse properties

Michael DeBellis-2
Correction on my last email: where I said " You defined them both to be a IDL expressions" that should have been just "DL" (Description Logic) not "IDL". 

On Tue, Mar 17, 2020 at 8:37 AM Michael DeBellis <[hidden email]> wrote:
Michael, I think the issue is you aren't specifying the domain and range as described in the Tutorial. The domain for hasTopiping should just be Pizza and the range should be PizzaTopping. You defined them both to be a IDL expressions that one would usually use as the definition of a class. You had the domain as "hasTopping some Pizza" and the range as "hasTopping some PizzaTopping". I'm not sure if that is supported or what it is supposed to do but it is an unusual way to define a domain and range. With that definition I saw the behavior you described: the domain and range were not propagated to the inverse but when I changed the domain and range to be Pizza and Topping respectively the inverses were inferred by the reasoner. Although I'm using Pellet, my guess is if you correct the definitions it should work for you as well. 

Michael

On Tue, Mar 17, 2020 at 2:48 AM Michael Hillman <[hidden email]> wrote:

I do indeed have other JVMs installed, quite a few actually. My PATH variable is currently set up so that running the “java” command uses 11.0.2 from Oracle.

However, looking at the Protégé log suggest it’s using a 1.8.0 JVM (I assume the one it is bundled with).

Thanks,

Michael

 

From: protege-user <[hidden email]> On Behalf Of Michael DeBellis
Sent: 13 March 2020 18:39
To: User support for WebProtege and Protege Desktop <[hidden email]>
Subject: Re: [protege-user] Automatic inference of Domain and Range for inverse properties

 

Michael, it should definitely still be supported. You seem to have done the thing that I was sure was the problem: enabling the inferences from the Reasoner>Configure menu option. 

 

I actually had the same problem a while ago with Protege 5.5 and it turned out to be a conflict between the version of the JVM that I had downloaded for Eclipse and the one that Protege was using. My understanding is that they are supposed to be separate from each other (Protege comes bundled with a JVM that is supposed to be independent of others on the machine) but for some reason there was a conflict on my Windows desktop machine. Have you downloaded a JVM for Eclipse or some other tool? Can you attach the file so people can look at it and see if we can replicate the error?

 

Cheers,

Michael

 

On Fri, Mar 13, 2020 at 10:51 AM Michael Hillman <[hidden email]> wrote:

When following the OWL Pizza tutorial for Protégé 4 (although I am using Protégé 5.5.0, I believe the basic concepts and processes should be the same), exercise 14 states that if a property has a set Domain and Range, the Domain and Range for the inverse of that property should be inferred automatically. This however, does not seem to happen in my case.

I have ensured that a reasoner is set (and running) as well enabling all display inference options. Am I missing something or is this feature no longer enabled in 5.5.0?

 

Thanks,

Michael

 

Virus-free. www.avast.com

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

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

_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Automatic inference of Domain and Range for inverse properties

Lorenz Buehmann

I'd call it "class expressions" as also used by OWL 2 W3C docs.


And yes, that's clearly wrong because 

ObjectProperty: hasTopping
                Domain: hasTopping some Pizza

means "everything that has a topping is something that has a pizza as topping". Weird, right?

In Protege, once you focused an entity like the property hasTopping, adding the domain just needs the class (expression) which is supposed to be the domain, like Pizza in your case.

On 17.03.20 18:39, Michael DeBellis wrote:
Correction on my last email: where I said " You defined them both to be a IDL expressions" that should have been just "DL" (Description Logic) not "IDL". 

On Tue, Mar 17, 2020 at 8:37 AM Michael DeBellis <[hidden email]> wrote:
Michael, I think the issue is you aren't specifying the domain and range as described in the Tutorial. The domain for hasTopiping should just be Pizza and the range should be PizzaTopping. You defined them both to be a IDL expressions that one would usually use as the definition of a class. You had the domain as "hasTopping some Pizza" and the range as "hasTopping some PizzaTopping". I'm not sure if that is supported or what it is supposed to do but it is an unusual way to define a domain and range. With that definition I saw the behavior you described: the domain and range were not propagated to the inverse but when I changed the domain and range to be Pizza and Topping respectively the inverses were inferred by the reasoner. Although I'm using Pellet, my guess is if you correct the definitions it should work for you as well. 

Michael

On Tue, Mar 17, 2020 at 2:48 AM Michael Hillman <[hidden email]> wrote:

I do indeed have other JVMs installed, quite a few actually. My PATH variable is currently set up so that running the “java” command uses 11.0.2 from Oracle.

However, looking at the Protégé log suggest it’s using a 1.8.0 JVM (I assume the one it is bundled with).

Thanks,

Michael

 

From: protege-user <[hidden email]> On Behalf Of Michael DeBellis
Sent: 13 March 2020 18:39
To: User support for WebProtege and Protege Desktop <[hidden email]>
Subject: Re: [protege-user] Automatic inference of Domain and Range for inverse properties

 

Michael, it should definitely still be supported. You seem to have done the thing that I was sure was the problem: enabling the inferences from the Reasoner>Configure menu option. 

 

I actually had the same problem a while ago with Protege 5.5 and it turned out to be a conflict between the version of the JVM that I had downloaded for Eclipse and the one that Protege was using. My understanding is that they are supposed to be separate from each other (Protege comes bundled with a JVM that is supposed to be independent of others on the machine) but for some reason there was a conflict on my Windows desktop machine. Have you downloaded a JVM for Eclipse or some other tool? Can you attach the file so people can look at it and see if we can replicate the error?

 

Cheers,

Michael

 

On Fri, Mar 13, 2020 at 10:51 AM Michael Hillman <[hidden email]> wrote:

When following the OWL Pizza tutorial for Protégé 4 (although I am using Protégé 5.5.0, I believe the basic concepts and processes should be the same), exercise 14 states that if a property has a set Domain and Range, the Domain and Range for the inverse of that property should be inferred automatically. This however, does not seem to happen in my case.

I have ensured that a reasoner is set (and running) as well enabling all display inference options. Am I missing something or is this feature no longer enabled in 5.5.0?

 

Thanks,

Michael

 

Virus-free. www.avast.com

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

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

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

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