3

次のsparqlクエリは、死んでいる人を示します。

select distinct ?item{
?item <http://freebase.com/ns/common/topic/notable_types> <http://freebase.com/ns/people/person> .
?item <http://freebase.com/ns/people/deceased_person/date_of_death> ?y .
}

生きているすべての人を手に入れたいです。これをSPARQL構文で表現するにはどうすればよいですか?それは尋ねるようなもので、特定のエッジを持たないすべてのノードを取得します。SPARQLで可能ですか?

前もって感謝します。どんな助けでも大歓迎です。

4

2 に答える 2

3

SPARQL1.1の場合

SELECT DISTINCT ?item {
    ?item <http://freebase.com/ns/common/topic/notable_types> <http://freebase.com/ns/people/person> .
    FILTER NOT EXISTS { ?item <http://freebase.com/ns/people/deceased_person/date_of_death> ?y}
}
于 2012-12-16T14:02:25.340 に答える
2

もちろん。この構造を使用できます:

SELECT DISTINCT ?item {
    ?item <http://freebase.com/ns/common/topic/notable_types> <http://freebase.com/ns/people/person> .
    OPTIONAL {?item <http://freebase.com/ns/people/deceased_person/date_of_death> ?y}
    FILTER (!BOUND(?y))
}
于 2012-12-15T19:53:33.387 に答える