Pregunta

Soy nuevo en Opendata y necesito ayuda.Wikipedia tiene su punto final SPARQL en esta URL: http://dbpedia.org/sparql Ahora necesito escribir WebService para obtener un archivo RDF de Dbpedia.¿Qué debo enviar a este punto final para obtener el archivo RDF?

¿Fue útil?

Solución

Envíe una Construcción Consulta.Un poco de ejemplo:

CONSTRUCT { ?s ?p ?o }
WHERE { ?s ?p ?o }
LIMIT 10

La cláusula donde funciona como la de Seleccionar solo los valores llenan el bloque de construcción como un tipo de plantilla.Es muy flexible: puede copiar las declaraciones aquí o transformarlas en una forma completamente diferente.

Otros consejos

Lo que respondió Danny es la respuesta genérica correcta.Pero no le recomendaría que realice dicha consulta sobre los servicios externos, se espera que se espera que obtenga el resultado;Hazlo sobre un recurso de concreto

Pero, por supuesto, si desea hacerlo directamente sin la necesidad de guardar manualmente los resultados de la consulta, con Python, por ejemplo, el código se vería como:

from SPARQLWrapper import SPARQLWrapper, XML

uri = "http://dbpedia.org/resource/Asturias"
query = "CONSTRUCT { <%s> ?p ?o } WHERE { <%s> ?p ?o }" % (uri, uri)

sparql = SPARQLWrapper("http://dbpedia.org/sparql")
sparql.setQuery(query)
sparql.setReturnFormat(XML)
results = sparql.query().convert()

file = open("output.rdf", "w")
results.serialize(destination=file, format="xml")
file.flush()
file.close()

Por supuesto, esto se podría hacer con casi cualquier lenguaje de programación, como lo prefiere.

Me gustaría recomendarle leer Bob Ducharme's "Aprendiendo Sparql" libro.Cubre algunos ejemplos que también utilizan el punto final de Dbpedia.

PS: No es el punto final Sparql de Wikipedia: es Dbpedia Sparql Endpoint (Wikipedia en sí no proporciona un propio ATM de Puntería SPARQL).Sin embargo, los datos de Dbpedia se basan en datos de Wikipedia;)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top