各种事情:
没错,您需要将中包含任何URI
<
>。正确的查询是:
SELECt ?s ?o WHERe { ?s a <http://purl.org/ontology/mo/MusicArtist>; <http://www.w3.org/2002/07/owl#sameAs> ?o . } limit 50
…在这里查看结果。
FROM并未像您想象的那样在rdflib或redland中实现。它不会获取远程SPARQL端点,而是在本地存储中获取远程图或具有该名称的图。你的情况,你想使用
SERVICE看看它是如何工作在这里与耶拿。不幸的是,rdflib和redland都没有实现
SERVICESPARQL的子句,但是有解决方法。
一种可能的解决方案是将SPARQLWrapper用于python。这是微不足道的,在这里您具有该库的代码:
from SPARQLWrapper import SPARQLWrapper, JSonsparql = SPARQLWrapper("http://api.talis.com/stores/bbc-backstage/services/sparql")sparql.setQuery(""" SELECT ?s ?o WHERe { ?s a <http://purl.org/ontology/mo/MusicArtist>; <http://www.w3.org/2002/07/owl#sameAs> ?o . } limit 50""")sparql.setReturnFormat(JSON)results = sparql.query().convert()for result in results["results"]["bindings"]: print result["s"]['value'], result["o"]['value']
如您所见,远程SPARQL端点成为查询之外的参数。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)