Teleeducación WWW
Teleeducación WWW
Teleeducación WWW
VALENCIA, 2007
Resumen
Debido al gran desarrollo de la World Wide Web, tanto en cantidad de
contenidos y nodos como en velocidades de acceso, aparecen por parte de la
comunidad cientfico-tcnica propuestas de utilizacin de la misma con
objetivos ms ambiciosos que la mera descarga de ficheros para ser
presentados al usuario.
The Semantic Web is developed with this aim. The Semantic Web includes
information which can be understood by Intelligent Agents (IA). In this
process, the IAs can expand their Knowledge Bases (KB) and perform
inferences that can ease some human tasks. The information in the Semantic
Web uses different ontology languages for the web, as the World Wide Web
Consortium (W3C) recommendation named Web Ontology Language
(OWL). The inferences can be done by different Inference Engines (IEs) as
FACT++, Racer and Pellet.
In addition to this, many educative contents have appeared in the web, with
high production cost. For this reason reusing contents is nowadays a need,
with little or no changes. These units of contents to be independently shared
are know as Learning Objects (LOs). These LOs have to interoperate among
them in order to build e-learning experiences.
VALENCIA, 2007
ndice
Captulo 1: Introduccin
1.1 Introduccin
Hoy en da los sistemas Telemticos, y ms concretamente, la World Wide
Web se est introduciendo en todos los aspectos de la vida de las sociedades
avanzadas. Desde consultar cuentas bancarias, a reservar vuelos
directamente a las compaas, obtener las ltimas noticias, incluso tener una
conversacin sncrona o asncrona con los amigos. Otro aspecto ms en el
que est introducindose es en el educativo, y en concreto en las
Universidades, donde el impacto ser an mayor cuando las generaciones
que fueron al colegio con Internet en casa lleguen a la Universidad.
2
Captulo 1. Introduccin
3
Captulo 1. Introduccin
trabajar con Lgica Descriptiva (en su versin OWL DL) y que se est
erigiendo como estndar para el desarrollo de razonadores de esta lgica. Si
XML nos permite definir clases y los datos de objetos de esas clases y RDF
nos permite incluir sintcticamente relaciones entre los recursos, OWL nos
permite incluir, de forma estndar, las relaciones de una ontologa a nivel de
especializaciones (clases y subclases) y ciertas relaciones lgicas entre ellas,
como definir una clase como la interseccin de otras clases.
1.3 Objetivos
La presente Tesis pretende estudiar y aplicar las dos tendencias comentadas
anteriormente:
5
Captulo 1. Introduccin
6
Captulo 1. Introduccin
7
Captulo 1. Introduccin
8
Captulo 1. Introduccin
9
Captulo 1. Introduccin
11
Captulo 1. Introduccin
Como parte final del captulo 7 se realiza una prueba del uso por medio de
un modelo de agente inteligente, evaluando primero los principales
razonadores o motores de inferencia actuales y modelizando despus la
carga de conocimientos en el agente. Tambin se realizan pruebas de
bsquedas por palabras clave o bsquedas por medio de inferencias. Por
medio de esta prueba de concepto se valida que la ontologa definida en esta
Tesis es implementable y utilizable por medio de agentes inteligentes.
12
Captulo 1. Introduccin
13
Captulo 1. Introduccin
14
Captulo 2. Estudio del Estado del Arte
2.1 Introduccin
En este captulo se estudian las tendencias actuales en el desarrollo de la
web actual, tanto a nivel general como respecto al campo de la
teleeducacin.
15
Captulo 2. Estudio del Estado del Arte
Tambin nos permitir este captulo entender mejor el enfoque para los
captulos posteriores, donde se habla de tendencias construccionistas y sobre
todo de desarrollos para el nuevo concepto emergente de web semntica.
16
Captulo 2. Estudio del Estado del Arte
Si bien es cierto que este buscador sita en las primeras posiciones los
recursos ms referenciados, ello no ha evitado que se haya tenido que
revisar muchos de los recursos de forma manual en un proceso minucioso.
Algunos recursos se caracterizaban por tener contenidos de gran calidad, y/o
haban sido desarrollados por personalidades de reconocido prestigio en la
temtica; pero en otros casos no era as, o bien los recursos contenan
informacin repetida o se centraban de un modo secundario en la temtica,
de modo que ha habido que desecharlos
17
Captulo 2. Estudio del Estado del Arte
Basndonos en una web con estas caractersticas, se puede exigir poco a los
sistemas de bsqueda automticos. A lo sumo se pueden realizar sistemas
que busquen palabras o conjunto de palabras, ordenados en funcin de la
importancia que dan otras personas a ese recurso por medio de las veces que
se encuentra dicho recurso como hipervnculo en otros recursos. Google
trabaja de esta forma, por medio de indexaciones y asignaciones de peso de
importancia segn las veces que sea referenciado un recurso en otros
recursos. Pongamos por ejemplo la bsqueda de recursos que contengan el
texto Semantic Web, y probablemente obtendremos la pgina oficial de
dicha iniciativa en W3C como una de los primeros resultados de la
bsqueda.
traten como tema central la Web Semntica y que estn escritos por autores
prestigiosos en ese campo. La razn estriba en que la informacin que
tienen y pueden entender las mquinas en la web sintctica es informacin
de cmo presentar el recurso, e hipervnculos a recursos relacionados. El
contenido semntico (si es un artculo, si trata principalmente de la Web
Semntica, si el autor est dentro de los prestigiosos) slo es entendible por
los humanos.
21
Captulo 2. Estudio del Estado del Arte
Esto nos permite seguir con la gran inercia que tiene la Web como la
conocemos ahora y aprovecharnos de ella.
22
Captulo 2. Estudio del Estado del Arte
VERDAD
PRUEBA
FIRMA DIGITAL
LOGICA
VOCABULARIO ONTOLOGICO
RDF + RDFS
XML + NS + XMLS
UNICODE URI
Una vez definidos los smbolos sobre los que se construyen las siguientes
capas, se define una capa que nos permite referirnos a un espacio de objetos
o conceptos sobre los que pretenderemos ofrecer informacin, de forma que
los agentes inteligentes sepan a lo que nos referimos. En este caso se recurre
a los identificadores que ya existen en la Web, es decir: Uniform Resource
Identifiers (URIs).
La principal ventaja de las URIs es que se disearon para la web, por lo que
no tienen por qu ser centralizadas, aunque algunas (por ejemplo las basadas
en http) se basen en sistemas jerrquicos centralizados.
Se puede afirmar que XMLS es un documento XML, que tiene un DTD que
define su gramtica, y cada documento XMLS a su vez define la gramtica
de otros documentos XML. Esto nos permite que, suponiendo que los
procesos disponen informacin a priori de la gramtica nica de los
documentos XMLS, utilicemos el mismo parser para decodificar los datos
de un documento y la definicin de su gramtica.
XML permite que los procesos puedan recibir datos estructurados por medio
de XML, y puedan validar su correccin por medio de su correspondiente
DTD o XMLs para ver si los datos se han generado y recibido de forma
correcta, as como generar una estructura de datos interna igual a la recibida.
Los espacios de nombres, Name Spaces (NS) se definen como una URI que
representa a un conjunto de nombres, dentro de la estructura de datos en la
que estn definidos. A nivel prctico sirven para definir sufijos de URIs, de
forma que un conjunto de trminos comunes y definidos por la misma
entidad compartan el mismo espacio de nombres. Por ejemplo:
Los espacios de nombres son de gran importancia para los lenguajes RDF,
RDFS y OWL, ya que cada uno realiza una definicin formal de palabras
reservadas en su sintaxis, creando un espacio de nombres, que a su vez
utiliza los espacios de nombres de los lenguajes de las capas inferiores.
Estos espacios de nombres se obvian a lo largo de toda la Tesis para facilitar
la comprensin de los ejemplos.
[Ej. 2.2]
<Pedro, trabajaCon, Juan>
trabajaCon(Pedro,Juan)
Pedro.trabajaCon(Juan)
26
Captulo 2. Estudio del Estado del Arte
trabajaCon
Pedro Juan
<rdf:Class rdf:resource=
http://www.dcom.upv.es/general/SeresHumanos>
En el ejemplo 2.4 vemos dos formas en las que podemos describir a los
seres humanos indicando que son una clase. La diferencia es que con RDF
se necesita una convencin entre el emisor y el receptor de la informacin
para que sepa la semntica de la propiedad Class, lo que no es necesario en
RDFS por estar incluido ya en el lenguaje.
<rdfs:range rdf:resource="#SeresHumanos"/>
</rdfs:Property>
En este caso vemos que, en el ejemplo 2.6 se indica que trabajaCon es una
propiedad, que relaciona un Ser Humano (sujeto descrito por la marca
rdfs:domain) con otro Ser Humano (objeto, descrito por la marca
rdfs:range).
La capa lgica es la que trata de las relaciones lgicas entre los objetos de
estudio, generando una ontologa ms detallada y completa. Un lenguaje
ontolgico suele dar solucin a estas dos capas, como es el caso de OWL.
29
Captulo 2. Estudio del Estado del Arte
Aqu es donde aparece la firma digital, ya que permite a cualquier nivel (en
principio el estndar es a nivel de XML Digital Signature [WWW68])
decidir si esa informacin es realmente de quien dice que es, y evitar
falsificaciones.
Esto nos permitir saber que la informacin viene de donde dice que viene,
o si tiene una firma digital que le ha entregado alguna entidad en la que
confiemos, como Verisign. Tambin existen en la actualidad sistemas
distribuidos de confianza, como el que utiliza PGP [RFC2440].
Para poder abarcar uno de los objetivos de esta Tesis, que es contribuir al
desarrollo y mejora de los sistemas de Teleeducacin, necesitamos presentar
un estado del arte que nos permita confirmar que esta Tesis completa partes
an no alcanzadas en el campo de investigacin y que van en lnea con las
ltimas tendencias del mismo.
Esta teora aparece a principios del siglo XX con B.F. Skinner, con sus ideas
del condicionamiento operante. Postula que el aprendizaje ocurre cuando
hay cambios en el comportamiento como respuesta a unos estmulos
externos. Se suelen basar en esta teora los simuladores, que reflejan el
entorno de forma que aprendamos a reaccionar bajo unas condiciones
determinadas.
31
Captulo 2. Estudio del Estado del Arte
Esta teora surge a mediados del siglo XX con George Miller, con ideas
como que la mente humana funciona como un computador, cogiendo
informacin, procesndola, guardndola y relocalizndola de nuevo si la
necesita. Esta teora afirma que el aprendizaje ocurre como un cambio en el
conocimiento interno que tiene cada persona, en su memoria.
2.3.2.3 Constructivismo
Se sustenta en la premisa de que cada persona construye su propia
perspectiva del mundo que le rodea a travs de sus propias experiencias y
esquemas mentales desarrollados.
32
Captulo 2. Estudio del Estado del Arte
2.3.3 Teleeducacin
La web es un canal idneo para el aprendizaje por sus caractersticas:
El coste de crear contenidos es muy alto [SOE96], entre otras cosas porque
la formacin va web deja poco espacio para la improvisacin por parte del
profesor, y esto obliga a generar contenidos muy bien definidos y
estructurados. Este alto coste nos hace que con slo una edicin del curso no
se amorticen normalmente los gastos de produccin, y que la reutilizacin
sea uno de las principales metas en la actualidad.
2.3.3.1 Reutilizacin
Lo que entendemos por reutilizacin en este caso es la posibilidad de
estructurar un curso con (una o ms) piezas de otras fuentes, es decir,
contenidos de otros cursos que ya se hayan producido. Estas piezas suelen
llamarse como Objetos de Contenido Compartibles (Sharable Content
Objects, SCOs) u Objetos de Aprendizaje Compartibles (Sharable Learning
Objects, SLOs).
Las caractersticas necesarias para facilitar que un SCO sea reusable son
[DOD01]:
Independencia entre SCOs, para poder coger los que queramos sin
tener que llevar arrastrado al resto. Este punto no es sencillo, ya que
decidir a qu nivel un curso es independiente del resto de piezas
(nivel de leccin, de asignatura, de curso completo) puede llegar a
ser muy complicado [TELE01].
34
Captulo 2. Estudio del Estado del Arte
Permitir su uso por agentes. Como los SCOs se pretende que sean
muchos y se presenten de forma distribuida (en la web),
necesitaremos sistemas que nos permitan localizar los SCOs que ms
se adapten a nuestras necesidades, por lo que los agentes han de
entender las caractersticas de los SCOs. En este punto es donde
entra la web semntica y los lenguajes ontolgicos.
36
Captulo 2. Estudio del Estado del Arte
Mercado
I+D+I
Especificaciones
tcnicas
Modelos de
referencia
Estndares
2.3.4.2 IMS
IMS Global Learning Consortium [WWW15], es un consorcio de empresas
e instituciones interesadas en la teleeducacin (sus miembros son
trabajadores de SUN, WebCT, MIT, Blackboard y varias Universidades).
37
Captulo 2. Estudio del Estado del Arte
2.3.4.3 OKI
Open Knowledge Initiative (OKI) [WWW16] es una iniciativa del MIT que
define un conjunto de APIs en Java, a modo de modelo de referencia para
que se implementen dichas APIs. Hay algunos servicios que son iguales a
IMS, por lo que la API de OKI de esos servicios se puede considerar como
una implementacin de referencia del servicio.
38
Captulo 2. Estudio del Estado del Arte
Interaction
Delivery context Evaluation
Learning
Locator parameters Assesment
Learning Learner
Context Info
Locator Catalog Coach
Info History
Query Learner
Learning Info Learner
Resources Records
2.3.4.5 ADL-SCORM
Advanced Distributed Learning es un consorcio de entidades liderada por el
Departamento de Defensa de los Estados Unidos (DoD). A peticin del
DoD han creado un Modelo de Referencia denominado Sharable Content
Object Referente Model (SCORM).
39
Captulo 2. Estudio del Estado del Arte
El LMS debe poder trabajar con los contenidos de cualquier SCO que
cumpla el modelo de referencia:
Estas caractersticas son las que permiten que un SCO pueda interoperar
entre distintos LMSs, ya que todos los LMSs que cumplan con el modelo de
referencia, sabrn manipular e interactuar con el SCO.
Para realizar una divisin que permita trabajar slo con una parte del
modelo, el modelo SCORM se basa en tres submodelos:
40
Captulo 2. Estudio del Estado del Arte
Como resumen vemos que el uso de las ontologas se hace a travs de los
meta-datos que describen el SCO, que se basa principalmente en IEEE LOM
1484.12.1
2.3.4.6 SIF
El Schools Interoperatibility Framework (SIF) es una especificacin para la
iniciativa K-12 (que pretende introducir el uso de nuevas tecnologas de la
informacin en la educacin en pases de habla inglesa), para promover la
interoperabilidad entre aplicaciones que cumplan la especificacin SIF.
2.3.4.7 OpenUSS
OpenUSS [WWW18] es un proyecto que ha desarrollado una especificacin
y est buscando realizar implementaciones de referencia. Dicha
especificacin se basa en Java 2 Enterprise Edition y tiene encima unos
41
Captulo 2. Estudio del Estado del Arte
43
Captulo 2. Estudio del Estado del Arte
44
Captulo 2. Estudio del Estado del Arte
45
Captulo 2. Estudio del Estado del Arte
46
Captulo 2. Estudio del Estado del Arte
Normalmente un foro es uno o varios hilos (threads o topics) sobre los que
los usuarios realizan comentarios o contestan a comentarios de otros
usuarios. En los siguientes apartados veremos las funcionalidades que
suelen llevar aparejadas.
Los distinguimos de los blogs (weblogs) ya que normalmente los blogs son
un conjunto de artculos alrededor de una temtica que mandan usuarios y
que son comentados (por un sistema similar al foro) posteriormente por
otros usuarios y el autor. Aunque algunos foros permiten que se te enve por
e-mail las interacciones de otros usuarios, se distingue de las listas de correo
porque la accin ms comn es la visita del foro ms que la espera pasiva a
recibir mensajes. De hecho, debido a que el tiempo para leer e-mails es
limitado, las listas de e-mail se vuelven inapropiadas en temticas en las que
se reciben gran nmero de interacciones.
Para los cursos on-line los foros permiten al tutor aadir informacin
extra o actualizaciones cuando el curso ya ha arrancado. Por
ejemplo, el cambio de una ley a mitad de un curso sobre fiscalidad
puede ser comentado por el tutor cuando algunos alumnos ya hayan
pasado la unidad que ha quedado obsoleta.
A:
TACITO EXPLICITO
TACITO
SOCIALIZACION EXTERNALIZACION
DE:
EXPLICITO
INTERNALIZACION COMBINACIN
50
Captulo 2. Estudio del Estado del Arte
51
Captulo 2. Estudio del Estado del Arte
Para acortar estos tiempos, algunos foros envan avisos por medio de
e-mails a los usuarios cuando se contesta a un comentario suyo o
cuando se realiza una interaccin en un thread o comentario en el
que nos hemos registrado como interesados. Los usuarios de los
foros han de acostumbrarse tambin a realizar comentarios que sean
interesantes para el grupo para obtener respuestas.
Para evitar la pasividad en los foros los tutores han de animar a los
alumnos a participar, o incluso recurrir a otra figura como el
facilitador que realiza estas tareas de animacin y seguimiento
general [MON02].
53
Captulo 2. Estudio del Estado del Arte
2.3.7 TrackBack
El ejemplo ms similar a una ontologa para los foros ha sido el sistema de
enlace entre blogs distintos implementado por TrackBack. Trackback
apareci como primera versin en 2002 y permite enlazar artculos de
distintos blogs a modo de conversaciones (como si fuera un foro
distribuido).
56
Captulo 2. Estudio del Estado del Arte
57
Captulo 2. Estudio del Estado del Arte
58
Captulo 2. Estudio del Estado del Arte
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<rdf:Description
rdf:about="http://www.w3.org/QA/2005/08/variability_in_specifications.html"
trackback:ping="http://www.w3.org/QA/sununga/mt-tb.cgi/7"
dc:title="Variability in Specifications published as a W3C Working Group
Note"
dc:identifier="http://www.w3.org/QA/2005/08/variability_in_specifications.ht
ml"
dc:subject="Publications"
dc:description="Variability in Specifications, a companion to the QA
Framework: Specification Guidelines, has been updated and published as a W3C
Working Group Note. The Note contains advanced specification design
considerations and conformance-related techniques. It describes how design
of a specification's conformance..."
dc:creator="karl"
dc:date="2005-08-30T00:46:17+00:00" />
</rdf:RDF>
Ej. 2.7. RDF en
http://www.w3.org/QA/2005/08/variability_in_specifications.html
59
Captulo 2. Estudio del Estado del Arte
60
Captulo 3. Lgica y Web Semntica
3.1 Introduccin
En este captulo introducimos los conceptos y explicaciones principales
respecto a las teoras de lgica y raciocinio, lo que nos permitir:
Es decir, en este captulo asentaremos las bases que nos permitirn entender
OWL DL y enmarcarlo dentro de las distintas lgicas existentes, donde
podremos ver que es una de las lgicas ms ricas semnticamente y adems
que permiten razonamientos en la misma con tiempos de procesamiento
finito y razonable.
Las lgicas nos sirven para abstraer el mundo real y quedarnos slo con
nuestra rea de estudio, utilizando unos operadores dependientes de cada
lgica que nos permiten obtener conclusiones.
63
Captulo 3. Lgica y Web Semntica
64
Captulo 3. Lgica y Web Semntica
Existen otros tipos de lgica, como podemos ver en la tabla 3.1, pero slo
profundizaremos en la Lgica Proposicional, en la Lgica de Primer Orden
(FOL), y dentro de FOL profundizaremos un subconjunto de sta, la Lgica
Descriptiva (Description Logics, DL). Empezaremos con la lgica
proposicional, ya que es la base de las otras lgicas, y en particular de la
lgica de primer orden. Puesto que la web semntica se basa en la lgica de
primer orden, la desarrollaremos con detalle, y en particular un subconjunto
de la misma, la lgica DL. La razn por la que trabajaremos con lgica DL
radica en que, como veremos, es un subconjunto de FOL que permite
implementar razonadores que realizan inferencias en tiempos razonables, y
por eso es el subconjunto ms utilizado dentro de la web semntica.
3.2.3 Razonamiento
Se define modelo [FRA01] como un mundo estructurado con respecto al
cual podemos evaluar la veracidad o no de algn hecho. Por ejemplo,
cuando en lgica proposicional tenemos dos hechos Me levanto pronto los
lunes y llego pronto al trabajo los lunes, un modelo posible es que sea
cierto que me levante pronto los lunes, y falso que llegue pronto al trabajo
los lunes. En principio hay tantos modelos como posibilidades de un sistema
sin llegar a contradicciones.
KB [Expr. 3.1]
3.2.4.1 Sintaxis en LP
La lgica proposicional basa su sintaxis en un conjunto de proposiciones
atmicas = {A,B,C} indivisibles e independientes entre s, que se
66
Captulo 3. Lgica y Web Semntica
Smbolo Denominacin
T Verdadero
F Falso
A Negacin
A B Conjuncin
A B Disyuncin
AB Implicacin
AB Equivalencia
Tabla 3.2. Resumen de la sintaxis
3.2.4.2 Semntica en LP
En esta lgica, llamaremos Interpretacin I sobre un conjunto de tomos
a una funcin que nos dar un valor verdadero o falso por cada proposicin
atmica.
Esto nos permitir pasar a la semntica de esta lgica (Tabla 3.3). Dicha
semntica es aplicable tambin a combinaciones de proposiciones atmicas.
67
Captulo 3. Lgica y Web Semntica
cierto en I y no lo sea A
I A B IA, si y slo si IB A y B son los dos verdaderos
(A B en esa o los dos falsos a la vez en I
interpretacin)
I T Verdadero es verdad
en cualquier
interpretacin I
Falso no es verdad (no
I F se da) en cualquier
interpretacin I
Tabla 3.3. Semntica
Adems, existe una relacin entre los distintos operadores, de forma que
pueden transformarse entre s. Las ms importantes se ven en la tabla 3.4.
Frmula Equivalente
A B ( A B )
( A B ) (A B )
( A B ) (A B )
A ( A B) A
A ( A B) A
,, son conmutativas y asociativas
es distributiva frente a
es distributiva frente a
Tabla 3.4. Equivalencias
3.2.4.3 Formulacin en LP
Se dice que una frmula lgica es [FRA01]:
Posible, si hay alguna interpretacin I que la satisface (hace que sea
cierta).
Los sistemas actuales que tratan con gran nmero de variables se basan
normalmente en demostrar que una frmula es posible (buscar una
implementacin que se cumpla, y no hace falta seguir) o recorrerlas todas y
ver que ninguna es posible. Se puede convertir cualquier otra formulacin
en LP en una formulacin de posibilidad De hecho una frmula x es una
tautologa si la frmula x es imposible (cuando no se encuentra ninguna
interpretacin que lo cumpla, tras pasar por todas), y una frmula x es
imposible si x es una tautologa. Una frmula x es Invalidable si x es
posible.
(
in=1 mj=1 Ai , j ) [Expr. 3.8]
(
in=1 mj=1 Ai , j ) [Expr. 3.9]
69
Captulo 3. Lgica y Web Semntica
Horn Form (HF), que consiste en dejar todas las subfrmulas con
como mximo una proposicin sin negar (no siempre es posible esta
transformacin). La parte sin negar es la causa de la implicacin y la
negada es la consecuencia de dicha implicacin. Por ejemplo:
( A C ) (C B A) [Expr. 3.10]
(C A) y ( A (C B )) [Expr. 3.11]
3.2.4.4 Razonamiento en LP
El objetivo del razonamiento en esta y las siguientes lgicas es permitir que
nuestros sistemas inteligentes puedan obtener y comprobar distintas
conclusiones basndose en su base de conocimiento. Por ejemplo, gracias al
razonamiento un sistema, basndose en su conocimiento de que si ha de
encender las luces de la calle cuando est oscuro y en su conocimiento de
que cuando es de noche est oscuro, podr deducir que ha de encender las
luces cuando sea de noche.
KB = ( A C ), (B C )
= (A B)
A B C ( A C ) ( B C ) KB I
F F F F F F F 1
F F T T F F F 2
F T F F T F T 3
F T T T F F T 4
T F F T F F T 5
T F T T F F T 6
T T F T T T T 7
T T T T F F T 8
71
Captulo 3. Lgica y Web Semntica
KB cierto en {I7}
cierto en {I3, I4, I5, I6, I7, I8}
M ( KB ) M ( ) ( cierto en TODOS los modelos posibles de KB)
KB ?? SI (se puede inferir de KB)
Figura 3.1. Ejemplo de deduccin por Enumeracin
Si terminamos de recorrer una rama sin llegar a una contradiccin del tipo
X y X, hemos encontrado una Interpretacin que lo cumple, por lo que el
conjunto de frmulas es posible. Si recorremos todas las ramas del rbol y
todas llegan a contradiccin, es que el sistema es imposible.
72
Captulo 3. Lgica y Web Semntica
( A C ), (B C ), ( A B )
Posible??
(A C )
( B C )
(A B)
B
C
A C
Imposible,
pasar a otra
rama
B
POSIBLE
A=T
B=T
C=F
73
Captulo 3. Lgica y Web Semntica
KB = ( A C ), (B C )
= (A B)
= (A B )
( A C ), (B C ), (A B )
Posible??
(A C )
( B C )
(A B )
B
C
A
B
Imposible, y no
hay mas ramas
KB ?? SI
74
Captulo 3. Lgica y Web Semntica
75
Captulo 3. Lgica y Web Semntica
I = , I [Expr. 3.14]
[
f I n ] siendo n el orden de f [Expr. 3.15]
76
Captulo 3. Lgica y Web Semntica
aI [Expr. 3.17]
:V [Expr. 3.20]
I ,
x = ( x) el objeto asignado a x por
a I , = a I
( f (t1 ,K, t n ))I , (
f I t1
I ,
,K, t n
I ,
)
I , P(t1 ,K , t n )
I , I ,
sii t1 ,K, t n PI
I , [Expr. 3.21]
77
Captulo 3. Lgica y Web Semntica
Sintaxis Significado
I , P(t1 ,K, t n ) t1
I ,
,K, t n
I ,
PI
I ,
I , , no se satisface en I ,
I , I , y adems I ,
I , I , o (no exclusiva) I ,
I , Si I , entonces I ,
I , I , , si y slo si I , ( en
esa interpretacin I , )
I , x.[ ] Para todo d : I , [x / d ]
I , x.[ ] Existe al menos un d : I , [x / d ]
Tabla 3.6. Semntica FOL
Frmula Equivalente
x.[y.[ ]] y.[x.[ ]]
x.[y.[ ]] y.[x.[ ]]
x.[ ] [x[ ]]
x.[ ] [x[ ]]
[ x.[ ]] = [ x.[ ]],
{, }, si no depende de x,
{,}
suele lle var dentro ej x.[ ]
suele lle var dentro ej x.[ ]
x.[y.[ ]] y.[x.[ ]]
x.[y.[ ]] y.[x.[ ]]
78
Captulo 3. Lgica y Web Semntica
KB P Q [Expr. 3.22]
Por ejemplo, decir que Juan es Profesor, PROFESOR (Juan), sita a Juan
como miembro de la clase profesor. Y si digo que
PROFESOR TRABAJADOR, puedo concluir que Juan tambin pertenece
a la clase de los trabajadores, TRABAJADOR (Juan).
80
Captulo 3. Lgica y Web Semntica
Buscando una cierta analoga con las Bases de Datos, T-Box sera la
descripcin de la Base de Datos (esquemas) y A-Box las tuplas de esa Base
de Datos.
T-Box contiene:
AC [Expr. 3.24]
81
Captulo 3. Lgica y Web Semntica
82
Captulo 3. Lgica y Web Semntica
Base de Conocimiento, KB
INFERENCIAS
T-Box
profesorpersona (IMPARTE.materia)
alumno persona
ingeniero persona
A-Box
Juan: profesor ingeniero
Telematica : materia
(Juan, Telematica): IMPARTE
atmico. Es un subconjunto de
I
R RI I x I Rol simple, primitivo o
atmico (binario)
83
Captulo 3. Lgica y Web Semntica
C D CI DI Conjunto de elementos
definido por la unin de dos
conceptos (unin de
conjuntos)
C D CI DI Conjunto de elementos
definido por la interseccin de
dos conceptos (interseccin de
conjuntos)
C /C
I
Conjunto de elementos que
abarca todo nuestro espacio
menos los individuos que
agrupa C
I I
R.C {x | y.[R (x,y) C (y)] Conjunto de elementos que se
relacionan al menos una vez
por medio de R con otros
elementos pertenecientes al
concepto C
I I
R.C {x | y.[R (x,y)C (y)] Conjunto de elementos que
tienen todas sus relaciones con
otros elementos pertenecientes
al concepto C por medio de R,
y no por otro medio.
T I Todo nuestro espacio (top)
El conjunto vaco (botton)
Tabla 3.8. sintaxis y semntica de ALC
(
I = I , I ) [Expr. 3.28]
84
Captulo 3. Lgica y Web Semntica
I I
I x I
J (P,R)
(J,T)
P
(J,P)
T (P,J)
(T,J)
R (J,R)
(R,J)
(P,T)
(T,P)
(R,P)
(T,R)
(R,J)
3.2.6.3 Tipos de DL
Se distinguen entre s por el subconjunto de FOL que abarcan. Cuando ms
abarcan, ms expresivo es el lenguaje, pero a su vez ms complicado es
razonar en esa lgica. En la tabla 3.9 podemos ver una comparativa de los
distintos sistemas, indicando las caractersticas de los mismos y ordenados
de menor a mayor complejidad [IAN02], [PAN02].
85
Captulo 3. Lgica y Web Semntica
86
Captulo 3. Lgica y Web Semntica
R P [Expr. 3.31]
3.2.6.4 Razonamiento en DL
1. Razonamiento en la T-Box:
2. Razonamiento en la A-Box:
88
Captulo 3. Lgica y Web Semntica
Por otro lado, se adapta ms a los sistemas web en los que no se dispone de
toda la informacin desde el principio. Al ser la web un sistema distribuido
en el que la informacin sobre una misma instancia puede venir de dos
fuentes distintas, sera inviable centralizar la asignacin de URIs a
instancias. Al no realizar la suposicin de nombres nicos, puedo ir
recogiendo informacin de varias fuentes y luego relacionarlas segn vaya
descubriendo que dos URIs son realmente la misma instancia. Realizando
un smil en la vida real, puedo recibir informacin acerca de un primo
lejano, y a su vez informacin acerca del nuevo novio de una amiga de mi
mujer. Meses ms tarde puedo llegar a descubrir que ambas personas son en
realidad la misma.
Trabajar con un razonador que permita que varios nombres sean la misma
instancia nos obliga a ser cuidadosos con la informacin que introducimos
en el sistema, ya que estamos obligados a indicar las clases que son
disjuntas y las instancias que son distintas para evitar razonamientos
errneos. Como ejemplo supongamos que pongo una restriccin consistente
en que un humano slo puede tener un padre. Si indico que el padre de Juan
es Pedro y luego introduzco que el padre de Juan es ngel, en lugar de
indicar que existe una incongruencia en la informacin facilitada, concluir
que ngel es la misma persona que Pedro.
90
Captulo 3. Lgica y Web Semntica
Estas caractersticas nos permitirn utilizar las ontologas para mejorar las
aplicaciones Web que dispongamos, ya sea para generar directamente
portales sobre temticas determinadas (como por ejemplo OntoWeb
[WWW3], WordNet [WWW4] u Ontolingua [WWW5]), para describir
fuentes en internet (fuentes multimedia, u otras entidades, como objetos de
aprendizaje), para describir la capa lgica de un sistema de tres capas, para
disear cmo ha de ser la documentacin de algo (y poder hacer luego
consultas a esa documentacin por medio de algo ms que el ndice y buscar
las palabras), para su uso por agentes inteligentes (que veremos ms
adelante), o incluso para describir los propios servicios que un sistema
puede ofrecer (OWL-S).
93
Captulo 3. Lgica y Web Semntica
94
Captulo 3. Lgica y Web Semntica
3.3.3 KIF/SKIF
El Knowledge Interchange Format (KIF) [GEN98] es un lenguaje que se
desarroll con la idea de que fuera un lenguaje de intercambio de
conocimiento entre los distintos sistemas desarrollados para tratar el
conocimiento (bases de conocimiento y sistemas de inteligencia artificial).
SKIF [HAY01] se puede considerar como una versin de KIF ms adaptada
a su uso en la Web Semntica (permite el uso de URIs, UNICODE y una
sintaxis ms sencilla, no distinguiendo a priori entre las instancias, las clases
y las relaciones entre ellos (todo se agrupa como trminos). De este modo
podemos decir que algo que es una clase y tiene sus instancias puede ser a
su vez una instancia de otras clases. Por ejemplo, en la figura 3.6, vemos el
Modelo de Teora (MT) de SKIF. En este caso tenemos una ontologa de
enseanza, donde se tiene lugar el caso en el que el trmino Alumno puede
ser una instancia de la clase Miembro (de un curso), y a su vez una clase que
contenga a los alumnos Eva y Juan, y adems podemos indicar que los
alumnos y los profesores se conocen entre s, por medio de la propiedad
CONOCER.
95
Captulo 3. Lgica y Web Semntica
I I
I x I
E (T,A)
(A,T)
J
96
Captulo 3. Lgica y Web Semntica
3.3.4 RuleML
RuleML es un lenguaje basado en reglas, y en principio orientado a su uso
en la Web. Las reglas comprenden a la lgica clsica, de forma que puede
haber reglas en el lenguaje para definir ms profundamente las ontologas.
Las reglas se dividen en distintos tipos, pudiendo en algunos casos
transformar las reglas de un tipo en reglas de otros tipos.
3.3.5 OWL
3.3.5.1 Introduccin e Historia
El lenguaje ontolgico web (Web Ontology Language, OWL) es un
lenguaje basado en RDFS (lenguaje ya descrito en otro apartado), como
parte de lo que se entiende como Web Semntica.
Descriptiva (de hecho, fue un lenguaje que representaba SHIQ DL), a su vez
de lenguajes basados en Frames y estndares Web. Sin embargo, su
compatibilidad con RDFS no era completa [HOR03].
100
Captulo 3. Lgica y Web Semntica
En las tablas 3.10 y 3.11 vemos la notacin OWL para los constructores de
Clases (Tabla 3.10) y los axiomas (Tabla 3.11), siendo C, D una clase, xi una
instancia, P una propiedad cualquiera, PD una propiedad de tipo de datos, PC
un propiedad de objetos (relaciona un objeto con otro), como ya definimos
en la tabla 3.8.
101
Captulo 3. Lgica y Web Semntica
owl:hasValue P=x P x, x X X
Datatype
Tabla 3.10. Constructores de clases en OWL
Hemos de tener presente que OWL Full relaja las diferencias entre C
(clases), P (propiedades) y x (instancias), por lo que algunos
constructores comparten el mismo significado.
102
Captulo 3. Lgica y Web Semntica
owl:transitiveProperty P[P] P PC PC PC
owl:functionalProperty (4)(5) T 1P (5) PC P P
owl:inverseFunctionalProperty T 1P- PC PC PC
(4)
owl:SymmetricProperty P[P]- PC PC PC
Tabla 3.11. Axiomas en OWL
Podemos ver en la tabla 3.11 los distintos axiomas del lenguaje ontolgico,
junto con las marcas XML utilizadas para cada uno. Tambin se indican las
diferencias existentes entre los tres niveles de OWL. A modo aclaratorio
podemos especificar los siguiente:
103
Captulo 3. Lgica y Web Semntica
OWL-S pretende enriquecer los actuales servicios web (Web Services) con
informacin semntica. La infraestructura propuesta se puede ver en la
Figura 3.7.
DAML-S service
CAPA DE TRANSPORTE
DAML-S DAML-S
process model service profile
DAML-S grounding
XML
WDSL
SOAP
104
Captulo 3. Lgica y Web Semntica
Estos puntos son el inicio de una Ontologa, que podemos ver en el ejemplo
3.9:
105
Captulo 3. Lgica y Web Semntica
xmlns:rdfs="http://www.w3.org/2000/01/rdf-
schema#"
xmlns:owl="http://www.w3.org/2002/07/owl#"
xmlns:daml="http://www.daml.org/2001/03/daml+oil#"
xmlns="http://www.owl-
ontologies.com/unnamed.owl#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xml:base="http://www.owl-
ontologies.com/unnamed.owl">
<owl:Ontology rdf:about=""/>
<owl:Class rdf:ID="ServiceProfile"/>
<owl:Class rdf:ID="ServiceGrounding"/>
<owl:Class rdf:ID="Service"/>
<owl:Class rdf:ID="ServiceModel"/>
<owl:ObjectProperty rdf:ID="describedBy">
<rdfs:domain rdf:resource="#Service"/>
<rdfs:range rdf:resource="#ServiceModel"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:ID="supports">
<rdfs:domain rdf:resource="#Service"/>
<rdfs:range rdf:resource="#ServiceGrounding"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:ID="presents">
<rdfs:range rdf:resource="#ServiceProfile"/>
<rdfs:domain rdf:resource="#Service"/>
</owl:ObjectProperty>
</rdf:RDF>
106
Captulo 3. Lgica y Web Semntica
3.3.6 SWRL
Semantic Web Rule Language (SWRL [SWRL04]), es otro lenguaje
desarrollado a partir de OWL ampliado con definicin de reglas al estilo de
RuleML. Las ampliaciones ms importantes son:
Si actualmente las herramientas para OWL DL son muy limitadas, las pocas
herramientas para SWRL existentes se encuentran, como se indica en
[CRE05], an en un estado menos maduro y habiendo algunas variaciones
entre la sintctica y la sintaxis entre distintas versiones e implementaciones
107
Captulo 3. Lgica y Web Semntica
108
Captulo 4. Primeras interacciones: Evaluaciones
Captulo 4: Primeras
interacciones:
Evaluaciones
4.1 Introduccin
En los captulos anteriores se ha realizado un estudio del estado del arte en
los mbitos que abarca esta Tesis, relativos a teleeducacin y web
semntica, que incluyen a su vez el estado de la web actual, las ontologas
de teleeducacin, los conceptos de lgica descriptica y de racioncinio, y por
ltimo los lenguajes ontolgicos actuales. A partir de este punto y a lo largo
de los restantes captulos se empezarn a describir los desarrollos y
resultados de esta Tesis.
evaluaciones (IMS QTI) sern utilizados para una parte de la ontologa que
especificaremos en el captulo 6. En el captulo 5 se propondr una
arquitectura que permita las bsquedas semnticas en la web por parte de los
agentes inteligentes, as como el acceso a los objetos de aprendizaje. Por
tanto la arquitectura nos permitir explotar la ontologa desarrollada en esta
Tesis de una manera eficiente para la distribucin de contenidos educativos.
Por ltimo en el captulo 7 se realizar una prueba de concepto cuyos
resultados demuestren y validen el funcionamiento de distintas partes de la
arquitectura propuesta as como de la ontologa desarrollada en esta Tesis,
aportando adems resultados de eficiencia.
110
Captulo 4. Primeras interacciones: Evaluaciones
111
Captulo 4. Primeras interacciones: Evaluaciones
113
Captulo 4. Primeras interacciones: Evaluaciones
La solucin para este problema es, adems de las anteriores planteadas para
el caso de evitar fraudes, que no se enve ninguna informacin sobre el
proceso de clculo de los resultados de una evaluacin al ordenador del
cliente, o que se enve al computador del alumno un valor encriptado por
respuesta, que slo el servidor pueda decodificar y entender si es una
respuesta correcta o incorrecta[ROM06].
116
Captulo 4. Primeras interacciones: Evaluaciones
117
Captulo 4. Primeras interacciones: Evaluaciones
describir cmo han de comportarse las preguntas tras una contestacin.. Las
respuestas pueden tener un conjunto de variables de respuesta
(representadas en la clase responseVariable) que sern tratadas en el
procesamiento de la respuesta.
INTERACCIN
RESPONSES
PROCESAR
RESPUESTA
OUTCOMES
NO
FIN
119
Captulo 4. Primeras interacciones: Evaluaciones
120
Captulo 4. Primeras interacciones: Evaluaciones
121
Captulo 4. Primeras interacciones: Evaluaciones
122
Captulo 4. Primeras interacciones: Evaluaciones
</manifest>
Dentro del manifiesto, los elementos principales que contiene cada uno de
los recursos son (Fig. 4.4):
125
Captulo 4. Primeras interacciones: Evaluaciones
126
Captulo 4. Primeras interacciones: Evaluaciones
127
Captulo 4. Primeras interacciones: Evaluaciones
129
Captulo 4. Primeras interacciones: Evaluaciones
130
Captulo 4. Primeras interacciones: Evaluaciones
131
Captulo 4. Primeras interacciones: Evaluaciones
132
Captulo 4. Primeras interacciones: Evaluaciones
Suponer que cada vez que se hacen los exmenes el perfil de los
alumnos es similar y est distribuido de igual forma. Si no es as
deberamos mantener las estadsticas diferenciadas por perfil.
( PH + PL ) [Expr. 4.1]
PNCAL =
2
134
Captulo 4. Primeras interacciones: Evaluaciones
D = PH PL [Expr. 4.3]
Por tanto, vemos que TeML permite una adaptacin de la dificultad de las
preguntas en funcin de las contestaciones de los alumnos, y proponemos en
esta Tesis una modificacin del algoritmo de reclculo de la dificultad de
TeML, basndonos en el modelo EGA con un factor de memoria . Esta
modificacin del algoritmo de clculo de dificultad nos permite localizar
adems preguntas que han de ser revisadas, bien porque no permiten
135
Captulo 4. Primeras interacciones: Evaluaciones
136
Captulo 4. Primeras interacciones: Evaluaciones
138
Captulo 4. Primeras interacciones: Evaluaciones
139
Captulo 4. Primeras interacciones: Evaluaciones
140
Captulo 4. Primeras interacciones: Evaluaciones
141
Captulo 4. Primeras interacciones: Evaluaciones
Por tanto podemos ver claras similitudes con IMS QTI a nivel de la
preguntas, si bien TeML aade a la metainformacin datos relativos al tipo
de enunciado de la pregunta, por medio del tipo de pregunta. Sin embargo
consideramos que esta informacin se encuentra tambin en IMS QTI por
medio del listado de los ficheros que utiliza, mediante la marca <cp:file> y
por medio de IEEE LOM, donde se define la herramienta y versin
necesaria para poder visualizar correctamente el recurso.
4.5 Conclusiones
En este captulo hemos visto la importancia de las evaluaciones como
interacciones del estudiante en la teleformacin. Adems de enumerar las
ventajas y limitaciones de las evaluaciones, se han descrito dos
especificaciones de evaluaciones y su ontologa relacionada. Una de las
descritas es la especificacin de referencia para la interoperabilidad
actualmente y la otra es una especificacin realizada dentro del
Departamento de Comunicaciones de la Universidad Politcnica de
Valencia.
142
Captulo 4. Primeras interacciones: Evaluaciones
Como hemos podido ver, la ontologa TeML guarda gran similitud con la
ontologa utilizada en IMS QTI, si bien IMS QTI es una especificacin ms
completa en variedad de preguntas y respuestas y descripcin de reglas de
procesamiento de las preguntas. Tambin la definicin actual es posterior a
la definicin de TeML.
Es por esto que se realizar en esta Tesis una propuesta ontolgica que
intentar abarcar las dos ontologas estudiadas en este captulo, definindola
formalmente y realizando una representacin en OWL, que permitir que
agentes de la web semntica obtengan esa informacin y puedan realizar
razonamientos que faciliten la interoperabilidad de los recursos educativos,
en este caso los tests o evaluaciones.
143
Captulo 4. Primeras interacciones: Evaluaciones
144
Captulo 5. Arquitectura
Captulo 5: Arquitectura
5.1 Introduccin
A lo largo de este captulo elaboraremos una arquitectura que permita el
funcionamiento de la ontologa para teleeducacin que propondremos en el
siguiente captulo. De este modo la arquitectura permitir explotar la
informacin semntica propuesta en la Tesis, y por tanto se generar un
sistema completo de bsqueda y obtencin de objetos educativos.
Entendemos como arquitectura [IEEE00] a la organizacin bsica de un
sistema, compuesto por sus componentes, las relaciones entre ellos y las
relaciones entre los componentes y el entorno, adems de los principios que
rigen su diseo y evolucin.
148
Captulo 5. Arquitectura
149
Cliente/Servidor Cluster Federados Grid P2P
150
Propietarios 1 por cliente 1 <103 <100 1<x<108
1 del servidor
nico Servidor
Tipo de Servidor altas Optimizados y Gran capacidad y Gran capacidad y Mayora PCs
elementos prestaciones homogneos heterogneos heterogneos particulares (edge
of the web)
Localizacin nico servidor, nica localizacin Distribuidos con Distribuidos con Distribuidos y
Elementos clientes distribuidos localizacin localizacin localizacin
determinada determinada variable
151
Captulo 5. Arquitectura
Por tanto podemos entender como una red P2P a una red en la que no
existen clientes y servidores prefijados, sino un nmero de nodos iguales
que pueden funcionar a la vez como clientes y servidores para otros nodos
de la red.
CLIENTE
CLIENTE Y SERVIDOR
CLIENTE Y SERVIDOR
CLIENTE
CLIENTE Y SERVIDOR
CLIENTE
CLIENTE Y SERVIDOR
152
Captulo 5. Arquitectura
153
Captulo 5. Arquitectura
Como hemos visto las generaciones han ido avanzado, de modo que al
principio las funciones que podan realizar los nodos annimos eran la de
descarga de un contenido a otro nodo, y poco a poco han ido distribuyendo
tambin entre todos los nodos la funcin de indexacin y localizacin de
155
Captulo 5. Arquitectura
156
Captulo 5. Arquitectura
158
Captulo 5. Arquitectura
Definimos una tabla dinmica distribuida (DHT) como una Hashtable que
trabaja con pares [clave,valor], encontrndose distribuida en la red y
permitiendo bsquedas y almacenajes en la misma, aunque el nmero de
nodos crezca o disminuya dinmicamente. Para realizar esta tarea las DHT
se fundamentan en unos algoritmos que veremos a continuacin.
160
Captulo 5. Arquitectura
Normalmente las claves de las DHTs suelen ser una transformacin por
medio de una funcin hash del recurso que queremos buscar, y el valor de la
tabla indica la direccin URL del nodo que puede ofrecerlo. En los casos de
redes de distribucin de ficheros, la clave suele ser la funcin hash del
fichero que buscamos y el valor la direccin URL de donde podemos
descargarnos el fichero en el que estamos interesados.
Como podemos ver en la figura 5.3, las DHTs nos permiten demandar los
siguientes servicios:
161
Captulo 5. Arquitectura
NODO
SA
R
A
BUSCAR (K)
INSERTAR
LI
TR
R
EN
(K,V)
DHT
INTERNET
Figura 5.3. Servicios ofrecidos por las DHT
( a, b) = a b [Ec 5.1]
Otra diferencia destacable entre esta red y una red DHT normal, a parte de
que indexa contenidos semnticos y los marca como TBox y/o ABox, es que
son los servidores de contenidos los que publican (tcnica push) en la DHT
Semntica su informacin. Para realizar esta publicacin, los servidores de
contenidos han de basarse en una arquitectura que les permita que cuando
tengan nueva informacin semntica que publicar, la analicen y den de alta
como claves de la DHT Semntica todas las URIs utilizadas como clases,
propiedades e instancias del documento OWL.
167
Captulo 5. Arquitectura
168
Captulo 5. Arquitectura
DHT SEMANTICA
AGENTE V = OWL URL
INSERTAR (Kn,V,ABox)
INSERTAR (K1,V,TBox)
OWL
OWL URL
PUBLICADOR
DISTRIBUIDOR DE CONTENIDOS
SEMNTICOS
GESTOR DE PUBLICACIN DHT
OWL
ALMACEN INFORMACION
SEMNTICA
.OWL
170
Captulo 5. Arquitectura
Las fases que definimos son las siguientes, que describiremos a fondo en los
siguientes subapartados:
Como podemos apreciar, estas fases engloban todas las acciones necesarias
para poder localizar y descargar los objetos educativos que necesite un
usuario para poder componer una experiencia educativa que pueda ser
utilizada por l mismo o por un conjunto de alumnos.
171
Captulo 5. Arquitectura
Al final de esta fase el usuario decide el tipo de bsqueda que desea realizar,
y ordena al agente que comience la bsqueda en la web semntica, es decir,
basndose en su TBox ampliar la ABox con instancias e ir realizando
inferencias hasta encontrar elementos que cumplan los requisitos de la
bsqueda planteada.
173
Captulo 5. Arquitectura
En este segundo caso el agente que pasa a la descarga, debe estar preparado
para ejecutar el protocolo BitTorrent si est obtenido en obtener la
informacin.
174
Captulo 5. Arquitectura
175
Captulo 5. Arquitectura
Este nuevo nodo virtual para la DHT entrar con un valor de hash
tambin virtual, de forma que se site topogrficamente al lado del
nodo saturado y pueda as descargarlo. Es muy poco probable que
aparezca un nodo con un valor de hash de su direccin igual al de
nuestro nodo virtual, pero en ese caso el servidor virtual se dara de
baja automticamente a s mismo.
178
Captulo 5. Arquitectura
179
Captulo 5. Arquitectura
este caso, podemos ver como el nodo 1 contiene los paquetes [A,B,C], y en
este instante est sirviendo el paquete A a los nodos 2 y 4 y el paquete C a
los nodos 2 y 3. A su vez en este instante est recibiendo el paquete D del
servidor de contenidos y el paquete E del nodo 2. Los nodos 2 y 3 estn
tambin ofreciendo los paquetes que contienen y recibiendo los paquetes
que le faltan en este momento. El nodo 4 es un nodo recin incorporado que
no tiene an paquetes para ofrecer y est recibiendo el primer paquete. En el
ejemplo queda patente que los paquetes no tienen por qu servirse y
recibirse en orden y que es beneficioso que varios nodos reciban paquetes
complementarios para luego poder compartirlos entre ellos y descargar al
nodo servidor. Como vemos la figura 5.6, al tener cada nodo paquetes
distintos los pueden compartir con mayor facilidad. Menos el nodo 4, que
acaba de conectarse, todos los otros nodos estn ya recibiendo todos los
paquetes que les faltan, mientras ningn nodo incluyendo al servidor- est
sirviendo ms de 4 paquetes.
Autorizacin, de forma que slo los nodos que tienen en cada caso
permitida una funcin la realicen. Para resolver esta situacin nos
basamos en el escaso inters de nodos ajenos a ceder sus recursos
para estas redes, as como en el sistema de proteccin contra boicots
del punto siguiente.
5.6 Conclusiones
En este captulo se ha presentado una arquitectura que nos permite que los
agentes inteligentes puedan buscar la informacin semntica necesaria para
encontrar fuentes de objetos educativos, as como descargarlos de los
servidores de contenidos correspondientes.
Sin embargo hay una parte importante para que funcione correctamente una
red P2P: el inters de los nodos en participar de forma interesada o
desinteresada en la red. Es por esto que en caso de ser necesario se solicitan
recursos a los servidores de contenidos, ya que son ellos los primeros
183
Captulo 5. Arquitectura
184
Captulo 6. Especificacin de Ontologa para Interoperabilidad
Captulo 6: Especificacin de
Ontologa para
Interoperabilidad
6.1 Introduccin
A lo largo de este captulo se definir en profundidad y de forma rigurosa la
ontologa que permite la interoperabilidad de las experiencias educativas en
mejores condiciones que mediante el uso de las ontologas actualmente
existentes.
186
Captulo 6. Especificacin de Ontologa para Interoperabilidad
187
Captulo 6. Especificacin de Ontologa para Interoperabilidad
Como se indica en la figura 6.1, las tres ontologas que forman la ontologa
general se relacionan entre s, utilizando la ontologa de contenidos estticos
como puente para conectar las interacciones alumnos-sistema y las
188
Captulo 6. Especificacin de Ontologa para Interoperabilidad
Por estas razones se decide en esta Tesis generar una ontologa nueva para
los contenidos estticos basada en estndares e implementaciones de
referencia globalmente reconocidos. En el desarrollo que especificaremos
nos basaremos en el modelo de referencia SCORM. Para definir la ontologa
basada en SCORM podramos habernos basado en la versin XML de
SCORM tal como aparece en el modelo de referencia y transformar los
objetos de XML en clases de OWL, de forma que nuestra ontologa fuera
una simple enumeracin de clases y subclases sin restricciones definidas
explcitamente. Sin embargo, en esta Tesis se opta por ampliar ms la
ontologa por medio de la introduccin de las restricciones principales del
modelo de referencia en la descripcin OWL. Cuanto ms relaciones entre
instancias y axiomas traslademos a nuestro lenguaje ontolgico, ms til va
a ser ya que son estas restricciones las que van a entender los agentes
190
Captulo 6. Especificacin de Ontologa para Interoperabilidad
Como resumen de los descrito hasta este punto, hemos abstrado en cuatro
clases principales y cuatro subclases la ontologa de contenidos estticos.
Las denominaciones y definiciones se han realizado para que sean lo ms
similares al modelo de referencia SCORM, para permitir mayor
compatibilidad y facilitar la extraccin de la ontologa OWL de paquetes
SCORM ya existentes.
ACTIVIDADES A RESULTADOS A
REALIZAR OBTENER
Competence
LearningActivity
LA1
AssessmentActivity
AA2
LearningObjective
LO3
Como se describe en la figura 6.2, tenemos por una parte unas actividades
que sirven para evaluar al alumno, que en caso de ser resueltas de forma
satisfactoria por parte del alumno evidenciarn que el alumno ha alcanzado
un objetivo de aprendizaje determinado. Si el alumno supera un conjunto
definido de actividades de evaluacin, que a su vez evidencia una obtencin
de un conjunto de objetivos de aprendizaje, podremos concluir que el
alumno ha obtenido una competencia determinada.
194
Captulo 6. Especificacin de Ontologa para Interoperabilidad
195
Captulo 6. Especificacin de Ontologa para Interoperabilidad
196
Captulo 6. Especificacin de Ontologa para Interoperabilidad
Competence Competence
C1 C2
LearningObjective
LO2
LearningObjective
LO1
LearningObjective
LO3
Comments_from_learner
ALUMNO 1 cv
er
l e arn
o m_ LMS
c
_fr
e nts
mm
Co
ALUMNO 2
Comments_from_lms
Fig. 6.4. Esquema de comments_from_learner y comments_from_lms
198
Captulo 6. Especificacin de Ontologa para Interoperabilidad
comment
COMENTARIO 1
datestamp
COMMENTS_FROM_
LEARNER
location
COMENTARIO n
(n<=250)
199
Captulo 6. Especificacin de Ontologa para Interoperabilidad
200
Captulo 6. Especificacin de Ontologa para Interoperabilidad
201
Captulo 6. Especificacin de Ontologa para Interoperabilidad
En nuestro caso haremos una clase TreeStructure que sea subclase de otra
ms genrica llamada Structure. Despus definiremos una clase TreeItem
que abstraer todo objeto de una estructura en rbol. Las clases
TreeStructure y TreeItem se relacionarn por medio de la propiedad
hasFirstTreeItem (propiedad funcional) y su inversa isFirstTreeItemOf
202
Captulo 6. Especificacin de Ontologa para Interoperabilidad
En la figura 6.7 podemos observar que existe slo un rbol principal. Por
otro lado, una estructura de rbol puede tener tantos rboles secundarios
como se desee.
203
Captulo 6. Especificacin de Ontologa para Interoperabilidad
Otra de las razones por las que se introduce el elemento RootItem es para
intentar evitar los bucles de referencias. Puesto que un objeto TreeItem
puede tener como mucho un padre, si ya tiene padre no puede tener otro
distinto, y si existe en el rbol un elemento RootItem (que no tiene ningn
padre), ser imposible que exista una referencia circular (ver Fig. 6.8).
204
Captulo 6. Especificacin de Ontologa para Interoperabilidad
<swrl:Variable rdf:ID="x"/>
<swrl:Variable rdf:ID="z"/>
<swrl:Variable rdf:ID="y"/>
<swrl:Imp rdf:ID="ReglaSibling">
<swrl:body>
<swrl:AtomList>
<rdf:first>
<swrl:IndividualPropertyAtom>
<swrl:argument1 rdf:resource="#x"/>
<swrl:propertyPredicate
rdf:resource="#isChildOf"/>
<swrl:argument2 rdf:resource="#z"/>
</swrl:IndividualPropertyAtom>
</rdf:first>
<rdf:rest>
<swrl:AtomList>
<rdf:rest>
<swrl:AtomList>
<rdf:first>
<swrl:DifferentIndividualsAtom>
<swrl:argument2 rdf:resource="#y"/>
<swrl:argument1 rdf:resource="#x"/>
</swrl:DifferentIndividualsAtom>
</rdf:first>
<rdf:rest
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-
206
Captulo 6. Especificacin de Ontologa para Interoperabilidad
ns#nil"/>
</swrl:AtomList>
</rdf:rest>
<rdf:first>
<swrl:IndividualPropertyAtom>
<swrl:propertyPredicate
rdf:resource="#isChildOf"/>
<swrl:argument1 rdf:resource="#y"/>
<swrl:argument2 rdf:resource="#z"/>
</swrl:IndividualPropertyAtom>
</rdf:first>
</swrl:AtomList>
</rdf:rest>
</swrl:AtomList>
</swrl:body>
<swrl:head>
<swrl:AtomList>
<rdf:first>
<swrl:IndividualPropertyAtom>
<swrl:argument1 rdf:resource="#x"/>
<swrl:argument2 rdf:resource="#y"/>
<swrl:propertyPredicate
rdf:resource="#hasSibling"/>
</swrl:IndividualPropertyAtom>
</rdf:first>
<rdf:rest rdf:resource="http://www.w3.org/1999/02/22-
rdf-syntax-ns#nil"/>
</swrl:AtomList>
</swrl:head>
</swrl:Imp>
Ejemplo 6.1. Ejemplo de regla en SWRL
Como podemos destacar de las partes resaltadas del texto del ejemplo 6.1,
SWRL s que permite realizar aserciones de reglas (conocidas como tambin
como implicaciones). En este caso separa entre un cuerpo, indicado por la
marca <body> y una cabecera, indicado por la marca <head>. El cuerpo
contiene los condicionantes de la regla y la cabecera la consecuencia de
dicha regla.
Sin embargo en esta Tesis no se contemplarn las reglas, ya que estn fuera
del alcance de OWL DL, lenguaje en el que expresaremos nuestra ontologa.
De todas formas SWRL permite utilizar ontologas OWL, por lo que se
podra en un futuro ampliar esta ontologa con reglas y producir una
ontologa en lenguaje SWRL. Para los objetivos de esta Tesis no se
considera necesario.
207
Captulo 6. Especificacin de Ontologa para Interoperabilidad
En la figura 6.10 podemos ver las propiedades que relacionan entre s a las
instancia de TreeItem y de la clase TreeStructure. Se basan en una relacin
de padre/hijo entre objetos TreeItem y una propiedad isLeafItem que permite
marcar a los elementos terminales. Por otro lado tenemos la relacin de una
estructura de tipo rbol con su primer elemento del rbol, por medio de la
propiedad hasFirstTreeItem y isFirstTreeITemOf. Adems vemos en la
figura la cardinalidad de las distintas relaciones, indicando con * cuando
dicha cardinalidad no est limitada. Tambin indicamos dentro de las
distintas clases las propiedades de tipos de datos que relacionan a cada
instancia con un dato numrico, booleano, de texto o similares.
208
Captulo 6. Especificacin de Ontologa para Interoperabilidad
SCORMLeafLearningActivity
SCORMAsset SCORMSCO
SCORMAsset SCORMSCO
210
Captulo 6. Especificacin de Ontologa para Interoperabilidad
211
Captulo 6. Especificacin de Ontologa para Interoperabilidad
212
Captulo 6. Especificacin de Ontologa para Interoperabilidad
213
Captulo 6. Especificacin de Ontologa para Interoperabilidad
hasLearningObjective
AssessmentActivity (*,*)
completionThreshold (xsd :float )
LearningObjective
hasAssessmentItem
(1,*)
AssessmentItem
hasBodyURI (xsd:AnyURI )
hasFeedback
(1,1)
hasCorrectResponse
(1,*)
Feedback
hasFeedbackURI (xsd:AnyURI )
Response
hasOutcomeValue (xsd :float )
215
Captulo 6. Especificacin de Ontologa para Interoperabilidad
216
Captulo 6. Especificacin de Ontologa para Interoperabilidad
[Expr. 6.14]
TrueFalseAI ( AssessmentItem ) (hasCorrect Re sponse.TrueFalse Re sponse )
TrueFalseAI FillInAI MatchingAI K MultipleChoiceAI
[Expr. 6.15]
TrueFalse Re sponse Re sponse (TF Re sponseValue.xsd : boolean )
TrueFalse Re sponse TF Re sponseValue = 1
[Expr. 6.16]
FillInAI ( AssessmentItem ) (hasCorrect Re sponse.FillIn Re sponse )
FillInAI MatchingAI LongFillInAI K TrueFalseAI
218
Captulo 6. Especificacin de Ontologa para Interoperabilidad
[Expr. 6.17]
SequenceAI ( AssessmentItem ) (hasCorrect Re sponse.Sequence Re sponse )
SequenceAI FillInAI MatchingAI K TrueFalseAI
219
Captulo 6. Especificacin de Ontologa para Interoperabilidad
220
Captulo 6. Especificacin de Ontologa para Interoperabilidad
[Expr. 6.18]
completionStatus AssessmentItemi .Student Re sponse.hasOutcomeValue
i
completionStatus AssessmentActivity.completionThreshold
que se utiliza una lista cerrada es para poder definir de forma clara
conjuntos completos de instancias de la clase LearningObjective que
consiguen hacen que se considere como probada esa competencia abstrada
en la instancia de la clase Competency. De esta forma se podr asegurar que
se han superado todas los objetivos de aprendizaje necesarios para
evidenciar la adquisicin de la competencia. Habr competencias que
necesiten objetivos de aprendizaje que no se puedan obtener por medio de
exmenes, como puede ser un nmero de aos de experiencia en un sector.
En la Fig. 6.16 podemos las relaciones entre los distintos objetos y sus
propiedades bsicas.
LearningObjectives
rdf:first contributesToCompetency
(*,1) (*,*)
AssessmentActivity
hasLearningObjective
(*,*) LearningObjective
En la figura 6.16 apreciamos que existe una clase que es una especializacin
de la lista cerrada rdf:List, que se denomina LearningObjectives. Esta lista
contiene un conjunto cerrado de elementos de la clase LearningObjective.
Por otro lado, tenemos la clase Competence que puede estar relacionado con
varias listas de objetivos por medio de la propiedad hasLearningObjectives.
Adems, los objetos de la clase LearningObjective se relacionan con los
objetos de la clase Competency por medio de la propiedad
contributesToCompetency. Aunque en un principio podemos considerar que
existe redundancia al relacionar los objetos LearningObjective con los
objetos Competency de forma directa e indirecta por medio de la clase
LearningObjectives, dicha relacin es necesaria ya que en nuestra lgica
descriptiva representada en OWL DL no se pueden realizar aserciones de
reglas, como s permite SWRL.
223
Captulo 6. Especificacin de Ontologa para Interoperabilidad
224
Captulo 6. Especificacin de Ontologa para Interoperabilidad
226
Captulo 6. Especificacin de Ontologa para Interoperabilidad
227
Captulo 6. Especificacin de Ontologa para Interoperabilidad
La clase Document ser una clase simple con propiedades de tipo de datos
sobre su nombre (propiedad nameOfDocument), URI (propiedad
URIofDocument) y mltiples posibles URIs alternativas (por medio de la
propiedad alternativeURI).
La clase Rol es una clase definida por sus elementos, es decir, consta de una
enumeracin de elementos. Se ha definido en ella los posibles roles que
pueden participar en el foro:
229
Captulo 6. Especificacin de Ontologa para Interoperabilidad
De esta forma las tres subontologas se unen en una nica que define los tres
bloques definidos al principio del captulo (ver Fig 6.1).Una de las ventajas
de unir las ontologas radica en que nos permitir, por ejemplo, que cuando
hagamos bsquedas en repositorios, podamos localizar la actividad de
aprendizaje que tiene un foro sobre el que se trata un tema que me interesa,
o que cuando importemos un curso importemos tambin los foros de una
explotacin anterior, lo que nos permitir aumentar la base de
conocimientos del curso.
231
Captulo 6. Especificacin de Ontologa para Interoperabilidad
232
Captulo 7. Especificacin de Ontologa para Interoperabilidad
Captulo 7: Validacin de la
Ontologa OWL DL
y Resultados
7.1 Introduccin
Como se explica en los primeros captulos de esta Tesis, actualmente la
informacin publicada en la web no contiene informacin semntica para
que pueda ser tratata por agentes inteligentes, y por tanto las bsquedas que
se pueden realizar en esta informacin publicada se basa en bsqueda de
palabras clave. Actualmente, con el desarrollo de la web semntica, van
apareciendo algunas ontologas que pretenden subsanar la carencia de
informacin entendible por los futuros agentes.
234
Captulo 7. Especificacin de Ontologa para Interoperabilidad
235
Captulo 7. Especificacin de Ontologa para Interoperabilidad
236
Captulo 7. Especificacin de Ontologa para Interoperabilidad
237
Captulo 7. Especificacin de Ontologa para Interoperabilidad
238
Captulo 7. Especificacin de Ontologa para Interoperabilidad
Por ejemplo, en la figura 7.3 podemos apreciar que la clase Answer es una
especializacin de la clase Comment. La navegacin es sencilla, ya que la
estructura en rbol nos sirve de men para buscar y mostrar a la derecha la
clase, objeto o instancia que deseemos tratar.
239
Captulo 7. Especificacin de Ontologa para Interoperabilidad
240
Captulo 7. Especificacin de Ontologa para Interoperabilidad
241
Captulo 7. Especificacin de Ontologa para Interoperabilidad
243
Captulo 7. Especificacin de Ontologa para Interoperabilidad
GENERACIN
NO
DE CLASES
NO
DEFINICIN DE
CONSISTENTE?
PROPIEDADES
SI
GENERACIN
DE AXIOMAS
CUMPLE
EXPECTATIVAS?
CHEQUEO DE SI
CONSISTENCIA
FIN
245
Captulo 7. Especificacin de Ontologa para Interoperabilidad
Este proceso iterativo se ha aplicado para las siguientes ontologas, que son
en su conjunto la ontologa global de e-learning:
246
Captulo 7. Especificacin de Ontologa para Interoperabilidad
Aunque lo ms recomendable es que esa URI fuera una URL que nos
permitiera obtener el archivo .owl (es decir, que con un navegador
pudiramos acceder al archivo owl con esa URL), no es necesario, ya que
slo indica un identificador nico para la ontologa.
247
Captulo 7. Especificacin de Ontologa para Interoperabilidad
DIG/HTTP RAZONADOR 1
INTERFACE
INTERFACE
(1) CONSISTENTE?
HTTP
HERRAMIENTA
DIG
DE AUTOR (2) CLASIFICAR
DIG/HTTP RAZONADOR 2
248
Captulo 7. Especificacin de Ontologa para Interoperabilidad
Como ltimo paso, las ontologas finales OWL se chequean a su vez por
medio de la versin web de Pellet [WWW54], para corroborar el nivel de
OWL utilizado (Lite, DL o Full). En la Fig 7.11 vemos los resultados de
chequear nuestra TBox. Se ratifica que cumplen la sintaxis OWL DL. La
razn por la que se chequea la ontologa como archivo .owl es la indicacin
de algunos autores [RUT05] que constatan que el interfaz DIG no permite
indicar restricciones cardinales sobre propiedades de tipo de datos. Esto
puede hacer que, utilizando DIG, se den ontologas como consistentes
cuando puede que haya alguna inconsistencia. De todas formas nuestra
ontologa no utiliza este tipo de restricciones.
249
Captulo 7. Especificacin de Ontologa para Interoperabilidad
250
Captulo 7. Especificacin de Ontologa para Interoperabilidad
DHT SEMANTICA
AGENTE V = OWL URL
INSERTAR (Kn,V,ABox)
INSERTAR (K1,V,TBox)
OWL
OWL URL
PUBLICADOR
DISTRIBUIDOR DE CONTENIDOS
SEMNTICOS
GESTOR DE PUBLICACIN DHT
OWL
ALMACEN INFORMACION
SEMNTICA
.OWL
251
Captulo 7. Especificacin de Ontologa para Interoperabilidad
El curso en cuestin est diseado para ser un curso que le cueste al alumno
unas 45 horas de dedicacin, y cuenta con talleres que han de entregar los
alumnos de forma individual, no en grupo. Esto debera forzar a los alumnos
a interactuar ms, al menos con el tutor del curso sobre los trabajos a
realizar.
CAPA DE PRESENTACIN
JSP/JSF
INSTANCIACIN
INVOCACIN MTODOS
JDBC
CAPA DE ALMACENAMIENTO
MS SQL SERVER
253
Captulo 7. Especificacin de Ontologa para Interoperabilidad
La conexin con los foros del centro se har a travs de la capa de lgica de
negocio, por medio de clases ya programadas en el centro que son:
254
Captulo 7. Especificacin de Ontologa para Interoperabilidad
7.3.3 Jena
Jena [WWW57] es una iniciativa de software abierto que cuenta con el
apoyo de HP Labs Semantic Web Program. Su primera versin Jena 1
(2001) se centraba en grafos y su transformacin a XML/RDF y en su
siguiente versin (Jena 2) aade por encima una capa para tratamiento de
ontologas (2003) y su transformacin a OWL. Jena permite adems
conectarse a Razonadores por medio de DIG [DICK04]. Por tanto Jena se
puede considerar como una infraestructura para trabajar con la web
semntica programando con Java.
Ambas APIs estn desarrolladas en Java (lo que permite una integracin
directa con los sistemas del CFP), son opensource y comparten muchas
caractersticas comunes. Pese a utilizar Protg como herramienta de autor
para el manejo de ontologas de forma visual, se decide el uso de Jena
porque:
255
Captulo 7. Especificacin de Ontologa para Interoperabilidad
Por tanto ser mucho ms ptimo utilizar directamente Jena que otra API
que se construye sobre Jena, ya que lo nico que realizaremos en esta fase
es la transformacin a OWL siguiendo la ontologa TBox comentada en
apartados anteriores.
Jena proporciona una API que nos permite leer y escribir en los formatos
XML/RDF [WIL03], N3 y N-Triples (formatos para grafos abreviados).
Adems dispone de un motor para poder buscar dentro de los documentos
RDF por medio de RDQL. Por ltimo ofrece tambin mecanismos para leer
y escribir en formato OWL. Esta ltima propiedad es la nica que
utilizaremos de Jena.
Jena trabaja con la clase Model, que es por donde podemos acceder a la
informacin del documento RDF. En el caso de ampliacin de RDF a
ontologas propiamente dichas (con clases, instancias, propiedades, etc), la
clase Model se especializa dando lugar a la clase OntModel, es decir, la
ontologa con la que est trabajando el sistema.
256
Captulo 7. Especificacin de Ontologa para Interoperabilidad
257
Captulo 7. Especificacin de Ontologa para Interoperabilidad
258
Captulo 7. Especificacin de Ontologa para Interoperabilidad
OWL
CAPA DE PRESENTACIN TBox
JSP/JSF
CAPA DE ALMACENAMIENTO
MS SQL SERVER JENA 2
DISCO
Fig. 7.15 esquema de la importacin de foros a OWL
259
Captulo 7. Especificacin de Ontologa para Interoperabilidad
[Expr. 7.4]
OntModel aBox =
ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM,null);
//generamos el namespace
aBox.setNsPrefix(tBoxPrefix,tBoxNs);
String
aBoxURI=rootURI+"community_"+this.getIdComunidad()+".owl";
aBoxNs=aBoxURI+"#";
//creamos la ontologia nueva
Ontology ontABox=aBox.createOntology(aBoxURI);
2. Importamos la TBox.
[Expr. 7.6]
ontABox.addImport(aBox.createResource(tBoxURI));
//marcamos la ontologa importada para no importarla ms
veces
aBox.addLoadedImport(tBoxURI);
[Expr. 7.7]
260
Captulo 7. Especificacin de Ontologa para Interoperabilidad
[Expr. 7.8]
261
Captulo 7. Especificacin de Ontologa para Interoperabilidad
=aBox.createIndividual(aBoxNs+FORUMTHREAD+"ID_"+cfm.getId(),r
es);
//le colocamos el Forum (indIn) al que pertenece
Property prop=aBox.createProperty(tBoxNs+ISFORUMTHREADOF);
ind.addProperty(prop,indIn);
//de forma redundante, aceleramos busquedas poniendo
propiedad inversa
prop=aBox.createProperty(tBoxNs+HASFORUMTHREAD);
indIn.addProperty(prop,ind);
[Expr. 7.8]
//mtodo que genera el Comment y le coloca sus propiedades
//como comentario
ind=insertaMensaje(cfm);
//lo relacionano con su ForumThread (indIn)
prop=aBox.createProperty(tBoxNs+ISFIRSTITEMOF);
ind.addProperty(prop,indIn);
//coloco la propiedad inversa para acelerar busquedas
prop=aBox.createProperty(tBoxNs+HASFIRSTTREEITEM);
indIn.addProperty(prop,ind);
//metodo recurso para meter sus hijos y colocar las
//propiedades como TreeItem
insertaHijos(cfm,ind,profundidad);
262
Captulo 7. Especificacin de Ontologa para Interoperabilidad
[Expr. 7.9]
...
//pongo la fecha de creacion ej 2006-03-17T00:00:00
prop=aBox.createProperty(tBoxNs+DATEOFCREATION);
Calendar cal=Calendar.getInstance();
cal.setTime(cfm.getFechaCreacion());
lit=aBox.createTypedLiteral(cal);
Statement stment= aBox.createStatement(ind,prop,lit);
aBox.add(stment);
...
//pongo el tipo de autor. Por defecto alumno (learner)
//aado los roles
OntClass oc=aBox.createClass(tBoxNs+ROLE);
Individual
rolLearner=aBox.createIndividual(tBoxNs+LEARNERROLE,oc);
Individual
rolTutor=aBox.createIndividual(tBoxNs+TUTORROLE,oc);
Individual rolFacilitator
=aBox.createIndividual(tBoxNs+FACILITATORROLE,oc);
prop=aBox.createProperty(tBoxNs+AUTHORROLE);
if (//Tiene Rol de tutor de la comunidad){
ind.addProperty(prop,rolTutor);
}else{
if (//Tiene Rol de facilitador){
ind.addProperty(prop,rolFacilitator);
}else{
//supongo que en otro caso es alumno
ind.addProperty(prop,rolLearner);
}
}
...
[Expr. 7.10]
...
if (//el mensaje tiene hijos){
for (//recorremos todos los hijos){
263
Captulo 7. Especificacin de Ontologa para Interoperabilidad
Individual ind=insertaMensaje(cfms[k]);
//le coloco su padre
prop=aBox.createProperty(tBoxNs+ISCHILDOF);
ind.addProperty(prop,indPadre);
//al padre le coloco su hijo. Redundante pero acelera
queries
prop=aBox.createProperty(tBoxNs+HASCHILD);
indPadre.addProperty(prop,ind);
//parte de recursividad. Insertamos sus hijos
insertaHijos(cfms[k],ind,--profundidadRestante);
}
}else{
//no tiene hijos, es un terminal del arbol LeafItem
Literal verdadero
=aBox.createTypedLiteral("true",XSDDatatype.XSDboolean);
prop=aBox.createDatatypeProperty(tBoxNs+ISLEAFITEM);
Statement
stm=aBox.createStatement(indPadre,prop,verdadero);
aBox.add(stm);
}
...
[Expr. 7.11]
File f=//definicin del fichero donde insertaremos el
//documento OWL
FileOutputStream os=new FileOutputStream(f);
RDFWriter writer=aBox.getWriter("RDF/XML-ABBREV");
writer.setProperty("xmlbase",aBoxURI);
writer.write(aBox,os,aBoxNs);
264
Captulo 7. Especificacin de Ontologa para Interoperabilidad
100 Mb
JDBC
En el apartado siguiente ser vern algunos resultados del proceso que hemos
concluido, como tiempos en funcin del tamao y profundidad del foro, y la
ocupacin de disco de cada ontologa de un curso.
265
Captulo 7. Especificacin de Ontologa para Interoperabilidad
Los datos comparativos para cada una de las experiencias educativas de las
que se ha extrado informacin se muestran en la tabla 7.2.
En la tabla 7.2 se muestra los valores de resultado para cada una de las 31
experiencias educativas con las que se ha tratado. Como cada experiencia se
ha importado 8 veces, los valores temporales son la media de las 8
importaciones, para evitar errores puntuales.
267
Captulo 7. Especificacin de Ontologa para Interoperabilidad
Los valores obtenidos de inicializacin para las ocho importaciones nos dan
un valor medio de unos 8,5 segundos y con una desviacin tpica de medio
segundo, como comprobamos en la figura 7.17. Si consideramos que la
desviacin tpica calculada es la real, obtenemos que la media de tiempos de
inicializacin se encuentra entre 8,12 y 8,81 segundos con un 95% de
probabilidad. Comparando este valor temporal con los tiempos necesarios
para la extraccin de cada comunidad, vemos que los valores de los tiempos
de inicializacin son un orden de magnitud superior a los valores de los
tiempos de extraccin de una comunidad.
268
Captulo 7. Especificacin de Ontologa para Interoperabilidad
269
Captulo 7. Especificacin de Ontologa para Interoperabilidad
271
Captulo 7. Especificacin de Ontologa para Interoperabilidad
DHT SEMANTICA
AGENTE V = OWL URL
INSERTAR (Kn,V,ABox)
INSERTAR (K1,V,TBox)
OWL
OWL URL
PUBLICADOR
DISTRIBUIDOR DE CONTENIDOS
SEMNTICOS
GESTOR DE PUBLICACIN DHT
OWL
ALMACEN INFORMACION
SEMNTICA
.OWL
273
Captulo 7. Especificacin de Ontologa para Interoperabilidad
Racer 1.9 soporta OWL DL excepto para los nominales (clases definidas por
una enumeracin de sus miembros, que implementa como definiciones
parciales) y para tipos de datos no estndar (fuera de xsd:X). Al contrario
que las primeras versiones, por defecto no asume UNA (Unique Name
Assumption), para ser compatible con OWL. Se basa en el algoritmo
Tableaux con optimizaciones y cacheos de inferencias obtenidas.
sobre HTTP, por lo que tendremos una nica instancia de Protg (a modo
de interfaz de usuario) que ir atacando a los tres razonadores (cada uno
trabajando sobre un puerto) y realizndoles varias pruebas de rendimiento,
midiendo los tiempos de respuesta como variable de rendimiento.
Clasificacin de nuestra TBox. Esto revisa las clases una por una
para ver si existe algn tipo de herencia implcita en la declaracin,
de forma que podamos saber todas las clases de las que es
especializacin la clase inicial.
[Expr. 7.12]
Descendientes _ de _ 1129 TreeComment
Descendientes _ de _ 1129 isDescendentOf TreeCommentID _ 1129
277
Captulo 7. Especificacin de Ontologa para Interoperabilidad
279
Captulo 7. Especificacin de Ontologa para Interoperabilidad
Esto nos hace pasar a la segunda parte de las pruebas, donde nos interesa
medir los valores de los tres razonadores de la forma ms aleatoria posible y
buscando que el razonador resetee su memoria entre experimento y
experimento, para simular el rendimiento de nuestros agentes inteligentes
cada vez que hay una ontologa nueva o se aaden conocimientos a la
misma.
280
Captulo 7. Especificacin de Ontologa para Interoperabilidad
281
Captulo 7. Especificacin de Ontologa para Interoperabilidad
282
Captulo 7. Especificacin de Ontologa para Interoperabilidad
283
Captulo 7. Especificacin de Ontologa para Interoperabilidad
En la tabla 7.4 corroboramos lo que se haba visto en las figura 7.25 y 7.26,
que los mejores rendimientos en las seis pruebas los ofrece el razonador
Pellet, ofreciendo tambin los ms estables, ya que la varianza es menor.
Esto no tiene por qu significar que un razonador es mejor que otro en todos
los casos, pero s que podemos concluir que, para el tipo de uso propuesto
(con Protg y DIG) , para TBoxes y ABoxes como los que utilizamos.
Pellet es quien da mejores resultados y adems el que ofrece valores ms
estables. Estos resultados de rendimiento vienen a sumarse a la comparativa
general de razonadores de la tabla 7.3, donde el mejor valorado es tambin
Pellet.
A continuacin detallaremos cada uno de los tres pasos para esta validacin.
[Expr. 7.13]
http://dcom.upv.es/owl/rorollo/agenteKB#
285
Captulo 7. Especificacin de Ontologa para Interoperabilidad
286
Captulo 7. Especificacin de Ontologa para Interoperabilidad
287
Captulo 7. Especificacin de Ontologa para Interoperabilidad
En este punto, si fuera una bsqueda real, el usuario podra comprobar los
textos de los comentarios y seleccionar los que ms le convenga, o
directamente solicitar al agente que le busque los nombre de los Threads
distintos en los que se habla de extintores, o las comunidades en las que se
ha hablado sobre extintores. Para resolver estas ltimas consultas se
necesitan razonadores, y es lo que se mostrar en el apartado siguiente.
288
Captulo 7. Especificacin de Ontologa para Interoperabilidad
[Expr. 7.14]
Comentario_sobre_extintores {
c134 : TreeCommentID_817
c134 : TreeCommentID_676
c185 : TreeCommentID_2695
c185 : TreeCommentID_2699}
[Expr. 7.15]
RootItem_relacionado_extintores
RootItem hasDescendent.Comentario_sobre_extintores
El tiempo para inferir los individuos que pertenecen a esta nueva clase est
sobre los 4 segundos ( tiempo total 4,047 segundos, ver Fig. 7.30).
289
Captulo 7. Especificacin de Ontologa para Interoperabilidad
DHT
SEMNTICA DHT
INSERTAR
INSERTAR (K1,V,TBox)
(Tbox+K1,V)
Otra conclusin a la que llegamos es que tanto las herramientas como los
estndares para OWL estn an en fase inicial de desarrollo. Si ahora se est
empezando a estandarizar los queries sobre RDF (con SPARQL), podemos
imaginarnos que queda an tiempo para la estandarizacin de la siguiente
capa OWL. Hasta el interfaz DIG 1.1 tiene indefiniciones que nos limitan la
expresividad en OWL [RUT05]. Por otro lado, aunque Protg es una
herramienta muy testeada, incluso las ltimas versiones (3.2 beta) tienen
gran cantidad de errores y excepciones inesperadas. Respecto a los
291
Captulo 7. Especificacin de Ontologa para Interoperabilidad
Otra necesidad que detectamos para que las bsquedas semnticas sean ms
tiles, es la necesidad de filtrar elementos por capas inferiores a OWL. Es
por esto, que en la validacin de nuestro agente ya hemos introducido el
concepto de bsquedas mixtas, en las que se puede buscar por palabras
clave. Este proceso es similar a lo implementado en SPARQL para RDF,
que permite definir filtros con queries de XQuery (por ejemplo, para buscar
por palabras clave). De este modo debera desarrollarse un lenguaje de
Queries en OWL que permita realizar filtros de capas inferiores, de forma
que hiciera clases annimas con los resultados obtenidos por ese filtrado,
del mismo modo que hemos hecho nosotros en nuestro prototipo con los
individuos con la palabraextintor en parte de su campo texto. Por tanto el
modelo de filtrado mixto presentado en esta Tesis podra ser el ejemplo a
seguir para la definicin del lenguaje de consulta a OWL, as como la
prueba realizada en este captulo sera un ejemplo de funcionamiento por
parte de los razonadores para resolver estas bsquedas mixtas.
[Expr. 7.16]
X TreeComment , Y RootItem, Z ForumThread
hasDescendent (Y , X ) isFirstItemOf (Y , Z ) belongToThread ( X , Z )
K Forum, L SCORMLearningActivity
belongToThread ( X , Z ) isForumThreadOf ( Z , K ) belongToForum( X , K )
belongToForum( X , K ) relatedTo( K , L) belongToSCORMLearningActivity ( X , L)
293
Captulo 7. Especificacin de Ontologa para Interoperabilidad
294
Captulo 8. Conclusiones y lneas de trabajo futuras
Captulo 8: Conclusiones y
lneas de trabajo
futuras
8.1 Introduccin
En todo trabajo o estudio se necesita una contextualizacin donde se
indiquen los fundamentos tericos, las condiciones de trabajo y el estado del
arte. Tambin es necesario un conjunto de suposiciones y experimentos o
pruebas de concepto que permitan validar las suposiciones. Adems, todo
trabajo se encuentra incompleto sin conclusiones. Las conclusiones son una
de las partes esenciales del mismo, ya que permiten explicitar el
conocimiento generado y sirven de punto de revisin. Ser de este alto en el
camino de donde partirn futuros trabajos. En este captulo se indican a
modo de resumen las conclusiones que han ido apareciendo en los distintos
captulos.
295
Captulo 8. Conclusiones y lneas de trabajo futuras
Se pretende que la Tesis Doctoral, que cierra un ciclo, abra otro ciclo, de
modo que se convierta en un principo para futuras investigaciones y
desarrollos, ya sea de forma individual o por medio de una colaboracin
entre miembros de la comunidad cientfica, que interacten entre s por
medio de reuniones, artculos compartidos o participacin en foros
comunes. Por esta razn dedicaremos un apartado del captulo a esbozar
posibles lineas futuras.
8.2 Conclusiones
Las conclusiones principales se dividen en conclusiones respecto a las
interacciones alumno-sistema (evaluaciones) y alumno-alumno (foros),
conclusiones tras la propuesta de arquitectura que soporte un sistema para
facilitar la interoperabilidad de objetos de aprendizaje, respecto a la
especificacin de la ontologa propuesta y validacin del conjunto.
Otra posible lnea sera trabajar con los futuros motores de inferencias, y
modificar los interfaces, de forma que no sea necesario utilizar DIG como
mtodo de comunicacin. Se podra implementar distintos agentes
inteligentes que ya solicitaran directamente al usuario informacin y le
presentaran un interfaz amigable para que el usuario pudiera generar la
consulta basndose en los conceptos definidos en la TBox de la ontologa.
298
Captulo 8. Conclusiones y lneas de trabajo futuras
DHT SEMANTICA
AGENTE V = OWL URL
INSERTAR (Kn,V,ABox)
INSERTAR (K1,V,TBox)
OWL
OWL URL
PUBLICADOR
DISTRIBUIDOR DE CONTENIDOS
SEMNTICOS
GESTOR DE PUBLICACIN DHT
OWL
ALMACEN INFORMACION
SEMNTICA
.OWL
299
Captulo 8. Conclusiones y lneas de trabajo futuras
300
Captulo 8. Conclusiones y lneas de trabajo futuras
Esta Tesis sienta las bases de una arquitectura que facilita la localizacin en
la web semntica de recursos educativos reutilizables para impulsar la
teleeducacin en todos sus mbitos. Para ello se basa en el anlisis riguroso
de las necesidades y estndares actuales, realizando una especificacin que
se ha validado para demostrar su utilidad en el campo de la interoperabilidad
de recursos educativos. Por todo esto, esperamos que esta Tesis sirva
tambin para desarrollos futuros en los que se implementen agentes
inteligentes con motores de inferencia ms avanzados y se pueda llevar a
cabo una arquitectura similar a la propuesta, en la que se facilite el acceso a
contenidos semnticos y se permitan grandes variaciones de carga. Tambin
esperamos que se desarrollen ontologas nuevas basadas en la ontologa
especificada en esta Tesis, de forma que se enriquezca el conocimiento de la
teleformacin por parte de los agentes inteligentes, revertiendo a su vez en
301
Captulo 8. Conclusiones y lneas de trabajo futuras
302
Anexo 1. Glosario
Anexo 1. Glosario
303
Anexo 1. Glosario
Trminos y Acrnimos
ABox. parte de una base de conocimiento en lgica descriptiva relativa a las
instancias de clases.
Agente Inteligente. Toda entidad que percibe y acta sobre su entorno,
desarrollando cierto grado de inteligencia . En esta Tesis nos
referiremos a agente inteligente como las entidades no humanas que
nos facilitarn la bsqueda de recursos educativos, por medio de la
realizacin de inferencias sobre la base de conocimiento que han
adquirido en la web semntica.
AHA. Adaptative Hypermedia Architecture. Sistema que utiliza la web para
generar y mostrar redes semnticas.
AICC. Aviation Industry Computer-Based-Training Committee. Organismo
encargado de estandarizar la formacin basada en computadores de
la industria area.
AIMS. Agent-based Information Management System. Plataforma de
teleformacin basada en redes semnticas.
Ajax. Asynchronous JavaScript and XML. Tcnica de programacin de alto
nivel que utiliza componentes que se ejecutan en la web por medio
de Javascript en el cliente y comunicacin con el servidor va XML.
CDN. Content Distribution Network. Red de ordenadores en internet que
colaboran para distribuir contenidos de forma transparente al
usuario.
Clasificacin de una ontologa. Proceso de inferencias por el que se
explicitan todas las relaciones de herencia entre clases de una
ontologa.
Consistencia de una ontologa. Proceso de inferencias por el que se
confirma que no existe ninguna incongruencia en la ontologa, es
decir, que todas las clases de la misma pueden tener instancias.
DIG. Description Logic Implementation Group Interface. Interfaz que
define un protocolo de intercabio de ontologas descritas en lgica
descriptiva, que suelen aceptar la mayora de razonadores lgicos.
DL. Lgica descriptiva. Subtipo de lgica de primer orden donde se separa
completamente entre clases, propiedades e individuos, y las
relaciones tienen un nico sujeto y un nico predicado.
DTD. Document Type Definition. Lenguaje para definir la estructura de un
documento XML.
EGA. Extreme Groups Approach. Sistema de obtencin de resultados
estadsticos basado en el estudio de los valores extremos de una
muestra.
304
Anexo 1. Glosario
305
Anexo 1. Glosario
306
Anexo 1. Glosario
307
Anexo 1. Glosario
308
Anexo 2. Referncias
Anexo 2. Referencias
309
Anexo 2. Referencias
Artculos e Informes
[ADL04a] SCORM. Advanced Distributed Learning (ADL) Sharable Content
Object Reference Model (SCORM). Content Aggregation Model
(CAM) Version 1.3.1. Julio 2004.
[ADL04b] SCORM. Advanced Distributed Learning (ADL) Sharable Content
Object Reference Model (SCORM). Run-Time Environment (RTE)
Version 1.3.1. Julio 2004.
[ADL04c] SCORM. Advanced Distributed Learning (ADL) Sharable Content
Object Reference Model (SCORM). Sequencing and Navigation (SN)
Version 1.3.1. Julio 2004.
[AICC04] AICC CMI001, CMI Guidelines for Interoperability, Version 4. Agosto
2004.
[AKE04] A. Akella, J. Pang, B. Maggs, S. Seshan, A. Shaikh. A Comparison of
Overlay Routing and Multihoming Route Control. ACM Sigcomm.
Septiembre 2004.
[ANA05] R. Anane et al. A Web Services Approach to Learning Path
Composition. Proceedings of the 5th IEEE International Conference on
Advanced Learning Technologies (ICALT05). Taiwan. Julio 2005.
[ANI04] L. Anido, J. Rodrguez, M. Caeiro, J. Santos. A Focal Access Point to
Follow the Standardization of Learning Technologies. Proceedings of
the 4th IEEE International Conference on Advanced Learning
Technologies (ICALT04). Finlandia. Agosto 2004.
[ANK04] A. Ankilenkar, M. Paolucci et al OWL-S: Semantic Markup for Web
Services. White paper for OWL. 2004.
[ALO05] F.Alonso, G. Lpez, D. Manrique, B. Ruiz. XML repositories definition
for adaptive e-learning courses. 3rd International Conference on
Multimedia and Information. Junio 2005.
[ALO06] J.A. Alonso, M.J. Hidalgo, F.J. Martin, J.L. Ruiz. Formalizacin de la
lgica descriptiva ALC en PVS. Grupo de Lgica Computacional.
Universidad de Sevilla. Marzo 2006.
[ANS03] E. Ansell, J. Park. Tracking Tech Trends. Education Week, 22(5). Pp.
43-44, 48. Julio 2003.
[ARE01] C. Areces, M. de Rijke. From Description to Hybrid Logics, and Back.
In Wolter, F., Wansing, H., de Rijke, M., and Zakharyaschev, M.,
editors, Advances in Modal Logic, CSLI Publications. Pp. 1736. 2001.
[ARO03] L. Aroyo, S. Pokraev, R. Brussee. Preparing SCORM for the Semantic
Web. Paper presented at the International Conference on Ontologies,
Databases and Applications of Semantics (ODBASE03). Italia.
Noviembre 2003.
[ARO04] L. Aroyo, D. Dicheva. The New Challenges for E-learning: The
Educational Semantic Web. Educational Technology & Society, 7 (4),
Pp: 59-69. 2004
310
Anexo 2. Referncias
311
Anexo 2. Referencias
312
Anexo 2. Referncias
314
Anexo 2. Referncias
315
Anexo 2. Referencias
318
Anexo 2. Referncias
319
Anexo 2. Referencias
[TAL03] D. Talia, P. Trunfio. Towards a Synergy Between P2P and Grids. IEEE
Internet Computing, 2003 2003. 7(4). Pp: 94-96. 2003.
[TAL04] D. Talia, P. Trunfio. A P2P Grid Services-Based Protocol: Design and
Evaluation. EuroPar. 2004.
[TBL1998] Tim Berners-Lee. Semantic Web Road Map. W3C Design Issues.
Octubre 1998. URLhttp://www.w3. org/DesignIssues/Semantic.html.
[TBL2001] Berners-Lee, Hendler, Lassila. The Semantic Web. Scientific
American. Mayo 2001.
[TBL2001] T. Berners-Lee, J. Hendler, O. Lassila. The Semantic Web. Scientific
American. 2001.
[TELE01] Teleologic Learning Company. Objects, Vectors and Learning:
implications for SCORM. 2001.
[TIN97] L. Tinoco, E. Fox and N. Barnett, Online Evaluation in WWW-based
Courseware, The QUIZIT System, Proceedings of the 28th Annual
Symposium for Computer Based Education. Pp. 194-198. 1997.
[TOU05] R. Tous, J. Delgado. Using OWL for Querying an XML/RDF Syntax.
WWW2005. Japn. Mayo 2005.
[TRA03] B. Traversat, M. Abdelaziz, E. Pouyoul. Project JXTA: A Loosely-
Consistent DHT Rendezvous Walker. 2003.
[TRA03B] B. Traversat, M. Abdelaziz, E. Pouyoul. Project JXTA 2.0 Super-Peer
Virtual Network. 2003.
[TRO04] M. Trott, B. Trott. TrackBack 1.2 Technical Especificacion. 2004.
http://www.sixapart.com/pronet/docs/trackback_spec.
[TSA03] D. Tsarkov, I. Horrocks. DL Reasoner vs. First-Order Prover.
University of Manchester. 2003.
[TSA04] D. Tsarkov, I. Horrocks. Efficient reasoning with range and domain
constraints. 2004 Description Logic Workshop (DL 2004), vol 104. Pp:
41-50. 2004.
[TUR05] Z. Turk et al. Semantic Grid - Interoperability Solution for Construction
VO?. Proceedings of the International Conference on Information
Technology: Coding and Computing (ITCC05). EEUU. Abril 2005.
[ULL04] C. Ullrich. Description of an instructional ontology and its application in
web services for education SWEL Workshop 2004. Pp: 17-23. Japn.
2004.
[VER04] D.C. Verma. Legitimate Applications of Peer to Peer Networks. John
Wiley & Sons, Inc. 2004.
[WAG03] Gerd Wagner, Said Tabet, Harold Boley MOF-RuleML: The Abstract
Sytax of RuleML as a MOF Model. OMG Meeting. EEUU. Octubre
2003.
[WIL03] K. Wilkinson, C. Sayers, H. Kuno, D. Reynolds. Efficient RDF Storage
and Retrieval in Jena2 HP Techical Report. Diciembre 2003.
[WIL03] K. Wilkinson, C. Sayers, H. Kuno, D. Reynolds. Efficient Storage and
Retrieval of RDF Graphs in Jena2. First International Workshop on
Semantic Web and Databases. Alemania. Septiembre 2003.
320
Anexo 2. Referncias
Recursos en Internet
[WWW1] Pgina principal de la web semntica en W3C.
http://www.w3.org/2001/sw/
[WWW2] Pgina principal de RDF en W3c. http://www.w3c.org/rdf
[WWW3] http://www.ontoweb.org
[WWW4] http://www.cogsci.princetown.edu/ wn/
[WWW5] http://www-ksl-svc.standford.edu:5915
[WWW6] http://www.cyc.com
[WWW7] http://www.topicmaps.org
[WWW8] http://www.uml.org
[WWW9] http://citeseer.ist.psu.edu/
[WWW10] http://www.topicmaps.org/xtm
[WWW11] http://www.isotopicmaps.org
[WWW12] http://www.ruleml.org
[WWW13] http://www.sts.tu-harburg.de/~r.f.moeller/racer
[WWW14] http://www.daml.org/services/
[WWW15] IMS web page. http://www.imsglobal.org
[WWW16] http://web.mit.edu/oki
[WWW17] http://www.adlnet.org/
[WWW18] http://www.openuss.org
[WWW19] http://www.ist-universal.org
[WWW20] http://www.govtalk.gov.uk/schemasstandards/egif.asp
[WWW21] http://www.ariadne-eu.org
[WWW22] http://dublincore.org
[WWW23] http://ltsc.ieee.org/wg12/
[WWW30] Comparativa de distintas de finiciones de P2P.
http://www.anu.edu.au/people/Roger.Clarke/EC/P2POview.html#Defns
[WWW31] http://www.cachelogic.com
[WWW32] http://www.kazaa.com
[WWW33] http://www.coralcdn.org/
[WWW34] http://fedsearch.merlot.org
321
Anexo 2. Referencias
[WWW35] http://www.exlibrisgroup.com/
[WWW36] http://www.edna.edu.au/
[WWW37] http://www.merlot.org
[WWW38] http://edutella.jxta.org/
[WWW39] http://www.edusplash.net/
[WWW40] http://cordra.net
[WWW41] http://www.ubbcentral.com/
[WWW42] http://www.phpbb.com/
[WWW43] http://www.blabla4u.com/
[WWW44] http://www.fusetalk.com/
[WWW45] Comparativa de software para foros:
http://en.wikipedia.org/wiki/Comparison_of_Internet_forum_software
[WWW46] http://java.sun.com
[WWW47] http://www.programacion.com/php/foros/
[WWW48] http://2ch.net/
[WWW49] Comparativa entre Pingback y Trackback. 2002, por el autor de
Pingback. http://ln.hixie.ch/?start=1033171507&count=1
[WWW50] SAKAI : Collaboration and Learning Environment for Education.
http://sakaiproject.org/.
[WWW51] Descripcin de Wiki. http://es.wikipedia.org/wiki/Wiki
[WWW52] Altova Semantic Works page.
http://www.altova.com/products/semanticworks/semantic_web_rdf_o
wl_editor.html
[WWW53] SWOOP page. http://www.mindswap.org/2004/SWOOP/
[WWW54] OWL consistency chequer, basado en Pellet.
http://www.mindswap.org/2003/pellet/demo.shtml.
[WWW55] Jena 2 Ontology API. http://jena.sourceforge.net/ontology/
[WWW56] B. McBride. Jena Tutorial.
http://jena.sourceforge.net/tutorial/index.html
[WWW57] Pgina principal de Jena. http://jena.sourceforge.net/
[WWW58] Informacin del proyecto wonderweb IST-2001-33052.
http://wonderweb.semanticweb.org/
[WWW59] Pgina principal de Pellet.
http://www.mindswap.org/2003/pellet/index.shtml
[WWW60] Informe de rendimientos de Pellet.
http://www.mindswap.org/2003/pellet/performance.shtml
[WWW61] RDF Query Survey. http://www.w3.org/2001/11/13-RDF-Query-
Rules/
[WWW62] SPARQL Query Language for RDF. W3C Recommendation
Candidate. http://www.w3.org/TR/rdf-sparql-query/
[WWW63] Proyecto OWL de la universidad de Standford (Standford Knowledge
Systems Laboratory). http://ksl.stanford.edu/projects/owl-ql/
[WWW64] Universal Decimal Classification. http://www.udcc.org/
[WWW65] Library of Congress Cataloging. http://www.loc.gov/catdir/
[WWW66] Pgina principal de Google. http://www.google.com
322
Anexo 2. Referncias
323