La creciente automatización de procesos en general ha provocado una proliferación de sistemas de información con semánticas que se translapan.
Por otro lado existe la necesidad de reutilización de conoci-miento, para eficientar esta automatización.
Los desarrollos de sistemas basados en conocimiento y de software en general, normalmente se hacen en diferentes contextos, puntos de vista y suposiciones acerca de su materia de estudio.
Cada uno usa su propio vocablo, pueden tener diferentes conceptos que a veces se traslapan y diferentes métodos y estructuras.
Esto ha provocado problemas de comunicación por falta de entendimiento compartido.
Esto limita:
Cómo resolverlo: teniendo un entendimiento compartido que unifique los diferentes puntos de vista y que sirva para:
Una posibilidad es tener un modelo de conocimiento, haciendo una analogía con un modelo de datos.
Un modelo de datos describe la estructura lógica de los datos y su aplicación. Uno de los trabajos seminales fué el del modelo de entidad-relación.
El modelo es una descripción esquemática de las instancias del modelo. Estas instancias, representan los datos que son usados por la aplicación.
Se han hecho muchas extensiones al modelo entidad-relación para tratar de capturar el significado de los datos (la parte semántica). Una extensión común es usar je-rarquías de clases-subclases.
Algunas de sus limitaciones son:
Si uno quiere re-utilizar algún término, se hace evidente que el término puede tener diferentes interpretaciones dependientes del contexto.
La reutilización de conocimiento complejo es imposible sin tomar en cuenta los diferentes puntos de vista.
Algo de ésto existe en bases de datos, pero toda la información tiene que estar presente. Esto es, los puntos de vista no añaden información, por lo que la visión global es limitada.
Una posible solución es hacer accesible la semántica de la información almacenada: qué contiene, qué propiedades y cómo puede usarse?
Si algún agente entiende la ontología puede usar la información.
Las ontologías en sí mismas también puede ser reutilizadas.
Así como existe una frontera difusa entre conocimiento e información, existe una frontera difusa entre ontologías y modelos de datos. Finalmente, una ontología se puede ver como un modelo de datos de conocimiento.
Una ontología especifica una conceptualización, una forma de ver al mundo. Por lo que cada ontología incorpora un punto de vista.
Una ontología contiene definiciones que nos proveen del vocabulario para referirse a un dominio. Las definiciones dependen del lenguaje que usamos para describirlas.
Algunas de las características típicas de las ontologías son:
El propósito de una ontología es hacer explícito algún punto de vista. A veces necesitamos combinar dos o más ontologías.
Cada ontología introduce conceptualizaciones específicas.
Estos niveles de generalización nos da una topología de ontologías.
La idea es caracterizar una red de ontologías usando multiplicidad y abstracción. Como no podemos aspirar a tener una descripción completa del mundo, podemos pensar en una estrategia de construcción gradual de abajo hacia arriba.
Establecer relaciones entre los elementos de una o más ontologías, para establecer conecciones, especializaciones, generalizaciones, etc.