# Encyclopedia of GIS

Living Edition
| Editors: Shashi Shekhar, Hui Xiong, Xun Zhou

# Topological Relationships and Their Use

Living reference work entry
DOI: https://doi.org/10.1007/978-3-319-23519-6_1548-1

## Keywords

Topological Space Negative Condition Building Information Model Spatial Object Topological Model
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

## Definition

Topological relations between spatial objects have been widely recognized, implemented, and used in GIS. They provide a notion of the general structure and the interactions of spatial objects. Topology avoids dealing with geometry by introducing topological primitives, namely, boundary, interior, and exterior. The topological primitives allow to define approximate topological relationships between 0D (point), 1D (linestring ), 2D (surface), and 3D (body) spatial objects in 0D, 1D, 2D, and 3D space. The nine-intersection model is the well-known framework for detecting binary topological relationships (Egenhofer and Herring, 1992) and is adopted by the Opengeospatial Consortium as a basic framework for implementation. Suppose two simple spatial objects A and B are defined in the same topological space X and their boundary, interior, and exterior are denoted by ∂ A, A , A , ∂ B, B , and B . The binary relationship R(A, B) between the two objects is then identified by composing all the possible set intersections of the six topological primitives, i.e., A B , ∂ AB , A B , A ∂ B, ∂ A∂ B, A ∂ B, $$A^{\circ }\cap B^{-}\,\partial A \cap B^{-}$$, and $$A^{-}\cap B^{-}$$, and detecting empty (0) or nonempty (1) intersections. For example, if two objects have a common boundary, the intersection between the boundaries is nonempty, i.e., ∂ A∂ B = 1; if they have intersecting interiors, then the intersection A B is not empty, i.e., A B = 1. Since each pair of intersections can have either the empty or nonempty value, different “patterns” define different relationships. The theoretical number of all the relationships that can be derived from the 9 intersections is 29, i.e., 512 relationships, but only a small number of them (approximately 70) can be realized in reality. Following the nine-intersection model, operators to detect topological relationships are widely implemented in GIS and DBMS commercial software. The operations can be used for various purposes: checking inclusions and consistency between objects, finding neighboring objects, establishing connectivity (path), composing constraints, etc.

## Historical Background

The topological relationships have gradually gained attention in the last four decades and became a major component of current spatial information applications (Breunig and Zlatanova, 2011; Gröger and George, 2012). The topic of research has shifted from issues related to the definition of a particular formalism to represent topological relationships, to implementation issues (Ellul and Haklay, 2007; Borrman and Rank, 2009; Xu and Zlatanova, 2013). The research in the clarification of the relationships between spatial objects in 2D space has extended to investigation and implementation of relationships in 3D space.

The establishment of suitable framework for representation of topological relations takes relatively long time. Early work on topological relationships (e.g., Freeman 1975) does not have sufficient formalism and generality. The need for sound foundation is recognized by many researchers (e.g., Pullar and Egenhofer 1988; Herring 1991). First sound models are developed on basis of point-set theory and the notion of boundary, interior, and closure op point sets. The first, so-called four-intersection model (4IM) is presented by Pullar and Egenhofer (1988). It considers only point and line objects in 1D space. The topological relationships between regions are introduced by Egenhofer and Franzosa (1991). The nine-intersection model (9IM) is an extension of the framework by including exterior of objects (?). A critical comparison between 4IM and 9IM have motivated the further adoption of 9IM (Egenhofer et al., 1993). The 4IM and 9IM models have triggered many studies, discussion, comparisons, and criticism since then. The framework is recognized as a very powerful and sound, but also rising many questions and limitations. Topics of investigation are the number of possible relationships, the equivalent relationships, the type of objects (simple, with holes, or with broad boundaries), and the naming of topological relationships.

A substantial number of studies are devoted to investigation of possible relationships. Some intersections (or a combination of intersections) between topological primitives can never occur in reality, and all the relationships that contain these intersections (or the combination) can be securely excluded from further considerations. For example, in real world, the exterior of objects ($$A^{-}\cap B^{-})$$ is always nonempty. This condition automatically reduces the possible relationships that can be detected with 9IM to 256. Following such approach, the possible relationships can are clarified. To eliminate all non-realizable relations, conditions, referred to as negative conditions, are composed. Several authors have presented studies on possible relationships in 2D space (Egenhofer and Herring, 1992; Kufoniyi, 1995). de Hoop et al. (1993) and Egenhofer (1995) present an approach to define conditions and derive relationships in 3D space. Basically, the authors agree on the number of most of the relationships with one exception, i.e., surface and surface in 3D space. The negative conditions used by the authors vary significantly and complicates their comparison. For example, Egenhofer and Herring (1992) present 23 negative conditions for relationships in 2D space. To address the 3D situations, 15 more conditions are added by van der Meij (1992) and Kufoniyi (1995), which again differ from the once presented by Clementini and di Felice (1997). Furthermore most of the conditions are related to a particular configuration of objects (e.g., conditions for linestring and linestring), which leads to further duplications of the effect of some of them. Zlatanova (2000a) investigates all the conditions and proposes a set of 24 conditions (not considering the symmetric cases). These conditions have proven to be valid for obtaining relationship between all objects embedded in 0D, 1D, 2D, and 3D space (Table 1).
Topological Relationships and Their Use, Table 1

