SWRL and Rule engine

techie | May 12 - 2010

Semantic web  needed a separate language due to its nature of applications. Interoperability is one of the primary goals of the Semantic Web and that rules play a key part of those goals, there has been significant recent interest in standardization.

The goal of sharing rule bases and processing them with different rule engines has resulted in RuleML, SWRL, Metalog, and ISO Prolog, and other standardization efforts. One of the key steps to rule interoperation on the Web is SWRL which was designed to be the rule language of the Semantic Web. SWRL is based on a combination of the OWL DL and OWL Lite sublanguages of the OWL Ontology Web Language,  the Unary/Binary Datalog  (Datalog is a query and rule language for deductive databases that syntactically is a subset of Prolog) and Sublanguages of the Rule Markup Language.

SWRL permits users to write Horn-like rules expressed in terms of OWL concepts to reason about OWL individuals. The rules can be used to get new knowledge from already existing OWL knowledge bases. The SWRL Specification 5 does not impose restrictions on how reasoning should be performed with SWRL rules. Thus, developers are free to use a variety of rule engines to reason with the SWRL rules stored in an OWL knowledge base.

Newly developed Protégé SWRL Editor, is a full-featured highly interactive open-source rule editor for SWRL. This editor operates within Protégé-OWL 6 and is tightly integrated with it. It adopts the look-and-feel of Protégé-OWL and allows users to seamlessly switch between SWRL rule editing and normal OWL editing of OWL entities. Users can also easily incorporate OWL entities into  different rules they are authoring.

With Jess, users can run SWRL rules interactively to create new OWL concepts and then insert them into an OWL knowledge base. SWRL, coupled with Jess, can provide a rich rule-based reasoning facility for the Semantic Web and can serve as a starting point for further rule integration efforts.