gpt4 book ai didi

java - 我无法更新本体模型

转载 作者:行者123 更新时间:2023-12-02 13:11:12 25 4
gpt4 key购买 nike

我在Protege中制作了Ontologu并导入Eclipse中。我的本体已经10实例,我想添加更多实例。下面的代码将实例添加到本体的现有(名词)。执行后不会更新本体模型并显示相同数量的实例。

  public static void main(String[] args) throws OWLException, IOException{
OWLOntologyManager manager = OWLManager.createOWLOntologyManager();

File file = new File("D:\\word.owl");{
OntModel model=ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM_RULE_INF);
System.out.println("Model is called successfully");
OWLOntology ont = manager.loadOntologyFromOntologyDocument(file);
System.out.println("Loaded ontology: " + ont);

String SOURCE = ("D:\\word.owl");
String NS = SOURCE;
OntModel base = ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM_RULE_INF);
base.read( SOURCE, "" );

OntModel inf =ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM_RULE_INF, base );

OntClass Noun = base.getOntClass( NS + "Noun" );
Individual jack = base.createIndividual( NS + "Jack", Noun );
Individual Helley = base.createIndividual( NS + "Helley", Noun );
manager.saveOntology(ont);

System.out.println("Number of individuals: " + ont.getIndividualsInSignature().size());

}
}
}

输出

  Model is called successfully
Loaded ontology:
Number of individuals: 10

最佳答案

我不使用该 API,但我可以看到您的问题。

在代码开头创建一个 OWLOntology 对象:

OWLOntology ont = manager.loadOntologyFromOntologyDocument(file);

问题是,您不会在代码中的任何位置更改 ont,因此当您调用下面的行时,它只会显示/保存您从文件加载的相同 10 个个体代码的开头:

manager.saveOntology(ont);

System.out.println("Number of individuals: " + ont.getIndividualsInSignature().size());

因此,要解决此问题,您需要在使用上述行之前以某种方式修改 ont 以包含新的个体。

关于java - 我无法更新本体模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43949641/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com