tecnologías semánticas en la web de datos

110
Material del curso sobre Tecnologías Semánticas en la Web de Datos red.es, 29/11/2012 Ontology Engineering Group Asunción GómezPérez, Oscar Corcho García Licencia de uso: Creative Commons Attribution NonCommercialShareAlike 3.0 Unported (CC BYNCSA 3.0) Más información sobre cursos disponible en: http://cursos.oegupm.net/

Upload: datosgobes

Post on 07-Dec-2014

2.835 views

Category:

Technology


3 download

DESCRIPTION

Material del curso sobre Linked Data impartido en la entidad pública empresarial Red.es por Asunción Gómez-Pérez y Oscar Corcho (Ontology Engineering Group - Universidad Politécnica de Madrid)

TRANSCRIPT

Page 1: Tecnologías Semánticas en la Web de Datos

Material  del  curso  sobre  Tecnologías  Semánticas    en  la  Web  de  Datos  

red.es,  29/11/2012  

Ontology  Engineering  Group  

Asunción  Gómez-­‐Pérez,  Oscar  Corcho  García  

 

Licencia  de  uso:  Creative  Commons  Attribution-­‐NonCommercial-­‐ShareAlike  3.0  Unported  (CC  BY-­‐NC-­‐SA  3.0)  

     Más  información  sobre  cursos  disponible  en:  http://cursos.oeg-­‐upm.net/    

 

Page 2: Tecnologías Semánticas en la Web de Datos

26/11/12

1

Tecnologías Semánticas en la Web de datos

Asunción Gómez-Pérez, Oscar Corcho Facultad de Informática, Universidad Politécnica de Madrid

Campus de Montegancedo sn, 28660 Boadilla del Monte, Madrid http://www.oeg-upm.net

[email protected]

Agradecimientos: Garijo, D. Vila, L.Vilches, B. Villazón

Curso en Red.es. 29 de Noviembre de 2012

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Indice

1.  Web de Linked Data: Conceptos Básicos A. Gómez Pérez (30 min.)

2.  RDF, RDF Schema y SPARQL O. Corcho (90 min.)

3.  Vocabularios A. Gómez Pérez (90 min.)

4.  Herramientas de publicación de datos para portales de datos abiertos

O. Corcho (30 min.)

2

Page 3: Tecnologías Semánticas en la Web de Datos

26/11/12

2

Web de Linked Data: Conceptos Básicos

Asunción Gómez-Pérez, Oscar Corcho Facultad de Informática, Universidad Politécnica de Madrid

Campus de Montegancedo sn, 28660 Boadilla del Monte, Madrid http://www.oeg-upm.net

[email protected]

Agradecimientos: D. Vila

Curso en Red.es. 29 de Noviembre de 2012

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Índice

1.  Concepto 2.  Fundamentos 3.  Proceso

4

Page 4: Tecnologías Semánticas en la Web de Datos

26/11/12

3

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Consultas complejas usando datos de diferentes páginas Web

5

http://www.aemet http://www.viaf.org/

*Picture attribution: http://commons.wikimedia.org/wiki/User:Gugerell

Turista alemán entusiasta de Cervantes dispuesto a conocer más sobre el trabajo y la vida de Cervantes

http://www.bne.es/

http://elviajero.elpais.com/

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

M. Cervantes

Don Quixote

Hebrew

creador

Traducido a

1960

Año de publicación

VIAF

localizado

Integración de datos

6

M. Cervantes Alcalá de Henares

Alcalá de Henares

Lugar de nacimiento

Igual a

Alcalá de Henares

20º

Temperatura

M. Cervantes

El Quijote

autor

1605 Año de

Publicación

BNE

Ubicado en

BD BNE

BD VIAF

BD AEMET

BD IGN

Alcalá de Henares

Tapas Siglo de Oro

guía

BD Prisa

BD DBpedia

Page 5: Tecnologías Semánticas en la Web de Datos

26/11/12

4

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012 7

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012 8 http://www.emtmadrid.es/

Page 6: Tecnologías Semánticas en la Web de Datos

26/11/12

5

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Integración de datos

9

Catas tro

BD AEMET

BD DBpedia

BD IGN

C/ Alcalá, 54

1446403VK4714E0001AZ

971m2

refCatastral

superficie

28014

codPostal

1910

añoConstrucción

C/ Alcalá, 54 Madrid

Madrid

city

sameAs

Madrid

20º

Temperatura

C/ Alcalá, 54

Cafetería Simpatía

vcard:adr

11012723 NúmeroPortal

L-20

Código Local

Ayto Madrid

10 Asunción Gómez Pérez

Page 7: Tecnologías Semánticas en la Web de Datos

26/11/12

6

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Agregar Información

11

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Madrid Arena #madridarena

Tagcloud

hashtag

isTagCloudOf

Agregar información

12

BD DBpedia

BD ElPaís

BD Havas

BD Twitter

Event Media

Madrid Arena

Madrid

lugar

España

país

#madridarena

http://elpais.com/elpais/2012/11/01/inenglish/1351773824_923902.html

noticia

Madrid Arena

Fiesta Halloween 2012

lugar

Diviertt organizador

31/10/2012

fecha

Page 8: Tecnologías Semánticas en la Web de Datos

26/11/12

7

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012 13

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Generación de RDF

Enlazado

Visualización de datos y

conocimientos

Linked Data

Page 9: Tecnologías Semánticas en la Web de Datos

26/11/12

8

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Índice

1.  Concepto 2.  Fundamentos 3.  Proceso

15

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Linked Data: ¿Por qué es importante?

•  Facilita la integración de datos •  De fuentes heterogéneas •  En distintos formatos •  Distinto nivel de detalle •  En distintos idiomas •  De distintos países

© Adaptada de “5min Introduction to Linked Data”- Olaf Hartig

Page 10: Tecnologías Semánticas en la Web de Datos

26/11/12

9

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Fundamentos Identificadores únicos: URI identifica o nombra recursos

Modelos en RDF(S)

Cer El Quijote Cervantes Es creador de

Cer Obra Persona Es creador de

Es una Es una

http://datos.bne.es/resource/XX1718747 http://datos.bne.es/resource/XX3383563

http://iflastandards.info/ns/fr/frbr/frbrer/C1005 http://iflastandards.info/ns/fr/frbr/frbrer/C1001

Enlaces a otros conjuntos de datos Same As

http://viaf.org/viaf/17220427

Cervantes

Same As Same As

http://dbpedia.org/resource/Miguel_de_Cervantes

Cervantes

Navegación de datos

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Fundamentos Alineando Modelos con Owl EquivalentClass

EquivalentClass

Same As

http://xmlns.com/foaf/0.1/Person Persona

http://schema.org/Person Persona

EquivalentClass

Lecciones aprendidas 1. Reutilización de modelos existentes 2. Alineación de datos y conceptos.

Municipio

Persona

lugar de nacimiento

http://iflastandards.info/ns/fr/frbr/frbrer/C1005

http://dbpedia.org/resource/Municipalities_of_Spain

http://dbpedia.org/page/Alcal%C3%A1_de_Henares

Alcalá de Henares

Es un

http://geo.linkeddata.es/ontology/Municipio

Municipio

http://geo.linkeddata.es/resource/Alcalá de Henares

Alcalá de Henares

Es un

Page 11: Tecnologías Semánticas en la Web de Datos

26/11/12

10

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

El modelo (Ontología) y los datos

19

Obra

Lengua

traducción

Año Fecha de publicación

Biblioteca

Ubicado en

Persona Es creador de

Se refiere a

El Quijote Cervantes

Es creador de

Catalán

traducción

1960 Fecha de publicación

BNE

Ubicado en

Se refiere a

Vida de Cervantes

Ontología

Datos

Lugar de nacimiento Lugar

Lugar de nacimiento

Alcalá de Henares

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

El modelo (Ontología) y los datos (datasets)

20

http://iflastandards.info/ns/fr/frbr/frbrer/C1001

http://iflastandards.info/ns/fr/frbr/frbrer/C1002

traducción

Año

Fecha de publicación

http://xmlns.com/foaf/0.1/Organization

Localizado en

http://iflastandards.info/ns/fr/frbr/frbrer/C1005

Es creador de

Tiene subject

http://datos.bne.es/resource/XX3383563 http://datos.bne.es/resource/XX1718747 Es autor

http://datos.bne.es/resource/XX1924295

translation

1960 Fecha de publicación

BNE

Localizado en

Tiene subject

http://datos.bne.es/resource/bimo0002045496

Vida de Miguel de Cervantes Saavedra

Don Quijote de la Mancha Cervantes Saavedra, Miguel de

Catalán

Ontología

Datos http://datos.bne.es/#

idioma

trabajo

Biblioteca

Persona

http://geo.linkeddata.es/ontology/Municipio

Lugar de nacimiento

http://geo.linkeddata.es/resource/Alcalá de Henares

Lugar de nacimiento

Page 12: Tecnologías Semánticas en la Web de Datos

26/11/12

11

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Índice

1.  Concepto 2.  Fundamentos 3.  Proceso

21

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Especificación @ BNE

Especificar

Modelar

•  Registros en formato MARC 21 •  3.9 millones de registros bibliográficos •  4.2 millones de registros de autoridades •  Versión: Noviembre 2011

22

AUTHORITY BIBLIOGRAPHIC

Persons Corporate bodies Conferences Titles Subject

76576 Maps

320727 Sound recordings

166017 Gravings, drawings, pictures

35770 Manuscripts

143959 Ancient books

2696560 Modern books

178473 Scores

3021 Electronic resources

156634 Serials

96672 Videos

Generar RDF

Publicar

Explotar

Enlazar

Page 13: Tecnologías Semánticas en la Web de Datos

26/11/12

12

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

La Ontología: basada en vocabularios IFLA

Especificar

Modelar

Generar RDF

Publicar

Explotar

Enlazar

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

La herramienta Marimba genera RDF

BNE

Especificar

Modelar

Generar RDF

Publicar

Explotar

Enlazar

Page 14: Tecnologías Semánticas en la Web de Datos

26/11/12

13

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Marimba enlaza con otros recursos: VIAF, DNB, SUDOC, LIBRIS, DBpedia

BNE

http://datos.bne.es/resource/XX1718747

Same As Same As

Same As

Same As

Same As

LIBRIS

http://libris.kb.se/resource/auth/45369

SUDOC

http://www.idref.fr/026774771/id

DNB

http://d-nb.info/gnd/11851993X

DBpedia

http://dbpedia.org/resource/Miguel_de_Cervantes

VIAF http://viaf.org/viaf/17220427

Especificar

Modelar

Generar RDF

Publicar

Explotar

Enlazar

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Especificar

Modelar

Generar RDF

Publicar

Explotar

Enlazar

Marimba enlaza con otros recursos: VIAF, DNB, SUDOC, LIBRIS, DBpedia

Page 15: Tecnologías Semánticas en la Web de Datos

26/11/12

14

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Publicar

Publicar los datos Describir el recurso con VOID Para facilitar el descubrimiento

•  Registrar en CKAN tu recurso

•  Utilizar sitemap4rdf para generar el sitemap

•  Cargar el sitemap en Google y Sindice

Especificar

Modelar

Generar RDF

Publicar

Explotar

Enlazar

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Explotar

