Rules affected by named graphs?

I have defined several reasoning rules and stored the Rule objects in a named graph :rules. I have the instance data that supports the rules spread among several graphs, let's say :apples, :oranges, and :pears. I have set my reasoning.schema.graphs section to :rules,:apples,:oranges,:pears and the reasoning level to SL, which should execute the rules.

However, given rules of the form 'IF { BODY } THEN { HEAD }', when I query for 'SELECT * WHERE { HEAD }', I get no results, and the query takes a LONG time (70+ seconds on only 9 million triples).

If I execute 'CONSTRUCT { HEAD } FROM :rules FROM :apples FROM :oranges FROM :pears WHERE { BODY }', I get the expected results in only 200ms or so.

Is there a way for me to get an execution trace from the reasoner to make sure my rules are seen and executed? Is there a different issue here that may be affecting my results?

Can you check the logs (stardog.log) for any errors or warnings? What version of stardog are you running? Can you share more specific information about your data and rules? Lastly can you include the query plans for your queries?

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.