PostGIS originally implemented only the Simple Features model for storing vector data. In this model, every feature is a distinct entity, and any topological relationships between them aren't explicitly stored in a database. For some use cases, this data model is not a good fit. Two notable examples include boundary data and network data. In boundary data, shared lines between adjacent features aren't really shared: the features are stored as separate polygons and the same set of vertices is stored twice. In network data, the database doesn't store any information about shared nodes. This makes spatial analysis harder (relationships have to be checked on a vertex-by-vertex basis, which is time-consuming). Even worse, editing or simplification of data can lead to inconsistencies, including gaps between contiguous polygons, overlapping polygons, or disconnected lines.
To address these issues, a topology model for PostGIS has been introduced. In a topological model...