Negative conditions for eliminating impossible relationships in IR, IR2, and IR3

 Group R(A,B) ∂A ∩ ∂B A∘∩B∘ ∂A∩B∘ A∘∩ ∂B A ̄∩B ̄ A ̄ ∩ ∂B A ̄∩B∘ ∂A∩B ̄ A∘∩B ̄ C1 − − − − 0 − − − − C2a − − − − − − − 1 0 1 C2b − − − − − 1 0 − − C3a 0 − 0 − − − − 0 − C3b 0 − − 0 − 0 − − − C4a − 0 − − − − − − 0 2 C4b − 0 − − − − 0 − − C5a − − − 1 − − − − 0 C5b − − 1 − − − 0 − − C6a − − − − − − − − 0 3 C6b − − − − − − − 0 − C6c − − − − − 0 − − − C6d − − − − − − 0 − − C7a − 0 − 0 − − − − 0 4 C7b − 0 0 − − − 0 − − C8a − 0 1 − − − − − − 5 C8b − 0 − 1 − − − − − C9a − 1 − 0 − − − − 1 C9b − 1 0 − − − 1 − − C10a 1 − − 1 − 1 − − − 6 C10b 1 − 1 − − − − 1 − C11a 0 − 1 − − − − 1 − 7 C11b 0 − − 1 − 1 − − − C12 0 − − − − 0 − 0 − 8 C13 − 0 − − − 0 − 0 − C14a − − − − − − − 0 1 C14b − − − − − 0 1 − − C15a − − − − − 0 1 − 0 9 C15b − − − − − − 0 0 1 C16a − − 0 1 − − − 0 − C16b − − 1 0 − 0 − − − C17a − − 0 0 − 1 − 0 − 10 C17b − − 0 0 − 0 − 1 − C18a − 1 1 1 − 0 − 0 − C18b 1 − 1 1 − 0 − 0 − C19a 1 1 1 1 − − − 0 − C19b 1 1 1 1 − 0 − − − C20a − 0 − 1 − − 0 − − C20b − 0 1 − − − − − 0 11 C21a 1 0 0 − − − 0 − − C21b 1 0 − 0 − − − − 0 C22a 1 − 0 − − 1 − 0 12 C22b 1 − − 0 − 0 − 1 − C23a 1 − − − − − − − − C23b − − 1 − − − − − − 13 C23c − − − − − − − 1 − C23d − − − 1 − − − − − C23e − − − − − 1 − − − C24a − 1 − 1 − − − − − C24b − 1 − − − − − − 1 C24c − − − 1 − − − − 1 C24d − 1 1 − − − − − − C24e − 1 − − − − 1 − − C24f − − 1 − − − 1 − − C25a − 0 − − − − 0 − − C25b − 0 − − − − − − 0

While quite straight forward for simple objects, the 9IM reveals to have high complexity for objects with holes. Until recently only regions with holes in 2D have been investigated (Egenhofer et al., 1994; Schneider and Behr, 2006). Studies in 3D space have not been presented so far. Clementini and di Felice (1997) address thickness of the boundary or real-world objects as many objects have a boundary which cannot be approximated with a line. They present a modification of the framework for objects with broad boundaries.

One of the most discussed topics is the fact the many relationships between real-world objects appear equivalent according to 9IM (Fig. 1). As the shape of the objects is not considered, it is impossible to distinguish between the type of intersection between two boundaries (0D, 1D, 2D, or 3D intersection). This consequently leads to relationships which are equivalent with respect to the 9IM, but look distinctive to the human eye. Therefore several studies propose to include the dimension of the intersection in the 9IM (Clementini et al., 1993; Deng et al., 2007; Strobl, 2008; Billen and Kurata, 2008). Dimensionally extended nine-intersection model (DE-9IM) presented by Strobl (2008) has been adopted in the OGC implementations specifications in 2011. Topological Relationships and Their Use, Fig. 1 Equivalent topological relationships according to 9IM

## Scientific Fundamentals

The topological relationships are defined for topological spaces on the basis of set notions (Armstrong, 1983). A set is an aggregate of things, e.g., numbers, people, buildings, and points. The things are elements of the set. A topology on a set Xis a collectiontof subsets of X called open set, satisfying:
• any union of elements of t belongs to t

• any finite intersection of elements of t belongs to t

• the empty set and Xbelong to t.

Topological space is convenient as it allows defining the continuity of space without mentioning the distance. Topology is derived from metric space (e.g., Euclidian), where the distance function is central. Inside a topological space, the topological primitives, i.e., closure, interior, and boundary, of a set can be defined. If X is a topological space and EX, KX, GX, then:
• closure is the set $$\overline{E} = \cap \{K \subset X\vert K$$ is closed and EK},

• interior is the set E = ∪{GX | G is open and EG},

• boundary is the set $$\partial E = \overline{E} \cap \overline{(X - E)}$$ which is a closed set.

Closure, interior, and boundary of a set have an important properties (Willard, 1970):
• E E

• $$E \subset \overline{E}$$

• E is closed in X if and only if $$\overline{E} = E$$

• E is open in X if and only if E = E

• $$\overline{E} = E \cup \partial E$$

• $$E^{\circ } = E - \partial E$$

• $$X = E^{\circ }\cup \partial E \cup (X - E)^{\circ }$$

• X = X

The topological definitions given above are not convenient for particular use (e.g., representation of geometric properties) due to the regularity of open sets in the Euclidean space, i.e., each open set of one point has the same properties as any other set. Therefore it is wiser to investigate the space around a point (or several points) and conclude that around other points it is the same. Thus the notion about a neighborhood is introduced:

If Xa topological space and xX, a neighborhood of x is a set U, which contains an open set containing x, i.e., xU where U is the interior of U.

The practical importance of topology for the modeling of the spatial objects is twofold. It provides a formalism to define spatial relationships, and it allows a formal geometric description of objects. The notions of neighborhood, interior, boundary, and closure provide formalism for investigating relationships between objects without considering their shape and size. The interrelations between the topological primitives of two or more objects in their neighborhoods define the topological relationships among objects. For example, if the neighborhood of a point is completely inside the interior of an object, then the point is inside the object; however, if the neighborhood is partially in the object’s interior, then the point is on the boundary of the object. After applying to all of the points of two objects, this mechanism supplied information on the interrelation of two objects.

