Herramienta de creacíon de ontologías OntoEdit


3.1.- Introducción a OntoEdit
OntoEdit es una herramienta de edición de ontologías que apoya 
el desarrollo y mantenimiento de las mismas utilizando medios 
gráficos en un  entorno web. Permite la representación semántica 
de lenguajes conceptuales y estructuras mediante conceptos, 
jerarquías de conceptos, relaciones y axiomas.

El interfaz es abierto y permite a los usuarios ajustar OntoEdit 
a sus necesidades. Además tiene disponibles una gran variedad 
de funcionalidades fáciles de usar y adaptables a los diferentes 
escenarios.

Lo que OntoEdit pretende, es ofrecer una herramienta para 
representar gráficamente ontologías y que además, pueda almacenarlas 
y posteriormente manipularlas en una base de datos relacional. 

Otros editores de ontologías se centran en ofrecer interfaces 
gráficas ricas en funcionalidades para editar, integrar y traducir 
ontologías; pero como estas herramientas no poseen integración en 
una base de datos, las ontologías no pueden ser guardadas, 
gestionadas y manipuladas directamente por el editor como si 
fuera un SGBD. 

Aunque OntoEdit está pensado para un entorno web, también puede 
aplicarse a una Intranet. De esta forma se preserva la seguridad 
de la información que contiene. 


3.2.- Versiones de OntoEdit
Existen varias versiones del programa, desde la 2.0 hasta la 2.6.
El siguiente trabajo se ha basodo en esta última versión disponible
en la web de forma gratuita y permite:

• Importar las estructuras del directorio.
• Importar tablas de Excel.
• Construir reglas gráficas. 
• Dispone de reglas que eliminan fallos en la visualización del 
gráfico.
• Visualizar y editar ontologías en un gráfico.
3.3.- Arquitectura de OntoEdit
Es una herramienta simple cuya arquitectura sigue un modelo 
cliente-servidor.

Conjunto de Aplicaciones: comprende la herramienta OntoEdit 
propiamente dicha. Es utilizada por el usuario final para manipular 
las ontologías en la web. Se compone de un modelo conceptual y su 
implementación lógica y física.

Conjunto de Datos: son los datos manipulados por la herramienta y 
gestionados por un SGBD relacional.

La comunicación entre ambas se produce con JDBC (Java Database 
Connectivy).

En OntoEdit, una ontología está compuesta de los siguientes elementos: términos, propiedades y relaciones; y se identifica con metadatos representados como propiedades de la ontología (nombre, autor, dominio, fecha_creación).

• Términos: representan los conceptos extraídos de un dominio del conocimiento. Cada término posee atributos, nombre y descripción que identifican al término.

• Propiedades: representan otros atributos definidos por el usuario. Cada propiedad posee los atributos nombre y tipo de valor. Al definir una propiedad ésta deberá estar asociada a un determinado término o a varios de ellos de forma independiente.

• Relaciones entre términos: Un término puede estar relacionado con uno o más términos. Cada relación posee un atributo (nombre). Subclases: es un tipo de relación en el que las propiedades de la superclase son heredadas por la subclase.
3.4.- Construcción de una Ontología en OntoEdit
·Para empezar a crear una ontología, lo primero es abrir la aplicación
OntoEdit y desde la barra de menú o pinchando en el primer icono de la 
izquierda aparece la ventana donde se le da un nombre en forma de URL.

· Se pueden exportar ontologías creadas gráficamente a un archivo de texto conteniendo la ontología codificada en formato DAML+OIL o importar una ontología desde un archivo en formato DAML+OIL para su representación gráfica.
·Los conceptos son términos abstractos que se organizan en clasificaciones. Se introducen los conceptos seleccionando previamente la raiz de la ontología. La jerarquía de los conceptos se establece con una relación “is-a”.
·Los campos que definen las relaciones son los siguientes: • ID del concepto: Identifica unívocamente el concepto (uso interno para su representación) • Instantiation: Concreta cuando puede existir un objeto de un tipo determinado. Abstracta cuando el concepto solo describe un objeto abstracto y necesita ser especificado con un subconcepto para obtener un objeto concreto. • Representaciones externas: Puede introducirse el nombre de un concepto desde una representación externa en diferentes lenguajes incluyendo caracteres especiales. Las representaciones externas se definen por las diferentes lenguas. Para cada lengua sólo hay una representación. La más común suele ser el uso de sinónimos del concepto. Y dichas representaciones pueden añadirse, eliminarse o editarse con los botones “+”, “-“ y “e” respectivamente. • Documentación: Se puede añadir informacion sobre el concepto para restringir su significado al uso exclusivo que se le da en la ontologia. Se puede definir una lengua para cada documento.
·Todos los atributos de ese concepto lo son también de todos los superconceptos. Esto significa p.ej que todos los casos “intérprete” son también casos “persona” porque un intérprete es una persona. ·Las relaciones se definen de la siguiente manera: • Relation ID (identificador): idem que el ID Concept. • Range (tipo de dato): Los valores String, Integer y Bolean se utilizan para definir atributos. Pero normalmente se utilizan otros tipos de datos como conceptos, relaciones, archivos o incluso otro concepto de la ontología. • Length: Solo esta disponible para el tipo de datos String. Se puede incluir un numero maximo de caracteres. • Cardinalidad: Puede definirse la maxima y la minima.
·Las instancias son relaciones predefinidas entre datos: string, integer, boolean,… En las relaciones de instancias se pueden definir, corregir y quitar instancias.
En la columna de la izquierda de la tabla se elige la relación a la que se quiere introducir más información, y en la columna de la derecha es donde se escribe esa información.
·Los axiomas relacionados son reglas válidas en el dominio del modelo. Permiten la existencia de relaciones con propiedades especiales de las mismas y relaciones con otras relaciones. No se dispone de esta opción en la versión gratuita de OntoEdit. En la relación se pueden definir axiomas predefinidos. Los disponibles son: • Axiomas simétricos: La relación es la misma desde ambos lados. (aRb > bRa) • Axiomas transitivos: El concepto de en medio relaciona los de los extremos. (aRb y bRc > aRc) • Axiomas inversos: Puede introducirse relaciones que sean globalmente o localmente inversas indicándolo en el tipo de dato y el dominio. (R(a,b) > R’(a,b)). ·Los conceptos disjuntos permiten mantener la consistencia en la ontología. Si 2 conceptos son disjuntos, no existen instancias que instancien a ambos conceptos. Para definir conceptos disjuntos, se puede seleccionar todos los conceptos que se quieren hacer disjuntos (hold or for multiselection) y se pincha el botón “+”. Los significados de todas las permutaciones entre los conceptos se computa entonces.
·OntoEdit permite que el usuario pueda visualizar la ontología representada en la interfaz de la herramienta.
·En el área de identificación especifica información sobre la ontología. Aquí se le da un nombre a al ontología, se le define un dominio del área de aplicación. La URI (Uniform Ressource Identifier) se muestra pero no se edita aquí. Se pueden especificar ontologías relacionadas (ontologías utilizadar para desarrollar esta ontología o ontologías del mismo área de dominio / área de aplicación) y fuentes (libros, papeles,... utilizados para hacer esta ontología).
·En el área de metadata se pueden ver datos estadísticos de la ontología y especificar el desarrollo de la ontología y la documentación para todos los lenguajes. ·Las estadísticas contienen el número de conceptos, relaciones, instancias y axiomas, profundidad más alta y la profundidad media en el árbol conceptual, la fecha de creación y la de la última modificación.