2016-07-27 50 views
1

我想創建新的推理器(HermiT)。OWLAPI:創建新的推理器(HermiT)

是什麼以下兩種方法之間的差異: -

1)使用廠:[org.semanticweb.HermiT.ReasonerFactory] ​​

ReasonerFactory factory = new ReasonerFactory(); 
OWLReasoner reasoner = factory.createReasoner(ontology, configuration); 

2)使用構造:[有機.semanticweb.HermiT.Reasoner]

Reasoner reasoner = new Reasoner(configuration, ontology); 

回答

1

工廠可能會執行更多的初始化步驟 - 取決於推理者。

在HermiT的情況下,沒有區別。但是,構造函數可能在版本之間更改;該工廠是一個owlapi接口,因此如果您轉向不同的HermiT版本,它將爲您提供無縫接口。

+0

OWLReasoner接口和Reasoner類有什麼區別? Reasoner類是否實現OWLReasoner接口? – SuhasD

+0

是的,Reasoner實現了OWLReasoner – Ignazio