draft: Combining Rules with Ontologies for the Semantic Web

From: Benjamin Grosof (bgrosof@mit.edu)
Date: 08/16/01

Hi folks,
here's what I and Ian promised to send this week about adding rules to
Comments invited.  

(Mike:  please make sure this is indeed posted to the mailing list, maybe
on a convenient DAML website spot as well.  This is my first attempt to
post, BTW)  



Combining Rules with Ontologies for the Semantic Web:  
  A proposal for DAML-Rules, combining DAML+OIL with RuleML

Benjamin Grosof, MIT Sloan Sch. of Mgmt., bgrosof@mit.edu
Ian Horrocks, U. Manchester, horrocks@cs.man.ac.uk

About this document:  

version 0.1:  7/18/01 (hand-written notes by BG)
version 0.2:  8/08/01 (hand-written notes by BG)
version 0.3:  8/17/01 (first circulated)

Acknowledgements to:   Stefan Decker, Peter Patel-Schneider, 
Michael Dean, Patrick Hayes, Jim Hendler, Richard Fikes, Tim Berners-Lee, and 
Deborah McGuinness for helpful discussions.


We discuss how and why to combine rules with ontologies for
the Semantic Web.  As an ontology language, we focus on DAML+OIL; this
is based on the particular logical knowledge representation (KR) 
known as Description
Logic (DL), and is the point of departure for the newly-formed WebOnt
W3C Working Group.  As a rule language, we focus on RuleML;
this is based on the particular logical knowledge representation known as 
logic programs (LP), and is the point of departure for the leading current
standardization approach to rules for the Semantic Web.  
(More precisely, any particular KR includes not only a syntactic language
but also a semantics that specifies for each set of premises what is
set of sanctioned conclusions that can be drawn from those premises.)  

We give two new techniques for combination.  The first technique we call
"meta-ontology": this is to use DAML+OIL at a logical meta-level in
order to describe classes of rules and rule sets.  The first technique
thus "uses ontologies meta-logically for rules".  The second technique
we call "KR-fusion": this is to fuse the two logical KR's -- DL and LP
-- so that information from each can be used in the other.  The
KR-fusion technique enables one to "build rules on top of ontologies"
in a powerful fashion: it enables the rule KR to have access to the DL
ontological definitions for the vocabulary primitives (e.g.,
predicate, individual, and function constants) used by the rules.
Conversely, the KR-fusion technique likewise enables one to "build
ontologies on top of rules" powerfully:  it enables ontological
definitions to be supplemented by rules, or imported into DL from rules.

The KR-fusion technique is thus potentially quite useful and powerful,
but it is also challenging to develop fully. As an initial step, we
give a partial theory (with deep declarative KR semantics) for
translation and integration of DL to and fro LP.  More specifically,
we focus on logically-monotonic LP (mon-LP), beginning with Horn LP,
which is close (but not identical) to the Horn-clauses subclass of
first-order-logic (Horn-FOL).  Part of our theory includes defining
the expressive intersection of DL and mon-LP / Horn-FOL.  (Neither DL
nor mon-LP/Horn-FOL expressively subsumes the other.)  Our theory
enables one to view axioms (e.g., premises) either as DL or
mon-LP/Horn-FOL, and to translate them back and forth.  Interestingly,
the axioms might also be conclusions (e.g., ground facts) drawn from
more expressively-general DL or LP/Horn-FOL beyond the intersection.
The KR-fusion technique enables one to have a choice of either DL
inferencing tools or mon-LP/Horn-FOL inferencing tools, for
information in the expressive intersection.  

The KR-fusion technique also lays the groundwork for a possible new
integral yet hybrid KR that combines some DL expressiveness with some
mon-LP/Horn-FOL expressiveness and goes beyond the expressive
intersection.  Of course, general FOL is a candidate for such a hybrid
KR; however, general FOL is often impractical due to its computational
complexity/semi-decidability.  To be truly valuable, a new such hybrid
KR would have usefully increased expressiveness along with efficient
algorithms for important tasks.  But finding that new KR remains for
further exploration.

In the near term, a prime challenge for the Semantic Web is to make
real the intuition expressed by rules/logic being depicted as sitting
on top of ontologies in Tim Berners-Lee's famous wedding-cake diagram
(this in turn has long roots in the philosophical logic and AI KR
literature).  We largely accomplish this vision in our overall
approach by combining (1) the meta-ontology technique with (2) the
KR-fusion technique.  In particular, we (1) use DAML+OIL syntax for
RuleML, and (2) import info into RuleML from an expressive fragment of
DAML+OIL (i.e., "a compliance level" of DAML+OIL corresponding to an
expressive subclass of the intersection between DL and LP).
Elegantly, our techniques and theory (especially about the
intersection of DL with mon-LP/Horn-FOL) also enable the converse
direction as well: info can be imported into DAML+OIL from RuleML to
enable "ontologies on top of rules" in the manner of Ontolingua
utilizing KIF.

Next steps we plan:
1. discuss the high-level approach described herein 
   with Joint Committee / DAML folks
2. write up the details, 
   driving especially towards "rules on top of ontologies" using DAML+OIL
   syntax to a great extent
3. prototype tools for translation and inferencing/querying
   o we especially would like more collaborators on this aspect


Some Examples to provide Details for Clarity:

A. Examples of KR-fusion technique:  

Here are some of the simpler parts of the mapping between DL and mon-LP
for their expressive intersection.  We  

DL class: is represented in mon-LP as a predicate with arity 1.
DL property:  is represented in mon-LP as a predicate with arity 2.
"?" prefix indicates a logical variable, in mon-LP syntax below.

Mapping examples:

class C is SUBCLASS of class D:
D(?X) <- C(?X).

DOMAIN of property P is class C:
C(?X) <- P(?X,?Y).

RANGE of property P is class D:
D(?Y) <- P(?X,?Y).

Q(?X,?Y) <- P(?X,?Y).

property P is TRANSITIVE:
P(?X,?Z) <- P(?X,?Y) and P(?Y,?Z).

property P is SYMMETRIC:
P(?Y,?X) <- P(?X,?Y).

a is an instance of class C (where a is ground):

(a,b) is an instance of property P (where a,b are ground):

B. Examples of meta-ontology technique: 

1. Specify basic syntax of mon-LP / RuleML, e.g.: 
- rulebase has an unordered collection of rules
- rule has exactly one head
- rule has exactly one body
- body has an unordered collection of literals

2. More interestingly, specify expressiveness meta-info about an entire
rulebase, that indicate where the rulebase is positioned within the
generalization-specialization lattice of expressive classes in 
mon-LP / RuleML, e.g.:

- maximum arity (e.g., 1 or 2) of predicates in a rulebase 
- whether recursion allowed in a rulebase
- whether predicate/individual/function constants can be URI's in a rulebase
- whether logical variables allowed in a rulebase, i.e., propositionality

RuleML's design is to include meta-info of this latter kind in a
given rulebase either directly or by reference.
(This is not detailed yet in currently released Version 0.8 of RuleML, 

The advantage potentially of using DAML+OIL to represent this meta-info 
would be that the lattice relationships could be inferred; given that
the lattice space is potentially quite large, this could be quite useful.

Prof. Benjamin Grosof,   MIT Sloan Sch. of Mgmt.  (http://mitsloan.mit.edu)
   Contracts and Policies for E-Commerce, XML Agent Communication
      bgrosof@mit.edu     http://www.mit.edu/~bgrosof/

This archive was generated by hypermail 2.1.4 : 04/02/02 EST