解释推理规则

时间:2018-07-31 12:37:45

标签: marklogic semantic-web marklogic-9

我将三元组作为托管三元组加载到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

0 个答案:

没有答案