SlideShare ist ein Scribd-Unternehmen logo
1 von 62
Downloaden Sie, um offline zu lesen
2
#LDR_JPD15
Contenido
• Datos enlazados
• DBpedia del español
• Paquetes R
DATOS ENLAZADOS
¿Qué son?
4
#LDR_JPD15
Terminología
Bla, bla, bla, RDF, bla, bla,
blaaa, SPARQL, bla, bla, bla,
Semantic Web, bla, bla, bla,
bla, bla, bla, Linked Data,
bla, bla Open Data, bla, bla,
bla, blaaaaaa, bla, bla,
blaaa, bla, bla, Ontologías,
blaaa, blaaa, bla..
5
#LDR_JPD15
Terminología
6
#LDR_JPD15
Terminología
7
#LDR_JPD15
Datos  Business?
8
#LDR_JPD15
Datos RDF: Datos con sentido
9
#LDR_JPD15
Datos con semántica
• Semántica porque
– Enlaza con datos de una (o varias) ontologías
• Una ontología es un modelo matemático que permite
– Razonar  Crear nuevos datos
– Preguntar si algo existe o una afirmación es cierta
– Sin enlaces a ontologías no hay semántica
10
#LDR_JPD15
Datos con semántica
• Ejemplo: “Cervantes escribió el Quijote”
“Miguel de Cervantes”@es
http://es.dbpedia.org/resource/Miguel_de_Cervantes
http://dbpedia.org/ontology/Writer
“Cervantes”
dbpedia:alias
rdf:type
rdfs:label
“Don Quijote de la Mancha”@es
http://es.dbpedia.org/resource/Don_Quijote_de_la_Mancha
dbpedia:author
rdfs:label
http://dbpedia.org/ontology/Artist
rdfs:subClassOf
11
#LDR_JPD15
Datos con semántica
• Razono: “Cervantes es un artista”
“Miguel de Cervantes”@es
http://es.dbpedia.org/resource/Miguel_de_Cervantes
http://dbpedia.org/ontology/Writer
“Cervantes”
dbpedia:alias
rdf:type
rdfs:label
“Don Quijote de la Mancha”@es
http://es.dbpedia.org/resource/Don_Quijote_de_la_Mancha
dbpedia:author
rdfs:label
http://dbpedia.org/ontology/Artist
rdfs:subClassOf
rdf:type
12
#LDR_JPD15
http://es.dbpedia.org/Yann_Martel
Datos con semántica
• Añado más enlaces y datos
http://es.dbpedia.org/resource/La_vida_de_Pi
dbpedia:author
dbpedia:literaryGenreOf
http://upload.wikimedia.org/Wikipedia/commons/thumbd...
dbpedia:thumbnail
http://es.dbpedia.org/resource/Novela_de_aventuras
dbpedia:literaryGenre
13
#LDR_JPD15
Datos con semántica
• Añado más enlaces y datos
14
#LDR_JPD15
Datos con semántica
• Añado más enlaces y datos
15
#LDR_JPD15
Datos con semántica
• Conjunto de datos (dataset)
DBPEDIA DEL ESPAÑOL
Datos en español
17
#LDR_JPD15
Datos con semántica
• Conjunto de datos (dataset)
18
#LDR_JPD15
DBpedia
• Conjunto de datos de la Wikipedia
DBpedia
19
#LDR_JPD15
DBpedia del español (esDBpedia)
• Conjunto de datos de la Wikipedia del idioma
español
esDBpedia
20
#LDR_JPD15
DBpedia: extracción de Linked Data
RDF Triple
store
Rendering
21
#LDR_JPD15
2007
http://lod-cloud.net/versions/2007-10-08/lod-cloud.png
25 datasets
DBpedia, núcleo de Linked Data
22
#LDR_JPD15
2010
http://lod-cloud.net/versions/2011-09-19/lod-cloud_colored.png
203 datasets
DBpedia, núcleo de Linked Data
23
#LDR_JPD15
2011
http://lod-cloud.net/versions/2011-09-19/lod-cloud.png
295 datasets
DBpedia, núcleo de Linked Data
24
#LDR_JPD15
2014
570 datasets
DBpedia, núcleo de Linked Data
26
#LDR_JPD15
esDBpedia y la lingüística
• Parte de
Linguistic
LOD cloud
27
#LDR_JPD15
Hasta aquí… ¿bien?...
DATOS, DATOS, DATOS
Dame
29
#LDR_JPD15
¿Qué datos tiene DBpedia?
• DBpedia (idioma inglés). Datos septiembre 2014 (última
versión)
• Cosas (entradas Wikipedia): 4.58 millones
– Clasificadas en la ontología DBpedia: 4.22
1.445.000 personas 735.000 lugares
241.000 organizaciones 123.000 discos 87.000 películas…
• DBpedias de 125 idiomas
• Enlaces:
25.2 millones a imágenes 29.8 millones a páginas web externas
50.0 millones a otros RDF datasets 80,9 millones a categorías Wikipedia
41.2 millones a categorías YAGO
• Tripletas (triples)
3000 millones de triples (583 millones de la versión inglesa)
(No están todos en el EP)
30
#LDR_JPD15
La ontología DBpedia
• Es una ontología OWL
–Con 685 clases
–Con 2679 propiedades
• 1600 DBpediaDatatypeProperty
• 1079 DBpediaObjectProperty
– Equivalencias con schema.org
• 47 owl:equivalentClass
• 35 owl:equivalentProperty
31
#LDR_JPD15
Ver las clases y propiedades
http://mappings.dbpedia.org/server/ontology/classes
http://mappings.dbpedia.org/server/ontology/classes/BullFighter
http://mappings.dbpedia.org/index.php/OntologyProperty:DebutTeam
SPARQL
Sacando datos a un dataset de linked data
33
#LDR_JPD15
Sacando datos del EP
• EP = EndPoint
• “El EP” de esDBpedia
http://es.dbpedia.org/sparql
34
#LDR_JPD15
Sacando datos del EP
• La consulta
(“la query”)
– Sintaxis similar a
SQL
(bases de datos
tradicionales)
35
#LDR_JPD15
Sacando datos del EP
• Formatos de
salida
– Por omisión HTML
– Otros formatos
• JSON
• CSV
• RDF
• …
36
#LDR_JPD15
Sacando datos del EP
• Ejemplo “zero”
– Número de instancias de cada clase
de la ontología DBpedia
SELECT ?class
(COUNT(?s) AS ?count)
WHERE {
?s a ?class .
filter (strstarts(str(?class),
"http://dbpedia.org/ontology"
))
}
GROUP BY ?class
ORDER BY DESC(?count)
37
#LDR_JPD15
¡¡Alto ahí!!. SPARQuéeel?????
38
#LDR_JPD15
Aprende SPARQL
39
#LDR_JPD15
Aprende SPARQL
• A base de ejemplos
– En el wiki de esDBpedia
40
#LDR_JPD15
Aprende SPARQL
• A base de ejemplos
– En el wiki de esDBpedia
41
#LDR_JPD15
Queries “duras”
• Hay queries que necesitan mucho tiempo de cálculo
• Son rechazadas por el EP
• Ejemplo
– Número de instancias de cada propiedad de la ontología DBpedia
• Esta suele rechazarse por ser muy pesada
SELECT ?p (COUNT(?s) AS ?count) WHERE {
?s ?p ?o .
filter (strstarts(str(?p), "http://dbpedia.org/ontology"))
} GROUP BY ?p ORDER BY DESC(?count)
42
#LDR_JPD15
Más datasets
• The Data hub
– Filtra por
• Tags
– lod
– format-rdf
• Formats
– api/sparql
43
#LDR_JPD15
Hasta aquí… ¿bien?...
44
#LDR_JPD15
Hasta aquí… ¿bien?...
45
#LDR_JPD15
Hasta aquí… ¿bien?...
USANDO R
¡¡Por fin!!
47
#LDR_JPD15
Package SPARQL
library(SPARQL)
endpoint <- "http://es.dbpedia.org/sparql"
query <-
'
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>
}
'
reslist <- SPARQL(endpoint,query)
df <- reslist$results
df
48
#LDR_JPD15
Package SPARQL
#continuación…
nss <- c("esdbres", "http://es.dbpedia.org/resource/")
reslist <- SPARQL(endpoint,query, ns = nss)
df <- reslist$results
df
• Uso de argmento ns
– Para reducir tamaño de resultado
49
#LDR_JPD15
Múltiples maneras de preguntar
• Científicos españoles
SELECT ?person WHERE{
?person dcterms:subject
<http://es.dbpedia.org/resource/Categoría:Científicos_de_España>
}
PREFIX esdbpr: <http://es.dbpedia.org/resource/>
SELECT ?person WHERE{
?person rdf:type dbpedia-owl:Scientist .
?person dbpedia-owl:country esdbpr:España .
}
Forma1 resultado: 66 científicos
Forma2 resultado: 143 científicos
50
#LDR_JPD15
Múltiples maneras de preguntar
• Desde SPARQL EP: Científicos españoles
– UNION
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX esdbpr: <http://es.dbpedia.org/resource/>
SELECT ?person WHERE{
{
?person dcterms:subject
<http://es.dbpedia.org/resource/Categoría:Científicos_de_España>
}
UNION
{
?person rdf:type dbpedia-owl:Scientist .
?person dbpedia-owl:country esdbpr:España .
}
}
resultado: 209 = 66 + 143
51
#LDR_JPD15
Múltiples maneras de preguntar
• Desde SPARQL EP: Científicos españoles
– UNION
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX esdbpr: <http://es.dbpedia.org/resource/>
SELECT DISTINCT ?person WHERE{
{
?person dcterms:subject
<http://es.dbpedia.org/resource/Categoría:Científicos_de_España>
}
UNION
{
?person rdf:type dbpedia-owl:Scientist .
?person dbpedia-owl:country esdbpr:España .
}
}
resultado: 200
(había 9 duplicados)
52
#LDR_JPD15
Múltiples maneras de preguntar
• Desde R: Científicos españoles
library(SPARQL)
endpoint <- "http://es.dbpedia.org/sparql"
nss <- c("esdbres", "http://es.dbpedia.org/resource/")
queryF1 <-
'
SELECT ?person WHERE{
?person dcterms:subject
<http://es.dbpedia.org/resource/Categoría:Científicos_de_España>
}
'
queryF2 <-
'
PREFIX esdbpr: <http://es.dbpedia.org/resource/>
SELECT ?person WHERE{
?person rdf:type dbpedia-owl:Scientist .
?person dbpedia-owl:country esdbpr:España .
}
'
reslistF1 <- SPARQL(endpoint,queryF1, ns = nss)
reslistF2 <- SPARQL(endpoint,queryF2, ns = nss)
#Devuelve los 9 comunes a las dos queries
intersect (t(reslistF1$results), #Si devuelve una única columna “se lía” y necesita t()
t(reslistF2$results))
53
#LDR_JPD15
Siguiendo la pista
• Ejemplo: Políticos
• Veo la página de Rajoy en Wikipedia
• Veo qué nombre de recurso tiene
– “Mariano_Rajoy”
• Busco sus datos en esDBpedia
– http://es.dbpedia.org/resource/Mariano_Rajoy
– Veo properties
• occupation
• party
• …
54
#LDR_JPD15
Siguiendo la pista
• Ejemplo: Políticos
• Obteniendo los datos de Rajoy en esDBpedia
library(SPARQL)
endpoint <- "http://es.dbpedia.org/sparql"
nss <- c("esdbres", "http://es.dbpedia.org/resource/")
query <-
'
PREFIX dbo: <http://dbpedia.org/ontology/>
PREFIX esdbp: <http://es.dbpedia.org/property/>
PREFIX esdbr: <http://es.dbpedia.org/resource/>
select * where{
esdbr:Mariano_Rajoy ?p ?v
}
'
reslist <- SPARQL(endpoint,query, ns = nss) #Salen 550 datos
head(reslist$results)
55
#LDR_JPD15
Siguiendo la pista
• Ejemplo: Políticos
• Políticos y su partido político
library(SPARQL)
endpoint <- "http://es.dbpedia.org/sparql"
nss <- c("esdbres", "http://es.dbpedia.org/resource/")
query <-
'
PREFIX dbo: <http://dbpedia.org/ontology/>
PREFIX esdbp: <http://es.dbpedia.org/property/>
PREFIX esdbr: <http://es.dbpedia.org/resource/>
select ?uri ?par where{
?uri dbo:occupation esdbr:Político .
?uri dbo:party ?par
}
ORDER BY ?par
'
reslist <- SPARQL(endpoint,query, ns = nss)
nrow(reslist$results)
#Salen 1514 de todas partes del mundo
56
#LDR_JPD15
Siguiendo la pista
• Ejemplo: Políticos
• ¿Cómo saco los políticos españoles?
• Ver preguntas abierta 3 en wiki esDBpedia
???
57
#LDR_JPD15
Coordenadas de recursos
library(ggmap) #Para geocode(), get_map(). Carga ggplot2
library(SPARQL)
endpoint <- "http://es.dbpedia.org/sparql"
query <-
'SELECT * WHERE {
?uri geo:lat ?lat .
?uri geo:long ?lon .
?uri rdf:type ?thetype .
FILTER ( (?lat> 40.0 && ?lat < 41.15) &&
(?lon> -4.5 && ?lon < -3.1)
&& regex(?thetype, "^http://schema.org")
)
}
'
reslist <- SPARQL(endpoint,query)
df <- reslist$results
df$thetype <- factor(df$thetype)
map.center <- geocode("Madrid, Spain")
map <- get_map(c(lon=map.center$lon, lat=map.center$lat),
source="google", zoom=9)
ggmap(map) + geom_point(data=df,
aes(x=lon, y=lat, colour=thetype, position="dodge"),
size=6, alpha=0.8
)
58
#LDR_JPD15
Packages rrdf y rrdflibs
library("rrdf")
#Descarga de la ontología DBpedia
db2014URL <- "http://data.dws.informatik.uni-mannheim.de/dbpedia/2014/dbpedia_2014.owl.bz2"
tempBZ2 <- tempfile()
download.file(db2014URL, tempBZ2) #Lo guarda en tempBZ2
con <- bzfile(tempBZ2) #descomprimo
lines <-readLines(con) #Tengo las líneas en memoria
unlink(tempBZ2)
#Guardo en un fichero (requerido por load.rdf())
tempOWL <- tempfile()
write(lines, file=tempOWL )
model <- load.rdf(tempOWL, format="RDF/XML")
unlink(tempOWL)
#Ya tengo el model y todos los ficheros aux borrados
summarize.rdf(model)
#[1] "Number of triples: 29402"
59
#LDR_JPD15
Packages rrdf y rrdflibs
#Continuación…
#Clases con label
query <-
'PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT ?class ?classLabel WHERE {
?class rdf:type rdfs:Class.
?class rdfs:label ?classLabel.
}'
#OJO! matrix con variables ?class y ?classLabel
res <- sparql.rdf(model, query)
#Lo paso a data.frame
df <- as.data.frame(res, stringsAsFactors = TRUE)
#Pongo TRUE para que sea mono el summary
summary(df)
60
#LDR_JPD15
Packages rrdf y rrdflibs
#Continuación…
nrow(df)
#En total hay 3520, pero muchas están repetidas 13 veces, 12…
#Elimino duplicados
length(unique(df$class))
#Ahora salen 683
#¿Cómo selecciono las labels en inglés?
????
61
#LDR_JPD15
Packages rrdf y rrdflibs
#Continuación…
#¿Cómo selecciono las labels en inglés?
query <-
'PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT ?class ?classLabel WHERE {
?class rdf:type rdfs:Class.
?class rdfs:label ?classLabel.
FILTER(lang(?classLabel) ="en")
}'
res <- sparql.rdf(model, query)
df <- as.data.frame(res, stringsAsFactors = TRUE)
summary(df) #Para ver que no hay multiplicidad
nrow(df) #Salen 683 classes
62
#LDR_JPD15
63
Muchas gracias por vuestra atención
Mariano.Rico@upm.es

