On 14/10/15 13:01, Zak Mc Kracken wrote:
So far, I've experimented with Fuseki and using this in its configuration:
<#infGraph> rdf:type ja:InfModel ;
#the rules directory is in the "run" directory
ja:reasoner [ ja:rulesFrom <file:custom.rules> ; ] ;
ja:baseModel <#baseGraph> .
<#baseGraph> rdf:type tdb:GraphTDB;
tdb:location "test_custom_rules_tdb/db" .
But I suspect it's not configuring the InfModel the way I want (probably
it's taking the hybrid reasoner, which loads everything in memory), and,
honestly, the Fuseky/Assembler documentation doesn't help much in tuning
the InfModel configuration. Any help on this?
The documentation isn't very clear and I'm not fully familiar with how
the assembler works for rules. You might do best debug via configuring
in java and then shift to trying to express the layout in assembler.
However, going by the RDFS vocabulary described in the documentation I
think you want something more like:
<#infGraph> rdf:type ja:InfModel ;
ja:reasoner [
ja:reasonerURL <http://jena.hpl.hp.com/2003/GenericRuleReasoner> ;
ja:rules [ ja:rulesFrom <file:custom.rules> ]
];
ja:baseModel <#baseGraph> .
If your rules are written using backward rule notation then the default
"Hybrid" model will be fine, only the backward engine will be used. If
you write your rules as if they were forward inference but want them to
run backward then you would need to set the reasoner mode. Which can be
done but would have to work out the syntax.
Dave