Bossam is an inference engine (a Semantic Reasoner) for the semantic web. It is basically a RETE-based rule engine with native supports for reasoning over OWL ontologies, SWRL ontologies, and RuleML rules.
Additionally, Bossam includes several expressivity features including: 1) URI references as symbols, 2) 2nd-order logic syntax, 3) disjunctions in the antecedent and conjunctions in the consequent (both via Lloyd-Topor transformation), 4) URI-based java method attachment, 5) support for both negation-as-failure and classical negation.
Bossam loads, performs reasoning over, and answers to the queries over a knowledge set, which can include any combination of the following document types.
- RDF(S) documents (in RDF/XML or in N3)
- OWL documents (in RDF/XML or in N3)
- Bossam rule documents
- SWRL(+OWL) documents (in OWLX or in RDF/XML)
Bossam can call Java objects from the antecedent or consequent of rules through the URI-based java method attachment. It's possible to easily mix Java objects into the combination of rules and ontologies.
- Bossam Rule/OWL Reasoner Homepage (http://bossam.wordpress.com)