首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >RDFLib解析器不识别json-ld格式。

RDFLib解析器不识别json-ld格式。
EN

Stack Overflow用户
提问于 2015-08-05 19:47:35
回答 3查看 4.4K关注 0票数 4

我在Python3.4中的代码:

代码语言:javascript
运行
复制
from rdflib import Graph, plugin
import json, rdflib_jsonld
from rdflib.plugin import register, Serializer
register('json-ld', Serializer, 'rdflib_jsonld.serializer', 'JsonLDSerializer')

context = {
"@context": {
            "foaf" : "http://xmlns.com/foaf/0.1/",
            "vcard": "http://www.w3.org/2006/vcard/ns#country-name",
            "job": "http://example.org/job",

            "name":             {"@id": "foaf:name"},
            "country":          {"@id": "vcard:country-name"},
            "profession":       {"@id": "job:occupation"},
        }
}

x = [{"name": "bert", "country": "antartica", "profession": "bear"}]
g = Graph()
g.parse(data=json.dumps(x), format='json-ld', context=context)
g.close()

错误:

代码语言:javascript
运行
复制
"No plugin registered for (%s, %s)" % (name, kind))
rdflib.plugin.PluginException: No plugin registered for (json-ld, <class'rdflib.parser.Parser'>)

根据RDFLib文档,支持的插件列表不包括json格式。但是,以前我已经将它的格式设置为json-ld,并且有很多使用json-ld格式的示例,例如:https://github.com/RDFLib/rdflib-jsonld/issues/19

我包括了rdflib_jsonld的导入,尽管它以前在另一个环境(Python2.7)上只使用rdflib (我知道,没有任何意义)。

第4行的json-ld注册部分也没有帮助。

有人想办法吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-08-05 20:11:59

我补充说:

代码语言:javascript
运行
复制
from SPARQLWrapper import SPARQLWrapper

我正在查看来自RDFLib at http://rdflib.readthedocs.org/en/latest/apidocs/rdflib.plugins.sparql.results.html#module-rdflib.plugins.sparql.results.jsonlayer的RDFLib模块,并注意到我在以前的环境中使用了SPARQLWrapper,我在这里使用了这个示例。

票数 3
EN

Stack Overflow用户

发布于 2018-09-10 19:45:38

这是您可以使用的简单语法。

代码语言:javascript
运行
复制
import rdflib
import json
from collections import Counter
from rdflib import Graph, plugin
from rdflib.serializer import Serializer

g = rdflib.Graph()
g.parse("http://purl.obolibrary.org/obo/go.owl")
j = g.serialize(format='json-ld', indent=4)
with open('ontology.json', 'a+') as f:
    f.write(str(j))
f.close()
票数 0
EN

Stack Overflow用户

发布于 2020-10-07 09:11:02

在运行了以下两个单元之后,我在木星笔记本中也遇到了这个PluginException:

! pip install rdflib-json

代码语言:javascript
运行
复制
from rdflib import Graph, plugin
from rdflib.serializer import Serializer

g = Graph()
g.parse(data="""
<some turtle triples>
""", format="turtle")
g.serialize(format="json-ld") 

结果,它只是通过重新启动笔记本并重新运行上面的代码(因此在重新启动笔记本之后重新运行)就开始工作了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31841543

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档