Está en la página 1de 16

Modelo Entidad-Relacin Extendido

http://www-oei.eui.upm.es/Asignaturas/BD/DYOBD/ERE_texto.pdf

MODELO E!"#DAD-RELA$#O! E%"E!D#DO

1. Introduccin.................................................................................................................................2 2. Subclases, Superclases y Especializacin....................................................................................2 2.1. Herencia de atributos en la relacin Clase subclase.............................................................2 2.2. Especializacin.....................................................................................................................2 2.!. "ia#ra$as ERE.....................................................................................................................! 2.%. &tilizacin de subclases en los $odelos de datos.................................................................! !. 'eneralizacin.............................................................................................................................% %. Modelos de "atos con Especializacin y 'eneralizacin...........................................................( %.1. Restricciones de especializacin y #eneralizacin...............................................................( %.!. )erar*u+as de Especializacin, Red de Especializacin y Herencia M,ltiple.......................%.%. "ise.o /op-do0n 1rente a 2otto$-up..................................................................................3 (. Cate#or+as y Cate#orizacin......................................................................................................14 5. 6aso de ERE a $odelo Relacional.............................................................................................1% 5.1. Relaciones Superclase Subclase y Especializacin 'eneralizacin.................................1% 5.2. Subclases co$partidas........................................................................................................1( 5.!. Cate#or+as...........................................................................................................................1(

Modelo Entidad-Relacin Extendido

1. Introduccin.
El Modelo Entidad-Relacin Extendido incluye todos los conceptos del Entidad-Relacin e incorpora los conceptos de Subclase y superclase con los conceptos asociados de Especializacin y 'eneralizacin. 7tro nue8o concepto incluido por el ERE es el de Cate#or+a. 9sociado a estos conceptos est: el i$portante $ecanis$o de Herencia de atributos. Habr: *ue tener en cuenta *ue no existe una ter$inolo#+a estandarizada para estos conceptos, por lo *ue usare$os la $as di1undida.

2. Subclases, Superclases y Especializacin.


En el $odelo Entidad-Relacin, una entidad a#rupa un con;unto de ocurrencias de entidad del $is$o tipo. En $uc<os casos, estas ocurrencias se pueden a#rupar a su 8ez en otros subcon;untos *ue tienen un si#ni1icado propio para los propsitos de la 2ase de "atos y, por tanto, deber+an representarse de 1or$a expl+cita. 6or e;e$plo, la entidad EM6=E9"7 puede a su 8ez subdi8idirse en SECRE/9RI9, I>'E>IER7, )E?E, /@C>IC7, 9S9=9RI9"7, S&2C7>/R9/9"7, etc. El con;unto de ocurrencias de entidad en cada una de estas entidades ser: un subcon;unto de las ocurrencias de entidad de EM6=E9"7, ya *ue por e;e$plo, un in#eniero ta$biAn es un e$pleado. =la$are$os a cada uno de estos subcon;untos Subclases de la entidad EM6=E9"7 y a EM6=E9"7 una Supercalse de cada uno de estos subcon;untos. =la$are$os a la relacin existente entre las Superclases y las Subclases co$o relacin Clase Subclase. En el e;e$plo anterior, EM6=E9"7 SECRE/9RI9 y EM6=E9"7 /@C>IC7 son dos relaciones Clase Subclase. Hay *ue tener en cuenta *ue una ocurrencia de una Subclase representa el $is$o ob;eto real *ue al#una correspondiente a su Superclase, por e;e$plo la SECRE/9RI9 BConc<a =ecoB ser: ta$biAn la EM6=E9"7 BConc<a =ecoB. 6or tanto, la ocurrencia de Subclase es la $is$a *ue en la Superclase pero con un rol espec+1ico. &na ocurrencia de Subclase no tienen sentido si no es a su 8ez ocurrencia de Superclase. 6or otro lado, una ocurrencia de superclase puede ser a su 8ez ocurrencia de 8arias subclases o de nin#una. 6or e;e$plo, BRoberto MateB co$o ocurrencia de EM6=E9"7 puede a su 8ez pertenecer a subclases I>'E>IER7 y 9S9=9RI9"7. 2.1. Herencia de atributos en la relacin Clase/subclase. "ebido a *ue una subclase es a su 8ez parte se una superclase, la subclase tendr: sus atributos espec+1icos as+ co$o los atributos correspondientes a la superclase a la *ue pertenece. Esto *uiere decir *ue la ocurrencia de entidad de una subclase hereda los atributos correspondientes a la superclase a la *ue pertenece. "e la $is$a $anera <ereda las relaciones en las *ue su correspondiente superclase participa. 2.2. Especializacin. El proceso por el *ue se de1inen las di1erentes subclases de una superclase se conoce co$o espe&ia'i(a&i)n. El con;unto de subclases se de1ine bas:ndonos en caracter+sticas di1erenciadoras de las ocurrencias de entidad de la superclase. 6or e;e$plo, el con;unto se subclases CSECRE/9RI9, I>'E>IER7, /EC>IC7D es una especializacin de la superclase EM6=E9"7 $ediante la distincin del tipo de traba;o en cada ocurrencia de entidad. 6ode$os tener 8arias especializaciones de una $is$a entidad bas:ndonos en distintos criterios. 6or 2

Modelo Entidad-Relacin Extendido

e;e$plo, otra especializacin de EM6=E9"7 podr+a dar lu#ar a las subclases 9S9=9RI9"7 y S&2C7>/R9/9"7, dependiendo del tipo de contrato. 2.3. Diagramas ERE. =a 1i#ura 1 $uestra co$o se representa la especializacin en un dia#ra$a ERE. =as subclases de1inidas por una especializacin est:n unidas $ediante l+neas a un circulo, *ue conecta con la superclase. El s+$bolo de pertenencia en las l+neas entre las subclases y el circulo representan la direccin de la relacin clase subclase. =os tributos aplicables sola$ente a cada una de las subclases se unen a estas $ediante arcos Epor e;e$plo, *e'o&idad en la subclase SECRE/9RI9F. Estos atributos se deno$inan atri+utos espe&,fi&os de la subclase. =as subclases ta$biAn pueden tener relaciones especi1icas con otras entidades Epor e;e$plo, la relacin 6ER/E>ECE entre S&2C7>/R9/9"7 y EM6RES9F. El s+$bolo d del c+rculo se explicar: $as adelante. 2.4. Utilizacin de subclases en los modelos de datos. Hay dos razones principales para el uso de la relacin clase subclase en los $odelos de datos. =a pri$era es *ue ciertos atributos no pueden ser aplicados a todas las ocurrencias de entidad correspondiente a la superclase. &na subclase se de1ine para a#rupar a*uellas ocurrencias de entidad donde el atributo es aplicable. Suele ocurrir *ue las subclases co$parten la $ayor+a de los atributos correspondientes a la supercalse. 6or e;e$plo, SECRE/9RI9 tiene el atributo de *e'o&idad $ientras *ue I>'E>IER7 tiene tipo, sin e$bar#o a$bos co$parten los $is$os atributos de EM6=E9"7.

figura -. =a se#unda razn para la utilizacin de subclases es *ue al#unas relaciones pueden tener sentido solo para al#unas ocurrencias de entidad de la superclase. 6or e;e$plo, si solo los e$pleados subcontratados pueden pertenecer a otras e$presas, podre$os representar este <ec<o $ediante la creacin de la subclase S&2C7>/R9/9"7 y relacionarla con la entidad EM6RES9 $ediante la relacin 6ER/E>ECE, co$o se puede 8er en la 1i#ura 1. !

Modelo Entidad-Relacin Extendido

3. Generalizacin.
El proceso de especializacin expuesto en el punto anterior nos per$ite lo si#uienteG "e1inir un con;unto se subclases a partir de una entidad. 9sociar atributos espec+1icos a cada subclase. Establecer relaciones espec+1icas entre cada subclase con otras entidades o subclases.

6ode$os pensar en un proceso inverso de abstraccin en el cual supri$i$os las di1erencias entre las distintas entidades, identi1icando sus caracter+sticas co$unes, y #eneralizando dic<as entidades en una sola superclase de la cual las entidades iniciales ser+an subclases especiales. 6or e;e$plo, supon#a$os las entidades C7CHE y C9MI7> de la 1i#ura 2EaFH podre$os #eneralizarlas en la entidad IEHIC&=7, co$o se $uestra en la 1i#ura 2EbF. /anto C7CHE co$o C9MI7> ser:n a<ora subclases de la superclase #eneralizada IEHIC&=7. &sa$os el tAr$ino #eneralizacin para re1erirnos al proceso de de1inicin de una entidad #eneralizada a partir de unas entidades dadas.

Hay *ue tener en cuenta *ue el proceso de #eneralizacin puede ser 8isto 1uncional$ente co$o el proceso in8erso de especializacin. 6or tanto, en la 1i#ura 2 pode$os 8er CC7CHE, C9MI7>D co$o una especializacin de IEHIC&=7, as+ co$o IEHIC&=7 puede 8erse co$o la #eneralizacin de C7CHE y C9MI7>. "e la $is$a 1or$a pode$os 8er en la 1i#ura 1 a EM6=E9"7 co$o la #eneralizacin de SECRE/9RI9, /@C>IC7 e I>'E>IER7. En al#unas ocasiones se utilizan 1lec<as para representar en los dia#ra$as ERE cual a sido la tAcnica de identi1icacin de superclases clases. %

Modelo Entidad-Relacin Extendido

4. Modelos de Datos con Especializacin y Generalizacin.


=as subclases y superclases se corresponden con entidades y por tanto se representar:n con rect:n#ulos en el dia#ra$a ERE. 9<ora 8ere$os con $:s detalle las propiedades de especializacin y #eneralizacin. 4.1. Restricciones de especializacin generalizacin.

En los si#uientes p:rra1os 8ere$os las restricciones aplicables a una especializacin o a una #eneralizacinH sin e$bar#o, por abre8iar, nuestra 8isin se re1erir: sola$ente a la especializacin en 8ez de a a$bas tAcnicas. En #eneral podre$os tener 8arias especializaciones de1inidas sobre la $is$a entidad o superclase, co$o se 8e en la 1i#ura 1. En tal caso las ocurrencias de entidad pueden pertenecer a cada una de las especializaciones. Sin e$bar#o, una especializacin puede consistir en solo una subclase, tal co$o )E?E en la 1i#ura 1H en tal caso no uti'i(aremos 'a nota&i)n &,r&u'o. En al#unas especializaciones podre$os deter$inar exacta$ente *ue ocurrencias de entidad se con8ertir:n en ocurrencias de cada subclase, $ediante la utilizacin de una condicin en al#,n atributo de la superclase. /ales subclases se lla$an su+&'ases definidas por predi&ado Eo definidas por &ondi&i)nF. 6or e;e$plo, si la entidad EM6=E9"7 tiene el atributo tipotrabajo, co$o se 8e en la 1i#ura !, podre$os especi1icar una condicin de pertenencia a la subclase SECRE/9RI9 $ediante el predicado tipotraba;o J BSecretariaBF, al cual lla$are$os predi&ado de defini&i)n de la subclase. Esta condicin es una restriccin especi1icando *ue los $ie$bros de la subclase SECRE/9RI9 deben satis1acer el predicado y *ue todas las ocurrencias de la entidad EM6=E9"7 en las *ue el 8alor del atributo tipotraba;o sea BSecretariaB 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 espe&ia'i(a&i)n definida por atri+uto y el atributo ser: lla$ado atri+uto de defini&i)n de la especializacin. "e1inire$os una especializacin de1inida por atributo en el dia#ra$a colocando el atributo de de1inicin cerca del arco *ue 8a desde el c+rculo a la superclase, co$o puede 8erse en la 1i#ura !. Cuando no exista tal condicin para deter$inar la pertenencia a una superclase, la subclase se lla$ar: subclase definida por e' usuario. En tales subclases, la pertenencia 8endr: deter$inada por los usuarios de la 2ase de "atos cuando realicen una operacin de insercin de una ocurrencia en la subclaseH por tanto, el usuario especifica la pertenencia de cada ocurrencia individualmente y no $ediante una condicin *ue pueda ser e8aluada auto$atica$ente

Modelo Entidad-Relacin Extendido

figura . Se pueden aplicar dos restricciones $as a la especializacin. =a pri$era es la restri&&i)n de desuni)n, la cual especi1ica *ue las subclases de la especializacin deben estar separadas. Esto si#ni1ica *ue una ocurrencia de la entidad puede ser $ie$bro de co$o $:xi$o una de las subclases de la especializacin. &na especializacin de1inida por atributo i$plica la restriccin dedesunin, si el atributo para de1inir el predicado de pertenencia es si$ple. la 1i#ura ! $uestra este caso, donde la d del c+rculo denota la desunin. /a$biAn usare$os la notacin d para especi1icar *ue una especializacin de1inida por el usuario debe tener la restriccin de desunin asociada, co$o puede 8erse en la especializacin C9S9=9RI9"7, S&2C7>/R9/9"7D de la 1i#ura 1. Si las subclases no son desunidas, sus con;untos de ocurrencias pueden solaparse, esto es, la $is$a ocurrencia de entidad puede ser $ie$bro de $:s de una subclase de la especializacin. Este caso, *ue es el caso por de1ecto, se representa $ediante una O en el circulo, co$o se $uestra en el e;e$plo de la 1i#ura %.

