<div dir="ltr"><div>>Is there some way of doing this just once; for example with some parseable implication database, and library?</div><div>>...</div><div>>1. normalizing a database before usage, for example changing</div><div>> "highway=ford" to "ford=yes" and moving to modern lifecycle tags</div><div><br></div><div>The iD Editor has some JSON metadata about this ..</div><div>see : <a href="https://github.com/openstreetmap/iD/blob/master/data/deprecated.json">https://github.com/openstreetmap/iD/blob/master/data/deprecated.json</a></div><div>example:</div><div><br></div><div> {</div><div> "old": { "highway": "ford" },</div><div> "replace": {</div><div> "ford": "yes"</div><div> }</div><div> },</div><div> {</div><div> "old": { "highway": "stile" },</div><div> "replace": {</div><div> "barrier": "stile"</div><div> }</div><div> },</div><div> {</div><div> "old": { "highway": "incline" },</div><div> "replace": {</div><div> "highway": "road",</div><div> "incline": "up"</div><div> }</div><div> },</div><div><br></div><div>[ + Wiki deprecated list : <a href="https://wiki.openstreetmap.org/wiki/Deprecated_features">https://wiki.openstreetmap.org/wiki/Deprecated_features</a> ]</div><div><br></div><div><br></div><div><br></div><div><br></div><div>And the iD Editor has a lot of presets metadata : </div><div><br></div><div>For example: Homeless Shelter === amenity=social_facility + social_facility=shelter + social_facility:for=homeless</div><div><a href="https://github.com/openstreetmap/iD/blob/master/data/presets/presets/amenity/social_facility/homeless_shelter.json">https://github.com/openstreetmap/iD/blob/master/data/presets/presets/amenity/social_facility/homeless_shelter.json</a></div><div><br></div><div>{</div><div> "fields": [</div><div> "operator",</div><div> "address",</div><div> "building_area",</div><div> "opening_hours",</div><div> "wheelchair",</div><div> "social_facility_for",</div><div> "internet_access",</div><div> "internet_access/fee",</div><div> "internet_access/ssid"</div><div> ],</div><div> "geometry": [</div><div> "point",</div><div> "area"</div><div> ],</div><div> "terms": [</div><div> "houseless",</div><div> "unhoused",</div><div> "displaced"</div><div> ],</div><div> "tags": {</div><div> "amenity": "social_facility",</div><div> "social_facility": "shelter",</div><div> "social_facility:for": "homeless"</div><div> },</div><div> "name": "Homeless Shelter"</div><div>}</div><div><br></div><div><br></div><div>Imho: </div><div>- The only problem, that they only accept general tags, for general mappers .. ( see <a href="https://github.com/openstreetmap/iD/pull/3600">https://github.com/openstreetmap/iD/pull/3600</a> ) </div><div><br></div><div><br></div><div>Probably the other editors has a similar metadata ..</div><div><br></div><div><br></div><div>Best,</div><div> Imre</div><div class="gmail_extra"><br><div class="gmail_quote">2016-11-17 11:51 GMT+01:00 Per Eric Rosén <span dir="ltr"><<a href="mailto:per@rosnix.net" target="_blank">per@rosnix.net</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi!<br>
<br>
I have been making a few maps and applications using OSM data, mostly stored in postgis. In all cases, I have had to make custom carto rules /<br>
database post-processing / application rules to compensate for multiple<br>
ways of expressing the same information in OSM. Also, in some cases,<br>
for taking care of which tag implies which information.<br>
<br></blockquote></div></div></div>