pelias / pbf2json

An OpenStreetMap pbf parser which exports json, allows you to cherry-pick tags and handles denormalizing ways and relations. Available as a standalone binary and comes with a convenient npm wrapper.
https://pelias.io
MIT License
141 stars 35 forks source link

Geocoding returns OSM-ID, which seems not valid #93

Closed mg4gh closed 4 years ago

mg4gh commented 4 years ago

I tried following example on the geocoding API: https://api.openrouteservice.org/geocode/autocomplete?api_key=&text=Kirchst&focus.point.lon=8.677&focus.point.lat=49.405&boundary.circle.lon=8.677&boundary.circle.lat=49.405&boundary.circle.radius=50

In the result I got (between others) the following result: ... id | "polyline:5044003" gid | "openstreetmap:street:polyline:5044003" layer | "street" source | "openstreetmap" source_id | "polyline:5044003" name | "Kirchstraße" street | "Kirchstraße" distance | 0.281 ... But the reverse check iwth openstreetmap delivers the osm ID 708024005.

The expected behaviour would be to get this ID as the result from the geocode API!

Is there any mapping? How does is the relationship to the OSM data?

Best Regards, mg

orangejulius commented 4 years ago

Hi @mg4gh,

You are correct. The record IDs for streets in Pelias are not valid OSM IDs.

The data doesn't come from the openstreetmap importer, and thus not from pbf2json either. Instead they come from the pelias/polylines importer.

The polylines importer doesn't actually know anything about OSM, it just generates IDs based on line numbers from an input file. The poyline files are generally created using the Valhalla routing engine.

Unfortunately, Valhalla doesn't export OSM IDs. In large part this is due to the fact that a single street often corresponds to many different ways in OSM: Valhalla combines records in OSM in order to create a more coherent routing graph, and it might be difficult to extract all the underlying OSM IDs for a given street.

Since this issue doesn't pertain to the pbf2json project, I'm going to close it, but feel free to reply here if you have any follow up questions.

Cheers!