Open world reasoning about owl unions

5 views
Skip to first unread message

jrh...@thematix.com

unread,
Jun 28, 2015, 12:37:01 PM6/28/15
to sta...@clarkparsia.com
My simple ontology produces different subsumption results in Protege 5 beta and Stardog 3..
:AutonomousAgent rdf:type owl:Class .
:IndependentParty rdf:type owl:Class ;                 
                  rdfs:subClassOf [ rdf:type owl:Class ;
                                    owl:unionOf ( :Organization
                                                  :Person
                                                )
                                  ] .
:Organization rdf:type owl:Class ;
              rdfs:subClassOf :AutonomousAgent .
:Person rdf:type owl:Class ;
        rdfs:subClassOf :AutonomousAgent .a `

Hermit 1.3.8.3 in the Protege 5 Beta infers that IndependentParty is a subclass of AutonomousAgent. Stardog with reasoning on returns false when
ASK {:IndependentParty rdfs:subClassOf :AutonomousAgent} is executed.

Can someone help me understand why Stardog does not conclude that IndependentParty is a subclass of AutonomousAgent? Does OWA allow the addition of an additional axiom that would make IndependentParty a subclass of (Person or Organization or Robot)? If so, then the IndependentParty class could contain members of Robot, which is not a subclass of AutonomousAgent. I added this axiom in Protege and did not get an inconsistency (no surprise), but Hermit still concludes that IndependentParty is a subclass of AutonomousAgent. 

Evren Sirin

unread,
Jun 30, 2015, 3:53:23 PM6/30/15
to Stardog
This has nothing to do with OWA. None of the OWL 2 profiles support
owl:unionOf on the right-side of a subClass axiom and neither does the
SL profile. These profiles does not include disjunction to provide
tractable reasoning. If you set the reasoning type to DL then you'd
see this inference but all the reasoning would be performed in memory.

Best,
Evren
> --
> -- --
> You received this message because you are subscribed to the C&P "Stardog"
> group.
> To post to this group, send email to sta...@clarkparsia.com
> To unsubscribe from this group, send email to
> stardog+u...@clarkparsia.com
> For more options, visit this group at
> http://groups.google.com/a/clarkparsia.com/group/stardog?hl=en

jrh...@thematix.com

unread,
Jun 30, 2015, 5:35:07 PM6/30/15
to sta...@clarkparsia.com
I reread the documentation on reasoning and understand.
Is it possible to specify DL reasoning and then retrieve the inferred axioms from Pellet?

jimrh...@gmail.com

unread,
Jul 1, 2015, 12:04:06 AM7/1/15
to sta...@clarkparsia.com
I am using stardog.js and can't figure out how to set the reasoning type to DL. I do not see anything in the network programming section of the manual, nor is there any hint in the annotated source of stardog.js. My queries are mostly TBox queries, and many of them execute without reasoning. There are a few, involving inferred subsumptions, that would require DL reasoning. Can you supply more details about how to do this, or point me to an example?
Thanks!

Kendall Clark

unread,
Jul 1, 2015, 10:15:05 AM7/1/15
to stardog

You set the reasoning type for a database using reasoning.type; you enable that level of reasoning using the boolean flag. SL is the default. There are other choices as explained in the docs, including DL.

Cheers,
Kendall

On Wed, Jul 1, 2015 at 12:04 AM, <jimrh...@gmail.com> wrote:
I am using stardog.js and can't figure out how to set the reasoning type to DL. I do not see anything in the network programming section of the manual, nor is there any hint in the annotated source of stardog.js. My queries are mostly TBox queries, and many of them execute without reasoning. There are a few, involving inferred subsumptions, that would require DL reasoning. Can you supply more details about how to do this, or point me to an example?
Thanks!

--
Message has been deleted

Kendall Clark

unread,
Jul 1, 2015, 11:33:33 AM7/1/15
to stardog
reasoning.type is a *database* option; it's set in the same way as other database options; see the fine manual: http://docs.stardog.com/#_configuration_options #18, reasoning.type

Okay, having set that to "DL", you request reasoning for *any particular query* using the boolean flag; again, see the fine manual: http://complexible.github.io/stardog.js/docs/stardog.html#section-26

Cheers,
Kendall​

PS--you can actually set database options via stardog.js! Left as an exercise for the reader.

On Wed, Jul 1, 2015 at 11:23 AM, <jimrh...@gmail.com> wrote:
I am still searching for an answer. This post https://groups.google.com/a/clarkparsia.com/forum/#!topic/stardog/K2FJs29DjQI suggests that 3.x automatically checks the DL profile, but that is not happening for my query against a TBox that does not conform to any of the more restrictive profiles. I have looked at the Javadoc, the manual and the annotated Stardog.js code and cannot find anyplace that shows binding having a member named type, so I have no idea where "binding.type" would be set. In Stardog.js, there is an options object parameter on the query operation, but its members and their values do not hint that one can set the reasoning type/level to "DL" this way. 

jimrh...@gmail.com

unread,
Jul 1, 2015, 11:54:46 AM7/1/15
to sta...@clarkparsia.com
Thanks for your patience. I was looking at query configuration parameters, not database configuration. I see how to do this in Stardog.js.

Reply all
Reply to author
Forward
0 new messages