SlideShare una empresa de Scribd logo
1 de 13
Descargar para leer sin conexión
Protégé - OWL
                 SPARQL




                                 http://www.w3.org/TR/rdf-sparql-query/

http://ontologias.blogs.upv.es
Protégé - OWL
                 SPARQL




                                 http://www.w3.org/TR/rdf-sparql-query/

http://ontologias.blogs.upv.es
SPARQL
SPARQL Protocol And RDF Query Language
3 especificaciones separadas:
   Lenguaje de queries.
   Formato XML de resultados de queries.
   Protocolo de acceso a los datos.
SPARQL: Patrones
 Se basa en casar patrones de tripletas con
 tripletas RDF.
    sujeto predicado objeto .

 Patrón básico:
    Secuencia de patrones de tripletas unido por un punto.
    Conjunción de sus patrones de tripletas.
    Ej.: ?x foaf:name ?name . ?x foaf:mbox ?mbox


 Patrón para instancias: predicado a (Ej.: ?s a ?o )
SPARQL: Queries
Declaraciones de prefijos:
abreviar URIs.
                                  #declaración prefijo
                                  PREFIX foo: <http://example.com/resources/>
Definición de datasets: indicar    ...
grafos RDF a interrogar.          #definición del dataset
                                  FROM ...
                                  #cláusula resultado
Cláusula resultado, indicar qué   SELECT ...
debe devolver la query.           #patrón del query
                                  WHERE {
                                  ...
Patrón de query, especificar lo    }
que se pide del dataset.          #modificadores del query
                                  ORDER BY ...

Modificadores de query, partir,
ordenar y reunir resultados.
SPARQL: Protégé
Vars. empiezan con un ?
y pueden ser cualquier
nodo (recurso o literal)
en el RDF dataset.

Cualquier parte de una
tripleta RDF puede ser
reemplazada con una var.

Resultado del SELECT:
tabla de vars. y valores
que satisfacen la query.
SPARQL: Formas

 SELECT * devuelve enlaces a todas
 las vars. mencionadas en la query.
 CONSTRUCT devuelve un grafo RDF.
 ASK devuelve si un patrón de grafo
 tiene o no solución.
SPARQL:
Restricciones en vars.
DISTINCT : elimina resultados duplicados.

FILTER:

    Sólo los results. que la exp. se evalúa a cierto.
                                                           PREFIX dc: <http://purl.org/dc/elements/1.1/>
    Expresiones Booleanas.                                 PREFIX ns: <http://example.org/ns#>
                                                           SELECT DISTINCT ?title ?price
    regex:
                                                           WHERE { ?x ns:price ?price .
          leng. de expres. regs. def. en XQuery 1.0            FILTER (?price < 30.5)
          and XPath 2.0                                    ?x dc:title ?title . }

          Logicas (!, &&, ||), Matemáticas (+, -, *, /),   PREFIX dc: <http://purl.org/dc/elements/1.1/>
          Comparación ( =, !=, >, <)
                                                           SELECT ?title
          Tests: isURI, isBlank, isLiteral, bound          WHERE { ?x dc:title ?title
                                                               FILTER regex(?title, "^SPARQL")     }
          str, lang, datatype

          Params. deben ser string.

          Tercer parám. opcional: indistinto a
          mayúsc./minúsc. “i”
SPARQL:
Patrones Opcionales
A veces no se puede
asumir que se dispondrá
de toda la información en
todos los grafos RDF.
                            PREFIX foaf: <http://xmlns.com/foaf/0.1/>
                            SELECT ?name ?mbox
Patrones Opcionales:        WHERE { ?x foaf:name ?name .
                                OPTIONAL { ?x foaf:mbox ?mbox }
permiten añadir               }

información tan sólo si
está disponible.

OPTIONAL
SPARQL:
Patrones Alternativos


Disyunción.   PREFIX dc10: <http://purl.org/dc/elements/1.0/>
              PREFIX dc11: <http://purl.org/dc/elements/1.1/>
              SELECT ?title
              WHERE { { ?book dc10:title ?title }
UNION                 UNION
                     { ?book dc11:title ?title }}
