W3C home > Mailing lists > Public > public-owl-wg@w3.org > February 2008

A description of a relationship between pD*-lie fragments of OWL and DLP

From: Boris Motik <boris.motik@comlab.ox.ac.uk>
Date: Tue, 5 Feb 2008 14:31:05 -0000
To: <public-owl-wg@w3.org>
Message-ID: <001a01c86803$bda49690$4012a8c0@wolf>


As a response to ACTION-77, here is an e-mail that (1) summarizes (my understanding of) the discussion about fragments, (2) provides
answers to some questions that were raised at the telecon on 30/01/2008, and (3) provides some suggestions on going forward.

1. OWL Semantics and FO axiomatisations/theories

An OWL DL ontology can be seen as a FO theory: classes and properties correspond directly to predicates, so an ontology containing
the axiom (1) corresponds to the first-order theory (2) (I'm using the LaTeX notation here).

(1)  SubClassOf( (ObjectSomeValuesFrom R C) D)
(2)  \forall x : ( \exists y : R(x,y) \wedge C(y) ) --> D(x)

The meaning of an ontology is completely defined by the corresponding FO theory, and additional FO axioms are neither necessary nor

In contrast, in RDF and OWL Full the classes and properties are not treated as predicates, but are "pushed a level down" and treated
as constants. Thus, in OWL Full the axiom (1) is written as the following set of triples.

(3)  T(_:x, owl:someValuesFrom, C)
(4)  T(_:x, owl:onProperty, R)
(5)  T(_:x, rdf:subClassOf, D)

Here, the only predicate is T (we can think of it as "is true", or "it holds that"), and the ontology is represented as a set of
"data facts". This set of facts does not mean much by itself; therefore, we need a theory that says what these facts mean. For this
purpose, OWL Full defines a set of FO axioms that give special meaning to certain combinations of facts (asserted triples). These
axioms can (to a large extent) be written down in FOL. For example, to interpret (3)--(5), we can use the following axioms (x is a
variable, unlike _:x which is a blank node):

(6)  \forall x,y,z : T(x, rdfs:subClassOf, y) <--> [ T(z, rdf:type, x) --> T(z, rdf:type, y) ]

(7)  \forall x,y,p,u : T(x, owl:someValuesFrom, y) \wedge T(x, owl:onProperty, p) -->
         { T(u, rdf:type, x) <--> \exists v : [ T(u, p, v) \wedge T(v, rdf:type, y) ] }

This theory defines the entailment relation |=_{Full} for RDF graphs.

2. Fragments

In the existing fragments document, each fragment is defined in terms of the syntax which is allowed; the restrictions on the syntax
simply restrict the types of first-order theories you get. The resulting fragments are *syntactic* fragments: it is not that the
semantics of OWL 1.1 DL is changed from one fragment to the next; rather, the fragments impose restrictions on the type of formulae
that you can write down. The consequence relation stays in all cases exactly the same.

3. Example Fragment: DLP

The DLP fragment restricts the allowed syntax of OWL 1.1 (DL) such that DLP axioms correspond to Horn clauses, and so DLP ontologies
never entail the existence of new individuals. This facilitates rule-based implementations. For example, axiom (1) above is in DLP,
and corresponds to the Horn clause "rule" (8):

(8)  R(x,y) \wedge C(y) --> D(x)

4. Syntactic Fragments in RDF

One way to look at fragments in RDF would be to stick to the idea that a fragment is defined in terms of syntactic restrictions. In
this view, an RDF graph G is in a certain fragment iff an OWL 1.1 Structural Specification ontology O exists such that the
translation of O into RDF produces G. According to this definition, an RDF graph containing the triples (3)--(5) above would be in
DLP because the graph can be derived from an OWL 1.1 axiom (1). 

5. The pD* Approach

Instead of restricting the syntax of RDF graphs, pD* restricts the semantic conditions. Thus, instead of axioms (6) and (7), pD*
uses the following axioms:

(14) \forall x,y,z : T(x, rdfs:subClassOf, y) --> [ T(z, rdf:type, x) --> T(z, rdf:type, x) ]

(15) \forall x,y,p,u : T(x, owl:someValuesFrom, y) \wedge T(x, owl:onProperty, p) -->
         { T(u, rdf:type, x) <-- \exists v : [ T(u, p, v) \wedge T(v, rdf:type, y) ] }

Note that the first <--> in (6) is changed into -->; similarly, the second <--> in (7) is changed into <--. Thus, pD* actually
defines a weaker consequence relation |=_{w-Full}.

6. A Possible Interpretation of pD* as "RDF-ized" DLP

In RDF graphs, the very simple syntax (everything is a triple) makes it difficult to define syntactic restrictions such as those
used in the definition on DLP. However, if we look at the axioms that pD* lists, we can see that pD* actually follows the main
principle of DLP---that is, the pD* weakens the semantic conditions so as to avoid entailing the existence of new individuals. We
might, therefore, think of pD* as being an RDF-ized version of DLP -- that is, there is no restriction on the structure of RDF
graphs, but the weakened semantic conditions may still be "sufficient" in case the graph corresponds to DLP.

7. Precise Relationship between DLP and its RDF Interpretation

We can use the above idea to define a link between DLP in the sense of OWL 1.1 DL and its RDF interpretation (using pD* semantics).

Let O be a DLP ontology expressed in OWL 1.1 DL, and let G be its encoding into graphs. Furthermore, let S be a set of
ClassAssertion, ObjectPropertyAssertion, and DataPropertyAssertion axioms, and let S' be the translation of S into an RDF graph.
Then, the following equivalences hold:

  O |= S   iff   G |=_{Full} S'  iff  G |=_{w-Full} S'

In other words, the ground consequences of O under the OWL 1.1 DL interpretation are the same as the ground consequences of G under
the OWL Full semantics, which are in turn the same as the ground consequences of G under the weakened OWL Full (i.e., the pD*)
semantics. Thus, the users of OWL 1.1 DLP ontologies cannot really tell the difference between using the DL semantics, the OWL Full
semantics, or the weakened OWL Full semantics if only ground consequences are considered. (Note that this equivalence does not hold
for nonground consequences, such as clause subsumption relationship.)

There is a disclaimer here: these equivalences hold modulo the usual problems that we have with aligning OWL 1.1 DL with OWL 1.1
Full (punning, object vs. data properties, annotations, etc.). But these issues are not specific to the fragments discussion and
should not affect in any way the design of the fragments.

[ Due to the weakened semantics and restriction to ground consequences we may prefer to call pD* a "conformance level" rather than a
fragment. ]


Received on Tuesday, 5 February 2008 14:32:02 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 21:42:02 UTC