Topological constraints deal with basic topological relationships like connectivity, adjacency and containment, which
should be maintained when generalizing data. Self-intersection and overlapping patches are also issues related to topology.
Since a data model using shared primitives is used by definition, overlapping patches do not exist and cannot be
introduced with generalization. However, self-intersecting boundaries or intersections between different boundaries can
occur as a result of erroneous line generalization algorithms.