stringtranslate.com

EXPRESS (lenguaje de modelado de datos)

Fig 1. Requisitos de una base de datos para una colección de discos compactos (CD) de audio, presentados en notación EXPRESS-G.

EXPRESS es un estándar para un lenguaje de modelado de datos genérico para datos de productos . EXPRESS está formalizado en la Norma ISO de Intercambio de Producto modelo STEP (ISO 10303) , y estandarizado como ISO 10303-11. [1]

Descripción general

Los modelos de datos definen formalmente objetos de datos y relaciones entre objetos de datos para un dominio de interés. Algunas aplicaciones típicas de los modelos de datos incluyen apoyar el desarrollo de bases de datos y permitir el intercambio de datos para un área de interés particular. Los modelos de datos se especifican en un lenguaje de modelado de datos. [2] EXPRESS es un lenguaje de modelado de datos definido en ISO 10303-11, el Manual de referencia del lenguaje EXPRESS. [3]

Un modelo de datos EXPRESS se puede definir de dos formas, textual y gráficamente. Para la verificación formal y como entrada para herramientas como SDAI, la representación textual dentro de un archivo ASCII es la más importante. Por otro lado, la representación gráfica suele ser más adecuada para uso humano, como explicaciones y tutoriales. La representación gráfica, denominada EXPRESS-G, no es capaz de representar todos los detalles que pueden formularse en forma textual.

EXPRESS es similar a lenguajes de programación como Pascal . Dentro de un ESQUEMA se pueden definir varios tipos de datos junto con restricciones estructurales y reglas algorítmicas. Una característica principal de EXPRESS es la posibilidad de validar formalmente una población de tipos de datos; esto es para verificar todas las reglas estructurales y algorítmicas.

EXPRESS-G

EXPRESS-G es una notación gráfica estándar para modelos de información . [4] Es un complemento del lenguaje EXPRESS para mostrar definiciones, relaciones y cardinalidad de entidades y tipos. [5] Esta notación gráfica admite un subconjunto del lenguaje EXPRESS. Una de las ventajas de utilizar EXPRESS-G sobre EXPRESS es que la estructura de un modelo de datos se puede presentar de una manera más comprensible. Una desventaja de EXPRESS-G es que no se pueden especificar formalmente restricciones complejas. La figura 1 es un ejemplo. El modelo de datos presentado en la figura podría usarse para especificar los requisitos de una base de datos para una colección de discos compactos (CD) de audio. [2]

Ejemplo sencillo

Fig 2. Un diagrama EXPRESS-G para el esquema familiar

Un modelo de datos EXPRESS simple se parece a la figura 2 y el código es así:

Familia ESQUEMA;ENTIDAD Persona SUPERTIPO ABSTRACTO DE (ONEOF (Masculino, Femenino)); nombre: CADENA; madre: OPCIONAL Mujer; padre: OPCIONAL Hombre;END_ENTITY;ENTIDAD Mujer SUBTIPO DE (Persona);END_ENTITY;ENTIDAD Hombre SUBTIPO de (Persona);END_ENTITY;END_SCHEMA;

El modelo de datos está incluido dentro de la familia de esquemas EXPRESS . Contiene una entidad de supertipo Persona con los dos subtipos Masculino y Femenino . Dado que Persona se declara ABSTRACTA, solo pueden existir apariciones de (ONEOF) el subtipo Masculino o Femenino . Cada aparición de una persona tiene un atributo de nombre obligatorio y, opcionalmente, atributos de madre y padre . Existe un estilo fijo de lectura para atributos de algún tipo de entidad:

Bloques de construcción EXPRESS

Tipos de datos

EXPRESS ofrece una serie de tipos de datos, con símbolos de tipo de datos específicos de la notación EXPRESS-G: [2]

Se deben mencionar algunas cosas generales para los tipos de datos.

Atributo de entidad

Los atributos de entidad permiten agregar "propiedades" a entidades y relacionar una entidad con otra en un rol específico. El nombre del atributo especifica el rol. La mayoría de los tipos de datos pueden servir directamente como tipo de atributo. Esto también incluye la agregación.

Hay tres tipos diferentes de atributos: explícitos, derivados e inversos. Y todo esto se puede volver a declarar en un subtipo. Además, un atributo explícito se puede volver a declarar como derivado de un subtipo. No es posible ningún otro cambio del tipo de atributos.

Símbolos de atributos específicos de la notación EXPRESS-G: [2]

