2017-10-20 5 views
3

別名(別名としても知られています)を使用してWikidataを照会する方法を知りたいと思います。Wikidataを "also known as"と尋ねる方法

今私は、これは単に私がrdfs:labelsrdfs:aliasesを交換する場合に動作し、クエリで

SELECT ?item 
WHERE 
{ 
?item rdfs:aliases ?alias. 
FILTER(CONTAINS(?alias, "Angela Kasner"@en)) 
} 
LIMIT 5 

をしようとしています。

Help:Aliasesはラベルと同じ方法でエイリアスを検索できますが、他のリソースは見つからず、例も見つけられないので、これを試しています。

+1

使用 'SKOS:代わりに' RDFSのaltLabel':aliases'、おそらくあなたの次の質問は、クエリのタイムアウト制限」についてになります到達した。 –

+0

しかしこれは動作します: 'SELECT * {wd:Q567 skos:altLabel?altLabel。 FILTER(?altLabel、 "Angela Kasner" @en))} ' –

+1

また、' rdfs:aliases'を 'rdfs:labels'に置き換えても動作しないようです。 (戻り値 "一致するレコードが見つかりません") –

答えて

0

このクエリはまた性質のためとして知られている照会誰かのために役に立つかもしれません:

SELECT ?property ?propertyLabel ?propertyDescription (GROUP_CONCAT(DISTINCT(?altLabel); separator = ", ") AS ?altLabel_list) WHERE { 
    ?property a wikibase:Property . 
    OPTIONAL { ?property skos:altLabel ?altLabel . FILTER (lang(?altLabel) = "en") } 
    SERVICE wikibase:label { bd:serviceParam wikibase:language "en" .} 
} 
GROUP BY ?property ?propertyLabel ?propertyDescription 
LIMIT 5000 
関連する問題