ponents as individuals, classes, and
properties.
Along with atomic-class names like
Wizard and Owl, DLs also allow for
class descriptions to be composed
from atomic classes and properties. A
given DL is characterized by the set of
constructors provided for building
class descriptions. OWL is based on a
very expressive DL called ShOIN(D), a
sort of acronym derived from the features of the language.
11 The class constructors available in OWL include the
Booleans and, or, and not, which in
OWL are called, respectively, intersec-tionOf, unionOf, and complementOf,
as well as restricted forms of existential
(E) and universal (A) quantification,
which in OWL are called, respectively, someValuesFrom and allValuesFrom restrictions. OWL also allows for
properties to be declared transitive; if
hasAncestor is a transitive property,
then Enoch hasAncestor Cain and
Cain hasAncestor Eve implies
that Enoch hasAncestor Eve. The
S in ShOIN(D) stands for this basic set
of features.
In OWL, someValuesFrom restrictions are used to describe classes, the
instances of which are related via a given property to instances of some other
class. For example,
Wizard and hasPet some Owl
describes Wizards having pet Owls.
Note that such a description is itself
a class, the instances of which are exactly those individuals that satisfy the
description; in this case, they are instances of Wizard and are related via
the hasPet property to an individual
that is an instance of Owl. If an individual is asserted (stated) to be a member
of this class, we know it must have a pet
Owl, though we may be unable to identify the Owl in question; that is, someValuesFrom restrictions specify the
existence of a relationship. In contrast,
allValuesFrom restrictions constrain
the possible objects of a given property
and are typically used as a kind of localized range restriction. For example,
we might want to state that Hogwarts
students are allowed to have only owls,
cats, or toads as pets without placing a
global range restriction on the hasPet
property (because other kinds of pet
may be possible). We can do this in
OWL like this:
Class: HogwartsStudent
a key feature of
o WL is its basis
in Description
Logics, a family
of logic-based
knowledge-
representation
formalisms that
are descendants
of semantic
networks and
KL-one but that
have a formal
semantics based on
first-order logic.
SubClassOf: hasPet only
(Owl or Cat or Toad)
OWL also allows for property hier-archies (the h in ShOIN(D)), extensionally defined classes using the oneOf
constructor (O), inverse properties
using the inverseOf property constructor (I), cardinality restrictions using
the minCardinality, maxCardinality,
and cardinality constructors (N) and
XML Schema datatypes and values (D)
( www.w3.org/TR/xmlschema-2/). For
example, we might also state that the
instances of HogwartsHouse are Gry-findor, Slytherin, Ravenclaw, and Huf-flepuff, that Hogwarts students have
an email address (a string), and at most
one pet, that isPetOf is the inverse of
hasPet, and that a Phoenix can be the
pet only of a Wizard:
Class: HogwartsHouse
EquivalentTo: {Gryffin-
dor, Slytherin, Ravenclaw,
Hufflepuff}
Class: HogwartsStudent
SubClassOf: hasEmail some
string
SubClassOf: hasPet max 1
ObjectProperty: hasPet
Inverses: isPetOf
Class: Phoenix
SubClassOf: isPetOf only
Wizard
An OWL ontology consists of a set of
axioms. As in RDF, the axioms subClassOf
and subPropertyOf can be used to define
a hierarchy of classes and properties. In
OWL, an equivalentClass axiom can also
be used as an abbreviation for a symmetrical pair of subClassOf axioms. An
equivalentClass axiom can be thought of
as an “if and only if” condition; given the
axiom C equivalentClass D, an individual
is an instance of C if and only if it is an instance of D. Combining the axioms
subClassOf and equivalentClass with class descriptions allows for easy extension of the
vocabulary by introducing new names as
abbreviations for descriptions. For example, the axiom
Class: HogwartsStudent
EquivalentTo: Student and
attendsSchool
value Hogwarts
introduces the class name Hog-
wartsStudent, asserting that its
instances are exactly those Students
who attend Hogwarts. Axioms can also
be used to state that a set of classes is
disjoint and describe additional char-