Un concept fondamental du SIG consiste à répondre aux questions sur les ensembles de données. Du point de vue d'une base de données; SQL avec des extensions spatiales est un moyen de poser de telles questions. De quelles autres manières les questions peuvent-elles être exprimées sous forme de texte lisible par machine? Quels sont les avantages des différentes approches?
geoprocessing
analysis
Matthew Snape
la source
la source
Réponses:
Je ne peux penser qu'à 3 types de requêtes spatiales, en ignorant tout attribut ou requête basée sur le hachage.
Les requêtes spatiales basées sur la géométrie, et sont utilisées pour trouver les relations entre les entités vectorielles. Les requêtes spatiales SQL ne sont en réalité que des alogorithmes API de bas niveau tels que Bentley-Ottmann - utilisés dans OpenLayers pour vérifier si deux lignes se croisent.
Comme Kirk l'a mentionné, les types de relations entre les entités se sont normalisés sur le modèle à neuf intersections dimensionnellement étendu :
On peut soutenir que les requêtes spatiales basées sur des index sont une forme simplifiée de requêtes géométriques. La plupart des requêtes de géométrie utilisent un index spatial comme première requête de passage pour filtrer les entités non pertinentes avant de comparer des géométries individuelles, ce qui prend plus de temps. Celles-ci sont également implémentées dans des bases de données NoSQL telles que MongoDB .
Il existe quelques implémentations qui combinent ce qui précède, comme StarSpan qui combine les requêtes raster et vectorielles - bien qu'il masque vraiment une étape de prétraitement.
Il existe de nombreuses API qui implémentent ces types de requêtes lisibles à la fois par machine et par texte. Il y a une bonne discussion sur les différentes implémentations et leurs problèmes ici .
L'article Vers un langage de requête spatiale 3D divise les opérateurs spatiaux en 4 types, basés sur la requête plutôt que sur le type de données (ce qui est peut-être plus logique):
Il apporte également une terminologie pour traiter des fonctionnalités 3D (corps et surface), qui ne sont pas incluses dans DE-I9M.
la source
1 - Il existe des études avec ce logiciel: http://nlp.uned.es/MLQA06/papers/ferres.pdf
Bien qu'il soit plus lié aux recherches sur Internet, il pourrait fournir des conseils sur la façon de traduire le langage humain en langage informatique.
Googler 'GeoTALP-Q' fournit également plus d'articles sur le sujet.
2- GeoDjango fournit une API pour les requêtes spatiales, c'est une traduction de SQL vers un langage orienté objet qui peut accélérer beaucoup de travail fastidieux comme l'écriture de fonctions PL / python pour des requêtes spatiales complexes. Il est limité par la base de données que vous utilisez.
la source