我将三元组作为托管三元组加载到MarkLogic中。具体而言,所有三元组均对应于SKOS和SKOS-XL模式。我正在发出SPARQL查询,以查找所有<http://www.w3.org/2004/02/skos/core#Concept>
类型的主题。这可以是直接的,也可以是通过子类关系的。因此,在发出查询时,我使用 rdfs.rules 规则集进行推理。这项工作可行,除了我还选择了<http://www.w3.org/2008/05/skos-xl#Label>
类型的主题,这些主题也被推断为<http://www.w3.org/2004/02/skos/core#Concept>
类型。我有什么办法可以看到生成此三元组的规则链?
我正在执行类似的操作
import module namespace sem = "http://marklogic.com/semantics" at "/MarkLogic/semantics.xqy";
let $iris := ("urn:x-evn-master:ISOCountries2017-11-13") ! sem:iri(.)
let $bindings := map:map()
let $_ := map:put($bindings, "inSet", $iris)
let $_ := map:put($bindings, "s", sem:iri("https://www.iso.org/obp/ui/#iso:code:3166:AN_EXACT_SYN__AN_"))
let $rs := sem:ruleset-store("rdfs.rules", sem:store())
return
sem:sparql('
select ?p ?o where {
graph ?g {
?s ?p ?o .
}
FILTER(?g IN (?inSet))
}
', $bindings, (), $rs)
这回来了我
<http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2004/02/skos/core#Concept>
<http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2008/05/skos-xl#Label>
<http://www.w3.org/2008/05/skos-xl#literalForm> "AN"@en