我正在尝试从维基数据中检索一些信息,我发现有趣的是收集声音的别名.例如,Francesco Totti也被称为il Capitano或er Pupone: 我正试图用这个sparql查询检索所有系列的足球运动员: SELECT ?sub
我正试图用这个sparql查询检索所有系列的足球运动员:
SELECT ?subject ?nomeLabel ?cognomeLabel ?subjectLabel WHERE {
?subject wdt:P31 wd:Q5.
?subject p:P54 ?team .
?team ps:P54 wd:""" + team_code +""" .
FILTER NOT EXISTS { ?team pq:P582 ?end
}
OPTIONAL{
?subject wdt:P735 ?nome .
?subject wdt:P734 ?cognome .
}
SERVICE wikibase:label { bd:serviceParam wikibase:language "it". }
}
ORDER BY (?cognomeLabel)
如何修改我的查询以获取别名?
谢谢
SELECT distinct ?subject ?subjectLabel ?nomeLabel ?cognomeLabel ?nickname ?alternative ?subjectAltLabel WHERE {
?subject wdt:P31 wd:Q5.
?subject p:P54 ?team .
?team ps:P54 wd:Q2739 .
FILTER NOT EXISTS { ?team pq:P582 ?end . }
OPTIONAL { ?subject wdt:P735 ?nome . }
OPTIONAL { ?subject wdt:P734 ?cognome . }
OPTIONAL { ?subject wdt:P1449 ?nickname . }
OPTIONAL { ?subject skos:altLabel ?alternative . }
SERVICE wikibase:label { bd:serviceParam wikibase:language "it,en,fr". }
}
ORDER BY (?cognomeLabel)
我相信P1449属性应该是存储别名/昵称的最合适的属性,但对于足球运动员来说似乎没有那么多.我刚刚给Francesco Totti添加了“il Capitano”.除此之外,罗马球员似乎没有其他绰号.
“也称为”标签(在右栏中)不一定是昵称,但可能是拼写变体.
