以下のクエリは、フィルタにCONTAINSを使用する行を含めると機能しますが、値(LCASE)が "donald trump" )。WikiData SPARQLクエリが失敗し、CONTAINSが動作する必要があります
は、この行を使用し、それが動作します:
FILTERは(?(LCASE(idLabel)、 "ドナルド切り札")を含みます)。
使用この行を、それは失敗します。
FILTER(LCASE(idLabel)= "ドナルド切り札"?)。
ありWORKS照会の出力idLabel = "ドナルド・トランプ"
SPARQLクエリ:
SELECT DISTINCT ?id ?idLabel ?PV WHERE {
?id wdt:P106 ?V0. VALUES ?V0 { wd:Q39631 } .
OPTIONAL {
?id rdfs:label ?idLabel .
FILTER(LANG(?idLabel) = 'en') .
} .
# Filter on Label
# WORKS:
FILTER(CONTAINS(LCASE(?idLabel), "donald trump")).
# DOES NOT WORK
#FILTER(LCASE(?idLabel) = "donald trump") .
# subselect on instance type
{
SELECT ?id WHERE {
?id wdt:P31/wdt:P279* ?PV . VALUES(?PV) {(wd:Q5) } .
}
} .
}
目のオプションが動作しない理由私の質問はありますか?
(そして、はい、私は外科医ドナルド・トランプ、ではない、他の人を探しています)ウィキデータで
! – Andy