•
Object Model. This was based on the
Object Management Group's Object Model. The OMG core model was designed to be a common denominator for object request brokers, object database systems, object programming languages, etc. The ODMG designed a profile by adding components to the OMG core object model. •
Object Specification Languages. The ODMG Object Definition Language (ODL) was used to define the object types that conform to the ODMG Object Model. The ODMG Object Interchange Format (OIF) was used to dump and load the current state to or from a file or set of files. •
Object Query Language (OQL). The ODMG
OQL was a declarative (nonprocedural) language for query and updating. It used
SQL as a basis, where possible, though OQL supports more powerful object-oriented capabilities. •
C++ Language Binding. This defined a
C++ binding of the ODMG ODL and a C++ Object Manipulation Language (OML). The C++ ODL was expressed as a library that provides classes and functions to implement the concepts defined in the ODMG Object Model. The C++ OML syntax and semantics are those of standard C++ in the context of the standard class library. The C++ binding also provided a mechanism to invoke OQL. •
Smalltalk Language Binding. This defined the mapping between the ODMG ODL and
Smalltalk, which was based on the OMG Smalltalk binding for the OMG Interface Definition Language (IDL). The Smalltalk binding also provided a mechanism to invoke OQL. •
Java Language Binding. This defined the binding between the ODMG ODL and the
Java programming language as defined by the Java 2 Platform. The Java binding also provided a mechanism to invoke OQL. == Status ==