From 4b895d72bd206ec909e5f480581cac5895e66630 Mon Sep 17 00:00:00 2001 From: Esteban Zimanyi Date: Sat, 13 Jun 2026 10:37:22 +0200 Subject: [PATCH] Give the comparison families a one-letter portable prefix (tEq/eEq/aEq) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The temporal/ever/always comparison operators take a one-letter prefix — t (temporal), e (ever), a (always) — over the spelled-out temp/ever/always, matching the operator-family abbreviation the bindings already use (eIntersects is the ever- form) and the MEOS C prefixes (teq_/eeq_/aeq_). So: #= #<> #< #<= #> #>= -> tEq tNe tLt tLe tGt tGe ?= ?<> ?< ?<= ?> ?>= -> eEq eNe eLt eLe eGt eGe %= %<> %< %<= %> %>= -> aEq aNe aLt aLe aGt aGe Also spell the distance bare name tDistance (camelCase), matching the canonical tgeo @sqlfn spelling, so the portable dialect and the catalog agree on one case-sensitive name (a binding engine that folds case otherwise shadows one spelling with the other). --- meta/portable-aliases.json | 64 ++++++++++++++------------------------ 1 file changed, 23 insertions(+), 41 deletions(-) diff --git a/meta/portable-aliases.json b/meta/portable-aliases.json index cf8f456..0512c36 100644 --- a/meta/portable-aliases.json +++ b/meta/portable-aliases.json @@ -98,35 +98,33 @@ } ], "temporalComparison": [ - { - "operator": "#=", - "bareName": "teq" - }, - { - "operator": "#<>", - "bareName": "tne" - }, - { - "operator": "#<", - "bareName": "tlt" - }, - { - "operator": "#<=", - "bareName": "tle" - }, - { - "operator": "#>", - "bareName": "tgt" - }, - { - "operator": "#>=", - "bareName": "tge" - } + { "operator": "#=", "bareName": "tEq" }, + { "operator": "#<>", "bareName": "tNe" }, + { "operator": "#<", "bareName": "tLt" }, + { "operator": "#<=", "bareName": "tLe" }, + { "operator": "#>", "bareName": "tGt" }, + { "operator": "#>=", "bareName": "tGe" } + ], + "everComparison": [ + { "operator": "?=", "bareName": "eEq" }, + { "operator": "?<>", "bareName": "eNe" }, + { "operator": "?<", "bareName": "eLt" }, + { "operator": "?<=", "bareName": "eLe" }, + { "operator": "?>", "bareName": "eGt" }, + { "operator": "?>=", "bareName": "eGe" } + ], + "alwaysComparison": [ + { "operator": "%=", "bareName": "aEq" }, + { "operator": "%<>", "bareName": "aNe" }, + { "operator": "%<", "bareName": "aLt" }, + { "operator": "%<=", "bareName": "aLe" }, + { "operator": "%>", "bareName": "aGt" }, + { "operator": "%>=", "bareName": "aGe" } ], "distance": [ { "operator": "<->", - "bareName": "tdistance" + "bareName": "tDistance" }, { "operator": "|=|", @@ -141,22 +139,6 @@ ] }, "alreadyCanonical": [ - { - "kind": "family", - "family": "ever", - "operators": [ - "?=" - ], - "pattern": "ever_*" - }, - { - "kind": "family", - "family": "always", - "operators": [ - "%=" - ], - "pattern": "always_*" - }, { "kind": "functions", "functions": [