Python中文
首页
教程
问答
标签
搜索
登录
注册
解析SPARQL查询
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我需要测试几百万个SPARQL查询的某个结构属性,为此我需要<code>WHERE</code>语句的结构。但不幸的是,目前ZZM并不是很有用。解析查询很容易,问题是我无法恢复语句的结构。例如:</p> <pre><code>>>> from fyzz import parse >>> a=parse("SELECT * WHERE {?x a ?y . {?x a ?z}}") >>> b=parse("SELECT * WHERE {?x a ?y OPTIONAL {?x a ?z}}") >>> a.where==b.where True >>> a.where [(SparqlVar('x'), ('', 'a'), SparqlVar('y')), (SparqlVar('x'), ('', 'a'), SparqlVar('y'))] </code></pre> <p>有没有一种方法可以恢复fyzz中的实际解析树,而不仅仅是三元组,或者其他一些工具可以让我这样做?RDFLib过去似乎有一个bison SPARQL解析器,但我在<code>rdflib</code>或{<cd3>}包中找不到它。在</p> <p>谢谢</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>ANTLR在这里有一个SPARQL语法:<a href="http://www.antlr.org/grammar/1200929755392/index.html" rel="nofollow">http://www.antlr.org/grammar/1200929755392/index.html</a></p> <p>ANTLR可以生成Python运行的解析代码。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
在python3中使用Scipy pearsonr函数
3 回答
在Python3中使用scipy对多个lorentzian进行数据拟合
3 回答
在Python3中使用Script=argv
4 回答
在python3中使用selenium webdriver进行未解析的回溯
10 回答
在python3中使用selenium和phantomjs的网页截图之前如何等待?
7 回答
在Python3中使用Selenium和Requests模块从网页获取文件
10 回答
在python3中使用SIGINT终止函数
7 回答
在Python3中使用SIGTERM时,允许进程完成而不是中断
9 回答
在python3中使用smtplib发送XML内容
3 回答
在python3中使用socket库(RFCOMM模式)重新连接蓝牙设备?
1 回答
在python3中使用sounddevice和numpy编写wav文件
6 回答
在python3中使用Sqlalchemy插入MySQL查找类型错误的原因
9 回答
在python3中使用sqlite、pandas和sqlalchemy很难让rollback工作
3 回答
在python3中使用SQLite的FTS3/4
4 回答
在Python3中使用struct.calcsize()和len()有区别吗?
5 回答
在python3中使用substring函数时发生TypeError
8 回答
在Python3中使用Tkinter entry小部件写入串行设备
2 回答
在python3中使用tkinter时,如何在每次按下函数时获得运行该函数的按钮?
1 回答
在python3中使用tkinter的子帧
6 回答
在Python3中使用tryexcept块时,如何避免使用未初始化的变量?
6 回答