MODELO DE OBJETOS
SEMÁNTICOS
Francisco Moreno
10/3/2015
Curso Bases de Datos
1
Introducción
• Propuesto por Michael Hammer y Dennis
McLeod*.
• Es un modelo conceptual alternativo al modelo
E-R y al diagrama de clases de UML.
* Database description with SDM: A semantic database model, ACM
Transactions on Database Systems, Sept. 1981.
10/3/2015
Curso Bases de Datos
2
Introducción
• Sus principales elementos son los Objetos
Semánticos (OS), es decir, objetos con
“significado” , “cosas” identificables y de
interés para la organización.
• Los OS son análogos a las clases del
modelo objetual y a las entidades del
modelo E-R.
10/3/2015
Curso Bases de Datos
3
Objetos semánticos
• OS: Conjunto de atributos que describen
suficientemente una identidad bien definida.
• Los OS pueden ser físicos (una persona) o
abstractos (una carrera universitaria).
• Los OS son los sustantivos sobre los cuales
se produce información.
10/3/2015
Curso Bases de Datos
4
Objetos semánticos
• Atributos: Definen las características de un OS.
Tipos de atributos:
• Simples: tienen un solo valor*. Ej: teléfono.
• Grupales: están compuestos por otros atributos.
Ej: dirección (compuesta por bloque y oficina).
• De objetos semánticos: relacionan un OS con
otro OS (enlaces entre OS).
* Un valor atómico desde el punto de vista del modelo.
10/3/2015
Curso Bases de Datos
5
Ejemplos de atributos
Objeto
semántico
(caja con
bordes rectos)
DEPARTAMENTO
Nombre
Atributos simples
Dirección
Bloque
Atributo
grupal
Oficina
Teléfono
Fax
Atributos de objetos
Semánticos
PROFESOR
ESTUDIANTE
10/3/2015
(No confundir con los
subtipos del modelo E-R)
Curso Bases de Datos
6
Cardinalidad de los atributos
• Indica el número mínimo y máximo de
instancias que deben existir en cada
atributo para que el OS sea válido.
• Se representa mediante dos números
subíndices separados por un punto:
NombreAtributomin.max
• min  0 y max  1.
• min  max.
• El subíndice N (en max) significa muchos
10/3/2015
Curso Bases de Datos
7
Cardinalidad de los atributos
En este ejemplo, cada
departamento debe tener
mínimo un número
telefónico (y puede tener
muchos más), puede
tener o no un número de
fax (y solo uno), debe
tener mínimo un
estudiante (y puede tener
muchos más).
10/3/2015
Curso Bases de Datos
DEPARTAMENTO
Nombre1.1
Dirección
Bloque1.1
Oficina1.1
0.1
Teléfono1.N
Fax0.1
PROFESOR
1.N
ESTUDIANTE
1.N
8
Instancia de un OS Departamento
Sistemas
Bloque
Oficina
Nombre
M8A
Dirección
201
4255350, 4255351
4259999
13, George Michael, …
34, Björk, …
65, Fernando Arango, …
898, Carmen Electra, …
876, Kim Kardashian, …
10/3/2015
Curso Bases de Datos
Teléfonos
Fax
Profesores (solo se
muestra su código y
nombre)
Estudiantes (solo se
muestra su carné y
nombre)
9
Identificador único
• Identificador único de un OS: Uno o más
atributos que se emplean para diferenciar las
instancias de un OS.
• Se representa con la palabra ID subrayada.
• Su cardinalidad es usualmente 1.1
• Si está conformado por más de un atributo,
se representará en un atributo grupal y se
denomina identificador único grupal.
10/3/2015
Curso Bases de Datos
10
Identificador no único y
multivaluado
• El modelo de OS considera identificadores no únicos: son
atributos, que aunque no son únicos, los usuarios los
suelen emplear para identificar a las instancias de un OS,
por ejemplo, Nombre de persona. Se simbolizan con ID
pero sin subrayado.
• Un ejemplo, poco común, de un identificador único
multivaluado (cardinalidad  1.1).
EMPLEADO
ID Código1.N
10/3/2015
Suponiendo que cada
empleado puede tener varios
códigos y que no hay códigos
repetidos en la empresa
Curso Bases de Datos
11
OS pareados
• Sobre los atributos de tipo de objeto
semántico: Si un OS w contiene a un OS z
entonces el OS z debe contener al OS w.
Esto se denomina OS pareados.
10/3/2015
Curso Bases de Datos
12
Ejemplo: OS pareados
DORMITORIO
ID Nombre 1.1
Teléfono 0.1
ESTUDIANTE
10/3/2015
ESTUDIANTE
ID Carné 1.1
Nombre 1.1
0.N
Curso Bases de Datos
DORMITORIO
0.1
13
Comparar estos dos modelos:
DORMITORIO
ID Nombre
1.1
Teléfono 0.1
Pago
ESTUDIANTE
Cuota 1.1
DORMITORIO
ID Nombre
1.1
Teléfono 0.1
ESTUDIANTE
1.1
Cuota 0.N
0.N
2
1
10/3/2015
0.N
Curso Bases de Datos
14
Comparar estos
dos modelos:
CUENTA
ID Código1.1
Fecha 1.1
CUENTA
DETALLE
1.N
Identificador
único grupal
ID Código1.1
Fecha 1.1
DETALLE
Detalle
ID IDdelDetalle
Servicio1.1
CUENTA
Precio1.1
Servicio 1.1
1.N
10/3/2015
1
1.1
1.1
Precio 1.1
Curso Bases de Datos
2
15
Ejemplo: Muchos a muchos
LIBRO
AUTOR
ID ISBN1.1
ID CodAutor1.1
ID Título 1.1
Nombre 1.1
AUTOR
Pseudónimo 0.N
1.N
LIBRO
1.N
Identificador no
único
10/3/2015
Curso Bases de Datos
16
Análogo a la entidad
intersección del modelo E-R.
Un OS de asociación: Vuelo
VUELO
PILOTO
ID NroLicencia 1.1
Nombre 1.1
VUELO
ID Número1.1
AVIÓN
Fecha 1.1
ID Nro1.1
AVIÓN
1.1
Modelo 1.1
VUELO
1.N
PILOTO
1.N
1.1
Un mismo piloto y avión podrían aparecer varias veces en la
misma fecha…Si se desea evitar esto, ver el siguiente modelo.
10/3/2015
Curso Bases de Datos
17
Un OS de asociación: Vuelo
VUELO
Quedaría como un
identificador alternativo
(no hay notación
especial para indicarlos,
se deben documentar)
Número 1.1
ID IdVuelo
Fecha 1.1
AVIÓN
PILOTO
10/3/2015
1.1
1.1
1.1
Curso Bases de Datos
Acá la combinación:
(fecha, piloto y avión)
no se repite
18
Sinónimos
PROFESOR
ID Nroregistro
1.1
Nombre 1.1
ASESORADO
ESTUDIANTE
ID Carné 1.1
Nombre 1.1
1.N
ASESOR
1.1
Donde ASESORADO = ESTUDIANTE y ASESOR = PROFESOR.
Los sinónimos dan contexto a la relación entre PROFESOR y ESTUDIANTE
10/3/2015
Curso Bases de Datos
19
Supertipos y Subtipos en el modelo OS:
Parent
Subtype
EMPLEADO
ID Código 1.1
Nombre 1.1
Salario 1.1
ADMINISTRADOR
TipodeAdministrador 1.1
EMPLEADO
ADMINISTRADOR
PROGRAMADOR
0.ST
0.ST
P
PROGRAMADOR
Lenguaje 0.N
EMPLEADO
P
Heredados por los
subtipos
10/3/2015
No exclusivo
Curso Bases de Datos
El cero indica que el
subtipo es opcional
(es lo usual)
20
Supertipos y Subtipos en el modelo OS:
EMPLEADO
ID Código 1.1
Nombre 1.1
Salario 1.1
ADMINISTRADOR
TipodeAdministrador 1.1
EMPLEADO
ADMINISTRADOR
PROGRAMADOR
PROGRAMADOR
Lenguaje 0.N
0.ST
0.ST
0.1.1
Indica si se
requiere el
grupo
10/3/2015
P
Mínimo # de subtipos
simultáneos permitido
EMPLEADO
P
Máximo # de subtipos
simultáneos permitido
Exclusivo
Curso Bases de Datos
21
Supertipos y Subtipos en el modelo OS:
• Evitar contradicciones en la notación:
– el mínimo de subtipos permitido debe ser
menor o igual que el máximo permitido
– debe haber consistencia con los subíndices
internos de los subtipos:
EMPLEADO
ID Código 1.1
ADMINISTRADOR
PROGRAMADOR
En este ejemplo,
un empleado
nunca podría ser
programador
1.ST
0.ST
0.1.1
10/3/2015
Curso Bases de Datos
22
Comparación modelo E-R vs.
modelo de OS
• Similitudes:
– Ambos son herramientas para la comprensión y
documentación de la estructura del “mundo” de los
usuarios
– Ambos tratan de modelar la estructura de las “cosas”
del mundo del usuario y las relaciones entre ellas
– Ambos tratan de identificar los elementos de interés
para la organización y la forma de describirlos
(entidades vs. OS, atributos, relaciones vs. atributos de
tipo de objeto semántico)
10/3/2015
Curso Bases de Datos
23
Comparación modelo E-R vs.
modelo de OS
• Diferencias:
– Los OS son “semánticamente completos”, es decir, si se
pide mostrar un OS PEDIDO este contiene “todo” lo que
incluye un pedido. En el modelo E-R el PEDIDO está
“disperso”, fragmentado a través del modelo.
– Los OS incluyen atributos multivaluados a diferencia del
modelo E-R donde todos los atributos son simples.
– El modelo de OS no posee arcos: se tratan de simular con
supertipos y subtipos con construcciones artificiosas que
pueden oscurecer el modelo…
10/3/2015
Curso Bases de Datos
24
Descargar

MODELO DE OBJETOS SEMANTICOS