SlideShare une entreprise Scribd logo
1  sur  10
Télécharger pour lire hors ligne
1
“Análisis de la estructura organizacional de la
Universidad Nacional de Loja, Área de la Energía,
las industrias y los recursos naturales no renovables,
utilizando Web Semántica.”
L. Bravo, R. Faicán,
Resumen—El presente artículo trata del análisis de la estruc-
tura del AEIRNNR, teniendo en cuenta las carreras dentro del
área, los módulos, las materias para cada módulo, los docentes
encargados de impartir cada materia, asi mismo los estudiantes
que reciben cada las materias de acuerdo al módulo que se
encuentran cursando. Tomando también como referencia para
el analisis que los estudiantes de segundo módulo de la nueva
malla curricular pueden tomar materias de primer módulo, pero
no pueden tomar materias de tercer módulo en adelante.
Palabras Claves—web semántica, ontología, planes de estudio,
PROTËGË, JAVA.
I. INTRODUCCIÓN
Los contenidos manejados en internet tienen demasiados
resultados necesitando que al momento de hacer búsquedas
salgan las óptimas o relacionadas con el criterio de búsqueda
o con el tema de búsqueda. Por lo que es necesaria la
integración de diversas tecnologías que permitan hacer los
datos de la web accesibles y enlazables.
Así mismo se enfrenta a la dificultad que se presenta
a la hora de manejar y recuperar grandes cantidades de
información, en los resultados que arroja se presencia la falta
de precisión cuando un buscador encuentra resultados que
no tienen ninguna relación con lo que se pretende encontrar,
debido a que existen palabras con distintos significados.
Como forma de solucionar estos problemas se propone
la creación de la web semántica, donde las aplicaciones
son capaces de efectuar un procesamiento de la información
mucho más profundo. Esta se caracteriza por incorporar
programas capaces de comprender y relacionar el contenido
de las páginas web, de procesarla, de discriminar la más
fiable en un momento dado e incluso de deducir o inferir
información no registrada previamente, tomando decisiones
con un cierto grado de autonomía.
Para lograr aplicaciones y servicios más inteligentes es
necesario que la información esté perfectamente descrita y
clasificada de manera que su significado exacto esté al alcance
L. Bravo , Universidad Nacional de Loja, Loja, Ecuador, E-mail:
lfbravoe@unl.edu.ec
R. Faicán, Universidad Nacional de Loja, Loja, Ecuador, E-mail:
rvfaicanc@unl.edu.ec
de las máquinas. De esta manera los ordenadores podrían
manipular y procesar la información adecuadamente y los
usuarios quedarán satisfechos con los resultados obtenidos en
la búsqueda.
II. ESTADO DEL ARTE
II-A. HISTORIA
La aparición de la WWW se puede situar en 1989, cuando
Tim Berners-Lee presentó su proyecto de “World Wide Web”
en el CERN (Suiza), con las características esenciales que
perduran en nuestros días. El propio Berners-Lee completó
en 1990 el primer servidor web y el primer cliente, y un año
más tarde publicó el primer borrador de las especificaciones
de HTML y HTTP. El lanzamiento en 1993 de Mosaic,
el primer navegador de dominio público, compatible con
Unix, Windows, y Macintosh, por el National Center for
Supercomputing Applications (NCSA), marca el momento
en que la WWW se da a conocer al mundo, extendiéndose
primero en universidades y laboratorios, y en cuestión de
meses al público en general, iniciando el que sería su
vertiginoso crecimiento.
Los primeros usuarios acogieron con entusiasmo la
facilidad con que se podían integrar texto y gráficos y saltar
de un punto a otro del mundo en una misma interfaz, y
la extrema sencillez para contribuir contenidos a una web
mundial. Por estas mismas fechas se define la interfaz CGI
para la generación dinámica de páginas web, con lo que
se consigue ofrecer información actualizada en tiempo real,
enlazar con bases de datos, o tener en cuenta entradas del
usuario, y más aún, servir como punto de acceso y plataforma
para la ejecución de aplicaciones distribuidas.
En 1994 miembros del equipo que creó Mosaic desarrollan
Netscape, un navegador con sensibles mejoras que contribuye
a impulsar la propagación de la web. Este mismo año se
celebra el primer congreso internacional de la WWW, y
unos meses más tarde se constituye el consorcio W3C,
que desde entonces y presidido por Tim Berners-Lee, se
ha hecho cargo de estandarizar las principales tecnologías web.
En 1995 Sun lanza oficialmente la primera versión del len-
guaje Java, y un año más tarde Netscape presenta JavaScript.
2
Estos lenguajes y otros posteriores permiten que las propias
páginas web contengan programas enteros, dando opción a
una mayor autonomía respecto del servidor, mayor eficiencia,
capacidad dinámica y capacidad de interacción.
II-B. WEB SEMÁNTICA
La Web Semántica es una extensión de la Web actual en la
que a la información disponible se le otorga (anota o marca)
una semántica bien definida.
Está basada en la idea de proporcionar en la Web datos defi-
nidos y enlazados, permitiendo que aplicaciones heterogéneas
descubran, integren, razonen y utilicen la información presente
en la web.
[1].
La Web Semántica, mediante sus tecnologías, permite
expresar datos, conocimiento y su significado mediante
lenguajes formales, de esta manera es posible que agentes de
software puedan identificar la semántica subyacente en estas
representaciones.
Esto significa que, la capacidad de entendimiento podrá
ser asumida por las máquinas, para interpretar los datos
que reciben del entorno, determinar su significado y generar
nuevos datos mediante reglas lógicas.
Web Semántica vs Web Actual
Figura 1. Conceptualización Web Semántica y Web Actual
1. Web actual representa la información utilizando docu-
mentos en lenguaje natural con poca estructura
2. Máquinas inteligentes capaces de comprender el conte-
nido que hay en la web.
3. Información inteligente representandi la información con
el objetivo de que sea comprensible por las máquinas.
II-C. ONTOLOGÍA
La Web semántica es un paradigma que pretende superar
la actual orientación de Internet, donde la información se
encuentra representada de una forma comprensible por
las personas, hacia un modelo donde la información esté
preparada para su procesamiento automatizado por parte de
programas de computadora.
Teniendo en cuenta esto se puede decir que una ontología
es, en este modelo, la vía para representar el conocimiento
de la Web de forma que se haga legible y reutilizable por los
ordenadores.
Una ontología es una jerarquía de conceptos con atributos
y relaciones, que define una terminología consensuada
para definir redes semánticas de unidades de información
interrelacionadas.
Una ontología define un vocabulario común para compartir
información dentro de un dominio concreto, estando formado
dicho vocabulario por clases o conceptos, propiedades o
atributos de las clases y relaciones entre clases.
II-D. COMPONENTES DE UNA ONTOLOGÍA
1. Clases: son la base de la descripción del conocimiento
en las ontologías ya que describen los conceptos (ideas
básicas que se intentan formalizar) del dominio. Las
clases usualmente se organizan en taxonomías a las que
por lo general se les aplican mecanismos de herencia.
2. Relaciones: Representan las interacciones entre los con-
ceptos del dominio. Las ontologías por lo general con-
tienen relaciones binarias, el primer argumento de la
relación se conoce como el dominio y el segundo como
el rango.
3. Funciones: Son un tipo concreto de relación donde se
identifica un elemento mediante el cálculo de una fun-
ción que considera varios elementos de una ontología.
4. Instancias: Representan objetos determinados de un con-
cepto.
5. Taxonomía: Conjunto de conceptos organizados jerár-
quicamente. Las taxonomías definen las relaciones entre
los conceptos pero no los atributos de éstos.
6. Axiomas: Se usan para modelar sentencias que son
siempre ciertas. Los axiomas permiten, junto con la
herencia de conceptos, inferir conocimiento que no esté
indicado explícitamente en la taxonomía de conceptos.
7. Propiedades (Slots): Son las características o atributos
que describen a los conceptos. Las especificaciones, ran-
gos y restricciones sobre los valores de las propiedades
se denominan facets.
II-E. PASOS PARA DEFINIR UNA ONTOLOGÍA
Para desarrollar una ontología básicamente se pueden seguir
los siguientes pasos:
1. Definir las clases de la ontología
2. Organizar las clases jerárquicamente (clase-subclase).
3. Definir las propiedades de las clases y los valores
permitidos para las mismas.
4. Creación de instancias asignando valores a las propie-
dades.
3
Aunque en la actualidad no existe una metodología exacta
para el desarrollo de una ontología se ha propuesto un conjunto
de pasos para una ontología sencilla.
II-F. ARQUITECTURA
Figura 2. Arquitectura de Web Semántica
Descripción de cada una de las capas que componen la
estructura de Web Semántica:
1. UNICODE : El alfabeto: Se trata de una codificación
del texto que permite utilizar los símbolos de diferen-
tes idiomas sin que aparezcan caracteres extraños. De
esta forma, se puede expresar información en la Web
Semántica en cualquier idioma.
2. URI : Las referencias: Es el acrónimo de Uniform Re-
source Identifier o Identificador Uniforme de Recursos,
identificador único que permite la localización de un
recurso que puede ser accedido vía Internet. Se trata del
URL (descripción de la ubicación).
3. XML + NS + xmlschema: En esta capa se agrupan las
diferentes tecnologías que hacen posible que los agentes
puedan entenderse entre ellos. XML ofrece un formato
común para intercambio de documentos, NL (names-
paces) sirve para cualificar elementos y atributos de
nombres usados en XML asociándolos con los espacios
de nombre identificados por referencias URI y XML
Schema ofrece una plantilla para elaborar documentos
estándar.
4. RDF + rdfschema: Es un lenguaje simple mediante el
cual definimos sentencias en el formato de una 3-tuplas o
triple (sujeto: el recurso al que nos referimos; predicado:
el recurso que indica qué es lo que estamos definiendo;
y objeto: puede ser el recurso o un literal que podría
considerarse el valor de lo que acabamos de definir).
5. Ontology Vocabulary Lenguajes de Ontologías: El uso
de ontologías permite describir objetos y sus relaciones
con otros objetos ya que una ontología es la especifi-
cación formal de una conceptualización de un dominio
concreto del conocimiento. Esta capa permite extender
la funcionalidad de la Web Semántica, agregando nuevas
clases y propiedades para describir los recursos.
6. Logic Lógica: En esta capa se establecen reglas de
inferencia, es decir, una ontología puede expresar
la regla por ejemplo: ”Si un código de ciudad está
asociado a un código de estado, y si una dirección es
el código de ciudad, entonces esa dirección tiene el
código de estado asociado”.
En este contexto, logic se refiere al estudio de las reglas
formales que permiten determinar si un razonamiento se
sigue de sus premisas. La lógica estudia, por tanto, la es-
tructura de los razonamientos válidos. Se espera que los
ordenadores del futuro puedan efectuar razonamientos
sobre los recursos y servicios de la Web combinando los
conocimientos expresados en las ontologías, los hechos
declarados en los metadatos y la aplicación de reglas
lógicas.
7. Proof Pruebas: Es el intercambio de ”pruebas.escritas en
el lenguaje unificador. En este contexto, Proof (prueba)
significa demostración [matemática]. Se considera que
un ordenador alcanza la máxima fiabilidad en sus razo-
namientos cuando es capaz de realizar demostraciónes
o, lo que es lo mismo a efectos prácticos, cuando es
capaz de justificar el motivo por el cual tomó (o aconsejó
tomar) una decisión.
8. Trust Confianza, Digital Signature Firma Digital: La
Web Semántica comprueba de forma exhaustiva las
fuentes de información.
Se utiliza XML Signature WG:
http://www.w3.org/Signature/.
La última capa, Trust (confianza) debe servir para
otorgar confianza a las transacciones en la Web a través
que se llevarán a cabo no solamente entre usuarios y
sitios web sino también entre programas de software; y
todo ello tanto en el plano C2B (consumer to business)
como en el B2B (business to business).
La Digital Signature (firma digital) proporcionaría so-
porte específico a esta capa.
II-G. ¿QUÉ PROBLEMAS PODEMOS RESOLVER
La Web ha cambiado profundamente la forma en la que
nos comunicamos, hacemos negocios y realizamos nuestro
trabajo. La comunicación prácticamente con todo el mundo
en cualquier momento y a bajo coste es posible hoy en día.
Podemos realizar transacciones económicas a través
de Internet. Tenemos acceso a millones de recursos,
independientemente de nuestra situación geográfica e idioma.
Todos estos factores han contribuido al éxito de la Web. Sin
embargo, al mismo tiempo, estos factores que han propiciado
el éxito de la Web, también han originado sus principales
problemas: sobrecarga de información y heterogeneidad de
fuentes de información con el consiguiente problema de
interoperabilidad.
La Web Actual tiene problemas de sobrecarga de
información y heterogeneidad de fuentes de información.
4
La Web Semántica ayuda a resolver estos dos problemas
importantes permitiendo a los usuarios delegar tareas en
software.
Debido a la semántica en la Web, el software es capaz de
procesar su contenido, razonar con este, combinarlo y realizar
deducciones lógicas para resolver problemas cotidianos auto-
máticamente.
II-H. ÁREA DE APLICACIÓN
Data Dependent Agents
Data Integration
Knowledge Formation
Knowledge Management
Metada For Annotation and Enrichment
Metada For Discovery and Selection
Metada For Media and Content
Ontology Management
Personal Information and Management
Semantic Indexing
Syndication Category
II-I. PROTÉGÉ
Figura 3. Pantalla de Inicio
¿Qué es PROTÉGÉ?
: Es un editor de código abierto usado para construir
Ontologías y un marco general para representar el
conocimiento.
Está escrito en java que es un lenguaje orientado a objetos.
Se utiliza para construir apliaciones para la Web Semántica.
Para hacer una descripción semántica de la información,
sus archivos se realizan en OWL.
Las aplicaciones desarrolladas con Protégé son empleadas
en resolución de problemas y toma de decisiones en dominios
particulares.
La herramienta Protégé emplea una interfaz de usuario que
facilita la creación de una estructura de frames con clases,
slots e instancias de una forma integrada.
Una de las ventajas de Protégé es que cuenta con
herramientas de visualización, donde podemos ver de manera
gráfica las interacciones de las clases creadas dentro de un
dominio.
En la ventana principal, la pestaña OntoGraf nos lleva
a una interfaz para visualizar el modelo planteado de la
ontología Mamíferos.
Visualización de la estructura creada.
Figura 4. Visualización del diagrama
Instalación de PROTÉGÉ
: Primeramentre se debe ingresar al siguiente link
http://protege.stanford.edu/ para descargar la versión completa
de PROTÉGE.
Figura 5. Página Web - Universidad de Stanford
Una vez descargado el instalador se lo ejecuta:
Figura 6. Pantalla de instalación
Se elige la carpeta donde se almacenará PROTÉGÉ.
Elección de la Máquina Virtual de Java, dando dos opciones
entre elegir la que viene por defecto en PROTÉGÉ o también
usar la que se haya instalado en el computador.
Se presiona NEXT hasta que finalice la instalación.
III. IMPLEMENTACIÓN
Para analizar el problema de la organización de la Carrera
de Ingenieria en Sistemas se procedió a plantear una web
5
Figura 7. Carpeta de instalación
Figura 8. Máquina Virtual de Java
semántica que abarque todo el problema de estudio, una vez
realizada la web semántica la conectamos en una aplicación
con Java utilizando librerias para el caso como Jena, el código
que se utiliza es el siguiente:
import com.hp.hpl.jena.ontology.*;
import com.hp.hpl.jena.rdf.model.ModelFactory;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class WebSemantica1 {
final public static List<String>
rfinal = new ArrayList<>();
final public static List<String>
listaRelaciones = new ArrayList<String>();
final public static List<String>
listaindividuos = new ArrayList<String>();
final public static List<String>
listaclases = new ArrayList<String>();
public List<String> devolverDatos() {
OntModel areaOntology =
ModelFactory.createOntologyModel();
OntModel personaOntology =
ModelFactory.createOntologyModel();
try {
InputStream file =
new FileInputStream
(System.getProperty("user.dir") +
"/src/archivo/UNL.owl");
personaOntology.read(file, "");
} catch (FileNotFoundException ex) {
}
Iterator<DatatypeProperty> propiedades =
areaOntology.listDatatypeProperties();
Iterator<OntClass> clases =
personaOntology.listClasses();
while (propiedades.hasNext()) {
System.out.println(propiedades.next()
.getLocalName());
}
System.out.println("----------------------------
while (clases.hasNext()) {
rfinal.add("n" + clases.next().
getLocalName());
}
return rfinal;
}
public void obtenerDatos() {
OntModel personaOntology =
ModelFactory.createOntologyModel();
OntModel areaOntology =
ModelFactory.createOntologyModel();
Iterator<DatatypeProperty> propiedades =
areaOntology.listDatatypeProperties();
try {
InputStream file =
new FileInputStream
(System.getProperty("user.dir") +
"/src/archivo/UNLCIS.rdf");
personaOntology.read(file, "");
} catch (FileNotFoundException ex) {
}
Iterator<OntClass> clases =
personaOntology.listClasses();
Iterator<ObjectProperty> relaciones =
personaOntology.listObjectProperties();
Iterator<Individual> individuos =
personaOntology.listIndividuals();
while (relaciones.hasNext()) {
listaRelaciones.add((String)
relaciones.next().getLocalName()
.toString());
}
while (individuos.hasNext()) {
listaindividuos.add(individuos
.next().getLocalName());
}
System.out.println("---");
while (clases.hasNext()) {
listaclases.add(clases.next()
.getSubClass().getLocalName());
}
}
6
public static void main(String[] args) {
WebSemantica1 w = new WebSemantica1();
w.obtenerDatos();
}
}
Para realizar la web semántica de la Organización de la
Estructura Organizacional se la pudo diseñar siguiendo la
estructura jerárquica desde lo mas representativo que sería
la Universidad Nacional de Loja UNL,luego las Áreas que
comprende la UNL, una vez definidas las carreras que tiene
el Área de la Energía, las Industrias y los Recursos Naturales
no Renovables ,y en la carrera de Ingenieria en Sistemas se la
dividió en dos mallas: Malla Curricular Actual que vendria a
ser en el modelo la Malla Nueva y Malla Ajustada que vendría
a ser la Malla Vieja.
En la siguiente figura mostramos la organización :
Figura 9. Web Semántica Propuesta
También fue necesario definir las relaciones que tendrá
nuestra web semántica las cuales fueron:
recibe: Para determinar que los estudiantes pueden re-
cibir Materias de acuerdo a las especificaciones de la
Malla.
es Recibida por: Se utiliza para señalar la relación entre
las Materias que recibirán los estudiantes de acuerdo a
la Malla que pertenezcan.
imparte: Esta relación nos permite determinar la relación
entre los docentes y las Materias.
Es Impartida por: Esta relación nos permite determinar
la relación entre las Materias y los Docentes.
La relación Es impartida por: es de característica Inversa
Funcional, su Dominio son las Materias y su Rango los
Docentes como se muestra a continuación en la figura:
Figura 10. Relación: es impartida por
La relación Es recibida por tiene una inversa la cual es
la relación recibe, su Dominio son las materias y su rango los
estudiantes, como se muestra en la figura:
Figura 11. Relación: es recibida por
La relación Imparte es de característica Inversa Simétrica,
su Dominio son los Docentes que pertenecen a la carrera y
su Rango las Materias como se muestra a continuación en la
figura:
Figura 12. Relación: Recibe
La relación recibe, tiene una inversa la relación: es recibida
por, su dominio son los estudiantes pertenecientes a los
Módulos o Ciclos de la Carrera, y su rango son las Materias
que comprende la Carrera, como en la figura:
7
Figura 13. Relación: Imparte
Cada estudiante recibe materias de su módul o ciclo corres-
pondiente, pero de acuerdo a la Nueva Malla los estudiantes
de Segundo Ciclo pueden recibir Materias de Primer Ciclo,
esta restricción a nivel de Entidades se detalla en la siguiente
figura:
Figura 14. Restricción de Estudiantes de Segundo Ciclo
Las Materias pertenecientes a cada módulo son definidas
como individuos pertenecientes a la una Entidad, y luego
se define las restricciones a nivel de individuo. Por ejemplo
la Materia de Anteproyectos de Tesis es impartida por dos
docentes y pertenece a Décimo Módulo. Como se muestra a
continuación en la figura:
Figura 15. Restricción a nivel de Individuos en la Materia Anteproyectos de
Tesis
Los Docentes fueron definidos como individuos pertene-
cientes a la entidad Docentes y relacionados con las materias
que imparten, Por ejemplo el Ing Franco Salcedo imparte las
Materias de Control Automatico y Análisis Númerico como
se puede observar en la figura a continuación:
Figura 16. Restricción a nivel de Individuos Docentes: Ing Franco Salcedo
Para la Asignación de Materias y Docentes se siguió los
criterios descritos en la presente Tabla:
Materias Docentes
Anteproyectos de Tesis Ing. Henry Paz
Inteligencia Artificial Ing. Henry Paz.
Control Automatizado Ing. Franco Salcedo.
Ética Informatica Ing. Pablo Ordóñez.
Sistemas Expertos Ing.Roberto Jácome
Simulación Ing. Roberto Jácome
Tabla Nro.1 Asignación de Docentes para las Materias de
Décimo Módulo
Adicionalmente se definió Propiedades a los Datos como:
Especialidad de la Formación aplicada a Docentes, Correo
Institucional para Docentes y Estudiantes del Área, y Nombre
Modulo aplicada a los Ciclos o Módulos, como se presenta
en la figura:
Figura 17. Data Properties de la Web Semántica
Es necesario guardar nuestra red como un archivo RDF,
y para integralo en nuestro proyecto fueron necesarias las
librerias que se detallan en la siguiente figura:
Figura 18. Bibliotecas de Integración de una Web Semántica en JAVA
8
IV. RESULTADOS
Luego de integrar leemos el archivo prefijado en una ruta
predeterminada como se detalla en el presente código, así
mismo declaramos nuestro modelo de ontología y también los
iteradores:
public List<String> devolverDatos() {
OntModel areaOntology =
ModelFactory.createOntologyModel();
OntModel personaOntology =
ModelFactory.createOntologyModel();
try {
InputStream file = new FileInputStream
(System.getProperty("user.dir") +
"/src/archivo/UNL.owl");
personaOntology.read(file, "");
} catch (FileNotFoundException ex) {
}
Iterator<DatatypeProperty> propiedades =
areaOntology.listDatatypeProperties();
Iterator<OntClass> clases =
personaOntology.listClasses();
while (propiedades.hasNext()) {
System.out.println(propiedades.next()
.getLocalName());
}
System.out.println("---------------");
while (clases.hasNext()) {
rfinal.add("n" + clases.next().
getLocalName());
}
return rfinal;
}
Presentamos nuestras clases en la Presente Ventana:
Figura 19. Resultado de la Obtención de Clases
Para presentar los datos de clases empleamos el siguiente
código:
WebSemantica1 ws=new WebSemantica1();
ws.obtenerDatos();
String clases=" ";
jTextArea1.setText("");
for (int i = 0; i < WebSemantica1.
istaclases.size(); i++) {
clases=clases+WebSemantica1.
listaclases.get(i)+"n";
jTextArea1.setText(clases);
}
WebSemantica1.listaclases.clear();
WebSemantica1.listaindividuos.clear();
WebSemantica1.listaRelaciones.clear();
Presentamos los individuos en la presente imagen:
Figura 20. Resultado de la Obtención de Individuos
Así mismo se presentan los resultados de las relaciones en
la siguiente:
Figura 21. Resultado de la Obtención de Relaciones
El resultado de nuestra web semántica es el siguiente:
9
Figura 22. Web Semántica de la CIS en la UNL
V. CONCLUSIONES Y RECOMENDACIONES
La Web Semántica resuelve el problema de la saturación
al momento de realizar búsquedas en la Web evitando
así redundancias o contenidos fuera de contexto.
El resultado que obtendremos dependerá de las restric-
ciones y relaciones que le pongamos a nuestra ontología,
debiendo ser estas muy claras y que guarden relación con
la ontología que se diseña.
La utilización de la herramienta PROTÉGÉ permite el
diseño y elaboración de la ontología pudiendo tener
también un archivo XML.
Con Web Semántica el usuario en Internet podrá encon-
trar respuestas a sus preguntas de forma más rápida y
sencilla gracias a una información mejor definida.
Es importante considerar que también permite organizar
gran cantidad de información y datos sueltos en la Web.
Este tipo de aplicaciones prácticas permiten mejorar la
comprensión de los conocimientos teóricos referentes con
Web Semántica y Ontología.
REFERENCIAS
[1] ALBERTO FERNANDEZ GIL Introducción a la Web Semántica,
Agentes y Web Semántica, Universidad Rey Juan Carlos.[En línea].
Available:http://decsai.ugr.es/ smc/redesia2.pdf[Último acceso: 18 de
Junio 2014].
[2] JUAN TRÍPODE, Mineria de la Web , Uni-
versidad Nacional del Sur.[En línea]. Availa-
ble:http://cs.uns.edu.ar/ agm/mineriaweb/downloads/Slides/clase15-
slides-juan.pdf[Último acceso: 18 de Junio 2014]].
[3] MSC. MIGUEL ÁNGEL NIÑO, Introducción a la Web
Semántica,Curso de Web Semántica. [En línea]. Available:
http://www.slideshare.net/manzamb/introduccin-a-la-web-semntica.
[Último acceso: 18 de Junio 2014].
[4] ARMANDO BECERRA. , Ontologías,Datos
y consultas con PROTÉGÉ.[En línea].
http://transparenciayontologias.blogspot.com/2013/04/graficos-y-
consultas-con-protege.html. [Último acceso: 19 de Junio 2014].
[5] Ing. Pablo Echenique Salas. ,Web Semántica y Ontología
,[En línea]. Available: http://materias.fi.uba.ar/7500/felgaer-
tesisingenieriainformatica.pdf [Último acceso: 20 de Junio 2014].
[6] María Rosa Mostacio- , El rol de las herramientas y tecnología
de la web semántica en las bibliotecas digitales,[En línea].
Available:http://www.mty.itesm.mx/dtie/centros/csi/materias/ia95-
022/foils.pdf [Último acceso: 20 de Junio 2014].
[7] INSTALACIÓN DE PROTÉGÉ.[En línea]. Available:
http://sistemas.uniandes.edu.co/protege.pdf [Último acceso: 21 de
Junio 2014].
[8] CÓDIGO PROGRAMA EN JAVA.[En línea]. Avalaible:http://web-
semantica-unl.googlecode.com/svn/trunk/WebSemantica
10
Luis Bravo
Estudiante de la Carrera de Ingeniería en Sistemas de la
Universidad Nacional de Loja, Nivel Medio en Software Libre, Redes
y Mantenimiento, Provincia de Loja, Ciudad Loja, Ecuador, 2014.
Rosa Faicán
Estudiante de la Carrera de Ingeniería en Sistemas de la
Universidad Nacional de Loja,Analista de Sistemas nivel medio,
Provincia de Loja, Ciudad Loja, Ecuador, 2014.

