Sei sulla pagina 1di 19

Introduccin. ................................................................................................................................... 2 Subclases, Superclases y Especializacin. ...................................................................................... 3 Herencia de atributos en la relacin Clase/subclase.................................................................... 4 Especializacin. ........................................................................................................................... 4 Diagramas ERE. ..........................................................................................................................

4 Utilizacin de subclases en los modelos de datos. ...................................................................... 5 Generalizacin. ................................................................................................................................ 6 Modelos de Datos con Especializacin y Generalizacin. .............................................................. 7 Restricciones de especializacin y generalizacin. ..................................................................... 7 Jerarquas de Especializacin, Red de Especializacin y Herencia Mltiple. .......................... 10 Diseo Top-down frente a Bottom-up. ..................................................................................... 12 Categoras y Categorizacin.......................................................................................................... 13 Paso de ERE a modelo Relacional. ............................................................................................... 16 Relaciones Superclase/Subclase y Especializacin/ Generalizacin. ....................................... 16 Subclases compartidas............................................................................................................... 18 Categoras. ................................................................................................................................. 18 Conclusin Bibliografa

MODELO ENTIDAD-RELACION EXTENDIDO


INTRODUCCIN.

El Modelo Entidad-Relacin Extendido incluye todos los conceptos del EntidadRelacin e incorpora los conceptos de Subclase y superclase con los conceptos asociados de Especializacin y Generalizacin. El modelado de datos no acaba con el uso de esta tcnica. Son necesarias otras tcnicas para lograr un modelo directamente implementable en una base de datos. Brevemente: Permite mostrar resultados entre otras entidades pertenecientes a las existentes de manera que se encuentre la normatividad de archivos que se almacenaran

Transformacin de relaciones mltiples en binarias. Normalizacin de una base de datos de relaciones (algunas relaciones pueden transformarse en atributos y viceversa).

Conversin en tablas (en caso de utilizar una base de datos relacional).

Otro nuevo concepto incluido por el ERE es el de Categora. Asociado a estos conceptos est el importante mecanismo de Herencia de atributos. Habr que tener en cuenta que no existe una terminologa estandarizada para estos conceptos, por lo que usaremos la ms difundida.

SUBCLASES, SUPERCLASES Y ESPECIALIZACIN.

En el modelo Entidad-Relacin, una entidad agrupa un conjunto de ocurrencias de entidad del mismo tipo. En muchos casos, estas ocurrencias se pueden agrupar a su vez en otros subconjuntos que tienen un significado propio para los propsitos de la Base de Datos y, por tanto, deberan representarse de forma explcita. Por ejemplo, la entidad EMPLEADO puede a su vez subdividirse en SECRETARIA, INGENIERO, JEFE, TCNICO, ASALARIADO,

SUBCONTRATADO, etc. El conjunto de ocurrencias de entidad en cada una de estas entidades ser un subconjunto de las ocurrencias de entidad de EMPLEADO, ya que por ejemplo, un ingeniero tambin es un empleado. Llamaremos a cada uno de estos subconjuntos Subclases de la entidad EMPLEADO y a EMPLEADO una Superclase de cada uno de estos subconjuntos. Llamaremos a la relacin existente entre las Superclases y las Subclases como relacin Clase/Subclase. En el ejemplo anterior, EMPLEADO/SECRETARIA y EMPLEADO/TCNICO son dos relaciones Clase/Subclase. Hay que tener en cuenta que una ocurrencia de una Subclase representa el mismo objeto real que alguna correspondiente a su Superclase, por ejemplo la SECRETARIA "Concha Leco" ser tambin la EMPLEADO "Concha Leco". Por tanto, la ocurrencia de Subclase es la misma que en la Superclase pero con un rol especfico. Una ocurrencia de Subclase no tienen sentido si no es a su vez ocurrencia de Superclase. Por otro lado, una ocurrencia de superclase puede ser a su vez ocurrencia de varias subclases o de ninguna. Por ejemplo, "Roberto Mate" como ocurrencia de EMPLEADO puede a su vez pertenecer a subclases INGENIERO y ASALARIADO.

