Está en la página 1de 10

ONTOLOGY-BASED IMPLEMENTATION IN JENA AND SPARQL IMPLEMENTACIN DE ONTOLOGAS BASADA EN JENA Y SPARQL

Est. Ing de Sistemas: Ana Estefania Villamizar, Eliana Cadena, Nelly Lisbeth Hernndez.

Universidad de Pamplona Estudiantes de electiva de Ingeniera II Villa del rosario, Norte de Santander, Colombia. E-mail:{ tatikenia127@gmail.com, ellyluna@gmail.com, nellymao17@hotmail.com }

Abstract: Recently there is a growing interest in ontologies as tools for knowledge representation, semantic web and as critical components in knowledge management, semantic web, e-commerce and other fields (Brewster et al., 2004). Ontologies attempt to formulate an exhaustive and rigorous conceptual schema of a given domain in order to facilitate communication, reusing and sharing information between organizations, computers and humans. An ontology defines a common vocabulary also includes the interpretation of domain concepts and their relationships. There are several ways to implement ontologies from the use of plugins or libraries for popular IDEs to use Framework. Because Java is one of the most popular languages in use today and ease of programming made use of libraries of Jena and SPARQL in the Netbeans IDE, using Jena to load the file and be able to handle OWL and SPARQL for java search on this ontology. OWL File Proteg model. Final results a mini search engine, which is intended to refer to vehicles according to whether a given characteristic color, model, price or method of payment.

Keywords: ontology, semantic web, knowledge base, Jena, Protg, Sparql, MAS.

Resumen: Recientemente se ha generado un creciente inters en las ontologas como herramientas para la representacin del conocimiento y como componentes crticos en la gestin del conocimiento, la Web Semntica, el comercio electrnico entre otros campos (Brewster et al., 2004). Las ontologas intentan formular un esquema conceptual exhaustivo y riguroso de un dominio dado con la finalidad de facilitar la comunicacin, rehusar y compartir informacin entre organizaciones, computadores y humanos. Una ontologa define un vocabulario comn que incluye adems la interpretacin de los conceptos bsicos del dominio y sus relaciones. Existen diversas formas de implementar ontologas desde el uso de plugins o libreras sobre IDEs conocidos hasta la utilizacin de Framework. Debido a que java es uno de los lenguajes ms usados en la actualidad y a su facilidad de programacin se hizo uso de las libreras de Jena y Sparql dentro del IDE de Netbeans, utilizando Jena para cargar el archivo OWL y poderlo manejar con java y Sparql para realizar bsquedas sobre esta ontologa. El archivo OWL se modelo con Proteg. Obteniendo como resultado final un mini buscador, que tiene como finalidad consultar los vehculos segn una caracterstica dada ya sea color, modelo, precio o modo de pago. Palabras clave: Ontologa, web semntica, base del conocimiento, Jena, Protg, Sparql, sistemas multiagente.

1. INTRODUCCIN La informacin acerca de la implementacin de ontologas es muy escasa y confusa, en la web hay informacin de diferentes herramientas para implementacin de ontologas pero no de cmo se podra realmente hacer un aplicativo que permita hacer consultas sobre una ontologa haciendo uso de las reglas y en base a esto poder dar sugerencias de bsqueda al usuario. Lo que intentamos hacer fue un aplicativo que nos permita hacer esto sobre una ontologa, lo hicimos integrando herramientas compatibles entre ellas y que permiten una conexin efectiva para poder asignar a cada una de ellas una tarea especifica que facilite el trabajo a fin de implementar un sistema de bsqueda inteligente sobre una ontologa. Las ontologas intentan formular un esquema conceptual exhaustivo y riguroso de un dominio dado con la finalidad de facilitar la comunicacin, rehusar y compartir informacin entre organizaciones, computadores y humanos. Una ontologa define un vocabulario comn que incluye adems la interpretacin de los conceptos bsicos del dominio y sus relaciones. Debido a que java es uno de los lenguajes ms usados en la actualidad y a su facilidad de programacin se hizo uso de las libreras de Jena y Sparql dentro del IDE de Netbeans, utilizando Jena para cargar el archivo OWL y poderlo manejar con java y Sparql para realizar bsquedas sobre esta ontologa. El archivo OWL se modelo con Proteg. Obteniendo como resultado final un mini buscador, que tiene como finalidad consultar los vehculos segn una caracterstica dada ya sea color, modelo, precio o modo de pago.

