


Overview
General Formal Ontology (GFO)

This section presents the metalevel in the architecture that is
formed by abstract core ontologies.
The abstract core level of GFO exhibits the upper part of GFO,
in the same way as a domain core ontology is the upper part of a domain
ontology.
Apart from pragmatic aspects, ACOs must first be determined by
their main entity types
and the relations among them, for which a certain vocabulary
must be introduced. Secondly, logical interdependences of
those entities and their relations need to be specified.
The latter
exemplify the formalization of several types of interdependence using
axioms of firstorder logic.
We start from the idea that the entities of the (real)
world  being represented on the ATOlevel by the items 
are divided into categories and individuals,
i.e., everything in an ontology is either a category or an individual,
and individuals instantiate () categories.
Moreover, among individuals we distinguish objects,
attributes, roles and
relators.
Objects are entities that have attributes, and
play certain roles with respect to other entities. Objects are to
be understood in the same way as the notion of ``object''
in objectoriented analysis. In particular, objects comprise animate and
inanimate things like humans, trees or cars, as well as processes, like
this morning's sunrise.
Examples of attributes are
particular weights, forms and colors. A sentence like ``This rose is
red.'' refers to a particular object, a rose, and to a particular
attribute, red. Another basic relation is needed
in order to connect objects and attributes. The phrases
``having attributes'' and ``playing a role'' used above are included in the
basic relation
of inherence, meaning that an attribute or a role inheres
in some object. This relation illustrates the dependence of attributes
and roles on entities in which they can inhere.
The difference between attributes and roles
is that roles are interdependent (36). Examples of roles
are available through
terms like parent,
child or neighbor. Here, parent and child would be considered as a
pair of interdependent roles. Apparently, these examples easily remind
one of relations
like ``ischildof''. Indeed, a composition of interdependent roles is a
relator, i.e., an entity that connects several other entities.
The formation of relators from roles further involves the basic relation,
roleof.
By introducing a vocabulary for the considered entities
we obtain the following signature:
denotes the metacategory of all categories,
represents the category
of all object categories, indicates the category of all properties, and
identifies the
category of all relations. is the category of all individuals,
designates the category of all objects, represents the category
of all individual
attributes, identifies the category of all roles, and
denotes the category
of all
relators. These categories are all presented as predicates,
i.e., they occur on the ATOlevel as sets of items.
We present, as an example, a
simple axiomatic fragment using the vocabulary that is
related to a taxonomy of the unary predicates.
^{10}
The core vocabulary can be extended by categories
that classify types, and by categories of individuals capturing its
formal structure.
The type is the most
simple structural feature a category may possess. We start with the
primitive type (the initial type), which is denoted by the symbol
(for individuals).
Every primitive type is a type. If
are types, then
t_1,
..., t_n is a type. Nothing is a type unless
it follows the conditions mentioned. A category is said to be wellfounded
if it has a type.
Two categories and , are said to be extensional equivalent if they
have the same instances. We may introduce a crosslevel relation connecting
categories with sets by postulating that for every category , there is a set
such that
. Such an axiom
influences the structure of the ATOlevel; if there are categories which are
not wellfounded, then the crosslevel axiom implies the existence of
hypersets.
The basic signature of the ACO level may be extended
by adding a number of metacategories. One extension is created by adding
for any finite type a metacategory whose instances
are just all categories of type .
A special case are primitive
categories, whose instances are individuals.
Nonprimitive categories can be found in every sufficiently complex field,
for example, in the biological domain. Means of expressing categories of
higher type have also
found their way into UML, in the form of the UML elements
metaclass and powertype (48).
Robert Hoehndorf
20061018

