On 01/10/12 17:03, Mark Fischer wrote:
Can anybody point me toward any documentation for the various Jena
reasoners?
There is no documentation beyond the reference manual you have already
seen, the javadoc, the code and this list :)
I'm using the Owl Ontology Model Spec OWL_MEM_RULE_INF. When I validate()
and get a report, the type string and extension object are both reasoner
dependant.
I'd like to know what the list of possible 'types' are.
The validation for the various OWL flavours are defined in the
corresponding rule sets included in the distribution. In your case see
/etc/owl-fb.rules or just go to:
http://svn.apache.org/repos/asf/jena/trunk/jena-core/etc/owl-fb.rules
If you look at the bottom of that file there are a set of validation
rules. Each creates a triple of the form:
?culprit rb:violation F .
Where F is a functor, either "warn" or "error". The arguments to those
functors are:
- the culprit
- an error message
- the implicated nodes
The validation code in FBRuleInfGraph extracts the implicated nodes to
formulate the report string.
If you need to access to these programatically you would need to trigger
validation yourself outside of the FBRuleInfGraph framework. This should
be possible. You'll need to:
(1) setFunctorFiltering to false.
(2) Create a trigger triple to switch on the validation rules:
Triple validateOn = new Triple(Node.createAnon(),
ReasonerVocabulary.RB_VALIDATION.asNode(),
Functor.makeFunctorNode("on", new Node[] {}));
Add it to the graph and call prepare().
(3) List all triples of the form:
* ReasonerVocabulary.RB_VALIDATION_REPORT *
The value of each result will be a Functor (normally hidden from view
but the setFunctorFIltering will have disabled that hiding) from which
you can then extract the raw arguments.
Dave