opengeospatial / opengeospatial/CRS-JSON-Encoding

Should the JSON encoding be a replacement for GML?

Aperta
#64 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Lingua principale
Makefile
Stelle
0
Fork
2
Merge medio
1h 36m
PR unite (30g)
3

Descrizione

An open question is whether a CRS JSON encoding could be a replacement for GML. GML is currently the only encoding capable to represent fully the ISO 19111 model, but is based on the 2007 version of ISO 19111 with no plan yet to upgrade to latest ISO 19111 revision. One possibility would be to replace GML by JSON, in which case PROJJSON would need to be completed with the ISO 19111 elements that are currently missing. Those additions can probably be done in a compatible way. Whether the JSON encoding should be restructured (elements renamed or moved in an incompatible way) is not the topic of this issue.

Alternative

An alternative is to keep PROJJSON as it currently is, and instead restart the GML effort with a reduced scope. The parts of the GML schema that are about CRS definitions could be extracted and updated without the rest of GML. The update could use as a starting point the extensions that EPSG made for representing the new ISO 19111 data structures in the EPSG registry. This alternative has not been debated yet.

Missing elements

The following list is derived from the ProjJson v0-7 RL 2024-06-16.docx document. It may contain errors from my transcription from the document, and some elements may have been forgotten:

  • Aliases in all objects.
  • CoordinateSystemAxis.bearing (#7).
  • Coordinate system types polar, linear and cylindrical.
  • GeographicCRS and DerivedGeographicCRS subtypes.
  • All CoordinateSystem subtypes (currently represented by an enum in PROJJSON) (#11).
  • Domain (scope, description, bounding box, vertical/temporal extent) in conversions.
  • Full operation definition in DeformationModel.
  • GeodeticCRS.definingTransformation.
  • OperationMethod.formula (#29).
  • Operation method parameters.
  • realizationMethod on static and dynamic vertical CRS (#45).

Missing constraints

Many constraints cannot be enforced in a JSON schema and need to be stated in the text. However, the following elements may be made more specific:

  • DerivedTemporalCRS.coordinateSystem should be restricted to TemporalCS.
  • DerivedVerticalCRS.coordinateSystem should be restricted to VerticalCS.
  • All other CRS types. See #63 and #11 for a more general discussion.

Missing features

GML can reference an external document using xlink. This feature is important for making possible to define an operation method once, then reuse it in many CRS definitions. There is currently no equivalent features in PROJJSON.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Iniziare con il documento ProjJson v0-7 RL 2024-06-16.docx e le lacune di PROJJSON elencate, quindi confrontarle con l'ambito attuale di GML e ISO 19111 descritto nell'issue. Esaminare le due alternative, incluso il riutilizzo di xlink e i vincoli mancanti. L'attività è completata quando viene documentata una decisione chiara sul fatto che PROJJSON sostituisca GML o che il lavoro su GML venga riavviato con un ambito ridotto.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
json, xml
Ambito
backend-api-design
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
20/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.