HERENCIA DE ATRIBUTOS EN LA RELACIN CLASE/SUBCLASE. Debido a que una subclase es a su vez parte se una superclase, la subclase tendr sus atributos especficos as como los atributos correspondientes a la superclase a la que pertenece. Esto quiere decir que la ocurrencia de entidad de una subclase hereda los atributos correspondientes a la superclase a la que pertenece. De la misma manera hereda las relaciones en las que su correspondiente superclase participa.

ESPECIALIZACIN. El proceso por el que se definen las diferentes subclases de una superclase se conoce como especializacin. El conjunto de subclases se define basndonos en caractersticas diferenciadoras de las ocurrencias de entidad de la superclase. Por ejemplo, el conjunto se subclases (SECRETARIA, INGENIERO, TECNICO) es una especializacin de la superclase EMPLEADO mediante la distincin del tipo de trabajo en cada ocurrencia de entidad. Podemos tener varias especializaciones de una misma entidad basndonos en distintos criterios. Por ejemplo, otra especializacin de EMPLEADO podra dar lugar a las subclases ASALARIADO y SUBCONTRATADO, dependiendo del tipo de contrato.

DIAGRAMAS ERE. La figura 1 muestra como se representa la especializacin en un diagrama ERE. Las subclases definidas por una especializacin estn unidas mediante lneas a un crculo, que conecta con la superclase. El smbolo de pertenencia en las lneas entre las subclases y el circulo representan la direccin de la relacin clase/subclase. Los tributos aplicables solamente a cada una de las subclases se unen a estas mediante arcos (por ejemplo, velocidad en la subclase SECRETARIA). Estos atributos se denominan atributos especficos de la subclase. Las subclases tambin pueden tener relaciones especificas con otras entidades (por ejemplo, la relacin PERTENECE entre SUBCONTRATADO y EMPRESA). El smbolo d del crculo se explicar mas adelante. 4

UTILIZACIN DE SUBCLASES EN LOS MODELOS DE DATOS. Hay dos razones principales para el uso de la relacin clase/subclase en los modelos de datos. La primera es que ciertos atributos no pueden ser aplicados a todas las ocurrencias de entidad correspondiente a la superclase. Una subclase se define para agrupar aquellas ocurrencias de entidad donde el atributo es aplicable. Suele ocurrir que las subclases comparten la mayora de los atributos correspondientes a la superclase. Por ejemplo, SECRETARIA tiene el atributo de velocidad mientras que INGENIERO tiene tipo, sin embargo ambos comparten los mismos atributos de EMPLEADO.

La segunda razn para la utilizacin de subclases es que algunas relaciones pueden tener sentido solo para algunas ocurrencias de entidad de la superclase. Por ejemplo, si solo los empleados subcontratados pueden pertenecer a otras empresas, podremos representar este hecho mediante la creacin de la subclase

SUBCONTRATADO y relacionarla con la entidad EMPRESA mediante la relacin PERTENECE, como se puede ver en la figura. 5

GENERALIZACIN. El proceso de especializacin expuesto en el punto anterior nos permite lo siguiente: Definir un conjunto se subclases a partir de una entidad. Asociar atributos especficos a cada subclase. Establecer relaciones especficas entre cada subclase con otras entidades o subclases. Podemos pensar en un proceso inverso de abstraccin en el cual suprimimos las diferencias entre las distintas entidades, identificando sus caractersticas comunes, y generalizando dichas entidades en una sola superclase de la cual las entidades iniciales seran subclases especiales. Por ejemplo, supongamos las entidades COCHE y CAMION de la figura (a); podremos generalizarlas en la entidad VEHICULO, como se muestra en la figura 2(b). Tanto COCHE como CAMION sern ahora subclases de la superclase generalizada VEHICULO. Usamos el trmino generalizacin para referirnos al proceso de definicin de una entidad generalizada a partir de unas entidades dadas.

Hay que tener en cuenta que el proceso de generalizacin puede ser visto funcionalmente como el proceso inverso de especializacin. Por tanto, en la figura 2 podemos ver {COCHE, CAMION} como una especializacin de VEHICULO, as como VEHICULO puede verse como la generalizacin de COCHE y CAMION. De la misma forma podemos ver en la figura 1 a EMPLEADO como la generalizacin de SECRETARIA, TCNICO e INGENIERO. En algunas ocasiones se utilizan flechas para representar en los diagramas ERE cual a sido la tcnica de identificacin de superclases/clases. 6

