1.1. Un sistema de BDOO provee una identidad única a cada objeto independiente almacenado en la base de datos. Esta identidad única suele implementarse con un identificador de objeto único, generado por el sistema, u OID. El valor de un OID no es visible para el usuario externo, sino que el sistema lo utiliza a nivel interno para identificar cada objeto de manera única y para crear y manejar las referencias entre objetos.
2. Constructores de tipos
2.1. En las BDOO, los valores (o estados) de los objetos complejos se pueden construir a partir de otros objetos mediante ciertos constructores de tipos. Una forma de representar tales objetos es considerar a cada objeto como tripleta (i, c, v), donde i es un identificador de objeto único (el OID), c es un constructor (esto es, una indicación de cómo se construye el valor del objeto) y v es el valor (o estado) del objeto. Puede haber varios constructores, según el modelo de datos y el sistema OO.
2.2. Los tres constructores básicos son:
2.3. constructores de átomos.
2.4. constructores de tuplas.
2.5. constructores de conjuntos.
3. Encapsulamiento
3.1. Tanto la estructura de los objetos como las operaciones que se pueden aplicar a ellos se incluyen en las definiciones de clases de los objetos.
4. Compatibilidad con los lenguajes de programación
4.1. Si se sigue el enfoque cuando se utilizan los diagramas de Entidad-Relación para modelar los datos y luego se convierten de manera manual en un conjunto de relaciones; por lo tanto los conceptos de la Programación Orientada a Objetos se utilizan simplemente como herramientas de diseño y se codifican, utilizándose para trabajar con una base de datos.
5. Jerarquías de tipos y herencia
5.1. Para permitir la representación directa de parecidos entre las clases, hay que ubicarlas en una jerarquía de especializaciones. El concepto de jerarquía de clases es parecido al de especialización del modelo E-R. Las especializaciones de las clases son denominadas subclases; lo cual especifica atributos y métodos adicionales para una clase existente. Los objetos creados por medio de unas subclases heredan todos los atributos y métodos de la clase padre. Algunas de estas características heredadas pueden ellas mismas haber sido heredadas de clases más altas en la jerarquía
6. Manejo de objetos complejos
6.1. Los objetos se consideran complejos porque requieren un área de almacenamiento sustancial y no forman parte de los tipos de datos estándar que suelen ofrecer los SGBD. Puesto que el tamaño de los objetos es considerable, un SGBD podría obtener una porción del objeto y proporcionarla al programa de aplicación antes de obtener todo el objeto. El SGBD podría también usar técnicas de almacenamiento intermedio y caché para obtener por anticipado porciones del objeto, antes de que el programa de aplicación necesite tener acceso a ellas.
7. Polimorfismo y sobrecarga de operadores
7.1. El polimorfismo se refiere al uso de la misma firma de mensaje para dirigir diferentes métodos en diferentes clases. Cuando el diseñador envía una señal a un objeto, el método de la clase de objeto, posiblemente heredado, procesa la señal. Un método puede tener acceso directamente a atributos de un objeto destino por no nombre, al incluir cualesquiera atributos heredados de clases padres, pero debe tener acceso a atributos de otros objetos con señales secundarias.
8. Creación de versiones
8.1. Muchas aplicaciones de bases de datos que usan sistemas OO requieren la existencia de varias versiones del mismo objeto. Por lo regular, se aplican actividades de mantenimiento a un sistema de software conforme sus requerimientos evolucionan. Por lo regular, el mantenimiento implica modificar algunos de los módulos de diseño y de implementación. Si el sistema ya está en operación, y si es preciso modificar uno o más módulos, el diseñador deberá crear una nueva versión de cada uno de ellos para efectuar cambios.