小编tan*_*too的帖子

SPARQL:删除实例及其所有具有链接子属性的属性

我有一个关于使用 SPARQL 从三元组存储(在我的例子中是 Virtuoso)中删除元素的问题。我已将以下元素存储在图表中:

@prefix xy: <http://purl.oclc.org/xy/xy#> .
@prefix ssn: <http://purl.oclc.org/NET/ssnx/ssn#> .

<point> a xy:Point ;
    xy:value "10" ;
    ssn:observationResultTime <Rs_b8d4ae44-6083-4140-b4e3-11fcf38a53c8> ;
    ssn:observationSamplingTime <St_b8d4ae44-6083-4140-b4e3-11fcf38a53c8> ;
    ssn:observedBy <SensorID-b8d4ae44-6083-4140-b4e3-11fcf38a53c8> .
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,我有一个 xy:Point,它具有一些属性。在我的数据库中,我存储了数十个这样的点。现在我的问题是:如何删除一个点及其所有属性(甚至是观察采样时间、观察结果时间可能链接的子属性)?有什么简单的解决办法吗?现在,我通过给出所有精确关系来删除该点及其属性,例如:

@prefix xy: <http://purl.oclc.org/xy/xy#> .
@prefix ssn: <http://purl.oclc.org/NET/ssnx/ssn#> 

delete {
   ?observation a xy:Point .
   ?observation xy:value ?value .
   ?observation ssn:observationResultTime ?resultTime .
   ?observation ssn:observationSamplingTime ?samplingTime .
   ?observation ssn:observedBy ?sensor .
}
WHERE {
   ?observation xy:value ?value .
   ?observation ssn:observationResultTime ?resultTime .
   ?observation ssn:observationSamplingTime ?samplingTime .
   ?observation ssn:observedBy ?sensor .
}
Run Code Online (Sandbox Code Playgroud)

我想做的是“删除?观察 …

sparql triplestore virtuoso

3
推荐指数
1
解决办法
1974
查看次数

标签 统计

sparql ×1

triplestore ×1

virtuoso ×1