Semantic reasoner
From Wikipedia, the free encyclopedia
A semantic reasoner, reasoning engine, rules engine, or simply a reasoner, is a piece of software able to infer logical consequences from a set of asserted facts or axioms. The notion of a semantic reasoner generalizes that of an inference engine, by providing a richer set of mechanisms to work with. The inference rules are commonly specified by means of an ontology language, and often a description language. Many reasoners use first-order predicate logic to perform reasoning; inference commonly proceeds by forward chaining and backward chaining. There are also examples of probalistic reasoners, including Pei Wang's non-axiomatic reasoning system, Novamente's probabilistic logic network, which tip their hat to reasoning Bayesian networks, and Pronto[1] - probabilistic Description logic reasoner.
Contents |
[edit] Semantic reasoners
Existing semantic reasoners:
- Bossam, an RETE-based rule engine with native supports for reasoning over OWL ontologies, SWRL ontologies, and RuleML rules.
- Hoolet, an implementation of an OWL-DL reasoner. [2]
- Pellet, an open-source Java OWL DL reasoner. [3]
- KAON2 is an infrastructure for managing OWL-DL, SWRL, and F-Logic ontologies.
- RACER system, a semantic web reasoning system and information repository
- Jena (framework), an open source semantic web framework for Java.
- FaCT, a description logic (DL) classifier. [4]
- FaCT++, the new generation of FaCT OWL-DL reasoner. [5]
- SweetRules, an integrated set of tools for Semantic web rules and ontologies. [6]
[edit] Reasoner comparison
Bossam | Hoolet | Pellet | KAON2 | RacerPro | Jena | FaCT | FaCT++ | SweetRules | |
---|---|---|---|---|---|---|---|---|---|
OWL-DL Entailment | ? | ? | Yes | Yes | Yes | Yes | Yes | Yes | No |
Supported expressivity for reasoning | ? | ? | SHOIN(D) and SROIQ(D) | SHIQ(D) | ? | ? | ? | ? | ? |
Reasoning algorithm | ? | ? | (forward chaining & backward chaining) | Novel (backward chaining) | ? | ? | ? | ? | ? |
Updating the OWL-Model with inferred knowledge / Serialization of resulting ontology | Yes / Partial | ? | ? | No / No | ? | ? | ? | ? | ? |
Consistency checking | ? | Yes | Yes | ? | Yes | Yes | ? | ? | No |
DIG Support | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No |
SPARQL Support | No | No | Yes | Yes | Yes | Yes | No | No | No |
Rule Support | Yes (SWRL) | Yes (SWRL) | Yes (SWRL) | Yes (SWRL) | Yes (SWRL) | Yes (Own rule format) | No | No | Yes (SWRL, RuleML, Jess) |
SWRL/OWLX Parser | Yes | Yes | Yes | No | Yes | No | No | No | Yes |
SWRL/RDF Parser | Yes | ? | Yes | No | Yes | No | No | No | Yes |
SWRL Math Built-Ins | Partial | ? | No | ? | ? | No | No | No | ? |
SWRL String Built-Ins | Partial | ? | No | Partial | ? | No | No | No | ? |
SWRL Comparison Built-Ins | ? | ? | Yes | ? | ? | No | No | No | ? |
SWRL Boolean Built-Ins | ? | ? | No | ? | ? | No | No | No | ? |
SWRL Date, Time and Duration Built-Ins | ? | ? | No | ? | ? | No | No | No | ? |
SWRL URI Built-Ins | ? | ? | No | ? | ? | No | No | No | ? |
SWRL Lists Built-Ins | ? | ? | No | ? | ? | No | No | No | ? |
SWRL custom Built-Ins | Java | ? | Partial (only for DObject) | Java | ? | ? | ? | ? | ? |
Documentation available | Yes | No | Yes | No | Yes | Yes | Partial | No | Yes |
Version | 0.9b45 | ? | 1.5.1 | ? | 1.9.0, Build 20051205 | 2.5.4 | ? | 1.1.8 | 2.1 |
Licencing | Free/ closed-source | Free/ open-source | Free/ open-source | Free/ closed-source | Non-Free/ closed-source | Free/ open-source | Free/ closed-source | Free/ open-source | Free/ open-source |
[edit] See also
[edit] External links
- SPARQL Query Language for RDF
- DIG description logic reasoner interface
- Introduction to Description Logics DL course by Enrico Franconi, Faculty of Computer Science, Free University of Bolzano, Italy