Ejercicios
Crear una ontología en Protégé
formada por 4 ficheros de noticias
de los almacenados por los grupos
de clase en el blog.
Combinar toda la información
guardándola en local, por medio de
la opción de menú Refactor/
Merge ontologies...
SPARQL: Ejercicios
  Extraer de manera incremental:
  1.   Todas las instancias de tu ontología, sin repetición.
  2.   Las cabeceras de todos los artículos almacenados.
  3.   El cuerpo de todos los artículos almacenados.
  4.   El creador o el editor de la noticia.
  5.   Modificar la opción anterior para que sólo sea si
       existe el creador o el editor. Si no, que no aparezca
       dicha información, pero sí la noticia.
  6.   Quedaros sólo con aquellas noticias de “El País”.
  7.   Reducir a aquellas que hacen referencia a Estados
       Unidos.
Aplicaciones: NYT
 http://developer.nytimes.com/
 http://open.blogs.nytimes.com/2010/03/30/
 build-your-own-nyt-linked-data-application/
 http://prototype.nytimes.com/gst/apitool/
 index.html?
 api_id=0&request_id=0&query=obama&facets=&
 begin_date=&fields=&offset=&rank=newest&resp
 _format=json&perform_request=Make
 +Request&use_pp=on
 http://open.blogs.nytimes.com/2012/12/10/
 timesopen-2012-hack-day-wrap-up/

Más contenido relacionado

La actualidad más candente

Web ontology language (owl)
Web ontology language (owl)Web ontology language (owl)
Web ontology language (owl)Ameer Sameer
 
The Semantic Web #6 - RDF Schema
The Semantic Web #6 - RDF SchemaThe Semantic Web #6 - RDF Schema
The Semantic Web #6 - RDF SchemaMyungjin Lee
 
1. introduccion a la programación orientada a objeto (poo)
1.  introduccion a la programación orientada a objeto (poo)1.  introduccion a la programación orientada a objeto (poo)
1. introduccion a la programación orientada a objeto (poo)Roberto Rojas
 
Diseño de Ontologías: Protégé OWL - Ejemplo de las Pizzas
Diseño de Ontologías: Protégé OWL - Ejemplo de las PizzasDiseño de Ontologías: Protégé OWL - Ejemplo de las Pizzas
Diseño de Ontologías: Protégé OWL - Ejemplo de las PizzasCarlos Casamayor
 
Tutorial on Ontology editor: Protege
Tutorial on Ontology editor: Protege Tutorial on Ontology editor: Protege
Tutorial on Ontology editor: Protege Biswanath Dutta
 
Ontology mapping for the semantic web
Ontology mapping for the semantic webOntology mapping for the semantic web
Ontology mapping for the semantic webWorawith Sangkatip
 
Fundamentos de POO
Fundamentos de POOFundamentos de POO
Fundamentos de POOgueritamala
 
RDFS In A Nutshell V1
RDFS In A Nutshell V1RDFS In A Nutshell V1
RDFS In A Nutshell V1Fabien Gandon
 
Functional Patterns with Java8 @Bucharest Java User Group
Functional Patterns with Java8 @Bucharest Java User GroupFunctional Patterns with Java8 @Bucharest Java User Group
Functional Patterns with Java8 @Bucharest Java User GroupVictor Rentea
 
Relational Database to RDF (RDB2RDF)
Relational Database to RDF (RDB2RDF)Relational Database to RDF (RDB2RDF)
Relational Database to RDF (RDB2RDF)EUCLID project
 

La actualidad más candente (20)

Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
 
Web ontology language (owl)
Web ontology language (owl)Web ontology language (owl)
Web ontology language (owl)
 
7 Curso de POO en java - diagrama de clases
7 Curso de POO en java - diagrama de clases7 Curso de POO en java - diagrama de clases
7 Curso de POO en java - diagrama de clases
 
The Semantic Web #6 - RDF Schema
The Semantic Web #6 - RDF SchemaThe Semantic Web #6 - RDF Schema
The Semantic Web #6 - RDF Schema
 
RDF data model
RDF data modelRDF data model
RDF data model
 
Poo en java herencia
Poo en java   herenciaPoo en java   herencia
Poo en java herencia
 
1. introduccion a la programación orientada a objeto (poo)
1.  introduccion a la programación orientada a objeto (poo)1.  introduccion a la programación orientada a objeto (poo)
1. introduccion a la programación orientada a objeto (poo)
 
