Fuseki能否同时使用OWL Resoner和规则推理器

问题描述 投票:1回答:1

我使用Jena Fuseki加载Jena TDB文件以构建SPARQL服务。 fuseki谐振器配置如下:

<#inf_model> a ja:InfModel ;
    ja:baseModel <#union_model>;
    ja:reasoner [ja:reasonerURL <http://jena.hpl.hp.com/2003/OWLMicroFBRuleReasoner>] ;

现在,我还想编写一些规则并为Fuseki服务器设置一个规则谐振器。我应该如何配置Fuseki以结合所有OWL谐振器和规则谐振器?我尝试了以下配置,但失败了。

<#inf_model> a ja:InfModel ;
    ja:baseModel <#union_model>;
    ja:reasoner [ja:reasonerURL <http://jena.hpl.hp.com/2003/OWLMicroFBRuleReasoner>] ;

    ja:reasoner [
        ja:reasonerURL <http://jena.hpl.hp.com/2003/GenericRuleReasoner> ; 
        ja:rulesFrom <file://D:/Program%20Files/apache-jena-fuseki-3.13.1/run/rule.ttl>; ]

Fuseki可以有多个共振器吗?

rdf jena semantic-web ontology tdb
1个回答
0
投票

inference documentation具有称为“将RDFS / OWL与自定义规则组合”的部分。他们提出的第一个建议是“使用另一个InfModel作为基础数据来构造一个InfModel。”

他们没有提供示例,但基于此我可以使以下内容起作用:

config:dataset a ja:RDFDataset ;
    ja:defaultGraph       <#model_inf2> ;
     .

<#model_inf2> a ja:InfModel ;
     ja:baseModel <#model_inf1> ;

     ja:reasoner [
        ja:rulesFrom <file:/my-rules.rules> ;
        ja:reasonerURL <http://jena.hpl.hp.com/2003/GenericRuleReasoner>
     ] .

<#model_inf1> a ja:InfModel ;
     ja:baseModel <#graph> ;
     ja:reasoner [
        ja:reasonerURL <http://jena.hpl.hp.com/2003/OWLFBRuleReasoner>
     ] .

<#graph> rdf:type tdb:GraphTDB ;
  tdb:dataset config:tdb_dataset_readwrite .

config:tdb_dataset_readwrite
        a             tdb:DatasetTDB ;
        tdb:location  "<path-to-tbd-dataset>"
        .
© www.soinside.com 2019 - 2024. All rights reserved.