Weitere ähnliche Inhalte

Andere mochten auch

DBpedia del idioma español
DBpedia del idioma españolDBpedia del idioma español
DBpedia del idioma españolMariano Rico
 
Presentación d bpedia
Presentación d bpediaPresentación d bpedia
Presentación d bpediaMartha Chenu
 
DBpedia Latinoamérica en ENC 2015
DBpedia Latinoamérica en ENC 2015DBpedia Latinoamérica en ENC 2015
DBpedia Latinoamérica en ENC 2015Nelson Piedra
 
Web Semántica y Linked Data
Web Semántica y Linked DataWeb Semántica y Linked Data
Web Semántica y Linked DataRafael Ramos
 
Maps, projection and scale 2012
Maps, projection and scale 2012Maps, projection and scale 2012
Maps, projection and scale 2012cindipatten
 
Elaboración de mapas para publicaciones científicas y documentos de divulgación
Elaboración de mapas para publicaciones científicas y documentos de divulgaciónElaboración de mapas para publicaciones científicas y documentos de divulgación
Elaboración de mapas para publicaciones científicas y documentos de divulgaciónÁngel M. Felicísimo
 
map projections
map projectionsmap projections
map projectionsom290979
 

Andere mochten auch (12)

DBpedia del idioma español
DBpedia del idioma españolDBpedia del idioma español
DBpedia del idioma español
 