select distinct COUNT(?Obras) where { http://datos.bne.es/resource/XX1718747 <http://iflastandards.info/ns/fr/frbr/frbrer/P2010> ?Obras }

URI Cervantes

Is author

Consultas en SPARQL

Interfaz Web Especification

Model

RDF generation

Publication

Exploitation

Especificar

Modelar

Generar RDF

Publicar

Explotar

Enlazar

http://linkeddata3.dia.fi.upm.es/bne-demo

Page 16: Tecnologías Semánticas en la Web de Datos

1

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Índice

1.  Web de Linked Data: Conceptos Básicos A. Gómez Pérez (30 min)

2.  RDF, RDF Schema y SPARQL O. Corcho (90 min)

3.  Vocabularios A. Gómez Pérez (90 min)

4.  Herramientas de publicación de datos para portales de datos abiertos

O. Corcho (30 min)

1

RDF, RDF Schema y SPARQL

Raúl García-Castro, Óscar Corcho Facultad de Informática, Universidad Politécnica de Madrid

Campus de Montegancedo sn, 28660 Boadilla del Monte, Madrid http://www.oeg-upm.net

[email protected]

Curso en Red.es. 29 de Noviembre de 2012

Page 17: Tecnologías Semánticas en la Web de Datos

2

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Índice

•  Introducción general •  RDF

-  Componentes de RDF -  Serialización de RDF

•  RDF Schema -  Componentes de RDFS -  Serialización de RDFS

3

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

RDF y RDF Schema

•  RDF: Resource Description Framework •  Objetivo

-  Describir la semántica de la información de manera procesable por máquinas

•  Recomendación del W3C -  Modelo -  Sintaxis -  Semántica

4

Database XML RDF(S)

Esquema

Datos

RDF Schema

RDF

Page 18: Tecnologías Semánticas en la Web de Datos

3

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

RDF(S) en la Web Semántica

5

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Índice

•  Introducción general •  RDF

-  Componentes de RDF -  Serialización de RDF

•  RDF Schema -  Componentes de RDFS -  Serialización de RDFS

6

Page 19: Tecnologías Semánticas en la Web de Datos

4

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

•  También conocido como “triples” (tripletas) -  [Sujeto, Predicado, Objeto]

•  “Raúl es un miembro del Ontology Engineering Group” -  [Raúl, is member of, Ontology Engineering Group]

•  “El nombre completo de Raúl es Raúl García Castro” -  [Raúl, has full name, Raúl García Castro]

•  “Raúl nació el 26 de Diciembre de 1975” -  [Raúl, was born, 26 December 1975]

•  “La página web del Ontology Engineering Group es http://www.oeg-upm.net/” -  [Ontology Engineering Group, has web page, http://www.oeg-upm.net/]

Componentes de RDF

7

is member of Raúl Ontology Engineering Group

Raúl Raúl García Castro has full name

Raúl 26 December 1975 has birth date

has web page Ontology Engineering Group http://www.oeg-upm.net/

Raúl

Raúl

Raúl

Ontology Engineering Group

Ontology Engineering Group

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Grafos RDF

•  Los grafos RDF son conjuntos de tripletas

8

is member of

Raúl

Ontology Engineering Group

Raúl García Castro has full name

26 December 1975 has birth date

has web page

http://www.oeg-upm.net/

Page 20: Tecnologías Semánticas en la Web de Datos

5

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Literales RDF

•  Los objetos de las tripletas pueden ser literales (cadenas de caracteres) -  El sujeto y el predicado son siempre recursos

•  Los literales pueden estar tipados -  Normalmente usando XML Schema datatypes -  Además, RDF proporciona el tipo de datos rdf:XMLLiteral

9

is member of

Raúl

Ontology Engineering Group

“Raúl García Castro” has full name

“1975-12-26”^^xsd:date has birth date

has web page

http://www.oeg-upm.net/

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

URIs en RDF

•  Componentes de una URI (RFC3986) -  http://www.oeg-upm.net:8080/Info/People?position=current#Raul

•  URIs en RDF:

-  Son referencias URI: URI + Fragment -  Puede contener caracteres Unicode -  Identifica recursos y valores (ej., mailto:[email protected])

10

Scheme Authority Path Query Fragment

http://www.oeg-upm.net/Properties#isMemberOf

http://www.oeg-upm.net/People#Raul

http://www.oeg-upm.net/Organization#OEG

“Raúl García Castro” http://www.oeg-upm.net/Properties#hasFullName

“1975-12-26”^^xsd:date http://www.oeg-upm.net/Properties#hasBirthDate

http://www.oeg-upm.net/Properties#hasWebPage

http://www.oeg-upm.net/

Page 21: Tecnologías Semánticas en la Web de Datos

6

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Espacios de nombres (namespaces) en RDF

•  Las URIs bajo un namespace se llaman vocabularios

11

Prefijo URI people http://www.oeg-upm.net/People#

organization http://www.oeg-upm.net/Organization#

properties http://www.oeg-upm.net/Properties#

rdf http://www.w3.org/1999/02/22-rdf-syntax-ns#

rdfs http://www.w3.org/2000/01/rdf-schema#

xsd http://www.w3.org/2001/XMLSchema#

properties:isMemberOf

people:Raul

organization:OEG

“Raúl García Castro” properties:hasFullName

“1975-12-26”^^xsd:date properties:hasBirthDate

properties:hasWebPage http://www.oeg-upm.net/

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Clasificando recursos

•  La propiedad rdf:type se usa para clasificar recursos en categorías/clases

•  La clase rdf:Property es la clase de todas las propiedades

12

people:Raul

category:Person

rdf:type

people:Oscar

rdf:type

people:Missy

category:Animal

rdf:type

people:Fantasma

rdf:type

Clases

Instancias

properties:hasFullName

rdf:Property

rdf:type rdf:type

rdf:type

Page 22: Tecnologías Semánticas en la Web de Datos

7

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Nodos en blanco Valores de propiedades estructuradas

•  En ocasiones, se utilizan estructuras de datos más complejas que las tripletas (aunque todo se sigue reduciendo a tripletas)

13

people:Raul properties:hasFullName

“Raúl”

properties:firstName

“García Castro”

properties:lastName

Esta URI intermedia realmente no necesita

tener un nombre específico

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Contenedores RDF

•  Describen grupos de cosas -  Un libro fue creado por varios autores -  Una clase es impartida por varias personas -  etc.

•  RDF tiene varios tipos de contenedores -  rdf:Bag. Grupo de recursos o literales, incluyendo duplicados,

donde el orden no es significativo -  rdf:Seq. Grupo de recursos o literales, incluyendo duplicados,

donde el orden es significativo -  rdf:Alt. Grupo de recursos o literales que son alternativas

(normalmente para un valor simple de una propiedad)

14

people:Raul properties:hasEmailAddress

[email protected]

rdf:_1

[email protected]

rdf:_2

rdf:Seq rdf:type

Page 23: Tecnologías Semánticas en la Web de Datos

8

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Colecciones en RDF

•  Grupos de cosas representadas como una lista estructurada -  “A container with limits”

•  Construido usando rdf:List, rdf:first, rdf:rest, y rdf:nil

15

university:Course1 university:hasTeacher

rdf:next

people:Raul rdf:first

rdf:nil

rdf:next

people:Oscar rdf:first

rdf:List

rdf:type

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Reificación en RDF

•  Tripletas en RDF sobre otras tripletas en RDF -  “Raúl cree que la fecha de nacimiento de Oscar es el 2 de febrero de

1976 y que su dirección de correo electrónico es [email protected]” •  Expresado usando rdf:Statement, rdf:subject, rdf:predicate,

y rdf:object

•  Reificación en RDF -  Permite expresar creencias (y otras modalidades) -  Permite expresar modelos de confianza, firmas digitales, etc. -  Permite expresar metadatos sobre metadatos

16

people:Raul

people:Oscar

modal:believes

[email protected]

properties:hasEmailAddress

“1976-02-02”^^xsd:date

properties:hasBirthDate

Page 24: Tecnologías Semánticas en la Web de Datos

9

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Valor principal de un valor estructurado

•  Algunas veces uno de los valores de un valor estructurado es el principal -  El peso de un artículo es 2.4 kilogramos -  El valor principal es 2.4, lo que se expresa con rdf:value

•  Se usa muy poco

17

product:Item1 product:hasWeight

“2.4”^^xsd:float

rdf:value

units:Kilogram

units:hasWeightUnit

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Resumen del vocabulario RDF Clases Propiedades Individuos Classification rdf:Property rdf:type Containers rdf:Bag rdf:_1, rdf:_2, rdf:_3… rdf:Seq rdf:Alt Collections rdf:List rdf:first rdf:nil

rdf:rest Reification rdf:Statement rdf:subject

rdf:predicate rdf:object

Values rdf:XMLLiteral rdf:value

18

Page 25: Tecnologías Semánticas en la Web de Datos

10

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Serializaciones en RDF

•  Normativa -  RDF/XML (www.w3.org/TR/rdf-syntax-grammar/)

•  Versión en borrador (9 de agosto de 2011) -  Turtle (http://www.w3.org/TR/turtle/)

•  Alternativas (centradas en usuarios) -  N3 (http://www.w3.org/DesignIssues/Notation3.html) -  TriX (http://www.w3.org/2004/03/trix/) -  …

•  Importante: las serializaciones RDF permiten diferentes variantes sintácticas. -  Ej., el orden en el que las tripletas RDF aparecen en un

documento no es relevante

19

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Serializaciones en RDF. RDF/XML

<?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:person="http://www.ontologies.org/ontologies/people#" xmlns="http://www.oeg-upm.net/ontologies/people#" xml:base="http://www.oeg-upm.net/ontologies/people"> <rdf:Property rdf:about="http://www.ontologies.org/ontologies/people#hasHomePage"/> <rdf:Property rdf:about="http://www.ontologies.org/ontologies/people#hasColleague"/> <rdf:Property rdf:about="http://www.ontologies.org/ontologies/people#hasName"/> <rdf:Description rdf:about="#Raul"/> <rdf:Description rdf:about="#Asun"> <person:hasColleague rdf:resource="#Raul"/> <person:hasHomePage>http://www.fi.upm.es</person:hasHomePage> </rdf:Description> <rdf:Description rdf:about="#Oscar"> <person:hasColleague rdf:resource="#Asun"/> <person:hasName>Oscar Corcho García</person:hasName> </rdf:Description> </rdf:RDF>

20

people:hasColleague people:Raul people:Asun

people:hasHomePage

http://www.oeg-upm.net/

people:hasColleague people:Oscar

“Óscar Corcho García”

people:hasName

Page 26: Tecnologías Semánticas en la Web de Datos

11

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Serializaciones en RDF. Turtle

@base <http://www.oeg-upm.net/ontologies/people/ > @prefix vocab: <http://www.ontologies.org/ontologies/people#> :Asun vocab:hasColleague :Raul ;

vocab:hasHomePage “http://www.fi.upm.es/”. :Oscar vocab:hasColleague :Asun ; vocab:hasName “Óscar Corcho García”.

21

people:hasColleague people:Raul people:Asun

people:hasHomePage

http://www.oeg-upm.net/

people:hasColleague people:Oscar

“Óscar Corcho García”

people:hasName

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Índice

•  Introducción general •  RDF

-  Componentes de RDF -  Serialización de RDF

•  RDF Schema -  Componentes de RDFS -  Serialización de RDFS

22

Page 27: Tecnologías Semánticas en la Web de Datos

12

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

RDF Schema •  Amplía RDF •  Permite la descripción de clases de recursos y sus propiedades •  Añade restricciones a los modelos

23

rdfs:Resource

rdfs:Container rdf:List rdf:Property rdfs:Class rdf:Statement

rdfs:Datatype

rdfs:Literal

rdf:XMLLiteral rdf:Bag rdf:Seq rdf:Alt

rdf:nil

rdfs:ContainerMembershipProperty

rdf:_1 rdf:_2 rdf:_3

rdfs:member rdfs:seeAlso

rdfs:isDefinedBy rdf:value rdfs:label

rdfs:comment

rdf:subject rdf:predicate

rdf:object rdf:type

rdfs:subclassOf

rdfs:domain rdfs:range

rdfs:subPropertyOf

rdf:first

rdf:rest

rdfs:member

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Descripción de clases

24

person:hasColleague data:Raul data:Asun

person:hasHomePage

http://www.oeg-upm.net/

person:hasColleague data:Oscar

“Óscar Corcho García”

person:hasName

person:AssociateProfessor

person:Professor

person:Person

person:InterimAssociateProfessor

person:FullProfessor

rdfs:subClassOf

rdfs:subClassOf

rdfs:subClassOf

rdfs:Class

RDF(S)

Vocabulario

Datos

rdf:type

Page 28: Tecnologías Semánticas en la Web de Datos

13

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Descripción de individuos

25

person:hasColleague data:Raul data:Asun

person:hasHomePage

http://www.oeg-upm.net/

person:hasColleague data:Oscar

“Óscar Corcho García”

person:hasName

person:AssociateProfessor

person:Professor

person:Person

person:InterimAssociateProfessor

person:FullProfessor

rdf:type rdf:type rdf:type

rdfs:subClassOf

rdfs:subClassOf

rdfs:subClassOf

rdfs:Class

RDF(S)

rdf:type Vocabulario

Datos

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Descripción de propiedades

26

person:hasColleague data:Raul data:Asun

person:hasHomePage

http://www.oeg-upm.net/

person:hasColleague data:Oscar

“Óscar Corcho García”

person:hasName

person:AssociateProfessor

person:Professor

person:Person

person:InterimAssociateProfessor

person:FullProfessor

person:hasName rdfs:Literal rdfs:domain rdfs:range

person:hasHomePage rdfs:domain

rdf:type rdf:type rdf:type

rdfs:subClassOf

rdfs:subClassOf

rdfs:subClassOf

rdf:Property rdfs:Class

RDF(S)

rdf:type

rdf:type

person:hasColleague

rdfs:domain rdfs:range

Vocabulario

Datos

Page 29: Tecnologías Semánticas en la Web de Datos

14

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Anotación de recursos

27

data:Raul

rdfs:label “Raúl”

rdfs:comment “Resource for Raúl García Castro”

rdfs:seeAlso http://delicias.dia.fi.upm.es/~rgarcia/

rdfs:isDefinedBy

http://delicias.dia.fi.upm.es/~rgarcia/foaf.rdf

rdfs:label “Raúl García”

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Resumen del vocabulario RDFS Clases Propiedades Individuos Classification rdfs:Resource rdfs:subClassOf

rdfs:Class

Properties rdfs:domain

rdfs:range

rdfs:subPropertyOf

Datatypes rdfs:Literal

rdfs:Datatype

Containers rdfs:Container rdfs:member

rdfs:ContainerMembershipProperty

Annotation rdfs:label

rdfs:comment

rdfs:seeAlso

rdfs:isDefinedBy

28

Page 30: Tecnologías Semánticas en la Web de Datos

15

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Serialización en RDF/XML (1/2)

<?xml version="1.0"?> <!DOCTYPE rdf:RDF [ <!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema#" > <!ENTITY rdf "http://www.w3.org/1999/02/22-rdf-syntax-ns#" > <!ENTITY person "http://www.oeg-upm.net/ontologies/person#" > ]> <rdf:RDF xmlns="http://www.oeg-upm.net/ontologies/person#" xml:base="http://www.oeg-upm.net/ontologies/person" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:person="http://www.oeg-upm.net/ontologies/person#"> <rdfs:Property rdf:about="&person;hasColleague"> <rdfs:range rdf:resource="#Person"/> <rdfs:domain rdf:resource="#Person"/> </rdfs:Property> <rdfs:Property rdf:about="&person;hasHomePage"> <rdfs:domain rdf:resource="#FullProfessor"/> </rdfs:Property> <rdfs:Property rdf:about="&person;hasName"> <rdfs:domain rdf:resource="#Person"/> <rdfs:range rdf:resource="&rdfs;Literal"/> </rdfs:Property>

...

29

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Serialización en RDF/XML (2/2)

... <rdfs:Class rdf:about="#AssociateProfessor">

<rdfs:subClassOf rdf:resource="#Professor"/> </rdfs:Class> <rdfs:Class rdf:about="#FullProfessor"> <rdfs:subClassOf rdf:resource="#Professor"/> </rdfs:Class> <rdfs:Class rdf:about="#InterimAssociateProfessor"> <rdfs:subClassOf rdf:resource="#AssociateProfessor"/> </rdfs:Class> <rdfs:Class rdf:about="#Person"/> <rdfs:Class rdf:about="#Professor"> <rdfs:subClassOf rdf:resource="#Person"/> </rdfs:Class> <FullProfessor rdf:about="#Asun"> <person:hasHomePage>http://www.fi.upm.es</person:hasHomePage> <person:hasColleague rdf:resource="#Raul"/> </FullProfessor> <AssociateProfessor rdf:about="#Oscar"> <person:hasName>Oscar Corcho García</person:hasName> <person:hasColleague rdf:resource="#Asun"/> </AssociateProfessor> <InterimAssociateProfessor rdf:about="#Raul"/> </rdf:RDF>

30

Page 31: Tecnologías Semánticas en la Web de Datos

16

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Serialización en Turtle (1/2)

@base <http://www.oeg-upm.net/ontologies/person> . @prefix : <http://www.oeg-upm.net/ontologies/person#> . @prefix person: <http://www.oeg-upm.net/ontologies/person#> . :hasColleague a rdfs:Property . rdfs:domain :Person . rdfs:range :Person ; :hasHomePage a rdfs:Property . rdfs:domain :FullProfessor . :hasName a rdfs:Property . rdfs:domain :Person ; rdfs:range rdfs:Literal . …

a is equivalent to rdf:type

31

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Serialización en Turtle (2/2) … :Person a rdfs:Class . :Professor a rdfs:Class ; rdfs:subClassOf :Person . :FullProfessor a rdfs:Class ; rdfs:subClassOf :Professor . :AssociateProfessor a rdfs:Class ; rdfs:subClassOf :Professor . :InterimAssociateProfessor a rdfs:Class ; rdfs:subClassOf :AssociateProfessor . :Asun a :FullProfessor ; :hasHomePage "http://www.fi.upm.es" ; :hasColleague :Raul . :Oscar a :AssociateProfessor ; :hasName "Oscar Corcho García" ; :hasColleague :Asun . :Raul a :InterimAssociateProfessor . a is equivalent to rdf:type

32

Page 32: Tecnologías Semánticas en la Web de Datos

17

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Ejemplo de algunas RDF APIs

•  Librerías RDF para distintos lenguajes: -  Java, Python, C, C++, C#, .Net, Javascript, Tcl/Tk, PHP, Lisp, Obj-C,

Prolog, Perl, Ruby, Haskell -  Un listado disponible en http://esw.w3.org/topic/SemanticWebTools

•  Multilenguaje:

-  Redland RDF Application Framework (C, Perl, PHP, Python and Ruby): http://www.redland.opensource.ac.uk/

•  Java: -  Jena: http://jena.sourceforge.net/ -  Sesame: http://www.openrdf.org/

•  PHP: -  RAP - RDF API for PHP: http://www4.wiwiss.fu-berlin.de/bizer/rdfapi/

•  Python: -  RDFLib: http://rdflib.net/ -  Pyrple: http://infomesh.net/pyrple/

33

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Ejercicio

• Objetivo • Entender las características de RDF(S) para implementar

vocabularios y datos, incluyendo sus limitaciones • Tareas

•  A partir de una descripción de dominio, crear el grafo RDF(S) •  Primero incluir sólo el vocabulario del dominio •  Después incluir referencias a RDF y a los vocabularios RDFS

34

Page 33: Tecnologías Semánticas en la Web de Datos

18

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Ejercicio 1. Descripción del dominio

•  Cierta ubicación puede ser un lugar de interés. •  Los lugares de interés pueden ser lugares turísticos o

establecimientos, pero no ambos a la vez. •  Los lugares turísticos pueden ser palacios, iglesias, capillas y

catedrales. •  Los establecimientos pueden ser hoteles, hostales, o viviendas en

alquiler. •  Un lugar está ubicado en una localidad, que puede ser una ciudad,

un pueblo o una ciudad céntrica. •  Un lugar de interés tiene dirección postal, que incluye el nombre de

la calle y el número. •  Las localidades tienen un cierto número de habitantes. •  Las localidades pertenecen a una cierta provincia.

•  Covarrubias es un pueblo con 634 habitantes en la provincia de Burgos.

•  El restaurante “El Galo” está ubicado en Covarrubias, en la calle Mayor, número 5.

•  Una de las iglesias de Covarrubias está en la calle Santo Tomás.

35

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Ejercicio 1. Ejemplo de vocabulario resultante

36

PhysicalPoint

Stage

TransportMedium

Bycicle Car Bus OnFoot

Train

SpacialThing

Locality City

Village

Town

Location

LocationOf International

Touristic Location

Palace

Church Cathedral

Chapel

Establistioment

GuestHouse Hotel

Hostel

Route

PostalAddress

Stretch

TransportInfrastructure

Railway

Trach Road

Path

Service

BankService

HealthService PostalService

SecurityService

Restauration Service

hasLatitude hasLongitude

hasStop hasDestination

isLocatedAPoint

hasOrigin

isPlacedIn

inProvince

hasInhabitantNumber hasSurface

through

hasPostalCode hasNumber

isC

onne

cted

By

hasBegining hasEnd

hasAddress

isProvidedBy

providesService

isSupportedBy

hasStretch

hasDistance

hasDenomination

hasStreet

hasAltitude

Literal

Literal

Literal

Literal

Literal

Page 34: Tecnologías Semánticas en la Web de Datos

19

El Lenguaje de Consultas SPARQL

Raúl García-Castro, Oscar Corcho Facultad de Informática, Universidad Politécnica de Madrid

Campus de Montegancedo sn, 28660 Boadilla del Monte, Madrid http://www.oeg-upm.net

[email protected]

Curso en Red.es. 29 de Noviembre de 2012

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Lenguajes de consulta sobre RDF(S)

•  Soportado por las APIs y triple stores más relevantes

-  Jena, Sesame, RASQAL, etc. -  Virtuoso, 4store, Fuseki, etc. -  ...

•  Hay algunas diferencias con respecto a lenguajes como SQL, tales como -  Posibilidad de combinar fuentes de datos heterogéneas -  Hipótesis de mundo abierto

38

Base de datos

relacional

Aplicación

Consultas en SQL

RDF(S) OWL

Aplicación

Consultas en SPARQL

Page 35: Tecnologías Semánticas en la Web de Datos

20

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Inferencia en RDF. Ejemplos (I)

•  Ejemplo de grafo RDF

•  Consulta: “Dime las personas que tienen a Raúl como colega”

-  Resultado: data:Asun

39

person:hasColleague data:Raul data:Asun

person:hasHomePage

http://www.oeg-upm.net/

person:hasColleague data:Oscar

“Óscar Corcho García”

person:hasName

person:hasColleague data:Raul ?

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Inferencia en RDF. Ejemplos (II)

•  Consulta: “Dime qué relaciones existen entre Oscar y Asun”

-  Resultado: person:hasColleague

•  Consulta: “Dime la página Web de los colegas de Oscar”

-  Resultado: “http://www.oeg-upm.net/”

40

data:Asun ?

data:Oscar

person:hasHomePage

?

person:hasColleague data:Oscar

Page 36: Tecnologías Semánticas en la Web de Datos

21

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

SPARQL también es un protocolo

•  SPARQL es un lenguaje de consulta… Encuentra nombres y websites de colaboradores de PlanetRDF: PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?name ?website FROM <http://planetrdf.com/bloggers.rdf> WHERE { ?person foaf:weblog ?website . ?person foaf:name ?name . ?website a foaf:Document }

•  ... Y un Protocolo

http://.../qps?query-lang=http://www.w3.org/TR/rdf-sparql-query/ &graph-id=http://planetrdf.com/bloggers.rdf&query=PREFIXfoaf: <http://xmlns.com/foaf/0.1/...

•  Servicios ejecutando consultas SPARQL sobre un conjunto de grafos •  Un protocolo de transporte para invocar al servicio •  Descripción del servicio con tecnologías de servicios Web

42

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Conclusiones SPARQL •  Servicios del protocolo SPARQL

-  Permite a los usuarios (humanos u otros) hacer una consulta en una base de datos y conocimientos usando SPARQL

-  Los resultados son devueltos normalmente en uno o más formatos procesables por máquinas

•  Listado de puntos de acceso (endpoints) de SPARQL -  http://esw.w3.org/topic/SparqlEndpoints

•  Acceso programático usando librerías: -  ARC, RAP, Jena, Sesame, Javascript SPARQL, PySPARQL, etc.

•  Ejemplos:

Proyecto Conclusión DBpedia http://dbpedia.org/sparql BBC Programmes and Music http://bbc.openlinksw.com/sparql/ data.gov http://semantic.data.gov/sparql data.gov.uk http://data.gov.uk/sparql Musicbrainz http://dbtune.org/musicbrainz/sparql

43

Page 37: Tecnologías Semánticas en la Web de Datos

22

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Ejemplo: consultando DBpedia

•  Gente nacida en Berlín antes de 1900

44

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Ejemplo: consultando DBpedia

45

Page 38: Tecnologías Semánticas en la Web de Datos

23

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

También consultas más “españolas”

•  ¿Qué toreros han estado casados con cantantes de copla? Aquí

PREFIX dcterms: <http://purl.org/dc/terms/> SELECT ?torero ?cantante WHERE{ ?torero rdf:type dbpedia-owl:BullFighter . ?torero dbpedia-owl:spouse ?cantante . ?cantante dcterms:subject <http://es.dbpedia.org/resource/Categoría:Cantantes_de_coplas> }

46

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Un consulta sencilla en SPARQL

@prefix dc: <http://purl.org/dc/elements/1.1/> . @prefix : <http://example.org/book/> . :book1 dc:title "SPARQL Tutorial" .

title "SPARQL Tutorial"

SELECT ?title WHERE { <http://example.org/book/book1> <http://purl.org/dc/elements/1.1/title> ?title . }

Data:

Query:

Query result:

•  Un patrón de consulta se ajusta contra los datos en RDF •  En todo caso un patrón puede ajustarse para proporcionar una solución •  La secuencia de soluciones se puede filtrar •  Se aplica uno de los siguientes constructores: SELECT, CONSTRUCT,

DESCRIBE, ASK

47

Page 39: Tecnologías Semánticas en la Web de Datos

24

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

@prefix foaf: <http://xmlns.com/foaf/0.1/> . _:a foaf:name "Johnny Lee Outlaw" . _:a foaf:mbox <mailto:[email protected]> . _:b foaf:name "Peter Goodguy" . _:b foaf:mbox <mailto:[email protected]> . _:c foaf:mbox <mailto:[email protected]> .

PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?name ?mbox WHERE { ?x foaf:name ?name . ?x foaf:mbox ?mbox }

name mbox "Johnny Lee Outlaw" <mailto:[email protected]> "Peter Goodguy" <mailto:[email protected]>

Varios patrones de grafos: joins

48

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

@prefix dt: <http://example.org/datatype#> . @prefix ns: <http://example.org/ns#> . @prefix : <http://example.org/ns#> . @prefix xsd: <http://www.w3.org/2001/XMLSchema#> . :x ns:p "cat"@en . :y ns:p "42"^^xsd:integer . :z ns:p "abc"^^dt:specialDatatype .

SELECT ?v WHERE { ?v ?p "cat" } v

SELECT ?v WHERE { ?v ?p "cat"@en } v <http://example.org/ns#x>

SELECT ?v WHERE { ?v ?p 42 } v <http://example.org/ns#y>

SELECT ?v WHERE { ?v ?p "abc"^^<http://example.org/datatype#specialDatatype> }

v <http://example.org/ns#z>

Literales RDF

49

Page 40: Tecnologías Semánticas en la Web de Datos

25

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

@prefix foaf: <http://xmlns.com/foaf/0.1/> . _:a foaf:name "Alice" . _:b foaf:name "Bob" .

PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?x ?name WHERE { ?x foaf:name ?name }

x name _:c "Alice" _:d "Bob"

x name _:r "Alice" _:s "Bob"

=

Nodos en blanco

50

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Grupos de patrones

PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?name ?mbox WHERE { { ?x foaf:name ?name . } { ?x foaf:mbox ?mbox . } }

SELECT ?x WHERE {}

PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?name ?mbox WHERE { { ?x foaf:name ?name . } { ?x foaf:mbox ?mbox . FILTER regex(?name, "Smith")} }

51

Page 41: Tecnologías Semánticas en la Web de Datos

26

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Patrones opcionales (left-outer-join)

@prefix foaf: <http://xmlns.com/foaf/0.1/> . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . _:a rdf:type foaf:Person . _:a foaf:name "Alice" . _:a foaf:mbox <mailto:[email protected]> . _:a foaf:mbox <mailto:[email protected]> . _:b rdf:type foaf:Person . _:b foaf:name "Bob" .

PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?name ?mbox WHERE { ?x foaf:name ?name . OPTIONAL { ?x foaf:mbox ?mbox } }

name mbox

"Alice" <mailto:[email protected]>

"Alice" <mailto:[email protected]>

“Bob"

52

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Patrones opcionales múltiples

@prefix foaf: <http://xmlns.com/foaf/0.1/> . _:a foaf:name "Alice" . _:a foaf:homepage <http://work.example.org/alice/> . _:b foaf:name "Bob" . _:b foaf:mbox <mailto:[email protected]> .

PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?name ?mbox ?hpage WHERE { ?x foaf:name ?name . OPTIONAL { ?x foaf:mbox ?mbox } . OPTIONAL { ?x foaf:homepage ?hpage } }

name mbox hpage

"Alice" <http://work.example.org/alice/>

“Bob" <mailto:[email protected]>

53

Page 42: Tecnologías Semánticas en la Web de Datos

27

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Patrones de alternativas @prefix dc10: <http://purl.org/dc/elements/1.0/> . @prefix dc11: <http://purl.org/dc/elements/1.1/> . _:a dc10:title "SPARQL Query Language Tutorial" . _:a dc10:creator "Alice" . _:b dc11:title "SPARQL Protocol Tutorial" . _:b dc11:creator "Bob" . _:c dc10:title "SPARQL" . _:c dc11:title "SPARQL (updated)" .

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 { ?book dc11:title ?title } }

title

"SPARQL Protocol Tutorial"

"SPARQL"

"SPARQL (updated)"

"SPARQL Query Language Tutorial"

SELECT ?x ?y WHERE { { ?book dc10:title ?x } UNION { ?book dc11:title ?y } }

SELECT ?title ?author WHERE { { ?book dc10:title ?title . ?book dc10:creator ?author } UNION { ?book dc11:title ?title . ?book dc11:creator ?author }}

x y

"SPARQL (updated)"

"SPARQL Protocol Tutorial"

"SPARQL"

"SPARQL Query Language Tutorial"

author title

"Alice" "SPARQL Protocol Tutorial"

“Bob” "SPARQL Query Language Tutorial"

54

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Grafos con nombre # Named graph: http://example.org/foaf/aliceFoaf @prefix foaf:<http://.../foaf/0.1/> . @prefix rdf:<http://.../1999/02/22-rdf-syntax-ns#> . @prefix rdfs:<http://.../2000/01/rdf-schema#> . _:a foaf:name "Alice" . _:a foaf:mbox <mailto:[email protected]> . _:a foaf:knows _:b . _:b foaf:name "Bob" . _:b foaf:mbox <mailto:[email protected]> . _:b foaf:nick "Bobby" . _:b rdfs:seeAlso <http://example.org/foaf/bobFoaf> . <http://example.org/foaf/bobFoaf> rdf:type foaf:PersonalProfileDocument .

# Named graph: http://example.org/foaf/bobFoaf @prefix foaf:<http://.../foaf/0.1/> . @prefix rdf:<http://.../1999/02/22-rdf-syntax-ns#> . @prefix rdfs:<http://.../2000/01/rdf-schema#> . _:z foaf:mbox <mailto:[email protected]> . _:z rdfs:seeAlso <http://example.org/foaf/bobFoaf> . _:z foaf:nick "Robert" . <http://example.org/foaf/bobFoaf> rdf:type foaf:PersonalProfileDocument .

55

Page 43: Tecnologías Semánticas en la Web de Datos

28

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Grafos con nombre

PREFIX foaf: <http://xmlns.com/foaf/0.1/> PREFIX data: <http://example.org/foaf/> SELECT ?nick FROM NAMED <http://example.org/foaf/aliceFoaf> FROM NAMED <http://example.org/foaf/bobFoaf> WHERE { GRAPH data:bobFoaf { ?x foaf:mbox <mailto:[email protected]> . ?x foaf:nick ?nick } }

nick

"Robert"

PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?src ?bobNick FROM NAMED <http://example.org/foaf/aliceFoaf> FROM NAMED <http://example.org/foaf/bobFoaf> WHERE { GRAPH ?src { ?x foaf:mbox <mailto:[email protected]> . ?x foaf:nick ?bobNick } }

src bobNick

<http://example.org/foaf/aliceFoaf> "Bobby"

<http://example.org/foaf/bobFoaf> "Robert"

56

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Filtros y restricciones

@prefix dc: <http://purl.org/dc/elements/1.1/> . @prefix : <http://example.org/book/> . @prefix ns: <http://example.org/ns#> . :book1 dc:title "SPARQL Tutorial" . :book1 ns:price 42 . :book2 dc:title "The Semantic Web" . :book2 ns:price 23 .

PREFIX dc: <http://purl.org/dc/elements/1.1/> SELECT ?title WHERE { ?x dc:title ?title FILTER regex(?title, "^SPARQL") }

title

"SPARQL Tutorial"

PREFIX dc: <http://purl.org/dc/elements/1.1/> SELECT ?title WHERE { ?x dc:title ?title FILTER regex(?title, "web", "i" ) }

title

"The Semantic Web"

PREFIX dc: <http://purl.org/dc/elements/1.1/> PREFIX ns: <http://example.org/ns#> SELECT ?title ?price WHERE { ?x ns:price ?price . FILTER (?price < 30.5) ?x dc:title ?title . }

title price

"The Semantic Web" 23

57

Page 44: Tecnologías Semánticas en la Web de Datos

29

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Tests de valores

•  Basado en funciones y operadores XQuery 1.0 y XPath 2.0

•  XSD boolean, string, integer, decimal, float, double, dateTime

•  Anotaciones <, >, =, <=, >= y != para comparación de valores Aplicable a cualquier tipo

•  BOUND, isURI, isBLANK, isLITERAL •  REGEX, LANG, DATATYPE, STR () •  Cualquier función extendida

58

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Modificadores

•  Modificador de orden: pone las soluciones en un cierto orden

•  Modificador de proyección: selecciona ciertas variables

•  Modificador DISTINCT: asegura que las soluciones son únicas

•  Modificador reductor: permite la eliminación de algunas soluciones que no son únicas

•  Modificador de límite: restringe el número de soluciones

•  Modificador Offset: controla dónde comienzan las soluciones en la secuencia global de soluciones

SELECT ?name WHERE { ?x foaf:name ?name ; :empId ?emp } ORDER BY ?name DESC(?emp)

SELECT ?name WHERE { ?x foaf:name ?name }

SELECT DISTINCT ?name WHERE { ?x foaf:name ?name }

SELECT REDUCED ?name WHERE { ?x foaf:name ?name }

SELECT ?name WHERE { ?x foaf:name ?name } ORDER BY ?name LIMIT 5 OFFSET 10

SELECT ?name WHERE { ?x foaf:name ?name } LIMIT 20

59

Page 45: Tecnologías Semánticas en la Web de Datos

30

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Ejercicio 2

• Objetivo •  Comprender cómo trabajar con consultas SPARQL

• Tareas •  Crear un conjunto de consultas SPARQL sobre un vocabulario de ejemplo

•  http://sandbox.linkeddata.es/sparql •  En el grafo: http://sandbox.linkeddata.es/Grado_20122013

64

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Ejemplo de vocabulario

TouristicLocation

Palace Church Chapel Cathedral

Establishment

Hotel Hostel GuestHouse

LocationOfInterest

Location Locality

Village Town City

SpatialThing

PostalAddress

rdfs:Literal

hasInhabitantNumber

isPlacedIn rdfs:Literal

hasStreet

inProvince

hasAddress

hasNumber

65

Page 46: Tecnologías Semánticas en la Web de Datos

31

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Queries en este modelo

1.  Obtener todas las clases 2.  Obtener las subclases de la clase Establishment 3.  Obtener las instancias de la clase City 4.  Obtener el número de habitantes de Santiago de Compostela 5.  Obtener el número de habitantes de Santiago de Compostela y de Arzua 6.  Obtener distintos lugares con número de habitantes, ordenar los

resultados por el nombre del lugar (ascendente) 7.  Obtener todas las instancias de Locality con su número de habitantes (si

existe) 8.  Obtener todos los lugares con más de 200.000 habitantes 9.  Obtener los datos postales de Pazo_Breogan (calle, número, localidad,

provincia) 10.  Obtener las subclases de la clase Location 11.  Obtener las instancias de la clase Locality 12.  Describir el recurso con rdfs:label "Madrid” 13.  Construir el grafo RDF(S) que relaciona directamente todos los lugares

turísticos con sus respectivas provincias, usando una nueva propiedad llamada ”isIn”

14.  Preguntar si hay alguna instancia de Town

66

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Consultas en el modelo

1)  Obtener todas las clases

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>

SELECT ?x WHERE { ?x a rdfs:Class. }

2) Obtener las subclases de la clase Establishment

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>

PREFIX pr: <http://GP-onto.fi.upm.es/exercise2#>

SELECT ?x WHERE { ?x rdfs:subClassOf pr:Establishment. }

3) Obtener las instancias de la clase City

PREFIX pr: <http://GP-onto.fi.upm.es/exercise2#>

SELECT ?x WHERE { ?x a pr:City. }

67

Page 47: Tecnologías Semánticas en la Web de Datos

32

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Consultas en las instancias

4) Obtener el número de habitantes de Santiago de Compostela

PREFIX pr: <http://GP-onto.fi.upm.es/exercise2#> SELECT ?x WHERE { pr:Santiago_de_Compostela pr:hasInhabitantNumber ?x. }

5) Obtener el número de habitantes de Santiago de Compostela y de Arzua PREFIX pr: <http://GP-onto.fi.upm.es/exercise2#> SELECT ?x WHERE { {pr:Santiago_de_Compostela pr:hasInhabitantNumber ?x.} UNION {pr:Arzua pr:hasInhabitantNumber ?x.} }