Diseño de Ontologías: Protégé OWL - Ejemplo de las Pizzas
Diseño de Ontologías: Protégé OWL - Ejemplo de las PizzasDiseño de Ontologías: Protégé OWL - Ejemplo de las Pizzas
Diseño de Ontologías: Protégé OWL - Ejemplo de las Pizzas
 
Jena Programming
Jena ProgrammingJena Programming
Jena Programming
 
RDF, linked data and semantic web
RDF, linked data and semantic webRDF, linked data and semantic web
RDF, linked data and semantic web
 
Semana 1 Patrones de Diseño
Semana 1   Patrones de DiseñoSemana 1   Patrones de Diseño
Semana 1 Patrones de Diseño
 
Tutorial on Ontology editor: Protege
Tutorial on Ontology editor: Protege Tutorial on Ontology editor: Protege
Tutorial on Ontology editor: Protege
 
Repaso Diagramas Clase
Repaso Diagramas ClaseRepaso Diagramas Clase
Repaso Diagramas Clase
 
Ontology mapping for the semantic web
Ontology mapping for the semantic webOntology mapping for the semantic web
Ontology mapping for the semantic web
 
Desarrollo Orientado a Objetos
Desarrollo Orientado a ObjetosDesarrollo Orientado a Objetos
Desarrollo Orientado a Objetos
 
Fundamentos de POO
Fundamentos de POOFundamentos de POO
Fundamentos de POO
 
Gof design patterns
Gof design patternsGof design patterns
Gof design patterns
 
RDFS In A Nutshell V1
RDFS In A Nutshell V1RDFS In A Nutshell V1
RDFS In A Nutshell V1
 
Functional Patterns with Java8 @Bucharest Java User Group
Functional Patterns with Java8 @Bucharest Java User GroupFunctional Patterns with Java8 @Bucharest Java User Group
Functional Patterns with Java8 @Bucharest Java User Group
 
Relational Database to RDF (RDB2RDF)
Relational Database to RDF (RDB2RDF)Relational Database to RDF (RDB2RDF)
Relational Database to RDF (RDB2RDF)
 

Destacado

Monografia ontologias - Primera Aproximación
Monografia ontologias - Primera AproximaciónMonografia ontologias - Primera Aproximación
Monografia ontologias - Primera AproximaciónMarcos Umaño
 
Ontologías: definición, metodologías y buenas prácticas para su construcción....
Ontologías: definición, metodologías y buenas prácticas para su construcción....Ontologías: definición, metodologías y buenas prácticas para su construcción....
Ontologías: definición, metodologías y buenas prácticas para su construcción....Biblioteca Nacional de España
 
rNews - Parte II: Usando la ontología
rNews - Parte II: Usando la ontologíarNews - Parte II: Usando la ontología
rNews - Parte II: Usando la ontologíaCarlos Casamayor
 
Lenguaje de recuperación de datos en la web (sparql)
Lenguaje de recuperación de datos en la web (sparql)Lenguaje de recuperación de datos en la web (sparql)
Lenguaje de recuperación de datos en la web (sparql)Hugo Peña
 
Java and SPARQL
Java and SPARQLJava and SPARQL
Java and SPARQLRaji Ghawi
 
Introdução a web semântica e o case da globo.com
Introdução a web semântica e o case da globo.comIntrodução a web semântica e o case da globo.com
Introdução a web semântica e o case da globo.comRenan Moreira de Oliveira
 
Problemario Física, Ley Coulomb, Gauss, Potencial Electrico
Problemario Física, Ley Coulomb, Gauss, Potencial ElectricoProblemario Física, Ley Coulomb, Gauss, Potencial Electrico
Problemario Física, Ley Coulomb, Gauss, Potencial ElectricoAmy Avalos Guillen
 

Destacado (11)

Monografia ontologias - Primera Aproximación
Monografia ontologias - Primera AproximaciónMonografia ontologias - Primera Aproximación
Monografia ontologias - Primera Aproximación
 
Ontologías: definición, metodologías y buenas prácticas para su construcción....
Ontologías: definición, metodologías y buenas prácticas para su construcción....Ontologías: definición, metodologías y buenas prácticas para su construcción....
Ontologías: definición, metodologías y buenas prácticas para su construcción....
 
rNews - Parte II: Usando la ontología
rNews - Parte II: Usando la ontologíarNews - Parte II: Usando la ontología
rNews - Parte II: Usando la ontología
 
Lenguaje de recuperación de datos en la web (sparql)
Lenguaje de recuperación de datos en la web (sparql)Lenguaje de recuperación de datos en la web (sparql)
Lenguaje de recuperación de datos en la web (sparql)
 
Ontologia1
Ontologia1Ontologia1
Ontologia1
 
SPARQL
SPARQLSPARQL
SPARQL
 
Metodologia para ontologias
Metodologia para ontologiasMetodologia para ontologias
Metodologia para ontologias
 
SPARQL Tutorial
SPARQL TutorialSPARQL Tutorial
SPARQL Tutorial
 
Java and SPARQL
Java and SPARQLJava and SPARQL
Java and SPARQL
 
Introdução a web semântica e o case da globo.com
Introdução a web semântica e o case da globo.comIntrodução a web semântica e o case da globo.com
Introdução a web semântica e o case da globo.com
 
Problemario Física, Ley Coulomb, Gauss, Potencial Electrico
Problemario Física, Ley Coulomb, Gauss, Potencial ElectricoProblemario Física, Ley Coulomb, Gauss, Potencial Electrico
Problemario Física, Ley Coulomb, Gauss, Potencial Electrico
 

Similar a Diseño de Ontologías: Protégé - OWL: SPARQL

Similar a Diseño de Ontologías: Protégé - OWL: SPARQL (20)

Sparql
SparqlSparql
Sparql
 
Sparql
SparqlSparql
Sparql
 
Sparql
SparqlSparql
Sparql
 
Cagando Datos con APEX_DATA_PARSER
Cagando Datos con APEX_DATA_PARSERCagando Datos con APEX_DATA_PARSER
Cagando Datos con APEX_DATA_PARSER
 
Introducciขn a XQuery.pdf
Introducciขn a XQuery.pdfIntroducciขn a XQuery.pdf
Introducciขn a XQuery.pdf
 
Linked data con R
Linked data con RLinked data con R
Linked data con R
 
Sql
SqlSql
Sql
 
Sql
SqlSql
Sql
 
Scala en proyectos de vinculación Ancap-UR - 2013-03
Scala en proyectos de vinculación Ancap-UR - 2013-03Scala en proyectos de vinculación Ancap-UR - 2013-03
Scala en proyectos de vinculación Ancap-UR - 2013-03
 
Tutorial de cakePHP itst
Tutorial de cakePHP itstTutorial de cakePHP itst
Tutorial de cakePHP itst
 
Sql
SqlSql
Sql
 
Tutorial sql
Tutorial sqlTutorial sql
Tutorial sql
 
Sql
SqlSql
Sql
 
Práctica sql server [fbdr]
Práctica sql server [fbdr]Práctica sql server [fbdr]
Práctica sql server [fbdr]
 
Introduccion Jena
Introduccion JenaIntroduccion Jena
Introduccion Jena
 
Tutorial SQL
Tutorial SQLTutorial SQL
Tutorial SQL
 
Unidad 2-lenguaje-sql
Unidad 2-lenguaje-sqlUnidad 2-lenguaje-sql
Unidad 2-lenguaje-sql
 
Ddl
DdlDdl
Ddl
 
Sparql
Sparql Sparql
Sparql
 
Neo4j una guía rápida de devniel.com - parte ii
Neo4j   una guía rápida de devniel.com - parte iiNeo4j   una guía rápida de devniel.com - parte ii
Neo4j una guía rápida de devniel.com - parte ii
 

