簡體   English   中英

owlapi HERMIT和SPARQL

[英]owlapi HERMIT and SPARQL

如何使用HERMIT推理程序1.3.8在Java中執行SPARQL查詢? 我正在使用owlapi 4.2,並且已使用以下命令加載了HERMIT推理程序:

OWLReasonerFactory reasonerFactory = new Reasoner.ReasonerFactory();
OWLReasoner reasonerHermit = reasonerFactory.createReasoner(ontology);

不幸的是,我找不到任何解釋如何使用此推理器執行SPARQL查詢? 這有可能嗎? 如果沒有,使用owlapi和SPARQL還有什么其他可能性(其他推理程序)?

編輯:

我現在知道我需要一個SPARQL引擎。 這就是為什么我這樣使用SPARQL-DL的原因:

QueryEngine engine = QueryEngine.create(manager, reasoner, true);
Query query = Query.create("...");
QueryResult result = engine.execute(query);
System.out.println(result);

該查詢有效,但是如果我現在得到類似

?de.derivo.sparqldlapi.Var@69 = http://www.example.com/project1#document_1

如何獲取http://www.example.com/project1#document_1 我找不到獲取此值的正確方法。

HermiT是OWL推理程序,而不是SPARQL引擎。 有一個名為SPARQL-DL的API,但根據其網站,它僅支持OWL APIv3.x。 可以在Protege項目中找到具有OWL API 4支持的較新的分支版本: https : //github.com/protegeproject/sparql-dl-api

查看QueryResult的源( 可從此處獲得),這里有一個查詢綁定。 您具有迭代所有綁定的方法,並且應該在綁定的綁定值中找到要獲取的值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM