如何在Blazegraph中导入和查询4列N-Quad四元组?

时间:2016-06-30 01:17:37

标签: sparql rdf graph-databases triplestore blazegraph

我对RDF / SPARQL比较陌生,我正试图将一些N-Quad,4列/四列数据导入并查询到Blazegraph(参见schemaOrgEvent.sample.txt)。

当我导入Quads数据(Web控制台)时,我只剩下基于三元组的3列元组数据,即Blazegraph只允许SPARQL查询选择{?s?p?o},但是四重选择{ ?s?p?o?c},不要。 我做错了什么???

Blazegraph能否原生存储4列Quad数据,还是我误解了RDF / Triple / Quad存储的性质?

此外,导入的四元数据以及三元组(标准化???)似乎将第1列转换为另一列,Blazegraph提供的(?),标识符,原始(Quad)数据格式为(4 -columns)

_:node03f536f724c9d62eb9acac3ef91faa9 <http://schema.org/PostalAddress/addressRegion> "Kentucky"@en <http://concerts.eventful.com/Lauren-Alaina> .

导入后(3列):

t1702   schema:PostalAddress/addressRegion  Kentucky

谁的查询是:

SELECT * WHERE
{
    ?s ?p ?o
    #?s ?p ?o ?c - Won't work :-(
    FILTER(STR(?o)="Kentucky")
}

值't1702'是排序的'外键',可用于链接到其他三元组(即在导入日期内重复)。

1 个答案:

答案 0 :(得分:5)

SPARQL查询RDF三元组。 Quad数据存储的第四个维度是图形。 RDF可以分为三元组的单独图形,类似于数据库中的表格。您可以使用以下内容查询Quad商店:

SELECT *
WHERE {
   GRAPH ?g {
      ?s ?p ?o
   }
}