Presentación d bpedia
Presentación d bpediaPresentación d bpedia
Presentación d bpedia
 
Dbpedia
DbpediaDbpedia
Dbpedia
 
DBpedia Latinoamérica en ENC 2015
DBpedia Latinoamérica en ENC 2015DBpedia Latinoamérica en ENC 2015
DBpedia Latinoamérica en ENC 2015
 
TeRRAS
TeRRASTeRRAS
TeRRAS
 
Web Semántica y Linked Data
Web Semántica y Linked DataWeb Semántica y Linked Data
Web Semántica y Linked Data
 
Maps, projection and scale 2012
Maps, projection and scale 2012Maps, projection and scale 2012
Maps, projection and scale 2012
 
Elaboración de mapas para publicaciones científicas y documentos de divulgación
Elaboración de mapas para publicaciones científicas y documentos de divulgaciónElaboración de mapas para publicaciones científicas y documentos de divulgación
Elaboración de mapas para publicaciones científicas y documentos de divulgación
 
map projections
map projectionsmap projections
map projections
 
Map Projections
Map ProjectionsMap Projections
Map Projections
 
Map projections
Map projectionsMap projections
Map projections
 
Consultas sparql
Consultas sparqlConsultas sparql
Consultas sparql
 

Ähnlich wie Datos enlazados con DBpedia y R

02. RDF(S) SPARQL. Tecnologías Semánticas en la Web de Datos
02. RDF(S) SPARQL. Tecnologías Semánticas en la Web de Datos02. RDF(S) SPARQL. Tecnologías Semánticas en la Web de Datos
02. RDF(S) SPARQL. Tecnologías Semánticas en la Web de DatosDatos.gob.es
 
ROH: Proceso de Ingeniería Ontológica & Uso y Extensión de Vocabularios Estándar
ROH: Proceso de Ingeniería Ontológica & Uso y Extensión de Vocabularios EstándarROH: Proceso de Ingeniería Ontológica & Uso y Extensión de Vocabularios Estándar
ROH: Proceso de Ingeniería Ontológica & Uso y Extensión de Vocabularios EstándarDiego López-de-Ipiña González-de-Artaza
 
Lenguaje de recuperación de datos en la web (sparql)
Lenguaje de recuperación de datos en la web (sparql)Lenguaje de recuperación de datos en la web (sparql)
Lenguaje de recuperación de datos en la web (sparql)Hugo Peña
 
The Web of Data
The Web of DataThe Web of Data
The Web of Databetabeers
 
Database Fundamentals - Sesión 1 - SQL Server
Database Fundamentals - Sesión 1 - SQL ServerDatabase Fundamentals - Sesión 1 - SQL Server
Database Fundamentals - Sesión 1 - SQL ServerJulián Castiblanco
 
Herramientas para linked data
Herramientas para linked dataHerramientas para linked data
Herramientas para linked dataIván Ruiz-Rube
 
Consultas sparql en dbpedia
Consultas sparql en dbpediaConsultas sparql en dbpedia
Consultas sparql en dbpediaIsrael Rey
 

Ähnlich wie Datos enlazados con DBpedia y R (20)

