Uniquely reporting spatial objects: yet another operation for comparing spatial data structures

Many spatial data structures (e.g., the quadtree, the cell tree, the R-tree) represent an object by partitioning it into more than one piece, each of which is stored separately inside the data structure. Frequently, it is required to report the objects stored in a particular subset (spatially defined) of the database. It can be achieved by a simple traversal of the spatial data structure. This may result in reporting each object as many times as the number of partitions of this object inside the data structure. An operation, termed Report Unique, is defined which reports each object in the data structure just once, irrespective of the multiplicity of the partitions of the object. Example algorithms are presented to perform Report Unique for a quadtree. A classification of spatial objects is also presented and it is shown to affect the complexity of performing the Report Unique operation.