rdflib.plugins.sparql没找到?
rdflib.plugins.sparql not found?
我正在研究 python 中的一些基本 rdflib 内容,试图弄清楚,我正在 运行 解决一个看似基本的问题。
代码也是here,Lecture 3: SPARQL下的第三个例子
import rdflib
g = rdflib.Graph()
g.parse("family.ttl", format='ttl')
q = rdflib.plugins.sparql.prepareQuery(
"""SELECT ?child ?sister WHERE {
?child fam:hasParent ?parent .
?parent fam:hasSister ?sister .
}""",
initNs = { "fam": "http://example.org/family#"})
sm = rdflib.URIRef("http://example.org/royal#SverreMagnus")
for row in g.query(q, initBindings={'child': sm}):
print(row)
family.ttl 文件在同一目录下,按照示例如下。
@prefix rex: <http://example.org/royal#> .
@prefix fam: <http://example.org/family#> .
rex:IngridAlexandra fam:hasParent rex:HaakonMagnus .
rex:SverreMagnus fam:hasParent rex:HaakonMagnus .
rex:HaakonMagnus fam:hasParent rex:Harald .
rex:MarthaLouise fam:hasParent rex:Harald .
rex:HaakonMagnus fam:hasSister rex:MarthaLouise .
当我尝试 运行 时,出现错误。
AttributeError: module 'rdflib.plugins' has no attribute 'sparql'
Python是3.9.5版本,rdflib是6.0.1。有人知道这笔交易是什么吗?
只需尝试稍微更改您的导入,如下所示:
import rdflib
from rdflib.plugins import sparql
g = rdflib.Graph()
g.parse("family.ttl")
q = sparql.prepareQuery(
"""SELECT ?child ?sister WHERE {
?child fam:hasParent ?parent .
?parent fam:hasSister ?sister .
}""",
initNs={"fam": "http://example.org/family#"})
sm = rdflib.URIRef("http://example.org/royal#SverreMagnus")
for row in g.query(q, initBindings={'child': sm}):
print(row)
我正在研究 python 中的一些基本 rdflib 内容,试图弄清楚,我正在 运行 解决一个看似基本的问题。
代码也是here,Lecture 3: SPARQL下的第三个例子
import rdflib
g = rdflib.Graph()
g.parse("family.ttl", format='ttl')
q = rdflib.plugins.sparql.prepareQuery(
"""SELECT ?child ?sister WHERE {
?child fam:hasParent ?parent .
?parent fam:hasSister ?sister .
}""",
initNs = { "fam": "http://example.org/family#"})
sm = rdflib.URIRef("http://example.org/royal#SverreMagnus")
for row in g.query(q, initBindings={'child': sm}):
print(row)
family.ttl 文件在同一目录下,按照示例如下。
@prefix rex: <http://example.org/royal#> .
@prefix fam: <http://example.org/family#> .
rex:IngridAlexandra fam:hasParent rex:HaakonMagnus .
rex:SverreMagnus fam:hasParent rex:HaakonMagnus .
rex:HaakonMagnus fam:hasParent rex:Harald .
rex:MarthaLouise fam:hasParent rex:Harald .
rex:HaakonMagnus fam:hasSister rex:MarthaLouise .
当我尝试 运行 时,出现错误。
AttributeError: module 'rdflib.plugins' has no attribute 'sparql'
Python是3.9.5版本,rdflib是6.0.1。有人知道这笔交易是什么吗?
只需尝试稍微更改您的导入,如下所示:
import rdflib
from rdflib.plugins import sparql
g = rdflib.Graph()
g.parse("family.ttl")
q = sparql.prepareQuery(
"""SELECT ?child ?sister WHERE {
?child fam:hasParent ?parent .
?parent fam:hasSister ?sister .
}""",
initNs={"fam": "http://example.org/family#"})
sm = rdflib.URIRef("http://example.org/royal#SverreMagnus")
for row in g.query(q, initBindings={'child': sm}):
print(row)