6) Obtener diferentes lugares con el número de habitantes, ordenando los resultados por el nombre del lugar (ascendente) PREFIX pr: <http://GP-onto.fi.upm.es/exercise2#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT ?x ?y WHERE { $loc pr:hasInhabitantNumber ?y; rdfs:label ?x.} ORDER BY ASC(?x)

68

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Consultas en las instancias II

8) Obtener todos los lugarescon más de 200.000 habitantes PREFIX pr: <http://GP-onto.fi.upm.es/exercise2#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT ?x ?y WHERE { $loc pr:hasInhabitantNumber ?y; rdfs:label ?x. FILTER(?y > 200000) }

9) Obtener los datos postales de Pazo_Breogan (calle, número, localidad, provincia) PREFIX pr: <http://GP-onto.fi.upm.es/exercise2#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT ?street ?number ?locality ?province WHERE { pr:Pazo_Breogan pr:isPlacedIn $pob; pr:hasAddress $dir. $pob rdfs:label ?locality; pr:inProvince ?province. $dir pr:hasStreet ?street; pr:hasNumber ?number.}

7) Obtener todas las instancias de Locality con su número de habitantes (si existe) PREFIX pr: <http://GP-onto.fi.upm.es/exercise2#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT ?x ?y WHERE { $loc a pr:Locality; rdfs:label ?x. OPTIONAL {$loc pr:hasInhabitantNumber ?y.} }