Curso integración Web Semántica
Curso integración Web Semántica Curso integración Web Semántica
Curso integración Web Semántica
 
Sparql
SparqlSparql
Sparql
 
Sparql
SparqlSparql
Sparql
 
02. RDF(S) SPARQL. Tecnologías Semánticas en la Web de Datos
02. RDF(S) SPARQL. Tecnologías Semánticas en la Web de Datos02. RDF(S) SPARQL. Tecnologías Semánticas en la Web de Datos
02. RDF(S) SPARQL. Tecnologías Semánticas en la Web de Datos
 
ROH: Proceso de Ingeniería Ontológica & Uso y Extensión de Vocabularios Estándar
ROH: Proceso de Ingeniería Ontológica & Uso y Extensión de Vocabularios EstándarROH: Proceso de Ingeniería Ontológica & Uso y Extensión de Vocabularios Estándar
ROH: Proceso de Ingeniería Ontológica & Uso y Extensión de Vocabularios Estándar
 
Lenguaje de recuperación de datos en la web (sparql)
Lenguaje de recuperación de datos en la web (sparql)Lenguaje de recuperación de datos en la web (sparql)
Lenguaje de recuperación de datos en la web (sparql)
 
The Web of Data
The Web of DataThe Web of Data
The Web of Data
 
El futuro de Big Data: La calidad del análisis. Modelos efectivos y casos de uso
El futuro de Big Data: La calidad del análisis. Modelos efectivos y casos de usoEl futuro de Big Data: La calidad del análisis. Modelos efectivos y casos de uso
El futuro de Big Data: La calidad del análisis. Modelos efectivos y casos de uso
 
Sparql
Sparql Sparql
Sparql
 
Datos abiertos enlazados: Experiencia en la Universidad de Chile
Datos abiertos enlazados: Experiencia en la Universidad de ChileDatos abiertos enlazados: Experiencia en la Universidad de Chile
Datos abiertos enlazados: Experiencia en la Universidad de Chile
 
Sparql
SparqlSparql
Sparql
 
SQL Server Fundamentals
SQL Server FundamentalsSQL Server Fundamentals
SQL Server Fundamentals
 
Ontologia1
Ontologia1Ontologia1
Ontologia1
 
Database Fundamentals - Sesión 1 - SQL Server
Database Fundamentals - Sesión 1 - SQL ServerDatabase Fundamentals - Sesión 1 - SQL Server
Database Fundamentals - Sesión 1 - SQL Server
 
24 aplicaciones rdf
24 aplicaciones rdf24 aplicaciones rdf
24 aplicaciones rdf
 
Curs 1.6. Datos enlazados (2h) OpenDataLab
Curs 1.6. Datos enlazados (2h) OpenDataLabCurs 1.6. Datos enlazados (2h) OpenDataLab
Curs 1.6. Datos enlazados (2h) OpenDataLab
 
Herramientas para linked data
Herramientas para linked dataHerramientas para linked data
Herramientas para linked data
 
Bases de datos bibliográficas
Bases de datos bibliográficasBases de datos bibliográficas
Bases de datos bibliográficas
 
Consultas sparql en dbpedia
Consultas sparql en dbpediaConsultas sparql en dbpedia
Consultas sparql en dbpedia
 
Sparql
SparqlSparql
Sparql
 

Mehr von Mariano Rico

Lexicalizing ontologies with Lemonade Tools
Lexicalizing ontologies with Lemonade ToolsLexicalizing ontologies with Lemonade Tools
Lexicalizing ontologies with Lemonade ToolsMariano Rico
 
Redes sociales en el ámbito investigador y académico
Redes sociales en el ámbito investigador y académicoRedes sociales en el ámbito investigador y académico
Redes sociales en el ámbito investigador y académicoMariano Rico
 
Plagio vs. Síntesis
Plagio vs. SíntesisPlagio vs. Síntesis
Plagio vs. SíntesisMariano Rico
 
Redes sociales en el ámbito académico y científico
Redes sociales en el ámbito académico y científicoRedes sociales en el ámbito académico y científico
Redes sociales en el ámbito académico y científicoMariano Rico
 
Presencia en la web: redes científicas y difusión de publicaciones
Presencia en la web: redes científicas y difusión de publicacionesPresencia en la web: redes científicas y difusión de publicaciones
Presencia en la web: redes científicas y difusión de publicacionesMariano Rico
 
Curso LaTeX. UAM, 2012
Curso LaTeX. UAM, 2012Curso LaTeX. UAM, 2012
Curso LaTeX. UAM, 2012Mariano Rico
 
Usando flex en Windows
Usando flex en WindowsUsando flex en Windows
Usando flex en WindowsMariano Rico
 
Curso Herramientas Avanzadas de Apoyo a la Investigación (versión 2011)
Curso Herramientas Avanzadas de Apoyo a la Investigación (versión 2011)Curso Herramientas Avanzadas de Apoyo a la Investigación (versión 2011)
Curso Herramientas Avanzadas de Apoyo a la Investigación (versión 2011)Mariano Rico
 
Introducción a LaTeX 2010
Introducción a LaTeX 2010Introducción a LaTeX 2010
Introducción a LaTeX 2010Mariano Rico
 
Curso HIAI Versión Julio 2009
Curso HIAI Versión Julio 2009Curso HIAI Versión Julio 2009
Curso HIAI Versión Julio 2009Mariano Rico
 
Curso "Herramientas Informáticas de apoyo a la investigación"
Curso "Herramientas Informáticas de apoyo a la investigación"Curso "Herramientas Informáticas de apoyo a la investigación"
Curso "Herramientas Informáticas de apoyo a la investigación"Mariano Rico
 

Mehr von Mariano Rico (11)

Lexicalizing ontologies with Lemonade Tools
Lexicalizing ontologies with Lemonade ToolsLexicalizing ontologies with Lemonade Tools
Lexicalizing ontologies with Lemonade Tools
 
Redes sociales en el ámbito investigador y académico
Redes sociales en el ámbito investigador y académicoRedes sociales en el ámbito investigador y académico
Redes sociales en el ámbito investigador y académico
 
Plagio vs. Síntesis
Plagio vs. SíntesisPlagio vs. Síntesis
Plagio vs. Síntesis
 
Redes sociales en el ámbito académico y científico
Redes sociales en el ámbito académico y científicoRedes sociales en el ámbito académico y científico
Redes sociales en el ámbito académico y científico
 
Presencia en la web: redes científicas y difusión de publicaciones
Presencia en la web: redes científicas y difusión de publicacionesPresencia en la web: redes científicas y difusión de publicaciones
Presencia en la web: redes científicas y difusión de publicaciones
 
Curso LaTeX. UAM, 2012
Curso LaTeX. UAM, 2012Curso LaTeX. UAM, 2012
Curso LaTeX. UAM, 2012
 
Usando flex en Windows
Usando flex en WindowsUsando flex en Windows
Usando flex en Windows
 
