Конвертировать тройки в формат rdf uriref

У меня есть функция python, которая определяет тройки в субъекте, объекте и предикатах и ​​выполняет итерацию по ним, но мне нужно преобразовать тройки в формат данных RDF URIRef, чтобы я мог сохранить его в своем хранилище RDF. Как я могу пойти по этому поводу?

Я использую RDFLib для своего хранилища RDF, как объяснено выше, я пытаюсь преобразовать набор данных (точнее, данные датчика) в словаре в формат RDFLIb URIRef.

например, если у меня есть self.triples[self.identifier][prov['subject']]=self.subject.identifier self.triples[self.identifier][rdf['type']]= prov['alternateOf'] и Я конвертирую их в формат URIRef, используя RDFLib

Что касается магазина я использую RDFStore для формата n3

Я хочу сказать следующее: RDFLib использует строки Python в качестве субъектов, предикатов и объектов, но некоторые операции не будут работать, если они не будут должным образом преобразованы в формат данных rdflib.URIRef. Только тогда, когда они находятся в правильном формате, я могу сохранить их в RDFStore.

1 ответ

Краткий ответ на ваш вопрос о том, как преобразовать строку в URI:

from rdflib import URIRef
# this cannot be a subject in a triple
uri_str = 'http://stackru.com/questions/11594712'
# this can be a subject (or predicate or object) of a triple
uri_ref = URIRef(uri_str)

Использование с Namespace:

from rdflib import Namespace

ns_str = 'http://example.com/namespace/doc/'
ns = Namespace(ns_str)

uri_str = ns_str+'fragment'

assert URIRef(ns_str+'fragment') == ns.fragment == ns['fragment']
Другие вопросы по тегам