首页 > 解决方案 > 如何将 SPARQL 查询翻译成英文

问题描述

你能把这个查询翻译成英文吗?

我正在尝试用代码编写一个幼稚的实现。

PREFIX om-owl: <http://knoesis.wright.edu/ssw/ont/sensor-observation.owl#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX weather: <http://knoesis.wright.edu/ssw/ont/weather.owl#>

SELECT DISTINCT ?sensor ?value ?uom
FROM NAMED STREAM <http://www.cwi.nl/SRBench/observations> [NOW - 1 HOURS]
WHERE {
  ?observation om-owl:procedure ?sensor ;
               rdf:type/rdfs:subClassOf* weather:PrecipitationObservation ;
               om-owl:result ?result .
  ?result ?p1 ?value .
  OPTIONAL {
    ?result ?p2 ?uom .
  }
}

任何帮助将不胜感激

标签: sparqlrdfowl

解决方案


据我了解:

SELECT DISTINCT ?sensor ?value ?uom

给我所有不同的传感器名称,它们的值和对应于以下条件的 uom(我不熟悉传感器):

?observation om-owl:procedure ?sensor ;

首先,给我一个程序与传感器相关的观察结果。

rdf:type/rdfs:subClassOf* weather:PrecipitationObservation ;

从这些观察中,所有这些都是降水的子类。

om-owl:result ?result .

并提取我他们的结果。

?result ?p1 ?value .

拿走他们所有的价值。

OPTIONAL { ?result ?p2 ?uom . }

如果它存在,他们所有的 uom (?)。

所以最后,它似乎得到了每个传感器按小时聚合的所有降雨值。


推荐阅读