MODELOS DE DATOS CON ESPECIALIZACIN Y GENERALIZACIN. Las subclases y superclases se corresponden con entidades y por tanto se representarn con rectngulos en el diagrama ERE. Ahora veremos con ms detalle las propiedades de especializacin y generalizacin. RESTRICCIONES DE ESPECIALIZACIN Y GENERALIZACIN. En los siguientes prrafos veremos las restricciones aplicables a una especializacin o a una generalizacin; sin embargo, por abreviar, nuestra visin se referir solamente a la especializacin en vez de a ambas tcnicas. En general podremos tener varias especializaciones definidas sobre la misma entidad o superclase, como se ve en la figura 1. En tal caso las ocurrencias de entidad pueden pertenecer a cada una de las especializaciones. Sin embargo, una especializacin puede consistir en solo una subclase, tal como JEFE en la figura 1; en tal caso no utilizaremos la notacin crculo. En algunas especializaciones podremos determinar exactamente que ocurrencias de entidad se convertirn en ocurrencias de cada subclase, mediante la utilizacin de una condicin en algn atributo de la superclase. Tales subclases se llaman subclases definidas por predicado (o definidas por condicin). Por ejemplo, si la entidad EMPLEADO tiene el atributo tipotrabajo, como se ve en la figura 3, podremos especificar una condicin de pertenencia a la subclase SECRETARIA mediante el predicado tipotrabajo = "Secretaria"), al cual llamaremos predicado de definicin de la subclase. Esta condicin es una restriccin especificando que los miembros de la subclase SECRETARIA deben satisfacer el predicado y que todas las ocurrencias de la entidad EMPLEADO en las que el valor del atributo tipotrabajo sea "Secretaria" deben pertenecer a la esta subclase. Si todas las subclases en una especializacin tienen la condicin de pertenencia en el mismo atributo de la superclase, la especializacin ser una especializacin definida por atributo y el atributo ser llamado atributo de definicin de la especializacin. Definiremos una especializacin definida por atributo en el diagrama colocando el 7

atributo de definicin cerca del arco que va desde el crculo a la superclase, como puede verse en la figura. Cuando no exista tal condicin para determinar la pertenencia a una superclase, la subclase se llamar subclase definida por el usuario. En tales subclases, la pertenencia vendr determinada por los usuarios de la Base de Datos cuando realicen una operacin de insercin de una ocurrencia en la subclase; por tanto, el usuario especifica la pertenencia de cada ocurrencia individualmente automticamente y no mediante una condicin que pueda ser evaluada

Se pueden aplicar dos restricciones ms a la especializacin. La primera es la restriccin de desunin, la cual especifica que las subclases de la especializacin deben estar separadas. Esto significa que una ocurrencia de la entidad puede ser miembro de como mximo una de las subclases de la especializacin. Una especializacin definida por atributo implica la restriccin de desunin, si el atributo para definir el predicado de pertenencia es simple. La figura 3 muestra este caso, donde la d del crculo denota la desunin. Tambin usaremos la notacin d para especificar que una especializacin definida por el usuario debe tener la restriccin de desunin asociada, como puede verse en la especializacin {ASALARIADO, SUBCONTRATADO} de la figura. Si las subclases no son desunidas, sus conjuntos de ocurrencias pueden solaparse, 8

esto es, la misma ocurrencia de entidad puede ser miembro de ms de una subclase de la especializacin. Este caso, que es el caso por defecto, se representa mediante una O en el crculo, como se muestra en el ejemplo de la figura.

La segunda restriccin a la especializacin se llama la restriccin de totalidad, la cual puede ser parcial o total. Una restriccin de especializacin total especifica que cada ocurrencia de entidad de la superclase debe ser miembro de alguna subclase de la especializacin. Por ejemplo, si cada EMPLEADO debe se