The topology can be applied to strictly define the subdivision of the space and derive the shape of objects out of it. For this purpose, an n-dimensional space (Hausdorff space) called n-manifold, in which the neighborhood at every point is equivalent to an n-dimensional ball, is introduced. Then a subdivided manifold is defined as a pair(M, C), where the M is manifold and Cis a complex of cells. Each subdivided manifold has the following properties:
• each (n − 1)-dimensional cell is shared by exactly two n-dimensional cells

• given two n-dimensional cellss i and s j , there exists a sequence of cells $$s_{i} = s_{h} =\ldots = s_{k} = s_{j}$$ such that s h C s, k is an (n − 1)-dimensional face

• given any $$(n - 2)-$$ dimensional cell, the n- and ($$n - 1)-$$ cells adjacent to it can be arranged in a single connected alternating cycle.

The first property leads to a closed manifold. The closed manifolds can be orientable or non-orientable. An orientable manifold is the one in which each two n-dimensional cells that intersect in a given (n − 1)-dimensional cell induce opposite orientations on that cell. The notations on manifolds played a critical role in constructing models for computational geometry. The traditional GIS and CAD topological models (e.g., winged-edge, half-wing edge) are built on subdivisions of 2-manifolds, i.e., vertex (0-cell), edge (1-cell), and face (2-cell). 4IM and 9IM are developed under the assumption that the definitions of spatial objects are conform to the properties of 2-manifold.

Suppose two simple spatial objects A and Bdefined as nonempty sets in the same topological space X, then the boundary, interior, closure, and exterior will be denoted as $$\partial A,A^{\circ },\overline{A},A^{-},\partial B,B^{\circ },\overline{B},B^{-}$$. The binary relations R(A, B) between the two object s is then defined as investigating the intersections between the boundary, interior, and the exterior: $$\partial A \cap \partial B,A^{\circ }\cap B^{\circ },\partial A \cap B^{\circ },A^{\circ }\cap \partial B,A^{-}\cap B^{-},A^{-}\cap \partial B,A^{-}\cap B^{\circ },\partial A \cap B^{-}$$, and A B . The intersection (0, empty and 1, nonempty) between the six topological primitives can be represented as a matrix:R(A, B) = $$\left (\begin{array}{*{20}c} A^{\circ }\cap B^{\circ }&A^{\circ }\cap \partial B &A^{\circ }\cap B^{-} \\ \partial A \cap B^{\circ }&\partial A \cap \partial B&\partial A \cap B^{-} \\ A^{-}\cap B^{\circ }&A^{-}\cap \partial B&A^{-}\cap B^{-}\\ \end{array} \right ) = \left (\begin{array}{*{20}c} 0&0&1\\ 0 &0 &1 \\ 1&1&1\\ \end{array} \right )$$

For simplicity, instead of the matrix representation, a row representation of all the intersections is used in the following text. The intersection of the matrix above is listed in the following order: $$\partial A\cap \partial B,A^{\circ }\cap B^{\circ },\partial A\cap B^{\circ },A^{\circ }\cap \partial B,A^{-}\cap B^{-},A^{-}\cap \partial B,A^{-}\cap B^{\circ },\partial A\cap B^{-}\text{, and }A^{\circ }\cap \ B^{-}$$

For example, the relationship between objects with nonintersecting boundaries and interiors can be represented as 000011111, which can be seen as a binary number that corresponds to the decimal number 31. This number is denoted as a decimal code R031. This relationship corresponds to the “disjoint” relationship. It is apparent that different ordering of the intersections will result in a different decimal code. This specific order is chosen, because the first four intersections represent the 4IM. The intersection $$A^{-}\cap B^{-}$$ is always empty (i.e., always 0) and separates the relationships that can be detected with 4IM from 9IM.

The value of the intersections (empty, nonempty) between interior, boundary, and exterior depends on the following three parameters: the dimension of the objects, the dimension of the space (considered also co-dimension of the object), and the type of boundary (connected or disconnected). As mentioned previously, the theoretical number of relationships, i.e., 16 for 4IM and 512 for 9IM, is not possible for real-world spatial objects. To eliminate the impossible relationships, negative conditions are defined. Negative conditions are composed of intersection values that are not possible (therefore, the name “negative”). Examples of negative condition (C1, C2, and C3) are given below (Egenhofer and Herring 1992):

• C1: The exteriors of two objects always intersect.

• C2: If A’s boundary intersects with B’s exterior, then A’s interior intersects with B’s exterior too and vice versa.

• C3: A’s boundary intersects with at least one topological primitive of B and vice versa.

The first condition restricts the intersection of the exteriors to be always nonempty, i.e., $$A^{-}\cap B^{-} = \neg \emptyset$$. This means that an empty value (or 0) can never appear in a relationship. Therefore condition C1 is represented as C1=(-,-,-,-,0,-,-,-,-) in Table 1. After these three negative conditions, the number of possible binary relationships is reduced to 104 for spatial objects with equal dimensions (e.g., surface and surface) and to 160 for spatial objects with different dimensions (e.g., linestring and surface). The conditions are often symmetric. For example, condition C3 implies that it is not possible to have a relationship in which ∂ A∂ Band A ∂ B and A ∂ B can be at the same time nonempty (or 0). However, the same is true for ∂ A∂ B and ∂ AB and ∂ AB , which is included in the condition as vice versa. The conditions depend on the type of objects and the dimension of the space they are embedded. The co-dimension is often used to define the difference between the dimension of an object and the dimension of the space. For example, 2-cell embedded in 3D space has co-dimension 1. For simplicity, we refer 0-cell, 1-cell, 2-cell, and 3-cell to as points, linestings, surfaces, and bodies with corresponding notations P, L, S, and B. The 1, 2, and 3 dimension of the space is denoted by ℝ, ℝ2, and ℝ3. Thus the notation R(L,S) means that the binary relationship concerns linestring and surface as the linestring is the first object. The relationship R(S,L) is the converse relationship, which is referred to by the vice versa part of the condition.