Supertipos y subtipos

Una entidad se puede definir como un subtipo de una o varias otras entidades (¡ se permite la herencia múltiple !). Un supertipo puede tener cualquier número de subtipos. Es una práctica muy común en STEP construir gráficos de subsupertipos muy complejos. Algunos gráficos relacionan 100 y más entidades entre sí.

Se puede construir una instancia de entidad para una sola entidad (si no es abstracta) o para una combinación compleja de entidades en dicho gráfico de subsupertipo. En el caso de los gráficos grandes, es probable que el número de combinaciones posibles crezca en rangos astronómicos. Para restringir las posibles combinaciones, se introdujeron restricciones de supertipo especiales, como ONEOF y TOTALOVER. Además, se puede declarar que una entidad es abstracta para exigir que no se pueda construir ninguna instancia solo de esta entidad, pero solo si contiene un subtipo no abstracto.

Restricciones algorítmicas

Las entidades y los tipos de datos definidos pueden restringirse aún más con las reglas WHERE . DONDE las reglas también son parte de las reglas globales. Una regla WHERE es una expresión que debe evaluarse como VERDADERA; de lo contrario, completar un esquema EXPRESS no es válido. Al igual que los atributos derivados, estas expresiones pueden invocar funciones EXPRESS, que a su vez pueden invocar procedimientos EXPRESS. Las funciones y procedimientos permiten formular declaraciones complejas con variables, parámetros y constantes locales, muy similar a un lenguaje de programación.

El lenguaje EXPRESS puede describir reglas locales y globales. Por ejemplo:

 ENTIDAD unidad_área  SUBTIPO DE ( unidad_nombrada ); DONDE WR1 : ( SELF \ unidad_nombrada . dimensiones . exponente_longitud = 2 ) Y ( SELF \ unidad_nombrada . dimensiones . exponente_masa = 0 ) Y ( SELF \ unidad_nombrada . dimensiones . exponente_de_tiempo = 0 ) Y ( SELF \ unidad_nombrada . dimensiones . exponente_corriente_eléctrica = 0 ) AND ( SELF \ unidad_nombrada . dimensiones . exponente_temperatura_termodinámica = 0 ) AND ( SELF \ unidad_nombrada . dimensiones . cantidad_de_sustancia_exponente = 0 ) AND ( SELF \ unidad_nombrada . dimensiones . exponente_intensidad_luminosa = 0 ); END_ENTIDAD ; -- unidad_área                                   

Este ejemplo describe que la entidad area_unit debe tener un valor cuadrado de longitud. Para ello, el atributo dimensiones.length_exponent debe ser igual a 2 y todos los demás exponentes de las unidades básicas del SI deben ser 0.

Otro ejemplo:

 TIPO número_día_en_semana = INTEGER ; DONDE WR1 : ( 1 <= YO ) Y ( YO <= 7 ); END_TYPE ; -- número_día_en_la_semana              

Es decir, significa que el valor de la semana no puede exceder 7.

Y así, puede describir algunas reglas a sus entidades. Se pueden encontrar más detalles sobre los ejemplos dados en ISO 10303 -41.

Ver también

Temas relacionados con ISO
Otros temas relacionados

Referencias

Dominio publico Este artículo incorpora material de dominio público del Instituto Nacional de Estándares y Tecnología.

  1. ^ ISO 10303-11: 2004 Integración y sistemas de automatización industrial - Representación e intercambio de datos de productos - Parte 11: Métodos de descripción: manual de referencia en lenguaje EXPRESS
  2. ^ abcd Michael R. McCaleb (1999). "Un modelo de datos conceptual de sistemas de datos". Instituto Nacional de Estándares y Tecnología. Agosto de 1999.
  3. ^ Norma internacional ISO 10303-11: 1994, Integración y sistemas de automatización industrial. Representación e intercambio de datos de productos. Parte 11: Métodos de descripción: manual de referencia en lenguaje EXPRESS, Organización Internacional de Normalización, Ginebra, Suiza (1994).
  4. ^ 4 Descripción general del lenguaje EXPRESS-G Archivado el 9 de noviembre de 2008 en Wayback Machine . Consultado el 9 de noviembre de 2008.
  5. ^ Para obtener información sobre la notación EXPRESS-G, consulte el Anexo B del Manual de referencia del lenguaje EXPRESS (ISO 10303-11)

Otras lecturas