ASALARIADO o SUBCONTRATADO, entonces la especializacin {ASALARIADO, SUBCONTRATADO} de la figura 1 es una especializacin total de EMPLEADO; esto se representa en el diagrama ERE usando una lnea doble entre el crculo y la superclase. Una lnea sencilla se utiliza para representar una especializacin parcial, la cual permite que una ocurrencia de entidad no pertenezca a ninguna de las subclases. Por ejemplo, si alguna ocurrencia de entidad EMPLEADO no

pertenece a ninguna de las subclases {SECRETARIA, INGENIERO, TCNICO} de las figuras 1 y 3, entonces la especializacin es parcial. Hay que tener en cuenta que las restricciones de desunin y totalidad son independientes, por tanto habr cuatro tipos de especializacin: - Desunin, total - Desunin, parcial - Solapamiento, total - Solapamiento, parcial Como es lgico, las restricciones correctas vienen dadas por la naturaleza del problema real aplicado a cada especializacin, si embargo, la generalizacin en una superclase suele ser total, ya que la superclase se deriva de las subclases y, por tanto, contiene slo ocurrencias de entidad que estn en las subclases.

REGLAS DE INSERCIN Y BORRADO PARA ESPECIALIZACIN Y GENERALIZACIN.

Como consecuencia de las restricciones definidas anteriormente, aparecen reglas para la insercin y borrado de Especializacin (y Generalizacin). Algunas de esas reglas son las siguientes: Borrar una tupla de una superclase implica el borrado automtico en todas las subclases a las que pertenezca. Insertar una tupla en una superclase implica que tiene que ser obligatoriamente insertada en todas las subclases definidas por predicado en las que satisfaga el predicado de definicin. Insertar una tupla en una superclase de una especializacin total implica una insercin obligatoria en al menos una de las subclases de la especializacin. Existen otras reglas correspondientes a los distintos tipos de especializacin y a las operaciones de insercin y borrado.

JERARQUAS DE ESPECIALIZACIN, RED DE ESPECIALIZACIN Y HERENCIA MLTIPLE.

Una subclase puede, a su vez, tener ms subclases especificadas a partir de ella, formando una jerarqua o red de especializaciones. 10

Por ejemplo, en la figura INGENIERO es una subclase de EMPLEADO y es a su vez superclase de JEFE DE INGENIERIA; esto representa la restriccin del mundo real por la que un jefe de ingeniera debe ser un ingeniero. Una jerarqua de especializacin tiene la restriccin cada subclase participa (como subclase) en una relacin clase/subclase. Como contraste, para una red de especializacin una subclase puede ser subclase en mas de una relacin clase/subclase. Por consiguiente la figura 5 representa una red de especializacin.

La figura 6 muestra otra red de especializacin con ms de un nivel. Este diagrama podra ser parte del esquema conceptual de una Base de Datos de una universidad. La estructura sera una jerarqua si no fuese por la subclase AYUDANTE, la cual es subclase en dos relaciones clase/subclase distintas. Todas las personas

pertenecientes a la Base de Datos son miembros de la entidad PERSONA, la cual se especializa en las subclases {EMPLEADO, ESTUDIANTE}. Esta especializacin tiene solapamiento. Por ejemplo, un empleado puede a su vez ser estudiante. La subclase ESTUDIANTE es superclase de la especializacin {DE TFC, DE CURSOS}, mientras que EMPLEADO es superclase de la especializacin {LABORAL, DOCENTE, AYUDANTE}. Hay que tener en cuenta que AYUDANTE es tambin subclase de ESTUDIANTE. Finalmente, AYUDANTE es superclase de la especializacin {INVESTIGACION, DOCENCIA}.En tal red o jerarqua de

especializacin, una subclase hereda no solamente los atributos de su superclase directa, sino tambin todos los de sus predecesores hasta la raz. 11

