4 Stimmen

RDF/XML-Format in JSON umwandeln

Ich versuche, das RDF/XML-Format in das JSON-Format umzuwandeln. Gibt es ein Python-Beispiel (Bibliothek), das ich mir dazu ansehen kann?

0 Stimmen

Falls du hier bist wegen des einfachen Titels der Frage. Schau hier nach einer Java-Lösung stackoverflow.com/questions/43638342

9voto

Alex Martelli Punkte 805329

Sie können rdflib verwenden, um viele RDF-Varianten (einschließlich RDF/XML) zu analysieren, oder vielleicht das einfachere rdfparser, wenn es Ihren Anforderungen entspricht. Anschließend können Sie das Python-Standardbibliotheksmodul json (oder alternativ das Drittanbietermodul simplejson, wenn Sie eine ältere Python-Version als 2.6 verwenden) verwenden, um die mit dem Parser erstellte In-Memory-Struktur in JSON zu serialisieren. Leider kenne ich kein Paket, das beide Schritte verkörpert.

Bei dem Beispiel auf der Website von rdfparser wäre die Gesamtarbeit einfach...:

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)

1voto

Brendan Quinn Punkte 1843

Für diejenigen, die erst kürzlich zu dieser Frage kommen, rdflib unterstützt seit der Version 6.0 direkt die JSON-LD-Ausgabe:

from rdflib import Graph

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

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X