SlideShare una empresa de Scribd logo
Por:  Jorge Fierro
Jena es un  Framework  creado en java por HP Labs que permite la manipulación de meta datos para la utilización 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 realización de aplicaciones OWL.  La utilización de estos modelos es aceptada por la W3C.
RDF.- (Resource Description Framework) es un lenguaje semántico creado por W3C permite la creación de meta datos para la representación de recursos web. RDF es un lenguaje semejante a XML que permite la creación de información semántica utilizando la estructura XML. Define una estructura para implementar la semántica de la información identificando objetos y sus propiedades. Provee primitivas para utilizar expresiones que poseen (sujeto, predicado, objeto).
Mediante esta estructura permiten la representación de metadatos RDF. Ejemplo de una primitiva en RDF donde se especifica título, autor, tipo, propiedades: <rdf:Description rdf:about=“#article02&quot;> <rdf:type rdf:resource=“#article&quot; /> <dc:title>Collaborative Mapping with RDF</dc:title> <doc:url.>http://…/article02</doc:url> <doc:hasConcept rdf:resource=“#KnowledgeBase&quot; /> <doc:author> <foaf:person> <foaf:name>Jo Walsh</foaf:name> <foaf:mbox rdf:resource=”mailto:jw@frot.org“ /> </foaf:person> </doc:author> </rdf:Description>
Es un lenguaje de consultas que permiten extraer metadatos de archivos disponibles en una url determinada que están implementados en RDF. Un ejemplo de consulta RDF es el siguiente: SELECT ?r, ?a WHERE (?r, <doc:hasConcept>, <concept>), (?r, <doc:author>, ?a) USING doc FOR <http://www.ece.uprm.edu/~s012127/2003/docs/documents_ont.rdf#>
Jena permite consumir estos metadatos disponibles mediante las peticiones del mensaje de consulta donde una sentencia es (?r ,<#hasConcept>, Concept). Concept es la información que será buscada. Todos los metadatos son almacenados en repositorios RDF o base de conocimiento con sentencias predefinidas de la forma sujeto-predicado-objeto.
// Declaraciones String tipo = &quot;http://family/&quot;; String relacion = &quot;http://purl.org/vocab/relationship/&quot;;   // Creación de un modelo Model modelo = ModeloFactory.createDefaultModel();   // Creacion de los recursos  Resource luis = modelo.createResource(tipo+&quot;luis&quot;); Resource angel = modelo.createResource(tipo+&quot;angel&quot;); Resource maria = modelo.createResource(tipo+&quot;maria&quot;); Resource laura = modelo.createResource(tipo+&quot;laura&quot;);  // Creación de las propiedades y la relación Property chico = modelo.createProperty(relacion,&quot;chico&quot;); Property padres= modelo.createProperty(relacion,&quot; padres &quot;); Property hermano = modelo.createProperty(relacion,&quot; angel &quot;); Property esposos = modelo.createProperty(relacion,&quot; esposos&quot;);
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);
Para la utilización de una consulta utilizando RDQL la sintaxis es la siguiente:   SELECT  ?definition  WHERE  (?concept, <wn:wordForm>, &quot;domestic dog&quot;),  (?concept, <wn:glossaryEntry>, ?definition)  USING  wn FOR <http://www.cogsci.princeton.edu/~wn/schema/>     // Creacion de una consulta  Query consulta = new Query(consulta_string); consulta.setSource(modelo); QueryEngine consulta_e = new QueryEngine(consulta); QueryResults resultado = consulta_e.exec(); 
http://www.ibm.com/developerworks/websphere/library/tutorials/0703_george/0703_george.html?S_TACT=105AGY17&S_CMP=TECHSUG

Más contenido relacionado

PPT
Lenguaje de recuperación de datos en la web (sparql)
PPT
Websemanticasidar03
PDF
PPTX
123 bd
PPTX
Mapeo de objeto relacional
PDF
Mapeo de objeto relacional
PPT
Agrovoc cswb training_1
PPTX
Sparql
Lenguaje de recuperación de datos en la web (sparql)
Websemanticasidar03
123 bd
Mapeo de objeto relacional
Mapeo de objeto relacional
Agrovoc cswb training_1
Sparql

La actualidad más candente (10)

PPT
Websemantica
PPTX
Sparql
PPT
Servicios Web SemáNticos
DOCX
Informatica
PDF
Web Semántica y Linked Data
PPTX
Métodos de búsqueda
PPT
Presentacion Internet2
PPT
Presentacion Internet2
PDF
Archivos aleatorios
PPTX
Luis lopez
Websemantica
Sparql
Servicios Web SemáNticos
Informatica
Web Semántica y Linked Data
Métodos de búsqueda
Presentacion Internet2
Presentacion Internet2
Archivos aleatorios
Luis lopez
Publicidad

Similar a Introduccion Jena (20)

