TY - JOUR
T1 - Subtyping in OODBs
AU - Beeri, Catriel
AU - Milo, Tova
PY - 1995/10
Y1 - 1995/10
N2 - One of the central concepts supported by object-oriented databases is isa relationship. Its intuitive simplicity is deceptive. In reality, this term denotes several concepts, such as subtyping, subset relationships, and inheritance of structure and/or behavior. Each of these is non-trivial, and their interaction may be quite subtle. This paper deals with subtyping and its properties, in the context of a model that allows arbitrary data types and type constructors (but no function constructor). For simplicity a model based on the algebraic specification approach is used, which partially explains the inability to deal with the function constructor. Two intuitive ideas about subtyping are generalized and investigated: first, that the set of elements associated with a subtype is a subset of the set associated with supertype, and second, that each element of the subtype may be used in any place where an element of the supertype is expected. A generalized subtyping relation among abstract data types is defined, and its properties are investigated. In particular, it is shown that often there exist many possible subtyping relations among two types and that testing for some desirable properties, such as correctness, is in general undecidable. The notion of natural subtyping relation (that is related to parametric abstract data types) is introduced and shown to have a simple correctness proof. The paper concludes with a generalized type checking algorithm.
AB - One of the central concepts supported by object-oriented databases is isa relationship. Its intuitive simplicity is deceptive. In reality, this term denotes several concepts, such as subtyping, subset relationships, and inheritance of structure and/or behavior. Each of these is non-trivial, and their interaction may be quite subtle. This paper deals with subtyping and its properties, in the context of a model that allows arbitrary data types and type constructors (but no function constructor). For simplicity a model based on the algebraic specification approach is used, which partially explains the inability to deal with the function constructor. Two intuitive ideas about subtyping are generalized and investigated: first, that the set of elements associated with a subtype is a subset of the set associated with supertype, and second, that each element of the subtype may be used in any place where an element of the supertype is expected. A generalized subtyping relation among abstract data types is defined, and its properties are investigated. In particular, it is shown that often there exist many possible subtyping relations among two types and that testing for some desirable properties, such as correctness, is in general undecidable. The notion of natural subtyping relation (that is related to parametric abstract data types) is introduced and shown to have a simple correctness proof. The paper concludes with a generalized type checking algorithm.
UR - http://www.scopus.com/inward/record.url?scp=0029394368&partnerID=8YFLogxK
U2 - 10.1006/jcss.1995.1063
DO - 10.1006/jcss.1995.1063
M3 - ???researchoutput.researchoutputtypes.contributiontojournal.article???
AN - SCOPUS:0029394368
SN - 0022-0000
VL - 51
SP - 223
EP - 243
JO - Journal of Computer and System Sciences
JF - Journal of Computer and System Sciences
IS - 2
ER -