首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用skos为POI查找相应的状态:

使用skos为POI查找相应的状态:
EN

Stack Overflow用户
提问于 2015-04-02 13:44:07
回答 1查看 74关注 0票数 0

我正试图在美国每个州收集战俘。最初的查询是

代码语言:javascript
复制
select distinct ?s ?state 
where { 
?s a dbpedia-owl:Place; dcterms:subject/skos:broader{,9} ?state . 
?state skos:broader  category:Buildings_and_structures_in_the_United_States_by_state . 
filter contains(str(?state),'_in_') . 
filter(!contains(str(?state),'United_States')) 
 }

过滤器部分是查找美国的州(如下所示),这样,我们最终知道每个POI属于什么状态。

该方法不起作用,因为我为一个POI获得了多个状态。举个例子,如果我运行下面的查询来为五角大楼查找美国之州

代码语言:javascript
复制
select distinct ?state 
where { 
dbpedia:The_Pentagon dcterms:subject/skos:broader{,9} ?state . 
?state skos:broader  category:Buildings_and_structures_in_the_United_States_by_state . 
filter contains(str(?state),'_in_') . 
filter(!contains(str(?state),'United_States'))  
}

这将导致五角大楼进入所有州。我知道这是由于skos:broader{,9},但我如何知道,设置它的最佳水平。有没有更好的方法?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-04-02 21:47:57

我不知道你的问题到底想达到什么目的,我无法理解它们。但根据你的描述,我认为你只需要在他们所处的州旁边有名胜古迹。如果是这样的话,我编写了以下查询。

代码语言:javascript
复制
SELECT distinct ?POI ?state WHERE {
    ?POI a dbpedia-owl:Place.
    ?POI dbpedia-owl:location ?location.
    ?location dbpedia-owl:country ?country.
    ?location dbpprop:state ?state.
    filter(?country =dbpedia:United_States)
}

如果你愿意的话,你甚至可以把这个地方描述成一栋建筑,但我不认为POI一定是建筑物。但如果你想把它们命名为建筑物,那么:

代码语言:javascript
复制
SELECT distinct ?POI ?state WHERE {
    ?POI a dbpedia-owl:Place.
    ?POI a dbpedia-owl:Building.
    ?POI dbpedia-owl:location ?location.
    ?location dbpedia-owl:country ?country.
    ?location dbpprop:state ?state.
    filter(?country =dbpedia:United_States)
}

为了显示用例,您可以为五角大楼过滤?POI:

代码语言:javascript
复制
SELECT distinct ?POI ?state WHERE {
    ?POI a dbpedia-owl:Place.
    ?POI a dbpedia-owl:Building.
    ?POI dbpedia-owl:location ?location.
    ?location dbpedia-owl:country ?country.
    ?location dbpprop:state ?state.
    filter(?country =dbpedia:United_States)
    filter(?POI=dbpedia:The_Pentagon)
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29414522

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档