Hi, Here is my basic issue:
I am running TBC Free 4.3.1.v20131101-1317R.
I have defined an ontology that describes Einstein's riddle (attached),
which is solvable by strict DL reasoners (HermiT and Pellet) in Protege. I
decided to test it out in RL with TopSPIN, importing the owlrl spin rules.
It does not solve initially, so I decided to see what additional rules I
should create to complete the inferenced solution.
One rule I added was very similar to cls-maxqc3, except that it operates
on "qualifiedCardinality" of 1 instead of "maxQualifiedCardinality". Here
is the rule in SPARQL:
CONSTRUCT {
?v1 owl:sameAs ?v2 .
}
WHERE {
?c owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger .
?c owl:onProperty ?p .
?c owl:onClass ?c2 .
?o a ?c .
?o ?p ?v1 .
?v1 a ?c2 .
?o ?p ?v2 .
?v2 a ?c2 .
FILTER (?v1 != ?v2) .
}
Here's the interesting part:
When I run the reasoner, it correctly infers a new statement, specifically
that the individual "blue" is owl:sameAs the individual "second". This is
based the fact the the individual "first" is a subclass of the anonymous
"qualifiedCardinality" restriction defined above (on the property
"nextTo"), which points to both "blue" and "second".
So far so good.
But when I execute the exact SPARQL of the rule in the SPARQL query view
(against the fully realized graph), it returns nothing. I investigated
this by querying for a bunch of individual relationships and found that
while "FirstHouse" is correctly identified to be a subclass of the
anonymous restriction, the individual "first" is not declared to be of the
anonymous type. Thus the query fails at the "?o a ?c" pattern.
At first it seemed like a possible failure of the cax-sco rule, but like I
said, it works when executed by the reasoner.
So what I'm wondering is whether TopSPIN may calculate certain "internal"
triples that it uses to reason without "exporting" those triples to the
resultant inferred graph. The reason it's an issue is that it makes it
difficult to test rules/queries when the behavior is different depending on
how the SPARQL is executed.
Thank you!
--
-- You received this message because you are subscribed to the Google
Group "TopBraid Suite Users", the topics of which include Enterprise Vocabulary
Network (EVN), TopBraid Composer, TopBraid Live, TopBraid Insight,
SPARQLMotion, SPARQL Web Pages and SPIN.
To post to this group, send email to
[email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/topbraid-users?hl=en
---
You received this message because you are subscribed to the Google Groups
"TopBraid Suite Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.
riddle.owl
Description: Binary data
