如何使用SPARQL查询ttl文件?

2024-06-06 05:11:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试学习SPARQL,为此我需要对本地ttl文件执行查询。我对此进行了研究,每个响应都说要使用rdflib,然后对其运行查询。在

下面是我使用的示例ttl文件

# filename: ex002.ttl

@prefix ab: <http://learningsparql.com/ns/addressbook#> .

ab:richard ab:homeTel "(229) 276-5135" . 
ab:richard ab:email   "richard49@hotmail.com" . 

ab:cindy ab:homeTel "(245) 646-5488" . 
ab:cindy ab:email   "cindym@gmail.com" . 

ab:craig ab:homeTel "(194) 966-1505" . 
ab:craig ab:email   "craigellis@yahoo.com" . 
ab:craig ab:email   "c.ellis@usairwaysgroup.com" .

现在应该工作的python代码如下

^{pr2}$

不幸的是,每当它到达g.query(query)时,我得到{}

好吧-没问题。所以我去conda forge安装它,它说这个软件包不能从当前渠道获得。在

好吧,奇怪。所以我做了一些研究发现https://github.com/RDFLib/rdfextras 它表示它已停止使用,rdflib>=4不再需要它。所以我检查了rdflib的版本,它是4.2.2。所以显然有些地方出了问题,因为它不应该要求rdfextras。在

所以有两个问题-

  1. 如果我的版本是rdflib >=4,它为什么要这样做?在
  2. 归根结底,这一切都偏离了重点。我不关心方法,所以如何使用python对本地ttl文件运行SPARQL查询(在某种程度上不需要在我的计算机上拥有管理员权限)

提前谢谢。在


Tags: 文件版本comrichard示例abemailquery