How to best handle inference will depend on how it's being used. There is a tension between the full rules engine and having database data.

If you can maintain the data in the database only, by infererring once and writing inferred triples to the database but update is now not automatic.

If that does not work well for you, then you might consider doing inference at query time with the backwards rule engine.

Normally, the rules engine is hybrid - some forward rules, executed once on .prepare() then backwards rules on-demand at query time.

When a lot of overhead from the .prepare is going to waste, not used in the transaction, backwards makes sense, delaying work until needed during transaction execution.

(Maybe Dave can add something here).

        Andy

Reply via email to