Introduccion Jena

  • View
    2.203

  • Download
    3

Embed Size (px)

Text of Introduccion Jena

  • 1. Por:Jorge Fierro

2.

  • Jena es unFrameworkcreado en java por HP Labs que permite la manipulacin de meta datos para la utilizacin de la Semantic Web, con la capacidad de implementar los modelos RDF (Resource Description Framework) y RDQL (RDF Data Query Language). Jena permite leer, recorrer y modificar grafos basados en OWL para la realizacin de aplicaciones OWL.La utilizacin de estos modelos es aceptada por la W3C.

3.

  • RDF.- (Resource Description Framework) es un lenguaje semntico creado por W3C permite la creacin de meta datos para la representacin de recursos web. RDF es un lenguaje semejante a XML que permite la creacin de informacin semntica utilizando la estructura XML. Define una estructura para implementar la semntica de la informacin identificando objetos y sus propiedades. Provee primitivas para utilizar expresiones que poseen (sujeto, predicado, objeto).

4.

  • Mediante esta estructura permiten la representacin de metadatos RDF.
  • Ejemplo de una primitiva en RDF donde se especifica ttulo, autor, tipo, propiedades:
  • Collaborative Mapping with RDF
  • http:///article02
  • Jo Walsh

5.

  • Es un lenguaje de consultas que permiten extraer metadatos de archivos disponibles en una url determinada que estn implementados en RDF. Un ejemplo de consulta RDF es el siguiente:
  • SELECT ?r, ?a
  • WHERE (?r, , ), (?r, , ?a)
  • USING doc FOR

6.

  • Jena permite consumir estos metadatos disponibles mediante las peticiones del mensaje de consulta donde una sentencia es (?r ,, Concept). Concept es la informacin que ser buscada. Todos los metadatos son almacenados en repositorios RDF o base de conocimiento con sentencias predefinidas de la forma sujeto-predicado-objeto.

7.

  • // Declaraciones
  • String tipo = "http://family/";
  • String relacion = "http://purl.org/vocab/relationship/";
  • // Creacin de un modelo
  • Model modelo = ModeloFactory.createDefaultModel();
  • // Creacion de los recursos
  • Resource luis = modelo.createResource(tipo+"luis");
  • Resource angel = modelo.createResource(tipo+"angel");
  • Resource maria = modelo.createResource(tipo+"maria");
  • Resource laura = modelo.createResource(tipo+"laura");
  • // Creacin de las propiedades y la relacin
  • Property chico = modelo.createProperty(relacion,"chico");
  • Property padres= modelo.createProperty(relacion," padres ");
  • Property hermano = modelo.createProperty(relacion," angel ");
  • Property esposos = modelo.createProperty(relacion," esposos");

8.

  • luis.addProperty(hermano, angel);
  • luis.addProperty(esposos, laura);
  • luis.addProperty(padres,carlos);
  • Statement declaracion = modelo.createStatement(luis, padres,juan);
  • modelo.add(declaracion);
  • ResIterator padres = modelo.listSubjectsWithProperty(padres);
  • while (padres.hasNext()) {
  • Resource persona = padres.nextResource();
  • System.out.println(persona.getURI());
  • }
  • NodeIterator interaciones = modelo.listObjectsOfProperty(chico);
  • NodeIterator interacion = modelo.listObjectsOfProperty(luis, hermano);

9.

  • Para la utilizacin de una consulta utilizando RDQL la sintaxis es la siguiente:
  • SELECT?definition
  • WHERE(?concept, , "domestic dog"),(?concept, , ?definition)
  • USINGwn FOR
  • // Creacion de una consulta
  • Query consulta = new Query(consulta_string);
  • consulta.setSource(modelo);
  • QueryEngine consulta_e = new QueryEngine(consulta);
  • QueryResults resultado = consulta_e.exec();

10.

  • http://www.ibm.com/developerworks/websphere/library/tutorials/0703_george/0703_george.html?S_TACT=105AGY17&S_CMP=TECHSUG