La creciente automatización de procesos en general ha provocado una proliferación de sistemas de información con semánticas que se solapan.
Por otro lado existe la necesidad de reutilización de conocimiento, para hacer más eficiente esta automatización.
Los desarrollos de sistemas basados en conocimiento y de software en general, se hacen en diferentes contextos, puntos de vista y suposiciones acerca de su materia de estudio.
Cada uno usa su propio vocabulario, pueden tener distintos términos para designar un mismo concepto, y diferentes métodos y estructuras. Esto ha provocado problemas de comunicación por falta de entendimiento compartido, limitando:
· la inter-operabilidad
· el potencial de reutilizar y compartir información
Esto puede resolverse teniendo un entendimiento compartido que unifique los diferentes puntos de vista y que sirva para:
· propósitos de comunicación
· inter-operabilidad entre sistemas
· re-utilización
· confiabilidad
· especificación
Una posibilidad es tener un modelo de conocimiento, haciendo una analogía con un modelo de datos del tipo entidad-relación, con sus jerarquías, clases, subclases e instancias, pero este modelo presenta algunas limitaciones:
· El modelo de datos toma un solo punto de vista del mundo. Describe los objetos o instancias de interés, pero bajo una sola posible intepretación.
Si uno quiere reutilizar algún término, se hace evidente que el término puede tener diferentes interpretaciones dependiendo del contexto.
La reutilización de conocimiento complejo es imposible sin tomar en cuenta los diferentes puntos de vista.
· Por otro lado, existen desarrollos en modelo de datos orientados a objetos. Sin embargo, siguen siendo pobres en su representación de relaciones entre objetos.
Ante estas limitaciones, una posible solución es hacer accesible la semántica de la información almacenada: qué contiene, qué propiedades tiene y cómo puede usarse.
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:
· Pueden existir ontologías múltiples:
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.
· Podemos identificar niveles de abstracción de las ontologías.
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.
· Multiplicidad de la representación. Un concepto puede ser representado de muchas formas, por lo que pueden coexistir múltiples representaciones de un mismo concepto.
· Mapeo de ontologías.
Establecer relaciones entre los elementos de una o más ontologías, para establecer conexiones, especializaciones, generalizaciones, etc.