Je lisais un fil sur l'extension géospatiale pour Presto dans ce numéro Github , où une fonction line_locate_point
, a été introduite. Il était basé sur la ST_LineLocatePoint
fonction de PostGIS , qui renvoie un flottant représentant la fraction le long d'une ligne du point le plus proche sur cette ligne jusqu'à un emplacement donné.
La question a été soulevée pourquoi il a été nommé line_locate_point
et non pas ST_LineLocatePoint
comme la version PostGIS. La réponse a été que cette fonction n'existe pas dans la norme SQL / MM Part 3 et qu'elle ne doit donc pas commencer par ST_
.
En lisant rapidement la norme, je ne vois aucun commentaire sur la façon de gérer les cas où vous introduisez une fonction spatiale dans votre base de données qui n'est pas dans la norme. L'esprit du ST_
préfixe est-il de différencier les fonctions spatiales des fonctions non spatiales (comme cela semble être le cas avec PostGIS), ou est-ce pour indiquer que la fonction est conforme à une fonction équivalente dans SQL / MM Partie 3?
En regardant l' état actuel de l'API de Presto , je dois dire que cette dernière approche semble moins propre et introduit une certaine confusion quant à la raison pour laquelle les noms ne sont pas cohérents, mais cela pourrait peut-être être résolu par une simple note en haut.
Ma question est donc de savoir s'il existe un aspect de la norme que j'écarte qui autorise des extensions au-delà de l'ensemble défini d'objets spatiaux, ou alternativement, si cela est expressément interdit par une règle écrite ou non écrite des normes suivantes .