0

我是一名生物学家,试图从这个 SPARQL 查询中理解三元组的含义。如果“a”是三元组,那么在这个示例查询中,主语、宾语和谓语的资源是什么?

PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX obo: <http://purl.obolibrary.org/obo/>
PREFIX sio: <http://semanticscience.org/resource/>
PREFIX efo: <http://www.ebi.ac.uk/efo/>
PREFIX atlas: <http://rdf.ebi.ac.uk/resource/atlas/>
PREFIX atlasterms: <http://rdf.ebi.ac.uk/terms/atlas/>

SELECT DISTINCT ?experiment ?description WHERE
{?experiment
a atlasterms:Experiment ;
dcterms:description ?description ;
 atlasterms:hasAssay
 [atlasterms:hasSample
  [atlasterms:hasSampleCharacteristic
   [ atlasterms:propertyType ?propertyType ;
     atlasterms:propertyValue ?propertyValue]
  ]
 ]
filter regex (?description, "diabetes", "i")
}

我感谢您的帮助?

谢谢,广告

4

1 回答 1

0
?experiment
a atlasterms:Experiment ;

是相同的

?experiment a atlasterms:Experiment ;

是相同的

?experiment rdf:type atlasterms:Experiment ;

所以查询中的表格只是一个空白重新排列,并使用属性 rdf:type 的内置缩写“a”。

有关http://www.sparql.org/query-validator.htmlSPARQL 查询的在线格式化程序,请参阅。

一个更简单的查询是:

SELECT DISTINCT  ?experiment ?description
WHERE
  { ?experiment rdf:type atlasterms:Experiment .
    ?experiment dcterms:description ?description
    FILTER regex(?description, "diabetes", "i")
  }

因为

SELECT DISTINCT  ?experiment ?description

表示 ?propertyType/?propertyValue 部分不影响结果。

于 2015-02-11T09:00:08.777 回答