?i#ura %. =a se#unda restriccin a la especializacin se lla$a la restri&&i)n de tota'idad, la cual puede ser parcial o total. &na restriccin de espe&ia'i(a&i)n tota' especi1ica *ue cada ocurrencia de entidad de la superclase debe ser $ie$bro de al#una subclase de la especializacin. 6or e;e$plo, si cada EM6=E9"7 debe se 9S9=9RI9"7 o S&2C7>/R9/9"7, entonces la especializacin C9S9=9RI9"7, S&2C7>/R9/9"7D de la 1i#ura 1 es una especializacin 5

Modelo Entidad-Relacin Extendido

total de EM6=E9"7H esto se representa en el dia#ra$a ERE usando una l+nea doble entre el c+rculo y la superclase. &na l+nea sencilla se utiliza para representar una espe&ia'i(a&i)n par&ia', la cual per$ite *ue una ocurrencia de entidad no pertenezca a nin#una de las subclases. 6or e;e$plo, si al#una ocurrencia de entidad EM6=E9"7 no pertenece a nin#una de las subclases CSECRE/9RI9, I>'E>IER7, /@C>IC7D de las 1i#uras 1 y !, entonces la especializacin es parcial. Hay *ue tener en cuenta *ue las restricciones de desunin y totalidad son independientes, por tanto <abr: cuatro tipos de especializacinG "esunin, total "esunin, parcial Solapa$iento, total Solapa$iento, parcial

