def ingest_graph(graph):
sparql = """SELECT DISTINCT ?subject WHERE { ?subject ?pred ?obj . }"""
for row in graph.query(sparql):
subject = row[0]
fedora_result = requests.post(FEDORA_URL)
fedora_subject = rdflib.URIRef(fedora_result.text)
subject_graph = rdflib.Graph()
subject_graph.parse(str(fedora_subject))
subject_graph.namespace_manager.bind(
'schema',
'http://schema.org/')
subject_graph.namespace_manager.bind(
'owl',
str(rdflib.OWL))
subject_graph.add((fedora_subject, rdflib.OWL.sameAs, subject))
for pred, obj in graph.predicate_objects(
subject=subject):
subject_graph.add((fedora_subject, pred, obj))
print(subject_graph.serialize(format='turtle').decode())
update_result = requests.put(str(fedora_subject),
data=subject_graph.serialize(format='turtle'),
headers={"Content-Type": "text/turtle"})
评论列表
文章目录