Lenguaje de recuperación de datos en la web (sparql)

30
Por: Hugo Peña Ing. Nelson Piedra LENGUAJE DE RECUPERACIÓN DE DATOS EN LA WEB SEMÁNTICA (SPARQL)

Transcript of Lenguaje de recuperación de datos en la web (sparql)

Por: Hugo Peña

Ing. Nelson Piedra

LENGUAJE DE RECUPERACIÓN DE DATOS EN LA WEB SEMÁNTICA

(SPARQL)

INTRODUCCIÓN: DEBILIDADES DE LA WEB

Satisfacción de necesidades limitadas.

• Los motores de búsqueda se caracterizan por:

Su poca precisión.

Su poca sensibilidad al significado de las palabras de búsqueda.

“Evitar la guerra” ≠ “Conseguir la paz”

Solución:

Inclusión de Metadatos ↔ Web Semántica

En cada una de estas capas se han definido o están en proceso de definición estándares, entre los más importantes podemos citar a:

•XML: Que proporciona la base sintáctica para la estructuración de documentos, sin considerar semántica.

•RDF: Modelo de datos para definir recursos y sus interrelaciones, estos se expresan mediante XML.

•OWL: Que desarrolla ontologías asociados a los recursos.

•SPARQL: Protocolo y lenguaje de consulta propuesto como estándar por el W3C.

Ivan Herman hace una especificación adicional sobre las capas de la web semántica, mostrando a SPARQL como un componente importante dentro de la recuperación de información a través de RDF

TRIPLETAS

• El sujeto es el recurso, es decir, es lo que se está describiendo.

• El predicado es la propiedad o relación que se desea establecer acerca del recurso.

• el objeto es el valor de la propiedad o el otro recurso con el que se establece la relación.

EJEMPLO EN MODO GRAFICO

E l s i t i oh t t p : / / w 3 c . o r g

W o r l d W i d e W e bC o n s o r t i u m

T i e n e e l t í t u l o

PRESENTACIÓN

Simple Protocol and RDF Query Language, Lenguaje de consulta del ámbito

de la Web Semántica de W3C. Define la sintaxis y la semántica necesarias para

una expresión de consulta sobre un grafo RDF y las diferentes formas de

resultados obtenidos.

OBJETIVO

• Es devolver todas las tripletas o componentes solicitados basándose en la comparación de una tripleta pasada como parámetro de la consulta (grafo básico) con todas las tripletas que componen el grafo RDF.

• Las consultas SPARQL cubren tres objetivos:

Extraer información en forma de URIs y literales.

Extraer sub-estructuras RDF.

Construir nuevas estructuras RDF partiendo de resultados de consultas.

CARACTERISTICAS

SPARQL es un lenguaje consultivo para RDF. Corre en paralelo al estándar SQL de bases de datos relacionales.

Recomendación oficial de W3C del 15 de Enero de 2008.

Estandarizado por Data Access Working Group (DAWG) de W3C.

Considerado componente de la Web Semántica.

Implementado en varios lenguajes y bases de datos.

Ayuda a obtener los recursos de diferentes fuentes identificables.

SPARQL. SINTAXIS.

• Tiene dos posibles componentes :BASE y PREFIX.

BASE<iri>

• Permite cambiar la dirección URI de la base de referencias relativas dentro de la consulta. Por ejemplo, los fragmentos siguientes pueden hacer referencia a la misma IRI (Internationalized Resource Identifier).

<http://example.org/book/book1>

BASE http://example.org/book/

<book1>

PREFIX book: http://example.org/book/

book:book1

SPARQL. SINTAXIS BÁSICA.

PREFIX

Equivalente a la declaración namespace en XML.

Define los prefijos para los espacios de nombres.

Asocia una URI a una etiqueta que se usará mas adelante en la consulta.

Podemos tener cero o más de las siguientes cláusulas

PREFIX <prefijo> : <URI>

Se hace referencia al prefijo con “:” en la consulta.

Se puede definir un prefijo por defecto:

PREFIX : <URI>

SPARQL. SINTAXIS. CLÁUSULAS QUERY RESULT FORM

SELECT

Cláusula requerida en toda consulta.

Similar al uso especificado por el estándar SQL

Define las variables a retornar como resultados, cuyos nombres deben empezar con ‘?’, y separadas por ‘,’ ejemplo: ?apellido

DESCRIBE

Devuelve un grafo RDF describiendo los recursos encontrados.

Puede ser fuente de datos para otra consulta.

Es opcional.

ASK

Devuelve una variable booleana indicando si la combinación

Sujeto-Predicado-Objeto de consulta existe en la ontología RDF consultada.

Es opcional.

FROM

La consulta SPQRL da respuesta a un grafo RDF.

La cláusula FROM identifica los datos sobre los que se ejecutará la consulta.

Es opcional.

En caso de no estar incluida en la consulta, el motor de proceso de consultas toma como fuente de datos todos los grafos RDF disponibles.

En caso de múltiples FROM, la consulta se realiza sobre la fusión de todos los grafos RDF nombrados.

WHERE

Patrón de la consulta con una o más tripletas encerradas entre {}.

Cláusula requerida en caso del Query Result Form ASK.

OPTIONAL

Para indicar patrones opcionales. Es opcional.

Para imponer constricciones adicionales al patrón de búsqueda.

FILTER

Para imponer constricciones adicionales al patrón de búsqueda.

DISTINCT

Asegura la unicidad de los resultados.

REDUCED

Permite eliminar las respuestas duplicadas.

SPARQL. SINTAXIS. CLÁUSULAS. QUERY RESULTS

ORDER BY

Tiene la misma funcionalidad que la definida en SQL.

Es opcional.

LIMIT n

Restringe el número de soluciones devueltas.

Es opcional.

OFFSET m

Tiene la misma funcionalidad que la definida en SQL.

Es opcional.

EJEMPLO DE CONSULTAS

SPARQL. Sintaxis.

SPARQL. CONSULTAS.

SPARQL. CONSULTAS.

SPARQL. CONSULTAS (FILTRADO LITERALES)

SPARQL. CONSULTAS (CONSTRUCT)

SPARQL. EJEMPLOS DE CONSULTA (ASK)

SPARQL.EJEMPLOS DE CONSULTAS(OPTIONAL I)

SPARQL.EJEMPLOS DE CONSULTAS(OPTIONAL II)

SPARQL. EJEMPLOS DE CONSULTAS (UNION I)

SPARQL. EJEMPLOS DE CONSULTAS (UNION II)

SPARQL. EJEMPLOS DE CONSULTAS (UNION III)

SINTAXIS DE TRIPLETAS

CONCLUSIONES

Es muy parecido a SQL en la elaboración de consultas, con una serie de diferencias propias de cada modelo.

Es el principal lenguaje de consulta utilizado en la Web Semántica.

Muchas plataformas de RDF ya lo implementan (Protegé y Jena Semantic Web Toolkit).

Existe poca información sobre ello ya que es reciente en W3C.

Su versión de actualización SPARQL/Update no es recomendación aún.

GRACIAS