Co$o es l#ico, las restricciones correctas 8ienen dadas por la naturaleza del proble$a real aplicado a cada especializacin, si e$bar#o, la #eneralizacin en una superclase suele ser total, ya *ue la superclase se deri8a de las subclases y, por tanto, contiene slo ocurrencias de entidad *ue est:n en las subclases.

4.2. Reglas de insercin

borrado para Especializacin

!eneralizacin.

Co$o consecuencia de las restricciones de1inidas anterior$ente, aparecen re#las para la insercin y borrado de Especializacin Ey 'eneralizacinF. 9l#unas de esas re#las son las si#uientesG 2orrar una tupla de una superclase i$plica el borrado auto$:tico en todas las subclases a las *ue pertenezca. Insertar una tupla en una superclase i$plica *ue tiene *ue ser obli#atoria$ente insertada en todas las subclases de1inidas por predicado en las *ue satis1a#a el predicado de de1inicin. Insertar una tupla en una superclase de una especializacin total i$plica una insercin obli#atoria en al $enos una de las subclases de la especializacin.

Existen otras re#las correspondientes a los distintos tipos de especializacin y a las operaciones de insercin y borrado.

Modelo Entidad-Relacin Extendido

4.3. "erar#u$as de Especializacin% Red de Especializacin

Herencia