The relationships can be classified in 13 groups according to the objects they apply to:
1. 1.

Any objects: R(L,L) in ℝ; R(L,L), R(S,S), R(L,S), and R(S,L) in ℝ2; R(L,L), R(S,S), R(B,B), R(L,S), R(L,B), R(S,B), R(S,L), R(B,L), and R(B,S) in ℝ3.

2. 2.

Objects with equal dimensions: R(L,L) in ℝ; R(S,S) and R(L,L) in ℝ2; R(L,L), R(S,S), and R(B,B) in ℝ3.

3. 3.

Objects with different dimensions: R(S,L) and R(L,S) in ℝ2; R(B,L), R(L,B), R(B,S), and R(S,B) in ℝ3.

4. 4.

Objects with different dimensions and one of the objects with zero co-dimension: R(L,S) and R(S,L) in ℝ2; R(L,B), R(S,B), R(B,L), and R(B,S) in ℝ3.

5. 5.

At least one of the objects has zero co-dimension: R(L,L) in ℝ ; R(S,S), R(L,S), and R(S,L) in ℝ2; R(L,B) R(S,B), R(B,L), R(B,S), and R(B,B) in ℝ3.

6. 6.

At least one of the objects has a disconnected boundary: R(L,L), R(S,L), R(S,L), R(B,L), R(L,S), R(L,S), and R(L,B).

7. 7.

Objects with connected boundaries and at least one of the objects has a zero co-dimension: R(S,S) in ℝ2; R(S,B) and R(B,S), and R(B,B) in ℝ3.

8. 8.

Objects with equal dimensions and zero co-dimensions: R(L,L) in IR; R(S,S) in ℝ2; and R(B,B) in ℝ3.

9. 9.

Conditions for binary relations between objects of the same dimension and nonzero co-dimensions: R(L,L) in ℝ2 and R(S,S) in ℝ3.

10. 10.

Objects with equal dimensions, connected boundaries, and nonzero co-dimensions: R(S,S) in ℝ3.

11. 11.

Objects with different dimensions, nonzero co-dimensions, and one of them with a disconnected boundary: R(S, L)

12. 12.

Objects with equal dimensions, nonzero co-dimension, and disconnected boundaries: R(L,L) in ℝ2 and ℝ3.

13. 13.

Conditions for binary relations between objects with at least one empty interior: R(P,P), R(P,L), R(P,S), R(P.B), R(L,P), R(S,P), and R(B,P)

The set of 25 negative conditions (Table 1) is the minimal set reported currently in the literature, which identifies all possible relationships with respect to 4IM and 9IM (Zlatanova, 2000b). The negative conditions eliminate 443 and leave only 69 possible relationships. Table 1 clearly shows that the conditions for objects with equal dimension and zero co-dimension (the conditions of group 10) are very restrictive, which leaves only eight possible relationships (Figs. 3, 4, and 5). All possible relationships are given in Table 2. Note that these relationships are applicable for simple spatial object, i.e., surfaces with holes or bodies with tunnels might have different relationships.
Topological Relationships and Their Use, Table 2

Possible relationships between spatial objects in IR, IR2 and IR3

    R(A,B) ∂A ∩ ∂B A∘∩B∘ ∂A∩B∘ A∘∩ ∂B A ̄∩B ̄ A ̄ ∩ ∂B A ̄∩B∘ ∂A∩B ̄ A∘∩B ̄ 1 Disjoint R026 0 0 0 0 1 1 0 1 0 R026 R027 0 0 0 0 1 1 0 1 1 R027 R030 0 0 0 0 1 1 1 1 0 R030 R031 0 0 0 0 1 1 1 1 1 R031 2 R051 0 0 0 1 1 0 0 1 1 R051 R055 0 0 0 1 1 0 1 1 1 R055 R063 0 0 0 1 1 1 1 1 1 R063 3 R092 0 0 1 0 1 1 1 0 0 R092 R093 0 0 1 0 1 1 1 0 1 R093 R095 0 0 1 0 1 1 1 1 1 R095 4 R117 0 0 1 1 1 0 1 0 1 R117 R119 0 0 1 1 1 0 1 1 1 R119 R125 0 0 1 1 1 1 1 0 1 R125 R127 0 0 1 1 1 1 1 1 1 R127 5 Crosses R159 0 1 0 0 1 1 1 1 1 R159 6 Contains R179 0 1 0 1 1 0 0 1 1 R179 R183 0 1 0 1 1 0 1 1 1 R183 R191 0 1 0 1 1 1 1 1 1 R191 7 Inside R220 0 1 1 0 1 1 1 0 0 R220 R221 0 1 1 0 1 1 1 0 1 R221 R223 0 1 1 0 1 1 1 1 1 R223 8 Crosses? R243 0 1 1 1 1 0 0 1 1 R243 R245 0 1 1 1 1 0 1 0 1 R245 R247 0 1 1 1 1 0 1 1 1 R247 R252 0 1 1 1 1 1 1 0 0 R252 R253 0 1 1 1 1 1 1 0 1 R253 R255 0 1 1 1 1 1 1 1 1 R255 9 Touch R272 1 0 0 0 1 0 0 0 0 R272 R275 1 0 0 0 1 0 0 1 1 R275 R277 1 0 0 0 1 0 1 0 1 R277 R279 1 0 0 0 1 0 1 1 1 R279 R284 1 0 0 0 1 1 1 0 0 R284 R285 1 0 0 0 1 1 1 0 1 R285 R287 1 0 0 0 1 1 1 1 1 R287 10 R311 1 0 0 1 1 0 1 1 1 R311 R316 1 0 0 1 1 1 1 0 0 R316 R317 1 0 0 1 1 1 1 0 1 R317 R319 1 0 0 1 1 1 1 1 1 R319 11 R339 1 0 1 0 1 0 0 1 1 R339 R343 1 0 1 0 1 0 1 1 1 R343 R349 1 0 1 0 1 1 1 0 1 R349 R351 1 0 1 0 1 1 1 1 1 R351 12 R373 1 0 1 1 1 0 1 0 1 R373 R375 1 0 1 1 1 0 1 1 1 R375 R381 1 0 1 1 1 1 1 0 1 R381 R383 1 0 1 1 1 1 1 1 1 R383 13 Equal R400 1 1 0 0 1 0 0 0 0 R400 R403 1 1 0 0 1 0 0 1 1 R403 R405 1 1 0 0 1 0 1 0 1 R405 R407 1 1 0 0 1 0 1 1 1 R407 R412 1 1 0 0 1 1 1 0 0 R412 R413 1 1 0 0 1 1 1 0 1 R413 R415 1 1 0 0 1 1 1 1 1 R415 14 Covers R435 1 1 0 1 1 0 0 1 1 R435 R439 1 1 0 1 1 0 1 1 1 R439 R444 1 1 0 1 1 1 1 0 0 R444 R445 1 1 0 1 1 1 1 0 1 R445 R447 1 1 0 1 1 1 1 1 1 R447 15 CoveredBy R467 1 1 1 0 1 0 0 1 1 R467 R471 1 1 1 0 1 0 1 1 1 R471 R476 1 1 1 0 1 1 1 0 0 R476 R477 1 1 1 0 1 1 1 0 1 R477 R479 1 1 1 0 1 1 1 1 1 R479 Overlaps R499 1 1 1 1 1 0 0 1 1 R499 R501 1 1 1 1 1 0 1 0 1 R501 R503 1 1 1 1 1 0 1 1 1 R503 R508 1 1 1 1 1 1 1 0 0 R508 R509 1 1 1 1 1 1 1 0 1 R509 R511 1 1 1 1 1 1 1 1 1 R511
