У меня есть онтология в файле 'owl' (nif.owl).Я знаком с Java, но он продолжал падать;поэтому я попытался использовать Python.Однако, поскольку я раньше не использовал Python, я не уверен, правильно ли я загружаю онтологию!
Вот часть, которая, по моему мнению, связана с загрузкой онтологии:
g = rdflib.Graph()
g.parse ('nif.owl', format='xml')
nif = rdflib.Namespace('http://purl.org/nif/ontology/nif.owl')
g.bind('nif', nif)
Я считаю, что проблема в том, что g.parse устанавливает формат 'xml'.Я думаю, что, возможно, 'xml' неправильный.
Я также прикрепил заголовок файла онтологии в виде изображения.
Причина, по которой я считаю ошибку в коде, заключается в том, что я получаю результат, показанный на рисунке ниже:
Спасибо!
PS:Ниже приведен полный код на случай, если с ним что-то не так:
import logging
import rdflib
import time
logging.basicConfig()
logger = logging.getLogger('logger')
logger.warning('The system may break down')
start_time = time.time()
g = rdflib.Graph()
g.parse ('nif.owl', format='xml')
nif = rdflib.Namespace('http://purl.org/nif/ontology/nif.owl')
g.bind('nif', nif)
query = """
select distinct ?p
where { ?s ?p ?o}
LIMIT 5
"""
result = g.query(query)
print(result.serialize(format='csv'))
print("--- %s seconds ---" % (time.time() - start_time))