This paper proposes that database systems should be accessible through interface s which allow user-define data types, similar to the facilities provided in many of the newer programming languages. Such a facility, an abstract type system, is described here.
A type system is defined as a collection of domains and operations on the object s in those domains. A type system is similar to a set of abstract data types, e xcept in a type system there is no specific association of operations with domai ns.
The authors propose a type system containing the built-in domains (BOOLEAN, CHAR ACTER, INTEGER, REAL, RELATION, RECORD, SEQUENCE, and ARRAY) and permitting the user-definition of other domains as well as the operations on the elements of th ose domains. Provision is made for parameterized domains, and data structuring is achieved through parameterization. Thus, a record is a parameterized domain whose parameters include the names of the attributes (of any type) comprising th e record.
The bulk of the paper is devoted to the description of a prototype implementatio n of the proposed type system on a relational database system. Specifically, the authors describe in detail the catalog for the prototype, i.e., the tables (relations) containing the definition of both built-in and user-defined domains and operations. Short descriptions of the operations provided for maintaining t he catalog and of the method of representing domain values in a relational datab ase are given. The paper ends with a discussion of the performance of the imple mentation relative to that of the underlying database system. The paper is well -written and will be of value to prospective implementors of abstract type syste ms, database systems, and dictionay systems.