Results 1 -
3 of
3
Semantic database modeling: Survey, applications, and research issues
- ACM Computing Surveys
, 1987
"... Most common database management systems represent information in a simple record-based format. Semantic modeling provides richer data structuring capabilities for database applications. In particular, research in this area has articulated a number of constructs that provide mechanisms for representi ..."
Abstract
-
Cited by 209 (3 self)
- Add to MetaCart
Most common database management systems represent information in a simple record-based format. Semantic modeling provides richer data structuring capabilities for database applications. In particular, research in this area has articulated a number of constructs that provide mechanisms for representing structurally complex interrelations among data typically arising in commercial applications. In general terms, semantic modeling complements work on knowledge representation (in artificial intelligence) and on the new generation of database models based on the object-oriented paradigm of programming languages. This paper presents an in-depth discussion of semantic data modeling. It reviews the philosophical motivations of semantic models, including the need for high-level modeling abstractions and the reduction of semantic overloading of data type constructors. It then provides a tutorial introduction to the primary components of semantic models, which are the explicit representation of objects, attributes of and relationships among objects, type constructors for building complex types, ISA relationships, and derived schema components. Next, a survey of the prominent semantic models in the literature is presented. Further, since a broad area of research has developed around semantic modeling, a number of related topics based on these models are discussed, including data languages, graphical interfaces, theoretical investigations, and physical implementation strategies.
A Denotational Semantics of Inheritance
, 1989
"... This thesis develops a semantic model of inheritance and investigates its applications for the analysis and design of programming languages. Inheritance is a mechanism for incremental programming in the presence of self-reference. This interpretation of inheritance is formalized using traditional te ..."
Abstract
-
Cited by 136 (6 self)
- Add to MetaCart
This thesis develops a semantic model of inheritance and investigates its applications for the analysis and design of programming languages. Inheritance is a mechanism for incremental programming in the presence of self-reference. This interpretation of inheritance is formalized using traditional techniques of fixed-point theory, resulting in a compositional model of inheritance that is directly applicable to object-oriented languages. Novel applications of inheritance revealed by the model are illustrated to show that inheritance has wider significance beyond object-oriented class inheritance. Constraints induced by self-reference and inheritance are investigated using type theory and yield a formal characterization of abstract classes and a demonstration that the subtype relation is a direct consequence of the basic mechanism of inheritance. The model is proven equivalent to the operational semantics of inheritance embodied by the interpreters of object-oriented languages like Smalltalk. Concise descriptions of inheritance behavior in several object-oriented languages, including Smalltalk, Beta, Simula, and Flavors, are presented in a common framework that facilitates direct comparison of their features.
Persistent Programming Languages: The Best of Both Worlds
"... The integration of databases and programming langauges is being motivated from two directions. The database community requires a more flexible and powerful way of modeling the world, whereas the programming language community wants the convenience of a reliable, efficient means of enabling entities ..."
Abstract
- Add to MetaCart
The integration of databases and programming langauges is being motivated from two directions. The database community requires a more flexible and powerful way of modeling the world, whereas the programming language community wants the convenience of a reliable, efficient means of enabling entities to persist between program invocations. Traditionally, the query facilities provided to database users are not computationally complete, precluding arbitrarily complex processing of data. Furthermore, they support only primitive data types, making them inappropriate for modeling certain real world applications. Processing must be done off-line in a host language, but translation between the database and the language results in an impedence mismatch problem. One solution is to extend an existing programming language with the notion of persistence, enabling it to seamlessly interact with the storage manager. This paper is a survey of such efforts and the issues involved, focusing primarily on ...

