Topological Spatial Relations and Operators
Zhexue Huang
Environmental and Natural Resources Information Systems
Department of Photogrammetry
Royal Institute of Technology
100 44 Stockholm, Sweden
huang@fmi.kth.se
Abstract:
There is a growing interest in investigating the underlying topological relations of spatial objects, and defining
corresponding operators to check these relations. The investigation has recently resulted in a complete set of
eight different spatial relationships between two regions. To check these eight spatial relations between two
polygons, six fundamental topological spatial operators are required. More operators for checking specific spatial
relations between two objects can be created by combining the fundamental operators with other operators. These
operators provide a sound basis for designing a spatial query language and the query language with
implementation of such spatial operators can become a useful tool for spatial querying and analysis.
KEY WORDS: GIS, Spatial, Theory.
1. Introduction
A geographical information system (GIS) can be
considered as a spatial database system on which a set
of application programs operates. These application
programs provide tools for the GIS user to make
spatial queries and analyses about objects in the
database. The object-oriented (OO) approach has
proved to be a powerful tool for designing spatial
databases, especially heterogeneous spatial databases
(Oosterom et al 1989, Kemp 1990).
An OO spatial database consists of a collection of
spatial objects, which, together with their (spatial)
relations, represent spatial information about reality
(Molenaar 1991). An important feature of an OO
database system is that each object has an identity
which allows the user to distinguish and address it
(Unland et al 1990). Besides its identity a spatial
object also carries two kinds of data: spatial data,
which describe the location and geometry of the
object in space, and attribute data, which represent
non-spatial properties of the object.
Spatial relations of objects are an important part of
the spatial information. The complexity of spatial
relations among objects creates difficulties to
explicitly represent all kinds of spatial relations in a
database. An alternative is to define spatial functions
in the database query language to discover spatial
relations of objects.
There is a growing interest in investigating the
underlying topological relations of spatial objects
(Egenhofer et al 1990, 1991, Kainz 1989, 1990), and
defining corresponding operators to check these
relations (Svensson et al 1991). The investigation of
topological spatial relations of objects in a topological
space has recently resulted in a complete set of eight
different spatial relationships between two regions
.(Egenhofer et al 1990, 1991). To check these eight
273
spatial relations between two polygons, six
fundamental topological spatial operators are
required. The terminology used for polygons can also
be adopted for defining spatial operators for points
and lines and combinations of these. These operators
provide a sound basis for designing a spatial query
language and the query language with
implementation of such spatial operators can
become a useful tool for spatial querying and analysis
(Svensson et al 1991).
This paper is organized as follows. Section 2
discusses types of spatial objects. Spatial data types are
proposed for handling different types of objects in
databases. Functions operating on the spatial data
types are given in section 3. Section 4 discusses
topological spatial relations between two objects.
How to use given spatial functions and operators to
define new operators to detect detailed spatial
relations is demonstrated in section 5. Section 6 gives
some examples showing the use of these operators in
querying a spatial database. Some conclusions are
drawn in section 7.
2. Object types and spatial data types
Any object that is related to a location in space is said
to be spatial. Some spatial objects are complex, for
example, a road network. Others are simple, for
example, oil wells which are usually presented as
points in maps. The complex objects are composed of
simple objects.
Three basic types of spatial objects exist in the two
dimensional space. They are points, lines, areas,
which will be called polygons from now, and each of
these three basic types has a primitive form. Any
point is primitive. À line is primitive if it has no
loop between its two ends, excluding the simply
closed line whose two ends coincide. A polygon is