Я выполняю запрос sparql через python rdflib, например
r=sparql.prepareQuery('SELECT ?label WHERE { <%s> rdfs:label ?label . }'%i)
Моя цель состоит в том, чтобы получить ярлыки для понятий таким образом. В результате я получаю что-то вроде этого:
rdflib.term.Literal(u'primary phloem sieve cell', datatype=rdflib.term.URIRef(u'http://www.w3.org/2001/XMLSchema#string'))
Из этого я хочу извлечь метку и тип данных (т.е. первичную сито флоэмы и строку соответственно для этого случая). Я использую
if type(o) == rdflib.term.Literal:
output.append(o.toPython())
Где
o= rdflib.term.Literal(u'primary phloem sieve cell', datatype=rdflib.term.URIRef(u'http://www.w3.org/2001/XMLSchema#string'))
Но это не работает. Я новичок в rdflib. Кто-нибудь знает, как я могу это сделать?
Я знаю, что мне нужно преобразовать результат в строку для метки, но что, если тип данных не является строкой, и я хочу получить тип данных