2013-04-20 90 views
0

我有一个自定义的OWL本体和我上传到我的模型是这样的:将数据插入OWL本体

OntModel=ModelFactory.createOntologyModel(); 

    InputStream in = FileManager.get().open(urlFile); 
    model.read(in,""); 

我得到整个本体到我的模型。现在我不知道如何将一些数据添加到该模型中。想要插入的数据必须适合我上传的本体。

你可以提供一些提示或标记来做到这一点?我很迷茫。

回答

0

您可能会发现Model API tutorial对于学习如何使用Jena模型有用。此外,耶拿javadocs永远是一个很好的参考。

本教程将向您展示如何将数据添加到您的模型。

我不确定你的意思是“适当”与本体。你可以开始在RDF中陈述事实;如果你陈述的东西与你的本体论相矛盾,它的状态只是不一致的,但事情仍然有效。

了解模型的不一致性,具有不可满足的类以及其他OWL(DL真正的)特定结构意味着什么,您应该查看DL手册。第2章特别好。

如果合适的话,你的意思是完整性约束类似于你在关系系统中所具有的完整性约束,好吧,它不会像那样工作。开放世界的假设使得这有点棘手,如果没有“关闭”世界,你无法真正获得你所期望的行为。在Pellet's ICV page上有很好的讨论,目前的实现在Stardog

希望有所帮助。

+0

我知道如何使用jena模型。但直到现在,我只与Foaf的本体一起工作。用猫头鹰我不认为这是相同的方式。 – 2013-04-22 07:32:49

+1

不,您可以像操纵任何模型一样操作OntModel,不管它是否包含OWL。 OntModel包含一些特定于OWL的功能,但不需要使用它们。您可以检查javadoc以便了解如何使用OntModel。 – Michael 2013-04-22 12:31:33

0

如果我理解正确,您希望将数据添加到模型中。

您可以将模式新增报表

model.add(statement); 

或另一种模式本身

model.add(newModel); 

希望这会帮助你。