You are on page 1of 8

DISEÑO DE UN SISTEMA MANEJADOR DE BASES DE DATOS ORIENTADO A OBJETOS

NELSON JAVIER CELIS CRUZ
Ingeniero del software Universidad Francisco de Paula Santander nelsonjcelisc@yahoo.com

YELIXE MENDOZA USCATEGUI
Ingeniería del software Universidad Francisco de Paula Santander Yelixemendoza@yahoo.com

COLOMBIA
RESUMEN

COLOMBIA

El propósito de este artículo es difundir las conclusiones establecidas por los autores en el proyecto: “Diseño de un sistema manejador de base de datos orientado a objetos”. Los sistemas manejadores de bases de datos orientados a objetos aprovechan la expresividad del paradigma de la orientación a objetos para elaborar esquemas de bases de datos más robustos y completos que facilitan la construcción de software más complejo como: Aplicaciones CAD, CAM, GIS, y software de lógica descriptiva. Actualmente existen estándares y herramientas que pueden ser utilizados en la elaboración de un sistema manejador de bases de datos orientado a objetos para solucionar problemas como la persistencia de los objetos y la comunicación entre el cliente y el servidor, centrándose en el problema de diseñar e implementar un lenguaje de manipulación y definición de datos, y la transformación semántica entre el objeto y sus relaciones con otros objetos.

PALABRAS RELEVANTES
?? ?? ?? ?? ?? SMBDOO IDL OQL Persistencia Orientación a objetos

y transformen a las bases de datos relacionales en aparentes objetos perdiendo tiempo en dichos procesos. La promesa que hacen los SGBDOO es eliminar este desfase y proporcionar un SGBD que sea accesible desde múltiples lenguajes de alto nivel. ODMG [8], Object Data Management Group, representa el primer intento de estandarización de las bases de datos orientadas a objetos. Este grupo está integrado por los principales fabricantes de SGBDOO existentes en el mercado. En el año de 1990 la ODMG propone tres principios básicos para los SGBD de tercera generación (3G). Se enmarcan los siguientes principios: Principio 1: “Además de los servicios tradicionales de gestión de datos, los SGBD 3G proporcionarán gestión de objetos” Principio 2: “Los SGBD 3G deben subsumir los SGBD de segunda generación (ó relacionales)” Principio 3: “Los SGBD 3G deben ser abiertos a otros subsistemas” El estándar ODMG versión 3.0 [3][8] establece una serie de características básicas sobre la base de datos, el modelo de datos, el lenguaje de especificación de objetos y el lenguaje de consulta. En la actualidad existen distintos manejadores de bases de datos orientados a objetos, desde algunos bastante primitivos que simplemente

1

INTRODUCCIÓN

Los sistemas de gestión de bases de datos orientados a objetos (SGBDOO) heredan las funcionalidades propuestas para los sistemas de gestión de bases de datos (SGBD) más la funcionalidad de un modelo de datos orientado a objetos (MDOO) [7] como se ilustra en la figura 1. SGBDOO = SGBD + MDOO
Figura 1. Composición de un SGBDOO

De esta forma, un SGBDOO tiene características que pertenecen a los s istemas de gestión de base de datos como: persistencia, concurrencia, procesamiento de consultas ad-hoc, y características que pertenecen al modelo de datos orientado a objetos como: manejo de objetos complejos, identidad del objeto, encapsulamiento, tipos o clases, herencia, polimorfismo y sobrecarga. Al utilizar un modelo de datos orientado a objetos se hace más fácil modelar o abstraer sistemas del mundo real. En la actualidad los ingenieros de software y desarrolladores que utilizan metodologías que se apoyan en UML ocupan parte del proceso de diseño e implementación en elaborar clases que oculten