Curso Herramientas Avanzadas de Apoyo a la Investigación (versión 2011)
Curso Herramientas Avanzadas de Apoyo a la Investigación (versión 2011)Curso Herramientas Avanzadas de Apoyo a la Investigación (versión 2011)
Curso Herramientas Avanzadas de Apoyo a la Investigación (versión 2011)
 
Introducción a LaTeX 2010
Introducción a LaTeX 2010Introducción a LaTeX 2010
Introducción a LaTeX 2010
 
Curso HIAI Versión Julio 2009
Curso HIAI Versión Julio 2009Curso HIAI Versión Julio 2009
Curso HIAI Versión Julio 2009
 
Curso "Herramientas Informáticas de apoyo a la investigación"
Curso "Herramientas Informáticas de apoyo a la investigación"Curso "Herramientas Informáticas de apoyo a la investigación"
Curso "Herramientas Informáticas de apoyo a la investigación"
 

Kürzlich hochgeladen

Civilizacióne Precolonbinas Resumen pdf.
Civilizacióne Precolonbinas Resumen pdf.Civilizacióne Precolonbinas Resumen pdf.
Civilizacióne Precolonbinas Resumen pdf.gpoiquicuellar
 
S02_s1 - Enfoques y alcances modernos de la calidad.pdf
S02_s1 - Enfoques y alcances modernos de la calidad.pdfS02_s1 - Enfoques y alcances modernos de la calidad.pdf
S02_s1 - Enfoques y alcances modernos de la calidad.pdfDayana971657
 
AREA TECNOLOGIA E INFORMATICA.pdf Santiago
AREA TECNOLOGIA E INFORMATICA.pdf SantiagoAREA TECNOLOGIA E INFORMATICA.pdf Santiago
AREA TECNOLOGIA E INFORMATICA.pdf SantiagoSantiagoRodriguezLoz
 
TEORIA DEL DEFICIT DEL AUTOCUIDADO .pptx
TEORIA DEL DEFICIT DEL AUTOCUIDADO .pptxTEORIA DEL DEFICIT DEL AUTOCUIDADO .pptx
TEORIA DEL DEFICIT DEL AUTOCUIDADO .pptxmarinosudarioneyer
 
Metodología del trabajo universitario pt 1
Metodología del trabajo universitario pt 1Metodología del trabajo universitario pt 1
Metodología del trabajo universitario pt 1gostingsoto
 
Competencia el ingrediente para crecer.pdf
Competencia el ingrediente para crecer.pdfCompetencia el ingrediente para crecer.pdf
Competencia el ingrediente para crecer.pdfAlfredo Zaconeta
 
Presentación del Mapa del Talento Cotec-Ivie 2023
Presentación del Mapa del Talento Cotec-Ivie 2023Presentación del Mapa del Talento Cotec-Ivie 2023
Presentación del Mapa del Talento Cotec-Ivie 2023Ivie
 
taller de ujieres de la iglesia local pptx
taller de ujieres de la iglesia local pptxtaller de ujieres de la iglesia local pptx
taller de ujieres de la iglesia local pptxSandraEspaa8
 
MAPA DE RIESGOS DE UN ZOOLOGICO ..pdf
MAPA DE RIESGOS DE UN ZOOLOGICO    ..pdfMAPA DE RIESGOS DE UN ZOOLOGICO    ..pdf
MAPA DE RIESGOS DE UN ZOOLOGICO ..pdfCamilaArzate2
 
SESIONES ABRIL para sexto grado de nivel primario.doc
SESIONES ABRIL para sexto grado de nivel primario.docSESIONES ABRIL para sexto grado de nivel primario.doc
SESIONES ABRIL para sexto grado de nivel primario.docrobinsonsjuan
 
cuadernillo_tareas_funciones_estructuras_medias_psuv.pdf
cuadernillo_tareas_funciones_estructuras_medias_psuv.pdfcuadernillo_tareas_funciones_estructuras_medias_psuv.pdf
cuadernillo_tareas_funciones_estructuras_medias_psuv.pdfeduingonzalez3
 
LÍNEA DE TIEMPO- ANTROPOLOGIA jsjudhdv.pdf
LÍNEA DE TIEMPO- ANTROPOLOGIA jsjudhdv.pdfLÍNEA DE TIEMPO- ANTROPOLOGIA jsjudhdv.pdf
LÍNEA DE TIEMPO- ANTROPOLOGIA jsjudhdv.pdfFranyeskaMagallanes
 
CATASTRO -tipos,importancia,ley 28294 entre otros
CATASTRO -tipos,importancia,ley 28294 entre otrosCATASTRO -tipos,importancia,ley 28294 entre otros
CATASTRO -tipos,importancia,ley 28294 entre otrosAlimarVargas
 
SISTEMAS REGISTRALES GUATEMALTECOS QUINTA.pptx
SISTEMAS REGISTRALES GUATEMALTECOS QUINTA.pptxSISTEMAS REGISTRALES GUATEMALTECOS QUINTA.pptx
SISTEMAS REGISTRALES GUATEMALTECOS QUINTA.pptxryo516
 
2.8 CRONOGRAMA TALLER DE INVESTIGACION 1 .pptx
2.8 CRONOGRAMA TALLER DE INVESTIGACION 1 .pptx2.8 CRONOGRAMA TALLER DE INVESTIGACION 1 .pptx
2.8 CRONOGRAMA TALLER DE INVESTIGACION 1 .pptxceliajessicapinedava
 
Politicas publicas un balance necesario Bolivia
Politicas publicas un balance necesario BoliviaPoliticas publicas un balance necesario Bolivia
Politicas publicas un balance necesario BoliviaAlfredo Zaconeta
 
1INTERMEDIO-HI-T16-ONCENIO DE LEGUÍA.pdf
1INTERMEDIO-HI-T16-ONCENIO DE LEGUÍA.pdf1INTERMEDIO-HI-T16-ONCENIO DE LEGUÍA.pdf
1INTERMEDIO-HI-T16-ONCENIO DE LEGUÍA.pdfGabrielaPeraza8
 
TABLERO-DE-CONTROL-SOFOMES-ENR_08012024.pdf
TABLERO-DE-CONTROL-SOFOMES-ENR_08012024.pdfTABLERO-DE-CONTROL-SOFOMES-ENR_08012024.pdf
TABLERO-DE-CONTROL-SOFOMES-ENR_08012024.pdfMartinRodriguezchave1
 
ANALISIS DE AREA PARA CASA HABITACION MEDIO SINTESIS.pptx
ANALISIS DE AREA PARA CASA HABITACION MEDIO SINTESIS.pptxANALISIS DE AREA PARA CASA HABITACION MEDIO SINTESIS.pptx
ANALISIS DE AREA PARA CASA HABITACION MEDIO SINTESIS.pptxSangSooJung1
 
