我有一个本体论(一个分类法,只包含类;没有个人),如下所示:
Owl:Thing
Parts
Jackfruit
Jackfruit_flower
Grape
Plant
Jackfruit_tree
Grapevine我想要创建一个关系来连接两个类部件和工厂: grows_in,它将每个部分映射到一棵树上。最终,我希望能够编写SparQL查询,例如: grow_in特定植物的哪个部分。
我在某个地方读到,使用注释属性是最好的方法。但是,注释属性似乎不适用于推理器/ SparQL查询。应该注意的是,我拥有的本体是巨大的(>10,000个类),我正在python中使用rdflib。
为了能够运行SparQL查询,最好的方法是在类之间创建关系(我已经有了映射,剩下要做的就是添加关系)。
发布于 2018-06-18 16:10:40
您应该创建一个对象属性:grows_in。对象属性将Individuals连接到Individuals。
而且,该对象属性需要Plants作为Domain,Parts作为Range。
注释属性显然不适合它。
例如,可计算的SPARQL查询将是:
PREFIX : <YOU_ONTOLOGY_URL>
SELECT * WHERE {
?parts :grows_in ?plan
}编辑:编辑了以下评论
https://stackoverflow.com/questions/50913366
复制相似问题