International Archives of the Photogrammetry,
and propose the extension of this database by a 3-D primitive.
Its topology, however, is only internal; there are no topological
relations between primitives. (Stoter & van Oosterom, 2002)
propose an implementation which is similar to ours, but they
consider two different models: one using oracle spatial data
types for Geometry, and another with topological relations. Our
approach combines both in a single model. In addition, (Stoter
& van Oosterom, 2002) do not deal with recursive aggregates.
This paper is organized as follows: In the second section, the
spatial and object-relational properties of the database system
Oracle 9i are discussed. The representation of a 3-D city model
in this spatial object-relational database is the topic of the third
section. The next section discusses how this model may be
queried and to what extend these queries are suitable to
consider the third dimension, including performance issues. The
paper ends with some concluding remarks and a discussion of
open questions.
2. SPATIAL OBJECT-RELATIONAL DATABASES -
ORACLE 91
Oracle 9i is a sophisticated, widespread commercial database
system, which provides a spatial extension, called Oracle
Spatial, and object-relational properties. Both are discussed in
this section, which is based on (Oracle, 2002a) and (Oracle,
2002b).
2.1 Geometric properties
Oracle Spatial provides a data type, called SDO GEOMETRY,
for representing spatial data, and associated operators and
functions, which allow storing, editing, updating and querying
these data. Two mechanisms for indexing spatial data are used,
Quadtrees and R-trges (Guttman, 1984). For querying 3-D data
by Oracle Spatial, however, only R-trees may be employed.
The geometry types supported by Oracle Spatial are based on
the ‘OGC Simple Features Specification for SQL’ issued by the
Open GIS Consortium (Open GIS Consortium, 1999).
According to this standard, a geometry may be a point or a
multi point, i.e. a point cluster, a line string or a multi line
string, a polygon or a multi polygon. In addition to the Simple
Feature specification, arc line strings, arc polygons, and
collections of arbitrary geometries are offered. A geometry IS
defined in a spatial coordinate reference system. According to
the Simple Features specification, the explicit representation of
topological relations between geometric objects is not provided.
The coordinates of the geometric objects may be two or three
dimensional, thus allowing polygons and lines positioned
arbitrarily in 3-D space. The polygon boundaries may be non-
planar, but the specification of interpolation rules for their
interiors is not provided. For the representation of 3-D solids
according to the Boundary Representation (B-Rep) (Foley et al.,
1995: Mäntylä, 1988), no data type is offered by Oracle Spatial.
ec
A database table may contain more than onc column of type
SDO GEOMETRY. Thus it is possible, for example, to assign
different levels of detail to a single object. This property is
crucial for managing 3-D city models.
For manipulating and querying spatial data, two mechanisms
are offered, which differ in particular in their 3-D properties:
operators and functions.
Remote Sensing and Spatial Information Sciences, Vol XXXV,
Part B4. Istanbul 2004
Operators retrieve spatial data from the database according to
geometrical criteria, using the R-tree index. One specific
operator, called SDO FILTER. selects geometries, which
interact with a given fixed geometry, or pairs of geometries,
which interact pair-wise. The first case is called window-query,
while the second is a join-query. The operator does not consider
the exact geometry of objects, but approximates it by a minimal
bounding rectangle or a minimal bounding box, depending on
the dimension of thg geometries. The rectangles and boxes are
parallel to the x-, y-, and z-axis of the coordinate reference
system.
The approximation of geometries by bounding boxes, however,
yields inexact results. Consider, for example, the two
geometries in Figure 1b), which are disjoint. The bounding
boxes overlap, thus the operator SDO FILTER recognizes that
both are not disjoint. In Figure la), the operator SDO FILTER
is able to identify the two geometries' bounding boxes as
disjoint.
Approximation of geometries by minimal bounding
boxes, yielding inexact results. In Figure a), both
objects can be distinguished from cach other, while
in b), the two geometries do not touch each other,
but their bounding boxes do so.
Figure 1:
The other operators apart from SDO_F ILTER select geometries
within a given distance, nearest neighbor geometries, or
geometries with topological relations according to the well-
known 4-intersection model (Egenhofer & Herring, 1990).
These operators are evaluated using a so-called ‘two-tier
model’, which applies SDO FILTER first, and the more exact
operator to the result afterwards. All operators apart from
SDO FILTER may not be applied to data with more than two
dimensions, and thus are not discussed any further.
In contrast to operators, functions do not use a filter step and a
spatial index, and are applicable to 3-D data, but they ignore the
7-coordinate. Oracle Spatial provides functions to select
geometries according to the 4-intersection model, to compute
areas, distances, or to construct convex hulls. centroids, buffers,
and so on. In addition, the union, difference or intersection of a
pair of geometries may be derived.
Figure 2 depicts the different spatial relations distinguished by
the function SDO GEOM.RELATE, which implements the 4-
Interna
interse«
functio
B and
RELA'
A Ov
B Ovi
Ione
Figure
Althoug
may be
is emp
geometr
boundin
afterwar
An exan
22 Ob
The dat:
relation:
oriented
Unified
database
and obj
are impl
to relati
manipul
concept
subtypes
database
referenc
and repl:
In the re
to conta
tables m
nested t
represen
tables,
addition:
object t;
example
depicted