rdf - 在 Javascript 中从 Freebase RDF API 解析 Turtle

标签 rdf freebase

我正在寻找一种巧妙的方法来从freebase RDF API解析RDF。 。我尝试了 jquery.rdf.js/jquery.rdf.turtle.js,但它似乎在处理点符号 CURIE 时遇到问题。例如,下面是我从 Freebase 获得的关于城市“Oslo”的 Turtle:

@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

导致错误:

uncaught exception: Invalid Turtle: Expecting ':', found '.05l64
    ns:base.a...'

有没有办法替换.,或者不同的库或解决方法?

最佳答案

我认为您的基本问题是 Freebase RDF 似乎正在使用最新版本的 Turtle specification目前是 W3C 候选推荐。此版本的 Turtle 规范确实允许使用 . 的 QName(加上许多其他以前的非法字符),而较旧且技术上非官方的 Turtle specification大多数当前工具都没有实现。

当前规范是 2013 年 1 月发布的,我能找到的关于允许 . 的更自由的前缀名称语法的最早引用是 2012 年 7 月的草案。相反,您使用的工具根据其 SVN 的最新更新是在 2009 年,因此它不支持此语法也就不足为奇了。

我确实找到了一个blog post其中讨论了开发一个符合 Javascript 最新规范的 Turtle 解析器,这可能会解决问题。

关于rdf - 在 Javascript 中从 Freebase RDF API 解析 Turtle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17179649/

相关文章:

rdf - notation3 (n3) 调试工具在哪里?

database - SPARQL 中的基数是什么意思?

android - 如何将所有类型的 rss 提要解析为 android 中的单个 sax 解析器

rdf - RDF三元组的高效存储和查询

java - 使用java查找多个文本文件的共同元素的最佳方法是什么?

php - 获取其中包含斜杠的对象属性

javascript - freebase如何提取所有公司的详细信息?

ios - 我需要一个 api key 来访问新的 freebase 图像吗?

semantics - 如何在语义网中映射主观数据?