sparql - 如何使用 SPARQL 使用实体名称查询 Wikidata 并检查替代标签?

标签 sparql wikidata

我正在尝试使用实体名称查询维基数据。我的目标是获取实体的维基数据 ID。现在我有类似的东西:

SELECT ?item
WHERE {
    ?item rdfs:label "name_of_thing"@en
}

虽然这通常可以完成工作,但我还想检查该标签是否包含在维基数据的替代名称中。

例如,如果我将 "name_of_thing" 替换为 "Philippines AirAsia" 那么我不会得到任何结果,但原因是因为 "AirAsia Philippines" 是条目的专有名称,"Philippines AirAsia" 包含在维基数据页面的“Also known as”栏中。

我想查询页面,如果第一次获取失败,则检查该名称是否包含在“也称为”列中。我应该怎么做呢?谢谢。

最佳答案

管道运算符(operator)为我工作:

Query

SELECT ?item ?prefLabel WHERE {
        VALUES ?prefLabel { "AirAsia Philippines"@en }
        ?item rdfs:label|skos:altLabel ?prefLabel 
}

关于sparql - 如何使用 SPARQL 使用实体名称查询 Wikidata 并检查替代标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66417040/

相关文章:

rdf - Sparql 查询超时并出现传递临时内存错误消息

sql - 自然语言到 SQL/SPARQL 的 .NET dll

geolocation - 通过 GPS 位置获取城市的 WikiData 标识符

java - 本地 Blazegraph : Expected an RDF value here, 上的维基数据发现 '' [第 1 行]

R 函数,用于在两条垂直线上绘制标签和定量数据,在这些点之间绘制线条

java - 查询 Wikidata 的实体类型

max - SPARQL选择计数器的最大值

rdf - Virtuoso 中的 STRAFTER SPARQL 1.1 函数

python - 如何将 "lists database"与 Python 链接?

mediawiki - 如何在维基百科文章中显示维基数据附加链接