所以我有这个加载到Stardog上的 .rdf,然后我使用Pubby在 Jetty 上运行,以浏览三重商店。
在我的 rdf 文件中,我有几个空白节点,stardog 为它们提供了一个空白节点标识符。所以这是 rdf 文件的一个片段。
<kbp:ORG rdf:about="http://somehostname/resource/res1">
<kbp:canonical_mention>
<rdf:Description>
<kbp:mentionStart rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">1234</kbp:mentionStart>
<kbp:mentionEnd rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">1239</kbp:mentionEnd>
</rdf:Description>
</kbp:canonical_mention>
所以基本上我有一些资源“res1”,它具有指向空白节点的链接,该节点具有提及开始和提及结束偏移值。
Pubby 的 config.ttl 文件片段如下所示。
conf:dataset [
# SPARQL endpoint URL of the dataset
conf:sparqlEndpoint <http://localhost:5822/xxx/query>;
#conf:sparqlEndpoint <http://localhost:5822/foaf/query>;
# Default graph name to query (not necessary for most endpoints)
conf:sparqlDefaultGraph <http://dbpedia.org>;
# Common URI prefix of all resource URIs in the SPARQL dataset
conf:datasetBase <http://somehostname/>;
...
...
所以关键是 datasetBase 将 URI 映射到 URL。
当我尝试映射它时,有一个“匿名节点”链接,但点击后,什么都没有显示。我的猜测是,这是因为空白节点有一些像 _:bnode1234 这样的标识符,它没有被 Pubby 映射。
我想知道是否有人知道如何映射这些空白节点。
(注意:如果我将这个 rdf 作为静态 rdf 文件直接加载到 Pubby 上,它可以正常工作。但是当我使用 stardog 作为三重存储时,这个映射就不能正常工作了)