# Modelo semántico de datos

El modelo de dato semántico en ingeniería de software tiene varios significados:
* Es un modelo conceptual de datos en el que se incluye información semántica. Esto significa que el modelo describe el significado de sus instancias. Tal modelo de dato semántico es una abstracción que define cómo los símbolos almacenados (los datos de la instancia) se relacionan con el mundo real.
* Es un modelo de datos conceptual que incluye la capacidad de expresar información que permite el intercambio de información para interpretar su significado (semántico) de las instancias, sin necesidad de conocer el meta-modelo. Estos modelos semánticos están orientados a los hechos (en oposición a los orientados a objetos). Los hechos son típicamente expresados por relaciones binarias entre elementos de datos, mientras que las relaciones de orden superior se expresan como colecciones de relaciones binarias. Típicamente las relaciones binarias tienen la forma de ternas: Objeto-<Tipo de Relación>-Objeto. Por ejemplo: La Torre Eiffel <se encuentra en> París.
Típicamente, los datos de instancia de los modelos de datos semánticos incluyen explícitamente los tipos de relaciones entre los diversos elementos de datos. Para interpretar el significado de los hechos de las instancias se requiere que se conozca el significado de los tipos de relaciones (tipos de relación). Por lo tanto, los modelos de datos semánticos típicamente estandarizan tales tipos de relación. Esto significa que el segundo tipo de modelos de datos semánticos permiten que las instancias expresen hechos que incluyen su propio significado. El segundo tipo de modelos de datos semánticos suele estar destinado a crear bases de datos semánticas. La capacidad de incluir significado en bases de datos semánticas facilita la creación de bases de datos distribuidas que permiten a las aplicaciones interpretar el significado del contenido. Esto implica que las bases de datos semánticas pueden ser integradas cuando usan los mismos tipos de relación (estándar). Esto también implica que en general tienen una aplicabilidad más amplia que las bases de datos relacionales u orientadas a objetos.

## Visión general

La estructura de datos lógicos de un sistema de administración de la base de datos (SGBD), ya sea jerárquico,de red o relacional, puede no satisfacer totalmente los requisitos para una definición conceptual de datos, porque tiene alcance limitado y sesgado hacia la estrategia de implementación empleada por el SGBD. Por lo tanto, la necesidad de definir datos desde una visión conceptual ha llevado al desarrollo de técnicas de modelado de datos semánticos. Es decir, técnicas para definir el significado de los datos dentro del contexto de sus interrelaciones con otros datos. Como se ilustra en la figura. El mundo real, en términos de recursos, ideas, eventos, etc., se define simbólicamente en los almacenes de datos físicos. Un modelo de datos semánticos es una abstracción que define cómo los símbolos almacenados se relacionan con el mundo real. Así, el modelo debe ser una verdadera representación del mundo real.
Según Klas y Schrefl (1995), el "el objetivo general de los modelos de datos semánticos es capturar más significado de los datos mediante la integración de conceptos relacionales con conceptos de abstracción más poderosos conocidos desde el campo de la Inteligencia Artificial. Parte integrante de un modelo de datos para facilitar la representación de situaciones del mundo real ".

## Historia

La necesidad de modelos de datos semánticos fue reconocida por primera vez por la Fuerza Aérea de los EE. UU. a mediados de la década de 1970 como resultado del Integrated Computer-Aided Manufacturing (ICAM). El objetivo de este programa era aumentar la productividad de la manufactura a través de la aplicación sistemática de la tecnología informática. El Programa ICAM identificó la necesidad de mejores técnicas de análisis y comunicación para las personas involucradas en mejorar la productividad. Como resultado, el Programa ICAM desarrolló una serie de técnicas conocidas como Métodos del IDEF (Definición ICAM) que incluyeron lo siguiente:
* IDEF0 se utiliza para producir un "modelo de función" que es una representación estructurada de las actividades o procesos dentro del entorno o sistema.
* IDEF1 se utiliza para producir un "modelo de información" que representa la estructura y la semántica de la información dentro del entorno o sistema.
** IDEF1X es una técnica de modelado de datos semánticos. Se utiliza para producir un modelo de información gráfica que representa la estructura y la semántica de la información dentro de un entorno o sistema. El uso de esta norma permite la construcción de modelos de datos semánticos que sirvan para apoyar la gestión de datos como recurso, la integración de sistemas de información y la construcción de bases de datos informáticas.
* IDEF2 se utiliza para producir un "modelo de dinámica" que representa las características de comportamiento variables en el tiempo del entorno o sistema.
Durante la década de 1990 la aplicación de técnicas de modelado semántico resultó en modelos de datos semánticos del segundo tipo. Un ejemplo de ello es el modelo de datos semánticos que se normaliza como ISO 15926-2 (2002), que se desarrolla más adelante en el lenguaje de modelado semántico Gellish (2005). La definición del lenguaje Gellish se documenta en la forma de un modelo de datos semánticos. Gellish en sí es un lenguaje de modelado semántico, que puede utilizarse para crear otros modelos semánticos. Esos modelos semánticos pueden almacenarse en bases de datos Gellish, siendo bases de datos semánticas

## Aplicaciones

Un modelo de datos semánticos puede usarse para muchos propósitos. Algunos objetivos clave incluyen:
* Planificación de los recursos de datos: Se puede utilizar un modelo de datos preliminar para proporcionar una visión general de los datos necesarios para ejecutar una empresa. A continuación, se puede analizar el modelo para identificar y evaluar proyectos para crear recursos de datos compartidos.
* Construcción de bases de datos compartibles: un modelo completamente desarrollado puede ser utilizado para definir una aplicación independiente de la vista de datos que pueden ser validados por los usuarios y luego transformados en un diseño de base de datos físico para cualquiera de las diversas tecnologías de DBMS. Además de generar bases de datos que son consistentes y compartibles, los costos de desarrollo pueden ser drásticamente reducidos a través del modelado de datos
* Evaluación del software del proveedor: dado que un modelo de datos representa en realidad la infraestructura de una organización, el software del proveedor puede evaluarse con el modelo de datos de una empresa para identificar posibles incoherencias entre la infraestructura implicada por el software y la forma en que la empresa realmente hace negocios.
* Integración de Bases de Datos Existentes: Mediante la definición del contenido de bases de datos existentes con modelos de datos semánticos, se puede derivar una definición de datos integrada. Con la tecnología adecuada, el esquema conceptual resultante puede usarse para controlar el procesamiento de transacciones en un entorno de base de datos distribuida. El Sistema Integrado de Apoyo a la Información (I2S2) de la Fuerza Aérea de los Estados Unidos es un desarrollo experimental y demostración de este tipo de tecnología aplicada a un entorno DBMS heterogéneo.