|
Foundations of Object-Relational Mapping
v0.2 [mlf-970703]
Overview
This document describes general concepts needed for object-relational mapping. It can serve as an introduction to the issues involved in doing object-relational mapping in general and can provide the foundation for understanding a framework that tries to support that mapping.
The document starts by describing object modeling and relational modeling. It then covers how to integrate objects into the relational model followed by how to implement that integration with current database systems. Next the issues for client-server objects are covered independently from the whole mapping problem. This leads to the conclusion, which finishes the preparation for analyzing specific object-relational approaches by reviewing the topics and describing object-relational approaches.
Introduction
Object-relational mapping is the process of transforming between object and relational modeling approaches and between the systems that support those approaches. Doing a good job at object-relational mapping requires a solid understanding of object modeling and relational modeling, how they are similar, and how they are different. Ideally we should have a single integrated model that described both approaches. This would make sure we understand and explicitly document both concepts and their relationships. This document will present what we believe to be the only correct integration of the two worlds that is suitable for implementation on a relational database.
Difficulties occur when we have to deal with the real systems implementing object and relational models. These systems have implementations that are deficient or inconsistent with the theoretical approaches. Relational databases have been deficient for multiple decades in correctly implementing the core concepts of relational theory. On the other hand, object modeling is not standardized, so each programming environment implements its own variation. Because of these deficiencies object-relational mapping is more complicated than it needs to be.
Fortunately, object modeling and relational modeling have such different concerns that they are actually extremely compatible. Relational theory is concerned with knowledge and object techniques are concerned with (primarily) behavior. Mapping between the two models requires deciding how the two worlds can refer to each other. We will first describe the two worlds in more detail and then show how they can be integrated.
Table of Contents
Other Versions
|