sparql - 从 SPARQL 中的 DBpedia 人那里获取出生地
问题描述
我有以下代码来检索所有出生在巴塞罗那的人
PREFIX dbo: <http://dbpedia.org/ontology/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT ?person ?birthPlace
WHERE {
?person rdfs:label ?label.
?person rdf:type dbo:Person.
?person <http://dbpedia.org/property/birthPlace>
<http://dbpedia.org/resource/Barcelona>.
}
但是,我不知道如何获得出生地。我想要一个变量,在每个名字旁边显示巴塞罗那是出生地。有任何想法吗?
解决方案
这个怎么样:
PREFIX dbo: <http://dbpedia.org/ontology/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT ?person ?birthPlace
WHERE {
?person rdfs:label ?label.
?person rdf:type dbo:Person.
?person <http://dbpedia.org/property/birthPlace> ?birthPlace.
FILTER (?birthPlace = <http://dbpedia.org/resource/Barcelona>)
}
请注意,您的查询具有匹配标签的模式,但不会返回标签。这会导致结果重复,因为有些人有多个标签(使用不同的语言)。删除模式,或添加?label
到SELECT
子句。
您可以缩写<http://dbpedia.org/property/birthPlace>
为dbp:birthPlace
.
推荐阅读
- c# - HTTP 错误 500.19 - 0x8007000d - web.config
- c# - 为什么这个 `using` 块不释放数据库连接?
- sqlite - 将 CSV 解析为 DataGrip 数据库失败
- javascript - 如果属性内部不存在变量,如何正确解构变量?
- snowflake-cloud-data-platform - 用户和安全元数据
- wpf - Wpf 控制图像和视频多合一
- excel - 将 Useform 中 TextBox 中的值添加到预定义表
- android - 颤振未在完全重启时应用更改
- node.js - Electron Windows Store events.js 抛出未处理的“错误”事件
- jquery - 勾选输入单选属性