Network Working Group | T. Clarke |
Internet-Draft | BATC |
Intended status: Informational | March 17, 2020 |
Expires: September 18, 2020 |
Concise Binary Object Representation (CBOR) Tag for Coordinate Reference System (CRS) Specification
draft-clarke-cbor-crs-02
The Concise Binary Object Representation (CBOR, RFC 7049) is a data format whose design goals include the possibility of extremely small code size, fairly small message size, and extensibility without the need for version negotiation.
In CBOR, one point of extensibility is the definition of CBOR tags. An existing CBOR tag, 103, allows for the representation of geographic coordinates. Proper exploitation of geographic coordinates requires an associated reference frame. The present document defines a CBOR tag for referencing the coordinate reference system (CRS) for a geographic coordinate. It is intended as the reference document for the IANA registration of the CBOR tag defined.
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."
This Internet-Draft will expire on September 18, 2020.
Copyright (c) 2020 IETF Trust and the persons identified as the document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.
Specifying geographic coordinates for a location on Earth requires the definition of a coordinate reference system (CRS). A CRS is made up of several components: [EDS1]
This document aims to address the specification of coordinate reference systems in CBOR [RFC7049] encoded data. This is accomplished using complete CRS specification or through a well-known spatial reference identifier.
This tag (104) is designed for use with the Geographic Coordinates CBOR Tag 103 [CBOR-GC]. A CRS tag may specify a default CRS for an entire scope by using it without an associated tag 103. This tag may also be encoded just after tag 103 as a way of associating a CRS with a specific Geographic Coordinate. This is the expected application but this tag may be used in any relevant context.
The CBOR CRS tag shall be associated with one of multiple CBOR data types. Each allowed type is associated with a different method of specifying a CRS.
OGC [OGC] Well-known Text (WKT) [WKT] is a standarized format for CRS specification. When the CRS tag is associated with a Text String (CBOR Major type 3), the data shall be interpreted as OGC WKT. This allows for complete CRS specifcation of and subtype of CRS.
A spatial reference identifier (SRID) is a unique value which unambiguously identifies a CRS. Many vendors and registries provice SRIDs. This association is not intended to allow specification of an arbitrary SRID, but provides a way to reference an SRID in the European Pertroleum Survey Group’s (EPSG) SRID database. EPSG numbers are a de-facto standard for CRS reference and are very commonly used. EPSG numbers can be searched and referenced in a number of places including [EPSG.io] and [SpatialReference.org]. When the CRS tag is associated with a basic numeric type (CBOR Major type 0), the data shall be interpreted as an EPSG SRID.
IANA is requested to allocate a tag from the Specification Required space, with the present document as the specification reference.
Tag | Data Item | Semantics |
---|---|---|
104 | multiple | Geographic Coordinate Reference System WKT or EPSG number |
The security considerations of [RFC7049] apply; the tag introduced here are not expected to raise security considerations beyond those.
[CBOR-GC] | "CBOR Geographic Coordinates", n.d.. |
[RFC7049] | Bormann, C. and P. Hoffman, "Concise Binary Object Representation (CBOR)", RFC 7049, DOI 10.17487/RFC7049, October 2013. |
[WKT] | Open Geospatial Consortium, "Geographic information - Well-known text representation of coordinate reference systems", May 2015. |
[EDS1] | Wasser, L., "Earthlab/Earth-Analytics-R-Course: Earth Analytics Course In The R Programming Language", Zenodo article, DOI 10.5281/ZENODO.1326873, August 2018. |
[EPSG.io] | "MapTiler EPSG Reference Website", n.d.. |
[OGC] | "The Open Geospatial Consortium", n.d.. |
[SpatialReference.org] | "Spatial Reference Website", n.d.. |
[SR-ORG-7428] | "SR-ORG:7428 WGS 84 (3D EGM96 geoid height)", n.d.. |
CRS for EPSG:4326, the World Geodetic System 1984 horizontal coordinate system used by GPS satellites, specified using an EPSG SRID.
D8 68 # Geographic Coordinate System - tag(104) 19 10E6 # EPSG:4326 - unsigned(4326) # Diagnostic notation: 104(4326)
CRS for WGS 84 3D EGM96 geoid height [SR-ORG-7428] specified using WKT
D8 68 # Geographic Coordinate System - tag(104) 79 0191 # OGC WKT - text(401) 47454F4743535B225747532038342028 33442045474D39362067656F69642068 656967687429222C444154554D5B2257 6F726C642047656F6465746963205379 7374656D2031393834222C5350484552 4F49445B22574753203834222C363337 383133372E302C3239382E3235373232 333536332C415554484F524954595B22 45505347222C2237303330225D5D2C41 5554484F524954595B2245505347222C 2236333236225D5D2C5052494D454D5B 22477265656E77696368222C302E302C 415554484F524954595B224550534722 2C2238393031225D5D2C554E49545B22 444D53222C302E303030303034383438 31333638313130393533365D2C415849 535B2247656F6465746963206C617469 74756465222C4E4F5254485D2C415849 535B2247656F6465746963206C6F6E67 6974756465222C454153545D2C415849 535B22477261766974792D72656C6174 656420686569676874222C55502C4155 54484F524954595B2245505347222C22 35373733225D5D2C415554484F524954 595B2245505347222C2234333239225D5D # Diagnostic notation: 104("GEOGCS[\"WGS 84 (3D EGM96 geoid height)\", DATUM[\"World Geodetic System 1984\", SPHEROID[\"WGS 84\",6378137.0,298.257223563, AUTHORITY[\"EPSG\",\"7030\"]], AUTHORITY[\"EPSG\",\"6326\"]], PRIMEM[\"Greenwich\",0.0,AUTHORITY[\"EPSG\",\"8901\"]], UNIT[\"DMS\",0.00000484813681109536], AXIS[\"Geodetic latitude\",NORTH], AXIS[\"Geodetic longitude\",EAST], AXIS[\"Gravity-related height\",UP, AUTHORITY[\"EPSG\",\"5773\"]], AUTHORITY[\"EPSG\",\"4329\"]]")