-
Notifications
You must be signed in to change notification settings - Fork 38
Open
Labels
feature newRequest a new feature or functionRequest a new feature or function
Description
Add JSON as a native exchange format
Motivated by a general requirement for a more flexible import/export file format for exchanging station, measurement and adjustment output information, this issue will replace issue 3, issue 19 and issue 22, and track the development of new functionality to exchange information using JSON and/or its variants (BSON, UBJSON, GeoJSON, etc.).
Assumptions for selecting JSON
The broad assumptions for selecting JSON are follows:
- Good representation of structured data
- Relatively light weight, more compact and less verbose (compared to XML)
- Supported by a variety of event driven (SAX-like) parsers, allowing for efficient parsing of extremely large files
- Supported by a variety of open source and commercial GIS (e.g. QGIS, ArcGIS/Map) and DBMS (e.g. PostgreSQL, Oracle)
- Offers support for echanging data via RESTful APIs and API-based services oriented architectures
- Permits the use of schemas and integrity checking
- Relatively simple to build translators between JSON and other formats
- Supports human readable and binary options
C++ JSON support
Various open source C++ libraries for JSON I/O exist. A comprehensive summary of the available C++ JSON projects on GitHub, including C++ language support, memory requirements and performance benchmarking, can be found here.
Next steps
- Develop schemas for structuring standard input (station, measurement, geoid) and output (adjusted measurements and coordinates, uncertainties, statistics, corrections) information
- Identify any other specific collections of information
- Identify a suitable open-source C/C++ library, preferably from GitHub
- Develop and test
- Document
Metadata
Metadata
Assignees
Labels
feature newRequest a new feature or functionRequest a new feature or function