如何在Wikidata中获取非英语语言的标签性别

问题描述 投票:1回答:1

我想知道如何获得维基数据的性别。例如

SELECT ?s ?sLabel 
WHERE
{
  ?s wdt:P31 wd:Q6256 ; rdfs:label ?sLabel .
   FILTER (lang(?sLabel) = 'fr') .
  } limit 10

我想要的不仅仅是法语标签,还有性别,就像这样

Canada        Masculin
Bangladesh    Masculin
Norvège       Feminin

无论如何使用维基数据查询来做到这一点?

sparql wikidata wikidata-api
1个回答
2
投票

SELECT ?country_label ?language_code ?gender_label {
  ?s wdt:P31 wd:Q6256 ;
     rdfs:label ?country_label .
  FILTER (lang(?country_label) = ?language_code)
  ?lexeme ontolex:sense?/wdt:P5137 ?s ;
          dct:language/wdt:P424 ?language_code .
  OPTIONAL { 
     ?lexeme wdt:P5185 ?gender .
     ?gender rdfs:label ?gender_label .
     FILTER (lang(?gender_label) = ?language_code)
  }
} VALUES (?language_code) {('de')}

Try it

更多信息:https://www.wikidata.org/wiki/Wikidata:Lexicographical_data

© www.soinside.com 2019 - 2024. All rights reserved.