小编RFA*_*FAI的帖子

如何在Python中解析和加载本体?

我在“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)
Run Code Online (Sandbox Code Playgroud)

我相信问题在于 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))
Run Code Online (Sandbox Code Playgroud)

python rdf sparql

6
推荐指数
1
解决办法
8785
查看次数

标签 统计

python ×1

rdf ×1

sparql ×1