&'ltiple.

/igura 0 &na subclase puede, a su 8ez, tener $:s subclases especi1icadas a partir de ella, 1or$ando una ;erar*u+a o red de especializaciones. 6or e;e$plo, en la 1i#ura ( I>'E>IER7 es una subclase de EM6=E9"7 y es a su 8ez superclase de )E?E "E I>'E>IERI9 H esto representa la restriccin del $undo real por la *ue un ;e1e de in#enieria debe ser un in#eniero. &na 1erar2u,a de espe&ia'i(a&i)n tiene la restriccin cada subclase participa Eco$o subclaseF en una relacin clase subclase. Co$o contraste, para una red de espe&ia'i(a&i)n una subclase puede ser subclase en $as de una relacin clase subclase. 6or consi#uiente la 1i#ura ( representa una red de especializacin. =a 1i#ura 5 $uestra otra red de especializacin con $:s de un ni8el. Este dia#ra$a podr+a ser parte del es*ue$a conceptual de una 2ase de "atos de una uni8ersidad. =a estructura ser+a una ;erar*u+a si no 1uese por la subclase 9L&"9>/E, la cual es subclase en dos relaciones clase subclase distintas. /odas las personas pertenecientes a la 2ase de "atos son $ie$bros de la entidad 6ERS7>9, la cual se especializa en las subclases CEM6=E9"7, ES/&"I9>/ED. Esta especializacin tiene solapa$iento. 6or e;e$plo, un e$pleado puede a su 8ez ser estudiante. =a subclase ES/&"I9>/E es superclase de la especializacin C"E /?C, "E C&RS7S D, $ientras *ue EM6=E9"7 es superclase de la especializacin C=927R9=, "7CE>/E, 9L&"9>/ED. Hay *ue tener en cuenta *ue 9L&"9>/E es ta$biAn subclase de ES/&"I9>/E. ?inal$ente, 9L&"9>/E es superclase de la especializacin CI>IES/I'9CI7>, "7CE>CI9D.