69

Page 48: Tecnologías Semánticas en la Web de Datos

33

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Consultas con inferencia

10) Obtener las subclases de la clase Location PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX pr: <http://GP-onto.fi.upm.es/exercise2#> SELECT ?x WHERE { ?x rdfs:subClassOf pr:Location. }

11) Obtener las instancias de la clase Locality

PREFIX pr: <http://GP-onto.fi.upm.es/exercise2#> SELECT ?x WHERE { ?x a pr:Locality. }

12) Obtener los valores de todas las variables de la query

PREFIX pr: <http://GP-onto.fi.upm.es/exercise2#> SELECT * WHERE { ?x pr:hasInhabitantNumber ?y. }

Query especial (SELECT *)

70

70

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Distintos tipos de consulta

14) Construye el grafo RDF(S) que relaciona directamente todos los lugares turísticos con sus respectivas provincias, usando una nueva propiedad llamada ”isIn” PREFIX pr: <http://GP-onto.fi.upm.es/exercise2#> CONSTRUCT {?x pr:isIn ?y} WHERE { ?x a pr:TouristicLocation; pr:isPlacedIn $pob. $pob pr:inProvince ?y. } 15) Preguntar si hay alguna instancia de Town PREFIX pr: <http://GP-onto.fi.upm.es/exercise2#> ASK WHERE {?a a pr:Town}

