FAQ on Rules and ontologies

Dear all,

with the arrival of Rules, it is time to add a few questions to our FAQ
on this. Sandro and I have come up with three FAQ items that we would
like to add to the FAQ. Can you have a look at it? If there is no
objection until, say, next Tuesday, I would then add it to the official FAQ.

Thanks!

Ivan

What role do ontologies and/or rules have on the Semantic Web?
--------------------------------------------------------------

On the Semantic Web both ontologies and rules are used to express extra
constraints and logical relationships among resources. An example for
their usage is to help data integration when, for example, different
terms are used to describe the same thing in different data sets, or
when a bit of extra knowledge may lead to the discovery of new
relationships.

Ontologies and rules refer to two different traditions stemming from
logic, as developed in the past decades. Whereas ontologies are more
closely related to knowledge representation, and particularly to
description logic, rules rely more on the advances of logic programming
and rule based systems.

The two approaches complement one another; in some situations and
application areas ontologies score better, whereas rules are more
adapted to other areas. Indeed, there are constraints and relationships
that are better expressed in terms of ontologies and others are more
adapted to rule systems.

See the separate qestion on Ontologies and rules below

What are ontologies in the Semantic Web context?
------------------------------------------------

Ontologies define the concepts and relationships used to describe and
represent an area of knowledge. Ontologies are used to classify the
terms used in a particular application, characterize possible
relationships, and define possible constraints on using those
relationships. In practice, ontologies can be very complex (with several
thousands of terms) or very simple (describing one or two concepts only).

A general example may help. A bookseller may want to integrate data
coming from different publishers, possibly from different countries. The
data can be imported into a common RDF model, eg, by using converters to
the publishers’ databases. However, one database may use the term
“author”, whereas the other may use the term “creator”. To make the
integration complete, and extra “glue” should be added to the RDF data,
describing the fact that the relationship described as “author” is the
same as “auteur”. This extra piece of information is, in fact, an
ontology, albeit an extremely simple one.

Languages like RDF Schemas and various variants of OWL provide languages
to express ontologies in the Semantic Web context. These are stable
specifications, published in 2004.

What are "rules" on the Semantic Web?
-------------------------------------

The term "rules" in the context of the Semantic Web refers to elements
of logic programming and rule based systems bound to Semantic Web data.
Rules offer a way to express, for example, constraints on the
relationships defined by by RDF, or may be used to discover new,
implicit relationships.

Various rule systems (production rules, Prolog-like systems, etc) are
very different from one another, and it is not possible to define
<em>one</em> rule language to encompass them all. However, it is
possible to define a "core" that is essentially understood by all rule
systems. This core is based on restricted kind of rule, called a "Horn"
rule, which (like most rules) has the form "<strong>if</strong>
conditions <strong>then</strong> consequence", but it places certain
restrictions on the kinds of conditions and consequences that can be used.

A general example may help. While integrating data coming from different
sources, the data may include references to persons, their name,
homepage, email addresses, etc. However, the data does not say when two
persons should be considered as identical, although this is clearly
important for a full integration. An extra condition can be expressed
stating that "if two persons have the same name, home page, and email
address, then they are identical". Such condition can be expressed with
Horn rules (though cannot be easily expressed by an ontology language
like OWL).

The Rule Interchange Format (RIF) Working Group is currently working on
a precise definition of this "Core" Rule language, on ways to extend
this rule language to various variants (production rules, logic
programming, etc), to exchange expression of rules among systems, and to
define the precise relationships of these relationships with OWL
ontologies and their usage with RDF triples.


-- 

Ivan Herman, W3C Semantic Web Activity Lead
URL: http://www.w3.org/People/Ivan/
PGP Key: http://www.cwi.nl/%7Eivan/AboutMe/pgpkey.html
FOAF: http://www.ivan-herman.net/foaf.rdf

Received on Thursday, 10 May 2007 20:25:56 UTC