Although the number of relationships is significantly reduced, the question that if all have to be implemented for real-world cases remains. As it can be seen from the drawings, some of the configurations are quite complex and seem impractical. Some observations on the possible relationships are summarized below:
• Clearly the 9IM is superior to 4IM. However the increased relationships are only between object of mixed dimensions and objects of the same dimension, which are embedded in higher dimension space such as R (L,L) and R(S,S) in ℝ3. The relationships that appear between all objects are only seven (R031, R179, R220, R400, R287, R435, and R476), and they can be detected with 4IM (Figs. 3, 4, and 5). Note that “overlap” relationship R511 is not possible for R (L,L) in IR . The relationships that visually represents “overlap” is R255. Because the boundary of linestring is disconnected, the intersection of boundaries is nonempty, i.e., ∂ A∂ B = 0 (Fig. 3).

• The relationships are related to the dimension of objects, i.e., some of the relationships never occur between particular objects. For example, R509 (the interiors can intersect without touching the boundary) appears only in R(L,B)/R(B,L) and R(S,B)/R(B/S) or R277 (boundaries completely overlap but the interiors not) is possible only for R(L,L) and R(S,S) in higher dimension space. This implies that certain relationships (respectively topological operators) will be quite specific and will depend on the dimension of the objects and the space.

• The relationships are related to the geometric representation of the objects. This is to say that some relationships may not be needed because some configurations of objects are too complex and normally they are simplified. For example, R455 performed for body and surface (Fig. 7) may never be needed for urban applications. Most probably the surface A will be represented as two surfaces: one on the top and one inside the body B.

• As it can be realized, the names (given in Table 2) established for relationships according 4IM are not sufficient for 9IM. The relationships between surfaces in 3D space are one typical example. In the human perception of “intersection,” “cross” might be completely different: e.g., overlap stands for R511 (e.g., surface and surface in 2D) and R255 (e.g., surface and linestring in 3D). Most of the relationships are not associated with appropriate names and even it is difficult to specify the type of interaction. Further implementations topological operators would require establishment of new names.

As mentioned previously, the calculations of intersections will give equivalent results if using classical geometric representations (Fig. 1). In 2011, the OGC implementation specifications for geographical features have been adapted to incorporate the Dimensionally Extended Nine-Intersection Model (DE-9IM) as presented by Strobl (2008). The matrix for representing the 9IM is augmented to include the dimension of the intersection between the two objects as follows (Herring, 2011):

$$\displaystyle\begin{array}{rcl} & & R(A,B) {}\\ & & = \left (\begin{array}{*{20}c} \dim (A^{\circ }\cap B^{\circ }) &\dim (A^{\circ }\cap \partial B) &\dim (A^{\circ }\cap B^{-}) \\ \dim (\partial A \cap B^{\circ })&\dim (\partial A \cap \partial B)&\dim (\partial A \cap B^{-}) \\ \dim (A^{-}\cap B^{\circ })&\dim (A^{-}\cap \partial B)&\dim (A^{-}\cap B^{-})\\ \end{array} \right ){}\\ \end{array}$$
The dim(x) gives the maximum dimension (−1, 0, 1, or 2) of the objects in the intersection x, with a numeric value of −1 corresponding to dim(∅). The values 0, 1, and 2 correspond to point, linestring, and surface intersection. For implementation, it is recommended considering a set of nine pattern values (p). The possible pattern values of pare {T, F, *, 0, 1, 2}. The meaning of the values have to be as follows (Herring, 2011):
• p = T ⇒ dim(x) ∈ {0, 1, 2}, i.e., x ≠ ∅

• p = F ⇒ dim(x) = −1, i.e., x = ∅

• p = * ⇒ dim(x) ∈ {-1, 0, 1, 2}, i.e., Don’t Care

• p = 0 ⇒ dim(x) = 0 (point)

• p = 1 ⇒ dim(x) = 1 (line sting)

• p = 2 ⇒ dim(x) = 2 (polygon)

The OGC specifications provide further instructions how the functions have to be implemented for point, linestring, polygon, and area in 2D space.

## Key Applications

