Python SPARQL rdflib属性路径异常

Python SPARQL rdflib属性路径异常,python,sparql,rdflib,Python,Sparql,Rdflib,我有以下SPARQL查询: SELECT ?s ?p ?o WHERE { ?sbj ?p ?obj . ?sbj (<http://www.w3.org/1999/02/22-rdf-syntax-ns#type>/<http://www.w3.org/2000/01/rdf-schema#subClassOf>+) <http://www.my.org/ontology.owl#Place> . ?sbj rdfs:label ?s . ?obj rdfs

我有以下SPARQL查询:

SELECT ?s ?p ?o
WHERE {
?sbj ?p ?obj .
?sbj (<http://www.w3.org/1999/02/22-rdf-syntax-ns#type>/<http://www.w3.org/2000/01/rdf-schema#subClassOf>+) <http://www.my.org/ontology.owl#Place> .
?sbj rdfs:label ?s .
?obj rdfs:label ?o .
}
选择s?p?o
在哪里{
?sbj?p?obj。
?sbj(+/+)。
?sbj rdfs:标签。
?obj rdfs:标签?o。
}
它使用为SPARQL 1.1定义的属性路径

我正在尝试使用rdflib 3.4.0处理此查询,收到以下异常消息:

rayman@hal9100 ~/projects/scripts $ python places_owl2json.py 
Traceback (most recent call last):
  File "places_owl2json.py", line 107, in <module>
    """)
  File "/usr/local/lib/python2.7/dist-packages/rdflib/graph.py", line 1007, in query
    query_object, initBindings, initNs, **kwargs))
  File "/usr/local/lib/python2.7/dist-packages/rdfextras/sparql/processor.py", line 49, in query
    loadContexts=loadContexts)
  File "/usr/local/lib/python2.7/dist-packages/rdfextras/sparql/algebra.py", line 406, in TopEvaluate
    assert isinstance(expr,AlgebraExpression), repr(expr)
AssertionError: None
rayman@hal9100~/projects/scripts$python places\u owl2json.py
回溯(最近一次呼叫最后一次):
文件“places_owl2json.py”,第107行,在
""")
文件“/usr/local/lib/python2.7/dist packages/rdflib/graph.py”,第1007行,在查询中
查询(对象、initBindings、initNs、**kwargs))
文件“/usr/local/lib/python2.7/dist packages/rdfextras/sparql/processor.py”,第49行,在查询中
loadContexts=loadContexts)
TopEvaluate中的文件“/usr/local/lib/python2.7/dist packages/rdfextras/sparql/algebra.py”,第406行
断言isinstance(表达式,代数表达式),repr(表达式)
断言者:无
有什么问题吗? 谢谢


Riccardo

这似乎是rdflib 3.4.0中的一个错误:我尝试在rdflib 4.2.1-dev(当前版本)上重现该错误,它似乎可以使用以下代码:

[1]中的
:来自rdflib导入*
信息:rdflib:rdflib版本:4.2.1-dev
在[2]中:g=Graph()
在[3]中:g.query(“”)
…:选择s?p?o
…:在哪里{
…:?sbj?p?obj。
…:?sbj(+/+)。
…:?sbj rdfs:标签。
…:?obj rdfs:标签?o。
...: }
...: ''')
出[3]: