以机器可读形式表达地理问题的方式


22

GIS的核心概念是回答有关数据集的问题。从数据库的角度来看;具有空间扩展的SQL是询问此类问题的一种方式。可以通过基于机器可读文本的形式来表达问题吗?不同方法的好处是什么?


2
+1可能有兴趣听取Clementini运营商的
Kirk Kuykendall


@whuber,我应该更具体一些。我对ArcGIS查询中的Clementini运算符的替代方法或对ArcGIS可以连接到的数据库的查询感兴趣。乍看之下,克莱门蒂尼似乎既是人类可读的,也是机器可读的,但作为一个人类,我经常遇到困难
柯克·库肯达尔

1
@Kirk好的,但是看来ArcGIS遇到了困难,不是您!:-)有趣的是,Clemintini等人结束他们的原始论文加注“在我们所希望的另一点是关于测试如果基于微积分方法是真正适合最终用户。”
ub

1
@Matthew您可以对您感兴趣的“问题”的范围更清楚一点吗?例如,您是否主要对通过发现和处理要素之间的空间关系(可能需要使用GIS的功能)进行回答的问题感兴趣,还是仅查找单个命名实体或位置的静态属性就足够了(哪些不需要空间处理)?
ub

Answers:


7

我只能想到3种类型的空间查询,而忽略任何基于属性或基于哈希的查询。

  1. 基于几何的空间查询,用于查找矢量特征之间的关系。SQL空间查询其实只是一个API低水平alogorithms如宾利奥特曼 - 在使用的OpenLayers检查,如果两线相交。

    正如Kirk所提到的,特征之间的关系类型已在尺寸扩展的九相交模型上标准化:

    • 等于
    • 不相交
    • 相交
    • 碰触(会议)
    • 十字架
    • 内部(内部)
    • 包含
    • 重叠
    • 盖子
    • 覆盖

    可以说基于索引的空间查询是几何查询的简化形式。大多数几何查询在比较单个几何之前会使用空间索引作为首过查询来过滤掉不相关的特征,这比较耗时。这些也可以在NoSQL数据库(例如MongoDB)中实现

  2. 基于图论的空间查询。这些查询类型是通过诸如Network Analyst之类的工具在GIS中实现的,而算法又在较低级别上。
  3. 基于栅格网格和集合论(和模糊集合论)的空间查询。

有一些实现将上述功能结合在一起,例如将栅格和向量查询结合在一起的StarSpan-尽管它实际上隐藏了预处理步骤。

有许多实现这些机器和文本可读的查询类型的API。有不同的实现和他们的问题好好讨论在这里


本文建立一个三维空间查询语言打破空间算为4种类型,根据查询,而不是数据类型(这或许更有意义):

  1. 定向运算符(例如上,下,northOf,southOf)
  2. 拓扑运算符(例如触摸,包含,相等,内部)
  3. 度量运算符(例如距离)
  4. 布尔运算符(例如并集,交集)

它还引入了用于处理3D特征(身体和表面)的术语,这些特征未包含在DE-I9M中。


因此,除了维度扩展的九交叉模型之外,我们只能以从其他领域借来的形式表达问题吗?
马修·斯内普

1
用所需的任何GIS领域特定语言定义问题,但最后机器将使用上述方法之一进行查询(尽管我可能会遗漏一些)。
geographika

7

1-对该软件进行了一些研究:http : //nlp.uned.es/MLQA06/papers/ferres.pdf
尽管它与Internet搜索更为相关,但它可以为如何将人类语言翻译为计算机语言提供一些指导。
谷歌搜索“ GeoTALP-Q”还提供了有关该主题的更多文章。

2- GeoDjango提供了用于空间查询的API,它是从SQL到面向对象的语言的转换,可以加快许多繁琐的工作,例如为复杂的空间查询编写PL / python函数。它您使用的数据库限制


这是一个有趣的发现。因为我们希望该站点独立存在并立即提供有用的答案,所以最好将这样的参考文献与您自己的相关结论摘要一起提供。你能在这里做吗?我对这篇论文的快速浏览表明,它可能更着重于从基于Web的数据中提取地理属性,而不是处理有关空间关系的
ub

@whuber。好的,谢谢你的提示。我将考虑到以后的答案。
巴勃罗

2
+1有关SQL不幸的是,这么多的其空间的冠冕堂皇的保留字很少或几乎没有与空间:WHERE,FROM,IN等
柯克Kuykendall

@Kirk有趣的是,我从没想过。位置和空间之间的差异足以使一个人头痛。:)
Nathanus

@nathanus是的,然后两个soundexe之间甚至存在词汇距离的概念,dbms可以使用该词来找到最接近的匹配街道。
Kirk Kuykendall,
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.