<div dir="ltr">Hi!<br><br>It looks there are a bunch of settings people want to set from time to time on per-dataset level, and have access to those in processing routines.<div><br></div><div>What has come to my mind:</div><div> - SRID, to store it once for everything and make geometry POINT even more lightweight;</div><div> - Dimensionality choices, so that ST_Intersection() of two adjacent polygons can give POLYGON EMPTY instead of shared LINESTRING;</div><div> - Precision, to be able to distinguish slivers in geometry from meaningful parts;</div><div> - Precision, to segmentize curves to produce results no worse than;</div><div> - Precision, to automatically apply ST_QuantizeCoordinates, ST_RemoveRepeatedPoints and ST_Simplify;</div><div> - Invalid geometries repair options: do we drop holes outside shell or make them outers, do we fail on ST_Buffer(butterfly, 0) or let it re-polygonize the input, do we need the lines that holes share or they can be dissolved;</div><div> - Store the "ESRI flag" from <a href="https://postgis.net/docs/manual-dev/ST_IsValidDetail.html">https://postgis.net/docs/manual-dev/ST_IsValidDetail.html</a>;</div><div> - Meaning of M, if any - is it weight, is it line reference length, is it time and objects are trajectories?</div><div><br></div><div>Are there any other metadata you've seen the need to store per dataset?</div><div><br></div><div>What are our storage options?</div><div><br></div><div>I imagine it can be done as some cross of spatial_ref_sys + geometry_columns, where we can store an ID of some set of options in geometry itself, but that still requires an ID in the tuple.<br><br>Typmod can be used, but - is it preserved reliably enough?<br><br>Any other thoughts? :)</div></div>