![](/img/trans.png)
[英]Trying to run a sparql query on quads+triples files, getting error: com.bigdata.rdf.sparql.ast.QuadsOperationInTriplesModeException
[英]SPARQL query on multiple RDF files
我有一些编程基础知识,但是我对RDF或Sparql完全陌生,所以我希望在接下来的内容中弄清楚。 我正在尝试从http://data.camera.it/data/en/datasets/下载一些可用的数据,并且所有数据都以rdf-xml格式组织在一个本体中。
我注意到该网站在线提供了SPARQL查询编辑器( http://dati.camera.it/sparql ),使用他们的一些示例,我能够使用Python检索和转换一些我需要的数据。 我使用SparqlWrapper使用以下代码和查询
from SPARQLWrapper import SPARQLWrapper, JSON
sparql = SPARQLWrapper("http://dati.camera.it/sparql")
sparql.setQuery(
'''
SELECT distinct ?deputatoId ?cognome ?nome ?data ?argomento titoloSeduta ?testo
WHERE {
?dibattito a ocd:dibattito; ocd:rif_leg <http://dati.camera.it/ocd/legislatura.rdf/repubblica_17>.
?dibattito ocd:rif_discussione ?discussione.
?discussione ocd:rif_seduta ?seduta.
?seduta dc:date ?data; dc:title ?titoloSeduta.
?seduta ocd:rif_assemblea ?assemblea.
?discussione rdfs:label ?argomento.
?discussione ocd:rif_intervento ?intervento.
?intervento ocd:rif_deputato ?deputatoId; dc:relation ?testo.
?deputatoId foaf:firstName ?nome; foaf:surname ?cognome .
}
ORDER BY ?data ?cognome ?nome
LIMIT 100
'''
)
sparql.setReturnFormat(JSON)
results_raw = sparql.query().convert()
但是,我有一个问题,因为该网站仅允许下载10,000个值。 据我了解,此限制无法修改。 因此,我决定将数据集下载到我的计算机上。 我尝试处理所有这些rdf文件,但我不知道该怎么做,因为据我所知,SparqlWrapper不适用于本地文件。
所以我的问题是:
任何有关如何解决该问题的建议都值得赞赏。 谢谢!
从其下载区域下载所有RDF / XML文件,并将它们加载到 Virtuoso 的本地实例中(该实例恰好是它们用于其公共SPARQL端点的引擎)。 无论是开源 版还是企业版 ,您都将拥有运行比其现有版本(2014年3月起开放的v7.1.0 版 )更高的最新版本(v7.2.5.1或更高版本)的优势。
使用新的本地SPARQL端点,默认情况下位于http:// localhost:8890 / sparql 。 您可以将其配置为对结果集大小或查询运行时等没有任何限制。
似乎可能。
(PS:您可能会鼓励dati.camera.it(assistenza-dati@camera.it)上的人们升级他们的Virtuoso实例。有大量的性能和功能增强正在等待着!)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.