¿Cómo puedo seleccionar una muestra aleatoria de DBpedia usando el punto final sparql?¿Cómo seleccionar nodos de DBPedia aleatorios desde SPARQL?
Esta consulta
SELECT ?s WHERE { ?s ?p ?o . FILTER (1 > bif:rnd (10, ?s, ?p, ?o)) } LIMIT 10
(encontrado here) parece que funciona bien en la mayoría de los puntos finales de SPARQL, pero en http://dbpedia.org/sparql se pone en caché (por lo que siempre devuelve los mismos 10 nodos).
si trato de Jena, me sale el siguiente excepción:
Unresolved prefixed name: bif:rnd
Y no puedo encontrar el lo que el espacio de nombres 'BIF' es.
¿Alguna idea sobre cómo solucionar esto?
Mulone
Supongo que el problema con su solución es que el orden de selección no cambia, por lo que no es realmente aleatorio. Tal vez podría mejorar su "aleatoriedad" reuniendo muestras de diferentes consultas, algo así como (consulta con desplazamiento x1) UNIÓN (consulta con desplazamiento x2) UNIÓN (consulta con desplazamiento xn) UNIÓN. – Mulone
Mi orden de selección no es aleatoria, pero un DESPLAZAMIENTO sobre un número aleatorio le dará una muestra aleatoria. Es el DESPLAZAMIENTO lo que debe generarse al azar. –