Contenu connexe

Similaire à Web semantica (2)

TecnologíAs Y Herramientas De La Web SemáNtica
TecnologíAs Y Herramientas De La Web SemáNticaTecnologíAs Y Herramientas De La Web SemáNtica
TecnologíAs Y Herramientas De La Web SemáNticaJavier Capa
 
Web semantica y ontologias
Web semantica y ontologiasWeb semantica y ontologias
Web semantica y ontologiasVane Erraez
 
Red semantica en la+web
Red semantica en la+webRed semantica en la+web
Red semantica en la+webrccmaria
 
Red+semantica+en+la+web
Red+semantica+en+la+webRed+semantica+en+la+web
Red+semantica+en+la+webJohannaLizette
 
Web Semantica
Web SemanticaWeb Semantica
Web Semanticavictorhud
 
Web semántica y sus principales características
Web semántica y sus principales característicasWeb semántica y sus principales características
Web semántica y sus principales característicasPollis Morales
 
Introducción a la programación de la Web Semántica
Introducción a la programación de la Web Semántica Introducción a la programación de la Web Semántica
Introducción a la programación de la Web Semántica Taniana Rodriguez
 

Similaire à Web semantica (2) (20)

TecnologíAs Y Herramientas De La Web SemáNtica
TecnologíAs Y Herramientas De La Web SemáNticaTecnologíAs Y Herramientas De La Web SemáNtica
TecnologíAs Y Herramientas De La Web SemáNtica
 