2. ESTADO DEL ARTE 2.1. Ontologa 2.1.1. Definicin de ontologa. Es comn que cada comunidad que desarrolla ontologas adopte una definicin propia dependiendo de sus necesidades. Los investigadores en inteligencia artificial adoptaron el trmino Ontologa para describir todo lo que puede ser representado computacionalmente. Algunas definiciones de Ontologa en Inteligencia Artificial son:

Especificacin explicita de una conceptualizacin (Ceccaroni, 2001). Librera de definiciones que pueden ser utilizadas para diferentes propsitos en diferentes dominios, que permiten compartir y reutilizar conocimiento y mtodos de razonamiento entre agentes (Gmez, 1995). Sistema de conceptos definidos e interpretados de manera declarativa. El sistema define el vocabulario de un dominio y las restricciones que aplican para que stos puedan ser combinados en el modelo del dominio (Devedzic, 2002). Resultado de seleccionar un dominio y aplicar sobre el mismo un mtodo para obtener una representacin formal de los conceptos que contiene y las relaciones que existen entre estos (Tramullas, 1999). Segn Gruber (1993), una ontologa es una especificacin formal y explcita de una conceptualizacin compartida. Ms concretamente es definida como: o Conceptualizacin: Modelo abstracto de un fenmeno, que puede ser visto como un conjunto de reglas informales que restringen su estructura. Por lo general se expresa como un conjunto de conceptos (entidades, atributos, procesos), sus definiciones e interrelaciones (Uschold y Gruninger, 1996). o Formal: Organizacin terica de trminos y relaciones usados como herramienta para el anlisis de los conceptos de un dominio. o Compartida: Captura conocimiento consensual que es aceptado por una comunidad. o Explcita: Se refiere a la especificacin de los conceptos y a las restricciones sobre estos.

2.1.2. Objetivos de las ontologas Segn (Noy y McGuinness, 2001) algunos de los objetivos que se tienen para desarrollar ontologas son los siguientes:

Compartir entendimiento comn de la estructura del conocimiento, entre personas o agentes de software.

La ontologa pone a disposicin de los miembros de una comunidad los trminos y conceptos del dominio de inters, lo cual permitir a las personas o agentes de software extraer y agregar informacin segn sus necesidades. Permitir reutilizar conocimiento el dominio de

paradigmas, lenguajes y herramientas de software. Apoyar a la ingeniera de sistemas al momento de reusar software, hacer el chequeo de consistencia (confiabilidad del software), y al momento de la especificacin, sobre todo a la hora de levantar los requerimientos.

Es posible que muchos dominios hagan uso de un conocimiento especfico, si este conocimiento est constituido en una ontologa podr ser reutilizado por aquellos individuos que la necesiten sin necesidad de desarrollar una ontologa propia. Permitir separar conocimiento de dominio del conocimiento operacional

Figura 1. Usos de las Ontologas (Uschold, 1996). Siendo la principal utilidad de una ontologa ayudar a la comparticin del conocimiento entre diferentes actores de un dominio determinado, como pueden ser personas, organizaciones y sistemas de software. 2.1.4. Componentes de las Ontologas Los componentes de una ontologa varan de acuerdo al dominio de inters y a las necesidades de los desarrolladores. Por lo general entre los componentes se encuentran los siguientes (Lozano, 2002; Gmez y otros, 2004): Clases: Las clases son la base de la descripcin del conocimiento en las ontologas ya que describen los conceptos (ideas bsicas que se intentan formalizar) del dominio. Las clases usualmente se organizan en taxonomas a las que por lo general se les aplican mecanismos de herencia. Relaciones: Representan las interacciones entre los conceptos del dominio. Las ontologas por lo general contienen relaciones binarias; el primer argumento de la relacin se conoce como el dominio y el segundo como el rango. Funciones: Son un tipo concreto de relacin donde se identifica un elemento mediante el clculo de una funcin que considera varios elementos de una ontologa.

