has been developed as a joint project between the U. S. Naval Research Laboratory and
University of Florida. OVPF is written in ParcPlace System’s Smalltalk, running on a Sun
Sparcstation 20. Initial support for VPF data storage in a commercial object-oriented
database management system (ODBMS), ObjectStore by Object Design, Inc., has been
accomplished. The many advantages found during the development and testing of OVPF
have supported a change in direction to adopt the object-oriented paradigm in geographic
information system (GIS) applications.
The basic infrastructure of GIS includes a spatial indexing scheme, topological
relationships and structures, and structures for holding spatial and non-spatial attributes of
features. Each of these topics will be addressed in reference to the OVPF implementation.
It is outside the scope of this paper to provide a full description of object-oriented
technology. However, wherever applicable, various properties of object-oriented
technology will be discussed in context of understanding the object-oriented technology.
2. OBJECT-ORIENTED REPRESENTATION OF A FEATURE
VPF specifies a georelational framework based on a vector data model that is
suitable for large geographic databases. It is outside the scope of this paper to provide a
complete description of VPF (see DMA 1993, and Arctur 1995 for details). To summarize
VPF briefly however, it incorporates three basic types of information to define spatial
entities : non-spatial properties (attributes), geometric properties (location), and topological
properties (relationships). A hierarchical file structure is used to organize such information
in a given VPF database. The database root directory contains a number of library
subdirectories. Each library represents a specific region and scale. Subdirectories of
coverages are contained in the library directory. Each coverage represents a related group
of feature classes. The coverage director)' contains files describing its feature classes and
individual feature attributes. Another level of subdirectories is used within each coverage,
to provide all location and topology information ( spatial primitives ) organized by tile. Each
tile represents a spatial subregion within the library boundaries.
Metadata information is used at each hierarchical level (database, library, coverage,
and tile) to provide means of interpreting the data. The metadata consists primarily of ( 1) a
header at the beginning of each VPF data table containing the schema for parsing that table,
and (2) join tables for linking records among the feature, primitive and notes tables.
Therefore, a complete definition of each feature requires the metadata and the actual feature
data, both spatial and non-spatial (Chung 1995).
The key definitions and relationships for OVPF data structure are depicted in Figure
1. Figure 1 (A) shows the metadata object web. Figure 1(B) shows the feature definition