Figura 2. OA: Son los objetos específicos de cualquier aplicación de usuario final. lenguajes de consulta. La interfaz de lenguaje de datos (LD). lenguaje que permite a los usuarios del sistema realizar peticiones de recuperación de datos al SCTD. se conforma de las siguientes piezas: El sistema de control de transformación de datos (SCTD). Las interrelaciones entre los tipos son supertipo y subtipo. que son los programas de aplicación que permiten a los usuarios interactuar con el SCTD y realizar la correcta administración de las bases de datos. que persiste a lo largo del periodo de vida del objeto y que es independiente de las propiedades y comportamientos del objeto. Cada objeto tiene una identidad única distinta e independiente de cualquier otra característica. Y finalmente las herramientas de gestión de datos (HGD). entre otras [3]. El estado de un objeto es el conjunto de valores e interrelaciones de dicho objeto. El conjunto de los OIds se denota como Obj. El modelo de referencia ANSI/X3/SPARC está conformado por tres niveles o componentes que conforman un sistema manejador de base de datos (figura 2). establece la conexión con los servicios proporcionados por el sistema operativo (SO). OS: Es la colección de objetos de servicio que proveen las funciones básicas para crear y mantener objetos de cualquier categoría. Las operaciones asociadas con un objeto caracterizan su comportamiento. Cada operación tiene una firma que consiste de un nombre. En mayo de 1985 el consorcio ANSI/X3/SPARC presenta un modelo de referencia para el desarrollo de las bases de datos el cual es utilizado como marco de referencia para el estudio. Los objetos no cambian de tipo. que funciona cómo núcleo (corazón) del sistema de manejo de bases de datos. tecnología cliente / servidor. La interfaz de lenguaje de datos interno (LDi) por medio del cual el SCTD. . La identidad es constante (inmutable). FC: Es la colección de clases y objetos que proveen capacidades de propósito g eneral que son útiles en cualquier aplicación. almacenamiento de métodos en la base de datos. manejo de herencia simple. Cada objeto tiene un identificador que denota o refiere a dicho objeto (OId). que es un bus de software que permite que los objetos hagan y reciban peticiones y respuestas (figura 3). Modelo ANSI/X3/SPARC El modelo de referencia (MR).proporcionan persistencia y el manejo de algunos tipos de relaciones entre objetos hasta otros muy completos que soportan características como: capacidad de concurrencia. un conjunto de parámetros y un conjunto de resultados. Arquitectura básica CORBA 3 LD LDi SCTD SO CONCEPTOS BÁSICOS Un objeto modela cualquier entidad identificada unívocamente. Las operaciones se aplican a los objetos. La arquitectura de un sistema es la estructura conceptual que permite definirlo y especificarlo por medio de la identificación del conjunto de piezas que lo componen y cómo estas se relacionan entre sí. descripción y análisis de los sistemas manejadores de bases de datos. Los objetos se crean como instancias de los tipos. OA FC Corredor de requerimientos de objetos OS Figura 3. HGD 2 ARQUITECTURA OMG CORBA DE Una aplicación es un conjunto de clases e instancias que interactúan a través del corredor de requerimientos de objetos. y proporciona los operadores para la descripción y manipulación de datos. Un tipo caracteriza el comportamiento de sus instancias por medio del conjunto de operaciones asociadas con el tipo. El conjunto de todas las firmas de un tipo es la interfaz del tipo y ella incluye las que son heredadas de sus supertipos. Cada aplicación o servicio se modela como un objeto.

