1. Metodología para el desarrollo de
ontologías
Rubén Darío Alvarado*
11 de mayo de 2010
Resumen
Una metodología es un conjunto de métodos y técnicas que determinan que los
resultados de un proceso tengan una calidad aceptable. En contraste método es
un conjunto ordenado de pasos o procedimientos utilizados en el desarrollo de un
producto, mientras que técnica es un procedimiento utilizado para conseguir un
objetivo (Ander-Egg, 1978).
Por tanto, la metodología nos proporciona un marco de trabajo, un conjunto
ordenado de pasos que nos ayudarán a construir una ontología para el dominio del
proyecto.
En el novel campo de la Ingeniería del Conocimiento diversos grupos de investi-
gación buscan un método de desarrollo de ontologías adecuado pero, las variables
son tantas y tan diversas que es prácticamente imposible obtener un sólo método
adecuado para todos los casos. Entre los métodos más utilizados para diseñar y cons-
truir ontologías tenemos: Método de desarrollo de Ontologías de Uschold y King;
Método Virtual Empresarial Toronto (TOVE) de Gruninger y Fox; Methontology;
KAKTUS y, el Método de desarrollo de Ontologías propuesto por Noy y McGuiness.
1. Generalidades
Una metodología es un conjunto de métodos y técnicas que determinan que los resul-
tados de un proceso tengan una calidad aceptable. En contraste método es un conjunto
ordenado de pasos o procedimientos utilizados en el desarrollo de un producto, mientras
que técnica es un procedimiento utilizado para conseguir un objetivo (Ander-Egg, 1978).
Por tanto, la metodología nos proporciona un marco de trabajo, un conjunto ordenado
de pasos que nos ayudarán a construir una ontología para el dominio del proyecto.
En el novel campo de la Ingeniería del Conocimiento diversos grupos de investigación
buscan un método de desarrollo de ontologías adecuado pero, las variables son tantas y
tan diversas que es prácticamente imposible obtener un sólo método adecuado para todos
los casos. Entre los métodos más utilizados para diseñar y construir ontologías tenemos:
*
Si tienes comentarios o correcciones por favor escribe al siguiente correo: ruben.dario76@gmail.com
1
2. Método de desarrollo de Ontologías de Uschold y King; Método Virtual Empresarial
Toronto (TOVE) de Gruninger y Fox; Methontology; KAKTUS y, el Método de desarrollo
de Ontologías propuesto por Noy y McGuiness.
2. Metodología propuesta
Tomando como base las metodologías de Noy & McGuiness y Methontology, propone-
mos el siguiente proceso de desarrollo que pone énfasis en la construcción de un modelo
conceptual robusto y en la determinación clara y concisa de los requerimientos de la
ontología a construirse:
1. Determinar los requerimientos de la ontología
2. Reutilizar las ontologías o metadatos existentes
3. Elaboración del modelo conceptual
4. Implementación del modelo conceptual
5. Evaluación de la ontología
A priori es necesario relevar la importancia que tiene la determinación de los requerimien-
tos ya que su definición nos ayudará a tomar varias decisiones durante todo el proceso
de desarrollo. También debemos tomar en cuenta que una ontología no es nada más (ni
nada menos) que un modelo de la realidad y como tal debe reflejarla.
Los procesos de evaluación y documentación son ejes transversales de este método, lo
que implica su presencia continua en todos y cada uno de los pasos anteriormente citados,
aunque no siempre con el mismo grado de formalidad; esto tomando en cuenta que un
desmedido énfasis en la documentación de cada uno de los pasos volvería engorroso y
lento el proceso de desarrollo a más de ser absolutamente innecesario.
Utilizaremos varios de los instrumentos proporcionados por Methontology (esquemas,
diagramas y descriptores) para documentar debidamente el proceso de elaboración del
modelo conceptual (especialmente). El esquema mostrado en la figura siguiente ilustra
todo el proceso de construcción e implementación de la ontología con los instrumentos y
herramientas requeridos para cada paso.
Como se puede observar en la figura anterior, se privilegia la facilidad de comprensión
del desarrollador sobre el nivel de formalización del método; es decir, se intenta que esta
primera aproximación a la creación de ontologías se realice de forma intuitiva y, conforme
se avanza en el proceso, se incrementa el nivel de formalidad (y de dificultad) del mismo.
Además, cabe destacar que este es un proceso iterativo; es decir, que después de obtener
la versión inicial de la ontología, debemos evaluarla y corregirla; para ello utilizaremos
los requerimientos obtenidos y, por supuesto, la ayuda de los expertos en el dominio.
2
3. Figura 1: Descripción de nuestro método de desarrollo
3. Fases de la metodología
Antes de comenzar el proceso de construcción de la ontología conviene destacar algunas
reglas fundamentales según Noy & McGuiness (1995):
No existe una única forma correcta de modelar un dominio; al contrario, siempre
hay alternativas posibles. La mejor solución casi siempre depende del propósito u
objetivo final de la ontología o de sus aplicaciones.
El desarrollo de una ontología es necesariamente un proceso iterativo.
Los conceptos o clases de una ontología deberían ser muy cercanos a objetos o
entes (tanto físicos como lógicos) y a las relaciones existentes en nuestro dominio
de interés. Estos conceptos o clases serán muy probablemente nombres (objetos) o
verbos (relaciones) que encontraremos en las frases que describen nuestro dominio.
3.1. Determinación de requerimientos
Iniciamos el desarrollo de una ontología definiendo el dominio, alcance y granularidad
de la misma; para ello es mejor utilizar “preguntas significativas o de competencia” (Gru-
ninger y Fox, 1995) es decir, utilizar una lista de preguntas que el sistema debería ser
capaz de contestar.
En este apartado se dará respuesta a las siguientes cuestiones básicas:
¿Qué dominio cubrirá la ontología? OntoWikiUTPL permitirá modelar (representar) la
estructura de una guía didáctica de la modalidad de estudios a Distancia de la
UTPL. A manera de ejemplo, se modelarán los contenidos de la guía didáctica de
la asignatura de Matemáticas Discretas.
3
4. ¿Para qué se va a emplear la ontología? Esta ontología facilitará la búsqueda de conceptos,
ejemplos y/o ejercicios relacionados con la asignatura de matemáticas discretas.
Naturalmente, será necesaria la inclusión de los conceptos que describen tanto a
la asignatura como a la guía didáctica como tal, descartando algunos elementos
propios de la enseñanza de la asignatura como la gestión de la bibliografía, de sus
autores o de la estructura del plan de estudios de la carrera correspondiente.
¿Qué preguntas debería contestar la ontología? En el dominio de la guía didáctica de la
asignatura de matemáticas discretas, las siguientes cuestiones son relevantes (entre
otras): ¿Qué es un conjunto? ¿Cuántas formas existen para determinar un conjunto?
¿Qué gráfico ilustra la relación de inclusión? ¿Cuántas y cuáles son las operaciones
entre conjuntos? ¿Qué tipo de diagramas permiten la representación gráfica de las
operaciones entre conjuntos? ¿Qué actividades debo desarrollar y enviar a través
del entorno virtual de aprendizaje? De acuerdo a este listado de preguntas, la onto-
logía contendrá información sobre conceptos o definiciones; ejemplos y/o ejercicios;
esquemas, diagramas y figuras; todos estos, elementos constitutivos de una guía
didáctica.
¿Quién utilizará y mantendrá la ontología? Los usuarios potenciales de esta ontología son
los estudiantes y profesores de la carrera de sistemas informáticos y computación
de la Modalidad Abierta y a Distancia de la UTPL, matriculados en la asignatura
de matemáticas discretas. Los administradores de la ontología serán las personas
encargadas del mantenimiento de la misma.
3.2. Reutilización de ontologías y metadatos
En la actualidad el contenido de la web se asemeja a una biblioteca desordenada y caó-
tica de donde es muy difícil y costoso extraer algún tipo de conocimiento. Para solucionar
este problema se han desarrollado metadatos que permiten describir la información, faci-
litan su procesamiento por parte de las máquinas y admiten la integración y reutilización
de la información contenida en la web, facilitando la extracción de conocimientos útiles
para el ser humano.
En general los metadatos son datos que describen a los datos. De forma específica
permiten mantener un registro sobre el significado, contexto y propósito de un objeto
de información para poder comprenderlo y administrarlo de la mejor manera posible.
Existen diversas agrupaciones, a nivel mundial, dedicadas al desarrollo y estandarización
de metadatos. Entre las principales tenemos: Dublin Core y W3C.
La importancia del análisis de diversos repositorios de metadatos radica en la posi-
bilidad de reutilizar los términos en él definidos para el desarrollo de OntoWikiUTPL.
Este proceso incluye la formalización de los nombres utilizados en la ontología por sus
respectivos sinónimos más usados o conocidos, lo que permitirá una mejor comprensión
del modelo final.
Entre los diversos estándares de metadatos y ontologías existentes en la actualidad,
se realiza una descripción y comparación de aquellas cuya relación con el proyecto a
4
5. realizar es estrecha. La finalidad de esta sección es encontrar elementos reutilizables en
el desarrollo de OntoWikiUTPL.
3.2.1. Metadatos de Dublin Core
Dublin Core es una organización que promueve un estándar de propósito general, senci-
llo y descriptivo de los recursos de la web sobre cualquier materia. Promueve la iniciativa
Dublin Core Metadata Initiative (DCMI) que provee una infraestructura operativa para
la red semántica y el intercambio de la información por medios electrónicos.
Los metadatos universales DC están diseñados específicamente para indexar documen-
tos y recursos. Para ello contiene quince elementos básicos agrupados según el tipo de
información: siete elementos de contenido, cuatro elementos con información relativa a la
propiedad intelectual del recurso y cuatro elementos relativos a la identificación, formato
y temporalidad del documento.
Cuadro 1: Metadatos de Dublin Core
Contenido Propiedad Intelectual Instanciación
Título (title) Autor (creator) Fecha (date)
Tema (subject) Editor (publisher) Formato (format)
Descripción (description) Colaborador (contributor) Identificador (identifier)
Tipo (type) Derechos (rights) Lengua (language)
Fuente (source)
Relación (relation)
Ámbito (coverage)
3.2.2. WikiOnt
Esta ontología fue desarrollada por estudiantes del DERI de la National University of
Ireland. WikiOnt es el acrónimo de Wikipedia Ontology, fue creada para tener una defi-
nición común de la estructura de la información contenida en la Wikipedia. La ontología
es una representación de Wikipedia (interpretable por un computador) que permite que
el software consulte y reutilice los datos.
Una descripción completa de la ontología (en inglés) se encuentra en la página http://
sw.deri.org/2005/04/wikipedia. A continuación presentamos un resumen de las clases
y propiedades descritas en WikiOnt.
Las principales clases identificadas son: article, category, image y stub. Ambas stub
y category son subclases de Article. Las instancias de las clases se conectan mediante
propiedades. Se definieron algunas propiedades, pero en general se trató de reutilizar
elementos de ontologías existentes como Dublin Core y SKOS cuando eran apropiados.
5
6. Cuadro 2: Descripción de WikiOnt
Clases Propiedades
Article contentType Contributor Sioc views
Category externalLink DC date Skos narrower
Image internalLink DC title Skos subject
Stub Image height DC creator Text
Image width Link redirectsTo
Al realizar la definición de la ontología, en lugar de abundar en clases y propiedades,
se trató de capturar la esencia de un artículo publicado en la Wikipedia.
3.2.3. Swim Ontology
Definida por Christoph Lange estudiante de la Jacobs University de Bremen (Alema-
nia) para el proyecto SWIM - A semantic wiki for mathematical knowledge management
http://kwarc.info/projects/swim/. Esta basada en la estructura del documento OM-
DOC y su esquema en XML, modelada en OWL-DL. Todos los conceptos y relaciones
expuestas en la ontología tienen su contraparte explícita en la sintaxis OMDOC.
En el cuadro 3 presentamos un resumen de las clases y relaciones utilizadas en esta
wiki semántica (SWIM).
Cuadro 3: Descripción de la ontología SWIM
Clases Relaciones
Theory Definition defines symbol
Statement Example exemplifies statements
Proof Example corroborates assertion
Assertion Example refutes assertion
Example Proof proves assertion
Definition
Symbol
Del cuadro anterior se puede inferir la total especialización de la ontología, puesto que
describe fielmente el formato OMDOC utilizado exclusivamente para la creación de docu-
mentos del área de matemática. SWIM es manejada exclusivamente por el desarrollador
de la wiki.
6
7. 3.2.4. Análisis comparativo
En el cuadro 4 se ilustra el análisis comparativo de las principales características de
las ontologías que sirven de base a diversas wikis semánticas.
Cuadro 4: Análisis comparativo de las ontologías
Característica WikiOnt Ontología SWIM
Documentación Abundante Escasa
Nivel de especialización Bajo, ontología general para Alto, ontología sólo para
artículos de la wiki documentos matemáticos
Lenguaje de representación OWL OWL
Aplicaciones Utilizada en el proyecto Utilizada en el proyecto
Semantic Media Wiki SWIM
Motor de wiki Media Wiki IkeWiki
Licencia Licencia pública general Licencia pública general
(GNU-GPL) (GNU-GPL)
Basándonos en la descripción de las dos ontologías y en el cuadro 4 podemos concluir
que:
Las ontologías analizadas poseen licencia GNU-GPL lo cual nos permite utilizar
alguno de sus elementos o en su conjunto.
La abundante documentación existente acerca de WikiOnt nos permite detallar
todos sus elementos lo que no es posible con SWIM.
El lenguaje de implementación (OWL) facilita la integración de estas ontologías en
cualquier proyecto a desarrollarse.
Finalmente, el nivel de especialización de las dos ontologías no permite usarlas en este
trabajo investigativo, utilizaremos los elementos de cualquiera de ellas que más se adecúen
al propósito de este proyecto.
3.2.5. Elementos a reutilizar
En el apartado anterior se realizó un estudio tanto de los metadatos como de las
ontologías utilizadas como base para diversos motores de wikis semánticas, de esta manera
se logró determinar algunas clases y propiedades que pueden ser reutilizadas en la creación
de OntoWikiUTPL:
De la ontología WikiOnt, se han tomado algunas propiedades como: link, externa-
lLink, internalLink y text.
7
8. De la ontología desarrollada para SWIM, las clases definition y example.
La reutilización de estos elementos se verá de forma explícita en la sección siguiente que
detalla la construcción del modelo conceptual de la ontología OntoWikiUTPL.
3.3. Elaboración del modelo conceptual
3.3.1. Definición de términos de la ontología
En este paso se realiza un listado de todos los términos que tienen relación con el
dominio; el cuadro denominado Glosario de Términos (cuadro 5 y cuadro 6) detalla el
nombre de cada concepto acompañado de una breve descripción del mismo.
Los términos se han seleccionado a partir de la documentación (artículos, libros, sitios
web, etc., en nuestro caso particular el mapa conceptual de la guía didáctica mostrado
en la sección ??) y de las respuestas a las “preguntas relevantes” obtenidas en la primera
parte de este proceso.
Cuadro 5: Glosario de Términos (parte 1)
Nombre Descripción
Área Nombre del área a la que pertenece la carrera.
Carrera Nombre de la carrera a la que pertenece la asignatura.
Asignatura Nombre de la asignatura de la guía didáctica.
Ciclo Agrupación de asignaturas en un período de tiempo.
Período Espacio de tiempo en el que se desarrolla el ciclo (en nuestro
caso cinco meses).
Guía didáctica Documento que facilita la comprensión del material didáctico
por parte del estudiante y orienta y organiza el trabajo del
educando integrando los elementos didácticos para el estudio
de una asignatura.
Índice Lista ordenada que detalla los capítulos y secciones de la guía
didáctica indicando el lugar (página) donde aparecen.
Introducción Sección inicial que establece el propósito y los objetivos del
contenido de la guía didáctica.
Objetivos Elementos que identifican los resultados o logros que alcanzará
el estudiante en la asignatura.
8
9. Cuadro 6: Glosario de Términos (parte 2)
Nombre Descripción
Contenido Conjunto secuencial de los temas fundamentales de la
asignatura organizados por capítulo y sección.
Bibliografía Descripción de los libros o direcciones electrónicas consultadas
para la elaboración de la guía didáctica.
Orientaciones Sugerencias al estudiante para mejorar el proceso de
enseñanza-aprendizaje.
Glosario Definición de los términos nuevos.
Evaluación Elemento educativo cuyo fin es verificar los conocimientos
adquiridos por el estudiante.
Dirección electrónica Elemento que hace referencia a un recurso digital en internet.
Capítulo División de la guía didáctica cuyo contenido pertenece a un
mismo tema.
Sección División del capítulo.
Definición Proposición que reúne las propiedades generales y
diferenciadoras de algo material o inmaterial.
Ejercicio Enunciado cuyo desarrollo permite la comprensión de la teoría.
Es más sencillo que un problema.
3.3.2. Definición de las clases y de la jerarquía
Tomando como base el glosario de términos desarrollado en el apartado anterior, se
selecciona aquellos conceptos que describen objetos independientes para constituir las
clases, mientras que los vocablos que describen cómo son esos objetos se los deja para un
análisis posterior (posiblemente puedan constituir las propiedades de una o más clases
de la ontología).
Algunas reglas generales que nos ayudan a decidir cuándo introducir una clase nueva,
según Noy & McGuiness (1995), se detallan a continuación:
Una nueva subclase de una clase generalmente:
1. Debería tener nuevas propiedades que no posee la clase
2. Debería tener diferentes valores para las propiedades que los de la clase
3. Debería participar en diferentes relaciones que la clase.
En jerarquías terminológicas, las nuevas clases no tienen por qué introducir nuevas
propiedades.
9
10. Si un factor es importante en el dominio y pensamos en los objetos con diferentes
valores para ese factor como diferentes clases de objetos, entonces deberíamos crear
una nueva clase o clases considerando dicho factor.
Las instancias son los conceptos más específicos representados en una ontología.
Si los conceptos de un dominio forman una jerarquía natural, debemos represen-
tarlos como clases, aunque sean clases abstractas.
Considerando las reglas mencionadas, a continuación se presentan las clases definidas
para OntoWikiUTPL.
Cuadro 7: Listado de clases de la ontología
Asignatura Orientación Enlace Capítulo
Objetivo Contenido Evaluación Sección
Guía didáctica Bibliografía Autoevaluación Definición
Índice Glosario Solucionario Ejercicio
Introducción Palabra clave Unidad de información Ejercicio propuesto
Ejercicio resuelto
Luego, deben organizarse las clases en una jerarquía de clases. Cuando desarrollamos
la taxonomía de clases se deben considerar ciertas reglas generales (Noy & McGuiness,
1995). Así:
Si una clase A es una superclase de la clase B, entonces toda instancia de B es
también una instancia de A.
Una subclase de una clase representa un concepto que es un tipo especial o una
subespecie dentro del concepto representado por la clase.
Si B es una subclase de A y C es una subclase de B, entonces C es una subclase de
A.
No debemos emplear sinónimos de un mismo concepto para representar clases di-
ferentes, sino que los sinónimos deben considerarse denominaciones diferentes para
un mismo y único concepto.
No deben aparecer ciclos o bucles en la jerarquía de clases.
Los conceptos de un mismo nivel de la jerarquía o clases hermanas (excepto los que
derivan directamente de la raíz) deben presentar el mismo nivel de generalidad.
Cada clase debería tener entre 2 y 12 subclases directas.
10
11. Se debe recordar que no es necesario especializar o generalizar una ontología más de lo
que se necesite para la aplicación. La jerarquía de clases de OntoWikiUTPL es:
Figura 2: Jerarquía de clases de la ontología
11
12. En un intento de clasificación y jerarquización de los diversos elementos que forman la
guía didáctica se propone el concepto unidad de información que facilita la inclusión de
varios componentes genéricos en los que cada autor divide al contenido.
Otro factor importante en la definición de unidad de información es el grado de gra-
nularidad necesario para que la ontología pueda reutilizarse en diferentes asignaturas. Se
propone tener tres tipos de unidad de información de diferente granularidad: capítulo,
sección y, definición y ejercicio. Los capítulos tienen granularidad gruesa y estan forma-
dos por un conjunto de secciones (granularidad media). Las secciones se explican en base
a una colección de definiciones y ejercicios (granularidad fina); estos últimos se eligen
convenientemente por el autor de la guía. De esta forma se puede reutilizar la unidad
de información en tres niveles distintos, es decir, se puede reutilizar un capítulo entero,
secciones de un capítulo o las definiciones y ejercicios que componen una sección.
3.3.3. Definición de las propiedades de las clases
Definidas las clases se describen sus atributos y las relaciones existentes entre ellas
mediante el diagrama de relaciones binarias.
Como las clases fueron seleccionadas del glosario de términos, la mayoría de los térmi-
nos que quedan son probablemente sus propiedades.
En general, las características de los objetos que pueden convertirse en propiedades o
slots en una ontología son las siguientes:
Todas las subclases de una clase heredan las propiedades de dicha clase, por lo
que una propiedad debería ser adscrita a la clase más general que posea dicha
propiedad.
Garantizar la consistencia de la base de conocimiento cuando existan propiedades
o relaciones inversas en una ontología.
El cuadro siguiente muestra el listado de las clases con sus respectivos atributos:
Cuadro 8: Listado de atributos de las clases de la ontología
Clase Atributos Clase Atributos
Asignatura Universidad, modalidad, Enlace Tipo
área, carrera, docente,
estudiante.
Objetivo Tipo, bimestre. Capítulo Bimestre
Guía didáctica Ciclo, período, autor. Definición Texto, imagen.
Orientación Tipo. Ejercicio Texto, imagen.
Contenido Bimestre Autoevaluación Capítulo
Bibliografía Tipo. Solucionario Capítulo
12
13. El Diagrama de Relaciones Binarias permite conocer el tipo de relaciones entre clases,
las relaciones que se muestran a continuación son parte de OntoWikiUTPL.
Figura 3: Diagrama de relaciones binarias de la ontología
El Diccionario de Clases de la Ontología (cuadro 9 y cuadro 10) permite definir las
relaciones, los atributos de las clases y los atributos de las instancias.
Finalmente, en la figura 4 se presenta el Modelo Conceptual de OntoWikiUTPL.
13
14. Cuadro 9: Diccionario de clases de la ontología (parte 1)
Clase Instancia Atributos de Atributos de Relaciones
clase instancia
Asignatura Matemáticas Universidad UTPL tiene guía
discretas didáctica
Modalidad Abierta tiene objetivo
Área Técnica
Carrera Ingeniería en
Sistemas
Docente Paola Sarango
Estudiante Fausto Maldonado
Objetivo Objetivo 1 Tipo General o
específico
Bimestre Primero o segundo
Guía Guía didáctica Período Abril - agosto, alcanza
didáctica de matemáticas octubre - febrero objetivo; tiene
discretas unidad de
información;
tiene índice;
Ciclo Primero, . . . tiene
décimo introducción;
tiene
orientación;
Autor Paola Sarango tiene
bibliografía;
tiene glosario;
tiene palabra
clave; tiene
enlace;
Índice Índice 1
Introduc- Introducción 1
ción
Orienta- Orientación 1 Tipo General o
ción específico
14
15. Cuadro 10: Diccionario de clases de la ontología (parte 2)
Clase Instancia Atributos de Atributos de Relaciones
clase instancia
Contenido Contenido 1 Bimestre Primero o segundo
Bibliogra- Libro 1 Tipo Básica,
fía complementaria o
dirección
electrónica
Glosario Entrada 1 tiene palabra
clave
Palabra Palabra 1 tiene enlace
clave
Enlace Enlace 1 Tipo Interno o externo
Evaluación
Autoeva- Autoevaluación Capítulo 1
luación 1
Soluciona- Solucionario 1 Capítulo 1
rio
Unidad de
Informa-
ción
Capítulo Capítulo 1 Bimestre Primero o segundo tiene sección
Sección Sección 1 tiene definición;
tiene ejercicio
Definición Definición 1
Ejercicio Ejercicio 1 Tipo Propuesto o ilustra
resuelto definición
15
16. 16
Figura 4: Modelo conceptual de la ontología
17. 3.3.4. Definición de las restricciones de las propiedades
En una ontología, las propiedades pueden tener diferentes facetas, éstas describen o
caracterizan el tipo de valor que posee una propiedad.
Las restricciones más comunes aplicadas a las propiedades son: los valores permitidos
y el número de valores posibles (cardinalidad). A continuación una breve descripción de
cada una de ellas:
Cardinalidad: Establece cuántos valores puede tener una propiedad o slot. Algunos sis-
temas distinguen únicamente entre cardinalidad simple (como máximo un valor) y
cardinalidad múltiple (se permiten cualquier número de valores).
Tipo de valor: Describe qué tipo de valores puede poseer una propiedad. Los más fre-
cuentes son: String [Cadena de caracteres], Number, Boolean, Symbol, e Instance.
Dominio y rango de una propiedad o slot: Se suele denominar rango de una propiedad
a las clases permitidas para una propiedad de tipo instancia. El dominio de una
propiedad es el conjunto de clases que describe o caracteriza dicha propiedad.
En la construcción de OntoWikiUTPL se han considerado las restricciones siguientes:
Figura 5: Restricciones de las propiedades de la ontología
17
18. Como se puede apreciar en la tabla anterior, se ha detallado para cada una de las
propiedades de cada clase, determinada en la sección 3.2, el tipo de valor requerido, la
cardinalidad (utilizando los valores simple y múltiple), y las restricciones propias del tipo
de dato symbol.
3.3.5. Definición de los axiomas formales
La tabla de axiomas lógicos define las expresiones lógicas que, en la ontología, son
siempre verdaderas. La definición de cada axioma incluye el nombre, la descripción de
la regla en lenguaje natural, el concepto al que se refiere el axioma, la expresión lógica
que describe formalmente el axioma utilizando FOPC (cálculo de predicados de primer
orden) y la relación.
Figura 6: Axiomas de la ontología
3.3.6. Creación de instancias
El último paso consiste en crear las instancias individuales de cada una de las clases.
La definición de una instancia individual para una clase determinada exige el siguiente
proceso:
18
19. Elegir una clase
Crear una instancia individual para esa clase
Llenar los valores de las propiedades.
A continuación se lista como ejemplo los valores de las instancias para las clases: asignatu-
ra, objetivo, guía didáctica, orientación, bibliografía, enlace y capítulo con sus respectivas
propiedades.
Figura 7: Algunas instancias de la ontología
3.4. Implementación
Para la implementación de la ontología se eligió Protégé por su portabilidad entre
diversas plataformas, su extenso uso y abundante documentación. Esta herramienta posee
una interfaz gráfica que facilita el desarrollo de la ontología sin tener que preocuparse
por la sintaxis del lenguaje de definición de ontologías escogido (OWL).
La codificación en Protégé del modelo conceptual, desarrollado en el apartado anterior,
se realizó de la siguiente manera:
19
20. 3.4.1. Definición de los conceptos
Para la especificación de los conceptos de la jerarquía utilizaremos la pestaña Classes
de Protégé. Debemos especificar el nombre de la clase, la superclase (clase padre), y las
clases disjuntas (ubicadas en el mismo nivel jerárquico).
Figura 8: Definición de clases en Protégé
3.4.2. Definición de las relaciones entre clases
Definimos las relaciones entre clases utilizando la pestaña Object Properties de Protégé.
Para cada relación se debe anotar: el nombre, el dominio y el rango; así:
Figura 9: Definición de relaciones en Protégé
20
21. 3.4.3. Definición de atributos
Al definir los atributos, cuya función es describir los conceptos, utilizamos la pesta-
ña Data Properties. Para cada atributo se debe especificar: el nombre, tipo de valor,
cardinalidad, clase a la que pertenece y valores por defecto.
Figura 10: Definición de atributos.
3.4.4. Definición de axiomas
En la definición de axiomas se utilizan las relaciones y las clases existentes en la onto-
logía cuantificándolas de forma universal y existencial.
Figura 11: Definición de axiomas de la clase Asignatura
21
22. La figura anterior muestra la definición de los axiomas que pertenecen a la clase asig-
natura:
Uno existencial: Algunas asignaturas tienen una guía didáctica.
Otro universal: Toda asignatura tiene objetivos.
3.4.5. Declaración de instancias
Se definen las instancias pertenecientes a cada clase (o concepto) con sus respectivos
atributos.
Figura 12: Declaración de instancias de la clase Asignatura
La figura anterior muestra los tres paneles en los que se divide Protégé al realizar la
creación de instancias de una clase: class browser, instance browser e individual editor. En
el primero se escoge la clase de la cual se van a crear las instancias y, en el segundo se
realiza el proceso de creación.
22
23. Figura 13: Atributos de la instancia de la clase Asignatura
La figura anterior muestra la utilización del tercer panel (individual editor) en el que
se muestran los atributos y relaciones de la instancia de la clase a los cuales se les debe
asignar un valor determinado.
Figura 14: Diagrama de clases de la ontología OntoWikiUTPL
Finalmente, la figura anterior muestra el diagrama de clases de OntoWikiUTPL, ge-
nerado gracias al plugin TGViz de Protégé.
3.4.6. Definición de consultas
A continuación se muestran los resultados de dos consultas realizadas sobre el dominio
de la ontología; la primera busca todas las definiciones que contengan la palabra conjunto
23
24. y la segunda busca los ejemplos que se refieran al concepto conjunto.
Figura 15: Creación de la primera consulta
La figura anterior ilustra el proceso de creación de la consulta que nos permitirá buscar
la palabra conjunto dentro de todas las instancias de la clase definición utilizando para
ello el atributo texto definido para esta clase.
Figura 16: Búsqueda de datos de la primera consulta
El resultado de esta búsqueda se muestra en la figura anterior. El panel search results
exhibe todas las instancias que continen la palabra conjunto.
3.5. Validación de la ontología
Mediante el uso del razonador Pellet, Protégé permite validar algunos aspectos de la
ontología, entre ellos: chequear la consistencia de la ontología, obtener automáticamente
la clasificación taxonómica y computar los tipos inferidos.
24
25. Los resultados de la aplicación de estas pruebas de validación a la ontología OntoWi-
kiUTPL se muestran a continuación:
Figura 17: Verificación de inconsistencia de clases
Comprobación de la consistencia: permite constatar que no existen contradicciones en la
ontología. La semántica de OWL define una especificación formal para la definición
de la consistencia en una ontología empleando Pellet.
Figura 18: Verificación de la taxonomía de clases
Validación de la taxonomía de clases: observa la relación entre cada clase y comprueba
la jerarquía de clases completa.
Figura 19: Verificación de inferencia de clases
25
26. Verificación de inferencia de clases: encuentra las clases más específicas a las que perte-
nece una instancia; en otras palabras, determina la clase a la que pertenece cada
uno de los individuos.
4. Evaluación de OntoWikiUTPL
4.1. Evaluación de versiones de la ontología
La creación de una ontología es un proceso iterativo e incremental por lo tanto, es una
actividad que se realiza de manera paralela a cada una de las fases de la metodología
utilizada; esto permite detectar errores y documentar cada fase de desarrollo.
Durante el proceso de desarrollo de OntoWikiUTPL se realizó un refinamiento de tres
versiones. A continuación las detallamos:
Cuadro 11: Primera versión de OntoWikiUTPL
Criterio Valor
Número de clases 25
Número de atributos 14
Número de relaciones 24
En esta primera versión, la dificultad mayor consistió en la diferenciación entre clase
y atributo; a ello se debe el alto número de clases existentes. También se tomó en cuenta
algunas relaciones entre conceptos triviales cuya depuración terminaría en la tercera
versión de la ontología.
Cuadro 12: Segunda versión de OntoWikiUTPL
Criterio Valor
Número de clases 21
Número de atributos 16
Número de relaciones 20
En la segunda versión se solucionó el problema de diferenciación entre clase y atributo,
por lo que algunos conceptos considerados clases en la primera versión se transforma-
ron en atributos en la segunda. La principal dificultad en esta versión consistió en la
consideración de varias clases vacías, es decir que no tenían instancias asociadas; esto se
solucionó en la tercera versión de la ontología.
26
27. Cuadro 13: Tercera versión (definitiva) de OntoWikiUTPL
Criterio Valor
Número de clases 19
Número de atributos 19
Número de relaciones 17
Para la tercera y definitiva versión se consolidaron el número de clases, atributos y
relaciones, eliminado las clases no instanciadas, los atributos no utilizados y las relaciones
no recorridas. Como resultado se logró obtener una ontología compacta y con un nivel
de expresividad suficiente para los fines planteados.
Cuadro 14: Análisis comparativo de las versiones de OntoWikiUTPL
Criterio Versión 1 Versión 2 Versión 3
Número de clases 25 21 19
Número de atributos 14 16 19
Número de relaciones 24 20 17
Número de axiomas 16
4.2. Evaluación a nivel estructural
4.2.1. Métricas de cohesión
Para este tipo de evaluación se consideraron los criterios provisto en Gangemi et al. ya
que permiten evaluar la ontología en función de su estructura y funcionalidad. En cuanto
a la escala de evaluación, se tomo en consideración la proporcionada por Yao, Orme y
Etzkorn (2005) así:
Cuadro 15: Escala de valores para la evaluación
Criterio Valor
Bajo 0.00
Moderado 0.25
Promedio 0.50
Alto 0.75
Excelente 1.00
27
28. Los valores encontrados para OntoWikiUtpl son:
Cuadro 16: Métricas de Cohesión de OntoWikiUTPL
Criterio Valor
Número de clases raíces (NCR) 14
Número de clases hoja (NCH) 17
Promedio de profundidad de herencia 0.86
del árbol de nodos hoja (PPH-ANH)
Cuadro 17: Cálculo del PPH-ANH
Concepto Caminos por Nodos por
concepto camino
Asignatura 1 1
Bibliografía 1 1
Contenido 1 1
Enlace 1 1
Evaluación 2 2
Índice 1 1
Introducción 1 1
Objetivo 1 1
Orientación 1 1
Palabra clave 1 1
Solucionario 1 1
Glosario 1 1
Guía didáctica 1 1
Unidad de 5 8
información
Total 19 22
Considerando los resultados obtenidos a nivel estructural, con un valor de 0.86 para
el promedio de profundidad de herencia del árbol de nodos hoja, podemos afirmar que
OntoWikiUTPL tiene un valor de cohesión alto muy adecuado para el propósito de la
misma.
28
29. 5. Conclusiones y Líneas Futuras
1. No es necesario tener una vasta experiencia en el campo de la ingeniería del conoci-
miento para construir una ontología; lo realmente importante es el escogitamiento
de una metodología comprensible que explicite el proceso de desarrollo y la cola-
boración de los expertos en el dominio de la ontología a desarrollarse.
2. La metodología propuesta permite un tratamiento ágil con un buen nivel de docu-
mentación además de facilitar la comprensión del proceso de construcción gracias al
apoyo de esquemas y organizadores gráficos en cada una de las etapas del proceso.
3. Este proyecto permite la estructuración semántica de una guía didáctica de cual-
quier asignatura utilizando una wiki semántica.
Referencias
[1] Abián, Miguel Ángel (2005). El futuro de la web: XML, RDF/RDFS, Ontologías y
Web Semántica.
[2] Antoniou, G. and Van Harmelen, F. (2004). A Semantic Web Primer. Cambridge,
Massachusetts: The MIT Press.
[3] Booch, G., Rumbaugh, J. and Jacobson, I. (1997). The Unified Modeling Language
user guide. Addison-Wesley.
[4] Breitman, K. K., Casanova, M. A. and Truszkowski, W. (2007). Semantic Web:
Concepts, Technologies and Applications. Springer.
[5] Fensel, D., Hendler, J., Lieberman, H. and Wahlster, W. (2005). Spinning the Se-
mantic Web. Cambridge, Massachusetts: The MIT Press.
[6] Grüninger, M., Fox, M. S. (1995). Methodology for the Design and Evaluation of
Ontologies. Conf. AI Workshop on Basic Ontological Issues in Knowledge Sharing.
[7] Hepp, M., De Leenheer, P., De Moor, A., and Sure, Y. (2008). Ontology Management:
Semantic Web, Semantic Web Services, and Business Applications. Springer.
[8] Noy, Natalya y McGuinness, Debora (2005). Desarrollo de Ontologías 101: Guía
para crear la primera ontología. Universidad de Stanford, California.
[9] Rumbaugh, J., Blaha, M., Premerlani, W., Eddy, F. and Lorensen, W. (1991).
Object-Oriented modeling and design. Englewood Cliffs, New Jersey: Prentice Hall.
[10] Uschold, M., Grüninger, M. (1996). Ontologies: Principles, Methods and Applica-
tions. Knowledge Eng. Rev., Vol. 11, Nº 2.
[11] Hendler, J. (2001). Agents and the Semantic Web. IEEE Intelligent Systems,
March/April 2001.
29
30. [12] Aguilar, F., Ruth, M. (2007). Orientaciones Generales para la elaboración de guías
didácticas en la Modalidad de Educación a Distancia. UTPL, Loja.
[13] Völkel, M., Oren, E. (2006). Personal Knowledge Management with Semantic Wikis.
[14] Schaffert, S., Gruber, A., Westenhaler, R. (2005). A Semantic Wiki for Collaborative
Knowledge Formation. In: Semantics 2005, Vienna, Austria.
[15] Guarino, N. (1998). Formal ontology and information systems. In: Proceedings of
the First International Conference on Formal Ontologies in Information Systems,
FOIS’98, Trento, Italia.
[16] Berners-Lee, T.; Lassila, O.; Hendler, J. (2001). The Semantic Web: A new form
of Web content that is meaningful to computers will unleash a revolution of new
possibilities. Scientific American, 284(5), pp. 34-43.
[17] Protégé (2000). The Protégé Project: http://protege.stanford.edu
[18] W3C Semantic Web: http://www.w3.org/2001/sw/
[19] CO-ODE: http://www.co-ode.org/
[20] OnToKnowledge Project: www.ontoknowledge.org/
[21] Dublin Core http://dublincore.org
[22] Ontolingua: http://www-ksl-svc.stanford.edu:5915/doc/
ontology-server-projects.html
[23] WebOnto: http://eldora.open.ac.uk:3000/Webonto
[24] DAML Library: http://www.daml.org/ontologies/
[25] SchemaWeb: http://www.schemaWeb.info/
[26] OilEd: http://oiled.man.ac.uk
30