1. Introduction
Research into the representation of topological relations in spatial databases and Geographical Information Systems (GISs) has been an important focus of investigations for around 30 years. Topological relations are a specific kind of relations in a wider panorama of spatial relations; see [
1] for a categorization of spatial relations in general. Topological relations have had a prominent role in research on developing human–machine interfaces for geo-spatial systems, query optimization, qualitative spatial reasoning, semantic spatial modeling, and even recent studies in volunteered geographic information [
2].
Three proposals for modeling topological relations have been particularly studied theoretically and also formed the subject of practical investigations and applications: the nine-intersection model (9IM) [
3] with its dimension extension DE-9IM [
4], Region Connection Calculus (RCC-8) [
5], and the Calculus-Based Method (CBM) [
4]. RCC-8 can only represent topological relations between regions of the same dimension, while the other two formalisms can model topological relations between spatial features of arbitrary dimensionality. Since their adoption by the Open GeoSpatial Consortium (OGC) [
6], all spatial database systems now implement the CBM operators. The relations of Egenhofer’s matrix-based methods [
7] and those of the CBM are interdefinable, in the sense that every DE-9IM matrix can be expressed by a CBM logical expression and, vice versa, every CBM relation can be expressed by a set of DE-9IM matrices, as proved in [
8].
The above list is not exhaustive. Many other models for topological relations appeared in the literature, often from different communities, such as linguistics [
9], philosophy [
10], and psychology [
11]. In computer science, the interest in topological relations spans from spatial databases [
12,
13] to spatial information theory [
14,
15,
16], image databases [
17,
18,
19], and artificial intelligence [
20]. Various authors considered extensions of models for topological relations to complex features [
21] and to 3D space [
22,
23].
Composition tables play a key role in a variety of tasks such as spatial query optimization [
24]: applying the constraints of the tables, it is possible to discover contradictions in the query expression before the real processing of the query starts. However, composition tables for the CBM were never developed and were only created for regions (rather than arbitrary combinations of data types) in the case of RCC-8 and the 9IM [
25].
The RCC family of calculi [
26] takes a logic-based approach in defining qualitative topological relations. In general, a logical calculus leaves the possible interpretations open and is based on primitive relations (axioms), while other relations are inferred from primitives via logical expressions. In RCC calculi, a binary connection relation, C(
), is axiomatized as the primitive topological relation between regions; other relations are then defined from this primitive. RCC-8, the most well-known calculus of the family, consists of eight jointly exhaustive and pairwise disjoint topological relations between pairs of regions of the same dimension; in the case of 2D regions, there is a one-to-one correspondence with the eight topological relations of the 9IM involving 2D simple regions.
Various approaches in the literature face the problem of representing topological relations between non-simple geometric features of various dimensionalities. Using two primitives (“part” (P) and “boundary” (B)), Galton [
27] built an axiomatic system for multidimensional mereotopology. The “INCH” calculus [
28] is defined over closed sets of points of different dimensionality. Galton [
29] notes that there are few attempts to build calculi able to represent topological relations between features whose dimensions are lower than that of the embedding space, such as lines in
, presumably because of the difficulties that arise when dealing with such mixed-dimension situations [
30,
31]. Further analysis can be found in [
32,
33,
34].
Clementini and Cohn [
35] proposed a unifying theory, thus connecting RCC and the CBM; this was achieved through (a) an extension of RCC-8, called RCC*-9, capable of modeling topological relations between simple regions and lines and (b) a modification of the CBM, called the CBM*, which maps easily onto the RCC family of calculi and enables a composition table to be constructed, thus enabling reasoning in the CBM*. It was also demonstrated that the two new calculi, RCC*-9 and the CBM*, were equivalent in the sense that they can both represent the same topological configurations.
This paper proposes a revised version of RCC*-9 [
35], extending it to complex features (multipolygons, multipolylines, and multipoints) and to 3D features (polyhedrons). Further, we run experiments for demonstrating that the RCC*-9 relations are a jointly exhaustive and pairwise disjoint (JEPD) set of relations, and we build the composition tables for spatial reasoning, following an experimental approach as well. In
Section 2, we review the geometric formalism used in the subsequent sections. In
Section 3, we present the revised RCC*-9, which integrates complex and 3D features. In
Section 4, we take an experimental approach to check whether the RCC*-9 set of relations is JEPD. The experimental approach was proposed in [
36], where properties of a qualitative spatial calculus were assessed by running experiments with random datasets of spatial features. In
Section 5, we develop the composition tables for the revised RCC*-9 by applying the same experimental method. In
Section 6, we describe in further detail the implementation of the experiments that allowed us to obtain the previous theoretical results.
Section 7 concludes the paper with a final discussion.
2. Definition of Geometric Features
In this paper, we follow the terminology of the OGC, where point-sets of the plane
are called features and a distinction is made between simple features and complex features [
6]. The OGC simple feature model definitions were originally defined in [
37]. Below, we briefly restate the definitions of simple and complex features, extending them to the 3D case as well. Features are categorized according to their dimension: bodies of dimension 3, regions of dimension 2, lines of dimension 1, and points of dimension 0. For the sake of clarity, we separate the already known definitions for features embedded in
from the new definitions holding in
.
2.1. Features in 2D Space
The definitions in this subsection are taken from [
37]. Let
x be a two-dimensional point-set embedded in
.
Definition 1. The interior of x is defined as the union of all open sets contained in x.
Definition 2. The closure of x is defined as the intersection of all closed sets containing x.
Definition 3. The boundary of x is defined as the set difference between its closure and its interior, i.e., .
Definition 4. The exterior of x is defined as the set difference .
Definition 5. x is regular closed if .
Definition 6. A simple region is a regular closed non-empty two-dimensional point-set x with a connected interior and connected exterior.
Definition 6 implies that a simple region is homeomorphic to the closed unit disk. A simple region does not have holes and is connected. If the constraint of the connected exterior from the definition is omitted, then regions with holes may exist [
38]:
Definition 7. A region with holes is a regular closed non-empty two-dimensional point-set x with a connected interior.
Holed regions are implemented with the polygon spatial data type in OGC simple feature specifications. Omitting the constraint of a connected interior results in complex regions, i.e., regions with holes and separations:
Definition 8. A complex region is a regular closed non-empty two-dimensional point-set x.
The multipolygon spatial data type is used in OGC feature models to implement complex regions.
Definition 9. A simple line is a closed non-empty one-dimensional point-set x, defined as the image of a continuous mapping , such that and .
Thus, a simple line is the mapping of the unit interval in the plane with no self-intersections. A simple line can be constructed by taking a pen and tracing a line on a piece of paper, never passing twice through the same position and never removing the pen until the line is finished. The initial and final points of a simple line, otherwise called the endpoints of the line, are denoted as and .
Topologically, a simple line embedded in
, being a one-dimensional set, has an empty interior. Following normal practice in both the GIS [
7] and in OGC standards, the boundary
of a line
x is defined to be the set of its two endpoints, whilst
is the interior of the line. In this paper, we will adopt these definitions of the boundary and interior of a line feature. Simple lines are implemented with the polyline spatial data type in the OGC feature model.
If the constraint of no self-intersections is removed from Definition 9, then lines with self-intersections result, a particular case of which is the closed ring, where :
Definition 10. A line with self-intersections is a closed non-empty one-dimensional point-set x, defined as the image of a continuous mapping .
A complex line is composed of several components that may be disjoint or not, i.e., the union of several mappings from the unit interval to the plane:
Definition 11. A complex line is a closed non-empty one-dimensional point-set x, defined as the union of n images of continuous mappings .
Complex lines are implemented with the multipolyline spatial data type in the OGC feature model.
Definition 12. A simple point is a zero-dimensional element of .
Definition 13. A complex point is a finite set whose elements are simple points.
Following the OGC convention, we regard point features as having an empty boundary. The point and multipoint spatial data types are used to implement simple and complex point features in OGC standards, respectively.
2.2. Features in 3D Space
In this subsection, we develop new definitions for features in 3D space as a natural extension of definitions of features in 2D space. We first define 3D bodies and then re-define regions and lines embedded in 3D space. Let x be a three-dimensional point-set embedded in . Definitions 1–3 are the same. Definition 4 should be replaced by the following:
Definition 14. The exterior of x is defined as the set difference .
Definition 5 is the same, while Definition 6 has an equivalent in the following definition for simple bodies:
Definition 15. A simple body is a regular closed three-dimensional point-set x with a connected interior and genus 0.
Definition 15 implies that a simple body is homeomorphic to the closed unit sphere. A simple body does not have holes and is connected. Now, in 3D we can distinguish different kinds of what would be commonly described as a “hole” with different topological definitions. Defining a simple body with “a connected exterior” as we did in
would not exclude that the object is equivalent to a torus. In fact, a torus (a doughnut) has a connected interior and connected exterior. The topological difference between a sphere and a torus is captured by the notion of the genus. A sphere is a body of genus 0, a torus is a body of genus 1, and other bodies with more “holes” of this nature have a correspondingly bigger genus [
39].
There is another meaning of “hole” in 3D that can be obtained when the exterior is disconnected (likewise in 2D). In this case, we obtain a body with “voids” inside (like a soccer ball or some cheeses). So, for the two kinds of holes in 3D, we decide to define as a “hole” the kind of hole we find in a doughnut and to define as a “void” the kind of hole in a soccer ball.
Definition 16. A body with holes is a regular closed three-dimensional point-set x with a connected interior and genus greater than zero.
Definition 17. A body with voids is a regular closed three-dimensional point-set with a connected interior and a disconnected exterior.
Definition 18. A complex body is a regular closed three-dimensional point-set with a possibly disconnected interior and exterior.
How is a region defined in ? Previous definitions of simple regions and other 2D features in are not valid anymore if they are embedded in , since the interior of a 2D feature in is empty. Therefore, we need to change the definition, similarly to how we defined 1D features embedded in . A simple region in is the mapping of a simple disk in without self-intersections; that is, every point of the disk needs to be mapped onto a distinct point of the region in . Let us call D the unit disk in .
Definition 19. A simple region embedded in is a closed two-dimensional point-set x, defined as the image of a continuous mapping , such that .
The boundary of a simple region x corresponds to the mapping of and the interior corresponds to the mapping of .
Analogously, regions with holes embedded in can be defined as a mapping from a region with a hole in . Complex regions can be defined as a mapping from a complex region in .
One-dimensional features embedded in have a similar definition to the ones in :
Definition 20. A simple line embedded in is a closed one-dimensional point-set x, defined as the image of a continuous mapping , such that .
Thus, a simple line is the mapping of the unit interval in with no self-intersections. Lines with self-intersections, complex lines, simple points, and complex points have a similar definition as well.
3. Definition of RCC*-9
The spatial primitive entities of RCC-8 and related family of logical calculi are regions [
5,
26]. The introduction of RCC*-9 expands RCC-8 to include spatial features of different dimensions, specifically simple 1D lines and 2D regions [
35]. The differences in the definition of relations between RCC-8 and RCC*-9 are in the
overlap (O),
partial overlap (PO),
non-tangential proper part (NTPP),
tangential proper part (TPP), and
externally connected (EC) relations and their inverses and in the new
cross relation (CR), while other relations keep the same definitions. A hierarchy of RCC*-9 relations is given in
Figure 1, where it is also indicated when a relation keeps the same definition as in RCC-8. Further information about the differences between RCC-8 and RCC*-9 definitions can be obtained from [
35] and by reading the rest of this section.
Hereafter, we redefine RCC*-9 by widening the range of spatial primitives to dimensions from 0 to 3 (i.e., points, lines, regions, bodies) and by considering non-simple features as well (i.e., features with separate components, self-intersections, holes, and voids). To accommodate this extended universe of features, several changes need to be made to RCC*-9 definitions: for the sake of clarity, we restate all RCC*-9 definitions even when they do not change and we explicitly remark when the changes are needed. One change is in the definition of the PO and O relations, which is needed to correct an error discovered by [
40]. Some modifications are needed in the boundary primitive B since we need to impose that the boundary of a feature must be of the immediately smaller dimension of the feature itself; otherwise, the definition of the relation NTPP would not work. The latter aspect was not taken into consideration in [
35], since RCC*-9 was intended for regions and lines only, so it was implicit that the dimension of a line was the immediate smaller dimension of a region. Boundary definitions in the case of non-simple and 3D features produce a vast range of new feature types that need to be taken into account. Hence, the fact of considering a broader universe of features does not have many implications on the nine relations’ definitions, but it has an impact on the kind of relations that apply to subcategories of features: for example, the CR can be instantiated for simple features in the case of a line/region and a line/line only and not in the case of a pair of regions, but it can exist in the case of two complex regions (see later in this section). Thus, our intended universe of discourse now consists of bodies (3D features), regions (2D features or boundaries of bodies), lines (1D features or boundaries of regions), and points (0D features or boundaries of lines).
As noted in
Section 2, a feature of a co-dimension bigger than zero (for example, a line or a point in
) has no interior. Thus, a line in
has no non-tangential proper parts (cf Galton [
29]). The standard RCC definitions function correctly when the universe of discourse contains regions of dimension
, for any
, but fail for points or whenever the universe of discourse contains regions of differing dimensionalities. (The semantic stance taken by different mereotopologies may vary depending on what kinds of spatial entities are allowed. See [
34] for a detailed analysis and comparison and the issues that arise depending on the stance taken. Cohn and Varzi [
34] also contains axiomatizations of merotopologies, which include boundaries as spatial entities (though these axiomatizations do not include the CR considered in RCC*-9).) We adopt the “usual” GIS definitions [
7,
37], and thus non-tangential proper parts of lines embedded in
can be defined as a mapping from one-dimensional intervals to the plane. The two endpoints of an interval constitute its boundary. An interval that is inside another one and that does not connect with its endpoints is a non-tangential proper part. This enables the definition of RCC*-9 relations that apply to all kinds of spatial features.
Therefore, we must impose constraints on the dimensions of boundaries. Let us start with the definition of the
relation. We use the
relation similarly to how it was defined in [
41]. The
relation between two features
x and
y indicates that the dimension of
x is less than or equal to the dimension of
y. We also consider the corresponding strict order relation
and the equality relation
. If we indicate with
the whole domain of spatial features, the
relation obeys the total order axioms:
The
relation is also a finite order with a minimum of 0 and a maximum of 3. We also define an
immediately smaller dimension relation (
) that applies to features of two consecutive dimensions in the total order. The
relation obeys the following axiom:
Analogously to RCC-8, the definitions of RCC*-9 start from a primitive relation
connected between two features
. The relation
is based on a general notion of connectedness that is independent of the dimension of the features involved. We can affirm that the relation is true if the two features share a common part of any dimension. The
relation enjoys two axioms:
In [
34], a second primitive is also introduced, that of parthood, since it is noted that connection and parthood are in general independent notions. Hereafter, we stick to the RCC-8 approach where the part relation is defined in terms of the
relation. So, the
part relation
between
x and
y is defined by saying that the connection of
x with any feature
z implies a connection between
z and
y:
Definition 21. .
The relations
and
can be further axiomatized. The connection between two features implies the existence of a part relation between a component of the two features and the features themselves. Further, regarding dimension, the dimension of a component is always of a lesser or equal dimension with respect to the feature:
Using the primitive relation, other relations are constructed. The disconnected relation is defined as follows:
Definition 22. .
The proper part relation eliminates the possibility of the two features being equal:
Definition 23. .
The equals relation is defined as follows:
Definition 24. .
For the
relation, it follows that
x and
y must be of the same dimension:
In RCC-8, the previous definitions sufficed to define the remaining relations of the calculus, such as the overlap relation
and the externally connected relation
. Extending the universe of discourse to features of various dimensions, RCC*-9 needs the introduction of the notion of boundary as a particular kind of parthood. The boundary relation
is true when the boundary of feature
y is feature
x. The
relation is a
relation, and the dimension of
x is the immediate smaller dimension of
y:
The boundary relation links a feature y with its boundary x. Since is a binary predicate in RCC*-9 rather than a functor, if y is a closed ring and and thus has an empty boundary, it means that there is no individual x for which holds. Similarly, can never hold when y is a point. For a line y, x is the set of its endpoints. If y is a simple region, then the closed line x represents y’s boundary. If y is a simple body, its boundary is a surface, that is, a 2D feature embedded in . If y is a complex body, its boundary is a complex 2D feature made up of several components. If y is a complex region (holed or multipiece), then x is a complex line. If y is a complex line, its boundary is a complex point.
Using the boundary relation, it is possible to define the
non-tangential proper part relation, where
x is a proper part of
y and does not touch
y’s boundary.
Figure 2 illustrates the definition.
Definition 25. .
Next, we give the revised definition for the
tangential proper part relation. See
Figure 3 for illustrations.
Definition 26. .
Since the parthood relations are asymmetric, they have inverses, which are defined next:
Definition 27. .
Definition 28. .
Definition 29. .
Definition 30. .
We now discuss the RCC*-9
overlap relation, which is more restrictive than the corresponding RCC-8 definition. In [
35], it was defined as
. This definition of
overlap requires there to be both a common non-tangential proper part belonging to the two features and also a common tangential proper part. Unfortunately, the above definition contained an error discovered by [
40]. The error was that the definition did not hold for all specializations of
: in fact, for the relation
, the definition was not true. Izadi et al. [
40] proposed to use the same definition for modeling the
partial overlap relation
instead. This correction would produce another undesirable consequence that the basic set of relations of the calculus RCC*-9 would not be
: in fact, the
relation would not be pairwise disjoint from the
and
relations. Therefore, we propose the following definition for the
relation:
Definition 31. .
The second part of the definition is not necessary for regions, but is necessary for lines (see
Figure 4); otherwise, certain cases of cross (see later on) would be regarded as overlap. Moreover,
relations must be excluded.
Consequently, the relation can be constructed as the subsumption of its specializations:
Definition 32. .
Given that our domain of features contains not only regions but also entities of other dimensions, the notion of connectedness, besides overlap, needs to cover both the externally connected and cross relations. First, we define the externally connected relation (which differs from the standard RCC definition):
Definition 33. .
Figure 5 illustrates the
definition for four different cases. The universal quantification of
z of all entities that are part of both
x and
y ensures that
z is a
of either
x or
y. In
Figure 5b, when
x is a line and
y is a region, then the common part
z is a
of
y. Similarly, in
Figure 5c the common part
z is a
of
y.
Finally, we define the
cross relation
, which is a kind of connectedness different from
and
(see
Figure 6):
Definition 34. .
In order to ensure that all the relations present in the original RCC calculi are also defined in RCC*-9, we define a relation (discrete):
Definition 35. .
The nine relations , and are and comprise RCC*-9’s set of base relations.
4. Demonstration That RCC*-9 Is JEPD
In this section, we take an experimental approach to check whether the set of relations of RCC*-9 is a JEPD set of relations. The experimental approach was proposed in [
36], where properties of a qualitative spatial calculus were assessed by running experiments with datasets of random spatial features. The approach does not constitute a formal proof, but it has the advantage of explicitly giving instances of spatial configurations that fall in a given relation by analyzing specific categories based on dimension, such as region/region, region/line, and body/region relations, and based on simple or complex feature types, such as simple and complex lines. These experiments show whether any spatial configuration falls into more than one relation (a pairwise disjoint part) or outside the set of relations (a jointly exhaustive part). Further, we can gain an appreciation of the percentages of configurations falling into each of the nine relations. For instance, these statistics have been used in the past for query optimization by using the information on whether a given relation frequently happens or is quite rare [
42].
4.1. The Case of Lines and Regions in 2D
To start with, we consider a random set of simple features embedded in
(lines and regions only) to check the JEPD property. The random sets have been constructed to avoid specific biases, e.g., by considering various orientations on line segments. More details on how the random datasets have been constructed can be found in
Section 6. In
Figure 7a, we show an example of a randomly generated set of 100 simple regions and 100 simple lines.
Experiment 1. We considered a set of 100 simple polygons that are obtained by translating and zooming an original polygon (we took a trapezoid). Then, we considered a set of 100 simple lines that are obtained similarly by translating and zooming an original polyline, made up of four segments that are variously oriented: vertically, horizontally, and diagonally. Then, we calculated the 100 × 100 relations between the polygons in the set, the 100 × 100 relations between the lines, and the polygon–line and line–polygon relations for a total of 40,000 relations. We repeated the random generation of features 25 times, totaling 1,000,000 relations. The experiment shows that there were no calculated relations outside the base set (jointly exhaustive set) and that each computation of a relation gave a different result (pairwise disjoint set). In Figure 7b, we show the percentages of the obtained relations. We can see from Experiment 1 that the way simple features were generated does not produce a uniform distribution of relations. In fact, when randomly translating and zooming shapes, it is very rare to obtain the relations that involve a connection on the boundary (i.e., EC, TPP and TPPi). The relation EQ has a frequency of because relations of features with themselves are calculated. Also, containment relations (i.e., NTPP and NTPPi) are not common in this dataset since generated features have a similar extent. The majority of relations are either DC (), a CR (), or PO ().
To obtain more uniform distributions, in other experiments we added regions and lines with a more regular pattern. Instead of randomly translating and zooming features in the plane, we considered shapes that are translated by a fixed length and are zoomed by an integer magnification factor: in this way, relations such as EC, TPP and TPPi are more likely to be verified. We performed experiments by distinguishing specific categories of non-simple features.
Experiment 2. Complex regions. We considered a combination of complex regions with holes and disconnected components with more regular shapes (squares) randomly distributed. With 200 regions, for each random generation we calculated 200 × 200 relations. See Figure 8a for an example of random generation. We repeated the random generation of complex regions 25 times, totaling 1,000,000 relations. Also, in this experiment the JEPD property of RCC*-9 was confirmed. In Figure 8b, we show the percentages of obtained relations. The obtained distribution of relations in Experiment 2 with respect to Experiment 1 shows an increase in the number of EC, NTPP, TPP, NTPPi, and TPPi relations. The case of CR between regions is quite rare (
) and corresponds to the configuration illustrated in
Figure 6c.
Regarding region/region and region/line relations for complex features, we performed a third experiment by taking into consideration complex lines with self-intersections and disconnected components.
Experiment 3. Complex lines and regions. In this experiment, we considered a random distribution of 100 complex lines and 100 complex regions (see Figure 9a), calculating the 200 × 200 relations among them. Again, in this case we repeated the random generation of scenarios 25 times, totaling 1,000,000 relations. In Figure 9b, we show the percentages of the obtained relations. Overall, from the three experiments, 1, 2 and 3, we can empirically affirm that the base relations of RCC*-9 are a JEPD set for any combination of simple and non-simple features in the plane.
4.2. The Case of Points in 2D
The case of points requires special attention since the boundary of a point is empty: a point coincides with its interior. In Clementini and Cohn [
35], the case of points was not treated. For two simple points, the only possible relations between them are DC and EQ. The case of multipoints is more interesting. The relation between two multipoints can only be one of DC, NTPP, NTPPi, EQ, or CR. Informally, this can be explained by noticing that any relation that “needs” a boundary for its realization cannot hold between two multipoints. By applying the definition of RCC*-9 relations, it can be formally seen that only these six relations are realizable.
For cases of a multipoint/simple region or multipoint/complex region, any of the relations in the set (DC, EC, NTPP, TPP, CR) can hold. The same applies to relations between multipoints and simple lines or complex lines.
Experiment 4. Multipoints. We considered a random distribution of 100 multipoints versus a random distribution of complex features made up of 100 complex regions, 100 complex lines, and 100 multipoints. Then, we calculated the relations between each multipoint and each complex feature. Repeating the random generation 30 times, we obtained the results in Figure 10. Notice that in this experiment we considered relations where the first term can be a multipoint only and the second term can be any feature. Therefore, some of the inverse relations never appear. The NTPPi relation (0.17%) and EQ relation (0.33%) come from cases of multipoint/multipoint relations. The TPPi relation does not appear, as it would only come from the inverse of multipoint/region or multipoint/line cases, but these are not included in the experiment as they are implied by the non-inverse case. In conclusion, the only relation that can never appear in cases involving multipoints is the PO relation since this requires the entities to have tangential proper parts, which multipoints do not.
4.3. The Case of 3D Features
While the experiments with 2D features could be run by adopting a mapping from RCC*-9 relations to the DE+9IM relations of the OGC standard (see
Section 6), there is no available implementation of DE+9IM relations for 3D features. Most 3D models represent 3D bodies as derived entities, based on the construction of the surfaces that limit the volumes. There are few models that directly represent the interior of bodies in a topological sense. We would need a topological model of 3D bodies to be able to run experiments to check RCC*-9 relations. Hence, we restrict our attention to a set of simplified features. The Geometry3D library (
https://pypi.org/project/Geometry3D/, accessed on 10 November 2023) defines a few classes in 3D space (e.g., convex polyhedron, convex polygon, segment, and point) and some geometric operators, among which are the “intersection” operator, which is able to find the intersection of any two features of the available classes, and the “in” operator, which is able to assess if a feature of a lesser dimension is fully included in a feature of a larger dimension. The fact that the available features are restricted to convex shapes, such as convex polyhedrons, convex polygons, and segments, implies that the result of intersection is again a feature of the same set of shapes. Therefore, the computation is simplified. The use of such a library allows us to give a proof of concept that RCC*-9 relations are valid in 3D space. See
Figure 11 for a visualization of some 3D RCC*-9 relations.
To be able to implement RCC*-9 relations in the above simplified 3D model, we need a topological interpretation that reinterprets
Section 3 definitions in terms of set intersection (∩) and set containment (⊆). Therefore, we consider the following equivalences involving RCC*-9 relations:
Equivalence 1. .
Proof. (⇐) If is non-empty, it means that there exists a common part. By definition, follows. (⇒) By definition of , there exists a common part between x and y; therefore, . □
Equivalence 2. .
Equivalence 3. .
Proof. (⇐) If , . follows. (⇒) If , . This implies . □
Equivalence 4. .
Equivalence 5. .
Equivalence 6. .
Equivalence 7. .
Equivalence 8. .
Proof. (⇐) The existence of the boundary of a feature y implies the relation . Therefore, . (⇒) If , . The relation implies the existence of disconnected from x. □
Equivalence 9. .
Equivalence 10. .
Equivalence 11. .
Equivalence 12. .
Proof. (⇐) If is part of , it means that . Since is the common part of both x and y, it can be inferred that . Since is part of , we can infer . Analogously, from , we can infer . Finally, since and , we can exclude . Therefore, . (⇒) From Definition 33, . The part is equivalent to . The proposition means that z is part of both x and y; hence, it must be . Given and , it follows that must be part of the boundaries of x and y; therefore, . From that, the equivalence is proved. □
Equivalence 13. .
Proof. (⇐) It is sufficient to show that . By definition of , there must exist a set t such that . If for the intersection , holds, it means that a set t cannot exist. Therefore, . (⇒) From , there do not exist a common non-tangential proper part and a common tangential proper part of x and y. Therefore, it can be that the intersection is either or . From that, the equivalence is proved. □
Equivalence 14. .
Equivalence 15. .
Unless the proofs are trivial, we have included proofs of the above equivalences. Moreover, we double-checked this topological interpretation of RCC*-9 by re-running some of the 2D experiments with these new definitions.
Experiment 5. Polyhedrons. We considered a random distribution of 30 simple polyhedrons (actually, parallelepipeds—see Figure 12a) and we calculated the relations between them. Even with a smaller number of features in the experiment compared to the previous experiments, the results of the experiments are encouraging and show evidence that the RCC*-9 relations for 3D polyhedrons are JEPD. The percentages of the obtained relations are shown in Figure 12b. However, even with this simple dataset, the computation time was long (several minutes on an Intel Core i7-10875H CPU 2.30 GHz). Therefore, we could not repeat the experiment with millions of relations as we did in the experiments with 2D features. The long running time is due to the fact that the Geometry3D library is not optimized from the efficiency point of view. In any case, the experiment can be an indication that the approach can be adopted for 3D features as well. As expected, all the realized relations are indeed of the RCC*-9 set. The CR was, however, never instantiated since it never holds between simple features of the same dimension as the embedding space.
Experiment 6. Three-dimensional features. We considered a random distribution of 24 simple polyhedrons, 8 convex polygons, and 8 segments (see Figure 13a), and we calculated the relations between them. The percentages of obtained relations are shown in Figure 13b. In this experiment, we combined simple polyhedrons with other features of smaller dimensions (polygons and segments) embedded in 3D. The experiment indicates that all RCC*-9 relations are realizable and they are JEPD, as there were no cases when none of the nine relations held and there were no cases where more than one relation held.