Rdf Fuseki可以同时使用OWL resoner和rule reasoner吗

Rdf Fuseki可以同时使用OWL resoner和rule reasoner吗,rdf,jena,semantic-web,ontology,tdb,Rdf,Jena,Semantic Web,Ontology,Tdb,我使用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可以有多个推理机吗 有一个部分称为“

我使用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可以有多个推理机吗

有一个部分称为“将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>"
        .
config:dataset a ja:RDFDataset;
ja:defaultGraph;
.
a:ja模型;
ja:基本模型;
ja:推理机[
ja:来自的规则;
ja:ReasureUrl
] .
a:ja模型;
ja:基本模型;
ja:推理机[
ja:ReasureUrl
] .
rdf:类型tdb:图形DB;
tdb:dataset配置:tdb_dataset_读写。
配置:tdb_数据集_读写
a tdb:datasetdb;
tdb:位置“”
.

您可以使用
GenericRuleReasoner
从文件中使用规则,并在规则文件中使用(@include)包含其他推理器,例如(使用
owlmicbrulereasoner
):

@前缀ex:http://ex.org/
@前缀foaf:http://xmlns.com/foaf/0.1/
@包括
#一些规则:
(?s?p?o)->(?o?p?s)。
...multiple values for the unique property http://jena.hpl.hp.com/2005/11/Assembler#reasoner
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>"
        .
@prefix ex: http://ex.org/
@prefix foaf: http://xmlns.com/foaf/0.1/
@include <owlmicro>

# Some rule:
(?s ?p ?o) -> (?o ?p ?s) .