Wikis y tecnologıas sem´anticas

Anuncio
D EPARTAMENTO DE
C IENCIAS DE LA C OMPUTACI ÓN E I NTELIGENCIA A RTIFICIAL
Wikis y tecnologı́as semánticas
Una propuesta para
la Externalización del Conocimiento
V. B. Director
Dr. Joaquı́n Borrego Dı́az
Sevilla, 23 de mayo de 2011
Memoria de investigación presentada por
Antonio Jiménez Mavillard
dentro del programa de doctorado
Lógica, Computación e Inteligencia Artificial.
Universidad de Sevilla.
A Juan.
Índice general
Prólogo
1
Resumen
3
1. Contexto
5
1.1. El origen de la Web . . . . . . . . . . . . . . . . . . . . . . . .
5
1.2. Limitaciones de la Web actual . . . . . . . . . . . . . . . . . .
6
1.3. La Web Semántica . . . . . . . . . . . . . . . . . . . . . . . . .
8
1.3.1. XML . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
1.3.2. RDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
1.3.3. RDFS . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12
1.3.4. OWL . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13
1.3.5. Lógica . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
1.4. Ontologı́as . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
16
1.4.1. Dificultades de las ontologı́as . . . . . . . . . . . . . .
19
1.4.2. Soluciones colaborativas . . . . . . . . . . . . . . . . .
20
1.5. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . .
22
2. Estado del arte
23
V
Índice general
VI
2.1. Web 2.0 y Web Semántica . . . . . . . . . . . . . . . . . . . .
23
2.2. Semántica y wikis . . . . . . . . . . . . . . . . . . . . . . . . .
25
2.2.1. AceWiki . . . . . . . . . . . . . . . . . . . . . . . . . .
25
2.2.2. COW . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
2.2.3. IkeWiki . . . . . . . . . . . . . . . . . . . . . . . . . . .
29
2.2.4. JSPWiki . . . . . . . . . . . . . . . . . . . . . . . . . .
31
2.2.5. KiWi . . . . . . . . . . . . . . . . . . . . . . . . . . . .
31
2.2.6. Makna . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
2.2.7. Moki . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
2.2.8. ODEWiki . . . . . . . . . . . . . . . . . . . . . . . . .
39
2.2.9. Ontobrowse . . . . . . . . . . . . . . . . . . . . . . . .
41
2.2.10. OntoWiki . . . . . . . . . . . . . . . . . . . . . . . . .
44
2.2.11. Powl . . . . . . . . . . . . . . . . . . . . . . . . . . . .
46
2.2.12. Semantic MediaWiki . . . . . . . . . . . . . . . . . . .
48
2.2.13. SweetWiki . . . . . . . . . . . . . . . . . . . . . . . . .
51
2.2.14. SWiM . . . . . . . . . . . . . . . . . . . . . . . . . . . .
54
2.2.15. Otras . . . . . . . . . . . . . . . . . . . . . . . . . . . .
57
2.2.16. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . .
57
2.3. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . .
59
3. Externalización del conocimiento
63
3.1. El conocimiento como activo . . . . . . . . . . . . . . . . . .
63
3.2. Modelo de Nonaka y Takeuchi . . . . . . . . . . . . . . . . .
64
3.3. Gestión del conocimiento . . . . . . . . . . . . . . . . . . . .
67
Índice general
VII
3.3.1. Modelo de Nonaka y Takeuchi adaptado . . . . . . .
68
3.3.2. Semántica emergente . . . . . . . . . . . . . . . . . . .
69
3.3.3. Interfaces semánticas de usuario . . . . . . . . . . . .
72
3.4. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . .
73
4. Sword
75
4.1. Descripción general . . . . . . . . . . . . . . . . . . . . . . . .
75
4.1.1. Correspondencia ontologı́a – wiki . . . . . . . . . . . .
76
4.1.2. Interfaz de usuario . . . . . . . . . . . . . . . . . . . .
77
4.1.3. Funcionalidad . . . . . . . . . . . . . . . . . . . . . . .
78
4.1.4. Tecnologı́a y arquitectura . . . . . . . . . . . . . . . .
80
4.1.5. OSMV . . . . . . . . . . . . . . . . . . . . . . . . . . .
82
4.1.6. Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . .
84
4.2. Gestión del conocimiento semántico . . . . . . . . . . . . . .
86
4.3. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
88
4.4. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . .
88
5. Conclusiones y proyecto de investigación futura
93
Apéndices
98
A. Ontologı́a OSMV
101
A.1. Diagrama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
A.2. Clases en detalle . . . . . . . . . . . . . . . . . . . . . . . . . . 103
A.3. Jerarquı́a de clases y propiedades . . . . . . . . . . . . . . . . 105
VIII
Índice general
B. API de Protégé–OWL
111
C. Base de datos de MediaWiki
113
Bibliografı́a
117
Índice de figuras
1.1. La Web Semántica de Tim Berners-Lee . . . . . . . . . . . . .
9
1.2. Arquitectura de la Web Semántica . . . . . . . . . . . . . . .
11
1.3. Elementos de una ontologı́a . . . . . . . . . . . . . . . . . . .
17
1.4. Anotación semántica usando una ontologı́a . . . . . . . . . .
19
2.1. Metaweb = Web Semántica + Web 2.0 . . . . . . . . . . . . .
24
2.2. Interfaz web de AceWiki . . . . . . . . . . . . . . . . . . . . .
26
2.3. Editor y navegador ontológico de COW . . . . . . . . . . . .
28
2.4. Arquitectura de COW . . . . . . . . . . . . . . . . . . . . . .
29
2.5. Interfaz de IkeWiki . . . . . . . . . . . . . . . . . . . . . . . .
30
2.6. Arquitectura de IkeWiki . . . . . . . . . . . . . . . . . . . . .
31
2.7. Interfaz de IkeWiki . . . . . . . . . . . . . . . . . . . . . . . .
32
2.8. TagIT: información geográfica en KiWi . . . . . . . . . . . . .
33
2.9. Arquitectura de KiWi . . . . . . . . . . . . . . . . . . . . . . .
34
2.10. Arquitectura de Makna . . . . . . . . . . . . . . . . . . . . . .
35
2.11. Separación entre ontologı́a e instancias en Makna . . . . . .
36
2.12. Typed pages y typed links . . . . . . . . . . . . . . . . . . . . . .
37
2.13. Metamodelo de empresa en Moki . . . . . . . . . . . . . . . .
38
IX
X
Índice de figuras
2.14. Interfaz de Moki . . . . . . . . . . . . . . . . . . . . . . . . . .
39
2.15. Interfaz de ODEWiki . . . . . . . . . . . . . . . . . . . . . . .
40
2.16. Arquitectura de Ontobrowse . . . . . . . . . . . . . . . . . .
42
2.17. Interfaz de Ontobrowse . . . . . . . . . . . . . . . . . . . . .
43
2.18. Ontologı́a SOA . . . . . . . . . . . . . . . . . . . . . . . . . .
44
2.19. Interfaz de OntoWiki . . . . . . . . . . . . . . . . . . . . . . .
46
2.20. Arquitectura de Powl . . . . . . . . . . . . . . . . . . . . . . .
47
2.21. Interfaz de Powl . . . . . . . . . . . . . . . . . . . . . . . . . .
48
2.22. Una vista semántica de Londres . . . . . . . . . . . . . . . . .
49
2.23. Código fuente del artı́culo sobre Londres . . . . . . . . . . .
50
2.24. Folksonomı́a y editor de ontologı́as en SweetWiki . . . . . .
52
2.25. Arquitectura de SweetWiki . . . . . . . . . . . . . . . . . . .
53
2.26. Interfaz de SWiM . . . . . . . . . . . . . . . . . . . . . . . . .
55
2.27. Subconjunto de la ontologı́a de sistema . . . . . . . . . . . . . .
56
2.28. Extracción de RDF en SWiM . . . . . . . . . . . . . . . . . . .
57
3.1. Eras de creación de riquezas . . . . . . . . . . . . . . . . . . .
64
3.2. Ciclo de Nonaka y Takeuchi . . . . . . . . . . . . . . . . . . .
66
3.3. Creación de conocimiento . . . . . . . . . . . . . . . . . . . .
67
3.4. Proyección del ciclo de Nonaka y Takeuchi . . . . . . . . . .
70
4.1. Interfaz de usuario de OntoxicWiki . . . . . . . . . . . . . . .
78
4.2. Barra de herramientas de OntoxicWiki . . . . . . . . . . . . .
79
4.3. Arquitectura de Protégé con extensión OWL . . . . . . . . .
80
4.4. Arquitectura de MediaWiki . . . . . . . . . . . . . . . . . . .
81
Índice de figuras
XI
4.5. Arquitectura de OntoxicWiki . . . . . . . . . . . . . . . . . .
82
4.6. Clase Expression en Protégé . . . . . . . . . . . . . . . . . . .
84
4.7. Clase Expression en OntoxicWiki . . . . . . . . . . . . . . . .
85
4.8. Creación de conocimiento mediante OntoxicWiki . . . . . .
87
A.1. Diagrama de clases y relaciones de OSMV . . . . . . . . . . . 102
A.2. Clases y propiedades de OSMV . . . . . . . . . . . . . . . . . 109
B.1. API de Protégé–OWL . . . . . . . . . . . . . . . . . . . . . . . 112
C.1. Sección de la base de datos de MediaWiki manipulada . . . 114
C.2. Base de datos de MediaWiki completa . . . . . . . . . . . . . 115
Índice de tablas
1.1. Vocabulario de RDFS . . . . . . . . . . . . . . . . . . . . . . .
13
1.2. Sintaxis y semántica en DL . . . . . . . . . . . . . . . . . . . .
14
2.1. Equivalencia entre wiki y ontologı́a . . . . . . . . . . . . . . .
51
2.2. Comparación entre wikis semánticas (a) . . . . . . . . . . . .
58
2.3. Comparación entre wikis semánticas (b) . . . . . . . . . . . .
59
4.1. Caracterı́sticas de OntoxicWiki . . . . . . . . . . . . . . . . .
88
4.2. Equivalencia entre ontologı́as y matemáticas . . . . . . . . .
90
A.1. Descripción de DocumentationClass . . . . . . . . . . . . . . . 103
A.2. Descripción de GlobalDocumentationClass . . . . . . . . . . . 103
A.3. Descripción de LocalDocumentationClass . . . . . . . . . . . . 104
A.4. Descripción de LicenseModel . . . . . . . . . . . . . . . . . . . 104
A.5. Descripción de Ontology . . . . . . . . . . . . . . . . . . . . . 105
A.6. Descripción de OntologyEngineeringTool . . . . . . . . . . . . 106
A.7. Descripción de OntologyLanguage . . . . . . . . . . . . . . . . 106
A.8. Descripción de OntologySyntax . . . . . . . . . . . . . . . . . 107
A.9. Descripción de OntologyTask . . . . . . . . . . . . . . . . . . . 107
XIII
XIV
Índice de tablas
A.10.Descripción de OntologyType . . . . . . . . . . . . . . . . . . . 108
A.11.Descripción de SocialDocumentationClass . . . . . . . . . . . . 108
Prólogo
Mucho se ha recorrido desde la concepción de la Web (Semántica) hasta
nuestros dı́as, pero aun mayor es el camino que resta para hacer de la Web
Semántica una realidad cotidiana. Trabajos como los de Tim Berners-Lee o
como los aportados por Thomas R. Gruber sobre ontologı́as han contribuido considerablemente a dar pasos decisivos en esta larga travesı́a.
Asumir que el futuro de la Web será inteligente es una fase superada y
admitir que la inteligencia de la Web pasa por la semántica es algo en que
la mayorı́a de investigadores están de acuerdo. En este punto, el papel de
las ontologı́as es indiscutible. Nadie pone en duda que las ontologı́as se han
convertido en la piedra angular de la Web Semántica. Sin embargo, como a
veces sucede en estos casos, la novedad de las nuevas tecnologı́as se torna
en su propia losa: en primer lugar, hay que comprenderlas para poder
emitir juicios de valor; en segundo lugar, hay que aceptar su validez; y en
tercer lugar, hay que aprender a utilizarlas para aplicarlas adecuadamente.
Este trabajo habla sobre el rol predominante de las ontologı́as, sobre
sus posibles formas de creación y mantenimiento, sobre la importancia de
potenciar su uso y, por encima de todo, sobre la colaboración en la Web
como elemento cohesionador.
1
Resumen
La Gestión del Conocimiento se ha convertido en un tarea clave para las
organizaciones y empresas que son conscientes del valor de este activo
en el mercado actual, y para ello, las tecnologı́as semánticas pueden jugar un papel crucial. Una aproximación prometedora es potenciar la Externalización del Conocimiento en forma de ontologı́as, lo cual permitirı́a su
gestión automática y eficiente en la inminente Web Semántica. Sin embargo, una de las grandes dificultades con que se encuentra la futura implantación de la Web Semántica es la aceptación social (en cuanto a comprensión y uso) de las ontologı́as.
En este trabajo se propone el uso de wikis para manejar ontologı́as por
comunidades (usuarios de una intranet, empleados de una empresa, etc.).
En concreto, se presenta una plataforma semántica social, Sword1 con la
que los miembros de la comunidad pueden diseñar y mantener ontologı́as
colaborativamente, ası́ como describir sus usos y aportar sus propias experiencias a través de una wiki. El objetivo que se persigue es salvar la incipiente brecha semántica entre usuario y ontologı́a, para fomentar ası́ la
utilización de éstas y, consecuentemente, mejorar la gestión del conocimiento.
El contenido de esta memoria se distribuye en los siguientes capı́tulos:
Capı́tulo 1: Contexto
El capı́tulo 1 introduce el marco actual de la Web. Se justifica la necesidad de creación y mantenimiento colectivo de ontologı́as y se propone el uso de wikis para llevar a cabo esta tarea.
Capı́tulo 2: Estado del arte
En este capı́tulo se hace un estudio sobre el estado del arte en semánti1
Social Wiki for Ontology Revision and Documentation
3
4
Índice de tablas
ca y wikis. Se concluye la necesidad de documentar las ontologı́as
colaborativamente para fomentar su (re)usabilidad.
Capı́tulo 3: Externalización del conocimiento
El capı́tulo 3 expone la importancia del conocimiento como activo
en las empresas y presenta un modelo para su creación y administración. Se argumenta la necesidad de contar con herramientas adecuadas para mejorar la gestión del conocimiento.
Capı́tulo 4: Sword
En el capı́tulo 4 se presenta una herramienta para documentar ontologı́as social y colaborativamente. Se describe su papel en el contexto de la gestión del conocimiento y se compara con otras soluciones existentes.
Capı́tulo 5: Conclusiones y proyecto de investigación futura
En el último capı́tulo se extraen las conclusiones más importantes de
este trabajo y se plantean algunas lı́neas de trabajo para el futuro.
Capı́tulo 1
Contexto
1.1.
El origen de la Web
La World Wide Web (WWW) ha crecido exponencialmente desde que en
el año 1989 su inventor, Tim Berners-Lee, creara un sistema de documentos de hipertexto, llamados páginas webs o simplemente webs, enlazados
y accesibles a través de Internet [1], y sentara las bases del protocolo de
transmisión HTTP1 , el lenguaje de marcado de documentos HTML2 [2] y
el concepto de URL3 .
El enorme desarrollo que ha experimentado la Web desde sus inicios
ha cambiado profundamente la forma de entender aspectos de la vida cotidiana tales como la comunicación personal o la manera de dirigir un negocio. Esta revolución está transformando al mundo, conduciéndolo hacia
lo que hoy llamamos la Sociedad de la Información. En esta nueva era, la
Web ha permitido un flujo de comunicación global a una escala sin precedentes en la historia de la humanidad. Personas separadas en el tiempo y
el espacio pueden usar la Web para intercambiar todo tipo de información
o incluso desarrollar mutuamente cualquier proyecto. Experiencias emocionales, ideas polı́ticas, cultura, negocios... todo puede ser compartido y
difundido digitalmente con el menor esfuerzo, haciéndolo llegar casi de
forma inmediata a cualquier otro punto del planeta.
1
HiperText Transfer Protocol
HyperText Markup Language
3
Universal Resource Locator
2
5
6
Capı́tulo 1. Contexto
Gracias a las Tecnologı́as de la Información y la Comunicación, la sociedad continúa evolucionando hacia la Sociedad del Conocimiento y, en un
paso más, el modelo económico actual lo hace hacia la Economı́a del Conocimiento, donde se considera al conocimiento como el principal activo de
la dinámica económica.
1.2.
Limitaciones de la Web actual
La inmensa mayorı́a de los usos de la Web está relacionada con la
búsqueda y gestión de información, para lo cual los buscadores juegan un
papel crucial –de hecho, indispensable–. Los motores de búsqueda más
populares son los basados en palabras clave, como son Google4 , Yahoo!5
o MSN6 . Sin lugar a dudas, la Web debe gran parte de su enorme éxito a
los buscadores; sin embargo, existen serios problemas asociados a su naturaleza [3]:
Poca o ninguna información. A menudo ocurre que no obtenemos
ninguna respuesta a nuestra pregunta, o que no se recuperan las
páginas importantes.
Demasiada información sin precisión. Incluso si se recuperan las páginas más relevantes, no serán de ninguna utilidad si se extraen junto
a una gran cantidad de documentos. Mucha información puede resultar tan inútil como demasiada poca.
Resultados sensibles al vocabulario. A veces nuestra palabra clave
inicial no obtiene el resultado deseado. En estos casos, los documentos principales usan diferente terminologı́a de la consulta original.
Consultas semánticamente similares deberı́an producir el mismo resultado.
Páginas webs individuales como resultado. Si necesitamos información esparcida en distintos documentos, debemos realizar varias consultas para recopilar los documentos más significativos. A continuación, tenemos que navegar por los documentos seleccionados, extraer la información parcial y unirla manualmente.
4
http://www.google.com
http://www.yahoo.com
6
http://www.msn.com
5
1.2. Limitaciones de la Web actual
7
Por estos motivos, la ingente cantidad de información que circula por la
red en la actualidad nos lleva a la necesidad de encontrar fórmulas alternativas que nos garanticen búsquedas satisfactorias.
El principal obstáculo para proporcionar mejores resultados a los usuarios es que, a dı́a de hoy, el significado de los contenidos de la Web no
es comprensible por las máquinas. En otras palabras, la Web no incorpora mecanismos que permitan el procesado automático de la información.
Por ejemplo, un buscador que acceda a la página web de un profesor de
universidad desconoce que “existe un grupo de personas que trabaja en
ciertas instituciones llamadas universidades” y que “estas personas imparten clases, a las cuales asiste otro grupo de personas llamadas alumnos,
a quienes el profesor asigna calificaciones según sus conocimientos de la
materia impartida en las clases”. Ignorando este conocimiento, el buscador
sólo puede realizar un procesado muy primitivo de la información presentada en la página del profesor, basado en la búsqueda de palabras clave en
el texto de la página. Ası́, actualmente es impensable hacer consultas del
estilo “Obtén la lista de los antiguos alumnos a los que el profesor Joaquı́n
Borrego impartió la asignatura de Seminario de Inteligencia Artificial en
la Universidad de Sevilla y que ahora son profesores en universidades españolas”. Existen herramientas que pueden recuperar textos, separarlos
en partes, comprobar la gramática, asociar sinónimos a sus palabras... No
obstante, a la hora de interpretar y extraer información útil para el usuario,
las capacidades del software actual se encuentran aún muy limitadas.
Las deficiencias descritas no sólo se dan en la comunicación entre humano y máquina: también existe a nivel máquina–máquina. Esto se debe
a que la Web actual no incluye mecanismos para la interoperabilidad entre
sistemas de información basados en la Web. IEEE define la interoperabilidad como “la capacidad de dos o más sistemas o componentes para intercambiar
información y usar la información que ha sido intercambiada” [4]. Para la autora
Lisa L. Brownsword, es “la capacidad de una colección de entidades comunicativas de compartir información especificada y de operar sobre esa información de
acuerdo con una semántica operacional establecida” [5].
Para intercambiar la información es necesario proporcionar aproximaciones que faciliten la creación de una comprensión común y compartida de un dominio, de forma que éste pueda ser usado por personas y
máquinas. A esta capacidad de intercambio de información basada en un
significado común se conoce como interoperabilidad semántica, un concepto
fundamental y siempre presente en las sociedades modernas (por ejemplo,
8
Capı́tulo 1. Contexto
en el comercio electrónico, en la industria electrónica, etc.). Para superar
estos problemas, la solución más ampliamente respaldada en todo el mundo es la de representar el contenido de la Web de alguna forma que sea
fácilmente comprensible para las máquinas y usar técnicas basadas en Inteligencia Artificial para sacar provecho de esta nueva representación. Se
conoce a este plan para revolucionar la Web como la iniciativa de la Web
Semántica (WS).
1.3.
La Web Semántica
Es indudable que el futuro de la Web será inteligente, es decir, estará lleno de información que las máquinas podrán comprender y, a partir de la
cual, extraer conclusiones de interés para el usuario. Tim Berners-Lee, creador de la WWW, lo sabı́a; por eso su idea original no fue una mera colección de documentos de hipertexto (webs) enlazados y accesibles a través
de Internet, ni siquiera la Web tal como la conocemos hoy, sino una web
dotada de significado, de información que pudiera ser interpretada tanto
por humanos como por máquinas [1]. Actualmente, este ambicioso proyecto se conoce como la iniciativa de la WS. El mismo Berners-Lee aclara su
propio concepto:
“El primer paso es colocar los datos en la Web de un modo en que las máquinas
puedan entenderlos naturalmente o convertirlos a esa forma. Esto crea lo que yo
llamo una Web Semántica: una red de datos que pueden ser procesados directa o
indirectamente por máquinas.” [1]
“La Web Semántica es una extensión de la actual Web en la cual la información se da mediante un significado bien definido, lo que facilita que los ordenadores
y la gente trabajen en cooperación.” [6]
“La Web Semántica proporcionará estructura al contenido importante de las
páginas web, creando un entorno donde los agentes de software7 que viajan de
página en página puedan enseguida llevar a cabo complicadas tareas para los
usuarios. Ası́, un agente que venga de la página web de la universidad no sólo
sabrá que la página tiene palabras como profesor, alumno, clase o asignatura (como
puede codificarse hoy), sino también que el profesor Antonio Jiménez Mavillard8
7
8
Un agente es una entidad capaz de percibir y actuar sobre un entorno.
Datos modificados del artı́culo original.
1.3. La Web Semántica
9
Figura 1.1: La Web Semántica de Tim Berners-Lee
trabaja en la universidad de lunes a viernes, y que un posible script9 tomarı́a un
rango de datos en el formato dı́a–mes–año y devolverı́a fechas y horarios de clase.”
[6]
La WS pretende ser una extensión de la Web actual (no una web paralela) en la que, gracias a la información extra añadida (metadatos), las
máquinas comprenderán el contenido de la Web. El término comprensión
referido a las máquinas no debe entenderse en el sentido humano (quizá algún dı́a), sino en el de inferir, deducir. Algunos autores prefieren utilizar
expresiones como procesable o accesible por las máquinas en lugar de comprensible o entendible, por ello a menudo se encuentra ası́ en la literatura.
En resumen, la WS puede definirse como una WWW donde la información
se encuentra estructurada y ordenada, de manera que puede ser procesada
por máquinas.
Se trata, por tanto, de saber procesar en lugar de comprender. Esta sutil
diferencia del lenguaje encierra un revolucionario cambio de filosofı́a y
reaviva la cuestión de la inteligencia de las máquinas, planteada desde los
orı́genes de las Ciencias de la Computación. En Maquinaria computadora e
9
Programa no compilado escrito en un lenguaje de programación sencillo.
10
Capı́tulo 1. Contexto
inteligencia (1950), Alan Turing decı́a:
“Creo que, a finales de siglo, (...) podrá hablarse de máquinas pensantes sin
levantar controversias.” [7]
Berners-Lee se muestra algo más escéptico:
“El concepto de documentos que las máquinas puedan entender no implica
ninguna inteligencia artificial que permita a la máquina comprender las palabras
de los humanos. Sólo indica la habilidad de la máquina para resolver un problema
bien definido desarrollando operaciones bien definidas sobre datos bien definidos.
En lugar de pedir a las máquinas que entiendan el lenguaje humano, implica pedir
a la gente que haga un esfuerzo.” [8]
Esta segunda opinión conlleva que en vez de abordar la inteligencia de
las máquinas desde el punto de vista de la Inteligencia Artificial, creando
agentes “súper inteligentes”, habrá que hacerlo desde el lado de la propia
Web. Algunos autores han llegado a interpretar la WS como la asunción
del fracaso de la Inteligencia Artificial: “como no conseguimos crear máquinas
con verdadera inteligencia artificial (idéntica a la inteligencia humana), vamos a
ponerles las cosas más fáciles a las máquinas añadiendo metadatos”. Este argumento es falaz y fácilmente refutable. Si hablamos a un japonés en español,
es muy probable que no nos entienda. Esto no significa que el japonés
carezca de inteligencia, sino que hemos elegido el lenguaje equivocado.
Del mismo modo, para hacernos entender por una máquina, debemos
hablar en algún lenguaje que ella pueda comprender, en su idioma; es decir, usar lenguajes formales. Estos lenguajes se conocen como lenguajes de
Representación del Conocimiento, los cuales definen correctamente el problema, las operaciones y los datos, y habilitan el Razonamiento Automático.
Con este objetivo se han desarrollado diversas tecnologı́as (cumpliendo los estándares de W3C10 ) que, aplicadas convenientemente, hacen posible la interoperabilidad semántica y constituyen la base de la WS (ver figura 1.2).
1.3.1.
XML
XML11 [9] se trata de un lenguaje con el que describir documentos me10
11
http://www.w3.org
eXtensible Markup Language
1.3. La Web Semántica
11
Figura 1.2: Arquitectura de la Web Semántica
diante etiquetas que el propio usuario define –de ahı́ que el lenguaje sea
extensible–. Aporta la sintaxis con la que estructurar contenidos pero sin
expresar nada acerca de la semántica [10]. Este lenguaje es frecuentemente
utilizado para el intercambio de datos en la Web. El siguiente código muestra un ejemplo de documento XML:
<?xml version="1.0" encoding="ISO-8859-1"?>
<libro>
<titulo> La historia interminable </titulo>
<autor> Michael Ende </autor>
</libro>
1.3.2.
RDF
RDF12 [11] es un lenguaje para representar declaraciones sencillas sobre los recursos de la Web. Utiliza la sintaxis XML y aporta semántica mediante ternas de la forma sujeto–verbo–predicado, es decir, estableciendo
relaciones entre recursos: un determinado elemento (sujeto) tiene cierta
propiedad (verbo) con un valor concreto (predicado). Cada recurso (su12
Resource Description Framework
12
Capı́tulo 1. Contexto
jeto, verbo o predicado) se identifica por una URI13 . El siguiente ejemplo
muestra cómo se describe un recurso en RDF:
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/DC/">
<rdf:Description about="http://www.cs.us.es/˜joaquin/blog">
<dc:CREATOR> Joaquı́n Borrego Dı́az </dc:CREATOR>
<dc:TITLE> Ontoblogia </dc:TITLE>
</rdf:Description>
</rdf:RDF>
1.3.3.
RDFS
RDFS14 [12] permite definir el vocabulario de un dominio categorizando los recursos en clases, propiedades e instancias, establecer relaciones
entre estas categorı́as, controlar qué propiedades pueden aplicarse a qué recursos y comprobar que los valores vinculados a una propiedad sean correctos. En el ejemplo siguiente, el recurso caballo es una subclase de animal.
<?xml version="1.0"?>
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xml:base="http://www.animals.fake/animals#">
<rdf:Description rdf:ID="animal">
<rdf:type rdf:resource="#Class"/>
</rdf:Description>
<rdf:Description rdf:ID=çaballo))
<rdf:type rdf:resource="#Class"/>
<rdfs:subClassOf rdf:resource="#animal"/>
</rdf:Description>
</rdf:RDF>
13
14
Universal Resource Identifier
RDF Schema
13
1.3. La Web Semántica
Tabla 1.1: Vocabulario de RDFS
1.3.4.
OWL
OWL15 [13] es un lenguaje para definir ontologı́as (apartado 1.4) que
añade un vocabulario más rico que RDFS para describir clases y propiedades, lo que lo hace más expresivo, sin comprometer en exceso su complejidad computacional (si un lenguaje es lo suficientemente expresivo como
para ser útil, las inferencias que se pueden extraer serán incompletas) [14].
OWL está estructurado en capas, cada una con un nivel de expresividad, diseñadas para satisfacer las necesidades especı́ficas de cada comunidad de usuarios. W3C define OWL con tres sublenguajes:
OWL Lite es el lenguaje más simple y menos expresivo. Esta diseñado
para aquellos casos que necesitan principalmente una clasificación
jerárquica y restricciones simples.
OWL DL permite la máxima expresividad conservando completitud computacional (garantiza que todas las conclusiones son computables) y resolubilidad (todos los cálculos se resuelven en tiempo
15
Ontology Web Language
14
Capı́tulo 1. Contexto
Tabla 1.2: Sintaxis y semántica en DL
finito). OWL DL es denominado de esta forma por su correspondencia con la Lógica Descriptiva (Description Logic), un campo de investigación que estudia la lógica que compone la base formal de OWL.
La Lógica Descriptiva es un subconjunto decidible16 de la Lógica de
Primer Orden y, por tanto, susceptible de aplicarse en razonamiento
automático. Con OWL DL es posible computar automáticamente la
clasificación jerárquica y chequear inconsistencias en la ontologı́a.
OWL Full es el lenguaje más potente en expresividad pero es indecidible. Este lenguaje se encuentra ya en su segunda versión, OWL
2, que ofrece nueva funcionalidad respecto a su antecesor, OWL 1.
El código siguiente representa una sección de ontologı́a donde se describe a una persona como un animal cuyos padres son también personas
y tienen un único padre.
<owl:Class rdf:ID="Person">
<rdfs:subClassOf rdf:resource="#Animal"/>
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="#hasParent"/>
<owl:toClass rdf:resource="#Person"/>
</owl:Restriction>
16
Una lógica es decidible si es computable en tiempo finito.
1.3. La Web Semántica
15
</rdfs:subClassOf>
<rdfs:subClassOf>
<owl:Restriction owl:cardinality="1">
<owl:onProperty rdf:resource="#hasFather"/>
</owl:Restriction>
</rdfs:subClassOf>
</owl:Class>
1.3.5.
Lógica
La Lógica es la disciplina que estudia los principios del razonamiento. Suministra una serie de reglas de inferencia que permiten aplicar razonamiento automático al conocimiento proporcionado por las ontologı́as
(apartado 1.4). De este modo, es posible determinar si los datos son correctos o inferir conclusiones a partir de ellos. La Lógica garantiza fiabilidad y proporciona pruebas al usuario, aumentando la confianza en los
resultados. El código siguiente es un ejemplo de inferencia en lógica de
predicados:
A partir de
%Todos los profesores son miembros de la facultad
prof (X) → f aculty(X)
%Todos los miembros de la facultad son empleados
f aculty(X) → staf f (X)
%Michael es un profesor
prof (michael)
se deduce
%Michael es miembro de la facultad
f aculty(michael)
%Michael es empleado
staf f (michael)
%Todos los profesores son empleados
prof (X) → staf f (X)
16
Capı́tulo 1. Contexto
1.4.
Ontologı́as
Sobre las tecnologı́as descritas anteriormente (ver figura 1.2) se sustentan las ontologı́as. En Filosofı́a, la Ontologı́a es la rama de la Metafı́sica que
estudia la naturaleza de la existencia. Abarca las categorı́as fundamentales
de existencia (qué entidades existen) y sus propiedades trascendentales
(que incluyen las relaciones entre las entidades existentes). Por analogı́a,
la Inteligencia Artificial tomó prestada esta idea para definir una ontologı́a
como un modelo del conocimiento en términos de qué conceptos hay17 y
cuáles son las relaciones entre ellos en el contexto de un dominio de discurso18 .
En términos generales, una ontologı́a consta de una taxonomı́a de clases, propiedades y axiomas. Las clases son los conceptos formalizados; las
propiedades son caracterı́sticas de las clases, que pueden ser atributos intrı́nsecos a la clase o relaciones establecidas entre ellas; los axiomas son
reglas lógicas que se declaran sobre los elementos de la ontologı́a. Formalmente, una ontologı́a es la declaración de una teorı́a lógica [15].
La literatura contiene numerosas definiciones de ontologı́a. Bob Neches (ARPA Knowledge Sharing Effort) dio la primera definición de ontologı́a en Inteligencia Artificial: “un instrumento que define los términos básicos y relaciones a partir del vocabulario de una área especı́fica, ası́ como las reglas
para combinar dichos términos y las relaciones para definir extensiones de vocabularios” [16]. Thomas Robert Gruber (ARPA Knowledge Sharing Effort),
investigador en el campo de la Inteligencia Artificial, define una ontologı́a
como “una especificación explı́cita y formal de una conceptualización compartida” [17]. Que la especificación sea explı́cita hace referencia a que una
ontologı́a identifica expresamente sus conceptos, propiedades, relaciones
y axiomas. El término formal indica que la ontologı́a debe implementarse
en algún lenguaje de representación de ontologı́as interpretable por un
computador. Una conceptualización es un modelo19 de un dominio. Que
la conceptualización sea compartida refleja la idea de que el conocimiento
capturado por la ontologı́a debe ser consensuado y descrito mediante un
vocabulario común consistente.
Existen distintos tipos de ontologı́as, atendiendo a diversos criterios de
17
En Inteligencia Artificial, lo que existe es lo que puede ser representado.
Conjunto de objetos que pueden ser representados cuando el conocimiento del dominio se representa de forma declarativa.
19
Abstracción o representación simplificada.
18
17
1.4. Ontologı́as
Figura 1.3: Elementos de una ontologı́a
clasificación. Según el ámbito de conocimiento al que se aplican, podemos
encontrar:
Ontologı́as generales. También llamadas ontologı́as fundacionales,
son las ontologı́as de más alto nivel. Describen conceptos generales,
independientes de cualquier dominio, por ejemplo, el espacio o el
tiempo.
Ontologı́as de dominio. Son las que describen algún dominio concreto de conocimiento, por ejemplo, vehı́culos o animales.
Ontologı́as de núcleo. Describen el núcleo de un dominio especı́fico,
sus conceptos y relaciones más importantes.
Ontologı́as de tarea. Esta clase de ontologı́as describe tipos genéricos de actividades, por ejemplo, la venta de productos, la edición de
un libro o el diagnóstico de una enfermedad.
Ontologı́as de aplicación. Describen algún dominio, pero de un modo dependiente de la aplicación para la que han sido destinadas.
Lo usual es que una ontologı́a no pertenezca sólo a una de estas categorı́as,
sino a varias.
18
Capı́tulo 1. Contexto
La principal caracterı́stica asociada a la utilización de ontologı́as es la
facilidad que ofrecen para compartir y reutilizar el conocimiento entre personas o sistemas de información. Existen múltiples ventajas que se derivan
de su uso:
Reutilizar una ontologı́a facilita el intercambio de conocimiento y la
comunicación entre personas, agentes inteligentes y sistemas de información, favoreciendo la consecución de objetivos comunes en colaboración.
Siempre que dos sistemas de información tratan de comunicarse y
compartir su información, pueden aparecer problemas de interoperabilidad semántica debido a que los sistemas no hablan el mismo
idioma. Las ontologı́as favorecen la integración de información y la
interoperabilidad entre fuentes heterogéneas de conocimiento.
Se puede anotar la información (ver figura 1.4) para permitir la posterior recuperación semántica. Especial interés tiene el uso que los
motores de búsquedas pueden hacer de las ontologı́as para realizar
búsquedas semánticas. Los términos que aparecen en la Web referenciarı́an a un concepto de una ontologı́a, con un significado inequı́voco. Se evitarı́an ası́ ambigüedades en las búsquedas de términos polisémicos. Además, las ontologı́as especificarı́an qué términos se refieren al mismo concepto, estableciendo relaciones de equivalencia
mediante axiomas, solucionando de este modo el problema de los
sinónimos.
Las ontologı́as pueden usarse para comprobar la validez de los datos.
La lógica añadida suministra una serie de reglas de inferencia, gracias a la cual es posible verificar si los datos son correctos. Más aun,
las reglas de inferencia permitirı́an deducir nuevo conocimiento a
partir del ya existente. Por ejemplo, un razonador automático puede
deducir fácilmente la respuesta la pregunta formulada anteriormente
(apartado 1.2): “Obtén la lista de los antiguos alumnos a los que el
profesor Joaquı́n Borrego impartió la asignatura de Seminario de Inteligencia Artificial en la Universidad de Sevilla y que ahora son profesores en universidades españolas”.
Las ontologı́as serán la base para programar agentes inteligentes. Toda la información será accesible para ellos. Los servicios web se describirán también mediante ontologı́as, de los que los agentes podrán
hacer uso automáticamente, sin intervención humana.
1.4. Ontologı́as
19
Figura 1.4: Anotación semántica usando una ontologı́a
1.4.1.
Dificultades de las ontologı́as
Numerosas investigaciones han argumentado las ventajas de usar ontologı́as para consensuar y compartir el conocimiento [16, 17, 18, 19, 20,
21, 22, 23, 24, 25, 26]. El éxito de las ontologı́as depende del desarrollo de
una verdadera disciplina de ingenierı́a para el diseño de ontologı́as [15]: la
Ingenierı́a Ontológica. Noy y McGuinness crearon una sencilla metodologı́a
de Ingenierı́a del Conocimiento para el desarrollo de ontologı́as [27]; Fernández y otros también aportaron su propio procedimiento para transformar el arte de construir ontologı́as en Ingenierı́a Ontológica [28].
La Ingenierı́a Ontológica es una poderosa aproximación a la interoperabilidad semántica. Los productos construidos, las ontologı́as, son, por
un lado, la pieza clave para la implementación de dicha interoperabilidad en organizaciones y empresas [29] y, por otro, el pilar fundamental
para implantar la WS. No podemos, no obstante, ignorar los problemas
que plantea instaurar la WS y las crı́ticas de sus detractores. Uno de estos problemas radica en que la creación de ontologı́as consensuadas dista
mucho de ser una tarea rápida. En cualquier área de conocimiento, resulta
difı́cil que los actores involucrados se pongan de acuerdo en definir una
ontologı́a común. Las ontologı́as no son verdades universales, sino modelos del universo. Dependen del punto de vista de la persona que las creó y
del campo de aplicación. Por ello, crear una ontologı́a no es garantı́a de
reusabilidad e interoperabilidad si su definición no va acompañada del
debido consenso [19].
20
Capı́tulo 1. Contexto
1.4.2.
Soluciones colaborativas
De las dificultades citadas, se puede concluir que el proceso de diseñar
una ontologı́a debe ser cooperativo. Existen trabajos [17] donde ya se planteaban cuestiones que incluı́an cómo grupos de personas pueden alcanzar
un consenso en conceptualizaciones compartidas. Aranda-Corral y otros
proponen que sean los propios usuarios de las ontologı́as los que describan sus usos de forma colaborativa haciendo uso de una wiki [30].
Una wiki se puede entender como una colección de documentos de
hipertexto simplificado que son leı́dos y editados por una comunidad [31].
Fue inventada por el programador Ward Cunningham en 1994 cuando estaba buscando un método para recopilar ejemplos de tareas comunes de
programación entre un grupo de desarrolladores. La idea era construir un
software que permitiera a los usuarios crear y editar libremente contenido
web usando un navegador. Desde entonces, las wikis se han erigido en una
de las formas más universales de colaborar en red, y muchas comunidades
en lı́nea emplean wikis para intercambiar conocimiento [32]. Trabajos como el de Ebersbach y otros [33] avalan esta afirmación. En concreto, algunas de las razones que las han popularizado son:
La wiki presenta su contenido en formato comprensible para todos
los perfiles de usuario, principalmente en lenguaje natural.
Una wiki hace posible la creación de contenido colaborativo.
Los usuarios de una wiki se organizan en comunidades con intereses
en temas comunes.
Este planteamiento de cooperación no es novedoso, pues se remonta a
la concepción inicial de la Web. Tim Berners-Lee la concibió de tal forma
que favoreciera, además de la interactuación entre máquinas, la colaboración entre personas [1]. La Web ha evolucionado desde su creación hacia esa idea original; hasta llegar a lo que hoy se conoce como la Web 2.0
(W2.0). Para Tim O’Reilly, la W2.0 se fundamenta en siete pilares básicos
[34], de los que cabe destacar los siguientes:
La Web como plataforma de trabajo.
El aprovechamiento de la inteligencia colectiva.
1.4. Ontologı́as
21
Experiencias enriquecedoras para el usuario.
Sobre estos pilares se sustentan multitud de aplicaciones de enorme éxito.
Yahoo!20 , eBay21 , Amazon22 , del.icio.us23 o Wikipedia24 son sólo algunos
ejemplos del gran acierto que supuso el cambio de mentalidad surgido en
el año 2005.
La filosofı́a wiki encaja por completo con los valores 2.0:
La Web como plataforma de trabajo. La Web fue originalmente concebida como un espacio de información hipertextual; pero el desarrollo de tecnologı́as cada vez más sofisticadas han extendido su uso
como interfaz remota de software [35]. Este es el caso de la wiki.
El aprovechamiento de la inteligencia colectiva. Los hipervı́nculos
constituyen los cimientos de la Web. A medida que los usuarios agregan nuevo contenido, y sitios web nuevos, se enlazan con la estructura de la Web gracias a otros usuarios que descubren el contenido
y enlazan con él. De forma muy parecida a la sinapsis del cerebro,
donde las asociaciones llegan a ser más fuertes a través de la repetición o la intensidad, la red de conexiones crece orgánicamente como
resultado de la actividad colectiva de todos los usuarios de la Web
[34]. Del mismo modo, los usuarios de la wiki editan colaborativamente los artı́culos, a la vez que crean otros nuevos y los enlazan
con el resto, crean comunidades de usuarios que comparten intereses comunes y completan cada vez más la información contenida en
la wiki.
Experiencias enriquecedoras para el usuario. Como muchos conceptos simples, la edición abierta tiene efectos profundos y sutiles sobre el
uso de la wiki. Permitir a los usuarios crear y editar cualquier página
de un sitio web es excitante, ya que fomenta el uso democrático de
la Web y promueve la composición de contenidos por usuarios no
técnicos25
20
http://www.yahoo.com
http://www.ebay.com
22
http://www.amazon.com
23
http://www.delicious.com
24
http://www.wikipedia.com
25
Usuarios no expertos en un determinado área de conocimiento.
21
22
1.5.
Capı́tulo 1. Contexto
Conclusiones
La Web actual debe seguir avanzando y evolucionar hacia la WS y para
ello es necesario generalizar la adopción de ontologı́as. La tendencia va en
ese sentido: las ontologı́as se han vuelto cada vez más comunes en muchas
aplicaciones. Estas aplicaciones a menudo necesitan de ontologı́as de gran
complejidad para modelar correctamente un sistema. Ontologı́as de tales
magnitudes no pueden generarse por una sola persona, sino que han de
desarrollarse en entornos distribuidos, por diferentes autores, cada uno
con sus propios conocimientos [36]. Por lo tanto, se necesitan herramientas
que den soporte a estas ideas de creación y mantenimiento de ontologı́as
colectivo.
En lo que sigue, se va a estudiar el uso de wikis como medio para
diseñar y revisar ontologı́as colaborativamente, ası́ como para describir
sus usos y discutir las experencias de los propios usuarios. Antes, se hace
una revisión del estado del arte sobre semántica en wikis.
Capı́tulo 2
Estado del arte
2.1.
Web 2.0 y Web Semántica
Mientras que la W2.0 ha introducido nuevas vı́as para construir y compartir datos colectivamente, la WS, por su parte, proporciona los medios
para representar esos datos de forma que sean interoperables y procesables
por máquinas. Estos dos campos a menudo se han considerado erróneamente disjuntos [37]. Sin embargo, la WS no es una Web paralela, sino
una extensión de la Web actual que anota sus páginas con metadatos. Esto
incluye a las webs de las wikis, que también se pueden anotar semánticamente conformando una wiki semántica. Esta idea de combinar la tecnologı́a wiki con tecnologı́as de la WS está considerada por muchos miembros de ambas comunidades como una alternativa prometedora a las soluciones actuales para la creación y uso colaborativo de la información en la
Web.
El concepto de wiki semántica surge de forma natural cuando hablamos
de los términos semántica y wiki, aunque no necesariamente todas las wikis
que manejan estas dos ideas han de ser semánticas propiamente dicho.
Una wiki semántica es un sistema colaborativo de edición en la WS [38],
que básicamente extiende a una wiki tradicional con tecnologı́a semántica,
como OWL o RDF [39]. Se puede decir que circunscribe las ideas de la WS
al entorno wiki.
Estas wikis tienen un modelo de conocimiento subyacente descrito en
sus propias páginas. Las wikis tradicionales contienen texto estructurado
23
24
Capı́tulo 2. Estado del arte
Figura 2.1: Metaweb = Web Semántica + Web 2.0
e hipervı́nculos sin clasificar, mientras que las wikis semánticas contienen
anotaciones semánticas que permiten realizar consultas a sus páginas sobre información especı́fica contenida en ellas o sobre relaciones entre ellas. Algunas de las caracterı́sticas más frecuentes en las wikis semánticas son la tipificación de páginas y de enlaces con términos de ontologı́as
[40], la presentación de información dependiendo del contexto, la navegación mejorada (gracias a los enlaces anotados), la búsqueda semántica y
el razonamiento automático (soportado sólo por un número pequeño de
wikis).
Existen numerosos trabajos, como el de Dello y otros [41], que analizan
las ventajas de añadir semántica a los sistemas wiki. Además, se han organizado (y se sigue haciendo debido al enorme interés suscitado) congresos especı́ficos cuyo único tema ha sido el de las wikis semánticas. Caben
destacar como ejemplos el prestigioso SemWiki [42, 43, 44, 45] o el WikiSym1 .
A continuación se presenta un estudio de diversos trabajos seleccionados donde se relacionan semántica y wikis, en el que además se incluye
una comparativa de dichas aplicaciones respecto a las siguientes caracterı́sticas:
1
http://www.wikisym.org
2.2. Semántica y wikis
25
Objetivos: própositos perseguidos por la aplicación.
Tecnologı́a utilizada.
Usuario objetivo: perfil del usuario al que va dirigida.
Ontologı́as involucradas, ya sean propias de la aplicación (organización intrı́nseca del sistema), creadas por el usuario (ontologı́as tı́picamente de dominio) o de edición de contenidos.
Organización del conocimiento: organización lógica y fı́sica de la información.
Extensibilidad: mecanismos para extender la aplicación.
Extracción del conocimiento: procedimientos para extraer la información contenida.
2.2.
Semántica y wikis
2.2.1.
AceWiki
AceWiki2 [46] trata de superar dos dificultades de las wikis semánticas:
por un lado, la que tienen los usuarios no expertos en su uso; y por otro,
el soporte insuficiente que dan a los lenguajes de ontologı́as expresivos.
La novedad en AceWiki es el uso del lenguaje natural controlado ACE3
[47] para representar el contenido. ACE es un subconjunto muy rico del
inglés estándar que parece lenguaje natural pero es en realidad un lenguaje
formal con una gramática restringida y una semántica formalizada. ACE
permite a los usuarios modificar el contenido de la wiki de forma intuitiva, ocultando los detalles de la ontologı́a y la lógica de fondo. Según sus
autores, también puede mejorar la usabilidad y es más expresivo que los
lenguajes formales de otras wikis semánticas existentes. De hecho, existe
una correspondencia4 biunı́voca entre ACE y OWL.
El objetivo principal de AceWiki es mejorar la gestión del conocimiento, concretamente la agregación de información y la representación. Para
2
http://attempto.ifi.uzh.ch/acewiki
Attempto Controlled English
4
Excepto para propiedades datatype y algunas descripciones de clase muy complejas.
3
26
Capı́tulo 2. Estado del arte
Figura 2.2: Interfaz web de AceWiki
lograrlo, AceWiki se rige por unos principios de diseño enfocados a la usabilidad pero sin sacrificar el grado de expresividad. Estos principios son:
Naturalidad. Se obtiene gracias al uso de ACE, mediante el cual la
ontologı́a se representa en un formato cercano al lenguaje natural.
Las clases se escriben como sustantivos, las relaciones como verbos
y los individuos como nombres propios. Además, la información se
expresa de forma humana y se evita terminologı́a técnica. Por ejemplo, en vez de decir “hombre es una subclase de humano”, se dice “todo
hombre es un humano”.
Uniformidad. Sólo se usa un lenguaje en toda la interfaz. Es decir,
la representación de la ontologı́a, la lógica para definir las reglas y el
lenguaje de consultas5 es el mismo: ACE. Toda la información de la
wiki es formal, sin necesidad de añadir anotaciones ni metadatos.
Guı́a de usuario estricta. Un editor predictivo se encarga de que el
usuario sólo pueda crear declaraciones bien formadas, guiándolo paso a paso y haciendo sugerencias. Este editor es consciente de la ontologı́a de fondo, lo cual hace imposible al usuario formular expresiones incorrectas. El razonador integrado, HermiT6 , se asegura de
que el contenido de la wiki siempre es consistente. Más aun, puede
inferir la jerarquı́a de clases y la pertencia a clases.
5
6
Se añade un signo de interrogación, ?, al final de la consulta.
http://www.hermit-reasoner.com
2.2. Semántica y wikis
27
El editor de AceWiki puede usarse para extender la ontologı́a de fondo creando nuevos conceptos, roles o individuos. Por tanto, es también
un editor muy simple de ontologı́as. Esta ontologı́a puede ser extraı́da en
formato OWL.
AceWiki está programada en Java7 y su interfaz utiliza tecnologı́a AJAX8 .
Además, da soporte al almacenamiento persistente (aunque de forma muy
rudimentaria) en texto.
2.2.2.
COW
COW9 [48] es una wiki semántica cuyo objetivo es crear y editar ontologı́as colaborativamente a través de una wiki. Esta herramienta aprovecha la facilidad de edición de las wikis para ocultar la complejidad ontológica.
COW integra un navegador visual que habilita la edición colaborativa de ontologı́as. Este editor proporciona una interfaz web y su sencillez
permite a usuarios no expertos contribuir al crecimiento de la ontologı́a
y seguir su evolución sin necesidad de aprender lenguajes como OWL o
RDF. El editor está construido sobre el framework KAON [49, 50, 51], el
cual, junto a los mecanismos de bloqueo, se asegura de que las ontologı́as
se mantienen consistentes. Los mecanismos de bloqueo impiden que durante la edición de una ontologı́a, ésta pueda ser manipulada por otros
usuarios. Tras salvar los cambios, KAON comprueba su consistencia.
KAON también actúa como procesador de consultas. Se pueden hacer consultas a la ontologı́a, tanto de forma interactiva como integradas en
el propio texto de la wiki. Para la primera opción, existe una página especı́fica dedicada a tal fin. En la sengunda opción, la consulta se hace en
el lenguaje que facilita KAON y se incrusta directamente en el texto de la
wiki. El resultado de las consultas suele ser una o varias instancias de la
ontologı́a, que se muestran como enlaces a los artı́culos de la wiki y a las
instancias en el navegador visual. Existe la posibilidad de utilizar plantillas de consultas. Estas plantillas corresponden a consultas tı́picas, creadas
por expertos. Los usuarios no expertos simplemente deben suministrar la
información que falta para completar la consulta.
7
http://www.java.com
Asynchronous JavaScript And XML
9
Combining Ontologies with Wikis
8
28
Capı́tulo 2. Estado del arte
Figura 2.3: Editor y navegador ontológico de COW
En COW, el contenido de las páginas es una combinación de texto
normal y contenido dinámico. El texto es introducido por el usuario en
lenguaje natural, con información acerca del tema del artı́culo. El conocimiento ontológico, en cambio, no se edita y almacena en la propia wiki,
sino en una base de datos aparte. Las páginas utilizan este conocimiento para generar contenido dinámico producido por las consultas de los
usuarios.
COW tiene disposición multinivel (ver figura 2.4: capa de persistencia
(base de datos), capa ontológica (KAON), capa de abstracción e interfaz de
usuario. Una arquitectura de tales caracterı́sticas proporciona varias ventajas: permite conectar distintos gestores de bases de datos (MSSQL10 o
PostgreSQL11 ), distintos motores de wiki (los autores lograron integrarar
la funcionalidad de COW en JSPWiki –apartado 2.2.4– de manera satisfactoria) y la interacción del usuario con COW se realiza exclusivamente
usando un navegador web.
10
11
http://www.microsoft.com/sqlserver/en/us/default.aspx
http://www.postgresql.org
2.2. Semántica y wikis
29
Figura 2.4: Arquitectura de COW
2.2.3.
IkeWiki
IkeWiki12 [39, 52] es un motor de wiki semántico escrito en Java. Originalmente fue diseñado como una herramienta de Ingenierı́a Ontológica,
siguiendo unos principios enfocados a dar soporte a la formalización del
conocimiento colaborativo [53]. Posee una interfaz interactiva muy parecida a la de Wikipedia (MediaWiki13 ) que la convierte en una herramienta fácil de utilizar tanto por usuarios expertos como no expertos en tecnologı́a. Su editor WYSIWYG14 interactivo usa tecnologı́a AJAX para comunicarse con el servidor de información. Este editor, que también admite la anotación interactiva de enlaces y recursos, está pensado para el
usuario no técnico. Además, y orientado al usuario más experimentado,
dispone del tradicional editor de texto estructurado presente en las wikis,
que en este caso utiliza una sintaxis similar a la de MediaWiki, lo que lo
hace compatible con Wikipedia. Las anotaciones semánticas se encuentran
separadas del lenguaje de marcado de la wiki.
IkeWiki es una herramienta que cuenta con diferentes funcionalidades
entre los distintos perfiles de usuario para facilitar el trabajo colaborativo. Asimismo, existen distintos niveles de formalización del conocimiento
según las necesidades, que pueden ir desde textos informales hasta ontologı́as formales. Las ontologı́as se pueden importar y exportar; también
12
http://ikewiki.salzburgresearch.at
http://www.mediawiki.org/wiki/MediaWiki
14
What You See Is What You Get, lo que ves es lo que (ob)tienes.
13
30
Capı́tulo 2. Estado del arte
Figura 2.5: Interfaz de IkeWiki
crear y editar, aunque de forma muy limitada (a escala de clases y propiedades). El propósito principal no es diseñar, sino reutilizar ontologı́as
externas y crear instancias de ellas. Es completamente compatible con los
estándares de la WS, ya que está basado puramente en estándares como
RDF y OWL. Esto garantiza el intercambio de datos con otras aplicaciones
semánticas. Además, es posible aplicar razonamiento automático sobre su
base de conocimiento a nivel de OWL/RDFS. También admite búsquedas
semánticas mediante una sintaxis en texto plano o con SPARQL [54] como
lenguaje de consultas.
IkeWiki está implementada como una aplicación web codificada por
completo en Java. A través de un navegador (en este caso, sólo funciona
con Mozilla Firefox15 ), accede a un servidor web que ofrece el contenido
renderizado de una base de datos Postgres16 . Esta base de datos contiene
toda la información relativa a las páginas de la wiki y a los datos RDF (que
usa Jena17 para su representación).
15
http://www.mozilla-europe.org/es/firefox
Posteriormente llamada PostgreSQL.
17
http://jena.sourceforge.net
16
2.2. Semántica y wikis
31
Figura 2.6: Arquitectura de IkeWiki
2.2.4.
JSPWiki
JSPWiki18 es un motor wiki basado en tecnologı́a JSP19 . Está escrito
completamente en Java y tiene una estructura de diseño que facilita su
extensión mediante plugins que añaden nueva funcionalidad a la wiki.
La sintaxis de JSPWiki es muy sencilla y los metadatos son añadidos
directamente al texto de la wiki usando etiquetas especiales [55]. Utiliza
Lucene20 para las búsquedas, incluye sistema de autenticación [56] e implementa el concepto de StorageProvider intercambiable, esto es, el método de almacenamiento puede cambiar y la información puede ser almacenada en texto plano (por defecto) o en una base de datos. Esta caracterı́stica
habilita el control de versiones de las páginas [57].
2.2.5.
KiWi
KiWi21 [58] es una wiki semántica cuyo objetivo es habilitar la gestión
del conocimiento de manera eficiente a través del software social. Por ello,
esta wiki proporciona una plataforma para construir diferentes tipos de
software semántico social. Schaffert, creador de KiWi, justifica este uso al
18
http://www.jspwiki.org
JavaServer Pages, http://java.sun.com/products/jsp
20
http://lucene.apache.org
21
Knowledge in a Wiki, http://www.kiwi-project.eu
19
32
Capı́tulo 2. Estado del arte
Figura 2.7: Interfaz de IkeWiki
afirmar que la mayorı́a del software social, como son los blogs o las redes
sociales, sigue los mismos principios que la filosofı́a wiki: libre edición,
usabilidad, enlazado de conceptos, soporte para versiones, soporte multimedia, etc.
El propósito principal de KiWi es la gestión del conocimiento en comunidades o entornos corporativos, haciendo especial énfasis en la conjunción colaboración – tecnologı́as semánticas. Aspira a corregir errores como,
por ejemplo, la inconsistencia de la información (un defecto frecuentemente mencionado) que a menudo aparece en las wikis tras su uso diario.
Kiwi puede adecuarse a los requisitos de cada organización o comunidad
en la que se haya desplegado, y eso supone su adaptación a un gran espectro de perfiles de usuario. Por ello, esta wiki ofrece estructuras apropiadas
y una interfaz modificable que da soporte a las necesidades especı́ficas de
cada usuario.
En KiWi, la unidad básica de información es la página, que puede
ser visualizada, editada o anotada con etiquetas. Esta información sigue
una aproximación que Schaffert y otros [59] denominan versatilidad de contenido. La idea es que cada unidad de información tiene asociada tanto
2.2. Semántica y wikis
33
Figura 2.8: TagIT: información geográfica en KiWi
información informal para los usuarios como información formal para las
máquinas, y que la misma unidad básica puede presentarse al usuario de
múltiples formas: como la página de una wiki, como el post de un blog, como una foto, como una burbuja con información en un mapa, etc. Esta caracterı́stica se consigue gracias a la representación utilizada: cada página se
identifica por una URI, el contenido informal usa el formato XHTML y los
metadatos asociados, RDF. La versatilidad de contenido, junto a una interfaz flexible, permite que KiWi se comporte como una plataforma genérica
para construir diferentes tipos de aplicaciones sociales.
La aplicación principal y más genérica es la wiki semántica KiWi Wiki,
que continúa a IkeWiki. La interfaz KiWi Wiki puede usarse de igual forma
y ofrece la misma funcionalidad que su predecesora: importación/exportación, razonamiento, consultas, etc.
El sistema KiWi está implementado en Java y utiliza Hibernate22 como
medio para almacenar los datos en una base de datos relacional.
22
http://www.hibernate.org
34
Capı́tulo 2. Estado del arte
Figura 2.9: Arquitectura de KiWi
2.2.6.
Makna
Makna23 [41] es una herramienta para la Ingenierı́a de Conocimiento
distribuido. Está basada en JSPWiki y la extiende con componentes dirigidos por ontologı́as para editar contenidos colaborativamente, hacer consultas y navegar por la información de la WS. Este sistema se centra en
explotar fácil y rápidamente el contenido semántico.
Makna comparte la misma motivación que la WS: (entre otras,) recuperar, de forma eficiente, información especı́fica entre una inmensidad de
información disponible. Por ello, el sistema provee de mecanismos para la
creación y gestión de datos semánticos. En concreto, permite a los usuarios
de la wiki anotar su contenido en términos de añadir, eliminar o modificar
sentencias RDF a través del framework Jena.
Es posible integrar ontologı́as disponibles en la Web, referenciándolas
a nivel de sintaxis y utilizándolas para clasificar y mejorar la navegación
en la wiki. También proporciona razonamiento automático para recuperar
información o chequear la consistencia del contenido (aunque, para evitar problemas de rendimiento, se restringe esta caracterı́stica a un conjunto de ontologı́as definido). Pese esta interacción con ontologı́as, Makna
23
http://makna.ag-nbi.de
2.2. Semántica y wikis
35
Figura 2.10: Arquitectura de Makna
no está dirigida a la Ingenierı́a Ontológica colaborativa y, por tanto, no
incluye mecanismos para la creación colectiva de ontologı́as ni permite
que usuarios arbitrarios realicen cambios a nivel ontológico. La manipulación de las ontologı́as utilizadas está limitada a un grupo de usuarios
restringido (administradores) mientras que las instancias sı́ pueden ser
modificadas por cualquier usuario del sistema.
Mediante la interfaz de administrador, se pueden especificar las ontologı́as que van a ser usadas dentro del sistema e importar datos RDF
externos. A través de la interfaz de usuario se pueden referenciar las ontologı́as importadas para anotar en forma de declaraciones RDF el contenido de la wiki o definir typed links24 (ver figura 2.12), y también exportar los datos representados semánticamente como RDF. Makna también
implementa una interfaz que hace uso de Jena como motor de inferencia
para habilitar las consultas semánticas.
Por último, hay que notar que siempre que un usuario haga alguna
modificación en la wiki, se chequea la validez de los cambios inmediatamente, informando del posible error al usuario. De este modo, la consistencia del modelo semántico está siempre garantizada.
24
Los typed links son enlaces entre artı́culos a los que se le ha añadido alguna semántica
(habitualmente, el tipo de relación entre los conceptos representados por los artı́culos
enlazados).
36
Capı́tulo 2. Estado del arte
Figura 2.11: Separación entre ontologı́a e instancias en Makna
2.2.7.
Moki
Los objetivos de Moki25 [60, 61] son muy especı́ficos: dar soporte al modelado de empresa. El modelado de empresa se centra en construir una descripción estructurada de los aspectos relevantes de una empresa, es decir,
el modelo de empresa. Fox y Grüninger [62] definen el modelo de empresa
como “una representación computacional de la estructura, actividades, procesos,
información, recursos, personas, comportamiento, objetivos y limitaciones de un
negocio, gobierno o empresa”. Rospocher y otros [60] consideran que el modelado de una empresa requiere demasiadas habilidades por parte de una
sola persona y que, por tanto, debe ser una actividad inherentemente colaborativa entre distintos actores: expertos en el dominio, ingenieros de
conocimiento y técnicos capaces de integrar los distintos aspectos y dar
una visión coherente y uniforme. Moki es una wiki semántica capaz de
sustentar estas ideas:
Soporta diferentes niveles de formalismo (informal para los expertos
en el dominio y formal para los ingenieros de conocimiento).
Proporciona acceso multimodo con distinta funcionalidad para cada
perfil de usuario [63].
25
Modeling wiKi, https://moki.fbk.eu
2.2. Semántica y wikis
37
Figura 2.12: Typed pages y typed links
Integra los diversos aspectos del modelado de una empresa.
En el apartado colaborativo, los expertos en el dominio introducen el
conocimiento de manera informal en Moki; el sistema traduce semiautomáticamente parte de este conocimiento informal en una especificación
formal y viceversa; y, ası́ncronamente, los ingenieros de conocimiento pueden refinar el modelo formal insertando nuevos elementos, modificando
el conocimiento existente o pidiendo aclaraciones a los expertos en el dominio. Una caracterı́stica muy importante de esta aproximación es que se
crea un alineamiento entre el conocimiento informal y su descripción formal. Este hecho proporciona un valor añadido al modelo de empresa ya
que la documentación contenida en la parte informal es crı́tica para entender la parte formal. De este modo, el modelo puede ser explotado tanto
por humanos como por máquinas.
En cuanto a la integración, Moki considera tres aspectos interconectados: dominio, procesos y competencias (ver figura 2.13). El modelo de dominio proporciona la descripción del dominio de negocio en el que opera
la empresa, y se formaliza mediante una ontologı́a OWL. El modelo de
procesos describe los patrones y procedimientos que ocurren en el dominio de negocio de la empresa, los cuales se definen por medio de un
flujo de control. Dicho flujo se organiza en una jerarquı́a de tareas y subtareas, y se formaliza en otra ontologı́a en OWL o en BPMN26 . El modelo de
competencias describe las aptitudes de los empleados de la empresa para
desempeñar las tareas y cumplir con los objetivos. Las competencias expresan los conocimientos que debe poseer un empleado sobre el dominio
para llevar a cabo una tarea. Este modelo interconecta los modelos de dominio y de procesos.
26
Business Processes Modelling Notation, http://www.bpmn.org
38
Capı́tulo 2. Estado del arte
Figura 2.13: Metamodelo de empresa en Moki
Moki se basa en Semantic MediaWiki (SMW) (apartado 2.2.12), extendiéndola especı́ficamente para dar soporte al modelado de empresa. Sus
desarrolladores eligieron SMW por su usabilidad y porque proporciona
un entorno idóneo para la colaboración y uniforme para integrar los distintos componentes del modelo de empresa. Cada página de la wiki contiene la descripción de un elemento de alguno de los modelos, separada
en dos partes: una descripción informal del elemento en lenguaje natural
que sirve como documentación para otros usuarios (por ejemplo, referencias a documentos fuente, notas sobre opciones de modelado, problemas
abiertos, etc.); y una descripción estructurada mediante declaraciones con
formato (sujeto,relación,objeto) (al estilo RDF) que relacionan al elemento
con otros elementos (por ejemplo, clase y subclase en el modelo de dominio, tarea y subtarea en el modelo de procesos, conocimiento requerido
entre elementos de los modelos de dominio y de procesos, etc.). Esta forma de representar el conocimiento establece un valioso puente entre la
representación formal e informal de cada elemento.
Otras caracterı́sticas importantes son la capacidad de Moki de importar y exportar ontologı́as OWL, y la visualización gráfica. Al importar un
modelo (dominio, procesos o compentencias), se crean las páginas correspondientes en la wiki con la información de cada elemento del modelo.
Asimismo, al exportar el contenido de la wiki, se crea una ontologı́a OWL.
Es posible exportar los distintos modelos de forma independiente. Gracias
a las funciones de visualización, Moki puede mostrar una vista basada en
árbol (jerárquica) de la taxonomı́a de conceptos presentes en la ontologı́a.
39
2.2. Semántica y wikis
Figura 2.14: Interfaz de Moki
2.2.8.
ODEWiki
ODEWiki [64] se basa en JSPWiki y ofrece la mayorı́a de las funcionalidades tı́picas de las wikis semánticas: anotación, edición, búsqueda, navegación y visualización. La principal novedad es su integración con el portal semántico ODESeW27 [65]. ODESeW es una aplicación basada en ontologı́as que genera y gestiona automáticamente un portal de conocimiento28
[66] para intranets y extranets. Este portal permite modelar el conocimiento mediante una plataforma de desarrollo de ontologı́as, visualizar y editar el contenido mediante la edición y documentación de instancias de ontologı́as, buscar y hacer consultas. ODESeW está diseñado en la capa más
alta de WebODE29 [67, 68, 69], una plataforma de Ingenierı́a Ontológica
extensible que da soporte a la mayorı́a de las actividades involucradas en
el proceso de desarrollo de ontologı́as: conceptualización, razonamiento,
interoperabilidad, etc.
ODEWiki interopera con ODESeW, que actúa como repositorio de conocimiento además de como sistema alternativo de publicación. Cada pági27
Semantic Web Portal based on WebODE platform
Sitio web basado en conocimiento (comunmente estructurado en ontologı́as) que permite el acceso colectivo a su información y aplicaciones.
29
http://webode.dia.fi.upm.es/WebODEWeb/index.html
28
40
Capı́tulo 2. Estado del arte
Figura 2.15: Interfaz de ODEWiki
na de ODEWiki puede contener una o varias instancias de ontologı́a. Incluye una interfaz WYSIWYG para editar las páginas ası́ como para anotar su contenido con datos semánticos en formato RDFa [70], insertados
en la propia página. Los usuarios pueden hacer estas anotaciones de dos
formas: usando datos semánticos del portal de conocimiento o creando
nuevos datos, que serı́an añadidos automáticamente a la base de conocimiento del portal.
Una caracterı́stica importante de ODEWiki es su capacidad para gestionar las inconsistencias surgidas como consecuencia del desarrollo de
una base de conocimiento de naturaleza distribuida, como es esta wiki/portal. ODEWiki proporciona mecanismos para detectar automáticamente las inconsistencias introducidas por un usuario. Las posibles inconsistencias se dan entre una página de la wiki que está siendo modificada
–pero aun no ha sido guardada– y la base de conocimiento. Por este motivo, no se recomienda usar ODEWiki en entornos abiertos, sino dentro de
entornos controlados, como compañı́as u organizaciones.
2.2. Semántica y wikis
2.2.9.
41
Ontobrowse
En sentido general, el conocimiento arquitectural comprende la forma
(canales de comunicación, esquemas de coordinación, etc.) en la que se
integran los distintos componentes del conocimiento en una organización
[71]. Se trata, por tanto, de un tipo de conocimiento fundamentalmente
colectivo. Partiendo de esta premisa, Happel y Seedorf crearon Ontobrowse
[72], una herramienta ideada especı́ficamente para compartir el conocimiento arquitectural de un sistema. En el ámbito de la Ingenierı́a del Software, el adjetivo arquitectural hace referencia a la arquitectura de software
de una aplicación. La arquitectura de software es la abstracción de más alto nivel de la estructura de un sistema; sirve de enlace entre la elicitación
de requisitos y el diseño concreto; y en su desarrollo y mantenimiento intervienen distintas partes, cada una con sus intereses: los desarrolladores
requieren soporte técnico y guı́a para sus tareas de implementación, los arquitectos de sistema necesitan medios para el análisis y la documentación,
los expertos en negocio priorizan la funcionalidad y eficiencia...
Ontobrowse es una aplicación que se compone principalmente de una
interfaz web, un motor wiki, una API para ontologı́as y un gestor de plugins. La infraestructura de plugins hace posible integrar conocimiento proveniente de fuentes externas. Las ontologı́as, por su parte, definen la estructura del conocimiento arquitectural y están asociadas a sus correspondientes bases de conocimiento, que contienen las instancias. La estructura
del sistema es modular para que nuevas ontologı́as puedan ser añadidas
en cualquier momento. Estas caracterı́sticas de extensibilidad son particularmente importantes en configuraciones de desarrollo distribuido [73],
donde los participantes tienen que compartir su conocimiento con otros
desarrolladores.
Ontobrowse aborda temas clave en la documentación y el mantenimiento de las arquitecturas de software, tendiendo un puente entre la
información técnica y la documentación de negocio. Existen dos formas
de documentar las instancias:
Mediante la interfaz de usuario de la wiki, añadiendo descripciones
tanto formales como informales a las caracterı́sticas de una instancia.
A través de aplicaciones conectadas a la wiki, mapeando recursos de
descripción arquitectural externos con las instancias de la ontologı́a.
42
Capı́tulo 2. Estado del arte
Figura 2.16: Arquitectura de Ontobrowse
Es decir, las instancias de la ontologı́a pueden editarse en la propia wiki
o importarse desde fuentes externas. Una entidad importada a la base de
datos de la ontologı́a puede ser descrita con texto o con metadatos.
En esta wiki, una página se interpreta como una entidad contenida en
la base de conocimiento: bien un concepto, una relación, un atributo o una
instancia. Cada página tı́picamente consiste en contenido informal y propiedades formales que establecen asertos sobre la página (por ejemplo,
un objeto de negocio que es semánticamente descrito por un concepto de
un dominio). Gracias a su representación formal basada en ontologı́as, es
posible realizar búsquedas y consultas, y chequear la consistencia del contenido de la wiki.
El principal escenario de aplicación de Ontobrowse es la documentación
de arquitecturas orientadas a servicios (SOA) en una empresa [74]. SOA es
un tipo de arquitectura de software que construye aplicaciones de negocio a partir de servicios30 independientes, débilmente acoplados [75]. Una
arquitectura SOA ofrece un marco de trabajo para sistemas bien integrados que satisfacen las necesidades de negocio [76] bajo el paradigma de
30
Un servicio es una entidad software que provee su propia funcionalidad de negocio
a través de interfaces bien definidas. Se corresponden con operaciones de negocio de una
organización.
2.2. Semántica y wikis
43
Figura 2.17: Interfaz de Ontobrowse
cohesionar servicios simples para realizar flujos de trabajo complejos.
Cualquier proyecto SOA maneja habitualmente tanto descripciones formales como informales. Para integrar descripciones arquitecturales en la
wiki son necesarios dos pasos: construir una ontologı́a SOA y definir un
plugin que realice el mapeo del conocimiento arquitectural de una fuente
externa a la ontologı́a. El propósito de la ontologı́a SOA es suministrar la
estructura inicial31 a la wiki semántica para que tanto expertos en el negocio como desarrolladores puedan documentar los servicios.
La arquitectura descrita en la figura 2.16 está implementada en Java
(Spring32 e Hibernate33 para la aplicación y para la capa de persistencia, y
JavaServer Faces34 para la interfaz web). La API de ontologı́as utiliza OWL
como lenguaje de representación, el razonador se puede configurar para
usar Jena o KAON2 y las consultas se realizan en SPARQL o SWRL35 [77]
(aunque estea último de forma experimiental).
31
La ontologı́a puede ser adaptada y extendida por un administrador.
http://www.springsource.org
33
http://www.hibernate.org
34
http://java.sun.com/javaee/javaserverfaces
35
Semantic Web Rule Language
32
44
Capı́tulo 2. Estado del arte
Figura 2.18: Ontologı́a SOA
En resumen, Ontobrowse provee principalmente las siguientes caracterı́sticas:
Definir estructuras de conocimiento usando ontologı́as.
Navegar, realizar consultas y buscar en una base de conocimiento.
Combinar información formal e informal.
Integrar conocimiento proveniente de fuentes externas.
Chequear la consistencia con reglas.
2.2.10.
OntoWiki
OntoWiki [78] es una herramienta web que da soporte a distintos escenarios de Ingenierı́a del Conocimiento en entornos distribuidos; aunque
también se ha mostrado muy apropiada en aplicaciones de Ingenierı́a del
Software [79, 80]. Esta herramienta es en realidad una wiki semántica (con
una ontologı́a de fondo) basada en formularios que se utiliza como un editor de ontologı́as colaborativo, y como cualquier wiki, aplica el paradigma
de “hacer fácil corregir errores más que hacer difı́cil cometerlos” [31].
2.2. Semántica y wikis
45
Uno de los objetivos principales de OntoWiki es construir bases de
conocimiento semánticas, simplificando la adquisición de los datos por
parte de los usuarios finales y la presentación de dichos datos. Esto se
consigue considerando las bases de conocimiento como mapas de información, donde cada nodo es un recurso RDF y se representa por una página
de la wiki. Cada página es configurable por los usuarios y contiene información (que puede incluir metadatos asociados al recurso –comentarios,
etiquetas, anotaciones–) en forma de sentencias RDF. Gracias a esta aproximación, la misma información puede presentarse al usuario a través de
diferentes vistas: página wiki (vista general con información sobre la jerarquı́a de clases y las instancias), mapa (con información geográfica) o calendario (instancias con propiedades de tipo fecha).
Otro objetivo importante es promover y emplear interacciones sociales
para el desarrollo de sus bases de conocimiento. Algunas de las caracterı́sticas de OntoWiki que dan soporte a la colaboración social son:
Control sobre los cambios. Éstos pueden deshacerse o incluso seguirse a través de suscripciones por correo o RSS36 .
Comentarios. Todas las declaraciones pueden ser anotadas, comentadas y, en general, discutidas por la comunidad.
Puntuación. La información puede ser puntuada con respecto a algún
criterio: originalidad, calidad, presentación...
Popularidad. La popularidad del contenido puede ser medida bajo algún criterio. El sistema puede presentar el contenido según su
popularidad.
Actividad/procedencia. Todos los accesos a la base de conocimiento
se hacen logados. El sistema guarda un registro con el autor de cada contribución, ya sean cambios en la ontologı́a, en las instancias
o comentarios. Con esta caracterı́stica los usuarios añaden valor al
sistema conforme lo están usando.
OntoWiki está implementada en PHP37 sobre la plataforma Powl (apartado 2.2.11) y utiliza AJAX para interactuar con el usuario. Gracias a esta
tecnologı́a, es capaz de trabajar con bases de conocimiento arbitrariamente
36
37
Really Simple Syndication
http://www.php.net
46
Capı́tulo 2. Estado del arte
Figura 2.19: Interfaz de OntoWiki
grandes, renderizando la página web sólo con la información requerida.
Otras caracterı́sticas son su extensión mediante plugins y sus dos estrategias de búsqueda: facetada [81] y fulltext mejorada semánticamente. OntoWiki busca en su base de conocimiento local de RDF (almacenada en Virtuoso38 ), pero podrı́a ser configurado para buscar documentos RDF ubicados en la Web, a modo de motor de búsqueda para la WS.
2.2.11.
Powl
Powl39 [82] es una plataforma basada en web de desarrollo de aplicaciones para la WS cuya principal aplicación es la construcción colaborativa
de ontologı́as. Con Powl es posible almacenar, manipular y hacer consultas a ontologı́as. Aparece en la literatura como una wiki semántica más
(comparte la edición colaborativa en entorno web con la filosofı́a wiki y se
38
39
http://virtuoso.openlinksw.com
http://aksw.org/Projects/Powl
2.2. Semántica y wikis
47
Figura 2.20: Arquitectura de Powl
puede usar como tal), pero lo cierto es que recuerda más a un editor ontológico que a una wiki y carece de importantes caracterı́sticas presentes
en éstas, como la facilidad de crear enlaces entre conceptos.
Los autores de Powl sostienen que su herramienta está orientada a todo
tipo de usuarios: para los investigadores ofrece un banco de pruebas para
la implementación de nuevas aproximaciones; para los desarrolladores,
una interfaz de programación de aplicaciones para la WS; y para expertos
en el dominio e ingenieros en conocimiento, una solución en entorno web
para publicar y editar ontologı́as colaborativamente.
Esta herramienta es de código libre y está implementada en PHP. Es
personalizable y guarda su configuración en su ontologı́a de sistema. Su arquitectura se dipone en cuatro capas (ver figura 2.20):
Almacenamiento. Utiliza cualquier base de datos relacional compatible con SQL40 . En la base de datos se almacenan unidades de información que representan sentencias RDF.
Gestión de ontologı́as. Incluye tres APIs, RAP41 [83], RDFSAPI y
OWLAPI, que acceden al almacenamiento.
API Powl. Para construir aplicaciones web basadas en Powl.
Interfaz de usuario. Permite al usuario navegar y editar las ontologı́as
en los formatos RDF(S) y OWL.
40
41
Structured Query Language
RDF API for PHP, http://www.wiwiss.fu-berlin.de/suhl/bizer/rdfapi
48
Capı́tulo 2. Estado del arte
Figura 2.21: Interfaz de Powl
En cuanto a la edición de contenido, ésta está restringida a los recursos
de la ontologı́a. Para habilitar las capacidades colectivas, Powl dispone de
control de versiones que permite a los usuarios observar la evolución de
las ontologı́as y, si es necesario, deshacer los cambios42 . A esta caracterı́stica se suman los esquemas de autenticación y privilegios, que junto al versionado, añaden seguridad al contenido. Sobre este contenido es posible
hacer búsquedas de recursos y literales, además de consultas usando el
lenguaje RDQL [84].
2.2.12.
Semantic MediaWiki
Semantic MediaWiki43 (SMW) [32, 85] es un motor wiki mejorado semánticamente que habilita a los usuarios para anotar el contenido de la
wiki con información explı́cita y procesable por máquinas. SMW es uno de
los motores wiki más desarrollados y su éxito se basa en que su tecnologı́a
42
43
Sólo a nivel ontológico, no a nivel de texto.
http://semantic-mediawiki.org
2.2. Semántica y wikis
49
Figura 2.22: Una vista semántica de Londres
semántica se encuentra disponible para una gran comunidad de usuarios
no expertos. Por este motivo, está implementado como una extensión de
MediaWiki, una de las plataformas más utilizadas para el desarrollo de
todo tipo de wikis, incluida Wikipedia.
SMW trata de solventar los problemas de las wikis tradicionales –y
por ende, las de MediaWiki–; problemas de los que también adolece la
Web actual: inconsistencia de contenidos, dificultad para encontrar la información, incapacidad para reutilizar el conocimiento... La propuesta de
SMW consiste en conceptualizar los artı́culos y utilizar los typed links (ver
figura 2.12) para crear asociaciones semánticas entre ellos (o entre parte
de los mismos) y para definir atributos [86, 87]. Es decir, cada artı́culo se
corresponde con un recurso ontológico (clase, propiedad, instancia)44 y todas las anotaciones semánticas en un artı́culo hacen referencia al elemento
correspondiente de la ontologı́a. SMW mapea estas anotaciones en una
descripción formal usando el lenguaje de ontologı́as OWL DL.
La mayorı́a de las anotaciones que tienen lugar en SMW se hacen sobre
individuos: se establecen relaciones entre ellos (instancias de relaciones
entre clases), relaciones con valores de tipo básico (valores para atributos)
o se clasifican (se asigna la clase de la que el individuo es instancia). Las
anotaciones se incluyen como parte de la sintaxis de la wiki:
44
Se asigna un URI apropiado a cada uno de ellos.
50
Capı́tulo 2. Estado del arte
(a) Usando el marcado actual de Wikipedia
(b) Con extensiones semánticas
Figura 2.23: Código fuente del artı́culo sobre Londres
Las categorı́as, también presentes en MediaWiki, son una forma de
clasificar artı́culos. SWM simplemente las dota de una interpretación
formal, tratándolas como clases de una ontologı́a.
Los enlaces entre dos artı́culos se interpretan (añadiendo anotaciones
a los links existentes), considerándolos relaciones entre individuos.
Las relaciones de un artı́culo con valores de tipo básico son los valores de los atributos para ese individuo.
Formalmente, estas anotaciones se corresponden con el ABox45 [88]. El
tratamiento del TBox46 [88] es intencionadamente superficial: SMW no está pensada para ser un editor de ontologı́as de propósito general.
Basándose en la tabla anterior, SMW puede generar un modelo OWL,
que a su vez puede ser reutilizado por otras aplicaciones semánticas. Además, al ser SMW compatible con OWL DL, es posible reusar ontologı́as
existentes. Por un lado, se pueden importar ontologı́as. SMW utiliza la
herramienta RAP para leer documentos RDF. De este modo se genera la
estructura de la wiki, que posteriormente tendrá que ser completada. Por
otro lado, se puede reutilizar vocabulario, que permite a los usuarios mapear los artı́culos de la wiki con ontologı́as existentes. Por ejemplo, si la
45
46
Conjunto de asertos sobre individuos en una ontologı́a.
Conjunto de asertos sobre conceptos en una ontologı́a.
51
2.2. Semántica y wikis
Wiki
Categorı́a
Artı́culo
Enlace entre dos artı́culos
Nexo entre un artı́culo y un valor
Ontologı́a
OWL Class
OWL Individual
OWL Object Property
OWL Datatype Property
Tabla 2.1: Equivalencia entre wiki y ontologı́a
wiki tiene una categorı́a Persona, ésta puede ser directamente exportada
como la clase foaf:Person de la ontologı́a FOAF47 .
Los usuarios de SMW pueden buscar artı́culos o datos concretos mediante un sencillo lenguaje de consultas basado en la propia sintaxis de la
wiki. Éstas son búsquedas semánticas similares a las de la WS en las que
puede intervenir cierto grado48 de razonamiento automático (por ejemplo, inferir la pertenencia a una clase en base a la relación es–subclase–de). El
motor de razonamiento utilizado es KAON2.
El objetivo inicial de los autores de SMW fue integrar su semántica extendida en Wikipedia para crear una Wikipedia semántica, con el propósito
de hacerla pionera en la adopción de las tecnologı́as semánticas en la Web
[86, 87]. Sin embargo, los problemas de integración, tratabilidad o razonamiento paraconsistente [89] son lı́neas de investigación aun abiertas.
2.2.13.
SweetWiki
SweetWiki49 [90, 91] es una wiki semántica que da soporte al tagging
(etiquetado) mediante folksonomı́as50 por parte de los usuarios finales. Esta
herramienta de trabajo colaborativo posee un editor WYSIWYG basado en
Kupu51 y mejorado con tecnologı́a AJAX que sirve tanto para editar el contenido de la wiki como para anotar (dentro de la propia página) la información, ocultando los detalles de implementación de las anotaciones. Anotar
47
Friend Of A Friend, http://www.foaf-project.org
Adecuado pero no completo.
49
http://www-sop.inria.fr/teams/edelweiss/wiki/wakka.php?wiki=
SweetWiki
50
Clasificación colaborativa por medio de etiquetas.
51
http://kupu.oscom.org
48
52
Capı́tulo 2. Estado del arte
Figura 2.24: Folksonomı́a y editor de ontologı́as en SweetWiki
el contenido de las páginas habilita la navegación facetada52 y el mecanismo de sugerencias. Este mecanismo permite autocompletar la anotación
que está introduciendo un usuario con conceptos existentes en la ontologı́a
de dominio o con etiquetas introducidas por otros usuarios. Además, propone categorı́as relacionadas y muestra el número de páginas que comparte esa etiqueta (como incentivo para reusar etiquetas existentes y crear
ası́ uniformidad). Todas las etiquetas son recopiladas en folksonomı́as.
El funcionamiento de SweetWiki está fuertemente condicionado a las
ontologı́as subyacentes. La primera de ellas es, como la denominan sus
autores, el modelo de objetos wiki, una ontologı́a de la propia wiki que describe el modelo de datos del sistema. Se definen los conceptos y propiedades usados en la estructura de la wiki, como por ejemplo, página, enlace, autor, versión, etc. Los desarrolladores de la herramienta mantienen
52
La navegación facetada es un sistema por el cual los contenidos pueden ser descritos
en más de una dimensión. A diferencia del esquema jerárquico, este tipo de navegación
ofrece a los usuarios la posibilidad de buscar información en base a una o más perspectivas.
2.2. Semántica y wikis
53
Figura 2.25: Arquitectura de SweetWiki
esta ontologı́a. La segunda ontologı́a es la ontologı́a de dominio con la
que se construye el contenido de la wiki. Esta segunda ontologı́a se crea y
evoluciona a partir de la folksonomı́a que generan los usuarios mediante
el etiquetado social. Es posible realizar tareas como ordenar la ontologı́a,
fusionar conceptos equivalentes, declarar estructuras jerárquicas entre enlaces, etc. La ontologı́a de dominio es enriquecida por los usuarios y puede
ser reestructurada por voluntarios de la comunidad. Para tal fin, SweetWiki incorpora un editor de ontologı́as que permite organizar las etiquetas en
la folksonomı́a. El resto de ontologı́as en SweetWiki son ontologı́as externas que pueden ser importadas y puestas a disposición de la comunidad
para ser consultadas o etiquetadas. El uso de tecnologı́as semánticas tales
como las ontologı́as mencionadas posibilita las búsquedas semánticas del
tipo “muestra páginas y vı́deos que hablen sobre este tema”.
SweetWiki es una herramienta amigable de edición y supervisión de
ontologı́as, pero no está dedicada a la gestión colaborativa de ontologı́as.
Está programada en Java y se basa en estándares web: XHTML [92] para el
formato de las páginas wiki, RDF/RDFa para las anotaciones semánticas y
OWL Lite para las ontologı́as. Esto favorece la interoperabilidad al permitir que los metadatos puedan ser extraı́dos y compartidos por otras aplicaciones. SweetWiki utiliza CORESE [93] como motor de razonamiento y
SPARQL como lenguaje de consultas, las cuales se encuentran embebidas
en la propia página.
En SweetWiki se presta especial atención a la dimensión social de la
wiki. Por ejemplo, los usuarios pueden declarar una lista de etiquetas correspondientes a temas de su interés. Si un usuario crea o modifica una
54
Capı́tulo 2. Estado del arte
página y usa una etiqueta en la que otro usuario está interesado, a éste se
le notifica el cambio realizado por áquel. Es posible analizar el comportamiento de los usuarios (qué páginas crean o modifican, qué documentos
exploran o etiquetan) y crear redes de conocimiento o comunidades de
interés.
2.2.14.
SWiM
El matemático Kohlhase identificó el soporte que dan las wikis semánticas a la formalización del conocimiento como parte esencial del MKM53
[94]. Kohlhase y Lange crearon SWiM54 [95, 96]. SWiM es una wiki semántica que utiliza OMDoc [94], un lenguaje de marcado semántico que sigue
la sintaxis XML y extiende a MathML [97] y OpenMath55 [98], para representar y reutilizar el conocimiento matemático.
El objetivo de SWiM es desarrollar un entorno colaborativo que permita a los matemáticos publicar y compartir su conocimiento para que la
propia comunidad pueda desarrollar nuevas teorı́as colectivamente. Los
usuarios escriben la información de la wiki en OMDoc y pueden asociar
metadatos al contenido de cada página usando el propio OMDoc, OWL o
RDFS. Después de editar una página, el formato OMDoc es renderizado
usando transformaciones XSL [99] y la información se presenta al usuario
en lenguaje natural; las fórmulas matemáticas se representan en LATEX56 .
En la figura 2.26 se puede observar la interfaz de SWiM. Entra las principales caracterı́sticas se encuentran:
Visualización del contenido renderizado de la página.
Edición del contenido en formato OMDoc
Edición de metadatos del artı́culo: lenguaje, autor, tı́tulo, etc.
Editor de fórmulas matemáticas que oculta los detalles de OMDoc.
Anotación del tipo de cada enlace.
53
Mathematical Knowledge Management, gestión del conocimiento matemático
Semantic Wiki for Mathematical Knowledge Management, http://kwarc.info/
projects/swim
55
http://www.openmath.org
56
http://www.latex-project.org
54
55
2.2. Semántica y wikis
Figura 2.26: Interfaz de SWiM
Como es habitual en las wikis semánticas, en SWiM cada página representa un concepto, incluyendo sus propiedades y relaciones con otros
conceptos. En este contexto, un concepto puede ser o bien una teorı́a o
una declaración matemática. Un documento OMDoc está compuesto por
teorı́as, las cuales incluyen sentencias que a su vez contienen fórmulas
referidas a sı́mbolos definidos en esta u otras teorı́as. La estructura de
OMDoc utiliza un modelo de tres capas: objetos (sı́mbolos, números, ecuaciones, etc.), sentencias (axiomas, hipotésis, ejemplos, etc.) y teorı́as (colecciones de sentencias interrelacionadas en un contexto). OMDoc da soporte
a todos los niveles de formalización, desde textos en lenguaje natural a
representaciones completamente formales para la demostración automática de teoremas. Gracias a esta versatilidad, es posible documentar cualquier
elemento, sentencia o teorı́a. Una teorı́a puede no sólo contener sentencias
matemáticas formales, sino secciones de texto informal. Y es posible que
las definiciones, axiomas y teoremas tengan tanto contenido formal como
56
Capı́tulo 2. Estado del arte
Figura 2.27: Subconjunto de la ontologı́a de sistema
informal [100].
El modelo descrito se ha formalizado en una ontologı́a denominada ontologı́a de sistema [101]. Esta ontologı́a está codificada en OWL DL y captura
la estructura de OMDoc definiendo qué conocimiento puede ser representado en este lenguaje.
La figura 2.27 muestra parcialmente la ontologı́a de sistema. Las teorı́as
y las sentencias de cualquier tipo constituyen los conceptos. Las relaciones
(implementadas por medio del atributo for, como en <example for=“#id-ofassertion”>) se extraen de las páginas OMDoc como declaraciones RDF de
las que a su vez se obtienen los typed links para habilitar la navegación
semántica en la wiki. Estas relaciones incluyen, entre otras:
La relación import entre teorı́as.
La relación entre una sentencia y su teorı́a (contexto).
La relación entre un ejemplo y la sentencia que ejemplifica.
La relación entre una prueba y el hecho que demuestra.
Para hacer el conocimiento de SWiM usable por otras aplicaciones de
la WS, la información de la wiki se exporta a RDF, usando términos de la
ontologı́a de sistema. SWiM también depende de esta ontologı́a para reaccionar ante cambios en las definiciones: cuando un usuario modifica la
2.2. Semántica y wikis
57
Figura 2.28: Extracción de RDF en SWiM
definición de un sı́mbolo, todas las páginas que contengan fórmulas con
ese sı́mbolo actualizan automáticamente la definición para ese sı́mbolo.
Esto sucede debido a que la información es extraı́da de los documentos y
se representa usando propiedades de la ontologı́a tales como NotationDefinition–renders–Symbol, Statement–contains–Formula, Formula–uses–Symbol,
etc.
SWiM está basada en IkeWiki por su extensibilidad y su infraestructra, que da soporte a XML (necesario para OMDoc) y a las tecnologı́as
semánticas. Su interfaz usa Dojo57 mientras que en su sistema de almacenamiento utiliza una base de datos PostgreSQL y Jena para almacenar
las declaraciones RDF y las ontologı́as. El sistema SWiM puede extenderse
añadiendo funcionalidad a la capa más alta. Esta extensión es consistente
gracias a la ontologı́a de sistema subyacente.
2.2.15.
Otras
Existe un sinfı́n de wikis semánticas o que, en cierto modo, se relacionan con la semántica. Serı́a una tarea inabarcable estudiarlas todas. Algunas de las más populares que no han sido analizadas aquı́ son: Freebase
[102], KawaWiki [38], myOntology [103], Platypus Wiki [104], Rhizome
[105], Rise [106], SemperWiki [107], SHAWN [108], WikSAR [109].
2.2.16.
57
Resumen
http://dojotoolkit.org
58
AceWiki
Capı́tulo 2. Estado del arte
Usuario
objetivo
Objetivos
Tecnologı́a
Ayudar en la
gestión del
conocimiento
proponiendo un
lenguaje
cercano al
natural
Java, AJAX y
OWL oculto por
ACE
Usuarios no
técnicos
Java, RDF,
OWL, KAON,
MSSQL,
PostgreSQL
Usuarios
expertos
producers para
editar
ontologı́as y
diseñar
plantillas de
consultas y
usuarios no
expertos
consumers para
explotar la
información
Ontologı́as
Propias
Creadas por el
usuario
Organización del conocimiento
De edición de
contenidos
Lógica
Fı́sica
Extensibilidad
Extracción del
conocimiento
Modificaciones
hechas a la
ontologı́a de
edición
Ontologı́a de
fondo
Wiki
Texto
No extensible
por usuarios
finales
Extracción de la
información en
OWL
No tiene
Ontologı́as
creadas
mediante el
editor visual
Edición de texto
libre, pero las
ontologı́as
creadas por los
usuarios
determinan
ciertas
propiedades en
los artı́culos
referidos a
instancias
Wiki
Base de datos
MSSQL o
PostgreSQL
No dispone de
mecanismos
especı́ficos
Exportación de
la ontologı́a
completa a
OWL
Referencias a
ontologı́as
externas para
instanciarlas
Wiki
Base de datos
Postgres y Jena
para RDF
Mediante
adición de
funcionalidad a
los ficheros de
configuración
propios
Exportación del
contenido a una
ontologı́a
OWL/RDF
No tiene
COW
Edición
colaborativa de
ontologı́as vı́a
wiki
IkeWiki
Desarrollar
ontologı́as
desde la
perspectiva de
la Ingenierı́a
Ontológica
Java, AJAX,
Jena, base de
datos Postgres
Ingenieros del
conocimiento,
investigadores y
usuarios
avanzados
No tiene
Modelo
generado a
partir de las
anotaciones
semánticas;
modificación
ligera de las
ontologı́as
importadas
JSPWiki
Gestión del
conocimiento
J2EE58 , ficheros
de texto y bases
de datos
Usuarios en
intranets de
compañı́as
No tiene
No tiene
No tiene
Wiki
Ficheros de
texto o bases de
datos
Programación
de plugins
Exportación del
contenido a
HTML
KiWi
Gestión del
conocimiento
empresarial
mediante
software social
No tiene
Modelo
generado a
partir de las
anotaciones
semánticas;
modificación
ligera de las
ontologı́as
importadas
Referencias a
ontologı́as
externas para
instanciarlas
Depende de la
interfaz
construida; por
ejemplo,
dashboard59 ,
wiki, atlas
etiquetado, etc.
Base de datos
relacional
Desarrollo de
widgets60
Exportación del
contenido a una
ontologı́a
OWL/RDF
A nivel de
contenido (por
ejemplo,
mediante las
ontologı́as
SWeMPs [110] y
ZyX [111],
Makna se
extiende a la
wiki
MultiMakna
[112], un
sistema que da
soporte a
contenidos
multimedia, los
cuales también
pueden ser
anotados
semánticamente)
Exportación del
contenido
semántico como
sentencias RDF
Mediante
plugins
Exportación de
la información a
ontologı́as OWL
Makna
Moki
Java EE,
XHTML, RDF,
OWL,
Hibernate
Diversidad de
usuarios con
distintos niveles
de experiencia
Poblar
ontologı́as colaborativamente
JSPWiki (Java,
ficheros de texto
y bases de
datos), Jena y
base de datos
relacional
MySQL61 ,
PostgreSQL u
Oracle62
Usuarios no
técnicos que
realizan tareas
de Ingenierı́a de
Conocimiento
colaborativo
Ontologı́as
externas
importadas y
preconfiguradas
No tiene
Referencias a
ontologı́as
importadas
para
instanciarlas
Sitio web con
formularios y
páginas
enlazadas
Ficheros de
texto o base de
datos elegida en
JSPWiki para almacenamiento
del contenido
wiki y base de
datos MySQL,
PostgreSQL u
Oracle para almacenamiento
del modelo
semántico
Modelado de
empresa
colaborativo
SMW (PHP,
base de datos
relacional
MySQL,
KAON2, OWL)
Actores
involucrados en
el modelado de
empresa:
expertos en el
dominio,
ingenieros de
conocimiento y
técnicos
No tiene
Descripciones
formales de los
modelos de
empresa
No tiene
Wiki
Base de datos
relacional
MySQL
Tabla 2.2: Comparación entre wikis semánticas (a)
59
2.3. Conclusiones
Objetivos
Tecnologı́a
Usuario
objetivo
Ontologı́as
Organización del conocimiento
Extensibilidad
Extracción del
conocimiento
Base de datos
Posibilidad de
integración con
repositorios de
ontologı́as
No
directamente:
exportación del
contenido de la
base de
conocimiento a
una ontologı́a
OWL/RDF a
través de
ODESeW
Wiki
Base de datos
Plugins
externos y
ontologı́as para
añadir nuevo
conocimiento
No dispone de
mecanismos
especı́ficos
Todas
Construcción
libre de
ontologı́as
Representación
visual de los
mapas de
información,
que depende de
la vista elegida:
wiki, mapa o
calendario
Base de datos
relacional
compatible con
SQL64
Mediante
plugins
Exportación de
las ontologı́as a
hojas de cálculo
o bases de datos
compatibles con
CSV65 y a RDF
Ontologı́a de
sistema
Todas
Construcción
libre de
ontologı́as, pero
la edición de
texto
está restringida
a los recursos de
las ontologı́as
Representación
visual de una
ontologı́a
Base de datos
relacional
compatible con
SQL
Mediante plugins/widgets
Exportación de
las ontologı́as a
hojas de cálculo
o bases de datos
compatibles con
CSV
No tiene
Modelo
generado a
partir de las
anotaciones
semánticas
No tiene;
edición libre
Wiki
Base de datos
relacional
MySQL
Adición de
extensiones
predefinidas
Página especial
en la wiki para
exportar el
contenido a una
ontologı́a
OWL/RDF
Wiki
Ficheros de
texto en
formatos
XHTML y RDFa
Plugins
programados
con etiquetas
JSP desde el
propio editor
Extracción de
los metadatos
en formato
RDF/OWL
Wiki
Base de datos
PostgreSQL
Extensión
añadiendo
funcionalidad a
la capa más alta
Extracción de la
información en
formato RDF
Propias
Creadas por el
usuario
De edición de
contenidos
Referencias a
ontologı́as de la
base de
conocimiento
para
instanciarlas
Wiki
Ontologı́a SOA
y ontologı́as
añadidas
ODEWiki63
Gestión del
conocimiento en
entornos
cerrados
(compañı́as,
organizaciones,
etc.)
J2EE, JSPWiki,
ODESeW
Empleados de
compañı́as,
empresas, etc.
No tiene
Creación /
Edición de
instancias de
ontologı́as en la
base de
conocimiento
Ontobrowse
Documentación
de arquitecturas
SOA
Java (Spring,
Hibernate, JSF),
OWL, Jena,
KAON2,
SPARQL, SWRL
Desarrolladores
y arquitectos de
SOAs y
expertos en el
negocio
No tiene
Creación /
Edición de
instancias
OntoWiki
Edición
colaborativa de
ontologı́as en
escenarios de
Ingenierı́a del
Conocimiento
Powl (PHP,
RDF, RDFS,
OWL, SQL) y
AJAX
Ingenieros del
conocimiento
Powl
Edición
colaborativa de
ontologı́as vı́a
web
PHP, RDF,
RDFS, OWL,
SQL
Desarrolladores,
investigadores,
expertos en el
dominio e
ingenieros en
conocimiento
involucrados
con tecnologı́as
semánticas
Semantic
MediaWiki
Adoptar la
filosofı́a de la
WS en el
entorno wiki
por medio de la
creación de la
Wikipedia
semántica
Motor
MediaWiki
(PHP y base de
datos relacional
MySQL) y
KAON2
Prosumer de la
W2.0,
enfatizando en
usuarios no
expertos en
tecnologı́as
semánticas
SweetWiki
Usar una wiki
junto a las
tecnologı́as de
la WS para
permitir a los
usuarios
etiquetar las
páginas y
organizar las
folksonomı́as
generadas
Java, AJAX,
XHTML, RDF,
RDFa, OWL
Lite, SPARQL,
CORESE
Usuarios no
técnicos (para
etiquetar) y
técnicos (para
organizar las
folksonomı́as)
especialmente
en intranets o en
comunidades
claramente
identificadas
Modelo de objetos
wiki, una
ontologı́a de la
estructura de la
wiki
Ontologı́as de
dominio ligeras
(folksonomı́as
construidas a
partir de
etiquetas)
Las ontologı́as
creadas por los
propios
usuarios o las
ontologı́as
importadas
actúan como
ontologı́as de
dominio sobre
el cual se
construyen los
contenidos
Crear y
compartir
teorı́as
matemáticas
formalizadas
IkeWiki (Java,
AJAX, Jena),
OMDoc
(MathML,
OpenMath),
RDF, OWL DL,
XSL y base de
datos
PostgreSQL
para almacenamiento
Matemáticos
Ontologı́a de
sistema:
formaliza la
estructura de
OMDoc y
mantiene la
consistencia de
SWiM
Descripciones
de sentencias
matemáticas
sobre conceptos
matemáticos en
OMDoc
Ontologı́a de
sistema: define
el conocimiento
que puede ser
representado en
OMDoc
SWiM
Ontologı́a de
sistema64
Lógica
Fı́sica
Tabla 2.3: Comparación entre wikis semánticas (b)
2.3.
Conclusiones
La WS no es una nueva Web, sino una extensión de la Web actual donde
las páginas se anotan con metadatos. Esto incluye a las webs de las wikis,
que al ser anotadas conforman una wiki semántica. Se desprende por tanto
que una Wiki Semántica es (una forma de) Web Semántica y que es buena
idea seguir avanzando por esta lı́nea, como demuestran los trabajos anal-
60
Capı́tulo 2. Estado del arte
izados aquı́.
Del estudio de estas wikis se pueden extraer algunas conclusiones importantes. Respecto al uso e integración de ontologı́as, Buffa y otros [90]
han identificado dos aproximaciones principales y diferentes en la investigación y desarrollo de wikis semánticas y ontologı́as:
Uso de wikis para ontologı́as. Este modelo, conocido como wikitologı́a
[106], considera las páginas de la wiki como conceptos de una ontologı́a y los enlaces como relaciones entre ellos. La wiki actúa como un editor de ontologı́as, de modo que a medida que editamos
sus páginas, vamos creando la ontologı́a. La mayorı́a de las wikis
semánticas caen en esta categorı́a, por ejemplo, AceWiki, Makna,
Platypus, Rhizome, Rise, SHAWN, SMW o WikSAR.
Uso de ontologı́as para wikis. Este otro enfoque se centra en la anotación semántica del contenido de la wiki respecto a una ontologı́a de
referencia. Dentro de esta categorı́a se incluyen wikis como IkeWiki,
SweetWiki o SWiM.
La división de estas dos perspectivas es solamente sintomática de la
primera fase del desarrollo de wikis semánticas. En el futuro (como ya se
empieza a hacer), las wikis semántica mezclarán estas dos aproximaciones
como dos caras de la misma moneda. Mantener la wiki y la ontologı́a se
hará al mismo tiempo, sin que haya ninguna distinción artificial entre ambas
actividades.
Varios de los trabajos ponen de manifiesto la importancia que tiene la
gestión del conocimiento en entornos corporativos y el beneficio de hacerlo en colaboración. Algunos ejemplos son IkeWiki y KiWi, con carácter
más general; Moki, que se centra en dar soporte al modelado de empresa;
Ontobrowse, diseñada especı́ficamente para compartir el conocimiento arquitectural de un sistema; o SWiM, con un caso más especı́fico de gestión
del conocimiento matemático.
Tramullas y Garrido [113] extraen, desde una perspectiva más cercana
al usuario final, las siguientes conclusiones:
La utilización e integración de ontologı́as no es homogénea, ni en
técnicas, ni en interfaces, ni en enfoque de uso.
2.3. Conclusiones
61
Los dominios de aplicación son altamente especializados, y requieren
que los usuarios conozcan la estructura y funcionamiento de las ontologı́as.
De esta segunda conclusión se puede desprender una más: la necesidad de documentar las ontologı́as, con objeto de facilitar al usuario final su funcionamiento y utilización. Por tanto, serı́a preciso que este tipo
de herramientas dispusiera de un sistema de documentación claramente
definido. Algunas wikis de las estudiadas hacen mención a este requerimiento (Moki, ODEWiki, Ontobrowse, OntoWiki y SWiM), pero ninguna de
ellas cuenta con mecanismos estandarizados.
A continuación, se presenta un escenario que también justifica esta
necesidad: el papel de las ontologı́as en la Gestión del Conocimiento.
Capı́tulo 3
Externalización del conocimiento
3.1.
El conocimiento como activo
En los últimos años estamos viviendo acontecimientos tales como el
desarrollo tecnológico o la globalización, que están produciendo cambios
estructurales de enorme trascendencia en la sociedad y en el sistema económico. La liberación de los mercados, consecuencia de esta transformación, ha traı́do consigo una fuerte competencia entre las empresas, que
luchan por hacerse un hueco en ellos. Si se considera que actualmente
las empresas comparten –en mayor o menor medida– las mismas buenas
prácticas (unas aprenden de otras), la misma tecnologı́a y cuentan con fácil
acceso al capital, parece lógico pensar que en la gestión de los activos1 intangibles está la clave del éxito sobre las demás.
El economista Edith Penrose reconocı́a en 1959 que no son sus recursos,
sino los servicios que esos recursos prestan, los que generan el verdadero
valor de una compañı́a [114]. Peter Drucker, considerado padre del management y un adelantado a su tiempo, vaticinó que “en la nueva economı́a,
conocida como la Economı́a del Conocimiento, el conocimiento será el principal recurso; y que la tierra, el capital y el trabajo (factores principales en otras
épocas) no desaparecerán, pero serán secundarios”, a la vez que afirmaba que
“las nuevas industrias emergentes (...) encarnan una nueva realidad económica:
el conocimiento se ha convertido en el recurso económico central” [115].
En efecto, en la actualidad el conocimiento es el activo que más valor
1
Los activos de una compañı́a son los recursos que generan beneficios.
63
64
Capı́tulo 3. Externalización del conocimiento
Figura 3.1: Eras de creación de riquezas
genera en una organización. La competitividad de muchas compañı́as que
se mueven en este mercado tan difı́cil (incertidumbre económica, nuevas
tecnologı́as, cambio en la oferta y la demanda, cambio en las condiciones
de vida...) depende en gran medida de cómo mantienen y acceden a su conocimiento corporativo [116, 117]. Una empresa creadora de conocimiento
se caracteriza por:
La creación consistente y constante de conocimiento.
Divulgación del conocimiento dentro de la empresa.
Transformación del conocimiento en nuevas tecnologı́as, productos
y servicios.
El tercer punto es el objetivo a perseguir. Para obtener beneficios a partir del conocimiento, es necesario comprender qué se entiende por conocimiento, cómo generarlo y gestionarlo.
3.2.
Modelo de Nonaka y Takeuchi
Según los autores Nonaka y Takeuchi [118], la mayorı́a de las compañı́as occidentales creen que el único conocimiento útil son datos cuantificables, procedimientos codificados y principios universales. El modelo
de empresa japonesa, en cambio, reconoce que crear nuevo conocimiento
3.2. Modelo de Nonaka y Takeuchi
65
no es simplemente una cuestión de procesar información objetiva. Nonaka
y Takeuchi definen el conocimiento como “una creencia personal justificada
que aumenta la capacidad de un individuo para llevar a cabo una acción de manera eficiente”. Esta definición reafirma las tesis de Drucker al declarar que el
conocimiento “aumenta la capacidad de un individuo para llevar a cabo una
acción de manera eficiente” y que, consecuentemente, generará valor. Sin
embargo, difiere del modelo occidental al considerar que el conocimiento es subjetivo (“creencia personal”). No obstante, esta subjetividad no le
resta valor, pues se trata de una “creencia personal justificada”.
Nonaka y Takeuchi proponen un modelo según el cual el conocimiento
se origina en el individuo (en forma de conocimiento tácito) y acaba transformado en conocimiento colectivo (como conocimiento explı́cito). El conocimiento tácito es altamente personal, difı́cil de formalizar y, por tanto, de
comunicar a los demás. Está profundamente arraigado a las acciones del
individuo en un contexto especı́fico (una determinada profesión, una tecnologı́a particular, etc.). Está formado, en parte, por las habilidades técnicas del individuo, que se adquieren a través del aprendizaje y se perfeccionan con la experiencia. Al mismo tiempo, tiene una importante dimensión
cognitiva: consta de modelos mentales, creencias y perspectivas. Por este
motivo, condiciona nuestra percepción de la realidad. Para el antropólogo Gregory Bateson, “creamos nuestro propio mundo al mirarlo de acuerdo con
nuestras propias presuposiciones, nuestras propias premisas, nuestras propias expectativas” [119]. En resumen, el conocimiento tácito es el que el individuo
tiene en su mente, es personal y subjetivo, se adquiere de la experiencia
y se comparte mediante el trabajo colectivo. El conocimiento explı́cito, en
cambio, es generado por el individuo y lo hace patente de forma fı́sica. Es
objetivo, sistemático y se representa formalmente, por lo que es fácil de
compartir.
Para Nonaka y Takeuchi, crear conocimiento es hacer explı́cito el conocimiento tácito. No obstante, la creación de conocimiento no se limita
sólo a ese paso; es necesario un proceso continuo –flujo de información en
espiral– de transformaciones entre el conocimiento tácito y explı́cito, que
pasa por cuatro fases (ver figura 3.2):
Socialización (de tácito a tácito). Es la acción de compartir el conocimiento tácito directamente con otros individuos mediante el trabajo
colectivo (por ejemplo, reuniones, enseñanza de maestro a discı́pulo,
etc.), de forma que todos los individuos adquieren este conocimiento y lo incorporan al suyo propio. El aprendizaje se hace por obser-
66
Capı́tulo 3. Externalización del conocimiento
Figura 3.2: Ciclo de Nonaka y Takeuchi
vación, imitación y práctica.
Externalización (de tácito a explı́cito). Es la acción de hacer explı́cito
el conocimiento tácito (por ejemplo, escribir un artı́culo cientı́fico,
modelar un dominio, etc.) con el objetivo de compartirlo. Se trata de
la actividad esencial en la creación del conocimiento.
Combinación (de explı́cito a explı́cito). Es el proceso de sintetizar
conocimiento explı́cito más complejo a partir de la composición del
conocimiento explı́cito proveniente de diversas fuentes (por ejemplo, hacer un informe con los datos de una compañı́a, crear una aplicación informática ensamblando componentes de software reutilizables, etc.).
Internalización (de explı́cito a tácito). La internalización es la asimilación del conocimiento explı́cito. Se obtiene mediante la experiencia (por ejemplo, montar en bicicleta –sólo se puede aprender si se
practica–) y se incorpora como conocimiento tácito al modelo mental de conocimiento del individuo y, por tanto, a los activos de la
empresa.
Un caso que ejemplifica el funcionamiento de este ciclo es el de la aprendiz de panadera [118]:
1. En primer lugar, la aprendiz aprende los secretos del maestro panadero mediante observación, imitación y práctica (socialización).
67
3.3. Gestión del conocimiento
(a) Contexto original
(b) Web Semántica 2.0
Figura 3.3: Creación de conocimiento
2. El siguiente paso es escribir la receta con los ingredientes y todas las
indicaciones a seguir: tiempo de reposo de la masa, funcionamiento
del horno... (externalización).
3. En tercer lugar, la aprendiz pone en común el conocimiento adquirido con los otros aprendices. Todos aportan sus impresiones, sus puntos de vista y articulan un procedimiento éstandar para hacer pan de
manera profesional (combinación).
4. Por último, practicando la metodologı́a acordada con sus compañeros, la aprendiz adquiere experiencia en hacer pan e interioriza este
conocimiento como suyo propio (internalización).
De las cuatro etapas del ciclo, la externalización y la internalización son
los pasos crı́ticos en la espiral de conocimiento porque conllevan una implicación activa del propio individuo. Y entre ellas dos, la externalización
es la actividad indispensable para crear conocimiento, pues es cuando se
produce la materialización.
3.3.
Gestión del conocimiento
El modelo propuesto sitúa el origen del conocimiento en el individuo
y lo conduce hacia la colectividad. El planteamiento ahora es cómo esa comunidad poseedora de conocimiento puede gestionarlo para convertirlo
en un activo de la compañı́a y obtener beneficios de él.
Aranda-Corral y otros [30] extraen una importante analogı́a entre conocimiento y ontologı́a: en la fase de externalización (el paso clave del ciclo),
el conocimiento tácito se formaliza para poder ser compartido; del mismo
68
Capı́tulo 3. Externalización del conocimiento
modo, en el contexto de la WS2.02 (ver figura 2.2), la información de la Web
se formaliza en ontologı́as para producir conocimiento reutilizable. Por lo
tanto, crear conocimiento en la WS2.0 equivale a construir ontologı́as.
3.3.1.
Modelo de Nonaka y Takeuchi adaptado
Los propios recursos de la compañı́a son la fuente principal para construir una ontologı́a [120]: bases de datos, intranets, procesos de negocio,
conocimiento de los empleados, etc. Una compañı́a puede verse como un
sistema abierto de acciones sociales con un alto grado de autorregulación
[121]. Por tanto, serı́a apropiado estudiar la creación de una ontologı́a,
desde la perspectiva del conocimiento emergente (es decir, del conocimiento
surgido de las interacciones en un entorno distribuido) [122], analizando
los procesos presentes en la Gestión de Activos de Conocimiento3 , representados en el ciclo de Nonaka y Tekeuchi (ver figura 3.2) [123].
En lugar de ajustar el proceso de creación de ontologı́as al modelo de
Nonaka y Takeuchi, Aranda-Corral y otros [30] proponen adaptar el modelo original al contexto natural de creación de ontologı́as: la WS2.0. En este
nuevo escenario, el conocimiento generado es semántico, las personas que
lo generan se organizan en redes de usuarios prosumers4 adoptando los
comportamientos propios de la W2.0 y la Ingenierı́a Ontológica puede dar
soporte a los procesos de este otro modelo (aportando teorı́as y/o herramientas). El resultado es un nuevo ciclo (ver figura 3.4), proyección del
original, pero mejorado con tecnologı́a y métodos propios de la WS2.0. Las
cuatro fases resultantes para crear conocimiento son:
Redes de Conocimiento (← Socialización). El aprendizaje colaborativo implica la interacción entre iguales para la construcción del conocimiento, lo que da lugar a la constitución de redes de conocimiento [124]. Una red de conocimiento está integrada por una comunidad de personas que comparte su conocimiento para lograr objetivos comunes. Las redes de conocimiento están alcanzando ahora
su auge gracias al impulso de las nuevas tecnologı́as, que las están
haciendo llegar hasta cualquier usuario de la Web. Por tanto, la so2
Web Semántica 2.0 = Web Semántica + Web 2.0
En inglés, KAM, Knowledge Asset Management
4
prosumer = producer + consumer, es decir, la producción y consumo de conocimiento
es encomendado a los usuarios
3
3.3. Gestión del conocimiento
69
cialización produce redes de conocimiento en la WS2.0 cuando los
usuarios adoptan comportamientos 2.0.
Semántica Emergente (← Externalización). La semántica es emergente
si surge como un acuerdo en un contexto especı́fico de interpretaciones comunes, construido en un proceso incremental de negociociaciones e interacciones locales entre agentes autónomos autoorganizados [125]. En la WS2.0, externalizar el conocimiento es formalizarlo en ontologı́as, donde cada concepto tiene su significado
(semántica) definido. Al ser éste un proceso de estandarización cooperativo, un punto crucial es la comunicación entre los diferentes
actores que deben llegar al consenso [126]. De la interacción de los
usuarios en redes de conocimiento emerge la semántica de los conceptos que conforman la ontologı́a. Por este motivo, el proceso de
externalización colaborativa en la WS2.0 es, en realidad, un proceso
de semántica emergente. Para ello, es necesario proporcionar herramientas que permitan externalizar y organizar el conocimiento.
Alineación de Ontologı́as (← Combinación). La alineación de ontologı́as es el proceso de encontrar correspondencias entre las entidades de dos ontologı́as diferentes [127]. Combinar diferentes fuentes
de conocimiento en la WS2.0 se traduce en alinear las ontologı́as que
lo formalizan.
Interfaces Semánticas de Usuario (← Internalización). En la WS2.0,
asimilar el conocimiento sólo es posible mediante el uso de interfaces de usuario que permitan acceder a los contenidos y explotarlos de forma sencilla. Por tanto, la internalización del conocimiento
semántico conlleva el uso de interfaces semánticas.
Al igual que sucedı́a en el modelo original, la semántica emergente del
conocimiento (externalización) y las interfaces para acceder a él (internalización) son la esencia en este ciclo.
3.3.2.
Semántica emergente
Integrar la información por medio de ontologı́as es la mejor opción
para las organizaciones que son conscientes del valor del conocimiento.
Investigaciones previas, como la de Hearst [128], se centran en integrar
bases de datos o bases de conocimiento heterogéneas, cuya información se
70
Capı́tulo 3. Externalización del conocimiento
Figura 3.4: Proyección del ciclo de Nonaka y Takeuchi
encuentra altamente estructurada, a menudo por medio de lenguajes formales. Existen también poderosos métodos de integración [120] que producen ontologı́as robustas.
En el apartado 1.4.2 se razonó que el proceso de desarrollar una ontologı́a debe ser cooperativo. El modelado conceptual en entornos distribuidos es una cuestión que ha sido objeto de investigación por parte
de la comunidad cientı́fica [129, 130, 131, 132] durante años. Gran parte de
los trabajos vistos en el capı́tulo 2 también aborda este problema.
Las ontologı́as en entornos colaborativos no surgen de una vez como
resultado de aplicar una metodologı́a de formalización del conocimiento
por parte de un grupo de expertos. Su construcción conlleva un proceso de aprendizaje en el que los individuos profundizan en el dominio de
discurso y en el vocabulario apropiado para describirlo. Las ontologı́as
se desarrollan constantemente: los conceptos experimentan un proceso de
evolución continua donde la comprensión y las ideas emergen de manera
implı́cita del trabajo diario y maduran gradualmente mediante la interacción entre los miembros de la comunidad. La ontologı́a llega a la madurez
cuando se ha alcanzado el consenso [125].
Las ontologı́as construidas son la pieza clave para implementar la interoperabilidad semántica en organizaciones y empresas (apartado 1.4.1).
La interoperabilidad semántica ofrece la capacidad de inferir, relacionar,
interpretar y clasificar el conocimiento implı́cito en el contenido digital
que dirige los procesos de negocio de una empresa. Además, permite la
comunicación entre individuos o sistemas de información de diferentes
compañı́as. Sin embargo, el problema de la interoperabilidad puede persi-
3.3. Gestión del conocimiento
71
stir en un nivel diferente, dentro de la misma organización: aparece en
la heterogeneidad de interpretaciones que hacen los usuarios sobre los
elementos de la ontologı́a. Este problema es consecuencia de la alfabetización ontológica de los usuarios, es decir, el nivel de conocimiento sobre
ontologı́as.
Actualmente, es inconcebible crear o utilizar ontologı́as sin un alto nivel de experiencia en áreas como la representación del conocimiento y las
tecnologı́as semánticas (RDF, OWL...). En el mejor de los casos, es necesario comprender el funcionamiento de los editores de ontologı́as, los cuales, no obstante, también entrañan una gran dificultad para la mayorı́a de
usuarios. En un entorno distribuido como es la Web, el desarrollo de ontologı́as se enfrenta, además, a la disparidad de conocimientos que poseen
los autores sobre las propias ontologı́as y las tecnologı́as semánticas [36],
lo cual supone un grave inconveniente. Schaffert [39] identifica la falta de
ontologı́as como un serio obstáculo para la implantación de la WS y argumenta que una de las razones principales de ello es la barrera tecnológica,
que desalienta a los expertos en un dominio a formalizar su conocimiento.
Una primera aproximación para solventar esta dificultad es proporcionar herramientas que permitan externalizar y organizar el conocimiento. Otra solución, complementaria al uso de herramientas de gestión del
conocimiento, es la documentación social y colaborativa de la experiencia
de uso de las ontologı́as, cuyo objetivo es cerrar la brecha semántica surgida entre la especificación de la ontologı́a y su uso cotidiano [30]. Este resultado se extrajo como conclusión del capı́tulo 2 (apartado 2.3). Fernández
y otros [28] ya apuntaban a esta necesidad: “la ausencia de documentación es
un importante obstáculo cuando reutilizas o compartes ontologı́as ya construidas;
ası́ que, si deseas que tu ontologı́a sea reutilizada o compartida por otros, intenta
documentarla lo mejor que puedas”. McGuinness también sugirió la necesidad de especificar la semántica de los términos en una ontologı́a[36].
Existen ontologı́as que, si bien han sido documentadas, no lo están de
forma adecuada. Sus propios creadores (tradicionalmente, expertos en ontologı́as o en el dominio), utilizan una jerga excesivamente técnica y compleja. Este método de documentación resulta inapropiado para la mayorı́a de los usuarios, que requiere un tipo de información más cercano, por
ejemplo, casos de uso de la ontologı́a, experiencia de otros usuarios en su
aplicación en un determinado contexto, significado de un concepto, etc.
Es lo que Aranda-Corral y otros [30] entienden por documentación social.
La autora Anne-Claire Boury-Brisset lo denomina ontology critiquing [133].
72
Capı́tulo 3. Externalización del conocimiento
Para ella, en entornos distribuidos se hace cada vez más importante tener un espacio de trabajo donde los usuarios hagan sus comentarios sobre
ontologı́as construidas por otras personas. Por ejemplo, una persona podrı́a preguntar si un nuevo concepto (clase) deberı́a ser definida como una
subclase de otra existente o como una instancia de ella.
Por tanto, junto a la propia ontologı́a, la documentación social también
emerge fruto del acuerdo de la comunidad, de sus discusiones y de las
experiencias aportadas, y evoluciona con los usos de la ontologı́a y las
contribuciones de cada miembro.
3.3.3.
Interfaces semánticas de usuario
Las interfaces semánticas son la otra clave en la solución al problema
de la alfabetización ontológica. Para superar esta barrera técnica es necesario que las herramientas permitan a los usuarios contribuir en la creación
de contenido de forma transparente a las tecnologı́as que hay de fondo
[41]. De hecho, simplicidad y amigabilidad son ya requisitos obligatorios en
el desarrollo de aplicaciones para la WS, pensando especialmente en las
personas no expertas en tecnologı́a [134].
Existen trabajos que respaldan la trascendencia de las interfaces semánticas en la WS2.0 desde distintos puntos de vista. Autores como David F.
Huynh [135, 136, 137] acentúan su importancia bajo la perspectiva de la
presentación de los datos, mientras que otros como Max van Kleek y Stephen Davies se centran en la interacción del usuario con el contenido. Van
Kleek y otros [138] afirman que mejorar los mecanismos de adquisición y
acceso al conocimiento será necesario para que la WS sea adoptada ampliamente por los usuarios finales; y argumentan que uno de los caminos
a seguir es explorar la interacción de los usuarios a nivel de interfaz para
acelerar el intercambio de conocimiento entre los humanos y las bases de
datos de conocimiento de la WS. Davies y otros [139] reafirman que la
mayorı́a de los usuarios se sienten incapacitados con las herramientas actuales, ya que éstas asumen un alto grado de habilidad con los conceptos
de la WS; y razonan que las herramientas deben diseñarse teniendo en
cuenta a los usuarios no expertos, para que ellos también puedan convertirse en contribuidores productivos de conocimiento semántico.
En consecuencia, las interfaces semánticas no sólo son el elemento que
permite interiorizar los contenidos de la WS2.0, sino que también son la
3.4. Conclusiones
73
pieza fundamental para resolver los problemas de externalización del conocimiento ontológico.
3.4.
Conclusiones
La gestión del conocimiento debe atender a dos dimensiones: semántica y social. En este escenario, la creación de conocimiento es un proceso
de externalización en forma de ontologı́as, tarea que se lleva a cabo mediante el consenso en comunidades de práctica. Esta arquitectura de participación juega un doble papel: por un lado, la semántica de la ontologı́a
emerge de la interacción natural entre los miembros de la comunidad y
evoluciona con su utilización diaria; y por otro, la misma comunidad proporciona sus propias experiencias de uso con respecto a las ontologı́as construidas.
Disponer de herramientas con interfaces semánticas apropiadas habilita a los usuarios para producir ontologı́as. Al mismo tiempo, permiten
acceder a ellas y asimilarlas. La documentación social es imprescindible
en esta consecución.
Los trabajos presentados en el capı́tulo 2 demuestran la adecuación de
las wikis para operar en el contexto de la WS2.0. Por un lado, constituyen
un marco que da un sólido soporte a las ideas de creación colectiva del
conocimiento [118], invita a la participación automotivada y antijerárquica
de una comunidad de usuarios [115] y favorece la competitividad de las
empresas que abrazan por completo el potencial de la W2.0 [34]. Por otro
lado, las tecnologı́as semánticas incorporadas proporcionan la capacidad
para procesar la información de manera segura y eficiente. Y por último,
las wikis fomentan la participación activa para documentar software en
colaboración [140].
En el capı́tulo 4 se presenta Sword, una plataforma semántica social
destinada a externalizar el conocimiento mediante ontologı́as. Su interfaz,
basada en wiki, fomenta la participación colectiva, ofrece la capacidad de
representar las ontologı́as en formato humano, acercándolas al usuario, y
proporciona los medios para documentarlas de manera intuitiva y amigable.
Capı́tulo 4
Sword
Sword1 es una plataforma semántica social diseñada para salvar la
brecha entre usuario y ontologı́a. Está basada en OntoxicWiki [30, 141],
a la cual mejora con nuevas caracterı́sticas (capı́tulo 5). Actualmente se encuentra en fase de desarrollo, por lo que se describirá OntoxicWiki durante
este capı́tulo.
4.1.
Descripción general
OntoxicWiki (OW) es una herramienta social diseñada para representar ontologı́as de forma intuitiva a través de un entorno que permite repararlas y documentarlas colaborativamente. Se trata de un plugin para
el editor de ontologı́as Protégé2 [142, 143, 144] que se apoya en un motor
MediaWiki. Esta wiki funciona como plataforma social, donde los miembros de la comunidad pueden revisar las ontologı́as y describir en colaboración sus propiedades, usos y experiencias, siempre preservando sus especificaciones y caracterı́sticas lógicas. De este modo, una ontologı́a queda
representada de forma comprensible y, gracias a la información adicional,
terceras partes pueden aprender interesantes caracterı́sticas sobre ella como son su dominio y alcance, su propósito de uso, aplicaciones recomendadas, etc. El objetivo es acercar las ontologı́as a los usuarios y fomentar
su (re)utilización en la WS.
1
2
Social Wiki for Ontology Revision and Documentation
http://protege.stanford.edu
75
76
Capı́tulo 4. Sword
El producto final de OW es una wiki que contiene ontologı́as representadas en wikitexto3 . Una vez disponibles, los miembros de la comunidad
tan sólo necesitan un navegador web para acceder a ellas, y pueden editarlas, documentarlas o, simplemente, visitarlas para requerir información.
La wiki aporta una serie de caracterı́sticas que le dan ventaja respecto
a otras soluciones colaborativas:
La plataforma wiki permite compartir y reutilizar el conocimiento
fácilmente.
Su interfaz intuitiva oculta la complejidad tecnológica de fondo.
Potencia la participación colectiva.
El historial de cambios permite llevar cierto control de versiones de
la ontologı́a.
La unicidad en los tı́tulos de los artı́culos resulta muy apropiada para
los recursos de la ontologı́a.
Los hiperenlaces son de gran utilidad a la hora de relacionar conceptos. Un recurso se hace más comprensible si entendemos con mayor
claridad los vı́nculos que mantiene con otros recursos.
El conocimiento en la wiki queda perfectamente organizado en artı́culos, secciones, etc.
El buscador de la wiki permite localizar los recursos de la ontologı́a
fácilmente.
4.1.1.
Correspondencia ontologı́a – wiki
En OW, existe una relación de equivalencia entre una ontologı́a en
lenguaje formal OWL cargada en Protégé y la misma ontologı́a en la wiki.
Un artı́culo en la wiki se corresponde con un recurso4 de la ontologı́a y
cada tipo de artı́culo tiene su propia estructura, que depende del tipo de
recurso al que representa, el cual determina su contenido. En otras palabras, un artı́culo se compone de secciones que contienen la información
3
4
Lenguaje wiki
Clase, propiedad, individuo
4.1. Descripción general
77
más relevante relativa al recurso asociado. La estructura de cada artı́culo
es la siguiente:
Secciones en artı́culos de clase:
1. rdfs:comment
2. subclases
3. propiedades
4. instancias
5. superclase
Secciones en artı́culos de propiedad:
1. rdfs:comment
2. dominio
3. rango
4. subpropiedades
5. superpropiedad
Secciones en artı́culos de individuo:
1. rdfs:comment
2. clase
3. propiedades
4.1.2.
Interfaz de usuario
La interfaz de usuario de OW consta de tres componentes (ver figura
4.1): una barra de herramientas, un área de plantillas y un navegador web.
La barra de herramientas proporciona utilidades básicas para manejar la
ontologı́a (ver figura 4.2). El área de plantillas muestra el formato que debe
seguir el wikitexto en cada tipo de artı́culo. El navegador web visualiza el
contenido de la wiki.
78
Capı́tulo 4. Sword
Figura 4.1: Interfaz de usuario de OntoxicWiki
4.1.3.
Funcionalidad
La funcionalidad de OW se encuentra intı́mamente relacionada con el
ciclo de vida de la ontologı́a dentro de esta herramienta. OW opera haciendo pasar a la ontologı́a por las cinco etapas de este ciclo:
1. Crear o cargar la ontologı́a en Protégé. Tanto si se crea desde cero
como si carga una ontologı́a existente, el resultado final es un fichero
con extensión .owl donde se encuentra codificada la ontologı́a objetivo. No se necesita OW en esta fase.
. Se añade la ontologı́a
2. Añadir la ontologı́a de documentación
5
OSMV a la ontologı́a objetivo. Inicialmente esta ontologı́a está vacı́a
–sólo consta del esquema– y se instanciará con la información aportada por los usuarios sobre la ontologı́a objetivo (más información
en el apartado 4.1.5).
3. Cargar la ontologı́a en la wiki . Se escribe automáticamente la ontologı́a objetivo en la wiki. Este proceso comienza con la extracción
5
Ontology Social Metadata Vocabulary
4.1. Descripción general
79
Figura 4.2: Barra de herramientas de OntoxicWiki
de información de la ontologı́a (jerarquı́a de clases, propiedades e individuos), y posteriormente, se obtiene la información más relevante
relativa a cada recurso. A continuación, se crea un artı́culo en la wiki
por cada recurso. Cada uno de estos artı́culos tendrá una estructura y
una información especı́fica que dependerá del recurso correspondiente (apartado 4.1.1). Esta información se distribuye en las secciones
pertinentes del artı́culo, rigiéndose por la sintaxis de MediaWiki6 . Finalmente, los artı́culos se enlazan a través de hiperenlaces para mantener la estructura original de la ontologı́a. Adicionalmente, se crean
algunos artı́culos especiales y secciones dentro de los artı́culos de
recursos provenientes de la ontologı́a de documentación OSMV. Estas secciones, inicialmente en blanco, contendrán las experiencias de
uso añadidas por los propios usuarios de la ontologı́a objetivo (más
información en el apartado 4.1.5).
4. Revisar y documentar la ontologı́a. Una vez que la ontologı́a se ha
cargado en la wiki, queda a disposición de la comunidad. Sólo es
necesario un navegador web para acceder a ella. Los usuarios pueden editarla creando, eliminando o modificando los artı́culos de la
wiki (la wiki actúa como un editor ontológico). Documentar la ontologı́a es suministrar información en la sección apropiada. Por ejemplo, si un usuario quiere modificar el rango de una relación, tiene
que ir al artı́culo correspondiente, editar la sección rango y sustituir
el rango antiguo por el nuevo valor (y, por último, guardar los cambios). No se necesita OW en esta fase.
6
http://www.mediawiki.org/wiki/Help:Formatting
80
Capı́tulo 4. Sword
Figura 4.3: Arquitectura de Protégé con extensión OWL
5. Recuperar la ontologı́a desde la wiki . Es el proceso inverso al paso 3. Se lee automáticamente los artı́culos de la wiki, se reconstruye
la ontologı́a en formato OWL y se carga en Protégé. La recuperación
comienza analizando la estructura de los artı́culos, creada a través
de los hiperenlaces existentes entre ellos. Se genera el esqueleto de la
ontologı́a: la taxonomı́a de clases, las propiedades y los individuos.
Por último, se lee el contenido de los artı́culos y, para cada sección, se
escribe la información correspondiente en el recurso de la ontologı́a
OWL. Se requiere que el contenido de los artı́culos siga el formato
señalado en el área de plantillas. El resultado final es un fichero con
extension .owl donde se encuentra codificada la ontologı́a objetivo.
4.1.4.
Tecnologı́a y arquitectura
OW está implementada en Java como un plugin para Protégé. Este editor de código abierto puede ser fácilmente extendido por medio de una
arquitectura de plugins y una API basada en Java para construir aplicaciones con ontologı́as (ver figura 4.3). Las ontologı́as manejadas en OW
4.1. Descripción general
81
Figura 4.4: Arquitectura de MediaWiki
están codificadas en lenguaje OWL y se manipulan a través de la API
Protégé-OWL7 .
La API de Protégé-OWL es una librerı́a en Java de código abierto, para
los lenguajes de ontologı́as OWL y RDF(S). Provee de un conjunto de clases, interfaces y métodos para cargar y salvar archivos OWL, consultar
y manipular modelos de datos OWL y aplicar razonamiento automático
basado en motores de lógica descriptiva. Está optimizada para la implementación de interfaces gráficas de usuario, lo cual es fundamental para
desarrollar plugins para Protégé.
El otro compente básico de OW es MediaWiki, un software libre basado
en servidor y liberado bajo licencia GNU General Public License (GPL). Se
trata de una implementación de wiki extremadamente potente y escalable.
Usa PHP para funcionar y almacena su información en una base de datos
MySQL (ver figura 4.4).
La arquitectura de OW se basa en las de Protégé y MediaWiki. Esta
architectura obedece al siguiente comportamiento (ver figura 4.5):
(1) OW utiliza la API Protégé-OWL.
(2) A través de Protégé-OWL se accede y se manipula la ontologı́a OWL.
(3) OW accede directamente a la base de datos de MediaWiki a través
del driver JDBC8 para MySQL, Connector/J9 .
7
http://protegewiki.stanford.edu/wiki/ProtegeOWL_API_
Programmers_Guide
8
Java Database Connectivity
9
http://dev.mysql.com/doc/refman/5.1/en/connector-j.html
82
Capı́tulo 4. Sword
Figura 4.5: Arquitectura de OntoxicWiki
(4) Paralelamente, desde cualquier navegador web se hacen peticiones
al servidor HTTP.
(5) El servidor HTTP interpreta las peticiones y las remite al motor PHP.
(6) El motor PHP recibe las peticiones y envı́a las sentencias SQL apropiadas al gestor de bases de datos MySQL.
(7) El gestor se encarga de leer/escribir en la base de datos.
Finalmente, la información circula en sentido inverso para devolver el contenido de una página web que será visualizada por el navegador.
4.1.5.
OSMV
La mayorı́a de las ontologı́as publicadas en la Web no contiene ningún
tipo de información adicional sobre ellas mismas y esta deficiencia compromete seriamente su reutilización en la WS. Hartmann y otros [145] argumentan que la disponibilidad de metadatos supone una dimensión fundamental en la reusabilidad de ontologı́as. Sin ninguna documentación,
los potenciales usuarios de ontologı́as difı́cilmente podrán identificarlas,
encontrarlas y aplicarlas efectiva y eficientemente. Para hacer frente a este
problema, es necesario acordar un vocabulario de términos y definiciones
4.1. Descripción general
83
que describa ontologı́as. La solución propuesta se presenta como un estándar en especificación de ontologı́as que satisface los requisitos de accesibilidad, usabilidad e interoperabilidad semántica. Por ello, el propio vocabulario de metadatos se formaliza como una ontologı́a, que Aranda-Corral y
otros [30] denominan OSMV10 . OSMV es una ontologı́a de documentación
de ontologı́as. Está construida a partir de un subconjunto de OMV11 [146]
extendido con algunas caracterı́sticas de ı́ndole social.
OSMV habilita al usuario para añadir información relativa a la ontologı́a objetivo. La documentación aportada se puede clasificar según los
siguientes criterios:
Atendiendo a su alcance, puede ser:
• Global. Información relativa a la ontologı́a en su conjunto (número de clases, inconsistencias detectadas).
• Local. Información especı́fica de un recurso (fuentes de información adicional en la Web para ese recurso, descripciones de
los usuarios).
Atendiendo a su naturaleza, puede ser:
• Técnica. Información de tipo técnico (lenguaje de la ontologı́a:
OWL, RDFS, etc., licencia de uso: GPL, BSD, etc.).
• Social. Información de carácter social (comentarios de los usuarios, deficiencias de un recurso).
Cuando se integra OSMV con la ontologı́a objetivo, áquella sufre algunas modificaciones: en OSMV se crea una instancia por cada recurso de
ésta. La información suministrada a estas instancias se corresponde con la
documentación de la ontologı́a objetivo. Asimismo, la wiki también se ve
alterada como consecuencia de esta combinación de ontologı́as. Por una
parte, se generan nuevos artı́culos para albergar documentación de tipo
global; por otra, en los artı́culos originales se crean nuevas secciones para
la documentación local. La naturaleza técnica y social se mezcla en las dos
categorı́as anteriores.
La información adicional suministrada por la comunidad es, por tanto,
el contenido de OSMV. Inicialmente se encuentra vacı́a (en cuanto a los
10
11
Ontology Social Metadata Vocabulary
http://omv2.sourceforge.net
84
Capı́tulo 4. Sword
Figura 4.6: Clase Expression en Protégé
valores para las propiedades de sus instancias) y el usuario final la completa con información especı́fica de la ontologı́a objetivo. La instanciación
de OSMV se lleva a cabo de la misma forma que la de la ontologı́a objetivo: rellenando las distintas secciones de los artı́culos de la wiki. De este
modo, los usuarios no expertos pueden generar conocimiento acerca de la
ontologı́a que puede ser explotado por compañı́as o redes sociales.
4.1.6.
Ejemplo
SensorOntology200912 es una ontologı́a sobre sensores que ha sido utilizada como la versión inicial de la ontologı́a Semantic Sensor Network [147].
La figura 4.6 muestra la ontologı́a cargada en Protégé y, concretamente, información sobre la clase Expression, que modela las expresiones lógicas.
De esta clase se pueden obtener los siguientes datos:
Hay tres campos rdfs:comment con comentarios (de los autores) sobre
la clase.
12
http://www.w3.org/2005/Incubator/ssn/wiki/SensorOntology2009
4.1. Descripción general
85
Figura 4.7: Clase Expression en OntoxicWiki
Se divide en dos subclases: Condition y Effect.
Tiene dos propiedades: expressionBody y expressionLanguage; esta última, con una restricción: cardinality = 1.
No tiene superclase (es decir, su superclase es la clase genérica owl:Thing).
En la figura 4.7 se puede ver la misma información desde la perspectiva
de OW. Además se incluye la documentación social.13
13
En este ejemplo, se muestra la wiki con el navegador Mozilla Firefox. Se obtendrı́a el
mismo resultado utilizando el navegador que incluye el propio plugin (ver figura 4.1).
86
Capı́tulo 4. Sword
Los tres campos comentarios rdfs:comment se agrupan en uno sólo en
la sección RDFSComment del artı́culo.
Las dos subclases se listan en la sección Subclasses.
Las propiedades se muestran con formato
dominio <-- propiedad --> rango
tal como indica la plantilla para clases, en la sección Properties. La
restricción aplicada a expressionLanguage se representa en lenguaje
natural debajo de ella.
La clase no tiene instancias directas (información no visible en la
figura 4.6).
La clase no tiene superclase.
Respecto a la documentación social:
• Algún usuario ha dejado constancia de que la propiedad expressionBody no tiene rango definido. Aparte de evidenciar una falta
de información, esto podrı́a suponer un problema a la hora de
procesar la ontologı́a automáticamente. Este dato se suministra
en la sección deficiencies.
• Otro (o el mismo) usuario ha aportado la url de una ontologı́a
sobre expresiones lógicas. Visualizar esta ontologı́a puede complementar la información provista en este artı́culo. La sección
documentationResources es el lugar apropiado.
4.2.
Gestión del conocimiento semántico
OW está diseñada para establecer puentes semánticos entre las actividades del ciclo de Nonaka y Takeuchi proyectado (ver figura 3.4) según
el modelo adaptado a la WS2.0, mejorando las soluciones existentes tanto
para la W2.0 como para la WS. En este contexto, el proceso de creación de
conocimiento mediante OW [30] pasa, una vez más, por cuatro fases (ver
figura 4.8):
4.2. Gestión del conocimiento semántico
87
Figura 4.8: Creación de conocimiento mediante OntoxicWiki
Wiki (← Redes de Conocimiento ← Socialización). Los usuarios de la
wiki se organizan en comunidades con intereses comunes (empleados de una compañı́a, comunidades de práctica, etc.). Los miembros
de estas comunidades constituyen las redes de conocimiento en la
WS2.0 cuando comparten su conocimiento.
Documentación de ontologı́as (← Semántica Emergente ← Externalización). De la interaccion de los usuarios en redes de conocimiento
emerge la semántica de los conceptos que conforman la ontologı́a, las
experiencias de casos de uso y cualquier dato de interés. Los miembros de la comunidad documentan la ontologı́a cuando hacen explı́cita esta información en la wiki.
Ontologı́a objetivo + OSMV (← Alineación de Ontologı́as ← Combinación). La combinación las ontologı́as objetivo y de documentación
produce conocimiento de gran calado que redunda en una mayor
comprensión de la ontologı́a original entre los miembros de la comunidad.
OntoxicWiki (← Interfaces Semánticas de Usuario ← Internalización).
OW dispone de una interfaz basada en wiki que presenta la información al usuarios en formato inteligible. Por tanto, OW no sólo actúa
como herramienta externalizadora, sino también como medio de acceso, comprensión y asimilación de las ontologı́as documentadas.
88
4.3.
Capı́tulo 4. Sword
Resumen
Objetivos
Tecnologı́a
Usuario objetivo
Ontologı́as
Propias
Creadas por el
usuario
De edición de
contenidos
Lógica
Fı́sica
Organización
del conocimiento
Extensibilidad
Extracción del conocimiento
OntoxicWiki
Documentación social de ontologı́as.
Protégé (Java), MediaWiki (PHP y MySQL), OWL.
Comunidades de usuarios (de empleados, de práctica, ciéntificos, etc.) no expertos en tecnologı́a.
No tiene.
Ontologı́a objetivo.
OSMV para dirigir la documentación de la ontologı́a objetivo.
Wiki.
Base de datos.
No dispone de mecanismos especı́ficos.
Exportación del contenido a una ontologı́a OWL.
Tabla 4.1: Caracterı́sticas de OntoxicWiki
4.4.
Conclusiones
OW es una aplicación social que permite documentar ontologı́as ası́ como reportar casos de uso y otra información de interés. Dispone de una wiki donde se almacenan y se documentan las ontologı́as. La wiki es una excelente plataforma para lograr este objetivo: es un medio de discusión, un
repositorio de ideas y una herramienta para la colaboración [31]; además,
representa las ontologı́as en formato humano, casi en lenguaje natural.
OW utiliza una aproximación basada en una wiki sintáctica, como es
MediaWiki, en lugar de usar una wiki semántica. No obstante, pese a no
ser una de ellas, las analogı́as con las wikis semánticas son evidentes: la
representación del conocimiento, el uso de ontologı́as, etc. Respecto a los
dos tipos de wiki identificados por Buffa y otros [90], OW encaja parcialmente en ambos: por un lado, la interfaz de la wiki puede ser usada como
editor de la ontologı́a objetivo; por otro, OSMV supedita la documentación
de la ontologı́a objetivo en la wiki.
A pesar de las semejanzas, existe una importante y sutil diferencia entre OW y las wikis semánticas: éstas poseen un modelo del conocimiento
subyacente. Sus páginas categorizadas, relacionadas mediante typed links
4.4. Conclusiones
89
(enlaces con semántica), construyen dicho modelo. El objetivo de OW, en
cambio, no es modelar el conocimiento, sino simplemente representar ontologı́as. OW no tipifica los recursos: los trata a todos de forma similar
(eso sı́, cada uno con su propia representación). Las relaciones no son enlaces tipificados, sino artı́culos con información, igual que las clases o los
individuos. En OW, la wiki es el medio, no el fin.
Los objetivos de OW son completamente diferentes a los de otros trabajos relacionados. El propósito de OW es la documentación social de ontologı́as. Se espera que reproducir las experiencias positivas en otras áreas
de gestión de la información (por ejemplo, bibliotecas digitales) e implementar tal vocabulario en conjunción con una infraestructura tecnológica
sólida para crear, mantener y distribuir metadatos, incremente el valor real
de las ontologı́as, facilitando su compartición y reutilización a gran escala
[148], y mitigue los problemas relacionados con la alfabetización ontológica. Por otra parte, una ontologı́a siempre es una representación simplificada y abstracta del mundo creada para algún propósito. Existen incontables
puntos de vista y propósitos, por lo que existen innumerables ontologı́as
[125]. La documentación puede proporcionar la información necesaria al
usuario para ayudarle a elegir la ontologı́a que mejor se adecúe a sus
necesidades. No obstante, algunas wikis de las estudiadas en el capı́tulo 2
consideran este aspecto:
Moki da soporte a distintos niveles de formalismo del conocimiento (informal para los expertos en el dominio y formal para los ingenieros de conocimiento). Se crea un alineamiento entre el conocimiento informal y su descripción formal. La documentación contenida en la parte informal es crı́tica para entender la parte formal.
De este modo, el conocimiento puede ser explotado también por humanos. La diferencia con OW está en que la edición de contenido
informal es libre y no se rige por ninguna ontologı́a especial de documentación.
ODEWiki dispone de una función para describir instancias a través
del portal ODESeW. El administrador puede definir el conjunto de
atributos que será usado para describir las instancias de un concepto [65]. OW, por su parte, permite describir cualquier recurso de la
ontologı́a, no sólo las instancias; y los atributos para documentar los
proporciona OSMV.
Ontobrowse también aborda la documentación de las arquitecturas
SOA tendiendo un puente entre la información técnica y la docu-
90
Capı́tulo 4. Sword
mentación de negocio. La documentación se realiza sobre las instancias de la ontologı́a y existen dos formas de hacerlo: añadiendo descripciones tanto formales como informales a las caracterı́sticas de
una instancia o mapeando recursos de descripción arquitectural externos con las instancias de la ontologı́a. El primer método adolece
de permitir la libre edición, mientras que el segundo mapea recursos externos sin garantı́as de que estos provengan de una ontologı́a
estándar de documentación.
OntoWiki permite hacer comentarios asociados a los recursos que
pueden ser discutidos por la comunidad, pero no dispone de ningún
sistema especı́fico de documentación.
En SWiM el contenido se edita en OMDoc, formato que da soporte
a todos los niveles de formalización, desde textos en lenguaje natural a representaciones completamente formales para la demostración
automática de teoremas. Gracias a esta versatilidad, es posible documentar cualquier elemento, sentencia o teorı́a. OMDoc puede considerarse como un lenguaje de ontologı́as para las matemáticas donde
se pueden identificar fácilmente ciertas correspondencias entre las
ontologı́as de la WS y las ontologı́as matemáticas (ver tabla 4.4).
Además, ambas a menudo se diseñan modularmente e importan
otras ontologı́as o teorı́as. Sin embargo, la documentación de teorı́as
matemáticas en lenguaje natural es individual, informal y no obedece a ningún patrón especı́fico.
Ontologı́a Web Semántica
Recurso (clase, propiedad, individuo)
Axioma
Ontologı́a
Ontologı́a matemática
Objeto/Sı́mbolo
Sentencia
Teorı́a
Tabla 4.2: Equivalencia entre ontologı́as y matemáticas
Con OSMV, lo que sus autores proponen es un sistema de documentación estandarizado, aceptado por la comunidad cientı́fica y con validez
para cualquier ontologı́a. Lange y Kohlhase hablan de la necesidad de contar con una ontologı́a común en el núcleo de todas las wikis semánticas
[96]. Aunque ellos se refieren a una ontologı́a de dominio, esta aseveración
bien puede extenderse a una ontologı́a de documentación.
4.4. Conclusiones
91
OW puede usarse como editor ontológico, aunque no se recomienda
este uso. Sin una metodologı́a adecuada, la ontologı́a evolucionarı́a de forma incontrolada y esto podrı́a acarrear efectos no deseados en la manera
en la que los datos se clasifican y se recuperan en la wiki [149, 150, 151,
152, 153].
Finalmente, en el último capı́tulo se extraen las conclusiones más importantes y se plantean algunas lı́neas de trabajo para el futuro.
Capı́tulo 5
Conclusiones y proyecto de
investigación futura
Hasta hace relativamente poco tiempo, el valor de la compañı́a estaba
determinado principalmente por el valor de sus activos tangibles (recursos fı́sicos), pero en los años recientes, los cambios en la economı́a han
invertido esta tendencia y se ha aceptado que en los activos intangibles,
y principalmente en el conocimiento, se encuentra la llave de la ventaja
competitiva en el nuevo mercado.
Según el modelo de Nonaka y Takeuchi [118], la creación del conocimiento es un proceso que pasa por un ciclo de transformaciones entre
el conocimiento tácito individual y el conocimiento explı́cito colectivo. El
paso esencial de este ciclo es la externalización, que consiste en hacer explı́cito el conocimiento tácito con el objetivo de compartirlo.
La gestión del conocimiento puede encontrar una poderosa aliada en
la incipiente WS2.0 por cumplir una doble función:
1. La W2.0 es una plataforma natural de intercambio de conocimiento
y colaboración.
2. Las tecnologı́as semánticas, y especialmente las ontologı́as, proporcionan un valioso instrumento para gestionar el conocimiento de
manera eficiente.
Existe una analogı́a entre conocimiento y ontologı́a: en la fase de exter93
94
Capı́tulo 5. Conclusiones y proyecto de investigación futura
nalización, el conocimiento tácito se formaliza para poder ser compartido;
del mismo modo, en el contexto de la WS2.0, la información de la Web
se formaliza en ontologı́as para producir conocimiento reutilizable. Por lo
tanto, crear conocimiento en la WS2.0 equivale a construir ontologı́as [30].
Sin embargo el uso de metodologı́as novedosas para gestionar el conocimiento, como las basadas en ontologı́as, requieren del pertinente aprendizaje por parte de los usuarios (empleados de la compañı́a o miembros
de la organización).
La creación de ontologı́as ha sido tradicionalmente responsabilidad de
Ingenieros del Conocimiento en conjunción con expertos en el dominio.
Para promover que esta tarea sea asumida por miembros no expertos de
redes de conocimiento, es preciso contar con herramientas apropiadas que
den soporte al acceso y gestión del conocimiento. Tales herramientas deben
reunir dos requisitos:
1. Ofrecer la funcionalidad necesaria para externalizar el conocimiento.
2. Disponer de una interfaz semántica de usuario que permita interiorizar el conocimiento.
De este modo, la creación de ontologı́as en comunidades surge de la
interacción y la evolución natural de sus miembros, es decir, se trata de un
proceso de semántica emergente. Al llevarse a cabo por grandes grupos
de usuarios, se alcanza el máximo consenso, por lo que se minimizan los
ocasionales problemas de interoperabilidad y reutilización. Más aun, estas
posibles desventajas se convierten en una importante baza a favor del uso
de ontologı́as.
Las wikis semánticas son especialmente útiles para cumplir todos los
requerimientos formulados:
Son un sistema de publicación simple, fácil de aprender y rápido de
usar [31].
Fomentan la participación colectiva.
Constituyen una herramienta eficaz para gestionar el conocimiento
en entornos colaborativos [154].
Proporcionan una sólida infraestructura que da soporte a los procesos de Ingenierı́a Ontológica [155].
95
OW es una aplicación social que tiende puentes semánticos entre las
actividades del ciclo de gestión del conocimiento. Esta herramienta basada en wiki permite documentar ontologı́as describiendo experiencias de
uso y otra información de interés. La documentación se produce dentro
de la propia comunidad, por lo que también se trata de un proceso de
semántica emergente. La principal ventaja de OW respecto a otras aproximaciones similares es la propuesta de un estándar de documentación de
ontologı́as. El estándar propuesto está implementado como una ontologı́a,
y como tal, podrı́a refinarse por la propia comunidad que lo utiliza, fruto
del consenso.
El objetivo de OW es representar ontologı́as en formato humano y
proveerlas de documentación adicional con información útil para terceros
que permita identificarlas entre otras similares y reutilizarlas fácilmente.
Sólo cuando el uso de ontologı́as esté lo suficientemente extendido, podremos hablar de la WS como una realidad.
La popularidad de la WS2.0 es análoga a la de la W2.0. La Web fue originalmente concebida como un espacio de información hipertextual; pero el
desarrollo de tecnologı́as cada vez más sofisticadas extendieron su uso como interfaz remota de software. El potencial de la Web de proporcionar
una gama completa de aplicaciones no tuvo un éxito masivo hasta que
no se desarrollaron aplicaciones web con interfaces de usuario ricas y con
interactividad equivalente a la del PC [34]. El éxito de la W2.0 en convertir la Web en un medio masivo de participación ha demostrado que
facilitar la contribución de contenido y hacerlo más accesible al público
general puede revolucionar cualquier entorno, abriéndolo a nuevas aplicaciones antes inimaginables [138]. Una interfaz usable considera la experiencia del usuario [58], pues estos añaden valor mediante el uso [34]. Y al
igual que los usuarios no técnicos han contribuido con cantidades significantes de texto libre en la W2.0, también tendrán cosas significantes que
decir semánticamente. Lo que necesita la WS para despegar a escala global
es dejar el poder en manos de los usuarios. El volumen de significado que
las multitudes perciben es el volumen de datos que la WS necesita para
alcanzar su tremendo potencial [139]. OW trata de dar un paso más en esa
dirección.
En el futuro, se espera presentar Sword, una herramienta basada en
OW. Actualmente se encuentra en fase desarrollo y culminará con la evaluación del usuario. Algunas de las nuevas carácterı́sticas más relevantes
con las que Sword espera contar son:
96
Capı́tulo 5. Conclusiones y proyecto de investigación futura
WebProtégé1 [156]. OW está implementado como un plugin para
Protégé 3.x. Esta versión es una aplicación de escritorio (local) que
no permite el trabajo colaborativo y obliga a construir la ontologı́a
individualmente. WebProtégé, en cambio, es una plataforma web que
permite crear la ontologı́a por la comunidad desde cero.
Razonamiento automático. OW no dispone de razonador propio. Es
necesario cargar la ontologı́a en Protégé desde la wiki y ejecutar el razonador (Racer2 , Pellet3 , etc.) previamente instalado. Se espera que
Sword posea su propio razonador integrado para inferir conocimiento o hacer comprobaciones, como chequear la consistencia de la ontologı́a, en tiempo de edición.
Ontologı́a de edición. OW guı́a la edición de la wiki con plantillas que muestran la sintaxis general (en wikitexto) de cada tipo de
artı́culo. Una ontologı́a de edición formaliza esta información y asiste
al usuario mientras edita la wiki, en tiempo real.
Control de versiones. Sword debe implementar un sistema de control
global de versiones que registre la evolución de la ontologı́a y vaya
más allá del mero control individual de cada artı́culo.
También es necesario considerar otros aspectos importantes:
Analizar la escalabilidad y compartibilidad en el modelado de ontologı́as [157].
Añadir estrategias complementarias al razonamiento automático que
extiendan las caracterı́sticas de depuración de Sword.
• Usar etiquetado y aplicar métodos de reconciliación semiautomáticos, por ejemplo, basados en agentes [158], para mantener las ontologı́as consistentes.
• Usar técnicas de representación y depuración visual [159].
Estudiar alguna estrategia de población de Sword, por ejemplo, programando agentes que recopilen ontologı́as de la Web y las carguen
automáticamente en la wiki.
1
http://webprotege.stanford.edu
http://www.racer-systems.com
3
http://clarkparsia.com/pellet
2
97
Sword es el vehı́culo para alcanzar el verdadero objetivo: desarrollar una metodologı́a para la documentación social y colaborativa de ontologı́as en la Web Semántica.
Apéndices
99
Apéndices A
Ontologı́a OSMV
A.1.
Diagrama
101
102
Apéndices A. Ontologı́a OSMV
Figura A.1: Diagrama de clases y relaciones de OSMV
103
A.2. Clases en detalle
A.2.
Clases en detalle
Descripción
DocumentationClass
Clase principal que agrupa a todas las clases de documentación
Propiedades object
Propiedades datatype
Individuos
GlobalDocumentationClass
LocalDocumentationClass
Subclases
Superclase
Tabla A.1: Descripción de DocumentationClass
GlobalDocumentationClass
Clase que agrupa a las clases que docuDescripción
mentan la ontologı́a globalmente
Propiedades object
Propiedades datatype
Individuos
LicenseModel
Ontology
OntologyEngineeringTool
OntologyLanguage
Subclases
OntologySyntax
OntologyTask
OntologyType
SocialDocumentationClass
Superclase
DocumentationClass
Tabla A.2: Descripción de GlobalDocumentationClass
104
Apéndices A. Ontologı́a OSMV
LocalDocumentationClass
Clase que agrupa a las clases que documentan los recursos de la ontologı́a localmente
Descripción
Propiedades object
Propiedades datatype
Individuos
Subclases
Superclase
comments
deficiencies
documentationResources
userDescription
DocumentationClass
Tabla A.3: Descripción de LocalDocumentationClass
Descripción
Propiedades object
Propiedades datatype
Individuos
Subclases
Superclase
LicenseModel
Licencia de uso
description
documentation
name
AFL
APSL
BSD
CPL
CCL
GPL
IBM PL
INTEL OSL
LGPL
mBSD
MPL
OSL
GlobalDocumentationClass
Tabla A.4: Descripción de LicenseModel
A.3. Jerarquı́a de clases y propiedades
Descripción
Propiedades object
Propiedades datatype
Individuos
Subclases
Superclase
Ontology
Es la clase más importante. Representa a
la ontologı́a objetivo
hasLanguage
hasLicense
hasSocialDocumentation
hasSyntax
hasUsedEngineeringTool
isDesignedForTask
isOfType
author
creationDate
description
documentation
domain
keyClasses
keywords
knownUsage
modificationDate
name
naturalLanguage
notes
numberOfAxioms
numberOfClasses
numberOfIndividuals
numberOfProperties
reference
resourceLocator
URI
usesImports
version
GlobalDocumentationClass
Tabla A.5: Descripción de Ontology
A.3.
Jerarquı́a de clases y propiedades
105
106
Apéndices A. Ontologı́a OSMV
Descripción
OntologyEngineeringTool
Herramienta utilizada para crear la ontologı́a
Propiedades object
Propiedades datatype
Individuos
Subclases
Superclase
description
documentation
name
Altova SemanticWorks
IsaViz
OilEd
OntoBuilder
OntoStudio
Protégé
SWOOP
WebODE
WSMO Studio
GlobalDocumentationClass
Tabla A.6: Descripción de OntologyEngineeringTool
OntologyLanguage
Lenguaje formal con el que se representa
Descripción
la ontologı́a
Propiedades object
hasSyntax
description
Propiedades datatype documentation
name
DAML+OIL
OWL
OWL-DL
Individuos
OWL-Full
OWL-Lite
RDF
RDFS
Subclases
Superclase
GlobalDocumentationClass
Tabla A.7: Descripción de OntologyLanguage
A.3. Jerarquı́a de clases y propiedades
OntologySyntax
Sintaxis utilizada para escribir la ontologı́a
Descripción
Propiedades object
Propiedades datatype
Individuos
Subclases
Superclase
description
documentation
name
OWL-XML
RDF-XML
GlobalDocumentationClass
Tabla A.8: Descripción de OntologySyntax
OntologyTask
Tarea para la que fue concebida la ontologı́a
Descripción
Propiedades object
Propiedades datatype
Individuos
Subclases
Superclase
description
documentation
name
Annotation
Configuration
Filtering
Indexing
Integration
Matching
Mediation
Personalization
Query formulation
Query rewriting
Search
GlobalDocumentationClass
Tabla A.9: Descripción de OntologyTask
107
108
Apéndices A. Ontologı́a OSMV
Descripción
Propiedades object
Propiedades datatype
Individuos
Subclases
Superclase
OntologyType
Tipo de ontologı́a
description
documentation
name
Application
Core
Domain
Task
Upper level
GlobalDocumentationClass
Tabla A.10: Descripción de OntologyType
SocialDocumentationClass
Clase que engloba a la documentación soDescripción
cial suministrada por el usuario
Propiedades object
description
Propiedades datatype documentation
name
detectedInconsistencies
expressiveDeficiencies
realUsageExamples
Individuos
similarOntologies
suggestions
tools
Subclases
Superclase
GlobalDocumentationClass
Tabla A.11: Descripción de SocialDocumentationClass
109
A.3. Jerarquı́a de clases y propiedades
(a) Clases
(b) Relaciones
(c) Atributos
Figura A.2: Clases y propiedades de OSMV
Apéndices B
API de Protégé–OWL
111
112
Apéndices B. API de Protégé–OWL
Figura B.1: API de Protégé–OWL
Apéndices C
Base de datos de MediaWiki
113
114
Apéndices C. Base de datos de MediaWiki
Figura C.1: Sección de la base de datos de MediaWiki manipulada
115
Figura C.2: Base de datos de MediaWiki completa
Bibliografı́a
[1] T. Berners-Lee, Weaving the Web: The Original Design and Ultimate Destiny of the World Wide Web, Harper, San Francisco, USA, 1999
[2] D. Raggett, A. L. Hors, I. Jacobs (eds.) HTML 4.01 Specification, W3C
Recommendation, 1999, http://www.w3.org/TR/html401
[3] G. Antoniou, F. van Harmelen, A Semantic Web Primer, MIT Press, 2004
[4] A. Geraci, IEEE Standard Computer Dictionary: A Compilation of IEEE
Standard Computer Glossaries, IEEE, 1990
[5] L. L. Brownsword et al., Current Perspectives on Interoperability,
CMU/SEI-2004-TR009, 2004
[6] T. Berners-Lee, J. Hendler, O. Lassila, The Semantic Web, Scientific
American, 284(5), pp. 34–43, 2001
[7] A. R. Anderson (ed.), Controversia sobre Mentes y Máquinas, Tusquets,
Barcelona, España, 1984
[8] T. Berners-Lee, What the Semantic Web can represent, 1998, http://
www.w3.org/DesignIssues/RDFnot.html
[9] T. Bray et al. (eds.), Extensible Markup Language (XML) 1.0 (Fifth Edition), W3C Recommendation, 2008, http://www.w3.org/TR/xml
[10] J. Bosak, T. Bray XML and the Second-Generation Web, Scientific American, 1999
[11] F. Manola, E. Miller (eds.), RDF Primer, W3C Recommendation, 2004,
http://www.w3.org/TR/rdf-primer
117
118
Bibliografı́a
[12] D. Brickley, R.V. Guha (eds.), RDF Vocabulary Description Language 1.0:
RDF Schema, W3C Recommendation, 2004, http://www.w3.org/
TR/rdf-schema
[13] P. Hitzler et al. (eds.), OWL 2 Web Ontology Language Primer, W3C
Recommendation, 2009, http://www.w3.org/TR/owl-primer
[14] R. Brachman, H. Levesque, Knowledge Representation and Reasoning,
Morgan Kaufmann, 2004
[15] T. R. Gruber, Toward Principles for the Design of Ontologies used for
Knowledge Sharing. In Proceedings of the International Workshop on
Formal Ontology, 1993. International Journal of Human-Computer
Studies, 43(5-6), pp. 907–928, 1995
[16] R. Neches et al., Enabling Technology for Knowledge Sharing, AI Magazine, 12(3), pp. 16–36, 1991
[17] T. R. Gruber, A Translation Approach to Portable Ontology Specifications. In Proceedings of the 7th Knowledge Acquisition for KnowledgeBased Systems Workshop, 1992. Knowledge Acquisition, 5(2), pp. 199–
220, 1993
[18] J. M. Bradshaw et al., Sharable Ontologies as a Basis for Communication and Collaboration in Conceptual Modeling. In Proceedings of the 7th
Knowledge Acquisition for Knowledge-Based Systems Workshop, pp.
3.1–3.25, Banff, Alberta, Canada, 1992
[19] T. R. Gruber, The Role of Common Ontology in Achieving Sharable,
Reusable Knowledge Bases. In Proceedings of the 2nd International Conference: Principles of Knowledge Representation and Reasoning, pp.
601–602, Morgan Kaufmann, San Mateo, California, USA, 1991
[20] D. Skuce, I. Monarch,Ontological Issues in Knowledge Base Design: Some
Problems and Suggestions. In Proceedings of the 5th Knowledge Acquisition for Knowledge-Based Systems Workshop, Banff, Alberta, Canada,
1990
[21] M. Cutkosky et al., PACT: An Experiment in Integrating Concurrent Engineering Systems, IEEE Computer, 26(1), pp. 28–37, 1993
[22] R. Fikes et al., Knowledge Sharing Technology Project Overview, Technical Report KSL, pp. 91–71, Stanford University, Knowledge Systems
Laboratory, 1991
Bibliografı́a
119
[23] M. R. Genesereth, An Agent-Based Framework for Software Interoperability, DARPA Software Technology Conference, Meridian Corporation,
Arlington VA, pp. 359–366, 1992.
[24] T. R. Gruber, J. M. Tenenbaum, J. C. Weber Toward a Knowledge Medium
for Collaborative Product Development. In Artificial Intelligence in Design
’92, Kluwer Academic Publishers, Boston, USA, 1992
[25] R. S. Patil et al., The DARPA Knowledge Sharing Effort: Progress Report. In Proceedings of the 3rd International Conference: Principles of
Knowledge Representation and Reasoning, Morgan Kaufmann, Cambridge, MA, USA, 1992
[26] E. Walther, H. Eriksson, M. A. Musen, Plug and play: Construction
of Task-Specific Expert-System Shells using Sharable Context Ontologies,
Technical Report KSl-92-40, Knowledge Systems Laboratory, Stanford
University, 1992
[27] N. Noy, D. McGuinness. Ontology Development 101: A Guide to creating
your First Ontology, Technical Report No. KSL-01-05, Stanford University, 2001
[28] M. Fernandez, A. Gomez-Perez, N. Juristo, METHONTOLOGY: From
Ontological Art towards Ontological Engineering, AAAI, Spring Symposium on Ontological Engineering, Stanford University, 1997
[29] J. T. Pollock, R. Hodgson, Adaptive Information, Willey Interscience,
2004
[30] G. A. Aranda-Corral, J. Borrego-Dı́az, A. Jiménez-Mavillard, Social
Ontology Documentation for Knowledge Externalization, In Proceedings
of the 4th MTSR. CCIS, 108, pp. 137–148, Springer-Verlag, Berlin, Heidelberg, Germany, 2010
[31] B. Leuf, W. Cunningham, The Wiki Way: Quick Collaboration on the Web,
Addison-Wesley, Boston, USA, 2001
[32] M. Krötzsch, D. Vrandecic, M. Völkel Semantic MediaWiki. In Proceedings of the 5th ISWC. LNCS, 4273, pp. 935–942, Springer-Verlag, Berlin,
Heidelberg, Germany, 2006
[33] A. Ebersbach et al., Wiki: Web Collaboration, Springer Science+Business Media. Springer-Verlag, Berlin, Heidelberg, Germany,
2006
120
Bibliografı́a
[34] T. O’Reilly, What is Web 2.0 Design Patterns and Business Models for
the Next Generation of Software, 2005, http://oreilly.com/web2/
archive/what-is-web-20.html
[35] J. J. Garret, The Elements of User Experience: User-Centered Design for the
Web, New Raiders, 2002
[36] D. L. McGuinness, Conceptual Modeling for Distributed Ontology Environments. In Proceedings of ICCS ’00. Conceptual Structures: Logical, Linguistic, and Computational Issues, LNAI 1867, pp. 100–112,
Springer-Verlag, Berlin, Heidelberg, Germany, 2000
[37] A. Passant et al., Federating Distributed Social Data to Build an Interlinked Online Information Society, IEEE Inteligent Systems, 24(6), pp. 44–
48, 2009
[38] K. Kawamoto, Y. Kitamura, Y. Tijerino, KawaWiki: A Semantic Wiki
Based on RDF Templates. In Proceedings of the IEEE/WC/ACM International Conference on Web Intelligence and Intelligent Agent Technology ’06. IEEE, 2006.
[39] S. Schaffert, IkeWiki: A Semantic Wiki for Collaborative Knowledge Management. In Proceedings of the 15th IEEE International Workshops on
Enabling Technologies: Infrastructure for Collaborative Enterprises
(WETICE ’06). IEEE, pp. 388–396, 2006
[40] E. Oren et al., Annotation and Navigation in Semantic Wikis. In Proceedings of the 1st Workshop on Semantic Wikis, CEUR-WS, 206, Budva,
Montenegro, 2006
[41] K. Dello, E. P. B. Simperl, R. Tolksdorf, Creating and using Semantic
Web Information with Makna. In Proceedings of the 1st Workshop on
Semantic Wikis (SemWiki ’06). CEUR-WS, 206, 2006
[42] C. Lange et al. (eds.), Proceedings of the 5th Workshop on Semantic Wikis
(SemWiki ’10), CEUR-WS, 632, Hersonissos, Heraklion, Crete, Greece,
2010
[43] C. Lange et al. (eds.), Proceedings of the 4th Workshop on Semantic Wikis
(SemWiki ’09), CEUR-WS, 464, Hersonissos, Heraklion, Crete, Greece,
2009
[44] C. Lange et al. (eds.), Proceedings of the 3rd Workshop on Semantic Wikis
(SemWiki ’08), CEUR-WS, 360, Tenerife, España, 2008
Bibliografı́a
121
[45] M. Völkel, S. Schaffert (eds.), Proceedings of the 1st Workshop on Semantic Wikis (SemWiki ’06), CEUR-WS, 206, 2006
[46] T. Kuhn, AceWiki: A Natural and Expressive Semantic Wiki. In Proceedings of Semantic Web User Interaction, CHI ’08: Exploring HCI Challenges, 2008
[47] N. E. Fuchs, K. Kaljurand, T. Kuhn, Attempto Controlled English for
Knowledge Representation. In Proceedings of the 4th International Summer School: Reasoning Web, Venice, Italy, 2008
[48] J. Fischer, Ideas and Improvements for Semantic Wikis, In Proceedings of
the 3rd ESWC, LNCS 4011, pp. 650–663, Springer-Verlag, Berlin, Heidelberg, Germany, 2006
[49] D. Vrandecic, M. Krötzsch, Reusing Ontological Background Knowledge
in Semantic Wikis In Proceedings of the 1st Workshop on Semantic
Wikis. CEUR-WS, 206, Budva, Montenegro, 2006
[50] E. Bozsak et al., KAON - Towards a Large Scale Semantic Web. In Proceedings of the 3rd International Conference on E-Commerce and Web
Technologies (EC-Web ’02). Aix-en-Provence, France, 2002
[51] R. Volz, KAON SERVER - A Semantic Web Management System. In Alternate Track Proceedings of the 12th International World Wide Web
Conference (WWW ’03), Budapest, Hungary, 2003, ACM, 2003.
[52] S. Schaffert, R. Westenthaler, A. Gruber, IkeWiki: A User-Friendly Semantic Wiki. In Proceedings of the 3rd ESWC – Demonstrations Track,
Budva, Montenegro, 2006
[53] S. Schaffert, A. Gruber, R. Westenthaler, A Semantic Wiki for Collaborative Knowledge Formation. In Proceedings of Semantics ’05, Vienna,
Austria, 2005
[54] E. Prud’hommeaux, A. Seaborne (eds.), SPARQL Query Language
for RD, W3C Recommendation, 2008, http://www.w3.org/TR/
rdf-sparql-query
[55] M. Kiesel, Kaukolu: Hub of the Semantic Corporate Intranet. In Proceedings of the 1st Workshop on Semantic Wikis – From Wiki To Semantics,
CEUR-WS, 206, 2006
122
Bibliografı́a
[56] L. Yang, M. Qian, W. Fang, An Interactive Mathematics Education Platform based on Topic-Based Deep Search, In Proceedings of the 2nd International Workshop on Education Technology and Computer Science.
ETCS, 2(6-7), pp. 163–169, IEEE, 2010
[57] C. von Hinten, A. Hense, M. Razum, A Wiki for Collaboration and Publication in Research. In Proceedings of the 4th International Conference
on eScience, pp. 790–794. IEEE, 2008
[58] S. Schaffert, The KiWi Vision: Collaborative Knowledge Management,
Powered by the Semantic Web, 2008, http://www.kiwi-project.
eu/index.php/kiwi-vision
[59] S. Schaffert et al., KiWi – A Platform for Semantic Social Software. In
Proceedings of the 6th ESWC, Heraklion, 2009. LNCS, 5554, pp. 888–
892, Springer-Verlag, Berlin, Heidelberg, Germany, 2009
[60] M. Rospocher et al., MoKi: the Modelling wiKi. In Proceedings of the 4th
Workshop on Semantic Wikis (SemWiki ’09), Hersonissos, Heraklion,
Crete, Greece, 2009
[61] C. Ghidini, MoKi: The Enterprise Modelling wiKi. In Proceedings of the
6th ESWC, Heraklion, Greece, 2009. LNCS, 5554, pp. 831–835, SpringerVerlag, Berlin, Heidelberg, Germany, 2009
[62] M. S. Fox, M. Grüninger, Enterprise Modeling, AI Magazine, 19(3), pp.
109–121, 1998
[63] C. Ghidini, M. Rospocher, L. Serafini, MoKi: a Wiki-Based Conceptual
Modeling Tool In Proceedings of the 9th ISWC, Shanghai, China, 2010.
CEUR-WS, 658, pp. 77–80, 2010
[64] A. Siles et al., ODEWiki: A Semantic Wiki That Interoperates with the
ODESeW Semantic Portal. In Proceedings of the 5th ESWC, Tenerife, España, 2008. LNCS 5021, pp. 859–863, Springer-Verlag, Berlin, Heidelberg, Germany, 2008
[65] O. Corcho et al., ODESeW: Automatic Generation of Knowledge Portals
for Intranets and Extranets. In Proceedings of 2nd ISWC. LNCS, 2870, pp.
802–817, Springer-Verlag, Berlin, Heidelberg, Germany, 2003
[66] S. Staab, J. Angele, AI for the Web – Ontology-based Community Web
Portals. In Proceedings of the 17th National Conference on Artificial
Intelligence (AAAI ’00), AAAI Press, 2000
Bibliografı́a
123
[67] J. C. Arpı́rez et al., WEBODE in a Nutshell, AI Magazine, 24(3), pp.
37–47, 2003
[68] J. C. Arpı́rez et al., WebODE: a Scalable Ontological Engineering Workbench. In Proceedings of the 1st International Conference on Knowledge Capture (KCAP ’01), Victoria, Canada, 2001. ACM Press, pp. 6–
13, New York, USA, 2001
[69] O. Corcho et al., WebODE: An Integrated Workbench for Ontology Representation, Reasoning and Exchange. In Proceedings of the 13th International Conference on Knowledge Engineering an Knowledge Management (EKAW ’02), 2002
[70] B. Adida, M. Birbeck (eds.), RDFa Primer: Bridging the Human and
Data Webs, W3C Working Group, 2008, http://www.w3.org/TR/
xhtml-rdfa-primer
[71] M. R. Henderson, K. B. Clark, Architectural Innovation: The Reconfiguration of Existing Product Technologies and the Failure of Established Firms.
In Proceedings of Administrative Science Quarterly, 35, pp. 9–30, 1990
[72] H.-J. Happel, S. Seedorf Ontobrowse: A Semantic Wiki for Sharing
Knowledge about Software Architectures. In Proceedings of the 19th International Conference on Software Engineering and Knowledge Engineering (SEKE ’07), pp. 506–512, Boston, Massachusetts, USA, 2007
[73] A. Cockburn The Interaction of Social Issues and Software Architecture,
ACM, 39(10), pp. 40–46, 1996
[74] M. Geisser et al., New Applications for Wikis in Software Engineering,
CEUR-WS, 328, pp. 145–160, 2008
[75] M. H. Huhns, M. P. Singh, Service-Oriented Computing: Key Concepts
and Principles, IEEE Internet Computing, 9(1), pp. 75–81, 2005
[76] N. Bieberstein et al., Service-Oriented Architecture Compass: Business
Value, Planning, and Enterprise Roadmap, IBM Press, 2005
[77] I. Horrocks et al., SWRL: A Semantic Web Rule Language Combining
OWL and RuleML, W3C Member Submission, 2004, http://www.w3.
org/Submission/SWRL
[78] S. Auer, S. Dietzold, T. Riechert OntoWiki – A Tool for Social, Semantic Collaboration. In Proceedings of the 5th International Semantic Web
124
Bibliografı́a
Conference (ISWC ’06), Athens, USA, 2006. LNCS, 4273, pp. 736–749,
Springer-Verlag, Berlin, Heidelberg, Germany, 2006
[79] W. Maalej, D. Panagiotou, H.-J. Happel, Towards Effective Management
of Software Knowledge Exploiting the Semantic Wiki Paradigm. In Proceedings of Software Engineering ’08, pp. 183–197, 2008
[80] S. Lohmann, T. Riechert, S. Auer, Collaborative Development of Knowledge Bases in Distributed Requirements Elicitation. In Proceedings of Software Engineering ’08, pp. 22–28, 2008
[81] D. Feinstein, F. Smadja, Hierarchical Tags and Faceted Search: The Rawsugar Approach. In Proceedings of SIGIR ’06 Workshop on Faceted
Search, pp. 23–25, 2006
[82] S. Auer, Powl – A Web Based Platform for Collaborative Semantic Web Development. In Proceedings of the 1st Workshop Scripting for the Semantic Web (SFSW ’05), Hersonissos, Heraklion, Greece, 2005. CEUR-WS,
135, 2005
[83] R. Oldakowski et al., RAP: RDF API for PHP. In Proceeding of the
International Workshop on Interpreted Languages ’04, MIT Press, 2004
[84] A. Seaborne, RDQL - A Query Language for RDF, W3C Member Submission, 2004, http://www.w3.org/Submission/RDQL
[85] D. Vrandecic et al., SMW+ User Manual, Ontoprise GmbH, Karlsruhe,
Germany, 2009
[86] M. Krötzsch et al., Semantic Wikipedia. In Proceedings of the 15th
World Wide Web Conference, Edinburgh, Scotland. ACM Press, pp.
585–594, 2006
[87] M. Krötsch, D. Vrandecic, M. Völkel. Wikipedia and the Semantic Web
- The Missing Links. In Proceedings of the 1st International Wikimedia
Conference (Wikimania ’05), Frankfurt, Germany, 2005
[88] G. De Giacomo, M. Lenzerini, TBox and ABox Reasoning in Expressive
Description Logics, AAAI Technical Report WS-96-05 Compilation, 1996
[89] Y. Ma, P. Hitzler, Z. Lin, Paraconsistent Reasoning for Expressive and
Tractable Description Logics. In Proceedings of the 21st International
Workshop on Description Logics, Dresden, Germany, 2008. CEUR-WS,
353, 2008.
Bibliografı́a
125
[90] M. Buffa et al., SweetWiki: A Semantic Wiki In Proceedings of Web Semantics: Science, Services and Agents on the World Wide Web. Elsevier, 6(1), pp. 84–97, 2008
[91] M. Buffa et al., SweetWiki: Semantic Web Enabled Technologies in Wiki.
In Proceedings of the 1st Workshop on Semantic Wikis — From Wiki
To Semantics (SemWiki ’06), pp. 74–88, 2006
[92] S. Pemberton et al., XHTMLTM 1.0 The Extensible HyperText Markup
Language (Second Edition): A Reformulation of HTML 4 in XML 1.0, W3C
Recommendation, 2000, http://www.w3.org/TR/xhtml1
[93] O. Corby, R. Dieng, C. Faron-Zucker, Quering the Semantic Web with
CORESE Search Engine. In Proceedings of the 16th European Confernence in Artificial Intelligence (ECAI’04). IOS Press, Valencia, Spain,
2004.
[94] M. Kohlhase, OMDoc – An Open Markup Format for Mathematical Documents [Version 1.2], LNAI, 4180, Springer-Verlag, Berlin, Heidelberg,
Germany, 2006
[95] C. Lange, M. Kohlhase, SWiM – A Semantic Wiki for Mathematical
Knowledge Management In Proceedings of the 5th European Semantic Web Conference, 2008. LNCS, 5021, pp. 832–837, Springer-Verlag,
Berlin, Heidelberg, Germany, 2008
[96] C. Lange, M. Kohlhase, Towards Scientific Collaboration in a Semantic
Wiki, In Proceedings of Bridging the Gap between Semantic Web and
Web 2.0 (SemNet ’07), pp. 119–126, 2007
[97] R. Ausbrooks et al., Mathematical Markup Language (MathML) Version 3.0, W3C Recommendation, 2010, http://www.w3.org/TR/
MathML3
[98] M. Kohlhase, F. Rabe, Semantics of OpenMath and MathML3. In Proceedings of the 22nd OpenMath Workshop CICM ’09, Grand Bend, Ontario, Canada, 2009
[99] A. Berglund (ed.), Extensible Stylesheet Language (XSL) Version 1.1,
W3C Recommendation, 2006, http://www.w3.org/TR/xsl
[100] C. Lange, M. Kohlhase, A Mathematical Approach to Ontology Authoring and Documentation. In Proceedings of MKM/Calculemus ’09.
LNAI, 5625, pp. 389–404, Springer-Verlag, Berlin, Heidelberg, Germany, 2009
126
Bibliografı́a
[101] B. Krieg-Brückner et al., Semantic Interrelation of Documents via an Ontology. In DeLFI ’04, Tagungsband der 2. e-Learning Fachtagung Informatik, Paderborn, Germany, 2004. LNCS, 5224, pp. 104–124, SpringerVerlag, Berlin, Heidelberg, Germany, 2004
[102] K. Bollacker et al., Freebase: A Collaboratively Created Graph Database
For Structuring Human Knowledge. In Proceedings of SIGMOD ’08, Vancouver, BC, Canada. ACM, 2008
[103] K. Siorpaes, M. Hepp, myOntology: The Marriage of Ontology Engineering and Collective Intelligence. In Proceedings of Bridging the Gap
between Semantic Web and Web 2.0, 2007
[104] S. E. Campanini, P. Castagna, R. Tazzoli, Towards a Semantic WikiWikiWeb. In Proceedings of the 3rd International Semantic Web Conference (ISWC ’04), Hiroshima, Japan, 2004
[105] A. Souzis, Building a Semantic Wiki, IEEE Intelligent Systems, 20(5),
2005
[106] E. Decker et al., Self-Organized Reuse of Software Engineering Knowledge supported by Semantic Wikis. In Proceedings of the Workshop on
Semantic Web Enabled Software Engineering (SWESE ’05), 4th ISWC,
Galway, Ireland, 2005
[107] E. Oren, Semperwiki: a Semantic Personal Wiki. In Proceedings of the
1st Workshop on The Semantic Desktop, 2005
[108] [107] D. Aumueller, Semantic Authoring and Retrieval within a Wiki.
In Proceedings of the 2nd European Semantic Web Conference (ESWC
’05), Heraklion, Greece, 2005
[109] D. Aumueller, S. Auer, Towards a Semantic Wiki Experience – Desktop
Integration and Interactivity in WikSAR. In Proceedings of the 1st Workshop on The Semantic Desktop, 4th ISWC, Galway, Ireland, 2005
[110] L. J. B. Nixon, Integrating Knowledge, Semantics and Digital Media into the Multimedia Generation Process. In Proceedings of the 2nd European Workshop on the Integration of Knowledge, Semantics and Digital Media Technology, 2005
[111] S. Boll and W. Klas, ZYX-A Multimedia Document Model for Reuse and
Adaptation of Multimedia Content, IEEE Transactions on Knowledge and
Data Engineering, 13(3), pp. 361–382, 2001
Bibliografı́a
127
[112] L. J. B. Nixon, E. P. B. Simperl, Makna and Multimakna: Towards Semantic and Multimedia Capability in Wikis for the Emerging Web. In Proceedings of Semantics ’06, Vienna, Austria, 2006
[113] J. Tramullas Saz, P. Garrido Picazo, Organización de Información en
Herramientas Wiki: Aplicación de Ontologı́as en Wikis Semánticos. In Proceedings of Nuevas Perspectivas para la difusión y organización del
conocimiento, ISKO España, 1, pp. 605–612, Valencia, España, 2009
[114] E. Penrose, The Theory of the Growth of the Firm, Oxford University
Press, 1959
[115] P. F. Drucker, The Age of Discontinuity: Guidelines to our Changing Society, Harper & Row, New York, USA, 1969
[116] D. Fensel, Silver Bullet for Knowledge Management and Electronic Commerce, Springer-Verlag, Berlin, Germany, 2001
[117] J. Davies, D. Fensel, F. van Harmelen (eds.), Towards the Semantic
Web: Ontology-Driven Knowledge Management, John Wiley & Sons, 2003
[118] I. Nonaka, H. Takeuchi, The Knowledge-Creating Company: How
Japanese Companies Create the Dynamics of Innovation, Oxford University
Press, 1995
[119] G. Bateson, Steps to an Ecology of Mind: Collected Essays in Anthropology, Psychiatry, Evolution and Epistemology, University of Chicago Press,
1972
[120] V. Alexiev et al., Information Integration with Ontologies: Experiences
from an Industrial Showcase, John Wiley & Sons, 2005
[121] F. Emery, Characteristics of Socio-Technical Systems: Introduction to the
Concept of Socio-Technical Systems. In Design of Jobs, pp. 177–198, Penguin Books, Harmondsworth, 2000
[122] P. Cudré-Mauroux, Emergent Semantics, MIT Computer Science and
Artificial Intelligence Laboratory, Cambridge, USA, 2007
[123] O. Nykänen, Semantic Web for Evolutionary Peer-to-Peer Knowledge
Space, UPGRADE, 10(1), pp. 33–40, 2009
[124] Q. Martı́n-Moreno Cerillo, Aprendizaje Colaborativo y Redes de Conocimiento. In Proceedings of the 9th Jornadas Andaluzas de Organización
y Dirección de Instituciones Educativas, Granada, España. Grupo Editorial Universitario, pp. 55–70, 2004
128
Bibliografı́a
[125] V. Zacharias et al., Mind the Web. In Proceedings of the 6th International Conference on the Semantic Web (ISWC ’07), Busan, Korea, 2007
[126] A. Maedche et al., Emergent Semantics, IEEE Inteligent Systems,
Trends & Controversies, 17(1), pp. 78–86, 2002
[127] J. Euzenat, P. Shvaiko, Ontology Matching, Springer-Verlag, Heidelberg, Alemania, 2007
[128] M. A. Hearst, Information Integration, IEEE Intelligent Systems, pp.
12–24, 1998
[129] B. Swartout et al., Toward Distributed Use of Large-Scale Ontologies. In
Proceedings of the 10th Knowledge Acquisition for Knowledge-based
Systems Workshop, Banff, Alberta, Canada, 1996
[130] H. Eriksson et al., Automatic Generation of Ontology Editors. In Proceedings of the 12th Knowledge Acquisition for Knowledge-based Systems Workshop, Banff, Alberta, Canada, 1999
[131] N. F. Noy, M. A. Musen, SMART: Automated Support for Ontology
Merging and Alignment. In Proceedings of the 12th Workshop on Knowledge Acquisition, Modeling and Management, Banff, Alberta, Canada,
1999
[132] D. Oliver, Change Management for Shared and Locally Divergent Healthcare Terminologies. In Proceedings of the International Medical Informatics Association Working Group 6- Medical Concept Representation
and Natural Language Processing Conference, Phoenix, Arizona, 1999
[133] A.-C. Boury-Brisset, Ontologies for Coalition Interoperability. In Proceedings of the NATO RTO Symposium (MP-064), Information Management Challenges in Achieving Coalition Interoperability, Québec,
Canada, 2001
[134] H. Muljadi et al., Semantic MediaWiki: a User-Oriented System for Integrated Content and Metadata Management System. In Proceedings of the
IADIS International Conference WWW/Internet ’05, Lisbon, Portugal,
2005
[135] D. F. Huynh et al., The Semantic User Interface Paradigm for Presenting Semi-Structured Information, MIT Artificial Intelligence Laboratory,
Cambridge, USA, 2002
Bibliografı́a
129
[136] D. F. Huynh, D. Karger, D. Quan, Haystack: A Platform for Creating,
Organizing and Visualizing Information Using RDF. In Proceedings of the
Semantic Web Workshop, 11th World Wide Web Conference (WWW
’02), 2002
[137] D. F. Huynh, D. Quan, D. Karger, User Interaction Experience for Semantic Web Information. In Proceedings of WWW ’03. ACM, Budapest,
Hungary, 2003
[138] M. van Kleek et al., Simplifying Knowledge Creation and Access for EndUsers on the SW. In Proceedings of CHI ’08. ACM, Florence, Italy, 2008
[139] S. Davies et al., Making the Semantic Web Usable: Interface Principles to
Empower the Layperson, Journal of Digital Information, 12(1), 2011
[140] C. Müller, L. Birn, Wikis for Collaborative Software Documentation. In
Proceedings of I-KNOW ’06, Graz, Austria, 2006
[141] A. Jiménez-Mavillard, J. Borrego-Dı́az, G. A. Aranda-Corral, Una
Herramienta para la Documentación Colaborativa de Ontologı́as, Conferencia Internacional de Software Libre (OSWC ’08), Málaga, España, 2008
[142] N. Noy et al., Creating Semantic Web Contents with Protégé-2000, IEEE
Intelligent Systems, 16(2), pp. 60–71, 2001
[143] N. F. Roy, R. W. Fergerson, M. A. Musen, The Knowledge Model of
Protege-2000: Combining Interoperability and Flexibility. In Proceedings
of the 2nd International Conference on Knowledge Engineering and
Knowledge Management (EKAW ’00), Juan-les-Pins, France, 2000
[144] H. Knublauch et al., The Protégé OWL Plugin: An Open Development
Environment for Semantic Web Applications. In Proceedings of the 3rd
International Semantic Web Conference: The Semantic Web – ISWC
’04, Hiroshima, Japan, 2004. LNCS, 3298, pp. 229–243, Springer-Verlag,
Berlin, Heidelberg, Germany, 2004
[145] J. Hartmann et al., DEMO – Design Environment for Metadata Ontologies. In Proceedings of the 3rd European Semantic Web Conference (ESWC ’06), Budva, Montenegro, 2006. LNCS, 4011, pp. 427–441,
Springer-Verlag, Berlin, Heidelberg, Germany, 2006
[146] J. Hartmann et al., Ontology Metadata Vocabulary and Applications,
LNCS, 3762, pp. 906–915, Springer-Verlag, Berlin, Heidelberg, Germany, 2005
130
Bibliografı́a
[147] H. Neuhaus, M. Compton, The Semantic Sensor Network Ontology: A
Generic Language to Describe Sensor Assets. In Proceedings of the AGILE
Workshop Challenges in Geospatial Data Harmonisation, 2009
[148] R. Palma, J. Hartmann, P. Haase, OMV: Ontology Metadata Vocabulary
for the Semantic Web, OMV Consortium, 2009
[149] M. Klein et al., Ontology Versioning and Change Detection on the Web.
In Proceedings of the 13th International Conference on Knowledge Engineering and Management (EKAW ’02), 2002
[150] H. S. Pinto, S. Staab, C. Tempich, DILIGENT: Towards a Fine-Grained
Methodology for Distributed, Loosely-Controlled and Evolving Engineering
of Ontologies. In Proceedings of the European Conference of Artificial
Intelligence (ECAI ’04), pp. 393–397, 2004
[151] L. Stojanovic et al., User-Driven Ontology Evolution Management. In
Proceedings of the 13th European Conference on Knowledge Engineering and Management (EKAW ’02), 2002
[152] Y. Sure, C. Tempich, D. Vrandecic, Ontology Engineering Methodologies, Semantic Web Technologies: Trends and Research in Ontologybased Systems, Wiley, 2006
[153] P. R. S. Visser et al., An Analysis of Ontological Mismatches: Heterogeneity versus Interoperability. In Proceedings of the AAAI Spring Symposium on Ontological Engineering (AAAI ’97), 1997
[154] M. Völkel, E. Oren, Semantic Wikis for Personal Knowledge Management. In Proceedings of DEXA ’06. LNCS, 4080, pp. 509–518, SpringerVerlag, Berlin, Heidelberg, 2006
[155] N. Kasisopha, P. Wongthongtham, F. K. Hussain, Semantic Wiki as
a Basis for Software Engineering Ontology Evolution, OTM 2009 Workshops. LNCS, 5872, pp. 858–865, Springer-Verlag, Berlin, Heidelberg,
Germany, 2009
[156] T. Tudorache, J. Vendetti, N. F. Noy, Web-Protégé: A lightweight OWL
Ontology Editor for the Web. In Proceedings of the 5th OWL Experiences
and Directions Workshop (OWLED ’08). CEUR-WS, Karlsruhe, Germany, 2008
Bibliografı́a
131
[157] M. Jarrar, M. Meersman, Scalability and Knowledge Reusability in Ontology Modeling. In Proceedings of the International conference on Infrastructure for e-Business, e-Education, e-Science and e-Medicine,
2002
[158] G. Aranda-Corral, J. Borrego-Dı́az, Reconciling Knowledge in Social
Tagging Web Services. In Proceedings of the 5th International Conference on Hybrid Artificial Intelligence Systems, part II. LNCS, 6077, pp.
383–390, Springer-Verlag, Berlin, Heidelberg, Germany, 2010
[159] J. Borrego-Dı́az, A. M. Chávez-González, Visual Ontology Cleaning:
Cognitive Principles and Applicability. In Proceedings of the 3th ESWC.
LNCS, 4011, pp. 317–331, Springer-Verlag, Berlin, Heidelberg, Germany, 2006
Descargar