Hi,
So, I am using TBC Free to play around with implementing additional DL
rules on top of the provided OWL RL implementation. I've had a lot of
success, but in many cases the performance is slow (I know this is a major
reason for the RL restrictions to begin with).
Specifically much of the performance hit seems to come from calls to the
ARQ "magic" property list:member.
I tried to alleviate this by replacing those calls with the property path
expression (rdf:rest)*/rdf:first -- this speeds things up significantly,
but I get very different (incorrect) inferencing results. What's
interesting is that if I run the query in SPARQL view with either
list:member or (rdf:rest)*/rdf:first *before any inferencing is done*, the
results are correct. There are many examples, but here is one of the
simpler ones:
CONSTRUCT {
?y1 owl:differentFrom ?y2 .
}
WHERE {
?x a owl:AllDifferent .
?x owl:distinctMembers ?list .
?list (rdf:rest)*/rdf:first ?y1 .
?list (rdf:rest)*/rdf:first ?y2 .
FILTER (?y1 != ?y2) .
}
Again, this works "as is" or with list:member during the first iteration of
rules. Later iterations begin to produce unexpected (by me) results. What
seems to be happening is that the engine is reading many of my constructed
?x owl:differentFrom ?y statements (elsewhere) and somehow adding them to
the ?x a owl:AllDifferent patterns in memory. I do not have any rules that
create or alter any AllDifferent constructs, but later queries using the
property path clearly contain members of AllDifferent that are not
explicitly defined, while list:member continues to return the original
(expected) bindings for that set.
Any thoughts on why the 2 scenarios are behaving differently?
Thanks!
Aaron
--
-- 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.