Por ejemplo, una ocurrencia de entidad DE TFC hereda los valores de sus atributos como ocurrencia de ESTUDIANTE y PERSONA. Hay que tener en cuenta que una ocurrencia de entidad puede existir en distintas hojas de la jerarqua; por ejemplo, un miembro de DE TFC puede tambin ser miembro de INVESTIGACION. Una subclase con ms de una superclase se llama subclase compartida. Por ejemplo, si cada JEFE DE INGENIERIA debe ser un INGENIERO pero tambin un ASALARIADO y JEFE, entonces JEFE DE INGENIERIA ser una subclase compartida de las tres superclases (Figura 5.). Esto nos lleva al concepto de herencia mltiple, ya que la subclase compartida JEFE DE INGENIERIA hereda directamente atributos de varias clases. Hay que tener en cuenta que una subclase compartida implica una red; si no existen subclases compartidas estaremos en presencia de una jerarqua en vez de una red. Aunque se ha utilizado la especializacin para definir estos conceptos, la generalizacin es igualmente aplicable a estos. Por tanto podremos hablar de la misma forma de jerarqua de generalizacin y red de generalizacin. DISEO TOP-DOWN FRENTE A BOTTOM-UP. En el proceso de especializacin, solemos empezar con una entidad y a continuacin definimos las subclases de la entidad mediante especializaciones sucesivas; esto es, definimos repetitivamente ms agrupamientos especficos a partir de la entidad. Por ejemplo, durante el diseo de la red de especializacin de la figura 6, podemos especificar primero la entidad PERSONA para la BD de una universidad. Entonces descubriremos que se van a representar dos tipos diferentes de personas en la BD: empleados de la universidad y estudiantes. Para este propsito crearemos la especializacin {EMPLEADOS, ESTUDIANTES} y

elegiremos la restriccin de solapamiento porque una persona puede pertenecer a ambas subclases. Entonces especializaremos EMPLEADO en {LABORAL,

DOCENTE, AYUDANTE}, y especializaremos ESTUDIANTE en {TFC,CURSO}. Finalmente especializaremos AYUDANTE en {INVESTIGACION,DOCENCIA}. Esta especializacin sucesiva corresponde a un proceso de refinamiento conceptual top-down durante el diseo del esquema conceptual. Hasta aqu, tendremos una jerarqua; descubriremos entonces que AYUDANTE es 12

una subclase compartida, desde el momento en que es tambin una subclase de ESTUDIANTE, llevndonos esto a una red. Es posible llegar a la misma jerarqua o red desde otra direccin. En tal caso el proceso conlleva generalizacin en vez de especializacin y corresponde a una sntesis conceptual bottom-up. En trminos estructurales, las jerarquas o redes resultantes de ambos procesos puede se idnticas; la nica diferencia radica en la manera o el orden en que se especifican las clases y subclases del esquema. En la prctica, es frecuente que no se utilice solamente especializacin o solamente generalizacin, sino una combinacin de ambos procesos. En este caso, se incorporan continuamente nuevas clases a la jerarqua o la red segn se van haciendo visibles para usuarios y diseadores.

CATEGORAS Y CATEGORIZACIN. Todas las relaciones superclase/subclase vistas hasta ahora tienen superclase nica. Incluso la subclase compartida JEFE DE INGENIERIA en la red de la figura 5 es una subclase de tres relaciones superclase/subclase distintas, donde cada una de las relaciones tiene una superclase nica. En algunos casos, sin embargo, se necesita representar una relacin superclase/ clase simple con mas de una superclase, donde las superclases son diferentes entidades. En este caso llamamos a la subclase categora. Por ejemplo, supongamos que tenemos tres entidades: PERSONA, BANCO y EMPRESA. En la Base de Datos de vehiculo, un dueo de un vehiculo puede ser una persona, un banco o una empresa. Necesitaremos crear una clase que contenga ocurrencias de las tres entidades para desempear el papel de propietario. Se crear con este fin una categora propietario que sea una subclase de la unin de la clases EMPRESA, BANCO y PERSONA. Representaremos las Categoras en el diagrama ERE como se muestra en la figura 7. Las superclase EMPRESA, BANCO y PERSONA se conectan al crculo con el smbolo U (unin). Un arco con el smbolo de pertenencia conecta el crculo con la categora (subclase) PROPIETARIO. Si es necesario un predicado de definicin, ste se coloca cerca de la lnea de la superclase a la cual se aplica el predicado. En la figura 8 tenemos dos categoras: 13