The topological operators are commonly implemented for vector models (boundary representation) and more specifically on geometrical models. Following the OGC abstract specification, Topic 1 Feature Geometry, the geometry is represented as an ordered sequence of vertices that are connected by straight line segments or circular arcs, which are used to describe 0D, 1D, 2D, and 3D objects. The vertices can be given with different dimensions (1D, 2D, and 3D). For example, three-dimensional points are elements composed of three ordinates, X, Y, and Z. Line strings are composed of one or more pairs of points that define line segments. Polygons are composed of connected line strings that form a closed ring and the area of the polygon is implied. Self-crossing polygons are not supported, although self-crossing line strings might be supported. If a line string crosses itself, it does not become a polygon and does not have any implied area.

The usage of the topological relations is well-represented in query languages. All database management systems with a spatial support have provided topological operations based on the 9IM. The operations are developed by referencing the name of the eight relationships (covers, coveredBy, contains, inside, overlaps, touch, equal, anyinteract). The operator anyinteract detects if two objects are disjoint. If the operator returns nonempty value, other operators can clarify what the relationship is. Oracle Spatial 11g provides operators to check the topological operators in two versions as one operator SDO_RELATE (with mask for each relationship) and as convenience operators named after the relationships. PostGIS provides operators per relationship.

### Consistency and Validity

The topological operations are utilized for different purposes. The most common use is investigation if a geographical map is a planar partition, i.e., to detect gaps or overlaps between geographical objects. These operations are of major importance for organizations, which maintain topographic, land use, cadastral, hydrological, and other maps, such as national mapping organizations, cadastre, topographic offices, municipalities, etc.

An example of the use of Oracle Spatial operation and function for the work of Rijkswaterstaat, the Dutch organization responsible for the design, construction, management, and maintenance of infrastructure facilities, is presented in Zlatanova et al. (2003). The main goal of the experiments was the possibility to perform validity check and consistent maintenance at database level utilizing the existing operators. An overlapping test was performed to investigate the relationships between the polygons in one map layer (assuming polygons should not overlap). All the data sets were checked (with the operator SDO_RELATE) for the relationship ANYINTERACT. If the operator detects interaction, the geometry of the overlapping polygon is composed using the Oracle Spatial and Graph function SDO_GEOM.SDO_INTERSECTION. The function returns an object that is the topological intersection (AND operation) of two geographical objects. Finally, the area of the intersecting polygon is computed using again the Oracle Spatial and Graph function, SDO_GEOM.SDO_AREA. The computed area gives an indication over the type of overlap. The area of all computed polygons should be equal to the area of the outer polygon of the given area. Following this procedure “overlaps” can be easily detected (Figs. 10 and 11). Topological Relationships and Their Use, Fig. 10 Surface and surface in IR3: 38 relationships Topological Relationships and Their Use, Fig. 11 Detecting overlaps and gaps between two polygons with SDO_RELATE (mask “ANYINTERACT”)

It should be noticed that most of the topological operators are currently implemented for a 2D space. If an object is given with its 3D coordinates, it is first projected on the xy-plane and then the operation is performed. The topological operators might even trigger an error if vertical objects are given as predicates. Oracle Spatial and Graph 11g provide few operators such as SDO_ANYINTERACT and SDO_INSIDE, which make use of the 3D coordinates.

The topological operations can be used to define constraints either for update of existing data sets, i.e., to avoid wrong overlaps and intersections between geographical object, or to restrict the use from performing certain actions, which will result in violation of semantic or topological rules. (Louwsma et al., 2006) present such a set of constraints, which are implemented in a landscape simulator SALIX-2. Examples of a constraint on the topological relationships between two objects are “Yucca tree must never stand in water” and “the tree must never be planted on a paving.” These constraints are then checked each time when students plant trees in the landscape simulator. SALIX-2 maintains trees, bushes, and ground surfaces (water, paving, soft paving, grass, and bridge). The constraints are implemented in Oracle Spatial 9i using triggers (before and after) and the operators SDO_ANYINTERACT and SDO_RELATE (mask = “inside”).

### Visibility Analysis

Although most of the topological operators are 2D, they can be readily applied to 2.5D objects, i.e., objects that have only one z-coordinate for a given x, y. The relationships between a large number of 3D geographic objects can also be derived on the basis of 2D investigations. For example, most of the topological relationships between city models in LOD1 or LOD2 are easy to check using the 2D operators. Only relationship “inside” would require clarification of the intersection in Z-direction. Such analysis can be performed by developing database scripts. Scripting, which uses 2D topological operations, is a power approach to complex spatial analysis, e.g., visibility line. Figure 12 illustrates visibility analysis between buildings, which is computed entirely with PostGIS operations and user-defined functions, which make use of the operator ST_intersect. Topological Relationships and Their Use, Fig. 12 Visibility analysis, utilizing ST_Intersects in PostGIS (courtesy Martin Warmer)

Topological relationships can be used to define surfaces, appropriate for walking and support path finding on the basic of adjacent patches (Schaap et al., 2012). The patches are defined in such a way to slightly overlap. These overlapping parts are lately used to find possible directions for movement. A 3D model is proposed, which maintains information of a network and set of surface patches with corresponding attributes and behavior. The model is implemented in Oracle 11g and results are in Google Earth. Oracle Spatial and Graph 11g network shortest route capabilities for logical network are used for finding the optimal route for individual travelers with specific speed and accessibility properties. The application makes use of the Oracle Spatial and Graph operations SDO_ANYINTERACT and SDO_RELATE to define the walking surfaces (Fig. 13) Topological Relationships and Their Use, Fig. 13 Overlapping patches for navigation and the resulting walking route (SDO_INTERACT and SDO_RELATE)

### 3D Topological Relationships

