a bit of reasoning with stardog

1 view
Skip to first unread message

Maatary Okouya

unread,
Sep 23, 2014, 2:24:36 PM9/23/14
to sta...@clarkparsia.com
Let say i have the following statement in the default graph: 


<http://ex.com/me>  <http://ex.com/homeTel>  "808.000.00.00"


If I type: 


Select  ?s where {s? a owl:NamedIndividual}



Therefore why is it that when i type: 

. select ?p where  {?p a owl:DataTypeProperty}  I get nothing? 

select ?p where  {?p a rdf:Property}  I get nothing? 


More generally some of this thing are thing i have been able to do with owlim quick which are exploratory query. But i guess it has to do with the query answering difference. Triple are already there, while here the answer has to be carefully asked and the owl 2 dl inferencing well understood.

How to check for the objectProperty, dataProperty when it is not explicitly mention that they are? In owlim it's pretty quick to see the default behavior in those case as the inference can been see in the triplestore straight. So i would appreciate to know, how can i understand the general default behavior of stardog in those cases. 


Many thanks, 


Daniel

Maatary Okouya

unread,
Sep 26, 2014, 8:17:58 AM9/26/14
to sta...@clarkparsia.com
Does startDog consider property as annotation Property when they are not stated as either dataproperty or object property. 

I think i had something like that in protege back one year ago. It was the default behavior of the OWLAPI. Apparently taken from the spec. Is that the case is stardog?

Maatary Okouya

unread,
Sep 26, 2014, 8:36:59 AM9/26/14
to sta...@clarkparsia.com
I tried to query for p a owl:AnnotationProperty and i could not find anything either.

Is there any explanation to that ?

Evren Sirin

unread,
Sep 29, 2014, 11:42:35 AM9/29/14
to Stardog
Stardog will recognize properties that are explicitly typed as such or
used in a schema axiom. So if you have a triple { p subPropertyOf q }
then both p and q would be recognized as properties and returned in
reasoning queries. If a property is not typed or used in a schema
axiom then it will be ignored by the reasoner which is why your
queries do not return any results.

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

Maatary Okouya

unread,
Sep 29, 2014, 12:09:15 PM9/29/14
to sta...@clarkparsia.com
Thank you for the answer. However, i was wondering as to why is it as such ? how does that relate to the OWL 2 spec ? Also what do you mean by ignored ? what is the implication of ignored?

Evren Sirin

unread,
Sep 29, 2014, 1:02:58 PM9/29/14
to Stardog
OWL spec requires you to type every property explicitly [1] so
whenever you violate that constraint each tool might behave
differently. Ignored here means that the reasoner will not include
that property when you ask any schema query. There wouldn't be any
inferred results for that property in instance queries either. But
that is to be expected because for any inference to happen the
property should occur in at least one schema axiom in which case
Stardog would have recognized it as a property.

We might change the way Stardog recognizes properties in the future
but discovering properties using instance assertions instead of schema
axioms has a certain performance penalty especially when you try to
differentiate object vs data properties (think of databases with
billions of assertions). I'd suggest you always type your properties
and classes explicitly so the results will not depend on any
tool-specific behavior.

Best,
Evren

[1] http://www.w3.org/TR/owl2-syntax/#Typing_Constraints_of_OWL_2_DL

Maatary Okouya

unread,
Sep 29, 2014, 3:53:07 PM9/29/14
to sta...@clarkparsia.com
Make sense. I get it. Thank you for your input.
Reply all
Reply to author
Forward
0 new messages