. Un objeto es una instancia directa de un tipo si ella es una instancia de ese tipo y no de los subtipos del tipo.. rm <= omega(E 1. ?? Definición de la estructura y el almacenamiento físico de los datos. El conjunto de los objetos y los noobjetos conforman todos los valores denotables. T Omega2 . Valores que no son objetos se denominan noobjetos.. . Cuando una operación es pedida. Una operación describe una acción que se puede aplicar a los parámetros. La operación Omega: omega:(X1: sigma1. Los nuevos tipos creados por las aplicaciones son subtipos del tipo Objeto. E2. La realización del SMBDOO enmarca las siguientes actividades: ?? Elaboración de un modelo de datos orientado a objetos. ?? Definición de un modelo para acceder a la base de datos orientada a objetos.. Este proceso se denomina despachar. Los tipos se organizan en jerarquía formando un digrafo acíclico. El conjunto de todas las instancias de un tipo es la extensión del tipo. se selecciona una implementación de la misma para ser ejecutada. DVal... El conjunto de los no-objetos se denomina NObj. Ym : rom ) cuando es invocada r1 . La semántica del pase de argumentos es por valor.} Especialización y generalización son relaciones entre los tipos que están basadas en sus interfaces.. La invocación de una operación es un evento que puede producir: ?? Un conjunto de resultados inmediatos (Observador) ?? Efectos colaterales expresados en un cambio de estado (Transformador) ?? Excepciones (Errores y advertencias) Cada tipo T que pertenece a OTipos tiene un T conjunto de operaciones Ops(T) = {Omega1 . lo cual permite que un tipo sea definido en términos de otro. Ei son los argumentos de entrada y r i los resultados. Herencia es un mecanismo para re-usar estructura y comportamiento. 4.. El modelo de datos indica al SMBD y al usuario el modo de abstraer los sistemas analizados que hacen parte del mundo real.Cada instancia de un tipo satisface la interfaz de dicho tipo. de aquí surge .. ?? Definición del mecanismo de comunicación entre el sistema de base de datos y los usuarios.. La firma garantiza que la petición regrese un conjunto de resultados betai del tipo o de su tipo inmediato betai menor o igual que roi. No se especifican operaciones para los objetos y los no-objetos. . Si S es un subtipo de T (T es un supertipo de S). Ellas definen las reglas por las cuales unos objetos de un tipo son aceptados en el contexto de otro tipo. Estos no forman parte de la jerarquía de objetos... DVal=Obj/\NObj Cada no-objeto debe pertenecer a un tipo NTipo.. Los tipos pueden tener varias implementaciones.. entonces para cada operación Omegak T que pertenece a Ops(T) existe una operación correspondiente OmegajS que pertenece a Ops(S) tal que : ?? Tienen el mismo nombre ?? El número y tipo de los parámetros es el mismo ?? El número y tipo de los resultados es el mismo Los tipos abstractos no tienen instancias y sirven para definir estructura y comportamiento común para los subtipos. ya que sus tipos son diferentes. Y2: ro2. por lo cual sus instancias pueden pertenecer a varias clases. Una petición es válida si los Ei se pueden evaluar en alfai o en sus tipos inmediatos alfai menor o igual que sigmai. La raíz de la jerarquía es el tipo Objeto.. El conjunto de todos los tipos de objetos se denomina OTipos. Un objeto es una instancia de una clase. El conjunto de los tipos de los no-objetos se denomina NTipos. Xn: sigman)=> (Y 1: ro1.. Una clase define una especificación y una implementación del tipo. En) donde omega es el nombre de Omega. X 2: sigma2. 4 DISEÑO DE UN SISTEMA MANEJADOR DE BASES DE DATOS ORIENTADO A OBJETOS.1 ELABORACIÓN DE UN MODELO DE DATOS ORIENTADO A OBJETOS.

