维基数据:如何通过SPARQL查询"official name"(P1448)的"language"?



编辑属性时"官方名称";(P1448,https://www.wikidata.org/wiki/Property:P1448)对于项目,编辑器必须指定语言。但是,这是通过组合框完成的,也不是通过限定符完成的。

例如参见项目";Szczawno Zdrój";(Q1001231,https://www.wikidata.org/wiki/Q1001231)。一个";官方名称";是";Бад-Залцбрун"该值的语言为白俄罗斯语;然而该语言不是通过限定符来指定的,例如";开始时间";。

"伪限定符";语言;的";官方名称";是否通过SPARQL查询进行查询?

您称之为"伪限定符";是所谓的语言标签

要为常量字符串指定语言,可以使用"my syting"@lang。例如:

SELECT ?item
WHERE {
?item wdt:P1448 "Бад-Зальцбрун"@be.
}

要为变量字符串指定语言,可以在查询的正文中使用lang()函数。例如:

SELECT ?officialName
WHERE {
wd:Q1001231 wdt:P1448 ?officialName
FILTER (lang(?officialName) = "be") .
}

对于查询字符串语言,可以在查询的head中使用lang()函数。例如:

SELECT ?officialName (lang(?officialName) AS ?lang)
WHERE {
wd:Q1001231 wdt:P1448 ?officialName .
}

参考文献:

  • RDF 1.1§3.3文字
  • RDF的SPARQL查询语言§2.3.1将文字与语言标签匹配
  • RDF的SPARQL查询语言§11.4.6 lang

相关内容

最新更新