Semantics of types for database objects
This paper proposes a denotational semantics of types for database objects. A simple typed language to represent database objects is defined and its denotational semantics is given. In this language, sets are first-class values and a join and a projection are available as typed operations on general data structures including sets.
For database objects, individual types correspond to partially ordered sets, which we shall call description domains. In order to type-check expressions involving joins and projections, an ordering is defined on the set of types in the language. This ordering is interpreted as a relation on description domains induced by embedding-projection pairs. A semantic space of types is then defined as a set of description domains partially ordered by that relation.
The type system is shown to be sound and complete with respect to the semantics. It is also shown that the semantic space of types for database objects can be embedded in a semantic domain of an ML-like programming language. This guarantees that the type system for database objects can be safely integrated in a type system of an ML-like strongly typed programming language.
KeywordsProgramming Language Type System Semantic Model Semantic Space Semantic Mapping
Unable to display preview. Download preview PDF.
- [AH86]S. Abiteboul and R. Hull. Restructuring of Complex Objects and Office Forms. In Proc. International Conference on Database Theory, Lecture Notes in Computer Science 243, Springer-Verlag, Rome, Italy, September 1986.Google Scholar
- [BK86]F. Bancilhon and S. Khoshafin. A Calsulus for Complex Objects. In Proc. ACM Conference on Principles of Database Systems, 1986.Google Scholar
- [BO88]P. Buneman and A. Ohori. Using Powerdomains to Generalize Relational Databases. Theoreical Computer Science, To Appear, 1988. Available as a technical report from Department of Computer and Information Science, University of Pennsylvania.Google Scholar
- [BW86]K. B. Bruce and P. Wegner. An Algebraic Model of Subtypes in Object-Oriented Languages. SIGPLAN Notices, 21(10):163–172, October 1986.Google Scholar
- [Car84a]L. Cardelli. A Semantics of Multiple Inheritance. In Semantics of Data Types, Lecture Notes in Computer Science 173, Springer-Verlag, 1984.Google Scholar
- [Car84b]L. Cardelli. Amber. Technical Memorandum TM 11271-840924-10, AT&T Bell Laboratories, 1984.Google Scholar
- [FT83]P.C. Fischer and S.J. Thomas. Operators for Non-First-Normal-Form Relations. In Proc. IEEE COMPSAC, 1983.Google Scholar
- [GHK*80]G. Gierz, H.K. Hofmann, K. Keimel, J.D. Lawson, M. Mislove, and D.S. Scott. A Compendium of Continuous Lattices. Springer-Verlag, 1980.Google Scholar
- [HMM86]R. Harper, D. B. MacQueen, and R. Milner. Standard ML. LFCS Report Series ECS-LFCS-86-2, Department of Computer Science, University of Edinburgh, March 1986.Google Scholar
- [OB88]A. Ohori and P. Buneman. Type Inference in a Database Programming Language. In Proc. ACM Conference on LISP and Functional Programming, Snowbird, Utah, July 1988.Google Scholar
- [OY85]Z. Özsoyoğglu and L. Yuan. A Normal Form for Nested Relations. In Proceedings of the ACM SIGACT-SIGMOD Symposium on Principles of Database Systems, pages 251–260, Portland, March 1985.Google Scholar
- [RKS84]A.M. Roth, H.F. Korth, and A. Silberschatz. Extended Algebra and Calculus for — 1NF Relational Databases. Technical Report TR-84-36, Department of Computer Sciences, The University of Texas at Austin, 1984. revised 1985.Google Scholar
- [Sch86]D.A. Schmidt. Denotational Semantics, A Methodology for Language Development. Allyn and Bacon, 1986.Google Scholar
- [Sco72]D. Scott. Continuous Lattices. In Toposes, Algebraic Geometry and Logic, Lecture Notes in Mathematics, pages 97–136, Springer-Verlag, 1972.Google Scholar
- [Zan84]C. Zaniolo. Database Relation with Null Values. Journal of Computer and System Sciences, 28(1):142–166, 1984.Google Scholar