PROPIETARIO, la cual es una subclase de la unin de PERSONA, BANCO y EMPRESA; y VEHICULO MATRICULADO, la cual es una subclase de la unin de COCHE y CAMION. Una categora tiene dos o ms superclases que pueden representar distintas entidades, mientras que las otras relaciones superclase /subclase tienen una sola superclase. Podemos comparar una categora, como PROPIETARIO en la figura 7, con la subclase compartida JEFE DE INGENIERIA se la figura 5. La segunda es una subclase de cada una de las tres superclases INGENIERO, JEFE y ASALARIADO, de manera que una ocurrencia de JEFE DE INGENIERIA debe existir en las tres. Esto representa la restriccin de que un jefe de ingeniera debe se un INGENIERO, un JEFE, y un ASALARIADO; esto es, JEFE DE INGENIERIA es un subconjunto de la interseccin de las tres subclases. Por otro lado, una categora es un subconjunto de la unin de sus superclases. Por tanto, una ocurrencia de entidad que es miembro de PROPIETARIO, debe existir al menos en una de las superclases, pero no tiene que ser miembro de todas. Esto representa la restriccin de que un PROPIETARIO puede ser una EMPRESA, un BANCO, o una PERSONA. En la figura 7. En este ejemplo, como en la mayora de los casos en los que se usan categoras, una ocurrencia de la categora es miembro de exactamente una de las superclases.

Figura 7. Dos categoras: PROPIETARIO y VEHICULO MATRICULADO. 14

La herencia de atributos funciona de forma mas selectiva en las categoras. Por ejemplo, en la figura 7 cada PROPIETARIO hereda los atributos de una EMPRESA, una PERSONA, o un BANCO, dependiendo de la superclase a la que pertenezca. Esto se conoce como herencia selectiva. Por otro lado, una subclase compartida como JEFE DE INGENIERIA (figura 5), hereda todos los atributos de sus superclases ASALARIADO, INGENIERO y JEFE. Es interesante sealar la diferencia existente entre la categora VEHICULO MATRICULADO de la figura 7 y la superclase generalizada VEHICULO de la figura 2b. En la figura 2b, cada coche y cada camin son VEHICULOS, pero en la figura 7, la categora VEHICULO MATRICULADO incluye algunos coches o camiones, pero no necesariamente todos (algunos podran no estar matriculados). En general, una especializacin o una generalizacin como la de la figura 2b, si fuese parcial, no impedira la participacin de otros VEHICULOS mediante la restriccin de otras entidades, como MOTOS. Sin embargo, una categora como VEHICULO MATRICULADO de la figura 7 implica que solo coches y camiones, pero no otras entidades, pueden ser miembros de VEHICULO MATRICULADO.

Figura 8. Categoras. (a) Categora parcial TITULAR DE CUENTA que es un subconjunto de la unin de la dos entidades EMPRESA y PERSONA. (b) Categora total PROPIEDAD y una generalizacin similar. 15

Una categora puede ser total o parcial. Por ejemplo, TITULAR DE CUENTA es una categora parcial definida por predicado en la figura 8(a), donde c1 y c2 son las condiciones del predicado que especifican qu ocurrencias de EMPRESA y PERSONA, respectivamente, son miembros de TITULAR DE CUENTA. Sin embargo, la categora PROPIEDAD de la figura 8(b) es total porque cada edificio o finca debe ser miembro de PROPIEDAD; esto se representa mediante una lnea doble entre el crculo y la categora. Las categoras parciales se representan mediante una lnea simple entre la categora y el crculo, como se ve en las figuras 7 y 8(a). Las superclases de una categora pueden tener diferentes claves, como se ve en la categora PROPIETARIO de la figura 7; o pueden tener las mismas claves como se ve en la categora VEHICULO MATRICULADO. Hay que tener en cuenta que, en el caso de que la categora sea total, puede ser representada como una especializacin o una generalizacin, como muestra la figura 8(b). En tal caso la eleccin de cual utilizar es subjetiva. Si dos clases representan las mismas entidades y comparten muchos atributos, incluyendo la misma clave, es preferible la utilizacin de especializacin/generalizacin; en otro caso la categorizacin es ms apropiada.