16) Preguntar si hay alguna instancia de Chapel PREFIX pr: <http://GP-onto.fi.upm.es/exercise2#> ASK WHERE {?a a pr:Chapel}

13) Describe el recurso con rdfs:label "Madrid" PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> DESCRIBE ?x WHERE { ?x rdfs:label "Madrid". }

71

Page 49: Tecnologías Semánticas en la Web de Datos

28/11/12

1

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Indice

1.  Web de Linked Data: Conceptos Básicos A. Gómez Pérez (30 min)

2.  RDF, RDF Schema y SPARQL O. Corcho (90 min)

3.  Vocabularios A. Gómez Pérez (90 min)

4.  Herramientas de publicación de datos para portales de datos abiertos

O. Corcho (30 min)

1

Vocabularios

Asunción Gómez-Pérez, Oscar Corcho Facultad de Informática, Universidad Politécnica de Madrid

Campus de Montegancedo sn, 28660 Boadilla del Monte, Madrid http://www.oeg-upm.net

[email protected]

Agradecimientos: D. Garijo, R. García, M. Poveda, J.A. Ramos, M.C. Suárez-Figueroa, D. Vila, L. Vilches, B. Villazón

Curso en Red.es. 29 de Noviembre de 2012

Page 50: Tecnologías Semánticas en la Web de Datos

28/11/12

2

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

1.  Introducción 2.  Tipos de vocabularios 3.  Proceso de Construcción 4.  Ejemplos de Vocabularios

•  Personas y Organizaciones: FOAF, vCard, ORG •  Documentos: DC, BIBO •  Geo: puntos, curvas y polígonos •  Estadísticas: Data Cube •  Bibliotecas: FRBR •  Otros vocabularios: sensores, provenance, VOID

5.  Ejemplos de Redes de vocabularios en aplicaciones de datos enlazados •  Instituto Geográfico Nacional

3

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Caso de uso

¿Qué vocabularios debemos utilizar para describir en el formato de datos enlazados el organigrama de los diferentes Ministerios, las personas que forman parte de él y su

ubicación?

Page 51: Tecnologías Semánticas en la Web de Datos

28/11/12

3

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Organigrama diferentes en los Ministerios

5

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Organigramas con diferente terminología

6

Page 52: Tecnologías Semánticas en la Web de Datos

28/11/12

4

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Descripción de los ministros “a la carta”

7

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Diferentes formas de describir la dirección de contacto

8

Page 53: Tecnologías Semánticas en la Web de Datos

28/11/12

5

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

1.  Introducción 2.  Tipos de vocabularios 3.  Proceso de Construcción 4.  Ejemplos de Vocabularios 5.  Ejemplos de Redes de vocabularios en aplicaciones

de datos enlazados 6.  Conclusiones

9

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Clasificacion Informal

Catalogo/ID

Tesauro

Las organizaciones poseen vocabularios

ID   Name  Ve   Vehículo  10.01   Coche  10.02   Motocicleta  10.03   Bicicleta  10.01   Vehículo  10.01.01   Rueda  10.01.02   Asiento  10.01.03   Puerta  

?

?

Conocimiento implícito en los números

XX-YY-ZZ 02-01-02 02: transporte 01: carretera 02: 3 carriles

Page 54: Tecnologías Semánticas en la Web de Datos

28/11/12

6

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Ontología

11

•  Una ontología es: •  Un conjunto de términos consensuados •  Incluye:

•  Conceptos •  Taxonomias de Conceptos •  Propiedades •  Relaciones entre concpetos

•  Visión compartida sobre cómo modelar un dominio de interés

•  Implementadas en OWL o RDF(S) •  Herramientas: Protégé, NeOn Toolkit, Topbraid composer, etc.

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012 12

Ejemplos de ontologías

SIOC Ontology

Page 55: Tecnologías Semánticas en la Web de Datos

28/11/12

7

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Ontologías: Conocimientos y Datos

13

13

Ontología

Instancias

Nivel de Conocimientos

Conceptos Taxonomías Relaciones Atributos Axiomas

Nivel de Datos Instancias de conceptos

Instancias de relaciones

Cer El Quijote Cervantes Es creador de

Cer

Obra Persona Es creador de

Es una Es una

Nivel de Conocimientos

Nivel de Datos

Año

Fecha de publicación

1960

Fecha de publicación

Es un

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Ejemplo de ontología

Page 56: Tecnologías Semánticas en la Web de Datos

28/11/12

8

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

1.  Introducción 2.  Tipos de vocabularios 3.  Proceso de Construcción 4.  Ejemplos de Vocabularios 5.  Ejemplos de Redes de vocabularios en aplicaciones

de datos enlazados 6.  Conclusiones

15

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Vocabularios en la Web de datos

16

¿Qué vocabularios son los más utilizados?

Page 57: Tecnologías Semánticas en la Web de Datos

28/11/12

9

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Modelar en la Web de Datos

Especificar

Modelar

RDF Generation

Publication

Links Generation

Exploitation

Misma visión (Shared

understanding)

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Tendencias en la construcción de ontologías

•  Reutilizar recursos ricos en conocimientos •  Construcción de ontologías y vocabularios de forma

colaborativa •  Conectar ontologías y vocabularios en redes

Construcción De ontologías

Page 58: Tecnologías Semánticas en la Web de Datos

28/11/12

10

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Modelar

19

Buscar Ontologías

Linked Open Vocabularies

¿Son apropiados?

Construir el modelo reutilizando vocabularios

existentes

Si

No

Buscar recursos basados en conocimientos

Catálogos Institucionales y estándares

¿Son apropiados?

Transforma el recurso en una ontología

Si

No

Construye desde el principio usando la metodología NeOn

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Búscar vocabularios en LOV

•  Ecosistema de vocabularios utilizados en datos abiertos enlazados (RDFS or OWL ontologies) •  300 vocabularios descritos con metadatos •  Clasificados en espacios (vocabulary spaces) •  Enlazados usando VOAF •  Servicios

•  Consulta •  Búsqueda •  Métricas

20

Linked Open Vocabularies (LOV)

http://labs.mondeca.com/dataset/lov/

Page 59: Tecnologías Semánticas en la Web de Datos

28/11/12

11

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Los espacios en LOV

21

Generales

Bibliotecas

Organizaciones sociales

Espacio Tiempo Eventos

Multimedia

Ciencia

Web

Recomendaciones

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Descripción de vocabularios en LOV

22

Metadatos

Vocabularios que usa

Vocabularios que lo usan

Versiones

Page 60: Tecnologías Semánticas en la Web de Datos

28/11/12

12

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

1.  Introducción 2.  Tipos de vocabularios 3.  Proceso de Construcción 4.  Ejemplos de Vocabularios