Modelo Entidad-Relacin Extendido

En tal red o ;erar*u+a de especializacin, una subclase <ereda no sola$ente los atributos de su superclase directa, sino ta$biAn todos los de sus predecesores <asta la ra+z. 6or e;e$plo, una

/igura 3. ocurrencia de entidad "E /?C <ereda los 8alores de sus atributos co$o ocurrencia de ES/&"I9>/E y 6ERS7>9. Hay *ue tener en cuenta *ue una ocurrencia de entidad puede existir en distintas <o;as de la ;erar*u+aH por e;e$plo, un $ie$bro de "E /?C puede ta$biAn ser $ie$bro de I>IES/I'9CI7>. &na subclase con $:s de una superclase se lla$a su+&'ase &ompartida. 6or e;e$plo, si cada )E?E "E I>'E>IERI9 debe ser un I>'E>IER7 pero ta$biAn un 9S9=9RI9"7 y )E?E, entonces )E?E "E I>'E>IERI9 ser: una subclase co$partida de las tres superclases E?i#ura (.F. Esto nos lle8a al concepto de heren&ia m4'tip'e, ya *ue la subclase co$partida )E?E "E I>'E>IERI9 <ereda directa$ente atributos de 8arias clases. Hay *ue tener en cuenta *ue una subclase co$partida i$plica una redH si no existen subclases co$partidas estare$os en presencia de una ;erar*u+a en 8ez de una red. 9un*ue se <a utilizado la especializacin para de1inir estos conceptos, la #eneralizacin es i#ual$ente aplicable a estos. 6or tanto podre$os <ablar de la $is$a 1or$a de 1erar2u,a de genera'i(a&i)n y red de genera'i(a&i)n. 4.4. Dise(o )op*do+n ,rente a -ottom*up. En el proceso de especializacin, sole$os e$pezar con una entidad y a continuacin de1ini$os las subclases de la entidad $ediante especializaciones sucesi8asH esto es, de1ini$os repetiti8a$ente $:s a#rupa$ientos espec+1icos a partir de la entidad. 6or e;e$plo, durante el 3

Modelo Entidad-Relacin Extendido

dise.o de la red de especializacin de la 1i#ura 5, pode$os especi1icar pri$ero la entidad 6ERS7>9 para la 2" de una uni8ersidad. Entonces descubrire$os *ue se 8an a representar dos tipos di1erentes de personas en la 2"G e$pleados de la uni8ersidad y estudiantes. 6ara este propsito creare$os la especializacin CEM6=E9"7S, ES/&"I9>/ESD y ele#ire$os la restriccin de solapa$iento por*ue una persona puede pertenecer a a$bas subclases. Entonces especializare$os EM6=E9"7 en C=927R9=, "7CE>/E, 9L&"9>/ED, y especializare$os ES/&"I9>/E en C/?C,C&RS7D. ?inal$ente especializare$os 9L&"9>/E en CI>IES/I'9CI7>,"7CE>CI9D. Esta especializacin sucesi8a corresponde a un proceso de refinamiento &on&eptua' top-down durante el dise.o del es*ue$a conceptual. Hasta a*u+, tendre$os una ;erar*u+aH descubrire$os entonces *ue 9L&"9>/E es una subclase co$partida, desde el $o$ento en *ue es ta$biAn una subclase de ES/&"I9>/E, lle8:ndonos esto a una red. Es posible lle#ar a la $is$a ;erar*u+a o red desde otra direccin. En tal caso el proceso conlle8a #eneralizacin en 8ez de especializacin y corresponde a una s,ntesis &on&eptua' bottom-up. En tAr$inos estructurales, las ;erar*u+as o redes resultantes de a$bos procesos puede se idAnticasH la ,nica di1erencia radica en la $anera o el orden en *ue se especi1ican las clases y subclases del es*ue$a. En la pr:ctica, es 1recuente *ue no se utilice sola$ente especializacin o sola$ente #eneralizacin, sino una co$binacin de a$bos procesos. En este caso, se incorporan continua$ente nue8as clases a la ;erar*u+a o la red se#,n se 8an <aciendo 8isibles para usuarios y dise.adores.

