zerebubuth / openstreetmap-cgimap

A C++ implementation of the OpenStreetMap API map call.
http://wiki.openstreetmap.org/wiki/Cgimap
GNU General Public License v2.0
74 stars 38 forks source link

JSON support for changeset upload #407

Open mmd-osm opened 6 months ago

mmd-osm commented 6 months ago

Back in https://github.com/openstreetmap/openstreetmap-website/issues/3501 we've talked about adding JSON support for a few remaining endpoints. Unfortunately, this project never took off. Why not give it another try now.

I found a streaming json parser based on yajl called sjparser, that has schema support. It offers a much saner interface than yajl alone, and emits one OSM element at a time. It also hides all that ugly state handling, unlike the XML parser we have in place today.

There are a few other changeset related endpoints (create / update) that don't support JSON. This can be addressed in another PR. Single object edit operations will continue be out of scope for this repo.

mmd-osm commented 6 months ago

Created some issues for sjparser:

mmd-osm commented 6 months ago

json_upload