我正在寻找一种从freebase RDF API解析RDF的简洁方法.我试过jquery.rdf.js/ jquery.rdf.turtle.js,但似乎在处理点符号CURIEs时遇到了麻烦.例如,下面是我从Freebase获得的有关该城市的Turtle "Oslo":
@prefix key: <http://rdf.freebase.com/key/>.
@prefix ns: <http://rdf.freebase.com/ns/>.
@prefix owl: <http://www.w3.org/2002/07/owl#>.
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
@prefix xsd: <http://www.w3.org/2001/XMLSchema#>.
ns:m.05l64
ns:base.aareas.schema.administrative_area.administrative_area_type ns:m.0hzcklw;
ns:base.aareas.schema.administrative_area.administrative_parent ns:m.05b4w;
ns:base.biblioness.bibs_location.country ns:m.05b4w;
ns:base.biblioness.bibs_loca
Run Code Online (Sandbox Code Playgroud)
导致错误:
uncaught exception: Invalid Turtle: Expecting ':', found '.05l64
ns:base.a...'
Run Code Online (Sandbox Code Playgroud)
有没有办法替换.,或不同的库或解决方法?
我认为您的基本问题是Freebase RDF似乎使用的是最新版本的Turtle规范,该规范目前是W3C候选推荐标准.这个版本的Turtle规范确实允许.在其中使用的QNames (以及许多其他以前非法的字符),而大多数当前工具实现的旧的和技术上非官方的Turtle规范没有.
目前的规范是从2013年1月开始的,我能找到的最早的参考文献是更自由的Prefixed Name语法允许.在2012年7月的草案中.相反,您使用的工具是根据其SVN在2009年最后更新的,因此它不支持此语法也就不足为奇了.
我确实找到了一篇博客文章,讨论了如何开发一个Turtle解析器到Javascript的最新规范,可以解决这个问题.
| 归档时间: |
|
| 查看次数: |
460 次 |
| 最近记录: |