5.

ate!or"as y ate!orizacin.

/odas las relaciones superclase subclase 8istas <asta a<ora tienen superclase nica. Incluso la subclase co$partida )E?E "E I>'E>IERI9 en la red de la 1i#ura ( es una subclase de tres relaciones superclase subclase distintas, donde cada una de las relaciones tienen una superclase ,nica. En al#unos casos, sin e$bar#o, se necesita representar una relacin superclase clase si$ple con $as de una superclase, donde las superclases son di1erentes entidades. En este caso lla$a$os a la subclase &ategor,a. 6or e;e$plo, supon#a$os *ue tene$os tres entidadesG 6ERS7>9, 29>C7 y EM6RES9. En la 2ase de "atos de 8e<iculo, un due.o de un 8e<iculo puede ser una persona, un banco o una e$presa. >ecesitare$os crear una clase *ue conten#a ocurrencias de las tres entidades para dese$pe.ar el papel de propietario. Se crear: con este 1in una cate#or+a propietario *ue sea una subclase de la unin de la clases EM6RES9, 29>C7 y 6ERS7>9. Representare$os las Cate#or+as en el dia#ra$a ERE co$o se $uestra en la 1i#ura K. =as superclase EM6RES9, 29>C7 y 6ERS7>9 se conectan al c+rculo con el s+$bolo 5 EuninF. &n arco con el s+$bolo de pertenencia conecta el circulo con la cate#or+a EsubclaseF 6R76IE/9RI7. Si es necesario un predicado de de1inicin, Aste se coloca cerca de la l+nea de la superclase a la cual se aplica el predicado. En la 1i#ura - tene$os dos cate#or+asG 6R76IE/9RI7, la cual es una subclase de la unin de 6ERS7>9, 29>C7 y EM6RES9H y IEHIC&=7 M9/RIC&=9"7, la cual es una subclase de la unin de C7CHE y C9MI7>. &na cate#or+a tiene dos o $:s superclases *ue pueden representar distintas entidades, $ientras *ue las otras relaciones superclase subclase tienen una sola superclase. 6ode$os co$parar una 14

Modelo Entidad-Relacin Extendido

cate#or+a, co$o 6R76IE/9RI7 en la 1i#ura K, con la subclase co$partida )E?E "E I>'E>IERI9 se la 1i#ura (. =a se#unda es una subclase de cada una de las tres superclases I>'E>IER7, )E?E y 9S9=9RI9"7, de $anera *ue una ocurrencia de )E?E "E I>'E>IERI9 debe existir en las tres. Esto representa la restriccin de *ue un ;e1e de in#enier+a debe se un I>'E>IER7, un )E?E, y un 9S9=9RI9"7H esto es, )E?E "E I>'E>IERI9 es un subcon;unto de la interseccin de las tres subclases. 6or otro lado, una cate#or+a es un subcon;unto de la unin de sus superclases. 6or tanto, una ocurrencia de entidad *ue es $ie$bro de 6R76IE/9RI7, debe existir al menos en una de las superclases, pero no tiene *ue ser $ie$bro de todas. Esto representa la restriccin de *ue un 6R76IE/9RI7 puede ser una EM6RES9, un 29>C7, o una 6ERS7>9. en la 1i#ura K. En este e;e$plo, co$o en la $ayor+a de los casos en los *ue se usan cate#or+as, una ocurrencia de la cate#or+a es $ie$bro de exactamente una de las superclases.

/igura 6. Dos &ategor,as: 7RO7#E"AR#O 8 9E:#$5LO MA"R#$5LADO.

=a <erencia de atributos 1unciona de 1or$a $as selecti8a en las cate#or+as. 6or e;e$plo, en la 1i#ura K cada 6R76IE/9RI7 <ereda los atributos de una EM6RES9, una 6ERS7>9, o un 29>C7, dependiendo de la superclase a la *ue pertenezca. Esto se conoce co$o heren&ia se'e&ti*a. 6or otro lado, una subclase co$partida co$o )E?E "E I>'E>IERI9 E1i#ura (F, <ereda todos los atributos de sus superclases 9S9=9RI9"7, I>'E>IER7 y )E?E. Es interesante se.alar la di1erencia existente entre la cate#or+a IEHIC&=7 M9/RIC&=9"7 11

Modelo Entidad-Relacin Extendido

de la 1i#ura K y la superclase #eneralizada IEHIC&=7 de la 1i#ura 2b. En la 1i#ura 2b, cada coc<e y cada ca$in son IEHIC&=7S, pero en la 1i#ura K, la cate#or+a IEHIC&=7 M9/RIC&=9"7 incluye al#unos coc<es o ca$iones, pero no necesaria$ente todos Eal#unos podr+an no estar $atriculadosF. En #eneral, una especializacin o una #eneralizacin co$o la de la 1i#ura 2b, si 1uese parcial, no i$pedir+a la participacin de otros IEHIC&=7S $ediante la restriccin de otras entidades, co$o M7/7S. Sin e$bar#o, una cate#or+a co$o IEHIC&=7 M9/RIC&=9"7 de la 1i#ura K i$plica *ue solo coc<es y ca$iones ,pero no otras entidades, pueden ser $ie$bros de IEHIC&=7 M9/RIC&=9"7.

/igura ;. $ategor,as. EaF Cate#or+a parcial /I/&=9R "E C&E>/9 *ue es un subcon;unto de la unin de la dos entidades EM6RES9 y 6ERS7>9. EbF Cate#or+a total 6R76IE"9" y una #eneralizacin si$ilar. &na cate#or+a puede ser tota' o par&ia'. 6or e;e$plo, /I/&=9R "E C&E>/9 es una cate#or+a parcial de1inida por predicado en la 1i#ura -EaF, donde c1 y c2 son las condiciones del predicado *ue especi1ican *uA ocurrencias de EM6RES9 y 6ERS7>9, respecti8a$ente, son $ie$bros de /I/&=9R "E C&E>/9. Sin e$bar#o, la cate#or+a 6R76IE"9" de la 1i#ura -EbF es total por*ue cada edi1icio o 1inca debe ser $ie$bro de 6R76IE"9"H esto se representa $ediante una l+nea doble entre el c+rculo y la cate#or+a. =as cate#or+as parciales se representan $ediante una l+nea si$ple entre la cate#or+a y el c+rculo, co$o se 8e en las 1i#uras K y -EaF. =as superclases de una cate#or+a pueden tener di1erentes cla8es, co$o se 8e en la cate#or+a 6R76IE/9RI7 de la 1i#ura KH o pueden tener las $is$as cla8es co$o se 8e en la cate#or+a IEHIC&=7 M9/RIC&=9"7. Hay *ue tener en cuenta *ue, en el caso de *ue la cate#or+a sea 12

Modelo Entidad-Relacin Extendido

total, puede ser representada co$o una especializacin o una #eneralizacin, co$o $uestra la 1i#ura -EbF. En tal caso la eleccin de cual utilizar es sub;eti8a. Si dos clases representan las $is$as entidades y co$parten $uc<os atributos, incluyendo la $is$a cla8e, es pre1erible la utilizacin de especializacin #eneralizacinH en otro caso la cate#orizacin es $:s apropiada.

1!

Modelo Entidad-Relacin Extendido

#. $aso de E%E a &odelo %elacional.


El paso de ERE a $odelo Relacional es una extensin de las nor$as del paso Entidad-Relacin. =as re#las co$ple$entarias <acen re1erencia a los ele$entos propios del ERE y son las si#uientesG ..1. Relaciones /uperclase//ubclase Especializacin/ !eneralizacin.