Una ontologa expresa el conocimiento del dominio de manera general de forma tal que pueda ser utilizado y manipulado por diversas tcnicas o algoritmos. Analizar el conocimiento del dominio

Especficamente en lo que se refiere al estudio de los trminos y relaciones que lo configuran, ya sea formalmente o no. 2.1.3. Usos de las Ontologias. Segn (Uschold, 1996) las ontologas se usan para compartir entendimiento de algn dominio de inters el cual puede ser usado como marco de unificacin para resolver problemas relacionados con ese dominio. Por tanto, una ontologa especifica una conceptualizacin, una forma concreta de ver el mundo, y por ello cada ontologa va a presentar un punto de vista diferente. Una ontologa puede funcionar como un marco para la unificacin de los diferentes puntos de vista (ver Figura 1) y servir como base para: La comunicacin entre personas con diferentes necesidades y puntos de vista. La interoperatividad entre sistemas alcanzada por una traduccin entre diferentes modelos, mtodos,

Instancias: Representan objetos determinados de un concepto. Taxonoma: Conjunto de conceptos organizados jerrquicamente. Las taxonomas definen las relaciones entre los conceptos pero no los atributos de stos. 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 explcitamente en la taxonoma de conceptos. Los axiomas definidos en una ontologa pueden ser estructurales o no estructurales: un axioma estructural establece condiciones relacionadas con la jerarqua de la ontologa, conceptos y atributos definidos; un axioma no estructural establece relaciones entre atributos de un concepto y son especficos de un dominio. Los axiomas se utilizan tambin para verificar la consistencia de la ontologa. Propiedades (Slots): Son las caractersticas o atributos que describen a los conceptos. Las especificaciones, rangos y restricciones sobre los valores de las propiedades se denominan facets. Para un concepto dado, las propiedades y las restricciones sobre stos son heredadas por las subclases y las instancias de la clase. para el desarrollo de

XML (eXtensible Markup Language): XML es un meta-lenguaje derivado de SGML, que permite la definicin de lenguajes de marcado adecuados para usos especficos. Es un lenguaje basado en marcas tipo etiquetas. (De Bruijn, 2003) XML puede ser utilizado como un formato para el intercambio de datos y como lenguaje de serializacin para otros lenguajes. Existen muchos analizadores (parsers) para XML que pueden ser reutilizados por los nuevos lenguajes que lo usan como su lenguaje de serializacin. RDF (Resource Description Framework): RDF es una infraestructura para la codificacin, intercambio y reutilizacin de metadatos estructurados. (Fensel y otros, 2000) Un XML Schema indica el orden y la combinacin de las etiquetas (estructura) en un documento XML; mientras que un RDF Schema slo proporciona informacin sobre la interpretacin (semntica) de las declaraciones en un modelo de datos RDF sin especificar nada sobre la sintaxis. (De Bruijn, 2003). OIL (Ontology Interface Layer): Es un lenguaje de representacin de ontologas basado en Web y capas de inferencia, que combina las primitivas de representacin de conocimiento de los lenguajes basados en marcos con la semntica formal y los servicios de razonamiento proporcionados por la lgica descriptiva (Fensel y otros, 2000). DAML+OIL: W3C para la representacin de ontologas y metadatos. DAML (DARPA Agent Markup Language) fue transformado a DAML+OIL a travs de la inclusin de algunas caractersticas de OIL al lenguaje. DAML consiste en un formalismo que permite a los agentes de software interactuar entre ellos. (Su y otros, 2005) DAML+OIL soporta tipos de datos complejos, a diferencia de OIL que slo soporta el tipo de dato string (De Bruijn, 2003). OWL (Web Ontology Language): Es un lenguaje de marcado semntico desarrollado por la W3C para publicar y compartir ontologas sobre el World Wide Web. Es una extensin del vocabulario de RDF y se deriva de DAML+OIL. OWL est diseado para ser utilizado por aplicaciones que necesitan procesar el contenido de la informacin en lugar de slo presentarla a las personas (McGuinness y Van

2.2. Lenguajes ontologas

A la hora de elegir un lenguaje para la definicin de una ontologa se deben considerar los siguientes aspectos: El lenguaje debe poseer una sintaxis bien definida para poder leer con facilidad la ontologa. Debe tener una semntica especfica para comprender perfectamente el funcionamiento de la ontologa. Debe tener suficiente expresividad para poder capturar varias ontologas. Debe ser fcilmente traducible desde y hacia otros lenguajes ontolgicos. Debe ser eficiente a la hora de realizar razonamiento.

A continuacin se presentan algunos lenguajes utilizados en el desarrollo de ontologas:

Harmelen, 2004). OWL proporciona tres sublenguajes diseados para ser utilizados por comunidades especficas de desarrolladores y usuarios. La caracterstica que define a cada lenguaje es su expresividad. OWL Lite: Es el sub-lenguaje con sintaxis ms simple, su intencin es ser utilizado en situaciones donde se requiera una jerarqua de clases y restricciones simples. OWL DL: Es mucho ms expresivo que OWL Lite y est basado en lgica descriptiva. Proporciona la mxima expresividad posible sin perder la completitud computacional (todas las conclusiones pueden ser deducidas) y la posibilidad (todos los clculos se realizan en un tiempo finito). OWL Full: Es el sub-lenguaje ms expresivo, su intencin es ser utilizado en situaciones donde una alta expresividad es ms importante que la capacidad de garantizar la completitud computacional y la posibilidad.

