web semántica y linked data

43
Web Semántica y Linked Data Rafael Ramos - @rrasmo Betabeers Zaragoza

Upload: rafael-ramos

Post on 28-May-2015

604 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Web Semántica y Linked Data

Web Semánticay Linked Data

Rafael Ramos - @rrasmoBetabeers Zaragoza

Page 2: Web Semántica y Linked Data

Sumario

● Conceptos● Arquitectura● Estado actual

Page 3: Web Semántica y Linked Data

Conceptos

Page 4: Web Semántica y Linked Data

La Visión

"The Semantic Web is an extension of the current web in which information is given well-defined meaning, better enabling computers and people to work in cooperation."

Tim Berners-Lee, James Hendler, Ora Lassila,

The Semantic Web, Scientific American, May 2001

http://www.scientificamerican.com/article/the-semantic-web/

Page 5: Web Semántica y Linked Data

Semántica

● Estudio del significado (?)– Concepto denotado por símbolos

“Oso”

Objeto

SímboloConcepto

Page 6: Web Semántica y Linked Data
Page 7: Web Semántica y Linked Data

Datos

Datos comprensibles por máquinas

Datos que pueden ser procesados

Datos estructurados

Page 8: Web Semántica y Linked Data
Page 9: Web Semántica y Linked Data

Web

● URL– Identificadores universales

● HTTP– Protocolo de transporte

● HTML– Lenguaje de presentación

Hipertexto

Page 10: Web Semántica y Linked Data

Limitaciones de la Web

● Lenguaje natural● Búsqueda imprecisa● Enlaces sin significado

#?*!$

#?*!$

???

Page 11: Web Semántica y Linked Data

Web de Documentos

Web de Datos

Page 12: Web Semántica y Linked Data

Es necesario...

● Formato común● Vocabularios compartidos● Identificadores globales

=> Base de datos global

Page 13: Web Semántica y Linked Data

La Web Semántica

“The Semantic Web provides a common framework that allows data to be shared and reused across application, enterprise, and community boundaries.”

W3C Semantic Web Activity

http://www.w3.org/2001/sw/

Page 14: Web Semántica y Linked Data

Arquitectura

Page 15: Web Semántica y Linked Data
Page 16: Web Semántica y Linked Data

RDF

● Resource Description Framework

● Modelo de datos

– Almacenamiento

– Intercambio● Se basa en objetos atómicos interconectados

Recursohttp://www.w3.org/RDF/

Page 17: Web Semántica y Linked Data

Triplas

● La estructura básica es la Tripla

– (Sujeto, Predicado, Objeto)● Representa relaciones entre objetos

● Los recursos y los enlaces tienen identificador (URI)

Jua n LuisamigoDe

Page 18: Web Semántica y Linked Data

Grafos

● Las triplas forman grafos

● Nodos

– Recursos● Con URI

– Literales● Sin URI● Siempre son objeto

● Pueden ser distribuidos

Juan

Luis

amigoDe

“Juan”nombre

30edad

Zaragoza

viveEn

Page 19: Web Semántica y Linked Data

URIs

● URIs

– Identificadores globales● Identidad● Localización

● Namespaces

– Parte de la URI que denota un dataset

– Se pueden asociar a prefijos

PREFIX dbpedia: <http://dbpedia.org/resource/>PREFIX foaf: <http://xmlns.com/foaf/0.1/>

dbpedia:Johnny_Cash foaf:name “Johnny Cash”

http://dbpedia.org/resource/Johnny_Cash

Page 20: Web Semántica y Linked Data

Serialización - Turtle

@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .@prefix dc: <http://purl.org/dc/elements/1.1/> .@prefix foaf: <http://xmlns.com/foaf/0.1/> .@prefix s: <http://www.w3.org/2000/01/rdf-schema#> .@prefix con: <http://www.w3.org/2000/10/swap/pim/contact#> .

<http://www.w3.org/People/Berners-Lee/card#i> a foaf:Person ; foaf:img <http://www.w3.org/Press/Stock/Berners-Lee/2001-europaeum-eighth.jpg> ; foaf:name "Tim Berners-Lee" . foaf:knows <http://bblfish.net/people/henry/card#me>,

<http://danbri.org/foaf#danbri> ;

http://www.w3.org/TR/turtle/

Page 21: Web Semántica y Linked Data

Serialización - RDF/XML

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:s="http://www.w3.org/2000/01/rdf-schema#" xmlns:con="http://www.w3.org/2000/10/swap/pim/contact#">

<rdf:Description rdf:about="http://www.w3.org/People/Berners-Lee/card#i"><rdf:type rdf:resource="http://xmlns.com/foaf/0.1/Person"/><foaf:img

rdf:resource="http://www.w3.org/Press/Stock/Berners-Lee/2001-europaeum-eighth.jpg"/>

<foaf:name>Tim Berners-Lee</foaf:name><foaf:knows rdf:resource="http://bblfish.net/people/henry/card#me"/><foaf:knows rdf:resource="http://danbri.org/foaf#danbri"/>

</rdf:Description></rdf:RDF>

http://www.w3.org/TR/rdf-syntax-grammar/

Page 22: Web Semántica y Linked Data

RDFS

● RDF Schema

● Vocabulario para definir esquemas de datos en RDF

– Clases

– Propiedades

● Permite crear jerarquías de clases e imponer restricciones en las propiedades

http://www.w3.org/TR/rdf-schema/

rdfs:Class rdfs:subClassOfrdf:Property rdfs:subPropertyOfrdfs:Literal rdfs:domainrdfs:Resource rdfs:range

Page 23: Web Semántica y Linked Data

Esquemas de datos

dbpedia:Jimmy_Page dbpedia:Hestondbpedia-owl:birthPlace

Place

Artist

Person

rdf:type

rdf:type

birthPlace

rdfs:domainrdfs:range

rdfs:subClassOf

rdf:Propertyrdfs:Class

rdfs:Class

rdf:type

rdf:type rdf:type

T-Box

A-Box

Page 24: Web Semántica y Linked Data

Esquemas de datos

● El esquema de datos forma parte de los datos– Flexibilidad para el cambio

– Datos auto-descriptivos

– Esquemas compartidos

Page 25: Web Semántica y Linked Data

Vocabularios

● Foaf: personas, relaciones sociales

● Dublin Core: metadatos genéricos

● SKOS: organización del conocimiento

● Good Relations: comercio electrónico

● SIOC: comunidades sociales

● …

– Conviene reutilizar y combinar vocabularios existentes

– Se pueden extender fácilmente

Page 26: Web Semántica y Linked Data

SPARQL

● SPARQL Protocol and RDF Query Language

● Lenguaje de consulta para RDF

– Similar a SQL

● Basado en patrones, devuelve datos que encajan

● Protocolo

– Enviar consulta en HTTP GET

– Obtener resultados en respuesta

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

GET /sparql/?query=EncodedQuery HTTP/1.1Host: www.exampleUser-agent: my-sparql-client/0.1

Page 27: Web Semántica y Linked Data

SelectPREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>PREFIX dbpedia: <http://dbpedia.org/resource/>PREFIX dbpediaowl: <http://dbpedia.org/ontology/>

SELECT ?place ?countryWHERE {

dbpedia:Jimmy_Page dbpedia-owl:birthPlace ?place .?place dbpediaowl:country ?country

}

● Devuelve una lista de valores válidos para cada variable

place country

dbpedia:Heston dbpedia:United_Kingdom

Page 28: Web Semántica y Linked Data

Construct

● Construye un grafo a partir de los valores encontrados

dbpedia:Jimmy_Page

PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>PREFIX dbpedia: <http://dbpedia.org/resource/>PREFIX dbpediaowl: <http://dbpedia.org/ontology/>

CONSTRUCT { dbpedia:Jimmy_Page foaf:based_near ?country}WHERE {

dbpedia:Jimmy_Page dbpedia-owl:birthPlace ?place .?place dbpediaowl:country ?country

}

dbpedia:United_Kingdomfoaf:based_near

Page 29: Web Semántica y Linked Data

Ontologías

● Clasificación de conceptos

“An ontology is an explicit, formal specification of a shared conceptualization”

Thomas R. Gruber: A Translation Approach to Portable Ontology

Specifications.Knowledge Acquisition, 5(2):199-220, 1993.

● Clases, instancias, atributos

● Restricciones sobre clases y propiedades

– Lógica formal

Page 30: Web Semántica y Linked Data

OWL

● Web Ontology Language

● Permite definir ontologías (esquemas de clases) mediante lógica formal

– Clases● Conjunción, Disjunción, Negación...

– Propiedades● Inversas, Transitivas, Funcionales...

● Asunción de Mundo Abierto

– Ausencia de información no implica falsedad

Hombre Humano⊑

Mujer Hombre = ⊓ ∅

owl:unionOf owl:TransitiveProperty owl:cardinalityowl:intersectionOf owl:SymmetricProperty owl:hasValueowl:complementOf owl:FunctionalProperty

owl:InverseFunctionalProperty

Page 31: Web Semántica y Linked Data

Web Semántica

● Datos enlazados● Datos abiertos● Grafo global

● Lógica● Inferencia● Ontologías

Page 32: Web Semántica y Linked Data

Linked Data

● Recomendaciones para publicar datos enlazados en la Web– Usar URIs como identificadores

– Usar URIs HTTP a las que se pueda acceder

– Al acceder a una URI, devolver datos RDF

– Incluir enlaces a otras URIs para poder descubrir más cosas

http://linkeddata.org/

Page 33: Web Semántica y Linked Data
Page 34: Web Semántica y Linked Data

Consideraciones

● Linked Data puede usarse para publicar en la Web o internamente en empresas.

● No es necesario usar toda la pila de estándares.

● No siempre es la opción adecuada (rendimiento, escalabilidad...).

● Puede usarse RDF para exponer los datos, y otra BD para almacenamiento y operaciones.

Page 35: Web Semántica y Linked Data

Estado actual

Page 36: Web Semántica y Linked Data

Linking Open Data cloud

http://lod-cloud.net/

Page 37: Web Semántica y Linked Data
Page 38: Web Semántica y Linked Data

5-star Open Data

(1) Disponible en la Web con licencia abierta

(2) Formato estructurado (e.g. Excel)

(3) Formato no propietario (e.g. CSV)

(4) Estándares semánticos (RDF, SPARQL)

(5) Enlaces a otros datasets

http://5stardata.info/

Page 39: Web Semántica y Linked Data

Proyectos

● Schema.org– Vocabulario básico de metadatos

● Facebook Open Graph– Integración de páginas HTML+RDFa en Facebook

● Google Rich Snippets– Resultados enriquecidos por metadatos

Page 40: Web Semántica y Linked Data

Herramientas

● Almacenes– Jena, Sesame, Owlim, Virtuoso

● Navegadores– OpenLink Data Explorer, Tabulator, Disco

● Editores– Protégé, TopQuadrant

Page 41: Web Semántica y Linked Data

DBPedia

● Información de Wikipedia en RDF● Datos sacados de InfoBoxes● Disponible como

– Linked Data

– SPARQL

http://dbpedia.org

Page 42: Web Semántica y Linked Data
Page 43: Web Semántica y Linked Data

Preguntas