6 ms·
I've tried to build an open check-in app based on OSM data, and I've ran into many of the problems mentioned in the article: • Tags and relations are a total m
by pornel 9y ago
I've tried to build an open check-in app based on OSM data, and I've ran into many of the problems mentioned in the article:
• Tags and relations are a total mess. There are many different and overlapping schemes. There is obviously outdated/sub-standard data, but automated fixes are forbidden. There are some neat tools to make sense of the tag data, but ultimately I had to deal with all that mess and complexity on my end.
• The lack of moderation or a way to officially act as an intermediary for edits (other than clunky oAuth flow) meant I couldn't expose an Add/Edit/Fix functionality for my users. Similarly, if I wanted to let my users upload a photo of a venue, there was no service to store it, no identifier or tag to associate it.
• The API returns only nodes entirely within an area, rather than everything intersecting a given area. If you fetch small lat/long area, you won't get a node for the country/city/district it's in, unless you stumble upon a point in its border or label. That meant I couldn't fetch things from OSM API as needed, and had to have my own copy of the data and the DB and custom search.
• The map looks ugly without buildings. There was free building data available for areas I was interested in, but I was told to copy them by hand.
- maxerickson 9y agoWere you doing your own map rendering? In that case you wouldn't have to add the buildings to OSM to show them, just merge the data during your map preparation. Nominatim does have a reverse geocode api which returns the sort of place information you want in your third point (given a coordinate, returns an address).
- ris 9y ago> There is obviously outdated/sub-standard data, but automated fixes are forbidden. Please consider arms race encouraging automated edits would begin. A lot of people have a lot of awfully different views about how map data should be recorded (you thought source code formatting was contentious?) > I couldn't expose an Add/Edit/Fix functionality for my users. Lots of tools have managed this. > if I wanted to let my users upload a photo of a venue, there was no service to store it No. That's not what OpenStreetMap is. They aren't there to give out free image storage. > The API returns only nodes entirely within an area Yes, it's meant to be a low-level API which makes few assumptions about the meaning of any of the data. For the ability to make more complex queries you could have looked at Overpass. And possibly there is a space for a third party service to provide an API with such an ability. Again, I don't see that as OSM's business - OSM here should be considered more like the UN. > There was free building data available for areas I was interested in, but I was told to copy them by hand. And yet NYC have managed somehow to get most city building data into OSM, so perhaps you haven't investigated every possible option for getting what you want here...?
- Doctor_Fegg 9y ago> The API returns only nodes entirely within an area, rather than everything intersecting a given area. The osm.org API is meant for editing. It's not a map rendering and querying API. There are lots of alternatives for that. > There was free building data available for areas I was interested in, but I was told to copy them by hand. OSM is open to imported data. It just has to be done carefully because "with great power comes great responsibility" - add millions of items to the OSM database and you can royally screw it up (there is an argument to say that most of OSM's problems in the US stem from this). But there's a well documented imports process and lots of people with experience in importing buildings to help you through it.
- laaph 9y agoCan you clarify which API I should be using for data access? My last project involved determining locations parks and rivers, and I ran in to a lot of the same problems. But, if I just want GPS coordinates, I'm not sure where else to go. Mapbox is find for rendering but less so if I want the raw data and use it myself (for a phone application for example).
- Doctor_Fegg 9y agoThe Overpass API should be the first call. Alternatively, you can download OSM data and feed it into your own database, which gives you much more flexibility to write the queries you want (http://download.geofabrik.de/ http://download.geofabrik.de/ is a good place to download the data for the area you want; osm2pgsql and Osmosis are the two standard tools for loading OSM into a database, usually Postgres/PostGIS, though there are others).
- Piskvorrr 9y agoOverpass?
- stereo 9y agoI’m a member of OpenStreetMap’s data working group, but not speaking officially. Neither automated edits nor imports are forbidden; they’re allowed with careful planning and consultation with the community. https://wiki.openstreetmap.org/wiki/Import/Guidelines https://wiki.openstreetmap.org/wiki/Import/Guidelines https://wiki.openstreetmap.org/wiki/Automated_Edits_code_of_conduct https://wiki.openstreetmap.org/wiki/Automated_Edits_code_of_...