Вы забываете, что геометрия улиц меняется со временем. Например две улицы могут объеденить в одну или наоборот разъеденить (продолжить, застроить и т.д.). Точно также с домами. Согласен с Vort, что таким данным не место в OSM, а то при желании можно дойти до такого:
Так как в рамках ОСМ невозможно описать смену береговой линии древних океанов, точно также нельзя описать смену геометрии улицы. Потому как это уже может быть совершенно другая улица, у которой со старыми совпадают лишь отдельные части строений или сегменты дорог
К тому же ключ получается динамическим. Это очень нехорошо для работы с данными. Для одного 20-го века прийдется 100 отдельных полей в таблице создавать
согласен, это тоже надо иметь в виду
на примере того же Харькова такая ситуация с улицей Фрунзе:
у новосозданной улицы Кирпичёва получается два “предка”
придумался мне гибридный вариант
совместимый, но с дублированием:
name = Воскресенська вулиця
name:2015- = Воскресенська вулиця
old_name = Урицького вулиця
old_name:1923-2015 = Урицького вулиця
old_name:1804-1923 = Воскресенська вулиця
правда, хаоса тут наведут со временем…
а если учесть ещё языковые приставки (, :uk, :ru, :en), вобще монстр получается
name = Воскресенська вулиця (основное отображение, актуальное состояние)
name:uk = Воскресенська вулиця (дубль для верификации языка name тега)
name:ru = Воскресенская улица
name:en = Voskresenska Street
old_name = Урицького вулиця (альтернативное отображение, для поиска, актуальное состояние предыдущего имени)
old_name:uk = Урицького вулиця
old_name:ru = Урицкого улица
old_name:en = Urytskoho Street
name:uk:2015- = Воскресенська вулиця (для поиска и верификации, полу-архивные данные)
name:ru:2015- = Воскресенская улица
name:en:2015- = Voskresenska Street
name:uk:1923-2015 = Урицького вулиця (для поиска, архивные данные)
name:ru:1923-2015 = Урицкого улица
name:en:1923-2015 = Urytskoho Street
name:uk:1804-1923 = Воскресенська вулиця
name:ru:1804-1923 = Воскресенская улица
name:en:1804-1923 = Voskresenska Street
из недостатков - повышенная сложность и много дублирования
из преимуществ - совместимость и верификация
это нужно для случая когда требуется отобразить старое имя в скобках, но не старее, допустим, двух лет
также эти данные пригодятся на случай рассинхронизации (их можно обработать и в полу-ручном режиме)
возможно, такое усложнение и излишне. но если идти по пути усложнения, то этот вариант мне кажется логичным
Не легче вручную пройтись и поудалять неактуальные old_name? Если лепить такие дикие “исторические” схемы, шанс накосячить явно выше. С одним только name и name:xx сколько проблем и нестыковок по сегментам и отношениям