Reasonable

Build Status

An OWL 2 RL reasoner with reasonable performance

OWL 2 Rules

Using rule definitions from here.

TODO: implement RDF/RDFS entailment semantics as described here

Note: haven't implemented rules that produce exceptions; waiting to determine the best way of handling these errors.

Equality Semantics

|Completed| Rule name | Notes | |---------|----------|-------| | no | eq-ref | implementation is very inefficient; causes lots of flux | | yes| eq-sym | | | yes| eq-trans | | | yes| eq-rep-s | | | yes| eq-rep-p | | | yes| eq-rep-o | | | no | eq-diff1 | throws exception | | no | eq-diff2 | throws exception | | no | eq-diff3 | throws exception |

Property Axiom Semantics

|Completed| Rule name | Notes | |---------|----------|-------| | no | prp-ap | | | yes | prp-dom | | | yes | prp-rng | | | yes | prp-fp | | | yes | prp-ifp | | | yes | prp-irp | throws exception | | yes | prp-symp | | | yes | prp-asyp | throws exception | | yes | prp-trp | | | yes | prp-spo1 | | | no | prp-spo2 | | | yes | prp-eqp1 | | | yes | prp-eqp2 | | | yes | prp-pdw | throws exception | | no | prp-adp | throws exception | | yes | prp-inv1 | | | yes | prp-inv2 | | | no | prp-key | | | no | prp-npa1 | throws exception | | no | prp-npa2 | throws exception |

Class Semantics

|Completed| Rule name | Notes | |---------|----------|-------| | yes| cls-thing | | | yes| cls-nothing1 | | | yes| cls-nothing2 | throws exception | | yes| cls-int1 | | | yes| cls-int2 | | | yes| cls-uni | | | yes| cls-com | throws exception | | yes| cls-svf1 | | | yes| cls-svf2 | | | yes| cls-avf | | | yes| cls-hv1 | | | yes| cls-hv2 | | | no | cls-maxc1 | throws exception | | no | cls-maxc2 | | | no | cls-maxqc1 | throws exception | | no | cls-maxqc2 | throws exception | | no | cls-maxqc3 | | | no | cls-maxqc4 | | | no | cls-oo | |

Class Axiom Semantics

|Completed| Rule name | Notes | |---------|----------|-------| | yes| cax-sco | | | yes| cax-eqc1 | | | yes| cax-eqc2 | | | yes| cax-dw | throws exception | | no | cax-adc | throws exception |

Other