我有一個自定義的OWL本體和我上傳到我的模型是這樣的:將數據插入OWL本體
OntModel=ModelFactory.createOntologyModel();
InputStream in = FileManager.get().open(urlFile);
model.read(in,"");
我得到整個本體到我的模型。現在我不知道如何將一些數據添加到該模型中。想要插入的數據必須適合我上傳的本體。
你可以提供一些提示或標記來做到這一點?我很迷茫。
我有一個自定義的OWL本體和我上傳到我的模型是這樣的:將數據插入OWL本體
OntModel=ModelFactory.createOntologyModel();
InputStream in = FileManager.get().open(urlFile);
model.read(in,"");
我得到整個本體到我的模型。現在我不知道如何將一些數據添加到該模型中。想要插入的數據必須適合我上傳的本體。
你可以提供一些提示或標記來做到這一點?我很迷茫。
您可能會發現Model API tutorial對於學習如何使用Jena模型有用。此外,耶拿javadocs永遠是一個很好的參考。
本教程將向您展示如何將數據添加到您的模型。
我不確定你的意思是「適當」與本體。你可以開始在RDF中陳述事實;如果你陳述的東西與你的本體論相矛盾,它的狀態只是不一致的,但事情仍然有效。
瞭解模型的不一致性,具有不可滿足的類以及其他OWL(DL真正的)特定結構意味着什麼,您應該查看DL手冊。第2章特別好。
如果合適的話,你的意思是完整性約束類似於你在關係系統中所具有的完整性約束,好吧,它不會像那樣工作。開放世界的假設使得這有點棘手,如果沒有「關閉」世界,你無法真正獲得你所期望的行爲。在Pellet's ICV page上有很好的討論,目前的實現在Stardog。
希望有所幫助。
如果我理解正確,您希望將數據添加到模型中。
您可以將模式新增報表
model.add(statement);
或另一種模式本身
model.add(newModel);
希望這會幫助你。
我知道如何使用jena模型。但直到現在,我只與Foaf的本體一起工作。用貓頭鷹我不認爲這是相同的方式。 – 2013-04-22 07:32:49
不,您可以像操縱任何模型一樣操作OntModel,不管它是否包含OWL。 OntModel包含一些特定於OWL的功能,但不需要使用它們。您可以檢查javadoc以便了解如何使用OntModel。 – Michael 2013-04-22 12:31:33