There are still many cases that true 3D operator are needed. 3D world contains more information than 2D and the validity and integrity of 3D models are getting of increasing importance (Fig. 13) (Ellul, 2013). Borrman and Rank (2009) present algorithms define to inside, contain, touch, overlap, disjoint, and equal in 3D space for the purpose of analyzing building information models. The operators are implemented in 3D raster domain (octree-based), i.e., prior performing the operations the boundary objects is voxelized.

Xu and Zlatanova (2013) argues that topological operations have to be advanced to 3D by investigating which real-world object can result in 3D conflicting situations. They concentrate on the objects as defined within CityGML and propose three steps: (1) investigating the semantics of the objects and expressing the impossible relationships in natural language (“houses can never intersect at any LOD,” “trees can intersect at their branches”), (2) translating to geometric representations (“bodies cannot intersect if houses,” “surfaces can intersect if trees” ), and (3) defining the needed 3D relationship (“R(B,B) = {R031,R278} and R (S,S) ={R287,R511”). Most of the 3D operations are needed for man-made objects (such as buildings, tunnels, bridges) and trees. Relationships between buildings, tunnels, and bridges would require considering geometries with holes. Several relationships are then implemented, re-using 2D topological operators (Fig. 14). Topological Relationships and Their Use, Fig. 14 Examples of relationships between objects, which cannot be detected by 2D topological operators (Xu and Zlatanova, 2013)

## Future Directions

Advances in data collection, processing, management, and visualization have led to and increased need for well-defined objects, consist data sets, and elaborated analysis. The size of current data sets and complexity of 3D models have increased the interest in database storage with centralized management of information with extended analytical capabilities. The topology and topological relationships are key component in this process. Future investigations and developments are envisaged under the following broad groups: algorithms, data structures, and applications.

Topological relationships are most well-developed for simple objects and implemented for 2D objects. Next step is the implementations of the DE-9IM for 2D objects. Algorithms for 1D, 2D, and 3D objects embedded in 3D space are still investigated only in research environment. A first option of extending the operations in 3D is by reusing and combining existing operators. The complexity of real-world man-made objects clearly shows that simple objects with holes and tunnels have to be urgently included in research agendas. A small set of 3D operators on solids with tunnels could be the first easy step. Investigations in higher-order topology, which is beyond the immediate neighbors or considering semantic expressions, are very much of interest.

The implementation of topological relationships is highly depended on the underlying spatial model. Current implementations make use of geometrical model as defined in the OGC abstract specification. Research and prototype implementations have convincingly shown that topological models have advantages to the geometrical model in keeping consistency and especially facilitating adjacency relationships. The disadvantage of topological data structures is the lack of unified data structure in 3D. van Oosterom et al. (2002) propose maintenance of the existing topological data structures in a metadata table similar to the reference coordinate systems. A complete and detailed description of all parameters defining topological model, such as dimension, primitives used, existence of explicit relationships, number of tables, rules, etc., will make possible to transform data between topological models.

The topological operations are presently discussed only for vector models. However they can be implemented for 2D or 3D raster models as well. The topological primitives interior, boundary, and exterior remain the same but their importance changes. In vector models, the boundary is the most critical primitive, which is realized through the shape of the object. In raster/voxel domain, the interior will be the leading primitive. Considering the complexity of 3D objects, 3D raster domain with its unified primitives (voxels) and well-defined structures (e.g., octree) can be an attractive option for implementing 3D topological operations.

Topological operations have been traditionally developed to represent relationships between geographical objects. The interest in topology in more domains is increasing. One straight-forward implementation is detecting connectivity between objects and deriving dual graph. This approach has been widely accepted for shortest path computations, spatial syntax analysis, and walk through. Recently a new standard IndoorGML has been adopted by OGC, which utilizes the prima-dual approach for indoor navigation (Lee et al., 2014). Topological relationships attract the attention of CAD and BIM domain as well. Indoor environments are truly 3D and contain much more objects with multifaceted shapes and complex relationships. Examples are pipes and cables in buildings, furniture in rooms, elevators, and escalators between floors. Such relationships will definitely need extended 3D topological relationships. The richer set of geometric primitives in CAD and BIM domains, the density of objects and complexity of relationships could be another reason for shift to the 3D raster domain as unified environment for 3D topological relationships.

## References

1. Armstrong MA (1983) Basic topology. Springer, New York
2. Billen R, Kurata Y (2008) Refining topological relations between regions considering their shapes. In: Raunbal M, Miller J, Frank AU et al (eds) Geographic information science. Lecture notes in computer science. Heidelberg, Berlin, pp 18–32Google Scholar
3. Borrman A, Rank E (2009) Topological analysis of 3D building models using a spatial query language. Adv Eng Inform 23(4):370–385
4. Breunig M, Zlatanova S (2011) 3D geo-database research: retrospective and future directions. Comput Geosci 37(7):791–803
5. Clementini E, di Felice P (1997) Approximate topological relations. Int J Approx Reason 16:173–204
6. Clementini E, di Felice P, van Oosterom PJM (1993) A small set of formal topological relations suitable for end-user interaction. In: Proceedings of the 3th international symposium on large spatial databases. Springer, Berlin, pp 277–295Google Scholar
7. de Hoop S, van de Meij L, Molenaar M (1993) Topological relations in 3D vector maps. In: Proceedings of 4th EGIS, Genoa, pp 448–455Google Scholar
8. Deng M, Cheng T, Chen X et al (2007) Multi-level topological relations between spatial regions based upon topological invariants. Geoinformatica 11:239–267
9. Egenhofer MJ (1995) Topological relations in 3D. Technical report, University of MaineGoogle Scholar
10. Egenhofer MJ, Franzosa RD (1991) Point-set topological spatial relations. Int J Geogr Inf Syst 5:161–174
11. Egenhofer MJ, Herring JR (1992) Categorising topological relations between regions, lines and points in geographic databases. In: Egenhofer MJ, Herring IR (eds) A framework for the definition of topological relationships and an approach to spatial reasoning within this framework, Santa Barbara, pp 1–28Google Scholar
12. Egenhofer MJ, Sharma J, Mark D (1993) A critical comparison of the 4-intersection and 9-intersection models for spatial relations: formal analysis. In: Autocarto 11, Minneapolis, pp 1–11Google Scholar
13. Egenhofer MJ, Clementini E, di Felice P (1994) Topological relations between regions with holes. Int J Geogr Inf Syst 8(2):129–144
14. Ellul C (2013) Can topological pre-culling of faces improve rendering performance of city models in Google Earth. In: Pouliot J, Daniel S, Hubert F, Zamyadi Z (eds) Progress and new trends in 3D geoinformation sciences. Springer, Heidelberg/New York, pp 133–154
15. Ellul C, Haklay M (2007) The research agenda for topological and spatial databases. Comput Environ Urban Syst 31:373–378
16. Freeman J (1975) The modelling of spatial relations. Comput Graph Image Process 4:156–171
17. Gröger G, George B (2012) Geometry and topology. In: Kresse W, Danilo DM (eds) Springer handbook of geographic information. Springer, Berlin/New York, pp 159–177Google Scholar
18. Herring JR (1991) The mathematical modeling of spatial and non-spatial information in geographic information systems. In: Mark D, Frank A (eds) Cognitive and linguistic aspects of geographic space. Kluwer Academic, Dordrecht, pp 313–350
19. Herring JR (2011) OpenGIS implementation specification for geographic information – simple feature access – Part 1: Common architecture: Version: 1.2.1, OGC Doc. No OGC 06-103r3Google Scholar
20. Kufoniyi O (1995) Spatial coincidence modelling, automated database updating and data consistency in vector GIS. PhD thesis, ITC, The NetherlandsGoogle Scholar
21. Lee J, Li KJ, Zlatanova S, Kolbe TH, Nagel C, Becker T (2014) IndoorGML, Version 1.0, OGC Doc. No OGC 14-005r3Google Scholar
22. Louwsma J, Zlatanova S, van Lammeren R, van Oosterom P (2006) Specifying and Implementing Constraints in GIS–with Examples from a Geo-Virtual Reality System. In: GeoInformatica, vol 10, No 4, pp 531–550
23. Pullar DV, Egenhofer MJ (1988) Toward the definition and use of topological relations among spatial objects. In: Proceedings of the third international symposium on spatial data handling, Sydney, pp 225–242Google Scholar
24. Schaap J, Zlatanova S, van Oosterom PJM (2012) Towards a 3D geo-data model to support pedestrian routing in multimodal public transport travel advices, In: Zlatanova S, Ledoux H, Fendel EM, Rumor M (eds) Urban and regional data management. UDMS annual 2011. CRC press/Taylor and Francis Group, Boca Raton/London, pp 63–78Google Scholar
25. Schneider M, Behr T (2006) Topological relationships between complex spatial objects. ACM Trans Database Syst 31(1):39–81
26. Strobl C (2008) Dimensionally extended nine-intersection model (DE-9IM). In: Shekhar S, Xiong H (eds) Encyclopaedia of GIS. Springer, Berlin, pp 240–245
27. van Oosterom PJM, Stoter J, Quak W, Zlatanova S (2002) The balance between geometry and topology. In: Richardson D, van Oosterom PJM (eds) Advances in spatial data handling. 10th international symposium on spatial data handling. Springer, Berlin, pp 209–224Google Scholar
29. Xu D, Zlatanova S (2013) Am approach to develop 3D GeoDBMS topological operators by reducing existing 2D operators, ISPRS annals – volume II-2/W1, 2013, WG II/2, 8th 3D GeoInfo conference & ISPRS WG II/2 workshop, Nov 2013, pp 291–298Google Scholar
30. Zlatanova S (2000a) 3D GIS for urban development. PhD thesis, Graz University of Technology, ITC, The NetherlandsGoogle Scholar
31. Zlatanova S (2000b) On 3D topological relationships, In: Proceedings of the 11th international workshop on database and expert system applications (DEXA 2000), 6–8 Sept. Greenwich, London, pp 913–919Google Scholar
32. Zlatanova S, Tijssen TPM, van Oosterom PJM, Quak WC (2003) Research on usability of Oracle spatial within RWS organisation, GISt No. 21, ISSN:1569–0245, ISBN:90-77029-07-9, AGI-GAG-2003-21, Delft, 75pGoogle Scholar

1. Billen R, Zlatanova S (2003) 3D spatial relationship model: a useful concept for 3D cadastre? Comput Environ Urban Syst 27:411–425
2. Clementini E, Sharma J, Egenhofer MJ (1994) Modelling topological spatial relations: strategies for query processing. Comput Graph 18(6):815–822
3. de Almeida JP, Morley JG, Dowman IJ (2007) Graph theory in higher order topological analysis of urban scenes. Comput Environ Urban Syst 31:426–440
4. Egenhofer MJ, Herring JR (1990) A mathematical framework for the definition of topological relations. In: Proceedings of fourth international symposium on SDH, Zurich, pp 803–813Google Scholar
5. Escobar-Molano ML, Barret DA, Carson E et al (2007) A representation for databases of 3D objects. Comput Environ Urban Syst 31:409–425
6. Hazelton NW, Bennett L, Masel J (1992) Topological structures for 4-dimensional geographic information systems. Comput Environ Urban Syst 16(3):227–237
7. Park J, Lee J (2008) Defining 3D spatial neighborhood for topological analyses using a 3D network-based topological data model-CA- building based evacuation simulation. The international archives of the photogrammetry, remote sensing and spatial information sciences, Beijing, vol XXXVII, Part B2, pp 305–310Google Scholar
8. Whiting E, Battat J, Teller S (2007) Topology of urban environments. In: Dong A, Vande Moere, Gero JS (eds) Computer-aided architectural design futures (CAADFutures). Springer, Berlin, pp 114–128Google Scholar