Existen cuatro opciones para realizar el paso a $odelo relacional de las relaciones Superclase Subclase correspondientes a Epecializaciones o 'eneralizaciones. O7$#O! A: Crear una relacin para la superclase, con sus atributos correspondientes y una relacin para cada subclase con sus atributos $as la cla8e pri$aria de la superclase. Esta opcin es 8:lida para especializaciones parciales o totales y con restriccin de desunin o solapa$iento. O7$#O! B: Crear para cada subclase una relacin con los atributos de la superclase $as los atributos propios, donde la cla8e pri$aria ser: la de la superclase. Esta opcin slo es 8:lida para las especializaciones con restriccin de totalidad y desunin ya *ue, si una ocurrencia de la superclase no pertenece a nin#una de las subclases, se pierdeH y si pertenece a $:s de una, sus datos aparecen de 1or$a redundante en $:s de una relacin. 9de$:s tiene el incon8eniente de *ue. al buscar una ocurrencia cual*uiera de la superclase, tendre$os *ue recorrer todas las relaciones. O7$#O! $: Crear una sola relacin con todos los atributos de la superclase y las subclases $as un atributo / *ue indica la subclase a la *ue la tupla pertenece. Esto corresponde a una especializacin de clases desunidas y puede #enerar $uc<os 8alores nulos. Esta opcin no es apropiada cuando se utilizan $uc<os atributos de de1inicin para la especializacin. Si se utilizan pocos atributos de especi1icacin, esta opcin es pre1erible a las opciones 9 y 2, ya *ue, no re*uiere la utilizacin de )7I> para la con1or$acin de la superclase co$pleta. O7$#O! D: Crear una sola tabla con todos los atributos de la superclase $as los atributos de las subclases, $as unos atributos /i cuyo 8alor l#ico nos indicar: a *uA subclase pertenece la tupla. Esta opcin corresponde una especializacin con solapa$iento. aF EM6=E9"7 ">I 6ila 9pe1 9pe2 ?ec<a "ir tipo/raba;o

SECRE/9RI9 ">I Ielocidad /EC>IC7 ">I >i8el

I>'E>IER7 ">I /ipo 1%

Modelo Entidad-Relacin Extendido

bF C7CHE >M8e<iculo C9MI7> >M8e<iculo Matr+cula 6recio >Me;es 6eso Matr+cula 6recio I.$ax >Mpas

cF EM6=E9"7 ">I dF 6ERS7>9 ">I >o$bre "ireccin ?ec<aNn Sexo E$pleado Sueldo Estudiante Especialidad 6ila 9pe1 9pe2 ?ec<a "ir tipo/raba;o Ielocidad >i8el Tipo

Op&iones en e' paso de ERE a re'a&iona' para genera'i(a&i)n 8 espe&ia'i(a&i)n. aF 6aso a tablas de la 1i#ura ! $ediante la opcin 9. bF 6aso a tablas de la 1i#ura 2EbF $ediante la opcin 2. cF 6aso a tablas de la 1i#ura ! $ediante la opcin C. dF 6aso a tablas de la 1i#ura % $ediante la opcin ".

..2. /ubclases compartidas. &na subclase co$partida es subclase de 8arias superclases *ue tendr:n la $is$a cla8e, ya *ue si no, la subclase ser+a una cate#or+a. =as subclases co$partidas se pasan a relaciones de la $is$a $anera *ue las subclases nor$ales, aun*ue se suele utilizar la opcin 9 del punto 5.1.

..3. Categor$as. &na cate#or+a es una subclase de la unin de dos o $:s superclases *ue pueden tener di1erentes cla8es ya *ue pueden representar di1erentes entidades. En este caso es necesario sintetizar una &'a*e su+rogada, *ue identi1i*ue cada una de las ocurrencias de la cate#or+a y *ue ser: <eredada co$o cla8e 1or:nea por cada una de las superclases. 6or cuestiones de e1iciencia a la <ora de realizar los ;oins entre la cate#or+a y sus correspondientes clases, se a.adir: un atributo a la tabla de la cate#or+a *ue exprese a *ue subclase pertenece cada t,pla en particular. 1(

Modelo Entidad-Relacin Extendido

6ERS7>9 ">I 29>C7 >o$bre EM6RES9 >o$bre "ir >Mprop "ir >Mprop >Mcarnet >o$bre "ir >Mprop

6R76IE/9RI7 >Mprop /ipo6rop

IEHIC&=7NM9/RIC&=9"7 >M8e<+culo C7CHE >M8e<+culo tipo $arca $odelo a.o Matr+cula

C9MI7> >M8e<+culo /IE>E >Mprop >M8e<+culo 1ec<aCo$pra $arca $odelo peso a.o

7aso a ta+'as de 'as &ategor,as de 'a figura 6.

15

También podría gustarte