Recently I realized that there is difference between these two things. I want to ask what are the differences? Is there also something like OWL2 QL/RDF Rules etc? Thank you for answer
asked 06 Jan '12, 04:10
First of all: No, there is no OWL 2 QL/RDF rules and also no OWL 2 EL/RDF rules. There is only the OWL 2 RL/RDF rules.
Now, here is my claim, as already stated in a comment to a different question:
So what's going on here?
As many people know, the OWL 2 Profiles specification defines three distinct profiles, namely OWL 2 EL, OWL 2 QL, and OWL 2 RL. But, it would probably be better to say that the specification document contains three chapters with the profile names as the chapter titles. :-) These chapters generally consist of two sections, one which gives an overview on the profile, and the second section contains the formal specification. In all three cases, these two sections are about syntactic fragments of OWL 2 DL. This means that for their definition one started from the syntactic specification of OWL 2 DL and added further syntactic restrictions to obtain more rigid profiles. Hence, many ontologies that are syntactically valid OWL 2 DL ontologies will fail to be valid OWL 2 EL/QL/RL ontologies, since they may use language features or combinations of features that are not allowed in the fragment language.
Having such syntactic fragments of OWL 2 DL was the original idea of profiles or "tractable fragments". One can see this from the original "OWL 1.1 Tractable Fragments" document, which was, as part of the whole set of OWL 1.1 documents, later used as an input for the OWL Working Group. The old document contained the fragments "EL++", which evolved to OWL 2 EL, "DL-Lite", which evolved to "OWL 2 QL", and two fragments called "DLP" and "Horn-SHIQ" which in some complicated way may be seen as predecessors of today's "OWL 2 RL".
So far for the syntax, but what about semantics, as any formal language consists of a syntax and a semantics? Neither the old OWL 1.1 Tractable Fragments document nor the OWL 2 Profiles document talks about the semantics to be used for any of the three OWL 2 DL fragments. This is the same situation as for the definition of OWL 2 DL itself, which is only defined as a syntax in the OWL 2 Structural Specification. But, it is obvious that the "intended semantics" was the "Direct Semantics", as the original suite of OWL 1.1 documents only contained some precursor of the Direct Semantics. The other semantics of OWL 2, the OWL 2 RDF-Based Semantics, was defined much later by the OWL 2 Working Group. Today, however, both semantics can be used with either profile, as stated in the OWL 2 Conformance spec.
But now to the OWL 2 RL/RDF rules! Unlike the other chapters in the Profiles spec, the chapter for the OWL 2 RL profile has a third section called "Reasoning in OWL 2 RL and RDF Graphs using Rules". The content of this section isn't like anything else in the rest of the document. It contains a large set of "triple rules", where each antecedent and consequent consists of an RDF-style triple pattern. The rule set is introduced as
So we are suddenly not talking anymore about a syntactic fragment of the OWL 2 DL syntax, which is typically (though not exclusively) interpreted under the OWL 2 Direct Semantics. Rather, we are talking about:
The first noteworthy thing here is that we are talking about a semantics, namely a partial semantics -- a semantic restriction -- of the OWL 2 RDF-Based Semantics. So it becomes clear that the OWL 2 RL/RDF rules is a completely different kind of beast than the rest in the profiles spec.
Secondly, the OWL 2 RDF-Based Semantics is the semantics of OWL 2 Full, as defined here (this is also stated in the introduction of the spec). So, the OWL 2 RL/RDF rules have, somehow, be defined with regard to OWL 2 Full instead of OWL 2 DL.
What about these "first-order implications", by which the OWL 2 RL/RDF rules are said to be implemented? Well, this is basically talking about the style of the triple rules. The rule set is, formally, a set of first-order logic formulas of a pretty restricted form (simple rules!). In comparison, the form in which the "mother semantics" of OWL 2 RL/RDF, the OWL 2 RDF-Based Semantics, is defined is also, essentially, in terms of a set of first-order logic formulas, but they are generally not simple rules, but make much more use of the expressive features of first-order logic. It all amounts to saying that the OWL 2 RL/RDF rules are defined in a similar way like the OWL 2 RDF-Based Semantics, namely as a set of first-order logic formulas, but the formulas for the RL rules generally have a (much) more restricted form, which makes the resulting language less expressive than OWL 2 Full. However, as the OWL 2 Conformance spec tells us, it is allowed for a compliant OWL 2 RL/RDF rule reasoner to produce additional reasoning results up to the full expressivity of the OWL 2 RDF-Based Semantics. This is a somewhat peculiar relaxation that is of considerable practical relevance, since it allows tool providers to create reasoners with the original OWL 2 RL/RDF rule set as a base, and almost "arbitrary" additional power if needed by customers. A typical example (e.g., AFAIK OWLIM does this!) is to add rules for genuine RDFS reasoning, which is not fully supported by the OWL 2 RL/RDF rules.
So we have a semantics, but what about the syntax of the OWL 2 RL/RDF rules? It turns out that there are no limitations to which ontologies the the RL rules can be applied, since they are defined upon arbitrary RDF graphs; in fact, the second paragraph of Sec. 4.3 of the Profiles spec even states that the rules are defined upon
(Aside: this is also allowed for the OWL 2 RDF-Based Semantics.) Now, again, this is very different from the rest of the OWL 2 profiles, which are explicitly defined as restrictions of the OWL 2 DL syntax.
So to summarize the fundamental difference that we have found so far, restricting our comparison to the OWL 2 RL/RDF rules and the single syntactic profile OWL 2 RL:
Looking at these points, it becomes apparent that the two languages, OWL 2 RL + Direct Semantics on the one side and the OWL 2 RL/RDF rules on the other side, can hardly be the same languages. Clearly, they cover different sets of input ontologies, as the OWL 2 RL/RDF rules can be used on arbitrary RDF graphs while the OWL 2 RL syntactic profile only applies to certain input ontologies and not to every RDF graph. And due to the different reference semantics being used, it even appears possible that the two languages will lead to different reasoning results even when both applied to valid OWL 2 RL ontologies. Let's have a closer look at these two points.
Concerning syntax: the interesting question is how do OWL 2 RL ontologies look like? Obviously, if something is not a valid OWL 2 DL ontology, than it cannot be a valid OWL 2 RL ontology. So the question remains how far OWL 2 RL ontologies are restricted compared to OWL 2 DL? Short answer: The difference is big! A precise characterization is complicated and out of scope for this answer, but to get a first idea, it is sufficient to have a look in the overview section of OWL 2 RL, which has a table containing some of the restrictions. A OWL language feature that is heavily affected by the OWL 2 RL restrictions is class subsumption (
Concerning semantics: It is obvious that one can use the OWL 2 RL/RDF rules to obtain results that are outside the scope of OWL 2 RL + Direct Semantics, simply as one can apply the OWL 2 RL/RDF rules to arbitrary RDF graphs. But it turns out that the two languages produce different semantic results, even when applied to valid OWL 2 RL ontologies. The relationship is complex; in particular, neither language is a sub language of the other. Two examples:
Now, this may look surprising: There are two languages sharing the same name, but they are so different! Still, there is some relationship between the two languages, which is stated by theorem PR1: When an OWL 2 RL ontology is further syntactically restricted in a certain way, as stated by the theorem, then the two languages are really the same concerning their semantic ramifications, i.e., reasoners for both languages will produce the same results on such restricted ontologies. However, as said earlier, OWL 2 RL ontologies are already very restricted, and the additional restrictions of the theorem are again rather strong. So, IMHO, this theorem will hardly ever be of any practical relevance (although I have seen it often being cited).
People may ask how the OWL 2 RL/RDF rules came into life at all, given that they have not been treated in the original OWL 1.1 documents. Well, within the OWL Working Group, there were some people who simply wanted a "very easy" OWL for, let's call them, "working ontologists". They had different ideas about how such a simple-OWL may look like, but it should be kind of "RDFS-plus-a-bit". These folks apparently did not care much (or maybe not even know) about the original Tractable Fragments document of OWL 1.1. After long discussions, they settled on "something in the spirit of pD*" (aka "OWL Horst") as a good starting point, but possibly extended by some of the new features of OWL 2. Over the time, the whole thing evolved as more or less a separate stream of development, and was, for some time, called "OWL-R Full", in contrast to "OWL-R DL", as can still be seen in earlier OWL 2 working drafts.