El caso práctico 2 describe cómo modelar los datos de seguros de automóvil.
Una póliza de seguros de automóvil contiene información del titular de la póliza y de la propia póliza. Por ejemplo, la información del titular de la póliza incluye el nombre, la dirección y el número de teléfono del cliente. La póliza la define un número de póliza, la descripción del vehículo, que incluye el número de identificación del vehículo (NIV) y el tipo de vehículo, deducibles por pérdida total y de choque, descuentos del conductor, etcétera. Algunos de estos elementos de información tienen un número de valores fijo, mientras que otros tienen un número de valores variable. Cada póliza de automóvil tiene un número de póliza; sin embargo, distintos titulares de pólizas pueden diferir en el número y tipo de descuentos que reciben. En la Figura 1 se muestra un formulario de seguro de automóvil de ejemplo.

Para modelar este tipo de datos puede utilizar varios métodos. Considere la situación en la que crea un tipo de elemento denominado Titular de la póliza, tal como se muestra en la Figura 2. Este tipo de elemento contiene atributos como nombre, dirección y número de teléfono. Si es el único tipo de elemento que está definido, este modelo no es bueno porque no incluye contenido sobre la póliza. Es simplemente un registro que contiene información sobre clientes con los que una empresa hace negocios.

Podría crear un tipo de elemento denominado Póliza de automóvil, tal como se muestra en la Figura 3. El componente raíz podría contener atributos como el número de póliza, los que describen al titular de la póliza, como el nombre, la dirección y el número de teléfono, y los que describen la póliza, como el NIV y el tipo de vehículo.
Puede crear un componente hijo para este tipo de elemento denominado Código de descuento. Puesto que existen varios valores para los códigos de descuento (normalmente un cliente puede tener más de uno), un componente hijo resulta un lugar adecuado para incluir este tipo de información. Aunque este modelo sí que contiene información sobre el titular de la póliza y la propia póliza, no es el mejor modelo a causa del problema que supone la duplicación de información.

Considere la situación en que un cliente es propietario de más de un coche. Existe un número de póliza distinto para cada coche del cliente. Si existen tres números de póliza para el titular de la póliza, existirán tres copias de la dirección y número de teléfono del titular de la póliza.
Para eliminar el problema de la duplicación, puede crear dos tipos de elemento: Titular de la póliza (con atributos como nombre, dirección y número de teléfono) y Póliza de automóvil. En lugar de poner un atributo de dirección en el tipo de elemento Póliza de automóvil, puede crear un atributo de referencia que apunte al tipo de elemento Titular de la póliza, tal como se muestra en la Figura 4.

Con el cliente de administración del sistema, cree un atributo de referencia denominado Titular de la póliza en la ventana Nuevo atributo de referencia. En la página Atributos del cuaderno Nueva definición de tipo de elemento del tipo de elemento Póliza de automóvil, puede asociar el atributo de referencia con este tipo de elemento.
Una de las ventajas potenciales de los atributos de referencia es la integridad referencial. Si selecciona la norma de supresión Restringir en la página Atributos, podrá evitar que se suprima un titular de póliza cuando aún exista una póliza.
Es posible que haya clientes que tengan más de un tipo de póliza. Por ejemplo, pueden tener un seguro de automóvil, un seguro de vivienda y un seguro de vida. Otro modo de utilizar los componentes hijo es crear un tipo de elemento denominado Titular de la póliza que tenga un componente hijo denominado Póliza. El componente hijo Póliza puede contener un atributo de referencia que se utilice para apuntar a un elemento del tipo de elemento Póliza de automóvil, Póliza de vivienda o Póliza de vida. Estos tres tipos de elemento contienen atributos que los describen. La cardinalidad del componente hijo determina cuántas pólizas puede tener un cliente.
Otro método que puede utilizar para crear una relación entre tipos de elemento es el enlace, que se muestra en la Figura 5. Utilizando el cliente de administración del sistema, cree el tipo de elemento Titular de la póliza y clasifíquelo como tipo de elemento de documento. Las carpetas de Titular de la póliza están enlazadas a elementos de otros tipos de elemento, como Póliza de automóvil y Póliza de vivienda, que contienen información sobre estas pólizas en particular.

Las aplicaciones cliente IBM® Content Manager permiten enlazar documentos o carpetas a carpetas. Estos elementos no se almacenan en un solo sitio y no están ubicados dentro de las carpetas como en un sistema de archivos, sino que están enlazados a las carpetas. Los documentos y las carpetas se pueden enlazar a varias carpetas, considerando que los documentos y las carpetas se encuentran normalmente en un solo sitio en un sistema de archivos. Utilizando un cliente web o el Cliente para Windows, los usuarios pueden pegar documentos o añadirlos a carpetas, con lo que automáticamente se crea el enlace.
Los tipos de elemento de documento constan normalmente de varias partes de documento. Con el cliente de administración del sistema, puede asociar partes de documento con tipos de elemento de documento en la página Gestión de documentos.
Las aplicaciones cliente IBM Content Manager requieren que cada tipo de elemento de documento tenga una parte básica. Normalmente, los tipos de elemento de documento tienen ICMBASE (parte básica), ICMANNOTATION (anotaciones gráficas que recubren la parte básica) e ICMNOTELOG (comentarios textuales separados).
El contenido principal de un elemento en un tipo de elemento de documento se almacena como parte básica. Por ejemplo, la imagen digitalizada de un coche o de una póliza de seguros es la parte básica de un elemento en el tipo de elemento Póliza de automóvil. Este elemento se puede añadir entonces a una carpeta del tipo de elemento Titular de la póliza, creando un enlace entre el elemento Póliza de automóvil y la carpeta Titular de la póliza.
Puede llenar las carpetas automáticamente estableciendo el enlace automático. Utilizando el cliente de administración del sistema, abra la carpeta del tipo de elemento y, en la página Enlace automático del cuaderno Nueva definición de tipo de elemento, añada un enlace al tipo de elemento de documento utilizando el tipo de enlace Contenido de carpeta. La ventaja del enlace automático es que el sistema coloca automáticamente cualquier documento creado en el cliente en la carpeta.
Puede utilizar claves foráneas con fines de validación. Se utilizan para establecer una relación con una clave exclusiva o primaria para conseguir integridad referencial entre las tablas. Por ejemplo, en un tipo de elemento Titular de la póliza, puede crear un atributo exclusivo denominado número de cliente. Cuando cree el tipo de elemento Póliza de automóvil, es posible que este tipo de elemento también tenga el atributo número de cliente. Entonces se puede definir una clave foránea utilizando la ventana Definir clave foránea. La clave foránea hace referencia a los números de cliente del tipo de elemento Titular de la póliza, de modo que no se puede especificar un número de cliente erróneo al entrar datos para la póliza de automóvil.