la-antigua-Grecia, datos y curiosidades mas relevantes
la-antigua-Grecia, datos y curiosidades mas relevantesla-antigua-Grecia, datos y curiosidades mas relevantes
la-antigua-Grecia, datos y curiosidades mas relevantesalvarojosephyucracol
 

Kürzlich hochgeladen (20)

Civilizacióne Precolonbinas Resumen pdf.
Civilizacióne Precolonbinas Resumen pdf.Civilizacióne Precolonbinas Resumen pdf.
Civilizacióne Precolonbinas Resumen pdf.
 
S02_s1 - Enfoques y alcances modernos de la calidad.pdf
S02_s1 - Enfoques y alcances modernos de la calidad.pdfS02_s1 - Enfoques y alcances modernos de la calidad.pdf
S02_s1 - Enfoques y alcances modernos de la calidad.pdf
 
AREA TECNOLOGIA E INFORMATICA.pdf Santiago
AREA TECNOLOGIA E INFORMATICA.pdf SantiagoAREA TECNOLOGIA E INFORMATICA.pdf Santiago
AREA TECNOLOGIA E INFORMATICA.pdf Santiago
 
TEORIA DEL DEFICIT DEL AUTOCUIDADO .pptx
TEORIA DEL DEFICIT DEL AUTOCUIDADO .pptxTEORIA DEL DEFICIT DEL AUTOCUIDADO .pptx
TEORIA DEL DEFICIT DEL AUTOCUIDADO .pptx
 
Metodología del trabajo universitario pt 1
Metodología del trabajo universitario pt 1Metodología del trabajo universitario pt 1
Metodología del trabajo universitario pt 1
 
Competencia el ingrediente para crecer.pdf
Competencia el ingrediente para crecer.pdfCompetencia el ingrediente para crecer.pdf
Competencia el ingrediente para crecer.pdf
 
Presentación del Mapa del Talento Cotec-Ivie 2023
Presentación del Mapa del Talento Cotec-Ivie 2023Presentación del Mapa del Talento Cotec-Ivie 2023
Presentación del Mapa del Talento Cotec-Ivie 2023
 
taller de ujieres de la iglesia local pptx
taller de ujieres de la iglesia local pptxtaller de ujieres de la iglesia local pptx
taller de ujieres de la iglesia local pptx
 
MAPA DE RIESGOS DE UN ZOOLOGICO ..pdf
MAPA DE RIESGOS DE UN ZOOLOGICO    ..pdfMAPA DE RIESGOS DE UN ZOOLOGICO    ..pdf
MAPA DE RIESGOS DE UN ZOOLOGICO ..pdf
 
SESIONES ABRIL para sexto grado de nivel primario.doc
SESIONES ABRIL para sexto grado de nivel primario.docSESIONES ABRIL para sexto grado de nivel primario.doc
SESIONES ABRIL para sexto grado de nivel primario.doc
 
cuadernillo_tareas_funciones_estructuras_medias_psuv.pdf
cuadernillo_tareas_funciones_estructuras_medias_psuv.pdfcuadernillo_tareas_funciones_estructuras_medias_psuv.pdf
cuadernillo_tareas_funciones_estructuras_medias_psuv.pdf
 
LÍNEA DE TIEMPO- ANTROPOLOGIA jsjudhdv.pdf
LÍNEA DE TIEMPO- ANTROPOLOGIA jsjudhdv.pdfLÍNEA DE TIEMPO- ANTROPOLOGIA jsjudhdv.pdf
LÍNEA DE TIEMPO- ANTROPOLOGIA jsjudhdv.pdf
 
CATASTRO -tipos,importancia,ley 28294 entre otros
CATASTRO -tipos,importancia,ley 28294 entre otrosCATASTRO -tipos,importancia,ley 28294 entre otros
CATASTRO -tipos,importancia,ley 28294 entre otros
 
SISTEMAS REGISTRALES GUATEMALTECOS QUINTA.pptx
SISTEMAS REGISTRALES GUATEMALTECOS QUINTA.pptxSISTEMAS REGISTRALES GUATEMALTECOS QUINTA.pptx
SISTEMAS REGISTRALES GUATEMALTECOS QUINTA.pptx
 
2.8 CRONOGRAMA TALLER DE INVESTIGACION 1 .pptx
2.8 CRONOGRAMA TALLER DE INVESTIGACION 1 .pptx2.8 CRONOGRAMA TALLER DE INVESTIGACION 1 .pptx
2.8 CRONOGRAMA TALLER DE INVESTIGACION 1 .pptx
 
Politicas publicas un balance necesario Bolivia
Politicas publicas un balance necesario BoliviaPoliticas publicas un balance necesario Bolivia
Politicas publicas un balance necesario Bolivia
 
1INTERMEDIO-HI-T16-ONCENIO DE LEGUÍA.pdf
1INTERMEDIO-HI-T16-ONCENIO DE LEGUÍA.pdf1INTERMEDIO-HI-T16-ONCENIO DE LEGUÍA.pdf
1INTERMEDIO-HI-T16-ONCENIO DE LEGUÍA.pdf
 
TABLERO-DE-CONTROL-SOFOMES-ENR_08012024.pdf
TABLERO-DE-CONTROL-SOFOMES-ENR_08012024.pdfTABLERO-DE-CONTROL-SOFOMES-ENR_08012024.pdf
TABLERO-DE-CONTROL-SOFOMES-ENR_08012024.pdf
 
ANALISIS DE AREA PARA CASA HABITACION MEDIO SINTESIS.pptx
ANALISIS DE AREA PARA CASA HABITACION MEDIO SINTESIS.pptxANALISIS DE AREA PARA CASA HABITACION MEDIO SINTESIS.pptx
ANALISIS DE AREA PARA CASA HABITACION MEDIO SINTESIS.pptx
 
la-antigua-Grecia, datos y curiosidades mas relevantes
la-antigua-Grecia, datos y curiosidades mas relevantesla-antigua-Grecia, datos y curiosidades mas relevantes
la-antigua-Grecia, datos y curiosidades mas relevantes
 