•  Personas y Organizaciones: FOAF, vCard, ORG •  Documentos: DC, BIBO •  Geo: puntos, curvas y polígonos •  Estadísticas: Data Cube •  Bibliotecas: FRBR •  Otros vocabularios: sensores, provenance, VOID

5.  Ejemplos de Redes de vocabularios en aplicaciones de datos enlazados •  Instituto Geográfico Nacional

23

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Vocabularios de Personas y Organizaciones

24

Page 61: Tecnologías Semánticas en la Web de Datos

28/11/12

13

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

FOAF– Friend Of A Friend

•  Vocabulario RDF para describir: •  Personas •  Grupos •  Documentos

o  http://www.foaf-project.org/

25

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

FOAF – relación con otros vocabularios

26

Page 62: Tecnologías Semánticas en la Web de Datos

28/11/12

14

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

FOAF - Evolución

27

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

FOAF - El vocabulario

28

Page 63: Tecnologías Semánticas en la Web de Datos

28/11/12

15

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

FOAF - Una parte del modelo

29

Extracto del modelo de FOAF

foaf:Person

foaf:Document

foaf:knows

foaf:Imagefoaf:publications- foaf:firstName- foaf:surname

owl:Thing

foaf:mbox

foaf:Agent

foaf:Group

foaf:Organization

- foaf:familyname

wgs_84:SpatialThing

foaf:based_near

foaf:homepage

foaf:img

foaf:depiction

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

FOAF- modelo e instancias

30

oeg : Asun

foaf : Person

foaf : Document

foaf : knows

foaf : Image foaf : publications - foaf : firstName - foaf : surname

owl : Thing

foaf : mbox

foaf : Agent foaf : Group foaf : Organization

- foaf : familyname

wgs _ 84 : SpatialThing foaf : based _ near

foaf : homepage

foaf : img

oeg : MC foaf : knows

asun @ fi . upm . es

foaf : mbox

http :// oeg - upm . net /

foaf : homepage

foaf : depiction

http ://.../ people / asun _ oeg . png foaf : img

http :// www . springer . com /.../ 978 - 3 - 642 - 24793

foaf : publications foaf : publications

foaf : firstName foaf : surname foaf : firstName

foaf : surname “Mari Carmen”

“Suárez de Figueroa”

“Asunción”

“Gómez-Pérez”

http :// springer . com / … / images / NeOnBook . tif

foaf : depiction

instanceOf instanceOf instanceOf

instanceOf

instanceOf

instanceOf

instanceOf

Page 64: Tecnologías Semánticas en la Web de Datos

28/11/12

16

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

RDF de ejemplo instanciación de Foaf

31

XML

Turtle

V-Card– Tarjetas de presentación

•  vCard automates the exchange of personal and organization information typically found on a traditional business card.

•  RDF Classes: •  Vcard •  Name •  Address •  Organisation, •  Location •  Label •  Tel •  Email.

32

http://www.w3.org/Submission/vcard-rdf/

Page 65: Tecnologías Semánticas en la Web de Datos

28/11/12

17

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Ejemplo instanciación Vcard

33

vcard:Name

vcard:urlvcard:email

- vcard:given-name- vcard:family-name

owl:Thing

vcard:nvcard:VCard

oeg:Asun

[email protected]

vcard:email

http://oeg-upm.net/

vcard:urlvcard:given-name vcard:family-name

“Asunción” “Gómez”

oeg:AsunNamevcard:n

instanceOf

instanceOfinstanceOf

instanceOf

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

RDF de ejemplo instanciación de VCard

34

XML

Turtle

Page 66: Tecnologías Semánticas en la Web de Datos

28/11/12

18

35

foaf:Person

foaf:Document

foaf:knows

foaf:Imagefoaf:publications- foaf:firstName- foaf:surname

owl:Thing

foaf:mbox

foaf:Agent

foaf:Group

foaf:Organization

- foaf:familyname

wgs_84:SpatialThing

foaf:based_near

foaf:homepage

foaf:img

foaf:depiction

vcard:Name

vcard:urlvcard:email

- vcard:given-name- vcard:family-name

owl:Thing

vcard:nvcard:VCard

FOAF VCard

36

vcard:Name

vcard:urlvcard:email

- vcard:given-name- vcard:family-name

owl:Thing

vcard:nvcard:VCard

oeg:Asun

[email protected]

vcard:email

http://oeg-upm.net/

vcard:urlvcard:given-name vcard:family-name

“Asunción” “Gómez”

oeg:AsunNamevcard:n

instanceOfinstanceOf instanceOf

instanceOf

FOAF

VCard

oeg : Asun

foaf : Person foaf : Document

- foaf : firstName - foaf : surname

owl : Thing foaf : mbox

foaf : Agent foaf : Group foaf : Organization

- foaf : familyname

foaf : homepage

asun @ fi . upm . es foaf : mbox

http :// oeg - upm . net / foaf : homepage foaf : firstName foaf : surname

“Asunción”

“Gómez-Pérez”

instanceOf instanceOf

instanceOf

Page 67: Tecnologías Semánticas en la Web de Datos

28/11/12

19

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

ORG: Una ontología de organizaciones (W3C) •  ORG es una ontología para representar datos de

organizaciones. •  Estructura de la organización

•  Noción •  Sub-organizaciones y unidades •  Fin

•  Estructura de reporte •  Miembros •  Roles, •  Relaciones entre miembros

•  Ubicación •  Edificios, direcciones, etc.

•  Historia (fusiones, cambios de nombre)

37

http://www.w3.org/TR/vocab-org/

ORG: Una ontología para organizaciones

38

http://www.w3.org/TR/vocab-org/

Page 68: Tecnologías Semánticas en la Web de Datos

28/11/12

20

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

ORG: Metadatos

39

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

ORG: Relación con otros vocabularios

40

Page 69: Tecnologías Semánticas en la Web de Datos

28/11/12

21

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

ORG - Evolución

41

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

ORG: El vocabulario

42

Page 70: Tecnologías Semánticas en la Web de Datos

28/11/12

22

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

ORG - Una parte del modelo

43

Extracto del modelo de ORG

org:Post

org:hasUnit/unitOforg:Organization

org:OrganizationalUnit

foaf:Agent org:membetOf

org:postIn/hasPost

org:headOf

org:holds/heldBy

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

ORG: modelo e instancias

44

instanceOf

instanceOf

instanceOf

instanceOf

instanceOfoeg:Asun

org:Post

org:hasUnit/unitOforg:Organization

org:OrganizationalUnit

foaf:Agent org:memberOf

org:postIn/hasPost

oeg:MCfoaf:knows

http://.../people/asun_oeg.png

foaf:img

foaf:firstNamefoaf:surname foaf:firstName

foaf:surname

“Mari Carmen”

“Suárez de Figueroa”

“Asunción”

“Gómez”

org:headOf

org:holds/heldBy

univEs:UPM

skos:prefLabel

“Universidad Politécnica de

Madrid”

upm:FI

skos:prefLabel

“Facultad de Informática”

fi:DIA

skos:prefLabel

“Departamento de Inteligencia

Artificial”

org:unitOf

org:unitOf

org:memberOf

org:memberOf

org:memberOf org:memberOf

org:memberOf

org:memberOf

org:headOf

fi:15

skos:prefLabel

“Director de departamento”

org:postIn

org:holds/heldBy

instanceOf

Page 71: Tecnologías Semánticas en la Web de Datos

28/11/12

23

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

ORG: modelo e instancias – Sintaxis Turtle

45

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

ORG: modelo e instancias – Sintaxis RDF/XML

46

Page 72: Tecnologías Semánticas en la Web de Datos

28/11/12

24

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

1.  Introducción 2.  Tipos de vocabularios 3.  Proceso de Construcción 4.  Ejemplos de Vocabularios

•  Personas y Organizaciones: FOAF, vCard, ORG •  Documentos: DC, BIBO •  Geo: puntos, curvas y polígonos •  Estadísticas: Data Cube •  Bibliotecas: FRBR •  Otros vocabularios: sensores, provenance, VOID

5.  Ejemplos de Redes de vocabularios en aplicaciones de datos enlazados •  Instituto Geográfico Nacional

47

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

DC: The Bibliographic Ontology

•  Dublin Core es un ontología para describir recursos mediante metadatos simples y generales (DC terms).

•  Subconjunto de 15 elementos (DC elements) reconocidos por IETF RFC 5013, ANSI/NISO Standard Z39.85-2007 y ISO Standard 15836:2009.

•  Pensado para ser utilizado junto con otros vocabularios especializados de acuerdo a las necesidades de implementación.

48

•  http://dublincore.org/documents/2012/06/14/dcmi-terms/?v=terms

Page 73: Tecnologías Semánticas en la Web de Datos

28/11/12

25

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

DC: Relación con otros vocabularios

49

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

DC: Evolución

50

Page 74: Tecnologías Semánticas en la Web de Datos

28/11/12

26

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

DC: El vocabulario

51

126 Elementos

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

DC: Una parte del modelo

52

Extracto del modelo de DC

dc:BibliographicResource

owl:Thingdc:coverage

dc:Agent

dc:LocationPeriodOrJurisdiction

dc:MediaTypeOrExtent

dc:creatordc:contributordc:publisher

dc:descriptiondc:identifier

dc:format

dc:typedc:rights

dc:relationdc:sourcedc:subject

dc:language

dc:LinguisticSystem

dc:RightsStatement

dc:Class

- dc:title

Page 75: Tecnologías Semánticas en la Web de Datos

28/11/12

27

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

DC: modelo e instancias

53

oeg:MC

http://www.springer.com/.../978-3-642-24793-4

dc:creatoroeg:Asundc:contributor

stl:Aldo

dc:contributor

kmi:Enricodc:contributor

http://dbpedia.org/page/Springer_Publishing

dc:publisher

terms:title

“Ontology Engineering in a Networked World”

terms:identifier

“978-3-642-24794-1”

terms:created“2012”

dc:BibliographicResource

dc:Agent

- dc:titleinstanceOf

instanceOf

instanceOf

instanceOf

instanceOf

instanceOf

dc:creatordc:contributordc:publisher

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

RDF de ejemplo instanciación de Dublin Core

54

XML

Turtle

Page 76: Tecnologías Semánticas en la Web de Datos

28/11/12

28

DC en Protégé

55

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

BIBO: The Bibliographic Ontology

•  Bibliographic Ontology (BIBO) para describir datos bibliográficos en la Web

•  BIBO can be used as •  Ontologia de citas •  Clasificación de documentos

56

•  bibliontology.com/ •  http://purl.org/ontology/bibo/

Page 77: Tecnologías Semánticas en la Web de Datos

28/11/12

29

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

BIBO: Relación con otros vocabularios

57

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

BIBO: Evolución

58

Page 78: Tecnologías Semánticas en la Web de Datos

28/11/12

30

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

BIBO: El vocabulario

59

189 Elementos

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

BIBO: Una parte del modelo

60

Extracto del modelo de BIBO

bibo:Document

bibo:Article

bibo:Agent bibo:editor

equivalentClass

bibo:Book

bibo:Thesis

bibo:Proceedings

foaf:Agent

Page 79: Tecnologías Semánticas en la Web de Datos

28/11/12

31

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

BIBO: modelo e instancias

61

instanceOf

instanceOf

instanceOf

instanceOf

oeg:Asun

bibo:Document

bibo:Articlebibo:Agent

bibo:editor

oeg:MC

http://.../people/asun_oeg.png

foaf:img

foaf:firstNamefoaf:surname

foaf:firstName

foaf:surname

“Mari Carmen”

“Suárez de Figueroa”

“Asunción”

“Gómez”

equivalentClass

springer:978-3-642-24794-1 dc:title“Ontology Engineering in a Networked World”@en

“2012”

bibo:Book

bibo:Thesis

bibo:Proceedings

foaf:Agent

dc:date