PASO DE ERE A MODELO RELACIONAL. El paso de ERE a modelo Relacional es una extensin de las normas del paso Entidad-Relacin. Las reglas complementarias hacen referencia a los elementos propios del ERE y son las siguientes: RELACIONES SUPERCLASE/SUBCLASE Y ESPECIALIZACIN/ GENERALIZACIN. Existen cuatro opciones para realizar el paso a modelo relacional de las relaciones Superclase/Subclase correspondientes a Especializaciones o Generalizaciones. OPCION A: Crear una relacin para la superclase, con sus atributos

correspondientes y una relacin para cada subclase con sus atributos ms la clave primaria de la superclase. Esta opcin es vlida para especializaciones parciales o totales y con restriccin de desunin o solapamiento. OPCION B: Crear para cada subclase una relacin con los atributos de la 16

superclase mas los atributos propios, donde la clave primaria ser la de la superclase. Esta opcin slo es vlida para las especializaciones con restriccin de totalidad y desunin ya que, si una ocurrencia de la superclase no pertenece a ninguna de las subclases, se pierde; y si pertenece a ms de una, sus datos aparecen de forma redundante en ms de una relacin. Adems tiene el inconveniente de que. Al buscar una ocurrencia cualquiera de la superclase, tendremos que recorrer todas las relaciones.

OPCION C: Crear una sola relacin con todos los atributos de la superclase y las subclases mas un atributo T que indica la subclase a la que la tupla pertenece. Esto corresponde a una especializacin de clases desunidas y puede generar muchos valores nulos. Esta opcin no es apropiada cuando se utilizan muchos atributos de definicin para la especializacin. Si se utilizan pocos atributos de especificacin, esta opcin es preferible a las opciones A y B, ya que, no requiere la utilizacin de JOIN para la conformacin de la superclase completa.

OPCION D: Crear una sola tabla con todos los atributos de la superclase mas los atributos de las subclases, mas unos atributos Ti cuyo valor lgico nos indicar a qu subclase pertenece la tupla. Esta opcin corresponde una especializacin con solapamiento. a) EMPLEADO DNI Pila Ape1 Ape2 Fecha Dir tipoTrabajo

SECRETARIA DNI Velocidad

TECNICO DNI Nivel

INGENIERO DNI Tipo

17

b) COCHE Nvehiculo CAMION Nvehiculo Matrcula Precio Nejes Peso Matrcula Precio V.max Npas

c) EMPLEADO DNI d) PERSONA DNI Nombre Direccin Fecha_n Sexo Empleado Sueldo Estudiante Especialidad Pila Ape1 Ape2 Fecha Dir tipoTrabajo Velocidad Nivel Tipo

Opciones en el paso de ERE a relacional para generalizacin y especializacin. a) Paso a tablas de la figura 3 mediante la opcin A. b) Paso a tablas de la figura 2(b) mediante la opcin B. c) Paso a tablas de la figura 3 mediante la opcin C. d) Paso a tablas de la figura 4 mediante la opcin D.

SUBCLASES COMPARTIDAS. Una subclase compartida es subclase de varias superclases que tendrn la misma clave, ya que si no, la subclase sera una categora. Las subclases compartidas se pasan a relaciones de la misma manera que las subclases normales, aunque se suele utilizar la opcin A del punto 6.1. CATEGORAS. Una categora es una subclase de la unin de dos o ms superclases que pueden tener diferentes claves ya que pueden representar diferentes entidades. En este caso es necesario sintetizar una clave subrogada, que identifique cada una de las ocurrencias de la categora y que ser heredada como clave fornea por cada una de las superclases. Por cuestiones de eficiencia a la hora de realizar los joins entre la categora y sus correspondientes clases, se aadir un atributo a la tabla de la 18

categora que exprese a que subclase pertenece cada tpla en particular. PERSONA DNI Ncarnet Nombre Dir Nprop

BANCO Nombre Dir EMPRESA Nombre Dir PROPIETARIO Nprop TipoProp Nprop Nprop

VEHICULO_MATRICULADO Nvehculo COCHE Nvehculo tipo marca modelo ao Matrcula

CAMION Nvehculo TIENE Nprop Nvehculo fechaCompra marca modelo peso ao

Paso a tablas de las categoras de la figura 7.

19

Potrebbero piacerti anche