Your SlideShare is downloading. ×
Introduccion Jena
Introduccion Jena
Introduccion Jena
Introduccion Jena
Introduccion Jena
Introduccion Jena
Introduccion Jena
Introduccion Jena
Introduccion Jena
Introduccion Jena
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Introduccion Jena

2,196

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,196
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
70
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 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(); 
  • 10.
    • http://www.ibm.com/developerworks/websphere/library/tutorials/0703_george/0703_george.html?S_TACT=105AGY17&S_CMP=TECHSUG

×