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?