Build a spatial $filter predicate (geo.intersects / geo.distance)
from a canonical SpatialFilter. The geometry column is resolved from
the supplied schema (typed Edm.Geography); when no geometry column is
declared the function throws so the caller can either pass an explicit
column via extra or refuse the request before it reaches the server.
Only the spatialRel values supported by Honua Server's parity matrix
are accepted: esriSpatialRelIntersects and
esriSpatialRelEnvelopeIntersects translate to geo.intersects;
esriSpatialRelWithin and esriSpatialRelContains are not supported
by geo.intersects semantics and throw.
The WKT literal is stamped with the input geometry's SRID (i.e.
the coordinate system the literal coordinates are in), not an output
SR. The resolution order is inputSrid → the
spatialFilter.geometry.spatialReference.{wkid|latestWkid} carried by
the canonical SpatialFilter constructors → the metadata-declared
SRID on the selected geometry column (matched by name against
geometryColumn when supplied; falls back to the first isSpatial
field only when no column was pinned). Multi-geometry entity types
never borrow SRIDs across columns. When none of those resolves, the
literal is emitted without a SRID= prefix and the server falls
back to the column's declared SRID.
Build a spatial
$filterpredicate (geo.intersects/geo.distance) from a canonicalSpatialFilter. The geometry column is resolved from the supplied schema (typedEdm.Geography); when no geometry column is declared the function throws so the caller can either pass an explicit column viaextraor refuse the request before it reaches the server.Only the
spatialRelvalues supported by Honua Server's parity matrix are accepted:esriSpatialRelIntersectsandesriSpatialRelEnvelopeIntersectstranslate togeo.intersects;esriSpatialRelWithinandesriSpatialRelContainsare not supported bygeo.intersectssemantics and throw.The WKT literal is stamped with the input geometry's SRID (i.e. the coordinate system the literal coordinates are in), not an output SR. The resolution order is
inputSrid→ thespatialFilter.geometry.spatialReference.{wkid|latestWkid}carried by the canonicalSpatialFilterconstructors → the metadata-declared SRID on the selected geometry column (matched by name againstgeometryColumnwhen supplied; falls back to the firstisSpatialfield only when no column was pinned). Multi-geometry entity types never borrow SRIDs across columns. When none of those resolves, the literal is emitted without aSRID=prefix and the server falls back to the column's declared SRID.