我在“ 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))
答案 0 :(得分:1)
您的代码没有什么不对,只是格式应该为format='application/rdf+xml'
。