私は SPARQL を使用していますが、sparql を in 節に入れることはできますか? より具体的には、この sparql クエリの特定の条件を持つエンティティ (s1、s2) を取得する必要があります [フィールドに対する s1 の集計値は 5 よりも大きい]
select
?s1 ?x ?s2.
WHERE {
{?s1 rdf:type dbpedia-owl:Scientist.}
{?s2 rdf:type dbpedia-owl:Scientist.}
{?s2 dbpedia-owl:field ?x.}
{?s1 dbpedia-owl:field ?x.}
}
したがって、このような IN 句を追加する必要があります
SELECT
?s1 ?x ?s2.
WHERE {
{?s1 rdf:type dbpedia-owl:Scientist.}
{?s2 rdf:type dbpedia-owl:Scientist.}
{?s2 dbpedia-owl:field ?x.}
{?s1 dbpedia-owl:field ?x.}
{?s1 IN
{
SELECT ?s1 WHERE {
SELECT ?s1 (COUNT(?p) AS ?prizes) {
?s1 dbpprop:prizes ?p.
} group by (?s1)
}FILTER (?prizes > 2)
}
}
}
しかし、sparql クエリ パーサーでエラーが発生しました。修正方法を知っている人はいますか?