This is an automated email from the ASF dual-hosted git repository.
emkornfield pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/parquet-format.git
The following commit(s) were added to refs/heads/master by this push:
new 96edf77 Update wording in Geospatial spec for CRS (#560)
96edf77 is described below
commit 96edf77704b60b6f3ca2232c218c64eff6c874d3
Author: Milan Stefanovic <[email protected]>
AuthorDate: Mon Apr 20 18:36:03 2026 +0200
Update wording in Geospatial spec for CRS (#560)
Document existing CRS usage.
---
Geospatial.md | 20 ++++++--------------
1 file changed, 6 insertions(+), 14 deletions(-)
diff --git a/Geospatial.md b/Geospatial.md
index 597ba2b..50a16e3 100644
--- a/Geospatial.md
+++ b/Geospatial.md
@@ -44,8 +44,12 @@ locations on Earth.
The default CRS `OGC:CRS84` means that the geospatial features must be stored
in the order of longitude/latitude based on the WGS84 datum.
-Custom CRS can be specified by a string value. It is recommended to use an
-identifier-based approach like [Spatial reference identifier][srid].
+Non-default CRS values are specified by any string that uniquely identifies a
coordinate reference system associated with this type.
+To maximize interoperability, suggested (but not limited to) formats for CRS
are:
+* `<projjson>` - A complete CRS definition embedded directly using the
[PROJJSON](https://proj.org/en/stable/specifications/projjson.html)
specification. Example for `OGC:CRS83`: `{"$schema":
"https://proj.org/schemas/v0.7/projjson.schema.json","type":
"GeographicCRS","name": "NAD83 (CRS83)","datum": {"type":
"GeodeticReferenceFrame"...`
+* `<authority>:<code>` - where `<authority>` represents some well known
authorities, and `code` is the code used by the authority to identify the CRS.
Examples are - `OGC:CRS84`, `OGC:CRS83`, `OGC:CRS27`, `EPSG:4326`, `EPSG:3857`,
`IGNF:ATI`. See [https://spatialreference.org/](https://spatialreference.org/)
for definitions of coordinate reference systems provided by some well known
authorities.
+* `srid:<identifier>` - A reference using a [Spatial reference identifier
(SRID)](https://en.wikipedia.org/wiki/Spatial_reference_system#Identifier),
where <identifier> is the numeric SRID value. For example: `SRID:0`.
+* `projjson:<key_name>` - where <key_name> refers to a key within the file
key-value metadata, where CRS definition in
[PROJJSON](https://proj.org/en/stable/specifications/projjson.html) format is
stored.
For geographic CRS, longitudes are bound by [-180, 180] and latitudes are bound
by [-90, 90].
@@ -150,18 +154,6 @@ In addition, the following rules are applied:
[geometry-types]:
https://github.com/opengeospatial/geoparquet/blob/v1.1.0/format-specs/geoparquet.md?plain=1#L159
[wkb-integer-code]:
https://en.wikipedia.org/wiki/Well-known_text_representation_of_geometry#Well-known_binary
-# CRS Customization
-
-CRS is represented as a string value. Writer and reader implementations are
-responsible for serializing and deserializing the CRS, respectively.
-
-As a convention to maximize the interoperability, custom CRS values can be
-specified by a string of the format `type:identifier`, where `type` is one of
-the following values:
-
-* `srid`: [Spatial reference
identifier](https://en.wikipedia.org/wiki/Spatial_reference_system#Identifier),
`identifier` is the SRID itself.
-* `projjson`:
[PROJJSON](https://proj.org/en/stable/specifications/projjson.html),
`identifier` is the name of a table property or a file property where the
projjson string is stored.
-
# Coordinate axis order
The axis order of the coordinates in WKB and bounding box stored in Parquet