【问题标题】:Where does Nominatim get its address info?Nominatim 从哪里获得地址信息?
【发布时间】:2015-01-26 16:48:20
【问题描述】:

到目前为止,我一直在使用 Nominatim API 来获取地标信息,但最近,我下载了 OpenStreetMaps 数据库,并尝试制作自己的数据集,因此我不会如此依赖 Nominatim 服务。我设法从 OSM 数据库中提取了所需的信息(例如标记有便利设施的节点),但我意识到,当我通过 Nominatim 查询便利设施时,它返回了一堆地址信息,在OSM 数据库。

例子:

使用 Nominatim 对来自西班牙的酒店进行反向地理编码: http://nominatim.openstreetmap.org/reverse?format=xml&osm_type=N&osm_id=1207098527

附加到用于在 OSM 中反向地理编码的同一节点的数据: http://open.mapquestapi.com/xapi/api/0.6/node/1207098527

虽然 Nominatim 给了我郊区、行人、城市、县、州等信息,但 OSM 中的这个节点只包含一个 name 标签和一个 旅游标签。

有谁知道,Nominatim 从哪里获取用于显示其信息的附加数据?

【问题讨论】:

    标签: openstreetmap nominatim


    【解决方案1】:

    Nominatim 不只是查看单个对象,而是从多个对象收集信息。看information Nominatim knows about "HOTEL LA MORADA MAS HERMOSA":有:

    ...等等。

    请记住,OSM 是一个空间数据库。无需将所有信息附加到每个单独的对象,而是可以进行空间查询以收集各种附加信息。

    【讨论】:

    • 将此标记为正确,因为它回答了我最初的问题,但是:我已经检查了您提供的第一个链接,它确实返回了我想要的数据,但我仍然不知道如何仅使用 OpenStreetMaps 提供给我的数据库手动检索它。如果您能指出我正确的方向,我将不胜感激:)
    • Nominatim api以及您的链接提供的地址是具有以下id的方式:48902253。但是Nominatim如何以这种方式与特定节点连接?我想它一定是通过某个地方的关系联系起来的,对吗?如果是的话,如果你能给我举个例子,关于 Nominatim 如何连接路径和节点,我会从那里解决问题。:)
    • 节点不属于任何关系,否则它们将被列为here。当然,您可以从 OSM 数据库中手动检索这些信息,但这并非易事。 Nominatim(和其他search engines)为构建层次结构和检索这些信息做了大量的预处理。单个查询是不够的。如果您真的想知道 Nominatim 是如何做到的,请查看 its code。不幸的是,没有太多的文档。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-03-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-24
    • 1970-01-01
    • 2013-11-03
    相关资源
    最近更新 更多