Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
ontologas
Rubn Daro Alvarado*
11 de mayo de 2010
Resumen
Una metodologa es un conjunto de mtodos y tcnicas que determinan que los
resultados de un proceso tengan una calidad aceptable. En contraste mtodo es
un conjunto ordenado de pasos o procedimientos utilizados en el desarrollo de un
producto, mientras que tcnica es un procedimiento utilizado para conseguir un
objetivo (Ander-Egg, 1978).
Por tanto, la metodologa nos proporciona un marco de trabajo, un conjunto
ordenado de pasos que nos ayudarn a construir una ontologa para el dominio del
proyecto.
En el novel campo de la Ingeniera del Conocimiento diversos grupos de investigacin buscan un mtodo de desarrollo de ontologas adecuado pero, las variables
son tantas y tan diversas que es prcticamente imposible obtener un slo mtodo
adecuado para todos los casos. Entre los mtodos ms utilizados para disear y construir ontologas tenemos: Mtodo de desarrollo de Ontologas de Uschold y King;
Mtodo Virtual Empresarial Toronto (TOVE) de Gruninger y Fox; Methontology;
KAKTUS y, el Mtodo de desarrollo de Ontologas propuesto por Noy y McGuiness.
1.
Generalidades
Una metodologa es un conjunto de mtodos y tcnicas que determinan que los resultados de un proceso tengan una calidad aceptable. En contraste mtodo es un conjunto
ordenado de pasos o procedimientos utilizados en el desarrollo de un producto, mientras
que tcnica es un procedimiento utilizado para conseguir un objetivo (Ander-Egg, 1978).
Por tanto, la metodologa nos proporciona un marco de trabajo, un conjunto ordenado
de pasos que nos ayudarn a construir una ontologa para el dominio del proyecto.
En el novel campo de la Ingeniera del Conocimiento diversos grupos de investigacin
buscan un mtodo de desarrollo de ontologas adecuado pero, las variables son tantas y
tan diversas que es prcticamente imposible obtener un slo mtodo adecuado para todos
los casos. Entre los mtodos ms utilizados para disear y construir ontologas tenemos:
*
2.
Metodologa propuesta
Tomando como base las metodologas de Noy & McGuiness y Methontology, proponemos el siguiente proceso de desarrollo que pone nfasis en la construccin de un modelo
conceptual robusto y en la determinacin clara y concisa de los requerimientos de la
ontologa a construirse:
1. Determinar los requerimientos de la ontologa
2. Reutilizar las ontologas o metadatos existentes
3. Elaboracin del modelo conceptual
4. Implementacin del modelo conceptual
5. Evaluacin de la ontologa
A priori es necesario relevar la importancia que tiene la determinacin de los requerimientos ya que su definicin nos ayudar a tomar varias decisiones durante todo el proceso
de desarrollo. Tambin debemos tomar en cuenta que una ontologa no es nada ms (ni
nada menos) que un modelo de la realidad y como tal debe reflejarla.
Los procesos de evaluacin y documentacin son ejes transversales de este mtodo, 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 documentacin de cada uno de los pasos volvera engorroso y
lento el proceso de desarrollo a ms de ser absolutamente innecesario.
Utilizaremos varios de los instrumentos proporcionados por Methontology (esquemas,
diagramas y descriptores) para documentar debidamente el proceso de elaboracin del
modelo conceptual (especialmente). El esquema mostrado en la figura siguiente ilustra
todo el proceso de construccin e implementacin de la ontologa con los instrumentos y
herramientas requeridos para cada paso.
Como se puede observar en la figura anterior, se privilegia la facilidad de comprensin
del desarrollador sobre el nivel de formalizacin del mtodo; es decir, se intenta que esta
primera aproximacin a la creacin de ontologas se realice de forma intuitiva y, conforme
se avanza en el proceso, se incrementa el nivel de formalidad (y de dificultad) del mismo.
Adems, cabe destacar que este es un proceso iterativo; es decir, que despus de obtener
la versin inicial de la ontologa, debemos evaluarla y corregirla; para ello utilizaremos
los requerimientos obtenidos y, por supuesto, la ayuda de los expertos en el dominio.
3.
Fases de la metodologa
3.1.
Determinacin de requerimientos
3.2.
En la actualidad el contenido de la web se asemeja a una biblioteca desordenada y catica de donde es muy difcil y costoso extraer algn tipo de conocimiento. Para solucionar
este problema se han desarrollado metadatos que permiten describir la informacin, facilitan su procesamiento por parte de las mquinas y admiten la integracin y reutilizacin
de la informacin contenida en la web, facilitando la extraccin de conocimientos tiles
para el ser humano.
En general los metadatos son datos que describen a los datos. De forma especfica
permiten mantener un registro sobre el significado, contexto y propsito de un objeto
de informacin para poder comprenderlo y administrarlo de la mejor manera posible.
Existen diversas agrupaciones, a nivel mundial, dedicadas al desarrollo y estandarizacin
de metadatos. Entre las principales tenemos: Dublin Core y W3C.
La importancia del anlisis de diversos repositorios de metadatos radica en la posibilidad de reutilizar los trminos en l definidos para el desarrollo de OntoWikiUTPL.
Este proceso incluye la formalizacin de los nombres utilizados en la ontologa por sus
respectivos sinnimos ms usados o conocidos, lo que permitir una mejor comprensin
del modelo final.
Entre los diversos estndares de metadatos y ontologas existentes en la actualidad,
se realiza una descripcin y comparacin de aquellas cuya relacin con el proyecto a
Dublin Core es una organizacin que promueve un estndar de propsito general, sencillo 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 semntica y el intercambio de la informacin por medios electrnicos.
Los metadatos universales DC estn diseados especficamente para indexar documentos y recursos. Para ello contiene quince elementos bsicos agrupados segn el tipo de
informacin: siete elementos de contenido, cuatro elementos con informacin relativa a la
propiedad intelectual del recurso y cuatro elementos relativos a la identificacin, formato
y temporalidad del documento.
Cuadro 1: Metadatos de Dublin Core
Contenido
Propiedad Intelectual
Instanciacin
Ttulo (title)
Autor (creator)
Fecha (date)
Tema (subject)
Editor (publisher)
Formato (format)
Descripcin (description)
Colaborador (contributor)
Identificador (identifier)
Tipo (type)
Derechos (rights)
Lengua (language)
Fuente (source)
Relacin (relation)
mbito (coverage)
3.2.2.
WikiOnt
Esta ontologa fue desarrollada por estudiantes del DERI de la National University of
Ireland. WikiOnt es el acrnimo de Wikipedia Ontology, fue creada para tener una definicin comn de la estructura de la informacin contenida en la Wikipedia. La ontologa
es una representacin de Wikipedia (interpretable por un computador) que permite que
el software consulte y reutilice los datos.
Una descripcin completa de la ontologa (en ingls) se encuentra en la pgina http://
sw.deri.org/2005/04/wikipedia. A continuacin 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 ontologas existentes como Dublin Core y SKOS cuando eran apropiados.
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
Swim Ontology
Definida por Christoph Lange estudiante de la Jacobs University de Bremen (Alemania) para el proyecto SWIM - A semantic wiki for mathematical knowledge management
http://kwarc.info/projects/swim/. Esta basada en la estructura del documento OMDOC y su esquema en XML, modelada en OWL-DL. Todos los conceptos y relaciones
expuestas en la ontologa tienen su contraparte explcita en la sintaxis OMDOC.
En el cuadro 3 presentamos un resumen de las clases y relaciones utilizadas en esta
wiki semntica (SWIM).
Cuadro 3: Descripcin de la ontologa SWIM
Clases
Relaciones
Theory
Statement
Proof
Assertion
Example
Definition
Symbol
Del cuadro anterior se puede inferir la total especializacin de la ontologa, puesto que
describe fielmente el formato OMDOC utilizado exclusivamente para la creacin de documentos del rea de matemtica. SWIM es manejada exclusivamente por el desarrollador
de la wiki.
3.2.4.
Anlisis comparativo
WikiOnt
Ontologa SWIM
Documentacin
Abundante
Escasa
Nivel de especializacin
Lenguaje de representacin
OWL
OWL
Aplicaciones
Utilizada en el proyecto
Semantic Media Wiki
Utilizada en el proyecto
SWIM
Motor de wiki
Media Wiki
IkeWiki
Licencia
Elementos a reutilizar
3.3.
3.3.1.
En este paso se realiza un listado de todos los trminos que tienen relacin con el
dominio; el cuadro denominado Glosario de Trminos (cuadro 5 y cuadro 6) detalla el
nombre de cada concepto acompaado de una breve descripcin del mismo.
Los trminos se han seleccionado a partir de la documentacin (artculos, libros, sitios
web, etc., en nuestro caso particular el mapa conceptual de la gua didctica mostrado
en la seccin ??) y de las respuestas a las preguntas relevantes obtenidas en la primera
parte de este proceso.
Cuadro 5: Glosario de Trminos (parte 1)
Nombre
Descripcin
rea
Carrera
Asignatura
Ciclo
Perodo
Gua didctica
ndice
Introduccin
Objetivos
Descripcin
Contenido
Bibliografa
Orientaciones
Glosario
Evaluacin
Direccin electrnica
Captulo
Seccin
Definicin
Ejercicio
3.3.2.
Orientacin
Enlace
Captulo
Objetivo
Contenido
Evaluacin
Seccin
Gua didctica
Bibliografa
Autoevaluacin
Definicin
ndice
Glosario
Solucionario
Ejercicio
Introduccin
Palabra clave
Unidad de informacin
Ejercicio propuesto
Ejercicio resuelto
Luego, deben organizarse las clases en una jerarqua de clases. Cuando desarrollamos
la taxonoma 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
tambin 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 sinnimos de un mismo concepto para representar clases diferentes, sino que los sinnimos deben considerarse denominaciones diferentes para
un mismo y nico concepto.
No deben aparecer ciclos o bucles en la jerarqua de clases.
Los conceptos de un mismo nivel de la jerarqua o clases hermanas (excepto los que
derivan directamente de la raz) deben presentar el mismo nivel de generalidad.
Cada clase debera tener entre 2 y 12 subclases directas.
10
11
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 trminos, la mayora de los trminos que quedan son probablemente sus propiedades.
En general, las caractersticas de los objetos que pueden convertirse en propiedades o
slots en una ontologa son las siguientes:
Todas las subclases de una clase heredan las propiedades de dicha clase, por lo
que una propiedad debera ser adscrita a la clase ms general que posea dicha
propiedad.
Garantizar la consistencia de la base de conocimiento cuando existan propiedades
o relaciones inversas en una ontologa.
El cuadro siguiente muestra el listado de las clases con sus respectivos atributos:
Cuadro 8: Listado de atributos de las clases de la ontologa
Clase
Asignatura
Objetivo
Gua didctica
Atributos
Clase
Atributos
Universidad, modalidad,
rea, carrera, docente,
estudiante.
Enlace
Tipo
Tipo, bimestre.
Ciclo, perodo, autor.
Orientacin
Tipo.
Contenido
Bimestre
Bibliografa
Tipo.
Captulo
Bimestre
Definicin
Texto, imagen.
Ejercicio
Texto, imagen.
Autoevaluacin
Captulo
Solucionario
Captulo
12
13
Instancia
Atributos de
clase
Atributos de
instancia
Relaciones
Asignatura
Matemticas
discretas
Universidad
UTPL
tiene gua
didctica
Modalidad
Abierta
tiene objetivo
rea
Tcnica
Carrera
Ingeniera en
Sistemas
Docente
Paola Sarango
Estudiante
Fausto Maldonado
Tipo
General o
especfico
Bimestre
Primero o segundo
Perodo
Abril - agosto,
octubre - febrero
alcanza
objetivo; tiene
unidad de
informacin;
tiene ndice;
Ciclo
Primero, . . .
dcimo
tiene
introduccin;
tiene
orientacin;
Autor
Paola Sarango
tiene
bibliografa;
tiene glosario;
tiene palabra
clave; tiene
enlace;
Tipo
General o
especfico
Objetivo
Gua
didctica
Objetivo 1
Gua didctica
de matemticas
discretas
ndice
ndice 1
Introduccin
Introduccin 1
Orientacin
Orientacin 1
14
Instancia
Atributos de
clase
Atributos de
instancia
Relaciones
Contenido
Contenido 1
Bimestre
Primero o segundo
Bibliografa
Libro 1
Tipo
Bsica,
complementaria o
direccin
electrnica
Glosario
Entrada 1
tiene palabra
clave
Palabra
clave
Palabra 1
tiene enlace
Enlace
Enlace 1
Tipo
Interno o externo
Autoevaluacin
Autoevaluacin
1
Captulo
Solucionario
Solucionario 1
Captulo
Captulo
Captulo 1
Bimestre
Primero o segundo
Seccin
Seccin 1
Definicin
Definicin 1
Ejercicio
Ejercicio 1
Evaluacin
Unidad de
Informacin
tiene seccin
tiene definicin;
tiene ejercicio
Tipo
15
Propuesto o
resuelto
ilustra
definicin
16
Figura 4: Modelo conceptual de la ontologa
3.3.4.
En una ontologa, las propiedades pueden tener diferentes facetas, stas describen o
caracterizan el tipo de valor que posee una propiedad.
Las restricciones ms comunes aplicadas a las propiedades son: los valores permitidos
y el nmero de valores posibles (cardinalidad). A continuacin una breve descripcin de
cada una de ellas:
Cardinalidad: Establece cuntos valores puede tener una propiedad o slot. Algunos sistemas distinguen nicamente entre cardinalidad simple (como mximo un valor) y
cardinalidad mltiple (se permiten cualquier nmero de valores).
Tipo de valor: Describe qu tipo de valores puede poseer una propiedad. Los ms frecuentes 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 construccin de OntoWikiUTPL se han considerado las restricciones siguientes:
17
Como se puede apreciar en la tabla anterior, se ha detallado para cada una de las
propiedades de cada clase, determinada en la seccin 3.2, el tipo de valor requerido, la
cardinalidad (utilizando los valores simple y mltiple), y las restricciones propias del tipo
de dato symbol.
3.3.5.
La tabla de axiomas lgicos define las expresiones lgicas que, en la ontologa, son
siempre verdaderas. La definicin de cada axioma incluye el nombre, la descripcin de
la regla en lenguaje natural, el concepto al que se refiere el axioma, la expresin lgica
que describe formalmente el axioma utilizando FOPC (clculo de predicados de primer
orden) y la relacin.
Creacin de instancias
El ltimo paso consiste en crear las instancias individuales de cada una de las clases.
La definicin de una instancia individual para una clase determinada exige el siguiente
proceso:
18
3.4.
Implementacin
19
3.4.1.
Definimos las relaciones entre clases utilizando la pestaa Object Properties de Protg.
Para cada relacin se debe anotar: el nombre, el dominio y el rango; as:
20
3.4.3.
Definicin de atributos
Al definir los atributos, cuya funcin es describir los conceptos, utilizamos la pestaa Data Properties. Para cada atributo se debe especificar: el nombre, tipo de valor,
cardinalidad, clase a la que pertenece y valores por defecto.
Definicin de axiomas
En la definicin de axiomas se utilizan las relaciones y las clases existentes en la ontologa cuantificndolas de forma universal y existencial.
21
La figura anterior muestra la definicin de los axiomas que pertenecen a la clase asignatura:
Uno existencial: Algunas asignaturas tienen una gua didctica.
Otro universal: Toda asignatura tiene objetivos.
3.4.5.
Declaracin de instancias
Se definen las instancias pertenecientes a cada clase (o concepto) con sus respectivos
atributos.
22
Definicin de consultas
23
3.5.
Validacin de la ontologa
Mediante el uso del razonador Pellet, Protg permite validar algunos aspectos de la
ontologa, entre ellos: chequear la consistencia de la ontologa, obtener automticamente
la clasificacin taxonmica y computar los tipos inferidos.
24
Los resultados de la aplicacin de estas pruebas de validacin a la ontologa OntoWikiUTPL se muestran a continuacin:
25
Verificacin de inferencia de clases: encuentra las clases ms especficas a las que pertenece una instancia; en otras palabras, determina la clase a la que pertenece cada
uno de los individuos.
4.
4.1.
Evaluacin de OntoWikiUTPL
Evaluacin de versiones de la ontologa
Valor
Nmero de clases
25
Nmero de atributos
14
Nmero de relaciones
24
Valor
Nmero de clases
21
Nmero de atributos
16
Nmero de relaciones
20
26
Valor
Nmero de clases
19
Nmero de atributos
19
Nmero de relaciones
17
Versin 1
Versin 2
Versin 3
Nmero de clases
25
21
19
Nmero de atributos
14
16
19
Nmero de relaciones
24
20
17
Nmero de axiomas
4.2.
4.2.1.
16
Para este tipo de evaluacin se consideraron los criterios provisto en Gangemi et al. ya
que permiten evaluar la ontologa en funcin de su estructura y funcionalidad. En cuanto
a la escala de evaluacin, se tomo en consideracin la proporcionada por Yao, Orme y
Etzkorn (2005) as:
Cuadro 15: Escala de valores para la evaluacin
Criterio
Valor
Bajo
0.00
Moderado
0.25
Promedio
0.50
Alto
0.75
Excelente
1.00
27
Valor
14
17
0.86
Caminos por
concepto
Nodos por
camino
Asignatura
Bibliografa
Contenido
Enlace
Evaluacin
ndice
Introduccin
Objetivo
Orientacin
Palabra clave
Solucionario
Glosario
Gua didctica
Unidad de
informacin
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 cohesin alto muy adecuado para el propsito de la
misma.
28
5.
Referencias
[1] Abin, Miguel ngel (2005). El futuro de la web: XML, RDF/RDFS, Ontologas y
Web Semntica.
[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 Semantic Web. Cambridge, Massachusetts: The MIT Press.
[6] Grninger, 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 Ontologas 101: Gua
para crear la primera ontologa. 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., Grninger, M. (1996). Ontologies: Principles, Methods and Applications. Knowledge Eng. Rev., Vol. 11, N 2.
[11] Hendler, J. (2001). Agents and the Semantic Web. IEEE Intelligent Systems,
March/April 2001.
29
[12] Aguilar, F., Ruth, M. (2007). Orientaciones Generales para la elaboracin de guas
didcticas en la Modalidad de Educacin a Distancia. UTPL, Loja.
[13] Vlkel, 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,
FOIS98, 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] Protg (2000). The Protg 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