Diseño de Ontologías: Protégé - OWL: SPARQL

  • 1. Protégé - OWL SPARQL http://www.w3.org/TR/rdf-sparql-query/ http://ontologias.blogs.upv.es
  • 2. Protégé - OWL SPARQL http://www.w3.org/TR/rdf-sparql-query/ http://ontologias.blogs.upv.es
  • 3. SPARQL SPARQL Protocol And RDF Query Language 3 especificaciones separadas: Lenguaje de queries. Formato XML de resultados de queries. Protocolo de acceso a los datos.
  • 4. SPARQL: Patrones Se basa en casar patrones de tripletas con tripletas RDF. sujeto predicado objeto . Patrón básico: Secuencia de patrones de tripletas unido por un punto. Conjunción de sus patrones de tripletas. Ej.: ?x foaf:name ?name . ?x foaf:mbox ?mbox Patrón para instancias: predicado a (Ej.: ?s a ?o )
  • 5. SPARQL: Queries Declaraciones de prefijos: abreviar URIs. #declaración prefijo PREFIX foo: <http://example.com/resources/> Definición de datasets: indicar ... grafos RDF a interrogar. #definición del dataset FROM ... #cláusula resultado Cláusula resultado, indicar qué SELECT ... debe devolver la query. #patrón del query WHERE { ... Patrón de query, especificar lo } que se pide del dataset. #modificadores del query ORDER BY ... Modificadores de query, partir, ordenar y reunir resultados.
  • 6. SPARQL: Protégé Vars. empiezan con un ? y pueden ser cualquier nodo (recurso o literal) en el RDF dataset. Cualquier parte de una tripleta RDF puede ser reemplazada con una var. Resultado del SELECT: tabla de vars. y valores que satisfacen la query.
  • 7. SPARQL: Formas SELECT * devuelve enlaces a todas las vars. mencionadas en la query. CONSTRUCT devuelve un grafo RDF. ASK devuelve si un patrón de grafo tiene o no solución.
  • 8. SPARQL: Restricciones en vars. DISTINCT : elimina resultados duplicados. FILTER: Sólo los results. que la exp. se evalúa a cierto. PREFIX dc: <http://purl.org/dc/elements/1.1/> Expresiones Booleanas. PREFIX ns: <http://example.org/ns#> SELECT DISTINCT ?title ?price regex: WHERE { ?x ns:price ?price . leng. de expres. regs. def. en XQuery 1.0 FILTER (?price < 30.5) and XPath 2.0 ?x dc:title ?title . } Logicas (!, &&, ||), Matemáticas (+, -, *, /), PREFIX dc: <http://purl.org/dc/elements/1.1/> Comparación ( =, !=, >, <) SELECT ?title Tests: isURI, isBlank, isLiteral, bound WHERE { ?x dc:title ?title FILTER regex(?title, "^SPARQL") } str, lang, datatype Params. deben ser string. Tercer parám. opcional: indistinto a mayúsc./minúsc. “i”
  • 9. SPARQL: Patrones Opcionales A veces no se puede asumir que se dispondrá de toda la información en todos los grafos RDF. PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?name ?mbox Patrones Opcionales: WHERE { ?x foaf:name ?name . OPTIONAL { ?x foaf:mbox ?mbox } permiten añadir } información tan sólo si está disponible. OPTIONAL
  • 10. SPARQL: Patrones Alternativos Disyunción. PREFIX dc10: <http://purl.org/dc/elements/1.0/> PREFIX dc11: <http://purl.org/dc/elements/1.1/> SELECT ?title WHERE { { ?book dc10:title ?title } UNION UNION { ?book dc11:title ?title }}
  • 11. Ejercicios Crear una ontología en Protégé formada por 4 ficheros de noticias de los almacenados por los grupos de clase en el blog. Combinar toda la información guardándola en local, por medio de la opción de menú Refactor/ Merge ontologies...
  • 12. SPARQL: Ejercicios Extraer de manera incremental: 1. Todas las instancias de tu ontología, sin repetición. 2. Las cabeceras de todos los artículos almacenados. 3. El cuerpo de todos los artículos almacenados. 4. El creador o el editor de la noticia. 5. Modificar la opción anterior para que sólo sea si existe el creador o el editor. Si no, que no aparezca dicha información, pero sí la noticia. 6. Quedaros sólo con aquellas noticias de “El País”. 7. Reducir a aquellas que hacen referencia a Estados Unidos.
  • 13. Aplicaciones: NYT http://developer.nytimes.com/ http://open.blogs.nytimes.com/2010/03/30/ build-your-own-nyt-linked-data-application/ http://prototype.nytimes.com/gst/apitool/ index.html? api_id=0&request_id=0&query=obama&facets=& begin_date=&fields=&offset=&rank=newest&resp _format=json&perform_request=Make +Request&use_pp=on http://open.blogs.nytimes.com/2012/12/10/ timesopen-2012-hack-day-wrap-up/