“978-3-642-24794-1”

bibo:isbn

“444”

bibo:numPages

kmi:EMotta

foaf:firstName

foaf:surname

“Enrico”

“Motta”

cnr:AGangemi

foaf:firstName

foaf:surname

“Aldo”

“Gangemi”

bibo:editor

bibo:editor bibo:editorbibo:editor

springer:Springer

bibo:publisher

instanceOf

instanceOf

BIBO in Protégé

62

bibliontology.com

Page 80: Tecnologías Semánticas en la Web de Datos

28/11/12

32

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

BIBO: modelo e instancias – Sintaxis RDF/XML

64

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

1.  Introducción 2.  Tipos de vocabularios 3.  Proceso de Construcción 4.  Ejemplos de Vocabularios

•  Personas y Organizaciones: FOAF, vCard, ORG •  Documentos: DC, BIBO •  Geo: puntos, curvas y polígonos •  Estadísticas: Data Cube •  Bibliotecas: FRBR •  Otros vocabularios: sensores, provenance, VOID

5.  Ejemplos de Redes de vocabularios en aplicaciones de datos enlazados •  Instituto Geográfico Nacional

65

Page 81: Tecnologías Semánticas en la Web de Datos

28/11/12

33

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Puntos en cartografía: WGS84

•  Vocabulario para representar Puntos •  latitud •  Longitud •  @en

•  http://www.w3.org/2003/01/geo/

66 Asunción Gómez Pérez

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"> <geo:Point> <geo:lat> 55.701</geo:lat> <geo:long>12.552</geo:long> </geo:Point> </rdf:RDF>

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Geoes: Modelo de Geometria

67

geoes:ontology/Polygon

geoes: http://geo.linkeddata.es/ geo: http://www.w3.org/2003/01/geo/wgs84_pos#

geoes:ontology/Geometry

geoes:ontology/Curve geo:Point

rdfs:subClassOf rdfs:subClassOf

rdfs:subClassOf

geo:lat geo:long Collection of 2 or more geo:Points Collection of 3 or

more geo:Points

Composed by Composed by

Page 82: Tecnologías Semánticas en la Web de Datos

28/11/12

34

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Geoes: curvas

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

69

geoes:resource/Embalse/Embalse%20de%20Orellana

rdf:type

geoes:ontology/Embalse (reservoir)

geo:geometry

otalex:resource/4e994dad1c44d2b50597dd64ddfb

cac30de06d80

-5.498

38.985 geo:lat

geo:long

geoes: http://geo.linkeddata.es/ otalex: http://otalex.linkeddata.es/ geo: http://www.w3.org/2003/01/geo/wgs84_pos#

Embalse de Orellana

rdfs:label

otalex:resource/ 38.984222213320045_-5.49938294416971

otalex:resource/wgs84/38.982575823226234_-5.495821779307

759

geo:

form

adoP

or (c

ompo

sed

by)

otalex:resource/wgs84/38.98531526569159_-5.4985940847130

78

geoes:Polígono (Polygon)

rdf:type

otalex:resource/wgs84/…

69

Geoes: Polígonos

Page 83: Tecnologías Semánticas en la Web de Datos

28/11/12

35

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Ejemplo de RDF

70

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

1.  Introducción 2.  Tipos de vocabularios 3.  Proceso de Construcción 4.  Ejemplos de Vocabularios

•  Personas y Organizaciones: FOAF, vCard, ORG •  Documentos: DC, BIBO •  Geo: puntos, curvas y polígonos •  Bibliotecas: •  Estadísticas: Data Cube •  Descripcion de conjuntos de datos: VOID

5.  Ejemplos de Redes de vocabularios en aplicaciones de datos enlazados

6.  Conclusiones

71

Page 84: Tecnologías Semánticas en la Web de Datos

28/11/12

36

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Bibliotecas: FRBR

Works

Expressions

Manifestations

Obra 1

Obra 2

Obra 3

Expresión1 Expresión 2

Manifestación1 Manifestación2

Specification

Modelling

RDF Generation

Publication

Links Generation

Exploitation

72

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Ontología de la BNE: basada en los vocabularios de FRBR

Page 85: Tecnologías Semánticas en la Web de Datos

28/11/12

37

Marimba genera RDF

BNE

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

1.  Introducción 2.  Tipos de vocabularios 3.  Proceso de Construcción 4.  Ejemplos de Vocabularios

•  Personas y Organizaciones: FOAF, vCard, ORG •  Documentos: DC, BIBO •  Geo: puntos, curvas y polígonos •  Bibliotecas: •  Estadísticas: Data Cube •  Descripcion de conjuntos de datos: VOID

5.  Ejemplos de Redes de vocabularios en aplicaciones de datos enlazados

6.  Conclusiones

75

Page 86: Tecnologías Semánticas en la Web de Datos

28/11/12

38

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Data cubes

•  Un cubo puede se r cons ide rado una ex tens ión multidimensional de tablas 2-D (igual que en geometría un cubo es una extensión tridimensional de un cuadrado)

•  El término hiper-cubo se utiliza, en ocasiones, especialmente para los datos con más de tres dimensiones

•  Cada dimensión representa algún atributo en la base de datos (como las ventas, los beneficios, los gastos, etc.)

•  Las celdas en el cubo de datos representan la medida de interés. Por ejemplo, pueden contener un contador para el número de veces que se produce una combinación de atributo en la base de datos, o el valor mínimo, máximo, la suma o media de algún atributo)

•  Las consultas se realizan en el cubo para recuperar información que sirva de apoyo a las decisiones

76

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Data cubes

78

Cubo

Dimensiones

Celdas

Page 87: Tecnologías Semánticas en la Web de Datos

28/11/12

39

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Example: Desempleo

79

Dim

ensi

ón (C

CA

A)

Dimensión (Año)

Celdas (Datos de paro registrado)

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

RDF Data Cube: Vocabulario

80

Cubo

Celdas (Datos)

Dimensión

Fenómeno Observado

Page 88: Tecnologías Semánticas en la Web de Datos

28/11/12

40

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Ejemplo: Data Cube y Desempleo

81

qb:dataSet qb:dataSet

stats:unemployment/Cantabria_2004

stats:unemployment/Canarias_2008

……

rdf:type rdf:type

qb:Observation

stats:unemployment

rdf:type

qb:DataSet

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

1.  Introducción 2.  Tipos de vocabularios 3.  Proceso de Construcción 4.  Ejemplos de Vocabularios

•  Personas y Organizaciones: FOAF, vCard, ORG •  Documentos: DC, BIBO •  Geo: puntos, curvas y polígonos •  Bibliotecas •  Estadísticas: Data Cube •  Otros Vocabularios: sensores, provenance, VOID,

DCAT, … 5.  Ejemplos de Redes de vocabularios en aplicaciones

de datos enlazados •  Instituto Geográfico Nacional

82

Page 89: Tecnologías Semánticas en la Web de Datos

28/11/12

41

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012 83

SSN Ontology with other Ontologies

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Provenance

84

RDF    Store  

PROVENANCE  Model  (RDF(S))  

1

Del proceso •  OPM, Provernir, PM, •  PROV-O @W3C

Filev1.  txt  

Revision  Process  

generatedBy  

File.txt  

used  

Meta-provenance •  DC-PROV @ W3C (ongoing) •  OAI-ORE

Del Recurso •  DC, Premis, SWANL •  EDM (including agregation)

creator  

rights  

creaJonDate  

John  

12-­‐2-­‐1900  

GPL  

Page 90: Tecnologías Semánticas en la Web de Datos

28/11/12

42

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

DCAT: Data Catalog Vocabulary

•  DCAT es un vocabulario para facilitar la interoperabilidad de catálogos de datos publicados en la web.

•  DCAT facilita la tarea de descubrir catálogos de datos y el consumo de metadatos procedentes de distintos catálogos.

•  Los principales conceptos descritos en DCAT son: •  Catálogo •  Record de un catálogo •  Conjunto de datos •  Distribución •  Descarga •  Servicio web

85

•  http://www.w3.org/TR/vocab-dcat/

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

DCAT: El vocabulario

86

Imagen tomada de http://www.w3.org/TR/vocab-dcat/

Page 91: Tecnologías Semánticas en la Web de Datos

28/11/12

43

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

¿Qué es voID?

•  vocabulario en RDFS publicado por el W3C

•  Permite la descripción de un conjunto de datos RDF

•  Facilita el descubrimiento y la utilización del dataset por parte de usuarios potenciales (e.g. agregadores, indexadores, desarrolladores de aplicaciones)

87 Asunción Gómez Pérez

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

•  Metadatos generales: licencia, autor, temática, número de tripletas...

•  Métodos de acceso: dirección SPARQL endpoint, ficheros descargables..

•  Metadatos de estructura: recursos de ejemplo, patrón de URIs, vocabularios utilizados..

•  Linksets (conjuntos de datos a los que enlaza el dataset): describe la propiedad utilizada (e.g. owl:sameAs, skos:closeMatch), la URI del dataset con el que se enlaza, enlaces de ejemplo…

VOID

88

Page 92: Tecnologías Semánticas en la Web de Datos

28/11/12

44

BNE VOID

89 Asunción Gómez Pérez

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

adms: Asset Description Metadata Schema

•  El vocabulario adms describe conceptos relacionados con la interoperablidiad semántica de recursos.

•  Incluye conceptos como “Repositorio de recursos semanticos”, “Recurso semántico” y “Distribución de recursos semánticos” que son especializaciones de conceptos mas generales: Repositorio y Distribución.

•  El vocabulario adms ha sido creado en el programa de soluciones de interoperabilidad para las administraciones públicas europeas (ISA: Interoperability solutions for European public administrations) de la comisión europea.

90

•  http://www.w3.org/ns/adms#

Page 93: Tecnologías Semánticas en la Web de Datos

28/11/12

45

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

adms: El vocabulario

91

Imagen tomada de http://www.w3.org/ns/adms

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

1.  Introducción 2.  Tipos de vocabularios 3.  Proceso de Construcción 4.  Ejemplos de Vocabularios 5.  Ejemplos de Redes de vocabularios en

aplicaciones de datos enlazados 6.  Conclusiones

92

Page 94: Tecnologías Semánticas en la Web de Datos

28/11/12

46

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Ontologias de geolinkeddata

93

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Acceso uniforme a BD

OMI

NGCE BCN200 NOMGEO

Lago Ontología de fenómenos

Redes de Ontologías

Lago Lago de Agua dulce Lago de agua salada

SPARQL Endpoints URI: http://geo.linkeddata.es/NGCE/resource/Laguna/Tae%C3%B1a%2C%20Laguna%20de URI: http://geo.linkeddata.es/NGCE/resource/Laguna/Tollos%2C%20Laguna%20de%20los […] URI: http://geo.linkeddata.es/NOMGEO/resource/Laguna/Hilejas%2C%20Laguna%20de%20las URI: http://geo.linkeddata.es/NOMGEO/resource/Laguna/Tejo%2C%20Laguna%20del […] URI: http://geo.linkeddata.es/BCN200/resource/Laguna/Laguna%20de%20Paniagua URI: http://geo.linkeddata.es/BCN200/resource/Laguna/Laguna%20Laguna%20 […]

La respuesta final compuesta por 1.806 URI (38 de NGCE, 1.416 de NOMGEO y 406 de BCN200).

?

Page 95: Tecnologías Semánticas en la Web de Datos

28/11/12

47

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

02

-  Tipo •  NDepresión •  Glaciar •  Batimétormal • rica -  Categoría •  Normal •  Maestra •  Auxiliar -  Origen •  Desconocido •  Restitución •  Digitalización •  MDT

0201 Curva de nivel

http://mayor2.dia.fi.upm.es/oeg-upm/files/phenomontology/Phenom4.0.1.owl

Ontología de fenónmenos cartográficos

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Ontología de Hidrología

Nivel superior

Nivel inferior

Page 96: Tecnologías Semánticas en la Web de Datos

28/11/12

