Grupo de Facebook DBpedia en español
Notify Twitter

This page (revision-17) was last changed on 05-Nov-2018 18:07 by Mariano Rico

This page was created on 05-Nov-2018 18:07 by Mariano Rico

Only authorized users are allowed to rename pages.

Only authorized users are allowed to delete pages.

Page revision history

Version Date Modified Size Author Changes ... Change note
17 05-Nov-2018 18:07 5 KB Mariano Rico to previous
16 05-Nov-2018 18:07 5 KB Mariano Rico to previous | to last
15 05-Nov-2018 18:07 5 KB Mariano Rico to previous | to last
14 05-Nov-2018 18:07 4 KB Mariano Rico to previous | to last
13 05-Nov-2018 18:07 4 KB Mariano Rico to previous | to last
12 05-Nov-2018 18:07 4 KB Mariano Rico to previous | to last
11 05-Nov-2018 18:07 4 KB Mariano Rico to previous | to last
10 05-Nov-2018 18:07 4 KB Mariano Rico to previous | to last
9 05-Nov-2018 18:07 4 KB Mariano Rico to previous | to last
8 05-Nov-2018 18:07 4 KB Mariano Rico to previous | to last
7 05-Nov-2018 18:07 4 KB Mariano Rico to previous | to last
6 05-Nov-2018 18:07 4 KB Mariano Rico to previous | to last
5 05-Nov-2018 18:07 3 KB Mariano Rico to previous | to last
4 05-Nov-2018 18:07 1 KB Mariano Rico to previous | to last
3 05-Nov-2018 18:07 1 KB Mariano Rico to previous | to last Aplicaciones que usan esDBpedia ==> Ejemplos de uso de los datos esDBpedia
2 05-Nov-2018 18:07 1 KB Mariano Rico to previous | to last
1 05-Nov-2018 18:07 1 KB Mariano Rico to last

Page References

Incoming links Outgoing links

Version management

Difference between version and

At line 1 added 2 lines
[In English|esDBpedia Data Usage Examples]
At line 10 added one line
%%prettify
At line 28 added 21 lines
}}}
%%
Hasta finales de 2013 el dato de la longuitud estaba cambiado de signo. A partir de esa fecha ya está OK, por lo que la query debe ser esta:
%%prettify
{{{
"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')
)
}
"
}}}
%%
%%prettify
{{{
At line 27 changed one line
df$lon <- -df$lon
#df$lon <- -df$lon #Esto no hace falta desde finales de 2013
At line 61 added one line
%%
At line 63 added one line
El resultado es este gráfico (Pulsa el icono %%slimbox [|esDBpedia_SPARQL_R.png]%% si no ves la leyenda a la derecha del mapa):
At line 39 changed one line
!!!Ejemplo en javascript
[{Image src='esDBpedia_SPARQL_R.png' align='center'}]
Observaciones:
* La coordenada lon (longitud) que almacena esDBpedia es positiva, por eso tenemos que cambiarla de signo.
* El parámetro "dodge" intenta que dos puntos que solapan se puedan distinguir visualmente. Para lograrlo, los separa ligeramente. En zonas con muchos puntos es inevitable el solape (caso del centro de Madrid).
* Si alguien sabe cómo poner una paleta de colores con la que se distingan mejor los puntos, que lo diga :-D.
¿Quieres más? ;-)
Aquí tienes un ejemplo de [integración con datos de Localidata|Ejemplo de integración de esDBpedia con API de localidata].
!!!Ejemplo en javascript
Por gentileza de Alejandro F.Carrera
%%prettify
{{{
<html><body>
<div id="mapdiv"></div>
<script src="http://www.openlayers.org/api/OpenLayers.js"></script>
<script>
// Consulta SPARQL
function sparqlQueryJson(queryStr, endpoint, callback, isDebug) {
var querypart = "query=" + escape(queryStr);
var xmlhttp = null;
if(window.XMLHttpRequest) {
xmlhttp = new XMLHttpRequest();
} else if(window.ActiveXObject) {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open('POST', endpoint, true);
xmlhttp.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xmlhttp.setRequestHeader("Accept", "application/sparql-results+json");
xmlhttp.onreadystatechange = function() {
if(xmlhttp.readyState == 4) {
if(xmlhttp.status == 200) {
if(isDebug) {
// Ver resultados de la consulta SPARQL
alert(xmlhttp.responseText);
}
callback(xmlhttp.responseText);
}
}
};
xmlhttp.send(querypart);
};
// Mapa OSM
map = new OpenLayers.Map("mapdiv");
map.addLayer(new OpenLayers.Layer.OSM());
var center = new OpenLayers.LonLat( -3.65 ,40.4).transform(
new OpenLayers.Projection("EPSG:4326"),
map.getProjectionObject()
);
var zoom=8;
map.setCenter (center, zoom);
var endpoint = "http://dbpedia.org/sparql";
var query = "SELECT * WHERE {?uri geo:lat ?lat .?uri geo:long ?lon .?uri rdf:type ?thetype .FILTER ( (?lat> 40.0 && ?lat < 41.15) &&(?lon> -3 && ?lon < 4)&& regex(?thetype,'^http://schema.org'))}" ;
function myCallback(str) {
str = eval('(' + str + ')');
for(var i = 0; i< str.results.bindings.length; i++) {
var la = str.results.bindings[i].lat.value;
var lo = str.results.bindings[i].lon.value;
var pos = new OpenLayers.LonLat( la ,lo).transform(
new OpenLayers.Projection("EPSG:4326"),
map.getProjectionObject()
);
// Añadir al mapa como punto (la, lo)
}
}
sparqlQueryJson(query, endpoint, myCallback, true);
</script>
</head>
</body></html>
}}}
%%
Y este es el resultado:
[{Image src='esDBpedia_SPARQL_js.png' align='center'}]
Y esta es la [versión mejorada|EsDBpedia Data Usage Examples/dbpedia_js_v2.html]:\\ INTERACTIVA!!: permite zoom, cada geolocalización es un marcador "clásico" que se puede pinchar,y un mini-popup muestra la URL del recurso y el tipo schema.org.
[{Image src='EsDBpedia Data Usage Examples/esDBpedia_SPARQL_js.v2.png' align='center'}]