PPT
Parte 2. web semantica eva mendez - argentina - 301009
PPTX
Tripletas De Sistemas Basados En El Conocimiento
PPTX
Tripletas De Sistemas Basados En El Conocimiento
PPTX
Tripletas De Sistemas Basados En El Conocimiento
PPTX
Tripletas De Sistemas Basados En El Conocimiento
PPTX
Trabajo web semantica
PPT
Websemanticasidar03
PPT
Web semanticasidar 03
PPT
Web 3.0
PPT
Websemanticasidar03
PPT
Websemanticasidar03
PPT
XML Y RDF En Web SemáNtica
PPT
XML y RDF en Web Semántica
PPT
Presentacion swoogle
PPT
Introducción a la Web Semántica
DOCX
Web semántica y sus principales características
PDF
ROH: Proceso de Ingeniería Ontológica & Uso y Extensión de Vocabularios Estándar
PDF
Datos En La Web - Clase 2
PPT
Webs 3.0
DOCX
Evaluación de base de datos rdf
Parte 2. web semantica eva mendez - argentina - 301009
Tripletas De Sistemas Basados En El Conocimiento
Tripletas De Sistemas Basados En El Conocimiento
Tripletas De Sistemas Basados En El Conocimiento
Tripletas De Sistemas Basados En El Conocimiento
Trabajo web semantica
Websemanticasidar03
Web semanticasidar 03
Web 3.0
Websemanticasidar03
Websemanticasidar03
XML Y RDF En Web SemáNtica
XML y RDF en Web Semántica
Presentacion swoogle
Introducción a la Web Semántica
Web semántica y sus principales características
ROH: Proceso de Ingeniería Ontológica & Uso y Extensión de Vocabularios Estándar
Datos En La Web - Clase 2
Webs 3.0
Evaluación de base de datos rdf
Publicidad

Más de Jorge Fierro (6)

PDF
Manual Correlación
PPT
Redes Neuronales
PPT
Redes Bayesianas
PPT
Redes Neuronales
PPT
Algoritmos Evolutivos
PPT
Algoritmos Evolutivos
Manual Correlación
Redes Neuronales
Redes Bayesianas
Redes Neuronales
Algoritmos Evolutivos
Algoritmos Evolutivos

Introduccion Jena

  • 1. Por: Jorge Fierro
  • 2. Jena es un Framework creado en java por HP Labs que permite la manipulación de meta datos para la utilización 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 realización de aplicaciones OWL. La utilización de estos modelos es aceptada por la W3C.
  • 3. RDF.- (Resource Description Framework) es un lenguaje semántico creado por W3C permite la creación de meta datos para la representación de recursos web. RDF es un lenguaje semejante a XML que permite la creación de información semántica utilizando la estructura XML. Define una estructura para implementar la semántica de la información identificando objetos y sus propiedades. Provee primitivas para utilizar expresiones que poseen (sujeto, predicado, objeto).
  • 4. Mediante esta estructura permiten la representación de metadatos RDF. Ejemplo de una primitiva en RDF donde se especifica título, autor, tipo, propiedades: <rdf:Description rdf:about=“#article02&quot;> <rdf:type rdf:resource=“#article&quot; /> <dc:title>Collaborative Mapping with RDF</dc:title> <doc:url.>http://…/article02</doc:url> <doc:hasConcept rdf:resource=“#KnowledgeBase&quot; /> <doc:author> <foaf:person> <foaf:name>Jo Walsh</foaf:name> <foaf:mbox rdf:resource=”mailto:jw@frot.org“ /> </foaf:person> </doc:author> </rdf:Description>
  • 5. Es un lenguaje de consultas que permiten extraer metadatos de archivos disponibles en una url determinada que están implementados en RDF. Un ejemplo de consulta RDF es el siguiente: SELECT ?r, ?a WHERE (?r, <doc:hasConcept>, <concept>), (?r, <doc:author>, ?a) USING doc FOR <http://www.ece.uprm.edu/~s012127/2003/docs/documents_ont.rdf#>
  • 6. Jena permite consumir estos metadatos disponibles mediante las peticiones del mensaje de consulta donde una sentencia es (?r ,<#hasConcept>, Concept). Concept es la información 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 = &quot;http://family/&quot;; String relacion = &quot;http://purl.org/vocab/relationship/&quot;;   // Creación de un modelo Model modelo = ModeloFactory.createDefaultModel();   // Creacion de los recursos Resource luis = modelo.createResource(tipo+&quot;luis&quot;); Resource angel = modelo.createResource(tipo+&quot;angel&quot;); Resource maria = modelo.createResource(tipo+&quot;maria&quot;); Resource laura = modelo.createResource(tipo+&quot;laura&quot;);  // Creación de las propiedades y la relación Property chico = modelo.createProperty(relacion,&quot;chico&quot;); Property padres= modelo.createProperty(relacion,&quot; padres &quot;); Property hermano = modelo.createProperty(relacion,&quot; angel &quot;); Property esposos = modelo.createProperty(relacion,&quot; esposos&quot;);
  • 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 utilización de una consulta utilizando RDQL la sintaxis es la siguiente:   SELECT ?definition  WHERE (?concept, <wn:wordForm>, &quot;domestic dog&quot;), (?concept, <wn:glossaryEntry>, ?definition)  USING wn FOR <http://www.cogsci.princeton.edu/~wn/schema/>   // Creacion de una consulta Query consulta = new Query(consulta_string); consulta.setSource(modelo); QueryEngine consulta_e = new QueryEngine(consulta); QueryResults resultado = consulta_e.exec();