Ontología
OntologíaOntología
Ontología
 
La web semántica en educación
La web semántica en educaciónLa web semántica en educación
La web semántica en educación
 
La web semantica y su futuro
La web semantica y su futuroLa web semantica y su futuro
La web semantica y su futuro
 
Ontología cis
Ontología cisOntología cis
Ontología cis
 
Web Semanticammj
Web SemanticammjWeb Semanticammj
Web Semanticammj
 
33022200 Cesar
33022200 Cesar33022200 Cesar
33022200 Cesar
 
Evolucion de la web
Evolucion de la webEvolucion de la web
Evolucion de la web
 
Evolucion de la web
Evolucion de la webEvolucion de la web
Evolucion de la web
 
Web semantica y ontologias
Web semantica y ontologiasWeb semantica y ontologias
Web semantica y ontologias
 
Aplicaciones educativas de la web semántica
Aplicaciones educativas de la web semánticaAplicaciones educativas de la web semántica
Aplicaciones educativas de la web semántica
 
La Web Semantica
La Web SemanticaLa Web Semantica
La Web Semantica
 
Red semantica en la+web
Red semantica en la+webRed semantica en la+web
Red semantica en la+web
 
Red+semantica+en+la+web
Red+semantica+en+la+webRed+semantica+en+la+web
Red+semantica+en+la+web
 
