jena 的目的是什么 org.apache.jena.sparql.core.GraphView

What is the purpose org.apache.jena.sparql.core.GraphView in jena

正如标题所暗示的那样,我试图理解耶拿架构中 org.apache.jena.sparql.core.GraphView 的目的。我目前正在学习SPI。

文档说:

Implement a Graph as a view of the DatasetGraph. It maps graph operations to quad operations. GraphUnionRead provides a union graph that does not assume quads, but loops on graphs.

https://jena.apache.org/documentation/javadoc/arq/org/apache/jena/sparql/core/GraphView.html

我想知道更多的是在什么情况下使用它,比如在高层次上,class 的内在目的是什么?

此致,

马特

它是数据库意义上的“视图”。

DatasetGraph 是图的集合,一个默认图和零个或多个命名图。它具有访问默认 getDefaultGraph 和任何命名图 getGraph 的操作。然后可以将这些图表与 Model API.

一起使用

一些(事实上,大多数)DatasetGraph 将数据存储为一组三元组和一组四元组。 GraphView 呈现 GraphAPI 将存储留在原地。通过 GraphView 的更改会更新基础 DatasetGraph,将三元组 add/delete 指向 DatasetGraph 的右侧部分,对于命名图形视图,转换为四元组 add/delete。 GraphView 上的交易是 DatasetGraph 上的交易。