Datos enlazados con DBpedia y R

  • 1.
  • 2. 2 #LDR_JPD15 Contenido • Datos enlazados • DBpedia del español • Paquetes R
  • 4. 4 #LDR_JPD15 Terminología Bla, bla, bla, RDF, bla, bla, blaaa, SPARQL, bla, bla, bla, Semantic Web, bla, bla, bla, bla, bla, bla, Linked Data, bla, bla Open Data, bla, bla, bla, blaaaaaa, bla, bla, blaaa, bla, bla, Ontologías, blaaa, blaaa, bla..
  • 9. 9 #LDR_JPD15 Datos con semántica • Semántica porque – Enlaza con datos de una (o varias) ontologías • Una ontología es un modelo matemático que permite – Razonar  Crear nuevos datos – Preguntar si algo existe o una afirmación es cierta – Sin enlaces a ontologías no hay semántica
  • 10. 10 #LDR_JPD15 Datos con semántica • Ejemplo: “Cervantes escribió el Quijote” “Miguel de Cervantes”@es http://es.dbpedia.org/resource/Miguel_de_Cervantes http://dbpedia.org/ontology/Writer “Cervantes” dbpedia:alias rdf:type rdfs:label “Don Quijote de la Mancha”@es http://es.dbpedia.org/resource/Don_Quijote_de_la_Mancha dbpedia:author rdfs:label http://dbpedia.org/ontology/Artist rdfs:subClassOf
  • 11. 11 #LDR_JPD15 Datos con semántica • Razono: “Cervantes es un artista” “Miguel de Cervantes”@es http://es.dbpedia.org/resource/Miguel_de_Cervantes http://dbpedia.org/ontology/Writer “Cervantes” dbpedia:alias rdf:type rdfs:label “Don Quijote de la Mancha”@es http://es.dbpedia.org/resource/Don_Quijote_de_la_Mancha dbpedia:author rdfs:label http://dbpedia.org/ontology/Artist rdfs:subClassOf rdf:type
  • 12. 12 #LDR_JPD15 http://es.dbpedia.org/Yann_Martel Datos con semántica • Añado más enlaces y datos http://es.dbpedia.org/resource/La_vida_de_Pi dbpedia:author dbpedia:literaryGenreOf http://upload.wikimedia.org/Wikipedia/commons/thumbd... dbpedia:thumbnail http://es.dbpedia.org/resource/Novela_de_aventuras dbpedia:literaryGenre
  • 13. 13 #LDR_JPD15 Datos con semántica • Añado más enlaces y datos
  • 14. 14 #LDR_JPD15 Datos con semántica • Añado más enlaces y datos
  • 15. 15 #LDR_JPD15 Datos con semántica • Conjunto de datos (dataset)
  • 17. 17 #LDR_JPD15 Datos con semántica • Conjunto de datos (dataset)
  • 18. 18 #LDR_JPD15 DBpedia • Conjunto de datos de la Wikipedia DBpedia
  • 19. 19 #LDR_JPD15 DBpedia del español (esDBpedia) • Conjunto de datos de la Wikipedia del idioma español esDBpedia
  • 20. 20 #LDR_JPD15 DBpedia: extracción de Linked Data RDF Triple store Rendering
  • 25. 26 #LDR_JPD15 esDBpedia y la lingüística • Parte de Linguistic LOD cloud
  • 28. 29 #LDR_JPD15 ¿Qué datos tiene DBpedia? • DBpedia (idioma inglés). Datos septiembre 2014 (última versión) • Cosas (entradas Wikipedia): 4.58 millones – Clasificadas en la ontología DBpedia: 4.22 1.445.000 personas 735.000 lugares 241.000 organizaciones 123.000 discos 87.000 películas… • DBpedias de 125 idiomas • Enlaces: 25.2 millones a imágenes 29.8 millones a páginas web externas 50.0 millones a otros RDF datasets 80,9 millones a categorías Wikipedia 41.2 millones a categorías YAGO • Tripletas (triples) 3000 millones de triples (583 millones de la versión inglesa) (No están todos en el EP)
  • 29. 30 #LDR_JPD15 La ontología DBpedia • Es una ontología OWL –Con 685 clases –Con 2679 propiedades • 1600 DBpediaDatatypeProperty • 1079 DBpediaObjectProperty – Equivalencias con schema.org • 47 owl:equivalentClass • 35 owl:equivalentProperty
  • 30. 31 #LDR_JPD15 Ver las clases y propiedades http://mappings.dbpedia.org/server/ontology/classes http://mappings.dbpedia.org/server/ontology/classes/BullFighter http://mappings.dbpedia.org/index.php/OntologyProperty:DebutTeam
  • 31. SPARQL Sacando datos a un dataset de linked data
  • 32. 33 #LDR_JPD15 Sacando datos del EP • EP = EndPoint • “El EP” de esDBpedia http://es.dbpedia.org/sparql
  • 33. 34 #LDR_JPD15 Sacando datos del EP • La consulta (“la query”) – Sintaxis similar a SQL (bases de datos tradicionales)
  • 34. 35 #LDR_JPD15 Sacando datos del EP • Formatos de salida – Por omisión HTML – Otros formatos • JSON • CSV • RDF • …
  • 35. 36 #LDR_JPD15 Sacando datos del EP • Ejemplo “zero” – Número de instancias de cada clase de la ontología DBpedia SELECT ?class (COUNT(?s) AS ?count) WHERE { ?s a ?class . filter (strstarts(str(?class), "http://dbpedia.org/ontology" )) } GROUP BY ?class ORDER BY DESC(?count)
  • 38. 39 #LDR_JPD15 Aprende SPARQL • A base de ejemplos – En el wiki de esDBpedia
  • 39. 40 #LDR_JPD15 Aprende SPARQL • A base de ejemplos – En el wiki de esDBpedia
  • 40. 41 #LDR_JPD15 Queries “duras” • Hay queries que necesitan mucho tiempo de cálculo • Son rechazadas por el EP • Ejemplo – Número de instancias de cada propiedad de la ontología DBpedia • Esta suele rechazarse por ser muy pesada SELECT ?p (COUNT(?s) AS ?count) WHERE { ?s ?p ?o . filter (strstarts(str(?p), "http://dbpedia.org/ontology")) } GROUP BY ?p ORDER BY DESC(?count)
  • 41. 42 #LDR_JPD15 Más datasets • The Data hub – Filtra por • Tags – lod – format-rdf • Formats – api/sparql
  • 46. 47 #LDR_JPD15 Package SPARQL library(SPARQL) endpoint <- "http://es.dbpedia.org/sparql" query <- ' 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> } ' reslist <- SPARQL(endpoint,query) df <- reslist$results df
  • 47. 48 #LDR_JPD15 Package SPARQL #continuación… nss <- c("esdbres", "http://es.dbpedia.org/resource/") reslist <- SPARQL(endpoint,query, ns = nss) df <- reslist$results df • Uso de argmento ns – Para reducir tamaño de resultado
  • 48. 49 #LDR_JPD15 Múltiples maneras de preguntar • Científicos españoles SELECT ?person WHERE{ ?person dcterms:subject <http://es.dbpedia.org/resource/Categoría:Científicos_de_España> } PREFIX esdbpr: <http://es.dbpedia.org/resource/> SELECT ?person WHERE{ ?person rdf:type dbpedia-owl:Scientist . ?person dbpedia-owl:country esdbpr:España . } Forma1 resultado: 66 científicos Forma2 resultado: 143 científicos
  • 49. 50 #LDR_JPD15 Múltiples maneras de preguntar • Desde SPARQL EP: Científicos españoles – UNION PREFIX dcterms: <http://purl.org/dc/terms/> PREFIX esdbpr: <http://es.dbpedia.org/resource/> SELECT ?person WHERE{ { ?person dcterms:subject <http://es.dbpedia.org/resource/Categoría:Científicos_de_España> } UNION { ?person rdf:type dbpedia-owl:Scientist . ?person dbpedia-owl:country esdbpr:España . } } resultado: 209 = 66 + 143
  • 50. 51 #LDR_JPD15 Múltiples maneras de preguntar • Desde SPARQL EP: Científicos españoles – UNION PREFIX dcterms: <http://purl.org/dc/terms/> PREFIX esdbpr: <http://es.dbpedia.org/resource/> SELECT DISTINCT ?person WHERE{ { ?person dcterms:subject <http://es.dbpedia.org/resource/Categoría:Científicos_de_España> } UNION { ?person rdf:type dbpedia-owl:Scientist . ?person dbpedia-owl:country esdbpr:España . } } resultado: 200 (había 9 duplicados)
  • 51. 52 #LDR_JPD15 Múltiples maneras de preguntar • Desde R: Científicos españoles library(SPARQL) endpoint <- "http://es.dbpedia.org/sparql" nss <- c("esdbres", "http://es.dbpedia.org/resource/") queryF1 <- ' SELECT ?person WHERE{ ?person dcterms:subject <http://es.dbpedia.org/resource/Categoría:Científicos_de_España> } ' queryF2 <- ' PREFIX esdbpr: <http://es.dbpedia.org/resource/> SELECT ?person WHERE{ ?person rdf:type dbpedia-owl:Scientist . ?person dbpedia-owl:country esdbpr:España . } ' reslistF1 <- SPARQL(endpoint,queryF1, ns = nss) reslistF2 <- SPARQL(endpoint,queryF2, ns = nss) #Devuelve los 9 comunes a las dos queries intersect (t(reslistF1$results), #Si devuelve una única columna “se lía” y necesita t() t(reslistF2$results))
  • 52. 53 #LDR_JPD15 Siguiendo la pista • Ejemplo: Políticos • Veo la página de Rajoy en Wikipedia • Veo qué nombre de recurso tiene – “Mariano_Rajoy” • Busco sus datos en esDBpedia – http://es.dbpedia.org/resource/Mariano_Rajoy – Veo properties • occupation • party • …
  • 53. 54 #LDR_JPD15 Siguiendo la pista • Ejemplo: Políticos • Obteniendo los datos de Rajoy en esDBpedia library(SPARQL) endpoint <- "http://es.dbpedia.org/sparql" nss <- c("esdbres", "http://es.dbpedia.org/resource/") query <- ' PREFIX dbo: <http://dbpedia.org/ontology/> PREFIX esdbp: <http://es.dbpedia.org/property/> PREFIX esdbr: <http://es.dbpedia.org/resource/> select * where{ esdbr:Mariano_Rajoy ?p ?v } ' reslist <- SPARQL(endpoint,query, ns = nss) #Salen 550 datos head(reslist$results)
  • 54. 55 #LDR_JPD15 Siguiendo la pista • Ejemplo: Políticos • Políticos y su partido político library(SPARQL) endpoint <- "http://es.dbpedia.org/sparql" nss <- c("esdbres", "http://es.dbpedia.org/resource/") query <- ' PREFIX dbo: <http://dbpedia.org/ontology/> PREFIX esdbp: <http://es.dbpedia.org/property/> PREFIX esdbr: <http://es.dbpedia.org/resource/> select ?uri ?par where{ ?uri dbo:occupation esdbr:Político . ?uri dbo:party ?par } ORDER BY ?par ' reslist <- SPARQL(endpoint,query, ns = nss) nrow(reslist$results) #Salen 1514 de todas partes del mundo
  • 55. 56 #LDR_JPD15 Siguiendo la pista • Ejemplo: Políticos • ¿Cómo saco los políticos españoles? • Ver preguntas abierta 3 en wiki esDBpedia ???
  • 56. 57 #LDR_JPD15 Coordenadas de recursos library(ggmap) #Para geocode(), get_map(). Carga ggplot2 library(SPARQL) endpoint <- "http://es.dbpedia.org/sparql" query <- 'SELECT * WHERE { ?uri geo:lat ?lat . ?uri geo:long ?lon . ?uri rdf:type ?thetype . FILTER ( (?lat> 40.0 && ?lat < 41.15) && (?lon> -4.5 && ?lon < -3.1) && regex(?thetype, "^http://schema.org") ) } ' reslist <- SPARQL(endpoint,query) df <- reslist$results df$thetype <- factor(df$thetype) map.center <- geocode("Madrid, Spain") map <- get_map(c(lon=map.center$lon, lat=map.center$lat), source="google", zoom=9) ggmap(map) + geom_point(data=df, aes(x=lon, y=lat, colour=thetype, position="dodge"), size=6, alpha=0.8 )
  • 57. 58 #LDR_JPD15 Packages rrdf y rrdflibs library("rrdf") #Descarga de la ontología DBpedia db2014URL <- "http://data.dws.informatik.uni-mannheim.de/dbpedia/2014/dbpedia_2014.owl.bz2" tempBZ2 <- tempfile() download.file(db2014URL, tempBZ2) #Lo guarda en tempBZ2 con <- bzfile(tempBZ2) #descomprimo lines <-readLines(con) #Tengo las líneas en memoria unlink(tempBZ2) #Guardo en un fichero (requerido por load.rdf()) tempOWL <- tempfile() write(lines, file=tempOWL ) model <- load.rdf(tempOWL, format="RDF/XML") unlink(tempOWL) #Ya tengo el model y todos los ficheros aux borrados summarize.rdf(model) #[1] "Number of triples: 29402"
  • 58. 59 #LDR_JPD15 Packages rrdf y rrdflibs #Continuación… #Clases con label query <- 'PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT ?class ?classLabel WHERE { ?class rdf:type rdfs:Class. ?class rdfs:label ?classLabel. }' #OJO! matrix con variables ?class y ?classLabel res <- sparql.rdf(model, query) #Lo paso a data.frame df <- as.data.frame(res, stringsAsFactors = TRUE) #Pongo TRUE para que sea mono el summary summary(df)
  • 59. 60 #LDR_JPD15 Packages rrdf y rrdflibs #Continuación… nrow(df) #En total hay 3520, pero muchas están repetidas 13 veces, 12… #Elimino duplicados length(unique(df$class)) #Ahora salen 683 #¿Cómo selecciono las labels en inglés? ????
  • 60. 61 #LDR_JPD15 Packages rrdf y rrdflibs #Continuación… #¿Cómo selecciono las labels en inglés? query <- 'PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT ?class ?classLabel WHERE { ?class rdf:type rdfs:Class. ?class rdfs:label ?classLabel. FILTER(lang(?classLabel) ="en") }' res <- sparql.rdf(model, query) df <- as.data.frame(res, stringsAsFactors = TRUE) summary(df) #Para ver que no hay multiplicidad nrow(df) #Salen 683 classes
  • 62. 63 Muchas gracias por vuestra atención Mariano.Rico@upm.es