Web Semantica
Web SemanticaWeb Semantica
Web Semantica
 
Web 2.0
Web 2.0Web 2.0
Web 2.0
 
actividad evaluada
actividad evaluada actividad evaluada
actividad evaluada
 
Como funciona la web
Como funciona la webComo funciona la web
Como funciona la web
 
Web semántica y sus principales características
Web semántica y sus principales característicasWeb semántica y sus principales características
Web semántica y sus principales características
 
Introducción a la programación de la Web Semántica
Introducción a la programación de la Web Semántica Introducción a la programación de la Web Semántica
Introducción a la programación de la Web Semántica
 

Web semantica (2)

  • 1. 1 “Análisis de la estructura organizacional de la Universidad Nacional de Loja, Área de la Energía, las industrias y los recursos naturales no renovables, utilizando Web Semántica.” L. Bravo, R. Faicán, Resumen—El presente artículo trata del análisis de la estruc- tura del AEIRNNR, teniendo en cuenta las carreras dentro del área, los módulos, las materias para cada módulo, los docentes encargados de impartir cada materia, asi mismo los estudiantes que reciben cada las materias de acuerdo al módulo que se encuentran cursando. Tomando también como referencia para el analisis que los estudiantes de segundo módulo de la nueva malla curricular pueden tomar materias de primer módulo, pero no pueden tomar materias de tercer módulo en adelante. Palabras Claves—web semántica, ontología, planes de estudio, PROTËGË, JAVA. I. INTRODUCCIÓN Los contenidos manejados en internet tienen demasiados resultados necesitando que al momento de hacer búsquedas salgan las óptimas o relacionadas con el criterio de búsqueda o con el tema de búsqueda. Por lo que es necesaria la integración de diversas tecnologías que permitan hacer los datos de la web accesibles y enlazables. Así mismo se enfrenta a la dificultad que se presenta a la hora de manejar y recuperar grandes cantidades de información, en los resultados que arroja se presencia la falta de precisión cuando un buscador encuentra resultados que no tienen ninguna relación con lo que se pretende encontrar, debido a que existen palabras con distintos significados. Como forma de solucionar estos problemas se propone la creación de la web semántica, donde las aplicaciones son capaces de efectuar un procesamiento de la información mucho más profundo. Esta se caracteriza por incorporar programas capaces de comprender y relacionar el contenido de las páginas web, de procesarla, de discriminar la más fiable en un momento dado e incluso de deducir o inferir información no registrada previamente, tomando decisiones con un cierto grado de autonomía. Para lograr aplicaciones y servicios más inteligentes es necesario que la información esté perfectamente descrita y clasificada de manera que su significado exacto esté al alcance L. Bravo , Universidad Nacional de Loja, Loja, Ecuador, E-mail: lfbravoe@unl.edu.ec R. Faicán, Universidad Nacional de Loja, Loja, Ecuador, E-mail: rvfaicanc@unl.edu.ec de las máquinas. De esta manera los ordenadores podrían manipular y procesar la información adecuadamente y los usuarios quedarán satisfechos con los resultados obtenidos en la búsqueda. II. ESTADO DEL ARTE II-A. HISTORIA La aparición de la WWW se puede situar en 1989, cuando Tim Berners-Lee presentó su proyecto de “World Wide Web” en el CERN (Suiza), con las características esenciales que perduran en nuestros días. El propio Berners-Lee completó en 1990 el primer servidor web y el primer cliente, y un año más tarde publicó el primer borrador de las especificaciones de HTML y HTTP. El lanzamiento en 1993 de Mosaic, el primer navegador de dominio público, compatible con Unix, Windows, y Macintosh, por el National Center for Supercomputing Applications (NCSA), marca el momento en que la WWW se da a conocer al mundo, extendiéndose primero en universidades y laboratorios, y en cuestión de meses al público en general, iniciando el que sería su vertiginoso crecimiento. Los primeros usuarios acogieron con entusiasmo la facilidad con que se podían integrar texto y gráficos y saltar de un punto a otro del mundo en una misma interfaz, y la extrema sencillez para contribuir contenidos a una web mundial. Por estas mismas fechas se define la interfaz CGI para la generación dinámica de páginas web, con lo que se consigue ofrecer información actualizada en tiempo real, enlazar con bases de datos, o tener en cuenta entradas del usuario, y más aún, servir como punto de acceso y plataforma para la ejecución de aplicaciones distribuidas. En 1994 miembros del equipo que creó Mosaic desarrollan Netscape, un navegador con sensibles mejoras que contribuye a impulsar la propagación de la web. Este mismo año se celebra el primer congreso internacional de la WWW, y unos meses más tarde se constituye el consorcio W3C, que desde entonces y presidido por Tim Berners-Lee, se ha hecho cargo de estandarizar las principales tecnologías web. En 1995 Sun lanza oficialmente la primera versión del len- guaje Java, y un año más tarde Netscape presenta JavaScript.
  • 2. 2 Estos lenguajes y otros posteriores permiten que las propias páginas web contengan programas enteros, dando opción a una mayor autonomía respecto del servidor, mayor eficiencia, capacidad dinámica y capacidad de interacción. II-B. WEB SEMÁNTICA La Web Semántica es una extensión de la Web actual en la que a la información disponible se le otorga (anota o marca) una semántica bien definida. Está basada en la idea de proporcionar en la Web datos defi- nidos y enlazados, permitiendo que aplicaciones heterogéneas descubran, integren, razonen y utilicen la información presente en la web. [1]. La Web Semántica, mediante sus tecnologías, permite expresar datos, conocimiento y su significado mediante lenguajes formales, de esta manera es posible que agentes de software puedan identificar la semántica subyacente en estas representaciones. Esto significa que, la capacidad de entendimiento podrá ser asumida por las máquinas, para interpretar los datos que reciben del entorno, determinar su significado y generar nuevos datos mediante reglas lógicas. Web Semántica vs Web Actual Figura 1. Conceptualización Web Semántica y Web Actual 1. Web actual representa la información utilizando docu- mentos en lenguaje natural con poca estructura 2. Máquinas inteligentes capaces de comprender el conte- nido que hay en la web. 3. Información inteligente representandi la información con el objetivo de que sea comprensible por las máquinas. II-C. ONTOLOGÍA La Web semántica es un paradigma que pretende superar la actual orientación de Internet, donde la información se encuentra representada de una forma comprensible por las personas, hacia un modelo donde la información esté preparada para su procesamiento automatizado por parte de programas de computadora. Teniendo en cuenta esto se puede decir que una ontología es, en este modelo, la vía para representar el conocimiento de la Web de forma que se haga legible y reutilizable por los ordenadores. Una ontología es una jerarquía de conceptos con atributos y relaciones, que define una terminología consensuada para definir redes semánticas de unidades de información interrelacionadas. Una ontología define un vocabulario común para compartir información dentro de un dominio concreto, estando formado dicho vocabulario por clases o conceptos, propiedades o atributos de las clases y relaciones entre clases. II-D. COMPONENTES DE UNA ONTOLOGÍA 1. Clases: son la base de la descripción del conocimiento en las ontologías ya que describen los conceptos (ideas básicas que se intentan formalizar) del dominio. Las clases usualmente se organizan en taxonomías a las que por lo general se les aplican mecanismos de herencia. 2. Relaciones: Representan las interacciones entre los con- ceptos del dominio. Las ontologías por lo general con- tienen relaciones binarias, el primer argumento de la relación se conoce como el dominio y el segundo como el rango. 3. Funciones: Son un tipo concreto de relación donde se identifica un elemento mediante el cálculo de una fun- ción que considera varios elementos de una ontología. 4. Instancias: Representan objetos determinados de un con- cepto. 5. Taxonomía: Conjunto de conceptos organizados jerár- quicamente. Las taxonomías definen las relaciones entre los conceptos pero no los atributos de éstos. 6. Axiomas: Se usan para modelar sentencias que son siempre ciertas. Los axiomas permiten, junto con la herencia de conceptos, inferir conocimiento que no esté indicado explícitamente en la taxonomía de conceptos. 7. Propiedades (Slots): Son las características o atributos que describen a los conceptos. Las especificaciones, ran- gos y restricciones sobre los valores de las propiedades se denominan facets. II-E. PASOS PARA DEFINIR UNA ONTOLOGÍA Para desarrollar una ontología básicamente se pueden seguir los siguientes pasos: 1. Definir las clases de la ontología 2. Organizar las clases jerárquicamente (clase-subclase). 3. Definir las propiedades de las clases y los valores permitidos para las mismas. 4. Creación de instancias asignando valores a las propie- dades.
  • 3. 3 Aunque en la actualidad no existe una metodología exacta para el desarrollo de una ontología se ha propuesto un conjunto de pasos para una ontología sencilla. II-F. ARQUITECTURA Figura 2. Arquitectura de Web Semántica Descripción de cada una de las capas que componen la estructura de Web Semántica: 1. UNICODE : El alfabeto: Se trata de una codificación del texto que permite utilizar los símbolos de diferen- tes idiomas sin que aparezcan caracteres extraños. De esta forma, se puede expresar información en la Web Semántica en cualquier idioma. 2. URI : Las referencias: Es el acrónimo de Uniform Re- source Identifier o Identificador Uniforme de Recursos, identificador único que permite la localización de un recurso que puede ser accedido vía Internet. Se trata del URL (descripción de la ubicación). 3. XML + NS + xmlschema: En esta capa se agrupan las diferentes tecnologías que hacen posible que los agentes puedan entenderse entre ellos. XML ofrece un formato común para intercambio de documentos, NL (names- paces) sirve para cualificar elementos y atributos de nombres usados en XML asociándolos con los espacios de nombre identificados por referencias URI y XML Schema ofrece una plantilla para elaborar documentos estándar. 4. RDF + rdfschema: Es un lenguaje simple mediante el cual definimos sentencias en el formato de una 3-tuplas o triple (sujeto: el recurso al que nos referimos; predicado: el recurso que indica qué es lo que estamos definiendo; y objeto: puede ser el recurso o un literal que podría considerarse el valor de lo que acabamos de definir). 5. Ontology Vocabulary Lenguajes de Ontologías: El uso de ontologías permite describir objetos y sus relaciones con otros objetos ya que una ontología es la especifi- cación formal de una conceptualización de un dominio concreto del conocimiento. Esta capa permite extender la funcionalidad de la Web Semántica, agregando nuevas clases y propiedades para describir los recursos. 6. Logic Lógica: En esta capa se establecen reglas de inferencia, es decir, una ontología puede expresar la regla por ejemplo: ”Si un código de ciudad está asociado a un código de estado, y si una dirección es el código de ciudad, entonces esa dirección tiene el código de estado asociado”. En este contexto, logic se refiere al estudio de las reglas formales que permiten determinar si un razonamiento se sigue de sus premisas. La lógica estudia, por tanto, la es- tructura de los razonamientos válidos. Se espera que los ordenadores del futuro puedan efectuar razonamientos sobre los recursos y servicios de la Web combinando los conocimientos expresados en las ontologías, los hechos declarados en los metadatos y la aplicación de reglas lógicas. 7. Proof Pruebas: Es el intercambio de ”pruebas.escritas en el lenguaje unificador. En este contexto, Proof (prueba) significa demostración [matemática]. Se considera que un ordenador alcanza la máxima fiabilidad en sus razo- namientos cuando es capaz de realizar demostraciónes o, lo que es lo mismo a efectos prácticos, cuando es capaz de justificar el motivo por el cual tomó (o aconsejó tomar) una decisión. 8. Trust Confianza, Digital Signature Firma Digital: La Web Semántica comprueba de forma exhaustiva las fuentes de información. Se utiliza XML Signature WG: http://www.w3.org/Signature/. La última capa, Trust (confianza) debe servir para otorgar confianza a las transacciones en la Web a través que se llevarán a cabo no solamente entre usuarios y sitios web sino también entre programas de software; y todo ello tanto en el plano C2B (consumer to business) como en el B2B (business to business). La Digital Signature (firma digital) proporcionaría so- porte específico a esta capa. II-G. ¿QUÉ PROBLEMAS PODEMOS RESOLVER La Web ha cambiado profundamente la forma en la que nos comunicamos, hacemos negocios y realizamos nuestro trabajo. La comunicación prácticamente con todo el mundo en cualquier momento y a bajo coste es posible hoy en día. Podemos realizar transacciones económicas a través de Internet. Tenemos acceso a millones de recursos, independientemente de nuestra situación geográfica e idioma. Todos estos factores han contribuido al éxito de la Web. Sin embargo, al mismo tiempo, estos factores que han propiciado el éxito de la Web, también han originado sus principales problemas: sobrecarga de información y heterogeneidad de fuentes de información con el consiguiente problema de interoperabilidad. La Web Actual tiene problemas de sobrecarga de información y heterogeneidad de fuentes de información.
  • 4. 4 La Web Semántica ayuda a resolver estos dos problemas importantes permitiendo a los usuarios delegar tareas en software. Debido a la semántica en la Web, el software es capaz de procesar su contenido, razonar con este, combinarlo y realizar deducciones lógicas para resolver problemas cotidianos auto- máticamente. II-H. ÁREA DE APLICACIÓN Data Dependent Agents Data Integration Knowledge Formation Knowledge Management Metada For Annotation and Enrichment Metada For Discovery and Selection Metada For Media and Content Ontology Management Personal Information and Management Semantic Indexing Syndication Category II-I. PROTÉGÉ Figura 3. Pantalla de Inicio ¿Qué es PROTÉGÉ? : Es un editor de código abierto usado para construir Ontologías y un marco general para representar el conocimiento. Está escrito en java que es un lenguaje orientado a objetos. Se utiliza para construir apliaciones para la Web Semántica. Para hacer una descripción semántica de la información, sus archivos se realizan en OWL. Las aplicaciones desarrolladas con Protégé son empleadas en resolución de problemas y toma de decisiones en dominios particulares. La herramienta Protégé emplea una interfaz de usuario que facilita la creación de una estructura de frames con clases, slots e instancias de una forma integrada. Una de las ventajas de Protégé es que cuenta con herramientas de visualización, donde podemos ver de manera gráfica las interacciones de las clases creadas dentro de un dominio. En la ventana principal, la pestaña OntoGraf nos lleva a una interfaz para visualizar el modelo planteado de la ontología Mamíferos. Visualización de la estructura creada. Figura 4. Visualización del diagrama Instalación de PROTÉGÉ : Primeramentre se debe ingresar al siguiente link http://protege.stanford.edu/ para descargar la versión completa de PROTÉGE. Figura 5. Página Web - Universidad de Stanford Una vez descargado el instalador se lo ejecuta: Figura 6. Pantalla de instalación Se elige la carpeta donde se almacenará PROTÉGÉ. Elección de la Máquina Virtual de Java, dando dos opciones entre elegir la que viene por defecto en PROTÉGÉ o también usar la que se haya instalado en el computador. Se presiona NEXT hasta que finalice la instalación. III. IMPLEMENTACIÓN Para analizar el problema de la organización de la Carrera de Ingenieria en Sistemas se procedió a plantear una web
  • 5. 5 Figura 7. Carpeta de instalación Figura 8. Máquina Virtual de Java semántica que abarque todo el problema de estudio, una vez realizada la web semántica la conectamos en una aplicación con Java utilizando librerias para el caso como Jena, el código que se utiliza es el siguiente: import com.hp.hpl.jena.ontology.*; import com.hp.hpl.jena.rdf.model.ModelFactory; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.InputStream; import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class WebSemantica1 { final public static List<String> rfinal = new ArrayList<>(); final public static List<String> listaRelaciones = new ArrayList<String>(); final public static List<String> listaindividuos = new ArrayList<String>(); final public static List<String> listaclases = new ArrayList<String>(); public List<String> devolverDatos() { OntModel areaOntology = ModelFactory.createOntologyModel(); OntModel personaOntology = ModelFactory.createOntologyModel(); try { InputStream file = new FileInputStream (System.getProperty("user.dir") + "/src/archivo/UNL.owl"); personaOntology.read(file, ""); } catch (FileNotFoundException ex) { } Iterator<DatatypeProperty> propiedades = areaOntology.listDatatypeProperties(); Iterator<OntClass> clases = personaOntology.listClasses(); while (propiedades.hasNext()) { System.out.println(propiedades.next() .getLocalName()); } System.out.println("---------------------------- while (clases.hasNext()) { rfinal.add("n" + clases.next(). getLocalName()); } return rfinal; } public void obtenerDatos() { OntModel personaOntology = ModelFactory.createOntologyModel(); OntModel areaOntology = ModelFactory.createOntologyModel(); Iterator<DatatypeProperty> propiedades = areaOntology.listDatatypeProperties(); try { InputStream file = new FileInputStream (System.getProperty("user.dir") + "/src/archivo/UNLCIS.rdf"); personaOntology.read(file, ""); } catch (FileNotFoundException ex) { } Iterator<OntClass> clases = personaOntology.listClasses(); Iterator<ObjectProperty> relaciones = personaOntology.listObjectProperties(); Iterator<Individual> individuos = personaOntology.listIndividuals(); while (relaciones.hasNext()) { listaRelaciones.add((String) relaciones.next().getLocalName() .toString()); } while (individuos.hasNext()) { listaindividuos.add(individuos .next().getLocalName()); } System.out.println("---"); while (clases.hasNext()) { listaclases.add(clases.next() .getSubClass().getLocalName()); } }
  • 6. 6 public static void main(String[] args) { WebSemantica1 w = new WebSemantica1(); w.obtenerDatos(); } } Para realizar la web semántica de la Organización de la Estructura Organizacional se la pudo diseñar siguiendo la estructura jerárquica desde lo mas representativo que sería la Universidad Nacional de Loja UNL,luego las Áreas que comprende la UNL, una vez definidas las carreras que tiene el Área de la Energía, las Industrias y los Recursos Naturales no Renovables ,y en la carrera de Ingenieria en Sistemas se la dividió en dos mallas: Malla Curricular Actual que vendria a ser en el modelo la Malla Nueva y Malla Ajustada que vendría a ser la Malla Vieja. En la siguiente figura mostramos la organización : Figura 9. Web Semántica Propuesta También fue necesario definir las relaciones que tendrá nuestra web semántica las cuales fueron: recibe: Para determinar que los estudiantes pueden re- cibir Materias de acuerdo a las especificaciones de la Malla. es Recibida por: Se utiliza para señalar la relación entre las Materias que recibirán los estudiantes de acuerdo a la Malla que pertenezcan. imparte: Esta relación nos permite determinar la relación entre los docentes y las Materias. Es Impartida por: Esta relación nos permite determinar la relación entre las Materias y los Docentes. La relación Es impartida por: es de característica Inversa Funcional, su Dominio son las Materias y su Rango los Docentes como se muestra a continuación en la figura: Figura 10. Relación: es impartida por La relación Es recibida por tiene una inversa la cual es la relación recibe, su Dominio son las materias y su rango los estudiantes, como se muestra en la figura: Figura 11. Relación: es recibida por La relación Imparte es de característica Inversa Simétrica, su Dominio son los Docentes que pertenecen a la carrera y su Rango las Materias como se muestra a continuación en la figura: Figura 12. Relación: Recibe La relación recibe, tiene una inversa la relación: es recibida por, su dominio son los estudiantes pertenecientes a los Módulos o Ciclos de la Carrera, y su rango son las Materias que comprende la Carrera, como en la figura:
  • 7. 7 Figura 13. Relación: Imparte Cada estudiante recibe materias de su módul o ciclo corres- pondiente, pero de acuerdo a la Nueva Malla los estudiantes de Segundo Ciclo pueden recibir Materias de Primer Ciclo, esta restricción a nivel de Entidades se detalla en la siguiente figura: Figura 14. Restricción de Estudiantes de Segundo Ciclo Las Materias pertenecientes a cada módulo son definidas como individuos pertenecientes a la una Entidad, y luego se define las restricciones a nivel de individuo. Por ejemplo la Materia de Anteproyectos de Tesis es impartida por dos docentes y pertenece a Décimo Módulo. Como se muestra a continuación en la figura: Figura 15. Restricción a nivel de Individuos en la Materia Anteproyectos de Tesis Los Docentes fueron definidos como individuos pertene- cientes a la entidad Docentes y relacionados con las materias que imparten, Por ejemplo el Ing Franco Salcedo imparte las Materias de Control Automatico y Análisis Númerico como se puede observar en la figura a continuación: Figura 16. Restricción a nivel de Individuos Docentes: Ing Franco Salcedo Para la Asignación de Materias y Docentes se siguió los criterios descritos en la presente Tabla: Materias Docentes Anteproyectos de Tesis Ing. Henry Paz Inteligencia Artificial Ing. Henry Paz. Control Automatizado Ing. Franco Salcedo. Ética Informatica Ing. Pablo Ordóñez. Sistemas Expertos Ing.Roberto Jácome Simulación Ing. Roberto Jácome Tabla Nro.1 Asignación de Docentes para las Materias de Décimo Módulo Adicionalmente se definió Propiedades a los Datos como: Especialidad de la Formación aplicada a Docentes, Correo Institucional para Docentes y Estudiantes del Área, y Nombre Modulo aplicada a los Ciclos o Módulos, como se presenta en la figura: Figura 17. Data Properties de la Web Semántica Es necesario guardar nuestra red como un archivo RDF, y para integralo en nuestro proyecto fueron necesarias las librerias que se detallan en la siguiente figura: Figura 18. Bibliotecas de Integración de una Web Semántica en JAVA
  • 8. 8 IV. RESULTADOS Luego de integrar leemos el archivo prefijado en una ruta predeterminada como se detalla en el presente código, así mismo declaramos nuestro modelo de ontología y también los iteradores: public List<String> devolverDatos() { OntModel areaOntology = ModelFactory.createOntologyModel(); OntModel personaOntology = ModelFactory.createOntologyModel(); try { InputStream file = new FileInputStream (System.getProperty("user.dir") + "/src/archivo/UNL.owl"); personaOntology.read(file, ""); } catch (FileNotFoundException ex) { } Iterator<DatatypeProperty> propiedades = areaOntology.listDatatypeProperties(); Iterator<OntClass> clases = personaOntology.listClasses(); while (propiedades.hasNext()) { System.out.println(propiedades.next() .getLocalName()); } System.out.println("---------------"); while (clases.hasNext()) { rfinal.add("n" + clases.next(). getLocalName()); } return rfinal; } Presentamos nuestras clases en la Presente Ventana: Figura 19. Resultado de la Obtención de Clases Para presentar los datos de clases empleamos el siguiente código: WebSemantica1 ws=new WebSemantica1(); ws.obtenerDatos(); String clases=" "; jTextArea1.setText(""); for (int i = 0; i < WebSemantica1. istaclases.size(); i++) { clases=clases+WebSemantica1. listaclases.get(i)+"n"; jTextArea1.setText(clases); } WebSemantica1.listaclases.clear(); WebSemantica1.listaindividuos.clear(); WebSemantica1.listaRelaciones.clear(); Presentamos los individuos en la presente imagen: Figura 20. Resultado de la Obtención de Individuos Así mismo se presentan los resultados de las relaciones en la siguiente: Figura 21. Resultado de la Obtención de Relaciones El resultado de nuestra web semántica es el siguiente:
  • 9. 9 Figura 22. Web Semántica de la CIS en la UNL V. CONCLUSIONES Y RECOMENDACIONES La Web Semántica resuelve el problema de la saturación al momento de realizar búsquedas en la Web evitando así redundancias o contenidos fuera de contexto. El resultado que obtendremos dependerá de las restric- ciones y relaciones que le pongamos a nuestra ontología, debiendo ser estas muy claras y que guarden relación con la ontología que se diseña. La utilización de la herramienta PROTÉGÉ permite el diseño y elaboración de la ontología pudiendo tener también un archivo XML. Con Web Semántica el usuario en Internet podrá encon- trar respuestas a sus preguntas de forma más rápida y sencilla gracias a una información mejor definida. Es importante considerar que también permite organizar gran cantidad de información y datos sueltos en la Web. Este tipo de aplicaciones prácticas permiten mejorar la comprensión de los conocimientos teóricos referentes con Web Semántica y Ontología. REFERENCIAS [1] ALBERTO FERNANDEZ GIL Introducción a la Web Semántica, Agentes y Web Semántica, Universidad Rey Juan Carlos.[En línea]. Available:http://decsai.ugr.es/ smc/redesia2.pdf[Último acceso: 18 de Junio 2014]. [2] JUAN TRÍPODE, Mineria de la Web , Uni- versidad Nacional del Sur.[En línea]. Availa- ble:http://cs.uns.edu.ar/ agm/mineriaweb/downloads/Slides/clase15- slides-juan.pdf[Último acceso: 18 de Junio 2014]]. [3] MSC. MIGUEL ÁNGEL NIÑO, Introducción a la Web Semántica,Curso de Web Semántica. [En línea]. Available: http://www.slideshare.net/manzamb/introduccin-a-la-web-semntica. [Último acceso: 18 de Junio 2014]. [4] ARMANDO BECERRA. , Ontologías,Datos y consultas con PROTÉGÉ.[En línea]. http://transparenciayontologias.blogspot.com/2013/04/graficos-y- consultas-con-protege.html. [Último acceso: 19 de Junio 2014]. [5] Ing. Pablo Echenique Salas. ,Web Semántica y Ontología ,[En línea]. Available: http://materias.fi.uba.ar/7500/felgaer- tesisingenieriainformatica.pdf [Último acceso: 20 de Junio 2014]. [6] María Rosa Mostacio- , El rol de las herramientas y tecnología de la web semántica en las bibliotecas digitales,[En línea]. Available:http://www.mty.itesm.mx/dtie/centros/csi/materias/ia95- 022/foils.pdf [Último acceso: 20 de Junio 2014]. [7] INSTALACIÓN DE PROTÉGÉ.[En línea]. Available: http://sistemas.uniandes.edu.co/protege.pdf [Último acceso: 21 de Junio 2014]. [8] CÓDIGO PROGRAMA EN JAVA.[En línea]. Avalaible:http://web- semantica-unl.googlecode.com/svn/trunk/WebSemantica
  • 10. 10 Luis Bravo Estudiante de la Carrera de Ingeniería en Sistemas de la Universidad Nacional de Loja, Nivel Medio en Software Libre, Redes y Mantenimiento, Provincia de Loja, Ciudad Loja, Ecuador, 2014. Rosa Faicán Estudiante de la Carrera de Ingeniería en Sistemas de la Universidad Nacional de Loja,Analista de Sistemas nivel medio, Provincia de Loja, Ciudad Loja, Ecuador, 2014.