RDF/XML格式转换为JSON

4

我正在尝试将RDF/XML格式转换为JSON格式。是否有任何python库的示例可以用来做到这一点?


如果您因为问题的简单标题而来到这里,请查看以下Java解决方案:https://dev59.com/rqHia4cB1Zd3GeqPQT11 - jschnasse
2个回答

9
您可以使用rdflib解析许多RDF变体(包括RDF / XML),或者如果适合您的需求,可以使用更简单的rdfparser。然后,您可以使用标准库Python json模块(或者如果您使用一些早于2.6的Python版本,则可以使用第三方simplejson)将由解析器构建的内存结构序列化为JSON。不幸的是,我不熟悉任何同时包含这两个步骤的软件包。

在rdfparser网站上的示例中,整个工作只需要以下步骤即可完成:...

import rdfxml
import json

class Sink(object): 
   def __init__(self): self.result = []
   def triple(self, s, p, o): self.result.append((s, p, o))

def rdfToPython(s, base=None): 
   sink = Sink()
   return rdfxml.parseRDF(s, base=None, sink=sink).result

s_rdf = someRDFstringhere()
pyth = rdfToPython(s_rdf)
s_jsn = json.dumps(pyth)

1

对于最近来到这个问题的人,自版本6.0起,rdflib 直接支持JSON-LD输出:

from rdflib import Graph

g = Graph()
g.parse("demo.xml")
print g.serialize(format='json-ld')

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接