ontologas, en su (http://protege.stanford.edu/ ).

sitio

Web

Ontolingua: Es una herramienta de desarrollo para navegar, crear, editar, modificar, verificar, evaluar y usar ontologas. Contiene una librera de ontologas cuyas definiciones, axiomas y trminos no-lgicos, pueden ser reutilizadas en la construccin de nuevas ontologas. Ontolingua basa la construccin de ontologas en el principio de diseo modular. Se puede tener acceso a ontolingua atraves de (http://www-ksl-svc.stanford.edu/). Chimaera: Es una herramienta que permite crear y mantener ontologas en la web, proporciona un ambiente distribuido para navegar, crear, editar, modificar y usar ontologas. Entre las facilidades que ofrece la herramienta se tienen: cargar bases de conocimiento en diferentes formatos, reorganizar taxonomas, resolver conflictos de nombres y editar trminos. Destaca la capacidad para cargar datos de entrada en 15 diferentes formatos, tales como, KIF, Ontolingua, OKBC, Proteg, etcetera. Disponible en (http://www.ksl.stanford.edu/software/chimaera/). 2.4 Algunos desarrollos ontolgicos. UMLS (Unified Medical Language System): En 1986, la Biblioteca Nacional de Medicina (NLM, National Library of Medicine) comenz un proyecto a largo plazo para construir el Sistema de Lenguaje Mdico Unificado (UMLS), con el propsito de impulsar el desarrollo de sistemas computacionales para ayudar a los investigadores y profesionales del rea de la salud a recuperar e integrar informacin biomdica desde diferentes fuentes automatizadas. Para este fin, la Biblioteca Nacional de Medicina, produce y distribuye las fuentes de conocimiento de UMLS (bases de datos) y las herramientas de software asociadas (programas), para su uso por parte de los desarrolladores en la construccin o mejoramiento de sistemas de informacin electrnica que crean, procesan, recuperan, integran y/o agregan datos e informacin biomdica. PharmGKB (The Pharmacogenetics and Pharmacogenomics Knowlegde Base): Es una base de conocimiento farmacogentica y farmacogenmica construida para apoyar la representacin, almacenamiento, anlisis y

2.3. Herramientas para el desarrollo de ontologas Los editores de ontologas son herramientas especializadas que apoyan la construccin de estas. Las facilidades que proporcionan van desde la definicin y modificacin de conceptos, propiedades, relaciones, axiomas y restricciones, hasta la inspeccin y navegacin. A continuacin se presentan unas de las herramientas ms utilizadas por los desarrolladores de ontologas: Protg: Es un software libre de cdigo abierto implementado en Java, desarrollado en la Universidad de Stanford, que permite la construccin de ontologas de dominio. Es capaz de operar como una plataforma para acceder a otros sistemas basados en conocimiento o aplicaciones integradas, o como una librera que puede ser usada por otras aplicaciones para acceder y visualizar bases de conocimiento. La herramienta ofrece una interfaz grfica que permite al desarrollador de ontologas enfocarse en la modelacin conceptual sin que requiera de conocimientos de la sintaxis de los lenguajes de salida. Protg est disponible de manera gratuita, junto con los conectores y algunas

difusin de las variaciones relevantes de los datos del genotipo y fenotipo en respuesta a los medicamentos. Los conceptos claves sobre los cuales se construye PharmGKB incluyen: genes, medicamentos, enfermedades e informacin fenotpica (PharmGKB, 2005). Ontologa para mejorar los sistemas de bases de datos de terrorismo: Esta ontologa asiste a personas que se encargan de prevenir y mitigar actos de terrorismo como investigadores y agencias policiales, en tareas como identificacin, agrupamiento y clasificacin de documentos en el dominio del terrorismo. La ontologa proporciona la informacin necesaria para la creacin y mejoramiento de sistemas de bases de datos de terrorismo (Gruenwald y otros, 2003). Ontologas desarrolladas por STARLab Este laboratorio de investigacin lleva adelante el desarrollo de un conjunto de ontologas, entre los que destacan las siguientes: BonaTema: Sistema de ontologa y base de conocimiento, que contiene informacin biolgica sobre la levadura. OntoWeb: Ontologa cuyo objetivo es proporcionar a los investigadores y a las industrias que prestan servicios de ontologas, el intercambio de informacin en reas como recuperacin de informacin, administracin de conocimiento, bioinformtica y comercio electrnico. FFPOIROT: Esta ontologa, que estar disponible en varios idiomas (francs, ingles, alemn e italiano), proporcionar recursos de informacin orientados a la prevencin de fraudes para dominios de finanzas. Hipermuseum: Ontologa basada en Internet para apoyar el uso activo de datos digitales de museos en el aprendizaje y en presentaciones. Ontobasis: Fundamentos, construccin, servicios y aplicaciones de ontologas. Web Semantica: Se trata de una corriente promovida por el propio inventor de la Web y presidente del consorcio W3C, Tim Berners-Lee, cuya finalidad es lograr que las mquinas puedan entender y utilizar el contenido de la Web sin necesidad de la intervencin humana. Esta nueva Web estara formada por agentes inteligentes de software capaces de navegar y realizar operaciones por las personas para

ahorrarles trabajo y optimizar los resultados. Las tecnologas de la Web Semntica buscan desarrollar una Web ms cohesionada, donde sea ms fcil localizar, compartir e integrar la informacin y los servicios, para aprovechar al mximo los recursos disponibles (Castells, 2003). Para que la Web Semntica funcione, las computadoras deben tener acceso a colecciones estructuradas de informacin y conjuntos de reglas de inferencia, que puedan utilizar para llevar a cabo el razonamiento automtico. Estas necesidades se pueden satisfacer utilizando ontologas. 3. Methontology Es la metodologa que se uso para la implementacin de la ontologa del concesionario. Methontology: Desarrollada dentro del Grupo de Ingeniera Ontolgica de la Universidad Politcnica de Madrid. Tiene sus races en las actividades identificadas por el proceso de desarrollo de software propuesto por la organizacin IEEE y en otras metodologas de ingeniera de conocimientos.

Modelado conceptual de una ontologa

Figura 2. Tareas de methontology

El desarrollo de la metodologa consta de 11 tareas mencionadas a continuacin: En la tarea 1. Construir el glosario de trminos, en esta parte se incluyen todos los trminos relevantes del dominio del concesionario.

Definicin de reglas, usadas generalmente para inferir conocimiento en la ontologa. El ltimo paso es describir las instancias; nombre, nombre del concepto al que pertenece y los valores de sus atributos de instancia, si se conocen. 4. ONTOLOGA PARA LA VENTA DE VEHCULOS 3.1. Objetivo El objetivo de la Ontologa de Venta de Vehculos, es proporcionar al usuario informacin lo ms precisa posible sobre las diferentes formas de pago a las que este puede acceder para comprar el vehculo de su preferencia, como tambin informacin sobre el vehculo de su inters. Para ello cuenta con una interfaz sencilla que le permitir introducir los parmetros de bsqueda segn sus aspiraciones y finalmente obtener lo descrito anteriormente. 3.2. Taxonoma

Fig. 3. Glosario de trminos La siguiente tarea es construir la taxonoma de conceptos. (Ver figura 5) Tambin se construye un diagrama de relaciones binarias entre los elementos mencionados en el dominio.

Figura 4. Diagrama de relaciones binarias. Figura 5. Taxonoma de Venta de Vehculos. El siguiente paso es construir el diccionario de conceptos, el cual define los conceptos que estn dentro del dominio y se usan en la ontologa. Tambin se deben describir en detalle las relaciones binarias, de igual manera los atributos de instancias, y los de clase. Descripcin en detalle de las constantes. 5. IMPLEMENTACIN DE ONTOLOGA. Se definen los axiomas formales, esto es en lgica de primer orden. 4.1. Arquitectura 3.3. Tipos de Consultas Manejamos dos tipos de consultas: 1. Bsquedas por plan de financiacin, segn el vehculo. 2. Bsquedas por vehculo, segn atributos como color, modelo, cilindraje o precio.

El mini buscador se desarrollo de acuerdo a la siguiente ontologa:

Figura 6. Arquitectura utilizada. 4.1.1. Protege Protg es un software libre de cdigo abierto implementado en Java, desarrollado en la Universidad de Stanford, que permite la construccin de ontologas de dominio. La herramienta ofrece una interfaz grfica que permite al desarrollador de ontologas enfocarse en la modelacin conceptual sin que requiera de conocimientos de la sintaxis de los lenguajes de salida. El modelo de conocimiento de Protg est basado en marcos (frames). Las primitivas de representacin internas en Protg pueden ser redefinidas declarativamente, permitiendo tener representaciones apropiadas para una variedad de lenguajes de ontologas. Las primitivas de representacin (elementos de su modelo de conocimiento) proporcionan clases, instancias de esas clases, propiedades que representan los atributos de las clases y sus instancias, y restricciones que expresan informacin adicional sobre las propiedades. Protg comprueba la entrada de datos nuevos, y no permite dos clases o atributos con el mismo nombre. (ISCB, 2005). Protg tiene diferentes mecanismos de almacenamiento, incluyendo bases de datos relacionales, XML y archivos planos. 4.1.2. Ace view El ACE wiew es un plugin que est disponible para versiones de la 4.0 en delante de protg,

este plugin nos permite ingresar las reglas usando los cuantificadores adems de las reglas bsicas que l mismo crea a partir de las relaciones dadas en la ontologa. Es un editor de reglas en las ontologas con el fin de crear, ver, editar y consultar ontologas OWL y conjuntos de reglas (SWRL). Se puede crear bases del conocimiento OWL/SWRL trabajando solo con ACE, se pueden editar (agregar, quitar, modificar los axiomas de OWL y las reglas SWRL); adems de que cuenta con una variedad de vistas y da la posibilidad de ver las reglas como texto en lenguaje natural. 4.1.2. Netbens IDE Es un IDE de cdigo abierto escrito completamente en Java usando la plataforma NetBeans. Es una herramienta para programadores pensada para escribir, compilar, depurar y ejecutar programas. El NetBeans IDE soporta el desarrollo de todos los tipos de aplicacin Java (J2SE, web, EJB y aplicaciones mviles). Entre sus caractersticas se encuentra un sistema de proyectos basado en Ant, control de versiones y refactoring. Disponible en (http://netbeans.org/). 4.1.3. Jena Librera que permite manejar un modelo ontolgico desde java y administrar la forma en la que se almacenan dichos archivos. Entrega un API para trabajar con RDF, RDFS, OWL. Permite: Leer y escribir archivos en RDF (RDF/XML , N3 , N-Triple) Creacin, manipulacin, navegacin y consulta de datos RDF (grafos) en memoria. Inferencia sobre los datos.

Jena est disponible de manera gratuita, en su sitio Web (http:// http://jena.sourceforge.net/). 4.1.4. Sparql Es un lenguaje diseado para consultar y modificar ontologas. Se trata de un lenguaje con bastante similitud a SQL, la diferencia principal es que SQL supone que los datos estn implementados en tablas y SPARQL supone que

los datos estn implementados en grafos. Disponible en (http://www.w3.org/TR/rdf-sparqlquery/). 4.1.4.1 ARQ (A Sparql Processor for Jena): Es un motor de consulta para Jena que soporta SPARQL (el lenguaje de consulta estndar para RDF).Permite: Ejecutar consultas SPARQL Ejecucin de consultas en SPARQL endpoints SPARQL / Update Extensiones de SPARQL: agregacin (ej. count), group-by, subselect,negacin, Let, federated queries, property-paths Extender el lgebra de SPARQL y agregar funciones de filtro Se encuentra disponible de manera gratuita, en su sitio Web( http://jena.sourceforge.net/ARQ/ ). 4.2. Desarrollo Haciendo uso de proteg se desarrollo la ontologa de Venta de Vehiculos en formato OWL Full. Para el manejo de reglas se adicion a Proteg el Plugin Ace View, para poder definir reglas con lgica de primer orden. Luego se cargo en memoria este archivo desde el Netbeans IDE haciendo uso de las libreras de Jena, la que nos permiti realizar modificaciones sobre este archivo. Se uso las libreras de Sparql desde Netbeans IDE para realizar consultas. Se manejaron conceptos bsicos de programacin Java para la realizacin de mtodos tanto en la parte lgica como en la interfaz del proyecto, es decir, el proyecto es 100% Java. 4.2 Tabla de errores

4.3. Tabla de Resultados

Figura 7. Tabla de Resultados.

4.4. Vistas de la Aplicacin.

Figura 8. Ventana Principal de la aplicacin.

Figura 9. Ventana de Resultados. 5. CONCLUSIONES Con los conocimientos adecuados la implementacin de una ontologa con la ayuda de JENA y leguaje de bsquedas SPARQL, es exitosa debido a que JENA permite manejar el modelo de la ontologa desde java y adems proporciona un API para el trabajo con archivos RDF, RDFS y OWL. En cuanto a SPARQL nos encontramos con le ventaja de su similitud con SQL con la diferencia que este maneja los datos implementados en Grafos y no en tablas como SQL.

Figura 4. Tabla de errores.

9. RECOMENDACIONES Para la implementacin de una ontologa se hace necesaria la definicin de las herramientas que se va a utilizar y conocer su funcionamiento y las posibilidades de integracin que poseen es muy importante conocer la compatibilidad de cada versin y sus caractersticas. 10. REFERENCIAS Corcho O, Fernndez-Lpez M, Gmez-Prez A, Lpez-Cima Angel, Construccin de ontologas legales con la metodologa METHONTOLOGY y la herramienta WebODE, Ontological engineering: with examples from the areas of knowledge Facultad de Informtica. Universidad Politcnica de Madrid

11. PGINAS WEB www.ciens.ucv.ve/escueladecomputacio n/documentos/archivo/51 www.lsi.us.es/docencia/get.php?id=4347 http://sistemas.uniandes.edu.co/~isis270 1/dokuwiki/lib/exe/fetch.php?media=intro duccion_ontologias.ppt dcc.utalca.cl/~rangles/charlas/2010.10.2 0-Jena.pdf http://www.fdi.ucm.es/profesor/jpavon/do ctorado/desarrolloSMA.pdf

También podría gustarte