Region connection calculus


The region connection calculus is intended to serve for qualitative spatial representation and reasoning. RCC abstractly describes regions by their possible relations to each other. RCC8 consists of 8 basic relations that are possible between two regions:
  • disconnected
  • externally connected
  • equal
  • partially overlapping
  • tangential proper part
  • tangential proper part inverse
  • non-tangential proper part
  • non-tangential proper part inverse
From these basic relations, combinations can be built. For example, proper part is the union of TPP and NTPP.
Image:RCC8.jpg

Axioms

RCC is governed by two axioms.
  • for any region x, x connects with itself
  • for any region x, y, if x connects with y, y connects with x

Remark on the axioms

The two axioms describe two features of the connection relation, but not the characteristic feature of the connect relation. For example, we can say that an object is less than 10 meters away from itself and that if object A is less than 10 meters away from object B, object B will be less than 10 meters away from object A. So, the relation 'less-than-10-meters' also satisfies the above two axioms, but does not talk about the connection relation in the intended sense of RCC.

Composition table

The composition table of RCC8 are as follows:
R2
----R1
DCECPOTPPNTPPTPPiNTPPiEQ
DC*DC, EC, PO, TPP, NTPPDC, EC, PO, TPP, NTPPDC, EC, PO, TPP, NTPPDC, EC, PO, TPP, NTPPDCDCDC
ECDC, EC, PO, TPPi, NTPPiDC, EC, PO, TPP, TPPi, EQDC, EC, PO, TPP, NTPPEC, PO, TPP, NTPPPO, TPP, NTPPDC, ECDCEC
PODC, EC, PO, TPPi, NTPPiDC, EC, PO, TPPi, NTPPi*PO, TPP, NTPPPO, TPP, NTPPDC, EC, PO, TPPi, NTPPiDC, EC, PO, TPPi, NTPPiPO
TPPDCDC, ECDC, EC, PO, TPP, NTPPTPP, NTPPNTPPDC, EC, PO, TPP, TPPi, EQDC, EC, PO, TPPi, NTPPiTPP
NTPPDCDCDC, EC, PO, TPP, NTPPNTPPNTPPDC, EC, PO, TPP, NTPP*NTPP
TPPiDC, EC, PO, TPPi, NTPPiEC, PO, TPPi, NTPPiPO, TPPi, NTPPiPO, TPP, TPPi, EQPO, TPP, NTPPTPPi, NTPPiNTPPiTPPi
NTPPiDC, EC, PO, TPPi, NTPPiPO, TPPi, NTPPiPO, TPPi, NTPPiPO, TPPi, NTPPiPO, TPP, NTPP, TPPi, NTPPi, EQNTPPiNTPPiNTPPi
EQDCECPOTPPNTPPTPPiNTPPiEQ

Usage example: if a TPP b and b EC c, of the table says that a DC c or a EC c.

Examples

The RCC8 calculus is intended for reasoning about spatial configurations. Consider the following example: two houses are connected via a road. Each house is located on an own property. The first house possibly touches the boundary of the property; the second one surely does not. What can we infer about the relation of the second property to the road?
The spatial configuration can be formalized in RCC8 as the following constraint network:
house1 DC house2
house1 property1
house1 property2
house1 EC road
house2 property1
house2 NTPP property2
house2 EC road
property1 property2
road property1
road property2
Using the RCC8 composition table and the path-consistency algorithm, we can refine the network in the following way:
road property1
road property2
That is, the road either overlaps property2, or is a tangential proper part of it. But, if the road is a tangential proper part of property2, then the road can only be externally connected to property1. That is, road PO property1 is not possible when road TPP property2. This fact is not obvious, but can be deduced once we examine the consistent "singleton-labelings" of the constraint network. The following paragraph briefly describes singleton-labelings.
First, we note that the path-consistency algorithm will also reduce the possible properties between house2 and property1 from to just DC. So, the path-consistency algorithm leaves multiple possible constraints on 5 of the edges in the constraint network. Since each of the multiple constraints involves 2 constraints, we can reduce the network to 32 possible unique constraint networks, each containing only single labels on each edge. However, of the 32 possible singleton labelings, only 9 are consistent. Only one of the consistent singleton labelings has the edge road TPP property2 and the same labeling includes road EC property1.
Other versions of the region connection calculus include RCC5 and RCC23.

RCC8 use in GeoSPARQL

RCC8 has been partially implemented in GeoSPARQL as described below:

Implementations