저는 opendata에 새로운 기능이있어서 도움이 필요합니다. 위키 피 디아는이 URL에 sparql 끝 점이 있습니다. http://dbpedia.org/sparql 이제 dbpedia에서 일부 rdf 파일을 가져 오기 위해 webservice를 작성해야합니다. rdf 파일을 얻으려면이 끝점으로 무엇을 보내야합니까? thx forsparql endpoin에서 rdf 파일을 얻는 방법
답변
CONSTRUCT 쿼리를 보냅니다. 작은 예제 :
WHERE 절은 SELECT와 마찬가지로 작동하며 값만 CONSTRUCT 블록을 일종의 템플릿으로 채 웁니다. 매우 융통성이 있습니다. 여기에서 문장을 복사하거나 완전히 다른 모양으로 변형 할 수 있습니다.
Bob DuCharme의 "Learning SPARQL" 책을 읽어 보시기를 권합니다. DBPedia 엔드 포인트를 사용하는 몇 가지 예제를 다룹니다.
추 신 : 그것은 위키 피 디아의 SPARQL 엔드 포인트가 아닙니다. DBPedia SPARQL 엔드 포인트입니다 (위키 백과 자체는 SPARQL 엔드 포인트 ATM을 제공하지 않습니다). 그러나 DBPedia 데이터는 위키 백과 데이터를 사용합니다.)
예 – hudi
Danny가 올바른 대답은 무엇이라고 대답 했습니까? 그러나 결과를 얻을 것으로 예상되는 시간 때문에 외부 서비스에 대한 이러한 쿼리를 수행하지 않는 것이 좋습니다. 구체적인 자원을 통해 그것을 할
그러나
수동으로 코드의 모습 예를 들어 파이썬, 쿼리 결과를 저장 당신이 필요없이 직접 수행하려는 경우 물론 :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()
의 물론, 이것은 거의 모든 프로그래밍 언어로 할 수 있습니다.
어떤 SPARQL 1.1 호환 구현도 [DESCRIBE] (https :// /www.w3.org/TR/sparql11-query/#describe) 질의 :'DESCRIBE
내가 로컬로 rdf 저장에 대한 한 가지 질문을 할 수 있습니까 ??? 내가 사용하는 results.serialize (destination = path, format = "xml") ,,,, 및 file = open (....... "w") ....... 파일을 사용하는 다른 점은 무엇입니까? .close() ... 당신의 대답은 제가 문제를 해결하는 데 도움이됩니다. 하지만 그 차이점을 알고 싶습니다. – bob90937
hmxx 많이 무엇입니까? s? p 및? o 의미? – hudi
dbpedia에서 모든 rdf 파일을 반환하는 sparql을 작성할 수 있습니까? berlin에 대한 언급이 있습니까? – hudi
@hudi 그것은 SPARQL에서 시작한 것 같습니다. http://www.cambridgesemantics.com/2008/09/sparql-by-example/과 같은 인기있는 튜토리얼을 읽으려고 시도한 적이 있습니까? ? – RobV