clases persistentes.id . persona <<persistente>> .1. Por lo tanto. por sus siglas en ingles) como herramienta para representar simbólicamente el conjunto de datos persistentes relacionados entre sí.dirección + agregar () + eliminar () 4. Además el modelo de datos exige que si una clase hija es persistente entonces su padre debe ser persistente y pertenecer a la misma base de datos para que de este modo el SMBD pueda proporcionar integridad referencial.nombre .1. los esquemas de bases de datos.2 Agregación y composición La agregación y la composición describen objetos compuestos de otros objetos. Las características distintivas incluidas en el modelo de datos orientado a objetos son: 4.3 Herencia La herencia se representa con una flecha que apunta al padre. En la figura 5 se muestra un ejemplo de la representación de herencia entre una persona (clase padre) y un empleado (clase hija) para un esquema de base de datos. como si lo hay en el caso del modelo relacional” [5]. Representación de una clase persistente. . es decir.tampoco ningún estándar para los modelos orientados a objetos.1 Clases Las clases representan la forma de modelar entidades del mundo real que presentan atributos y métodos comunes. la composición también es representada por un rombo pero relleno. en cambio la agregación elimina los objetos parte junto con el objeto compuesto. Para diferenciar una clase como persistente se adiciona junto al nombre de la clase la etiqueta “<<persistente>>” como se muestra en la figura 4 empleado <<persistente>> . Si el analista y/o diseñador del sistema considera conveniente separar las clases persistentes para concebirlas como una base de datos puede hacerlo utilizando un paquete de base de datos. El modelo de datos adiciona la característica de persistencia al representar clases que abstraen objetos persistentes. ningún fundamento formal. los conceptos de agregación y composición difieren en que la composición permite a los objetos parte. Los objetos o instancias de clases son persistentes cuando pueden almacenarse en memoria secundaria (una base de datos o un archivo) y recuperarse posteriormente. Un paquete en UML es un elemento que agrupa a s u vez otros elementos dentro de él. Para El modelo de datos introduce las etiquetas de persistencia para que el ingeniero de software logre incluir las clases persistentes y no persistentes en un solo diagrama de clases. Elisa Bertino menciona sobre el modelo de datos: “No hay un modelo común a utilizar como punto de referencia.1. Una característica típica de los objetos en un SMBDOO es su persistencia. en lugar de existir solo en memoria principal. Representación de herencia 4. un paquete de base de datos contiene el diagrama de clases persistentes. es decir. La agregación es representada por un rombo sin rellenar.4 Nombre <<persistente>> Atributos Representación de una base de datos Métodos Figura 4. Un paquete se simboliza por una carpeta con nombre y los elementos que contiene. El paquete de base de datos es un paquete que agrupa clases persistentes y sus relaciones. es ventajoso indicar la base de datos a la que pertenece. 4.sueldo .la importancia de establecer el modelo de datos. existir al eliminar el objeto compuesto. Para la realización del modelo de datos se utiliza el estándar UML [10] (lenguaje unificado de modelado. facilitando de esta forma un mejor entendimiento del sistema analizado y las relaciones entre las clases. Además si el sistema maneja mas de una base de datos. el modelo de datos debe ser el primer resultado del diseño pues es el punto de partida para realizar el diseño del SMBD.jefe + calcular_sueldo() +establecer_sueldo() Figura 5.1.

Identificadores de objetos (IDO) El diccionario de datos se describe como la base de datos que utiliza el SMBD para ejercer control sobre la integridad de los datos. Representación de un paquete de Base de datos 4. el diccionario de datos almacena la descripción de las clases y sus relaciones (agregación. Entiéndase por clases los vértices del grafo.id . Los objetos son almacenados en archivos físicos con la siguiente estructura: <IDO.representar un paquete de base de datos se adiciona junto al nombre que identifica el paquete. 4. un grafo que representa las relaciones de composición (grafo de composición). asociación). trayendo como ventaja que el programador no tiene que preocuparse por asignar una clave que identifique al objeto. El SMBD no almacena los métodos en la base de datos. el tamaño es el número de bytes .id . El concepto de IDO introduce 2 nociones de igualdad entre objetos: ?? Identidad por igualdad: consiste en que 2 objetos son idénticos si tienen el mismo IDO.nombre + agregar() +eliminar() Figura 6.departamento + agregar () + eliminar () + consultar () almacenados y el valor es el contenido del atributo. el atributo es el nombre del atributo del objeto. la etiqueta “<<base de datos>>” como se ilustra en la figura 6. Se dice entonces que el conjunto de propiedades almacenadas para un objeto en la pila de instancias representa una instancia de una clase. donde el IDO es el identificador único del objeto. posteriormente se aclarara en donde se almacenan los métodos de las clases.nombre . cada IDO es único en la base de datos. * 1 departamento <<persistente>> . Nomina <<base de datos>> persona <<persistente>> . los objetos relacionados se almacenan en la lista de propiedades del objeto. herencia. Este aspecto es de especial cuidado pues se tiene que prever que vértices adicionales deben ser incluidos en el subgrafo de consulta.2 Almacenamiento de los objetos. El diccionario de datos contiene un grafo dirigido para cada uno de los tipos de relaciones: un grafo que representa las relaciones de agregación (grafo de agregación). Cada objeto es identificado con un IDO [1] [5] que es asignado por el sistema. valor> para cada atributo del objeto. 4. composición.2. El conjunto de vértices representa cada una de las clases del esquema de base de datos y el conjunto de aristas representa las relaciones entre las clases.1 Una clase es la abstracción de un conjunto de objetos.2.3 Diccionario de datos.2 DEFINICIÓN DE LA ESTRUCTURA Y EL ALMACENAMIENTO FÍSIC O DE LOS DATOS. composición. llamaremos a estos archivos físicos: pila de instancias de la clase n. 4. ?? Igualdad por valor: consiste en que 2 objetos son iguales si los valores de sus atributos son iguales. Los dos proporcionan un soporte importante para establecer mecanismos que controlen la integridad y persistencia de los objetos. agregación y asociación. un grafo que representa las relaciones de asociación (grafo de asociación) y un grafo que representa las relaciones de herencia (grafo de herencia) que tiene la particularidad de ser acíclico. Cada objeto del esquema de base de datos tendrá su propia pila de instancias sin importar si presenta relaciones de herencia. Para la realización de consultas sobre la base de datos los grafos tienen la propiedad de crear subgrafos con los vértices solicitados en la consulta incluyendo sus aristas. 2 objetos pueden ser iguales pero no idénticos y si 2 o bjetos son idénticos necesariamente son iguales. tamaño. es decir. donde n es el nombre de la clase. atributo. Para un subgrafo de consulta de herencia se trae toda la jerarquía de herencia de los vértices solicitados ya que es posible que el usuario solicite un atributo de una clase padre.2. en donde en el campo valor contendrá el ido del objeto referenciado. La identidad subsume la igualdad.

Esquema de comunicación básico. eliminación. valor. se indique el numero de atributos. . éste proporcionará una clase que gestione las consultas. Las operaciones de inserción.3 DEFINICIÓN DEL MECANISMO DE COMUNICACIÓN ENTRE EL SISTEMA DE BASE DE DATOS Y LOS USUARIOS. pues se tiene como requisito del sistema soportar la arquitectura Cliente/Servidor. Esta actividad define el lenguaje de manipulación y definición de los datos que utiliza el usuario. para que el resultado de consulta pueda proveer al usuario un procedimiento que facilite el acceso a los atributos de las instancias por medio de sus nombres. se exige que las clases hereden de una clase base que proporcione los mecanismos anteriormente mencionados.4 DEFINICIÓN DE UN MODELO PARA ACCEDER A LA BASE DE DATOS ORIENTADA A OBJETOS. es decir.Para un subgrafo de consulta de agregación se traen las clases referenciadas a la clase solicitada. El SMBD diseñado contempla dos maneras de realizar operaciones sobre los datos: El primero. Además al traer clases adicionales a las solicitadas se debe tener en cuenta que éstas a su vez deben cumplir las condiciones anteriormente mencionadas. teniendo en cuenta el principio de la ODMG que dice: “Los SGBD 3G deben ser abiertos a otros subsistemas” se elige el estándar abierto para la comunicación entre objetos CORBA propuesto por el grupo OMG (grupo de administración de objetos. asociación). Como es necesario que toda clase que pertenezca a la base de datos proporcione mecanismos de inserción. Sin duda alguna la creación de un protocolo de alto nivel que soporte la comunicación de los objetos a través de la red requiere una cantidad de tiempo considerable e innecesaria ya que actualmente existen estándares que facilitan estos servicios. Con métodos de comunicación se quiere decir todo lo necesario para que el sistema funcione en redes siendo la comunicación entre el cliente y el servidor transparente para el usuario. El segundo método para realizar operaciones sobre los datos es a través de un conjunto de atributos proporcionados por la propia clase. Para un subgrafo de composición se traen las clases anexadas a la clase solicitada. eliminación y actualización de instancias se llevarán a cabo exclusivamente desde la clase. El lenguaje de manipulación de datos permite al usuario crear instancias de una clase. SMBD Consulta Resultado consuta USUARIO Figura 7. A bajo nivel el “resultado_de_consulta” manejará una lista doblemente encadenada en donde cada nodo contendrá una instancia. El SMBD presentará un componente que interprete las declaraciones de clases realizadas por el usuario y con este genere el archivo físico que contendrá la pila de instancias y la actualización del diccionario de datos. En esta etapa se definen los métodos de comunicación entre el cliente y el servidor. herencia. composición. nombre del atributo y tipo de dato. y será a través de ésta clase que el usuario realizará sus consultas. que funcionaría de la siguiente manera: en vez de enviar de manera directa la consulta al SMBD. el SMBD diseñado utilizara el lenguaje IDL propuesto en el estándar CORBA para definir las clases persistentes y sus relaciones (agregación. modificar sus atributos. actualización y persistencia. 4. con la limitación de que solo será posible hacer consultas exclusivamente a la clase. una vez procesada la consulta en el SMBD se retornará al usuario una clase llamada “resultado_de_consulta” que se compone de un conjunto de instancias que son el resultado de una consulta OQL (figura 7). eliminar instancias y consultar los datos. un lenguaje de consultas tipo SQL llamado lenguaje de consulta a objetos (OQL. Desafortunadamente hasta la fecha no se ha profundizado mucho en el estudio de este tópico y solo se han elaborado unas conclusiones tempranas al respecto. la vinculación de la clase a cada uno de los grafos de relaciones. por sus siglas en ingles)(ver figura 7). Estas son: El lenguaje de definición de datos es la interfaz que presenta el SMBD al usuario para poder implementar el esquema de base de datos. por sus siglas en ingles). se le deberá enviar además al “resultado_de_consulta” una cabecera donde 4.

atributo. Estos paquetes podrían representarse en disco como un árbol de directorios.3. Además el hecho que ORB se encuentre dentro de el SMBDOO no quiere decir que en la practica se encuentre en la misma computadora el ORB y el SMBDOO. Diccionario de datos: el cual contiene toda la información necesaria para controlar la integridad de los datos. El encargado de ejecutar y almacenar los procedimientos de las clases es un mediador de peticiones de objetos (ORB. uno para cada clase. El SMBDOO se encarga de: ?? Recibir y procesar las peticiones manipulación y definición de datos. La pila de instancias administra estos atributos en archivos separados.2. En la sección 2. Esquema básico de SMBDOO propuesto Cliente: el cliente se comunica de manera bidireccional con el ORB. ?? Enviar mensajes. ?? Envía peticiones de creación de clases con el lenguaje idl. Además se encarga de administrar las distintas bases de datos separándolas en paquetes. como se menciono anteriormente. ?? Enviar instancias. de 5 CONCLUSIONES. asociación). por sus siglas en ingles).“La Arquitectura Común de Mediador de Peticiones (CORBA The Common Object Request Broker) del Grupo de Administración de Objetos (OMG) suministra una arquitectura independiente de la plataforma e independiente del lenguaje de programación para la escritura de aplicaciones distribuidas orientadas a objeto.3 de este articulo se mencionó que el SMBD almacenaría únicamente los atributos y relaciones de las clases y no se aclaró en que lugar ó quien era el responsable de contener los procedimientos de las clases. pero con el propósito de crear un modelo flexible se conciben como artefactos almacenados en ubicaciones distintas. la siguiente El SMBD diseñado posee arquitectura (ver figura 8): SMBDOO Pila de instancias Diccionario de datos ORB Repositorio de clases Cliente Figura 8. ?? Retornar al usuario mensajes. Este diseño se apoya en la arquitectura CORBA. composición. ” [6]. Para diferenciar las distintas bases de datos (paquetes de bases de datos) se representaran en disco como un árbol de directorios al igual que la pila de instancias. . A su vez el ORB contiene un repositorio de clases en el cual se almacenan todas las clases de las distintas bases de datos. de error ó información. que lance el SMBD. valor>. estas relaciones se almacenan como un grafo dirigido. al igual que en Java. en éste se almacena la descripción de las clases y sus relaciones (agregación.2. herencia. nótese que la pila de instancias y el repositorio de clases podrían o no compartir el mismo espacio físico en disco. tamaño. ORB: el ORB CORBA proporciona la comunicación entre el SMDB y el cliente y ejecuta los procedimientos de las clases. El SMBDOO esta compuesto por tres piezas básicas: Pila de instancias: encargada del almacenamiento físico de los atributos de los objetos en estructuras de almacenamiento <IDO. en realidad un grafo para cada una de las relaciones como se mencionó en la sección 2. ?? Recibir y enviar al SMBD las peticiones del usuario ya sea de definición de datos (idl) o manipulación de datos (oql ó los procedimientos de las clases que pertenecen a la base de datos). para los procesos de comunicación con el cliente. Además de almacenar y ejecutar los procedimientos de las clases el ORB tiene las siguientes responsabilidades: ?? Retornar los objetos de tipo “resultado_de_consulta”.

Un Sistema de Gestión de Bases de Datos Orientadas a Objetos sobre una Máquina Abstracta Persistente.html. ACM Crossroads Student Magazine. [2] C. Manion. Estándar ODMG. 6 REFERENCIAS [1] Johnson. Quinta Edición. [13] Esperanza Marcos Martínez. ACM Crossroads Student Magazine. 2000.ula. Modelo de objetos OMG.odmg.?? Envía consultas a varias clases por medio de las clases de gestión de consultas que contienen la sentencia oql del usuario.pdf. Davinci: Prototipo de un Sistema Manejador de Bases de Datos Orientado por Objetos.org. [7] Todd R.org/crossroads/ xrds7-3/objects. [12] Won Kim. eliminar y filtrar valores de las clases.rational. [9] Peter Kueng. [5] Elisa Bertino. Sistemas de bases de datos relacionado a objetos. Database: models. Date.com [11] Isabel Besembel. http://www. ?? Recibe objetos de la base de datos.com. . 1995. Modern Database Systems: The Object Model Interoperability. Oxford University Press. Addison Wesley. Devorakonda. [4] Dany Leonardo Martínez Murcia. Institute of computer science. and Beyond. 1997.acm. http://www.pgcomp. ACM Press. [6] Common Objects Request Broker Architecture. [8] Ramakanth S. Volumen I. actualizar. Addison Wesley.J. Comparison of ten OODBMS. http://www.acm.urjc. The Unified Modelling Language: Notation and Semantics Gudes. Sistemas de Bases de Datos Orientados a Objetos.es/documentos/bd/tema 2. design.escjet.ve/DISTANCI A/BDA/omg. James L. 1998. Universidad de Oviedo. ?? Envía por medio de los procedimientos de las clases que pertenecen a la base de datos peticiones para insertar. http://www.html.html.jguru. Universidad Francisco de Paula Santander. 2001. Introducción a los sistemas de bases de datos. [10] Rational Software Corporation. [3] Ana Belén Martínez Prieto. http://www.org/crossroads/xrds73/ordbms. languages. Bases de Datos Orientadas a Objetos. Objects Objects Everywhere. http://kybele. Universidad Rey Juan Carlos. http://www. ?? Recibe objetos de tipo “resultado_de_consulta”. Grupo de investigación Kybele. ?? Recibe mensajes del SMBD.