The Semantic Web and the Business Rules Approach ~ Differences and Similarities
What are the differences and similarities between the Semantic Web and the Business rules approach?
The semantic web and the business rules communities have both roots in Artificial Intelligence.
However, the players in both communities like to decouple themselves from this ancestor. This seems due to the failure of AI technologies to deliver when the pioneers set high expectations.
The semantic web and business rules have different target audiences.
Improvement of communication between humans is a goal of the business rules approach while improvement of the communication between machines is the goal of the semantic web. Both emphasize that improvement of the communication between humans and machines can be a happy side effect.
Given this difference in target audience the two approaches are also positioned differently in MDA. An ontology-model is used in a run-time environment and should therefore be positioned at the PSM (platform specific) level, while a vocabulary is used at the CIM (computation independent) level to improve human communication about a domain.
The semantic web and business rules have the same goal.
Both are supposed to capture semantics about real world domains (independent of a particular application). This distinguishes them (ontology models and business rules vocabularies) from conceptual modeling approaches (like UML and ORM) that are both intended to describe the domain knowledge for one specific application.
There is an interesting friction here that is recognized in the business rules community (see Rik Gerrits, Reuse of business rules) and the semantic web community (see Mustafa Jarrar, On using conceptual data modeling for ontology engineering) in that rules are affected by the nature of the problem (or business strategy) that they support and the inference strategy to be applied to the problem. Therefore the result will be less reusable and specific to a particular (class of similar) task(s).
The semantic web and business rules communities share common concepts but represent them in different ways.
An ontology and a business vocabulary both consist of interrelated concepts and rules (e.g., identity, cardinality, taxonomy, etc.) that constrain and specify the intended meaning of concepts.
In an ontology-model only the structural relations between concepts define the semantics. In a business vocabulary the semantics can also be described by giving a definition for a concept. This definition may be informal and every concept needs to have a definition. In an ontology-model, concepts do not have a definition. You can just stop somewhere at the boundary of your domain with connecting a concept with other concepts.
The business rules approach focuses more on natural language / human readable descriptions; for example, the expression of definitions and business rules is not restricted to a specific formal specification language. In the Semantic Web every element that is part of the ontology model should be compliant with a formal language because otherwise it cannot be used in a run-time environment.
The formal specification languages used by the semantic web and the business rules communities differ in expression power (higher order, deontic logic, horn clause, predicate logic, etc.).
This topic will be discussed in a future column.
# # #