首页 > 解决方案 > Marklogic Triple store 是否支持 Ontology 中的 SWRL?

问题描述

我想了解,如果我在其中加载带有 SWRL 规则的本体,Marklogic 是否会立即理解它,或者我们是否需要激活某些东西才能根据规则获得推断知识 (SPARQL)?

标签: sparqlmarklogic-9swrl

解决方案


从有关规则和规则集的文档(https://docs.marklogic.com/9.0/guide/semantics/inferencing#id_46963)看来,它们似乎像 SPARQL CONSTRUCT 规则一样使用规则来执行推理:

    Rules ::= RulePrologue Rule*
Rule ::= 'RULE' RuleName 'CONSTRUCT' ConstructTemplate 'WHERE'? 
    RuleGroupGraphPattern
RuleName ::= String
RuleGroupGraphPattern ::= '{' TriplesBlock? ( ( Filter 
    RuleGroupGraphPattern ) '.'? TriplesBlock? )* '}'
RulePrologue ::= ( BaseDecl | PrefixDecl | RuleImportDecl )*
RuleImportDecl ::= 'IMPORT' RuleImportLocation
RuleImportLocation ::= String

或者正如他们提供的示例:

RULE "subClassOf axioms" CONSTRUCT {
  rdfs:subClassOf rdfs:domain rdfs:Class .
  rdfs:subClassOf rdfs:range rdfs:Class .
} {}

推荐阅读