48

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Implementación

12

3

4

5

+ Pellet

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Ontologias de Geolinkeddata

hasStatisticalData

on

Ontology

Specification

Legend

hydrOntology

4

FAO

FAO Geopolitical ontology

WGS84

4W3C Vocabulary

GML

4GML Specification

O. Statistics

SCOVO

O. Time

W3C Time

hasLat/Long

hasGeometry

hasLat/Long

hasGeometry

hasLocation/isLocated

Thesaurus

UNESCO

4EGM / ERM

GeoNames…

scv:Dimension scv:Item

scv:Dataset

WGS84 Geo Positioning: an RDF

vocabulary hydrographical

phenomena (rivers, lakes, etc.)

Ontology for OGC Geography Markup Language

Vocabulary for instants, intervals, durations, etc.

Names and international code systems for territories and groups

Following the INSPIRE (INfrastructure for SPatial InfoRmation in Europe) recommendation. hydrOntology,SCOVO, FAO Geopolitcal, WGS84, GML, and Time

Classes 33 33

Object Properties 44 44

Data Properties 318 318

reused

Page 97: Tecnologías Semánticas en la Web de Datos

28/11/12

49

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Ontologías de datos metereológicos

99

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

1.  Introducción 2.  Tipos de vocabularios 3.  Proceso de Construcción 4.  Ejemplos de Vocabularios 5.  Ejemplos de Redes de vocabularios en aplicaciones

de datos enlazados 6.  Conclusiones

100

Page 98: Tecnologías Semánticas en la Web de Datos

28/11/12

50

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Conclusiones

Las AA.PP. deben consensuar qué

vocabularios van a utilizar para describir sus datos y facilitar la

interoperabilidad semántica

Los vocabularios deben ser multilingües

101 Asunción Gómez Pérez

Page 99: Tecnologías Semánticas en la Web de Datos

26/11/12

1

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Índice

1.  Web de Linked Data: Conceptos Básicos A. Gómez Pérez (30 min)

2.  RDF, RDF Schema y SPARQL O. Corcho (90 min)

3.  Vocabularios A. Gómez Pérez (90 min)

4.  Herramientas de publicación de datos para portales de datos abiertos

O. Corcho (30 min)

1

Herramientas de publicación de datos para portales de

datos abiertos Asunción Gómez-Pérez, Oscar Corcho

Facultad de Informática, Universidad Politécnica de Madrid Campus de Montegancedo sn, 28660 Boadilla del Monte, Madrid

http://www.oeg-upm.net [email protected]

Agradecimientos: D. Vila, B. Villazón

Curso en Red.es. 29 de Noviembre de 2012

Page 100: Tecnologías Semánticas en la Web de Datos

26/11/12

2

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Metodología de generación y publicación de Linked Data

•  El proceso de publicación en Linked Data tiene un modelo de ciclo de vida incremental iterativo

3 3

Especificar

Modelar

Generar RDF

Publicar

Explotar

Enlazar

Especificar

Modelar

Generar RDF

Enlazar

Publicar

Explotar

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Metodología

Especificación •  Análisis de fuentes de datos •  Diseño de URIs •  Definición de licencias

Especificar

Modelar

Generar RDF

Publicar

Explotar

Enlazar

4

Page 101: Tecnologías Semánticas en la Web de Datos

26/11/12

3

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

GeoLinkedData – Análisis de las fuentes de datos

5

Especificación

Índice de producción industrial Provincia

Año

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Diseño de URIs

•  Usar URIs “cool”, en lugar de URIs opacas, siempre que sea posible

•  Separar URIs de TBox (vocabulario) y ABox (datos). •  URI base

http://datos.gob.es/ http://salud.datos.gob.es/

•  URIs del vocabulario http://datos.gob.es/ontology/{class|property} http://datos.gob.es/def/{class|property}

•  URIs de datos http://datos.gob.es/resource/{individual} http://datos.gob.es/id/{individual} http://datos.gob.es/resource/province/Madrid

6

Especificación

Page 102: Tecnologías Semánticas en la Web de Datos

26/11/12

4

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Definición de la licencia

•  Múltiples posibilidades •  The UK Open Government License •  Open Database License •  Public Domain Dedication and License •  Open Data Commons Attribution License •  The Creative Commons Licenses

•  También es posible reutilizar y aplicar una licencia existente de las fuentes de datos del gobierno.

•  GeoLinkedData: Reutilizamos la licencia original de

las fuentes de datos del gobierno. Las fuentes de datos IGN y INE tienen sus propias liciencias, similares a Attribution-Share Alike 2.5 Generic License

7

Especificación

http://creativecommons.org/licenses/by-sa/2.5/

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Metodología

Generación de RDF •  Tomar las fuentes de datos seleccionadas en la

actividad de especificación y transformarlas a RDF de acuerdo con el vocabulario creado en la actividad de modelado

•  Algunas herramientas •  CSV y hojas de cálculo

•  Apache Any23, RDF Refine, XLWrap, RDF123, NOR2O, Tabels

•  Bases de datos relacionales •  D2R Server, ODEMapster, Morph, W3C

RDB2RDF WG – R2RML •  XML

•  GRDDL, ReDeFer •  http://www.w3.org/wiki/ConverterToRdf

8

Especificar

Modelar

Generar RDF

Publicar

Explotar

Enlazar

Page 103: Tecnologías Semánticas en la Web de Datos

26/11/12

5

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Industry Production Index

Province

Year

NOR2O  

9

Generación GeoLinkedData - Transformación

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

•  R2RML es un lenguaje declarativo para describir mapeos entre los esquemas de las bases de datos relacionales y los vocabularios.

10

www.oeg-upm.net/index.php/en/downloads/9-r2o-odempaster

Generación GeoLinkedData - Transformación

Page 104: Tecnologías Semánticas en la Web de Datos

26/11/12

6

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

•  Creación de los mapeos (todavía no está en R2RML)

11

Generación GeoLinkedData - Transformación

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012 12

•  Herramienta para la generación de información de geometría en RDF.

•  La geometría debe estar disponible en GML o WKT

http://www.oeg-upm.net/index.php/en/downloads/151-geometry2rdf

Generación GeoLinkedData - Transformación

Page 105: Tecnologías Semánticas en la Web de Datos

26/11/12

7

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Oracle STO UTIL package

SELECT TO_CHAR(SDO_UTIL.TO_GML311GEOMETRY(geometry)) AS Gml311Geometry

FROM "BCN200"."BCN200_0301L_RIO" c WHERE c.Etiqueta='Arroyo'

13

Generación GeoLinkedData - Transformación

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Generación GeoLinkedData - Transformación

Page 106: Tecnologías Semánticas en la Web de Datos

26/11/12

8

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Enlazado

SameAs

15

Generación de enlaces

http://www.geonames.or

g/2521436/

http://geo.linkeddata.es/

.../Azuaga

http://dbpedia.org/resource/Azuaga

SameAs SameAs

DBpedia GeoNames GeoLinked Data

http://otalex.linkeddata.es/.

../Azuaga

SameAs SameAs

Herramienta Silk

Especificar

Modelar

Generar RDF

Publicar

Explotar

Enlazar

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012 16

Identificar conjuntos de datos con los que se

puede enlazar

http://ckan.net

Descubrir relaciones entre conjuntos de datos

Silk LIMES

Validar las relaciones descubiertas sameAs Validator

http://aksw.org/Projects/limes http://www4.wiwiss.fu-berlin.de/bizer/silk/

http://oeg-dev.dia.fi.upm.es:8080/sameAs/

Enlazado Generación de enlaces

Page 107: Tecnologías Semánticas en la Web de Datos

26/11/12

9

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012 17

GeoLinkedData

GeoNames DBPedia

http://sws.geonames.org/

6355233/

http://geo.linkeddata.es/...

/Madrid

http://dbpedia.org/resource/Madrid

….

…. ….

….

….

….

GeoLinkedData - Enlazado Generación de enlaces

owl:sameAs owl:sameAs

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012 18

http://oegdev.dia.fi.upm.es:8080/sameAs/

GeoLinkedData – Validación de enlaces Generación de enlaces

Page 108: Tecnologías Semánticas en la Web de Datos

26/11/12

10

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Publicación

SPARQL

Pubby

Linked Data HTML

Virtuoso 6.1.4

Pubby 0.3.3 Incluyendo “provenance”

10.243.266 Tripletas

http://otalex.linkeddata.es/resource/Municipio/Azuaga 19

http://www4.wiwiss.fu-berlin.de/pubby/

Especificar

Modelar

Generar RDF

Publicar

Explotar

Enlazar

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

•  Registrar el conjunto de datos en el CKAN Registry •  También aplicable a las normas a seguir en el registro de

datos.gob.es

•  Generar ficheros sitemap para el conjunto de datos, usando sitemap4rdf

•  Enviar el fichero sitemap a Google y Sindice

20

Registro de conjuntos de datos Publicación

http://www.w3.org/wiki/TaskForces/CommunityProjects/LinkingOpenData/DataSets/CKANmetainformation

Page 109: Tecnologías Semánticas en la Web de Datos

26/11/12

11

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Visualización Explotación

map4rdf:

•  Visor sobre Google maps de recursos RDF •  Recursos RDF con información geoespacial

•  Usado en otras aplicaciones como AEMET, Goodrelations, GeoLinked Data, El Viajero…

map4rdf

http://oeg-dev.dia.fi.upm.es/projects/map4rdf/

SPARQL

Triplestore

21

Especificar

Modelar

Generar RDF

Publicar

Explotar

Enlazar

http://geo.linkeddata.es/

Especificación

Model

Generación de RDF

7 bases de datos geográficas •  Granularidad •  Escala •  Multilingualidad NOR2O  

Geometry2RDF  

Geometry column

hasStatisticalData

on

Ontology

Specification

Legend

hydrOntology

4

FAO

FAO Geopolitical ontology

WGS84

4W3C Vocabulary

GML

4GML Specification

O. Statistics

SCOVO

O. Time

W3C Time

hasLat/Long

hasGeometry

hasLat/Long

hasGeometry

hasLocation/isLocated

Thesaurus

UNESCO

4EGM / ERM

GeoNames…

Acceso uniforme a varias bases de datos del IGN

Page 110: Tecnologías Semánticas en la Web de Datos

26/11/12

12

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Resumen de algunas iniciativas Fase BNE IGN AEMET PRISA INE

Modelado

Generación de

RDF

Generación de enlaces

Publicación

Explotación 23

Scovo

DataCube SSN ontology

SIOC DC

map4rdf SPARQL

geometry2rdf NOR2O

sitemap4rdf Pubby

MARiMbA

Silk Silk Silk NOR2O

DNB VIAF LIBRIS DBPEDIA

DBPEDIA Geonames

Geolinkeddata.es DBPEDIA Geolinkeddata.es Geolinkeddata.es

hydrontology

Wgs84 time

CSV parser CSV parser NOR2O

Tecnologías Semánticas en la Web de Datos. Red.es. 29 de noviembre de 2012

Mensajes para llevarse a casa •  URI

•  Seguir guías existentes para la creación de URIs (por ejemplo, las del UK Cabinet Office)

•  Reutilizar URIs existentes de fuentes de datos de autoridad

•  Modelos •  Reutilizar modelos existentes siempre que sea posible •  Crear modelos y vocabularios de fuentes de datos de autoridad ya existentes

•  Generación •  En muchas ocasiones se necesitan herramientas específicas del dominio

•  Enlazado •  Las herramientas genéricas funcionan generalmente bien •  Enlaces a otros conjuntos de datos con…

•  Equivalencias (sameAs) •  Otros enlances

•  Descubrimiento •  Además del registro datos.gob.es, utilizar sitemap4rdf para darle información a

los motores de búsqueda, y registrarse en CKAN.

•  Utilizar un ciclo iterativo en el desarrollo (varias fases)

24

Municipality Person birthPlace

Dbpedia:cervantes bne:Cervantes sameAs