是否有必要将本体文件和RDF数据放在同一个数据库中以进行推理或推理?



我想了解是否有必要将本体或 OWL 文件(作为三元组)存储在数据库中以执行任何推理,我们面临的问题是如果本体需要更新,那么我们将如何更新它?

我们考虑的想法是将本体暴露在网络上的某个地方,并在我们对具有三元组的数据库进行SPARQL查询时使用其引用,但是我想知道这是否是正确的方法?(它基本上节省了我们在数据库中更新本体的过程)

另外,如果可以在网络上公开它,那么应该怎么做? 我们正在考虑通过 AWS 中的 s3 Bucket 存储和公开它。

我们已经尝试通过将其保存在数据库中来做到这一点,但想知道是否有可能以任何方式将两者解耦?

这取决于底层系统如何执行推理。对于实现推理的系统,即预计算推理,您可能需要将本体和所有数据加载到数据库中才能进行推理。

如果您使用的是在运行时执行推理的系统,那么数据和本体可以是分开的。如果查询引擎可以在规划期间访问数据,您将获得更好的查询性能,因为由于本体的原因,可能包含计划的某些部分,但实际上可以根据数据库中的实际内容进行修剪。

相关内容