Sparql GraphDB上的图形URI

Sparql GraphDB上的图形URI,sparql,graphdb,named-graphs,Sparql,Graphdb,Named Graphs,SPARQL图的概念对我来说仍然是抽象的 图与SQL表类似吗?一个三元组是否可以属于多个图形 有没有办法获取属于三元组的图的URI 有没有办法获取GraphDB存储库中存储的每个图形的URI?要获取默认图形的URI 谢谢,除了UninformedUser的答案之外,还可以使用以下cURL命令cURL'http://:/repositories//contexts'列出图表 您可以使用Workbench轻松地探索和导出GraphDB存储库中的图形内容 这里还可以找到默认图形的值。要了解差异,我们可

SPARQL图的概念对我来说仍然是抽象的

图与SQL表类似吗?一个三元组是否可以属于多个图形

有没有办法获取属于三元组的图的URI

有没有办法获取GraphDB存储库中存储的每个图形的URI?要获取默认图形的URI


谢谢,

除了UninformedUser的答案之外,还可以使用以下cURL命令
cURL'http://:/repositories//contexts'
列出图表

您可以使用Workbench轻松地探索和导出GraphDB存储库中的图形内容


这里还可以找到默认图形的值。

要了解差异,我们可以首先参考数据模型本身:

关系模型

SQL
操作关系数据库。一般来说,关系模型是一种将数据及其依赖项建模为结构化表的方法。如果我们想查询由多个表生成的信息,那么我们将执行所谓的
join
操作来检索不同表中元素之间的关系。
join
操作符通常使用表中常见的键。 此模型的一个缺点是当您需要执行许多这样的
join
操作来检索所需信息时。在这种情况下,响应变得非常慢,性能显著下降

图形模型

相比之下,
SparQL
是一种查询语言,具有类似SQL的语法,但对图形数据进行操作。图形数据模型不将数据存储为表。相反,它使用三重存储(另一个选项是使用属性图,但您的问题涉及三重存储)。 RDF三元组是W3C在图形数据模型中描述语句的标准方式。它由
主语
谓语
宾语
组成。
主语
是三元组所指的实体,
谓语
是它所具有的关系类型,
宾语
是主语所连接的实体或属性。 主题始终具有唯一标识符(例如,
URI
),而对象可以是文字或具有URI的另一个实体

进一步比较

您可以查看本书第2章(存储连接数据的选项)中模型的更详细比较:

回到你的问题上来

图与SQL表类似吗?一个三元组可以属于更多的吗 不止一个图形

不,图形不是SQL表。 是的,一个三元组可以出现在不同的图形中(只要三元组具有相同的主语、谓语和宾语)。但是,如果使用不同的本体,三元组将出现在不同的上下文中

有没有办法获取属于三元组的图的URI?有没有办法获取GraphDB存储库中存储的每个图形的URI?要获取默认图形的URI

SparQL查询是图形模式。您需要指定要搜索的结构类型

正如UnformedUser评论的那样:

全部三倍

select distinct ?g {graph ?g {?s ?p ?o}}
包含特定三元组的所有结构

select distinct ?g {graph ?g {:s :p :o}}

获取所有图:
select distinct?g{graph?g{s?p?o}
获取包含三元组的所有图:
select distinct?g{graph?g{:s:p:o}
并且不要将图与SQL表进行比较。一个RDF图只不过是一组RDF三元组,这就是0的结果是什么意思?如果只是加载到默认图,那么显然没有命名图<代码>图形?g总是指命名的图形。默认图形没有URI,为什么要这样做?在SPARQL中,
SELECT?g{graph?g{}
列出了图形URI。